[BUG] silc-client does not respect DESTDIR
[email protected] Tue, 11 Aug 2009 08:09:13 -0600
| Newsgroups | gmane.network.silc.devel |
|---|---|
| Message-ID | <[email protected]> |
--DocE+STaALJfprDB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Note: the web interface for posting bugs doesn't seem to work; I've posted this bug twice there and they never made it to silc-devel. The generated file lib/Makefile attempts to create directories outside of DESTDIR during 'make install' in both silc-client-1.1.7 and silc-client-1.1.8. Example: # make DESTDIR=/tmp/silc-client-1.1.8 install <snip> make[4]: Entering directory `/tmp/work/silc-client-1.1.8/lib' mkdir -p /usr/lib64/silc-client mkdir: cannot create directory `/usr/lib64/silc-client': Permission denied make[4]: [install-exec-hook] Error 1 (ignored) /bin/sh ../libtool --mode=install /usr/bin/install -c libsilc.la /tmp/silc-client-1.1.8/usr/lib64/silc-client/ libtool: install: /usr/bin/install -c .libs/libsilc-1.1.so.2.1.0 /tmp/silc-client-1.1.8/usr/lib64/libsilc-1.1.so.2.1.0 /usr/bin/install: cannot create regular file `/tmp/silc-client-1.1.8/usr/lib64/libsilc-1.1.so.2.1.0': No such file or directory make[4]: [install-exec-hook] Error 1 (ignored) /bin/sh ../libtool --mode=install /usr/bin/install -c libsilcclient.la /tmp/silc-client-1.1.8/usr/lib64/silc-client/ libtool: install: /usr/bin/install -c .libs/libsilcclient-1.1.so.3.0.0 /tmp/silc-client-1.1.8/usr/lib64/libsilcclient-1.1.so.3.0.0 /usr/bin/install: cannot create regular file `/tmp/silc-client-1.1.8/usr/lib64/libsilcclient-1.1.so.3.0.0': No such file or directory make[4]: [install-exec-hook] Error 1 (ignored) <snip> Even though make ignores the error, the shared libraries failed to install, leaving the installation relatively worthless. It also causes issues with build systems like Gentoo's sandbox, which catches attempts at access outside of DESTDIR and prevents installation. Attached is a patch for lib/Makefile.ad to fix future releases; I've made a similar temporary local patch for lib/Makefile.in since autoreconf depends on the whole tree, not just the silc-client release. --DocE+STaALJfprDB Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="silc-make-install-destdir.patch" diff --git a/lib/Makefile.ad b/lib/Makefile.ad index 9312320..c08be61 100644 --- a/lib/Makefile.ad +++ b/lib/Makefile.ad @@ -95,7 +95,7 @@ install-exec-hook: #ifdef SILC_DIST_SERVERLIB install-exec-hook: if SILC_ENABLE_SHARED - -mkdir -p $(libdir) + -mkdir -p $(DESTDIR)$(libdir) -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/ -$(LIBTOOL) $(INSTALL) libsilcserver.la $(DESTDIR)$(libdir)/ -rm -rf $(DESTDIR)$(libdir)/libsilc.a @@ -106,7 +106,7 @@ endif #ifdef SILC_DIST_CLIENTLIB install-exec-hook: if SILC_ENABLE_SHARED - -mkdir -p $(libdir) + -mkdir -p $(DESTDIR)$(libdir) -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/ -$(LIBTOOL) $(INSTALL) libsilcclient.la $(DESTDIR)$(libdir)/ -rm -rf $(DESTDIR)$(libdir)/libsilc.a --DocE+STaALJfprDB Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________________________________ Info: https://lists.silcnet.org/mailman/listinfo/silc-announce Archive: https://lists.silcnet.org/pipermail/silc-announce FAQ: http://silcnet.org/support/faq/ --DocE+STaALJfprDB--