File:  [local] / rpl / rplcas / Makefile.in
Revision 1.65: download - view: text, annotated - select for diffs - revision graph
Fri Dec 10 12:14:11 2021 UTC (2 years, 4 months ago) by bertrand
Branches: MAIN
CVS tags: HEAD
Correction d'un problème de génération de la librplcas. La compilation de Giac
est tordue.

    1: srcdir=@srcdir@
    2: top_builddir=@abs_top_builddir@
    3: CFLAGS=@CFLAGS@
    4: CXXFLAGS=@CXXFLAGS@
    5: LDFLAGS=@LDFLAGS@
    6: OBJEXT=@OBJEXT@
    7: 
    8: .PHONY: configure clean distclean
    9: 
   10: all: lib/librplcas.a
   11: 
   12: lib/@LIB_PREFIX@gmp.a:
   13:     if [ ! -d @GMP@ ]; then \
   14:         mkdir @GMP@; \
   15:     fi
   16:     if [ ! -f @GMP@/config.log ]; then \
   17:         (cd @GMP@ && \
   18:                 CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
   19:                 ../$(srcdir)/@GMP@/configure --with-readline=no \
   20:                 --host=@HOST@ --enable-cxx \
   21:                 --disable-shared --enable-static \
   22:                 --prefix=$(top_builddir)/rplcas); \
   23:     fi
   24:     $(MAKE) -C @GMP@ $(AM_MAKEFLAGS) all && \
   25:             $(MAKE) -C $(AM_MAKEFLAGS) @GMP@ install
   26: 
   27: lib/@LIB_PREFIX@mpfr.a: lib/@LIB_PREFIX@gmp.a
   28:     if [ ! -d @MPFR@ ]; then \
   29:         mkdir @MPFR@ ; \
   30:     fi
   31:     if [ ! -f @MPFR@/config.log ]; then \
   32:         if [ @BUILD@ = @HOST@ ]; then \
   33:             (cd @MPFR@ && \
   34:                     CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
   35:                     ../$(srcdir)/@MPFR@/configure \
   36:                     --with-gmp=$(top_builddir)/rplcas \
   37:                     --disable-shared --enable-static \
   38:                     --prefix=$(top_builddir)/rplcas); \
   39:         else \
   40:             (cd @MPFR@ && \
   41:                     CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
   42:                     ../$(srcdir)/@MPFR@/configure \
   43:                     --host=@HOST@ \
   44:                     --with-gmp=$(top_builddir)/rplcas \
   45:                     --disable-shared --enable-static \
   46:                     --prefix=$(top_builddir)/rplcas); \
   47:         fi; \
   48:     fi
   49:     $(MAKE) -C @MPFR@ $(AM_MAKEFLAGS) all && \
   50:             $(MAKE) -C @MPFR@ $(AM_MAKEFLAGS) install
   51: 
   52: lib/@LIB_PREFIX@mpfi.a: lib/@LIB_PREFIX@gmp.a lib/@LIB_PREFIX@mpfr.a
   53:     if [ ! -d @MPFI@ ]; then \
   54:         mkdir @MPFI@ ; \
   55:     fi
   56:     if [ ! -f @MPFI@/config.log ]; then \
   57:         if [ @BUILD@ = @HOST@ ]; then \
   58:             (cd @MPFI@ && \
   59:                     CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
   60:                     ../$(srcdir)/@MPFI@/configure \
   61:                     --with-gmp=$(top_builddir)/rplcas \
   62:                     --with-mpfr=$(top_builddir)/rplcas \
   63:                     --disable-shared --enable-static \
   64:                     --prefix=$(top_builddir)/rplcas); \
   65:         else \
   66:             (cd @MPFI@ && \
   67:                     CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
   68:                     ../$(srcdir)/@MPFI@/configure \
   69:                     --host=@HOST@ \
   70:                     --with-gmp=$(top_builddir)/rplcas \
   71:                     --with-mpfr=$(top_builddir)/rplcas \
   72:                     --disable-shared --enable-static \
   73:                     --prefix=$(top_builddir)/rplcas); \
   74:         fi; \
   75:     fi
   76:     $(MAKE) -C @MPFI@ $(AM_MAKEFLAGS) all && \
   77:             $(MAKE) -C @MPFI@ $(AM_MAKEFLAGS) install
   78: 
   79: lib/ntl.a:
   80:     if [ @BUILD@ = @HOST@ ]; then \
   81:         (cd @NTL@/src && ./configure GMP_PREFIX=$(top_builddir)/rplcas \
   82:                 SHARED=off CXXFLAGS="$(CXXFLAGS)"); \
   83:     else \
   84:         (cd @NTL@/src && ./configure GMP_PREFIX=$(top_builddir)/rplcas \
   85:                 SHARED=off CC=@HOST@-gcc CXX=@HOST@-g++ \
   86:                 CXXFLAGS="@SYSROOT@ $(CXXFLAGS)" \
   87:                 LDFLAGS="-L@SYSROOT2@/usr/lib"); \
   88:     fi
   89:     (cd @NTL@/src && \
   90:         if [ -z '$(make -v | grep "^GNU Make")' -a $(shell uname) != Linux ]; \
   91:                     then \
   92:                 sed 's/make /gmake /g' makefile > makefile2 && \
   93:                 \mv -f makefile2 makefile && \
   94:                 sed 's/make /gmake /g' WizardAux > WizardAux2 && \
   95:                 \mv -f WizardAux2 WizardAux; \
   96:         fi && \
   97:         $(MAKE) $(AM_MAKEFLAGS) -f makefile)
   98:     if [ ! -d lib ]; then \
   99:         mkdir lib; \
  100:     fi; \
  101:     if [ ! -d include ]; then \
  102:         mkdir include; \
  103:     fi; \
  104:     cp @NTL@/src/ntl.a lib/ntl.a
  105:     cp -R @NTL@/include/NTL include
  106: 
  107: lib/libpari.a: lib/@LIB_PREFIX@gmp.a
  108:     if [ ! -f @PARI@/configured ]; then \
  109:         if [ @BUILD@ = @HOST@ ]; then \
  110:             (cd @PARI@ && CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
  111:                     LDFLAGS="$(LDFLAGS)" \
  112:                     ./Configure --prefix=$(top_builddir)/rplcas \
  113:                     --with-gmp=../lib/libgmp.a \
  114:                     --without-readline --graphic=none -s); \
  115:         else \
  116:             (cd @PARI@ && CC=@HOST@-gcc LD=@HOST@-ld \
  117:                     CFLAGS="@SYSROOT@ $(CFLAGS)" \
  118:                     CXXFLAGS="$(CXXFLAGS)" \
  119:                     LDFLAGS="-L@SYSROOT2@/usr/lib $(LDFLAGS)" \
  120:                     ./Configure --prefix=$(top_builddir)/rplcas \
  121:                     --with-gmp=../lib/libgmp.a \
  122:                     --without-readline --graphic=none -s); \
  123:         fi; \
  124:         (cd @PARI@ && \
  125:                 sed -i -e 's/perl/perl -I./g' \
  126:                         $$(find . -maxdepth 1 -name "O*")/Makefile); \
  127:         touch @PARI@/configured; \
  128:     fi
  129:     $(MAKE) -C @PARI@ $(AM_MAKEFLAGS) gp && \
  130:             $(MAKE) -C @PARI@ $(AM_MAKEFLAGS) install
  131: 
  132: lib/@LIB_PREFIX@giac.a: lib/@LIB_PREFIX@gmp.a lib/@LIB_PREFIX@mpfr.a lib/ntl.a \
  133:         lib/libpari.a lib/@LIB_PREFIX@mpfi.a
  134:     if [ ! -d @GIAC@ ]; then \
  135:         mkdir @GIAC@ ; \
  136:     fi
  137:     if [ @BUILD@ = @HOST@ ]; then \
  138:         (cd @GIAC@ && \
  139:                 CXX=@CXX@ \
  140:                 CPPFLAGS="-I$(top_builddir)/rplcas/include -I$(top_builddir)/tools/@GSL@ $(CPPFLAGS)" \
  141:                 CXXFLAGS="$(CXXFLAGS) -fpermissive" \
  142:                 LDFLAGS="$(top_builddir)/rplcas/lib/libpari.a $(top_builddir)/rplcas/lib/ntl.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@mpfi.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@mpfr.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@gmp.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@gmpxx.a" \
  143:                 ../$(srcdir)/@GIAC@/configure --prefix=$(top_builddir)/rplcas \
  144:                 --enable-pari \
  145:                 --enable-ntl \
  146:                 --enable-gsl \
  147:                 --disable-shared --enable-static \
  148:                 --disable-micropy --disable-quickjs \
  149:                 --disable-gui --without-x); \
  150:     else \
  151:         (cd @GIAC@ && \
  152:                 CPPFLAGS="-I$(top_builddir)/rplcas/include -I$(top_builddir)/tools/@GSL@ @SYSROOT@ $(CPPFLAGS)" \
  153:                 CXXFLAGS="$(CXXFLAGS) -fpermissive" \
  154:                 LDFLAGS="$(top_builddir)/rplcas/lib/libpari.a $(top_builddir)/rplcas/lib/ntl.a $(top_builddir)/tools/@GSL@/.libs/libgsl.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@mpfi.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@mpfr.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@gmp.a $(top_builddir)/rplcas/lib/@LIB_PREFIX@gmpxx.a $(LDFLAGS) $(LIBGIAC)" \
  155:                 ../$(srcdir)/@GIAC@/configure --prefix=$(top_builddir)/rplcas \
  156:                 --host=@HOST@ \
  157:                 --enable-pari \
  158:                 --enable-ntl \
  159:                 --enable-gsl \
  160:                 --disable-shared --enable-static \
  161:                 --disable-micropy --disable-quickjs \
  162:                 --disable-gui --without-x); \
  163:     fi; \
  164:     (cd @GIAC@/src && \
  165:             mv -f config.h config.h.orig && \
  166:             sed -e 's/#define HAVE_LIBPNG 1//' config.h.orig | \
  167:             sed -e 's/\/\* #undef HAVE_LIBGMP \*\//#define HAVE_LIBMP/' | \
  168:             sed -e 's/\/\* #undef HAVE_LIBGMPXX \*\//#define HAVE_LIBMPXX/' | \
  169:             sed -e 's/\/\* #undef HAVE_LIBMPFR \*\//#define HAVE_LIBPFR/' | \
  170:             sed -e 's/\/\* #undef HAVE_LIBMPFI \*\//#define HAVE_LIBPFI/' | \
  171:             sed -e 's/\/\* #undef HAVE_LIBNTL \*\//#define HAVE_LIBNTL/' | \
  172:             sed -e 's/\/\* #undef HAVE_LIBPARI \*\//#define HAVE_LIBPARI/' | \
  173:             sed -e 's/\/\* #undef HAVE_LIBGSL \*\//#define HAVE_LIBGSL/' | \
  174:             sed -e 's/#define HAVE_LIBSAMPLERATE 1//' | \
  175:             sed -e 's/#define HAVE_PNG_H 1//' > config.h && \
  176:             rm -f config.h.orig); \
  177:     (cd @GIAC@/src && \
  178:             mv -f Makefile Makefile.orig && \
  179:             sed -e 's/-lntl//' Makefile.orig | \
  180:             sed -e 's/-lgmp//' | \
  181:             sed -e 's/-lmpfr//' > Makefile && \
  182:             rm -f Makefile.orig); \
  183:     $(MAKE) -C @GIAC@ $(AM_MAKEFLAGS)
  184:     if [ x$(srcdir) != x. ]; then \
  185:         for i in mkinstalldirs xcas.xpm xcas.desktop xcas.applications; \
  186:                 do cp $(srcdir)/@GIAC@/$$i @GIAC@/$$i; done; \
  187:         cp -R $(srcdir)/@GIAC@/icons @GIAC@; \
  188:     fi
  189:     $(MAKE) -C @GIAC@ $(AM_MAKEFLAGS) install
  190: 
  191: lib/librplcas.a: lib/@LIB_PREFIX@giac.a lib/@LIB_PREFIX@gmp.a \
  192:         lib/@LIB_PREFIX@mpfr.a lib/ntl.a lib/libpari.a \
  193:         lib/@LIB_PREFIX@mpfi.a
  194:     if [ ! -d tmp ]; then mkdir tmp; fi
  195:     for i in `ar t lib/@LIB_PREFIX@giac.a | grep a$$`; \
  196:     do ar d lib/@LIB_PREFIX@giac.a $$i; \
  197:     done
  198:     @(cd tmp && n=0 && \
  199:             rm -f * && \
  200:             echo Building standalone librplcas.a; \
  201:             for i in ../lib/@LIB_PREFIX@gmp.a \
  202:                     ../lib/@LIB_PREFIX@mpfr.a \
  203:                     ../lib/@LIB_PREFIX@mpfi.a \
  204:                     ../lib/libpari.a \
  205:                     ../lib/ntl.a \
  206:                     ../lib/@LIB_PREFIX@giac.a; \
  207:                 do echo Extracting $$i; ar x $$i; \
  208:                 for j in `ar t $$i`; \
  209:                 do cp -f $$j $$n-$$j; \
  210:                     rm -f $$j; \
  211:                 done; \
  212:                 n=`expr $$n + 1`; \
  213:             done; \
  214:             L="start"; \
  215:             while test -n "$$L"; \
  216:             do \
  217:                 echo -n "Remaining files "; \
  218:                 find . -name "*.$(OBJEXT)" | wc -l; \
  219:                 L=""; j=0; \
  220:                 for i in `find . -name "*.$(OBJEXT)"`; \
  221:                 do \
  222:                     k=`echo $$i | wc -c`; \
  223:                     j=`expr $$j + $$k + 1`; \
  224:                     if test $$j -le 8000; then \
  225:                         L="$$L $$i"; \
  226:                     else \
  227:                         break; \
  228:                     fi; \
  229:                 done; \
  230:                 if test -n "$$L"; then \
  231:                     echo -n "Adding files to librplcas.a archive... "; \
  232:                     ar cr ../lib/librplcas.a $$L; \
  233:                     rm -f $$L; \
  234:                     echo "done"; \
  235:                 fi; \
  236:             done; \
  237:             echo Archive created; \
  238:             ar s ../lib/librplcas.a; \
  239:             if [ @OS@ != OS2 -a @OS@ != Darwin ]; then \
  240:                 echo Stripping librplcas.a && strip -d ../lib/librplcas.a; \
  241:             fi;)
  242:     rmdir tmp
  243: 
  244: install:
  245: 
  246: uninstall:
  247: 
  248: clean:
  249:     \rm -f $(top_builddir)/rplcas/lib/lib*
  250: 
  251: distdir:

CVSweb interface <joel.bertrand@systella.fr>