Return to Makefile.in CVS log | Up to [local] / rpl / rplcas |
Patches pour que giac puisse être compilé avec la version embarquée de CoCoALib. Modification des makefiles pour forcer la liaison statique de giac avec les différentes bibliothèques statiques (le script configure de giac est fautif).
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/libcocoa.a: lib/@LIB_PREFIX@gmp.a 108: for i in $(shell find @COCOA@ -name "*" -exec grep /bin/bash {} /dev/null \; | cut -d: -f1); \ 109: do \ 110: sed '1,1s/^#! *\/bin\/bash/#!@BASH@/g' $$i > $$i.2; \ 111: sed '1,$$s/SHELL=\/bin\/bash/SHELL=@BASH@/g' $$i.2 > $$i; \ 112: \rm -f $$i.2; \ 113: chmod 755 $$i; \ 114: done 115: if [ @BUILD@ = @HOST@ ]; then \ 116: (cd @COCOA@ && CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \ 117: ./configure --with-libgmp=../lib/libgmp.a \ 118: --with-libgsl=../../tools/@GSL@/.libs/libgsl.a); \ 119: else \ 120: (cd @COCOA@ && CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \ 121: ./configure --with-libgmp=../lib/libgmp.a \ 122: --with-cxx=@HOST@-g++ \ 123: --with-cxxflags="@SYSROOT@ $(CXXFLAGS)" \ 124: --with-libgsl=../../tools/@GSL@/.libs/libgsl.a); \ 125: fi; \ 126: $(MAKE) -C @COCOA@ $(AM_MAKEFLAGS) library 127: cp @COCOA@/lib/libcocoa.a lib/libcocoa.a 128: cp -R @COCOA@/include/CoCoA include 129: 130: lib/libpari.a: lib/@LIB_PREFIX@gmp.a 131: if [ ! -f @PARI@/configured ]; then \ 132: if [ @BUILD@ = @HOST@ ]; then \ 133: (cd @PARI@ && CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \ 134: LDFLAGS="$(LDFLAGS)" \ 135: ./Configure --prefix=$(top_builddir)/rplcas \ 136: --with-gmp=../lib/libgmp.a \ 137: --without-readline --graphic=none -s); \ 138: else \ 139: (cd @PARI@ && CC=@HOST@-gcc LD=@HOST@-ld \ 140: CFLAGS="@SYSROOT@ $(CFLAGS)" \ 141: CXXFLAGS="$(CXXFLAGS)" \ 142: LDFLAGS="-L@SYSROOT2@/usr/lib $(LDFLAGS)" \ 143: ./Configure --prefix=$(top_builddir)/rplcas \ 144: --with-gmp=../lib/libgmp.a \ 145: --without-readline --graphic=none -s); \ 146: fi; \ 147: (cd @PARI@ && \ 148: sed -i -e 's/perl/perl -I./g' \ 149: $$(find . -maxdepth 1 -name "O*")/Makefile); \ 150: touch @PARI@/configured; \ 151: fi 152: $(MAKE) -C @PARI@ $(AM_MAKEFLAGS) gp && \ 153: $(MAKE) -C @PARI@ $(AM_MAKEFLAGS) install 154: 155: lib/@LIB_PREFIX@giac.a: lib/@LIB_PREFIX@gmp.a lib/@LIB_PREFIX@mpfr.a lib/ntl.a \ 156: lib/libcocoa.a lib/libpari.a lib/@LIB_PREFIX@mpfi.a 157: if [ ! -d @GIAC@ ]; then \ 158: mkdir @GIAC@ ; \ 159: fi 160: if [ @BUILD@ = @HOST@ ]; then \ 161: (cd @GIAC@ && \ 162: CXX=@CXX@ \ 163: CPPFLAGS="-I$(top_builddir)/rplcas/include -I$(top_builddir)/tools/@GSL@ $(CPPFLAGS)" \ 164: CXXFLAGS="$(CXXFLAGS) -fpermissive" \ 165: LDFLAGS="$(top_builddir)/rplcas/lib/libpari.a $(top_builddir)/rplcas/lib/libcocoa.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" \ 166: ../$(srcdir)/@GIAC@/configure --prefix=$(top_builddir)/rplcas \ 167: --enable-pari \ 168: --enable-ntl \ 169: --enable-cocoa \ 170: --enable-gsl \ 171: --disable-shared --enable-static \ 172: --disable-gui --without-x); \ 173: else \ 174: (cd @GIAC@ && \ 175: CPPFLAGS="-I$(top_builddir)/rplcas/include -I$(top_builddir)/tools/@GSL@ @SYSROOT@ $(CPPFLAGS)" \ 176: CXXFLAGS="$(CXXFLAGS) -fpermissive" \ 177: LDFLAGS="$(top_builddir)/rplcas/lib/libpari.a $(top_builddir)/rplcas/lib/libcocoa.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)" \ 178: ../$(srcdir)/@GIAC@/configure --prefix=$(top_builddir)/rplcas \ 179: --host=@HOST@ \ 180: --enable-pari \ 181: --enable-ntl \ 182: --enable-cocoa \ 183: --enable-gsl \ 184: --disable-shared --enable-static \ 185: --disable-gui --without-x); \ 186: fi; \ 187: (cd @GIAC@/src && \ 188: mv -f config.h config.h.orig && \ 189: sed -e 's/#define HAVE_LIBPNG 1//' config.h.orig | \ 190: sed -e 's/\/\* #undef HAVE_LIBGMP \*\//#define HAVE_LIBMP/' | \ 191: sed -e 's/\/\* #undef HAVE_LIBGMPXX \*\//#define HAVE_LIBMPXX/' | \ 192: sed -e 's/\/\* #undef HAVE_LIBMPFR \*\//#define HAVE_LIBPFR/' | \ 193: sed -e 's/\/\* #undef HAVE_LIBMPFI \*\//#define HAVE_LIBPFI/' | \ 194: sed -e 's/\/\* #undef HAVE_LIBNTL \*\//#define HAVE_LIBNTL/' | \ 195: sed -e 's/\/\* #undef HAVE_LIBPARI \*\//#define HAVE_LIBPARI/' | \ 196: sed -e 's/\/\* #undef HAVE_LIBGSL \*\//#define HAVE_LIBGSL/' | \ 197: sed -e 's/\/\* #undef HAVE_LIBCOCOA \*\//#define HAVE_LIBCOCOA/' | \ 198: sed -e 's/#define HAVE_PNG_H 1//' > config.h && \ 199: rm -f config.h.orig); \ 200: (cd @GIAC@/src && \ 201: mv -f Makefile Makefile.orig && \ 202: sed -e 's/-lntl//' Makefile.orig | \ 203: sed -e 's/-lgmp//' | \ 204: sed -e 's/-lmpfr//' > Makefile && \ 205: rm -f Makefile.orig); \ 206: $(MAKE) -C @GIAC@ $(AM_MAKEFLAGS) 207: if [ x$(srcdir) != x. ]; then \ 208: for i in mkinstalldirs xcas.xpm xcas.desktop xcas.applications; \ 209: do cp $(srcdir)/@GIAC@/$$i @GIAC@/$$i; done; \ 210: cp -R $(srcdir)/@GIAC@/icons @GIAC@; \ 211: fi 212: $(MAKE) -C @GIAC@ $(AM_MAKEFLAGS) install 213: 214: lib/librplcas.a: lib/@LIB_PREFIX@giac.a lib/@LIB_PREFIX@gmp.a \ 215: lib/@LIB_PREFIX@mpfr.a lib/ntl.a lib/libcocoa.a lib/libpari.a \ 216: lib/@LIB_PREFIX@mpfi.a 217: if [ ! -d tmp ]; then mkdir tmp; fi 218: for i in `ar t lib/@LIB_PREFIX@giac.a | grep a$$`; \ 219: do ar d lib/@LIB_PREFIX@giac.a $$i; \ 220: done 221: @(cd tmp && n=0 && \ 222: rm -f * && \ 223: echo Building standalone librplcas.a; \ 224: for i in ../lib/@LIB_PREFIX@gmp.a \ 225: ../lib/@LIB_PREFIX@mpfr.a \ 226: ../lib/@LIB_PREFIX@mpfi.a \ 227: ../lib/libcocoa.a \ 228: ../lib/libpari.a \ 229: ../lib/ntl.a \ 230: ../lib/@LIB_PREFIX@giac.a; \ 231: do echo Extracting $$i; ar x $$i; \ 232: for j in `ar t $$i`; \ 233: do cp -f $$j $$n-$$j; \ 234: rm -f $$j; \ 235: done; \ 236: n=`expr $$n + 1`; \ 237: done; \ 238: L="start"; \ 239: while test -n "$$L"; \ 240: do \ 241: echo -n "Remaining files "; \ 242: find . -name "*.$(OBJEXT)" | wc -l; \ 243: L=""; j=0; \ 244: for i in `find . -name "*.$(OBJEXT)"`; \ 245: do \ 246: k=`echo $$i | wc -c`; \ 247: j=`expr $$j + $$k + 1`; \ 248: if test $$j -le 8000; then \ 249: L="$$L $$i"; \ 250: else \ 251: break; \ 252: fi; \ 253: done; \ 254: if test -n "$$L"; then \ 255: echo -n "Adding files to librplcas.a archive... "; \ 256: ar cr ../lib/librplcas.a $$L; \ 257: rm -f $$L; \ 258: echo "done"; \ 259: fi; \ 260: done; \ 261: echo Archive created; \ 262: ar s ../lib/librplcas.a; \ 263: if [ @OS@ != OS2 -a @OS@ != Darwin ]; then \ 264: echo Stripping librplcas.a && strip -d ../lib/librplcas.a; \ 265: fi;) 266: rmdir tmp 267: 268: install: 269: 270: uninstall: 271: 272: clean: 273: \rm -f $(top_builddir)/rplcas/lib/lib* 274: 275: distdir: