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" \
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 $(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/#define HAVE_PNG_H 1//' > config.h && \
191: rm -f config.h.orig); \
192: (cd @GIAC@/src && \
193: mv -f Makefile Makefile.orig && \
194: sed -e 's/-lntl//' Makefile.orig | \
195: sed -e 's/-lgmp//' | \
196: sed -e 's/-lmpfr//' > Makefile && \
197: rm -f Makefile.orig); \
198: $(MAKE) -C @GIAC@ $(AM_MAKEFLAGS)
199: if [ x$(srcdir) != x. ]; then \
200: for i in mkinstalldirs xcas.xpm xcas.desktop xcas.applications; \
201: do cp $(srcdir)/@GIAC@/$$i @GIAC@/$$i; done; \
202: cp -R $(srcdir)/@GIAC@/icons @GIAC@; \
203: fi
204: $(MAKE) -C @GIAC@ $(AM_MAKEFLAGS) install
205:
206: lib/librplcas.a: lib/@LIB_PREFIX@giac.a lib/@LIB_PREFIX@gmp.a \
207: lib/@LIB_PREFIX@mpfr.a lib/ntl.a lib/libcocoa.a lib/libpari.a \
208: lib/@LIB_PREFIX@mpfi.a
209: if [ ! -d tmp ]; then mkdir tmp; fi
210: for i in `ar t lib/@LIB_PREFIX@giac.a | grep a$$`; \
211: do ar d lib/@LIB_PREFIX@giac.a $$i; \
212: done
213: @(cd tmp && n=0 && \
214: rm -f * && \
215: echo Building standalone librplcas.a; \
216: for i in ../lib/@LIB_PREFIX@gmp.a \
217: ../lib/@LIB_PREFIX@mpfr.a \
218: ../lib/@LIB_PREFIX@mpfi.a \
219: ../lib/libcocoa.a \
220: ../lib/libpari.a \
221: ../lib/ntl.a \
222: ../lib/@LIB_PREFIX@giac.a; \
223: do echo Extracting $$i; ar x $$i; \
224: for j in `ar t $$i`; \
225: do cp -f $$j $$n-$$j; \
226: rm -f $$j; \
227: done; \
228: n=`expr $$n + 1`; \
229: done; \
230: L="start"; \
231: while test -n "$$L"; \
232: do \
233: echo -n "Remaining files "; \
234: find . -name "*.$(OBJEXT)" | wc -l; \
235: L=""; j=0; \
236: for i in `find . -name "*.$(OBJEXT)"`; \
237: do \
238: k=`echo $$i | wc -c`; \
239: j=`expr $$j + $$k + 1`; \
240: if test $$j -le 8000; then \
241: L="$$L $$i"; \
242: else \
243: break; \
244: fi; \
245: done; \
246: if test -n "$$L"; then \
247: echo -n "Adding files to librplcas.a archive... "; \
248: ar cr ../lib/librplcas.a $$L; \
249: rm -f $$L; \
250: echo "done"; \
251: fi; \
252: done; \
253: echo Archive created; \
254: ar s ../lib/librplcas.a; \
255: if [ @OS@ != OS2 -a @OS@ != Darwin ]; then \
256: echo Stripping librplcas.a && strip -d ../lib/librplcas.a; \
257: fi;)
258: rmdir tmp
259:
260: install:
261:
262: uninstall:
263:
264: clean:
265: \rm -f $(top_builddir)/rplcas/lib/lib*
266:
267: distdir:
CVSweb interface <joel.bertrand@systella.fr>