notmuch.1.gz: notmuch.1
        $(call quiet,gzip) --stdout $^ > $@
 
-SONAME = libnotmuch.so.1
-
 install: all notmuch.1.gz
        for d in $(DESTDIR)$(prefix)/bin/ $(DESTDIR)$(libdir)/ \
                $(DESTDIR)$(prefix)/include/ $(DESTDIR)$(prefix)/share/man/man1 ; \
                install -d $$d ; \
        done ;
        install notmuch $(DESTDIR)$(prefix)/bin/
-       install lib/$(SONAME) $(DESTDIR)$(libdir)/
-       install lib/notmuch.h $(DESTDIR)$(prefix)/include/
-       ln -sf $(SONAME) $(DESTDIR)$(libdir)/libnotmuch.so
        install -m0644 notmuch.1.gz $(DESTDIR)$(prefix)/share/man/man1/
 ifeq ($(MAKECMDGOALS), install)
        @echo ""
 
+SONAME = libnotmuch.so.1
+
 dir := lib
 extra_cflags += -I$(dir) -fPIC
 
 $(dir)/libnotmuch.so: $(dir)/$(SONAME)
        ln -fs $(SONAME) $@
 
+install: install-$(dir)
+
+install-$(dir):
+       install -d $(DESTDIR)$(libdir)/
+       install $(dir)/$(SONAME) $(DESTDIR)$(libdir)/
+       install $(dir)/notmuch.h $(DESTDIR)$(prefix)/include/
+       ln -sf $(SONAME) $(DESTDIR)$(libdir)/libnotmuch.so
+
 SRCS  := $(SRCS) $(libnotmuch_c_srcs) $(libnotmuch_cxx_srcs)
 CLEAN := $(CLEAN) $(libnotmuch_modules) $(dir)/$(SONAME) $(dir)/libnotmuch.so *.so