--- rpl/Makefile.am 2010/02/08 19:26:31 1.2 +++ rpl/Makefile.am 2010/05/19 09:22:32 1.11 @@ -1,20 +1,173 @@ -SUBDIRS = tools lapack/blas lapack/lapack rpliconv src rpltags scripts man doc +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 \ + COPYING.in lapack/COPYING lapack/RELEASE \ + tests/tests.tar.gz vim/indent/rpl.vim vim/ftplugin/rpl.vim \ + vim/syntax/rpl.vim examples/obele.rpl examples/appel.tar.gz \ + examples/external.tar.gz include_HEADERS = rplconfig.h -EXTRA_DIST = LIMITATIONS Licence_CeCILL_V2-fr.txt Licence_CeCILL_V2-en.txt \ - vim/syntax/rpl.vim vim/ftplugin/rpl.vim vim/indent/rpl.vim \ - examples/appel.tar.gz examples/obele.rpl examples/external.tar.gz \ - examples/daemon.tar.gz COPYING.in tests/tests.tar.gz \ - lapack/COPYING lapack/RELEASE +licences: + cp -f $(top_builddir)/COPYING $(srcdir) + make -C src $@ -toolsclean: +toolsdistclean: for i in @NCURSES@ @READLINE@ @UNITS@ @GSL@ @GPP@ @GNUPLOT_COMPILATION@ \ - @FILE@ @ICONV@; \ + @FILE@ @ICONV@ @SQLITE@; \ do \ \rm -rf $(srcdir)/tools/$$i; \ done; -licences: - cp -f $(top_builddir)/COPYING $(srcdir) - make -C src $@ +toolsclean: + for i in @NCURSES@ @READLINE@ @UNITS@ @GSL@ @GPP@ @GNUPLOT_COMPILATION@ \ + @FILE@ @ICONV@ @SQLITE@; \ + do \ + (cd $(top_builddir)/tools/$$i && $(MAKE) $(AM_MAKEFLAGS) clean); \ + done; + +$(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 \ + 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; + (cd $(top_builddir)/tools/@NCURSES@ && $(MAKE) $(AM_MAKEFLAGS)) + +$(top_builddir)/tools/@READLINE@/libreadline.a \ + $(top_builddir)/tools/@READLINE@/libhistory.a: + (cd $(top_builddir)/tools/@READLINE@ && $(MAKE) $(AM_MAKEFLAGS)) + +$(top_builddir)/tools/@GSL@/.libs/libgsl.a: + (cd $(top_builddir)/tools/@GSL@ && $(MAKE) $(AM_MAKEFLAGS)) + +$(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a: +# La dépendance est faite par rpliconv. + (cd $(top_builddir)/tools/@ICONV@ && $(MAKE) $(AM_MAKEFLAGS)) + +$(top_builddir)/lapack/lapack/liblapack.a: + (cd $(top_builddir)/lapack/lapack && $(MAKE) $(AM_MAKEFLAGS)) + +$(top_builddir)/lapack/blas/libblas.a: + (cd $(top_builddir)/lapack/blas && $(MAKE) $(AM_MAKEFLAGS)) + +$(top_builddir)/rpliconv/rpliconv: \ + $(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: + (cd $(top_builddir)/tools/@SQLITE@ && $(MAKE) $(AM_MAKEFLAGS)) + +$(top_builddir)/tools/@OPENSSL@/libcrypto.a \ + $(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: + (cd $(top_builddir)/tools/@GPP@ && $(MAKE) $(AM_MAKEFLAGS)) + +.NOTPARALLEL: $(top_builddir)/tools/@FILE@/src/rplfile \ + $(top_builddir)/tools/@FILE@/magic/magic.mgc + +.NOTPARALLEL: $(top_builddir)/tools/@READLINE@/libreadline.a \ + $(top_builddir)/tools/@READLINE@/libhistory.a + +.NOTPARALLEL: $(top_builddir)/tools/@OPENSSL@/libcrypto.a \ + $(top_builddir)/tools/@OPENSSL@/libssl.a + +.NOTPARALLEL: $(top_builddir)/tools/rplsums/rplmd5sum \ + $(top_builddir)/tools/rplsums/rplsha1sum + +all: $(top_builddir)/tools/@NCURSES@/lib/libncurses.a \ + $(top_builddir)/tools/@READLINE@/libreadline.a \ + $(top_builddir)/tools/@READLINE@/libhistory.a \ + $(top_builddir)/tools/@GSL@/.libs/libgsl.a \ + $(top_builddir)/tools/@SQLITE@/.libs/libsqlite3.a \ + $(top_builddir)/tools/@OPENSSL@/libcrypto.a \ + $(top_builddir)/tools/@OPENSSL@/libssl.a \ + $(top_builddir)/lapack/lapack/liblapack.a \ + $(top_builddir)/lapack/blas/libblas.a \ + $(top_builddir)/ptmalloc3/libptmalloc3.a \ + $(top_builddir)/rpliconv/rpliconv \ + $(top_builddir)/tools/@FILE@/src/rplfile \ + $(top_builddir)/tools/@FILE@/magic/magic.mgc \ + $(top_builddir)/tools/rplsums/rplmd5sum \ + $(top_builddir)/tools/rplsums/rplsha1sum \ + $(top_builddir)/tools/@GPP@/src/gpp +# 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)) + (cd $(top_builddir)/src && $(MAKE) $(AM_MAKEFLAGS))