--- rpl/Makefile.am 2010/03/06 18:29:05 1.5 +++ rpl/Makefile.am 2010/05/22 21:45:49 1.12 @@ -1,4 +1,4 @@ -SUBDIRS = tools rplsums rpliconv lapack/blas lapack/lapack src \ +SUBDIRS = tools rplsums rpliconv lapack/blas lapack/lapack ptmalloc3 src \ rpltags scripts man doc EXTRA_DIST = LIMITATIONS Licence_CeCILL_V2-fr.txt Licence_CeCILL_V2-en.txt \ @@ -15,26 +15,64 @@ licences: toolsdistclean: for i in @NCURSES@ @READLINE@ @UNITS@ @GSL@ @GPP@ @GNUPLOT_COMPILATION@ \ - @FILE@ @ICONV@; \ + @FILE@ @ICONV@ @SQLITE@; \ do \ \rm -rf $(srcdir)/tools/$$i; \ done; toolsclean: for i in @NCURSES@ @READLINE@ @UNITS@ @GSL@ @GPP@ @GNUPLOT_COMPILATION@ \ - @FILE@ @ICONV@; \ + @FILE@ @ICONV@ @SQLITE@; \ do \ (cd $(top_builddir)/tools/$$i && $(MAKE) $(AM_MAKEFLAGS) clean); \ done; -tools: - for i in @NCURSES@ @READLINE@ @UNITS@ @GSL@ @GPP@ @GNUPLOT_COMPILATION@ \ - @FILE@ @ICONV@; \ +$(top_builddir)/tools/@NCURSES@/lib/libncurses.a: + for i in $(shell find tools/@NCURSES@ -name Makefile \ + -exec grep static {} /dev/null \; | cut -d: -f1); \ do \ - (cd $(top_builddir)/tools/$$i && $(MAKE) $(AM_MAKEFLAGS) all); \ + echo -n Checking $$i; \ + TMP=$$(mktemp tmp.XXXXXXXXXX); \ + if [ -n "$$(grep static $$i | grep dynamic)" ]; then \ + awk \ + '{ \ + if (index($$0, "-static") != 0 && index($$0, "-dynamic") != 0) \ + { \ + for(j = 1; j <= NF; j++) \ + { \ + if (index($$j, "-static") == 0) \ + { \ + printf("%s ", $$j); \ + } \ + } \ + printf("\n"); \ + } \ + else \ + { \ + print; \ + } \ + }' $$i > $$TMP; \ + \mv -f $$TMP $$i; \ + echo -n " (fixed)"; \ + else \ + echo -n " (nothing to do)"; \ + \rm -f $$TMP; \ + fi; \ + echo .; \ + done; + for i in tools/@NCURSES@/test/Makefile; \ + do \ + echo -n Checking $$i; \ + TMP=$$(mktemp tmp.XXXXXXXXXX); \ + awk \ + '/^TEST_ARGS/ \ + { printf("TEST_ARGS = ../lib/libform.a ../lib/libmenu.a "); \ + printf("../lib/libpanel.a ../lib/libncurses.a\n"); } \ + ! /^TEST_ARGS/ \ + { print; }' tools/@NCURSES@/test/Makefile > $$TMP; \ + \mv -f $$TMP $$i; \ + echo .; \ done; - -$(top_builddir)/tools/@NCURSES@/lib/libncurses.a: (cd $(top_builddir)/tools/@NCURSES@ && $(MAKE) $(AM_MAKEFLAGS)) $(top_builddir)/tools/@READLINE@/libreadline.a \ @@ -47,9 +85,6 @@ $(top_builddir)/tools/@GSL@/.libs/libgsl $(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a: # La dépendance est faite par rpliconv. (cd $(top_builddir)/tools/@ICONV@ && $(MAKE) $(AM_MAKEFLAGS)) - $(AR) cru $(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a \ - $(top_builddir)/tools/@ICONV@/lib/.libs/*.o - $(RANLIB) $(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a $(top_builddir)/lapack/lapack/liblapack.a: (cd $(top_builddir)/lapack/lapack && $(MAKE) $(AM_MAKEFLAGS)) @@ -57,13 +92,33 @@ $(top_builddir)/lapack/lapack/liblapack. $(top_builddir)/lapack/blas/libblas.a: (cd $(top_builddir)/lapack/blas && $(MAKE) $(AM_MAKEFLAGS)) -$(top_builddir)/rpliconv/rpliconv: \ +$(top_builddir)/rpliconv/rpliconv$(EXEEXT): \ $(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a (cd $(top_builddir)/rpliconv && $(MAKE) $(AM_MAKEFLAGS)) $(top_builddir)/tools/@FILE@/src/rplfile \ $(top_builddir)/tools/@FILE@/magic/magic.mgc: \ $(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a + TMP=$$(mktemp tmp.XXXXXXXXXX); \ + awk \ + '{ \ + if (index($$0, "LDFLAGS") == 1) \ + { \ + if (index($$0, "-static") == 0) \ + { \ + printf("%s -static\n", $$0); \ + } \ + else \ + { \ + print; \ + } \ + } \ + else \ + { \ + print; \ + } \ + }' tools/@FILE@/src/Makefile > $$TMP; \ + \mv -f $$TMP tools/@FILE@/src/Makefile (cd $(top_builddir)/tools/@FILE@ && $(MAKE) $(AM_MAKEFLAGS)) $(top_builddir)/tools/@SQLITE@/.libs/libsqlite3.a: @@ -73,15 +128,18 @@ $(top_builddir)/tools/@OPENSSL@/libcrypt $(top_builddir)/tools/@OPENSSL@/libssl.a: (cd $(top_builddir)/tools/@OPENSSL@ && $(MAKE) $(AM_MAKEFLAGS)) +$(top_builddir)/ptmalloc3/libptmalloc3.a : + (cd $(top_builddir)/ptmalloc3 && $(MAKE) $(AM_MAKEFLAGS)) + $(top_builddir)/tools/rplsums/rplmd5sum \ $(top_builddir)/tools/rplsums/rplsha1sum: \ $(top_builddir)/tools/@OPENSSL@/libcrypto.a (cd $(top_builddir)/rplsums && $(MAKE) $(AM_MAKEFLAGS)) -$(top_builddir)/tools/@GPP@/src/gpp: +$(top_builddir)/tools/@GPP@/src/gpp$(EXEEXT): (cd $(top_builddir)/tools/@GPP@ && $(MAKE) $(AM_MAKEFLAGS)) -.NOTPARALLEL: $(top_builddir)/tools/@FILE@/src/rplfile \ +.NOTPARALLEL: $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT) \ $(top_builddir)/tools/@FILE@/magic/magic.mgc .NOTPARALLEL: $(top_builddir)/tools/@READLINE@/libreadline.a \ @@ -102,12 +160,13 @@ all: $(top_builddir)/tools/@NCURSES@/lib $(top_builddir)/tools/@OPENSSL@/libssl.a \ $(top_builddir)/lapack/lapack/liblapack.a \ $(top_builddir)/lapack/blas/libblas.a \ - $(top_builddir)/rpliconv/rpliconv \ - $(top_builddir)/tools/@FILE@/src/rplfile \ + $(top_builddir)/ptmalloc3/libptmalloc3.a \ + $(top_builddir)/rpliconv/rpliconv$(EXEEXT) \ + $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT) \ $(top_builddir)/tools/@FILE@/magic/magic.mgc \ $(top_builddir)/tools/rplsums/rplmd5sum \ $(top_builddir)/tools/rplsums/rplsha1sum \ - $(top_builddir)/tools/@GPP@/src/gpp + $(top_builddir)/tools/@GPP@/src/gpp$(EXEEXT) # Cette règle n'est là que pour forcer la compilation de Gnuplot. (cd $(top_builddir)/tools && $(MAKE) $(AM_MAKEFLAGS)) (cd $(top_builddir)/rpltags && $(MAKE) $(AM_MAKEFLAGS))