File:  [local] / rpl / Makefile.am
Revision 1.62: download - view: text, annotated - select for diffs - revision graph
Mon Mar 4 09:36:33 2013 UTC (11 years, 1 month ago) by bertrand
Branches: MAIN
CVS tags: HEAD
Ajout de la cible purge-tools.

    1: SUBDIRS = tools rplsums rpliconv rplawk lapack/blas lapack/lapack rplcas src \
    2:         rpltags scripts man doc
    3: 
    4: include_HEADERS = rplconfig.h
    5: 
    6: EXTRA_DIST = LIMITATIONS Licence_CeCILL_V2-fr.txt Licence_CeCILL_V2-en.txt \
    7:         COPYING.in lapack/COPYING lapack/RELEASE autogen.sh \
    8:         tests/tests.tar.gz vim/indent/rpl.vim vim/ftplugin/rpl.vim \
    9:         vim/syntax/rpl.vim examples/obele.rpl examples/appel.tar.gz \
   10:         examples/external.tar.gz DEBIAN/control.in \
   11:         rplcas/@GMP@.tar.gz rplcas/@MPFR@.tar.gz rplcas/@NTL@.tar.gz \
   12:         rplcas/@COCOA@.tar.gz rplcas/@PARI@.tar.gz rplcas/@GIAC@.tar.gz
   13: 
   14: all:
   15:     @if [ -n $(shell $(MAKE) -v | grep "^GNU Make") ]; then \
   16:         echo; \
   17:         echo MAKE=$(MAKE); \
   18:         echo "Please use GNU Make !"; \
   19:         echo; \
   20:         false; \
   21:     fi
   22:     $(MAKE) all-rpl
   23: 
   24: licences:
   25:     cp -f $(top_builddir)/COPYING $(srcdir)
   26:     $(MAKE) -C src $@
   27: 
   28: purge-tools:
   29:     for i in @NCURSES@ @READLINE@ @UNITS@ @GSL@ @GPP@ @GNUPLOT_COMPILATION@ \
   30:             @FILE@ @ICONV@ @SQLITE@ @SIGSEGV@ @BUILD_OPENMOTIF@; \
   31:     do \
   32:         rm -rf $(srcdir)/tools/$$i; \
   33:     done;
   34:     for i in @GMP@ @MPFR@ @NTL@ @COCOA@ @PARI@ @GIAC@;
   35:     do \
   36:         if [ -d $(srcdir)/rplcas/$$i ]; then \
   37:             rm -rf $(srcdir)/rplcas/$$i; \
   38:         fi; \
   39:         if [ -d $(top_builddir)/rplcas/$$i ]; then \
   40:             rm -rf $(top_builddir)/rplcas/$$i; \
   41:         fi; \
   42:     done;
   43:     rm -f $(top_builddir)/tools/openmotif.lib
   44:     rm -rf $(top_builddir)/tools/@OPENSSL@
   45: 
   46: $(top_builddir)/tools/@NCURSES@/lib/@LIB_PREFIX@ncurses.a:
   47:     for i in $(shell find tools/@NCURSES@ -name Makefile \
   48:          -exec grep static {} /dev/null \; | cut -d: -f1); \
   49:     do \
   50:         echo -n Checking $$i; \
   51:         TMP=tmp.ncurses; \
   52:         if [ -n "$$(grep static $$i | grep dynamic)" ]; then \
   53:             awk \
   54:             '{ \
   55:                 if (index($$0, "-static") != 0 && index($$0, "-dynamic") != 0) \
   56:                 { \
   57:                     for(j = 1; j <= NF; j++) \
   58:                     { \
   59:                         if (index($$j, "-static") == 0) \
   60:                         { \
   61:                             printf("%s ", $$j); \
   62:                         } \
   63:                     } \
   64:                     printf("\n"); \
   65:                 } \
   66:                 else \
   67:                 { \
   68:                     print; \
   69:                 } \
   70:             }' $$i > $$TMP; \
   71:             mv -f $$TMP $$i; \
   72:             echo -n " (fixed)"; \
   73:         else \
   74:             echo -n " (nothing to do)"; \
   75:             rm -f $$TMP; \
   76:         fi; \
   77:         echo .; \
   78:     done;
   79:     for i in tools/@NCURSES@/test/Makefile; \
   80:     do \
   81:         echo -n Checking $$i; \
   82:         TMP=tmp.ncurses_test; \
   83:         awk \
   84:             '/^TEST_ARGS/ \
   85:                 { printf("TEST_ARGS = ../lib/@LIB_PREFIX@form.a \
   86:                         ../lib/@LIB_PREFIX@menu.a "); \
   87:                 printf("../lib/@LIB_PREFIX@panel.a \
   88:                         ../lib/@LIB_PREFIX@ncurses.a\n"); } \
   89:             ! /^TEST_ARGS/ \
   90:                 { print; }' tools/@NCURSES@/test/Makefile > $$TMP; \
   91:         mv -f $$TMP $$i; \
   92:         echo .; \
   93:     done;
   94:     if [ @OS@ = "OS2" ]; then \
   95:         TMP=tmp.ncurses_test_os2; \
   96:         awk \
   97:             '/^CXX_AR[ \t]/ \
   98:                 { printf("CXX_AR = $(AR)\n"); } \
   99:             ! /^CXX_AR[ \t]/ \
  100:                 { print; }' \
  101:             $(top_builddir)/tools/@NCURSES@/c++/Makefile | \
  102:         awk \
  103:             '/^CXX_ARFLAGS[ \t]/ \
  104:                 { printf("CXX_ARFLAGS = $(ARFLAGS)\n"); } \
  105:             ! /^CXX_ARFLAGS[ \t]/ \
  106:                 { print; }' | \
  107:         awk \
  108:             '/^CXX[ \t]/ \
  109:                 { printf("CXX = g++\n"); } \
  110:             ! /^CXX[ \t]/ \
  111:                 { print; }' > $$TMP; \
  112:         mv -f $$TMP $(top_builddir)/tools/@NCURSES@/c++/Makefile; \
  113:     fi;
  114:     $(MAKE) -C $(top_builddir)/tools/@NCURSES@ $(AM_MAKEFLAGS)
  115: 
  116: $(top_builddir)/tools/@READLINE@/libreadline.a \
  117:         $(top_builddir)/tools/@READLINE@/libhistory.a:
  118:     $(MAKE) -C $(top_builddir)/tools/@READLINE@ $(AM_MAKEFLAGS)
  119: 
  120: $(top_builddir)/tools/@GSL@/.libs/@LIB_PREFIX@gsl.a:
  121: # Quick and dirty hack pour avaliser le remplacement de ${1 + "$@"}
  122: # dans ltmain.sh et propager les modifications dans le script libtool.
  123:     if [ @OS@ = "OS2" ]; then \
  124:         (cd $(top_builddir)/tools/@GSL@ && configure --disable-shared;); \
  125:     fi
  126:     $(MAKE) -C $(top_builddir)/tools/@GSL@ $(AM_MAKEFLAGS)
  127: 
  128: $(top_builddir)/tools/@ICONV@/lib/.libs/@LIB_PREFIX@iconv.a:
  129: # La dépendance est faite par rpliconv.
  130:     if [ @OS@ = "OS2" ]; then \
  131:         TMP=tmp.libiconv; \
  132:         awk '! /^[ \t]cd po/ { print; }' \
  133:                 $(top_builddir)/tools/@ICONV@/Makefile > $$TMP; \
  134:         mv -f $$TMP $(top_builddir)/tools/@ICONV@/Makefile; \
  135:         $(MAKE) -C $(top_builddir)/tools/@ICONV@ $(AM_MAKEFLAGS) all; \
  136:     else \
  137:         $(MAKE) -C $(top_builddir)/tools/@ICONV@ $(AM_MAKEFLAGS) all; \
  138:     fi
  139: 
  140: $(top_builddir)/lapack/lapack/liblapack.a:
  141:     (cd $(top_builddir)/lapack/lapack && $(MAKE) $(AM_MAKEFLAGS))
  142: 
  143: $(top_builddir)/lapack/blas/libblas.a:
  144:     (cd $(top_builddir)/lapack/blas && $(MAKE) $(AM_MAKEFLAGS))
  145: 
  146: $(top_builddir)/rpliconv/rpliconv$(EXEEXT): \
  147:         $(top_builddir)/tools/@ICONV@/lib/.libs/@LIB_PREFIX@iconv.a
  148:     $(MAKE) -C $(top_builddir)/rpliconv $(AM_MAKEFLAGS)
  149: 
  150: $(top_builddir)/rplawk/rplawk$(EXEEXT):
  151:     $(MAKE) -C $(top_builddir)/rplawk $(AM_MAKEFLAGS)
  152: 
  153: $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT) \
  154:         $(top_builddir)/tools/@FILE@/magic/magic.mgc: \
  155:         $(top_builddir)/tools/@ICONV@/lib/.libs/@LIB_PREFIX@iconv.a
  156:     TMP=tmp.rplfile; \
  157:     awk \
  158:     '{ \
  159:         if (index($$0, "LDFLAGS") == 1) \
  160:         { \
  161:             if (index($$0, "-static") == 0) \
  162:             { \
  163:                 printf("%s -static @ABI@\n", $$0); \
  164:             } \
  165:             else \
  166:             { \
  167:                 print; \
  168:             } \
  169:         } \
  170:         else \
  171:         { \
  172:             if (index($$0, "CFLAGS") == 1) \
  173:             { \
  174:                 printf("CFLAGS = -O2 -g @ABI@\n"); \
  175:             } \
  176:             else \
  177:             { \
  178:                 print; \
  179:             } \
  180:         } \
  181:     }' tools/@FILE@/src/Makefile > $$TMP; \
  182:     mv -f $$TMP tools/@FILE@/src/Makefile
  183:     $(MAKE) -C $(top_builddir)/tools/@FILE@ $(AM_MAKEFLAGS)
  184:     $(CC) -o $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT) \
  185:             @CFLAGS@ $(top_builddir)/tools/@FILE@/src/*.o \
  186:             $(shell grep '^LIBS =' $(top_builddir)/tools/@FILE@/Makefile | \
  187:             cut -d= -f2) $(LDFLAGS)
  188: 
  189: $(top_builddir)/tools/@SQLITE@/.libs/@LIB_PREFIX@sqlite3.a:
  190:     $(MAKE) -C $(top_builddir)/tools/@SQLITE@ $(AM_MAKEFLAGS)
  191: 
  192: $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@crypto.a \
  193:         $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@ssl.a:
  194:     if [ ! -f $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@crypto.a \
  195:             -o ! -f $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@ssl.a \
  196:             -o ! -f $(top_builddir)/tools/@OPENSSL@/tests_success ]; then \
  197:         if [ @OS@ = "OS2" ]; then \
  198:             (cd $(top_builddir)/tools/@OPENSSL@ && \
  199:                     sed -e '1,$$s/-m486/-mtune=i586 -DOPENSSL_USE_IPV6=0/g' \
  200:                     OS2-EMX.mak | \
  201:                     sed -e '1,$$s/-DBN_ASM/-UBN_ASM/g' | \
  202:                     sed -e '1,$$s/-DMD5_ASM/-UMD5_ASM/g' | \
  203:                     sed -e '1,$$s/-DSHA1_ASM/-USHA1_ASM/g' | \
  204:                     sed -e '1,$$s/-DOPENSSL_BN_ASM_PART_WORDS/-UOPENSSL_BN_ASM_PART_ASM/g' \
  205:                     > OS2-EMX.mak2; \
  206:                     $(MAKE) -j1 -f OS2-EMX.mak2 $(AM_MAKEFLAGS); \
  207:                     touch tests_success); \
  208:         else \
  209:             (cd $(top_builddir)/tools/@OPENSSL@ && \
  210:                     $(MAKE) -j1 $(AM_MAKEFLAGS); \
  211:                     touch tests_success); \
  212:         fi \
  213:     fi
  214: 
  215: $(top_builddir)/rplsums/rplmd5sum$(EXEEXT) \
  216:         $(top_builddir)/rplsums/rplsha1sum$(EXEEXT): \
  217:         $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@crypto.a
  218:     $(MAKE) -C $(top_builddir)/rplsums $(AM_MAKEFLAGS)
  219: 
  220: $(top_builddir)/tools/@GPP@/src/gpp$(EXEEXT):
  221:     $(MAKE) -C $(top_builddir)/tools/@GPP@ $(AM_MAKEFLAGS)
  222: 
  223: $(top_builddir)/tools/@UNITS@/units$(EXEEXT):
  224:     if [ @OS@ = OpenBSD ]; then \
  225:         TMP=tmp.units; \
  226:         sed -e 's/^DEFS = -DUNITSFILE/DEFS = -Dmalloc=malloc -DUNITSFILE/g' \
  227:                 @UNITS@/Makefile > $$TMP; \
  228:         mv -f $$TMP @UNITS@/Makefile; \
  229:     fi; \
  230:     if [ x$(srcdir) != x$(top_builddir) ]; then \
  231:         cp -f $(srcdir)/tools/@UNITS@/units_cur $(top_builddir)/tools/@UNITS@; \
  232:     fi
  233:     $(MAKE) -C $(top_builddir)/tools/@UNITS@ $(AM_MAKEFLAGS)
  234: 
  235: .NOTPARALLEL: $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT) \
  236:         $(top_builddir)/tools/@FILE@/magic/magic.mgc
  237: 
  238: .NOTPARALLEL: $(top_builddir)/tools/@READLINE@/@LIB_PREFIX@readline.a \
  239:         $(top_builddir)/tools/@READLINE@/@LIB_PREFIX@history.a
  240: 
  241: .NOTPARALLEL: $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@crypto.a \
  242:         $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@ssl.a
  243: 
  244: .NOTPARALLEL: $(top_builddir)/rplsums/rplmd5sum$(EXEEXT) \
  245:         $(top_builddir)/rplsums/rplsha1sum$(EXEEXT)
  246: 
  247: install-strip:
  248:     $(MAKE) $(AM_MAKEFLAGS) install
  249: 
  250: $(top_builddir)/rplcas/lib/librplcas.a: \
  251:         $(top_builddir)/tools/@GSL@/.libs/@LIB_PREFIX@gsl.a
  252:     $(MAKE) -C $(top_builddir)/rplcas $(AM_MAKEFLAGS)
  253: 
  254: $(top_builddir)/tools/@OPENMOTIF@/lib/Xm/.libs/libXm.a: \
  255:         $(top_builddir)/tools/@LIBXPM@/src/.libs/libXpm.a
  256:     $(MAKE) -C $(top_builddir)/tools/@OPENMOTIF@ -j1
  257: 
  258: $(top_builddir)/tools/@LIBXPM@/src/.libs/libXpm.a:
  259:     $(MAKE) -C $(top_builddir)/tools/@LIBXPM@ $(AM_MAKEFLAGS)
  260: 
  261: $(top_builddir)/tools/@SIGSEGV@/src/.libs/@LIB_PREFIX@sigsegv.a:
  262:     $(MAKE) -C $(top_builddir)/tools/@SIGSEGV@ $(AM_MAKEFLAGS)
  263: 
  264: all-rpl: $(top_builddir)/tools/@NCURSES@/lib/@LIB_PREFIX@ncurses.a \
  265:         $(top_builddir)/tools/@READLINE@/@LIB_PREFIX@readline.a \
  266:         $(top_builddir)/tools/@READLINE@/@LIB_PREFIX@history.a \
  267:         $(top_builddir)/tools/@GSL@/.libs/@LIB_PREFIX@gsl.a \
  268:         $(top_builddir)/tools/@SQLITE@/.libs/@LIB_PREFIX@sqlite3.a \
  269:         $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@crypto.a \
  270:         $(top_builddir)/tools/@OPENSSL@/libssl.a \
  271:         $(top_builddir)/lapack/lapack/liblapack.a \
  272:         $(top_builddir)/lapack/blas/libblas.a \
  273:         $(top_builddir)/rpliconv/rpliconv$(EXEEXT) \
  274:         $(top_builddir)/rplawk/rplawk$(EXEEXT) \
  275:         $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT) \
  276:         $(top_builddir)/tools/@FILE@/magic/magic.mgc \
  277:         $(top_builddir)/rplsums/rplmd5sum$(EXEEXT) \
  278:         $(top_builddir)/rplsums/rplsha1sum$(EXEEXT) \
  279:         $(top_builddir)/tools/@GPP@/src/gpp$(EXEEXT) \
  280:         $(top_builddir)/tools/@UNITS@/units$(EXEEXT) \
  281:         $(top_builddir)/tools/@SIGSEGV@/src/.libs/@LIB_PREFIX@sigsegv.a \
  282:         @LIBRPLCAS@ @LIBMOTIF@
  283: # Cette règle n'est là que pour forcer la compilation de Gnuplot.
  284:     $(MAKE) -C $(top_builddir)/tools $(AM_MAKEFLAGS)
  285:     $(MAKE) -C $(top_builddir)/rpltags $(AM_MAKEFLAGS)
  286:     $(MAKE) -C $(top_builddir)/src $(AM_MAKEFLAGS)
  287: 
  288: debian: all
  289:     $(MAKE) -C $(top_builddir)/src $(AM_MAKEFLAGS) librpl
  290:     $(MKDIR_P) $(top_builddir)/debian/$(prefix)/bin
  291:     for i in $(top_builddir)/src/rpl$(EXEEXT) $(top_builddir)/scripts/rplcc \
  292:             $(top_builddir)/scripts/rpllink $(top_builddir)/scripts/mkrplso \
  293:             $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT) \
  294:             $(top_builddir)/rpltags/rpltags$(EXEEXT) \
  295:             $(top_builddir)/rplawk/rplawk$(EXEEXT) \
  296:             $(top_builddir)/rpliconv/rpliconv$(EXEEXT); \
  297:     do cp -f $$i $(top_builddir)/debian/$(prefix)/bin; \
  298:     done
  299:     cp $(top_builddir)/tools/@UNITS@/units$(EXEEXT) \
  300:             $(top_builddir)/debian/$(prefix)/bin/rplconvert$(EXEEXT)
  301:     cp $(top_builddir)/tools/@GPP@/src/gpp$(EXEEXT) \
  302:             $(top_builddir)/debian/$(prefix)/bin/rplpp$(EXEEXT)
  303:     $(MKDIR_P) $(top_builddir)/debian/$(prefix)/include
  304:     for i in $(srcdir)/src/librpl.h $(top_builddir)/rplconfig.h \
  305:         $(srcdir)/src/rpl.h $(srcdir)/src/rpltypes.h \
  306:             $(top_builddir)/src/librplprototypes.h \
  307:             $(srcdir)/src/rplexternals.h $(top_builddir)/src/rpl.inc; \
  308:     do cp -f $$i $(top_builddir)/debian/$(prefix)/include; \
  309:     done
  310:     $(MKDIR_P) $(top_builddir)/debian/$(prefix)/lib
  311:     cp -f $(top_builddir)/src/librpl.a $(top_builddir)/debian/$(prefix)/lib
  312:     for j in man/man1 man/fr_FR/man1; \
  313:     do \
  314:         $(MKDIR_P) $(top_builddir)/debian/$(prefix)/$$j; \
  315:         for i in $(top_builddir)/$$j/gpp.1 $(top_builddir)/$$j/mkrplso.1 \
  316:                 $(top_builddir)/$$j/rpl.1 $(top_builddir)/$$j/rplcc.1 \
  317:                 $(top_builddir)/$$j/rpllink.1 $(top_builddir)/$$j/rplpp.1 \
  318:                 $(top_builddir)/$$j/rpltags.1; \
  319:         do \
  320:             if [ -f $$i ]; then \
  321:                 cp -f $$i $(top_builddir)/debian/$(prefix)/$$j; \
  322:             fi; \
  323:         done; \
  324:     done
  325:     $(MKDIR_P) $(top_builddir)/debian/$(prefix)/share
  326:     cp -f $(top_builddir)/tools/@FILE@/magic/magic.mgc \
  327:             $(top_builddir)/debian/$(prefix)/share/rplfiles.mgc
  328:     cp -f $(srcdir)/tools/@UNITS@/definitions.units \
  329:             $(top_builddir)/debian/$(prefix)/share/rplunits.tmp
  330:     sed 's/^!include currency.units//g' \
  331:             $(top_builddir)/debian/$(prefix)/share/rplunits.tmp \
  332:             > $(top_builddir)/debian/$(prefix)/share/rplunits
  333:     rm -f $(top_builddir)/debian/$(prefix)/share/rplunits.tmp
  334:     if [ -e $(top_builddir)/tools/@GNUPLOT@/src/gnuplot$(EXEEXT) ]; then \
  335:         if [ -e $(prefix)/bin/gnuplot$(EXEEXT) ]; then \
  336:             mv -f $(prefix)/bin/gnuplot$(EXEEXT) \
  337:                     $(prefix)/bin/gnuplot$(EXEEXT).orig; \
  338:             mv -f $(prefix)/share/gnuplot $(prefix)/share/gnuplot.orig; \
  339:             mv -f $(prefix)/libexec/gnuplot $(prefix)/libexec/gnuplot.orig; \
  340:             (cd $(top_builddir)/tools/@GNUPLOT@ && $(MAKE) install); \
  341:             cp -f $(prefix)/bin/gnuplot$(EXEEXT) \
  342:                     $(top_builddir)/debian/$(prefix)/bin; \
  343:             cp -af $(prefix)/share/gnuplot \
  344:                     $(top_builddir)/debian/$(prefix)/share; \
  345:             $(MKDIR_P) $(top_builddir)/debian/$(prefix)/libexec; \
  346:             cp -af $(prefix)/libexec/gnuplot \
  347:                     $(top_builddir)/debian/$(prefix)/libexec; \
  348:             (cd $(top_builddir)/tools/@GNUPLOT@ && $(MAKE) uninstall); \
  349:             rm -f $(prefix)/bin/gnuplot$(EXEEXT); \
  350:             rm -rf $(prefix)/share/gnuplot; \
  351:             rm -rf $(prefix)/libexec/gnuplot; \
  352:             mv $(prefix)/bin/gnuplot$(EXEEXT).orig \
  353:                     $(prefix)/bin/gnuplot$(EXEEXT); \
  354:             mv -f $(prefix)/share/gnuplot.orig $(prefix)/share/gnuplot; \
  355:             mv -f $(prefix)/libexec/gnuplot.orig $(prefix)/libexec/gnuplot; \
  356:         else \
  357:             (cd $(top_builddir)/tools/@GNUPLOT@ && $(MAKE) install); \
  358:             cp -f $(prefix)/bin/gnuplot$(EXEEXT) \
  359:                     $(top_builddir)/debian/$(prefix)/bin; \
  360:             cp -af $(prefix)/share/gnuplot \
  361:                     $(top_builddir)/debian/$(prefix)/share; \
  362:             $(MKDIR_P) $(top_builddir)/debian/$(prefix)/libexec; \
  363:             cp -af $(prefix)/libexec/gnuplot \
  364:                     $(top_builddir)/debian/$(prefix)/libexec; \
  365:             (cd $(top_builddir)/tools/@GNUPLOT@ && $(MAKE) uninstall); \
  366:         fi; \
  367:     fi
  368:     $(MKDIR_P) $(top_builddir)/debian/DEBIAN
  369:     cp -f $(top_builddir)/DEBIAN/* $(top_builddir)/debian/DEBIAN
  370:     (cd  $(top_builddir) && dpkg-deb --build debian debian)

CVSweb interface <joel.bertrand@systella.fr>