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