]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Install libvex.a and libcoregrind.a, needed for external tool builds.
authorJulian Seward <jseward@acm.org>
Wed, 9 Nov 2005 14:04:27 +0000 (14:04 +0000)
committerJulian Seward <jseward@acm.org>
Wed, 9 Nov 2005 14:04:27 +0000 (14:04 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5053

Makefile.install.am
coregrind/Makefile.am

index 34c5615534bdfcad644108bc135d3951003e55d2..216253b84bad5c8ed6d0832487ac169e83f246f3 100644 (file)
@@ -1,7 +1,26 @@
+
+# What the second for loop does: it copies libcoregrind.a and libvex.a
+# into the correct (target-specific) lib dirs at install time.
+# $(noinst_LIBRARIES) will look like this:
+#    libcoregrind_x86_linux.a libreplacemalloc_toolpreload_x86_linux.a
+#    libcoregrind_amd64_linux.a libreplacemalloc_toolpreload_amd64_linux.a
+# The 'if expr' filters out all but the libcoregrind_ ones.
+# pD and pU are the (arch,os) target pairs separated by a dash (pD) or
+# an underscore (pU) respectively, eg amd64-linux (pD) and amd64_linux (pU).
+# It then copies libcoregrind.a and libvex.a to the right places.
+
 install-exec-local:
        for f in $(noinst_PROGRAMS); do \
          p=`echo $$f | sed -e 's/^[^-]*-//' -e 's/\..*$$//'`; \
          n=`echo $$f | sed -e 's/-[^-]\{1,\}-[^-.]\{1,\}//'`; \
          $(mkinstalldirs) $(DESTDIR)$(valdir)/$$p; \
          $(INSTALL_PROGRAM) $$f $(DESTDIR)$(valdir)/$$p/$$n; \
+       done ; \
+       for f in $(noinst_LIBRARIES); do \
+         if expr match $$f libcoregrind_ > /dev/null ; then \
+           pU=`echo $$f | sed -e 's/libcoregrind_//g' -e 's/\.a//g'` ; \
+           pD=`echo $$pU | sed -e 's/_/-/g'` ; \
+           $(INSTALL_PROGRAM) $$f $(DESTDIR)$(valdir)/$$pD/libcoregrind.a ; \
+           $(INSTALL_PROGRAM) @VEX_DIR@/libvex_$$pU.a $(DESTDIR)$(valdir)/$$pD/libvex.a ; \
+         fi ; \
        done
index 35823ad56d0d6074f2f0a4b229ee1f48bf79a223..81b3afc6391aef674a6a5c8f50bcb753a83cbee9 100644 (file)
@@ -1,3 +1,9 @@
+
+# Be very careful when renaming any files, targets, whatever, in this
+# Makefile.  The install-exec-local target in ../Makefile.install.am
+# does some fragile sed file-name-mangling which is liable to break if
+# the names of noinst_LIBRARIES or noinst_PROGRAMS change 'shape'.
+
 include $(top_srcdir)/Makefile.all.am
 include $(top_srcdir)/Makefile.core.am
 include $(top_srcdir)/Makefile.install.am