|
From: | Kevin P. Fleming |
Subject: | Re: AM_CONDITIONAL not working properly, or I just don't understand :-( |
Date: | Fri, 17 Oct 2003 07:58:44 -0700 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5) Gecko/20030925 |
Gary V. Vaughan wrote:
Yeah, that is pretty sucky. What about installing the modules to a bogus directory (in the build tree?) and then removing that directory?if !INSTALL_LIBS pkglibdir = $(top_builddir)/_noinst install-exec-hook: @echo "pruning statically linked modules" rm -rf $(pkglibdir) endif
This didn't work, because pkglibdir is a relative path when you are building in a separate object directory, and then libtool can't accept that path for an --rpath option.
Or, if you give the modules their own Makefile.am, you might be able to redefine INSTALL and mkinstalldirs to neuter the install rules:if !INSTALL_LIBS INSTALL=: mkinstalldirs=: endif
This may have worked, but automake complained about the double target definition, and I'm not sure I could guarantee that they would always be defined in the proper order.
In the end, coupled with a small patch to ltmain.sh (posted to the libtool list) to allow --silent to _actually_ be --silent, I put this in the top-level Makefile.am:
install-data-hook: rm -rf $(includedir) install-exec-hook: rm -rf $(pkglibdir) rm -rf $(libdir)/[lib-name]It works, and I can live with the extra install/remove activity. Most people that build this statically likely aren't going to use "make install" anyway, they'll just copy the static binary out of the build directory and put it wherever they want.
Thanks for all your help, Gary, I appreciate the assistance. Hopefully you'll get some time to review the patches I posted to the libtool list to see if those make sense for the main distribution.
[Prev in Thread] | Current Thread | [Next in Thread] |