source: git/Singular/Makefile.am @ 99fc2eb

spielwiese
Last change on this file since 99fc2eb was 99fc2eb, checked in by Oleksandr Motsak <motsak@…>, 12 years ago
CHG: symbolic links MOD are NOT needed in kernel/ & Singular/ FIX: correct TESTS_ENVIRONMENT for 'make check' and standalone testing
  • Property mode set to 100644
File size: 8.6 KB
Line 
1# PIPE = -pipe
2# ???
3#LD_DYN_FLAGS   = -ldl -rdynamic
4#SFLAGS         = -fpic -DPIC
5#SLDFLAGS       = -shared
6#LD_LIBC                = -lc
7#STATIC_LDFLAGS = -static
8
9
10NODEBUGCFLAGS   = -O3 -w -fomit-frame-pointer
11NODEBUGCXXFLAGS = -O3 -w -fomit-frame-pointer --no-rtti
12NODEBUGDEFS = -DNDEBUG -DOM_NDEBUG
13
14CXXTEMPLFLAGS = --no-exceptions ## -fno-implicit-templates
15
16INCLUDES = -I${top_srcdir} -I${top_builddir} -I${top_srcdir}/numeric -I${top_builddir}/numeric -I${top_srcdir}/kernel -I${top_builddir}/kernel -I${top_srcdir}/libpolys -I${top_builddir}/libpolys $(GMP_CFLAGS) $(FACTORY_CFLAGS) $(NTL_CFLAGS)
17
18########################### libSingular* #########################
19
20libSingular_LTLIBRARIES = libSingular.la libSingular_g.la
21libSingulardir = $(libdir)/singular
22
23libSingular_la_CFLAGS   = -O3 -fomit-frame-pointer -Wextra -Wall -Wno-long-long ${PIPE}
24libSingular_g_la_CFLAGS = -g -Wextra -Wall -Wno-long-long -pedantic ${PIPE}
25
26libSingular_la_CXXFLAGS   = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
27libSingular_g_la_CXXFLAGS = -g -Wextra -Wall -Wno-long-long -pedantic ${PIPE} $(CXXTEMPLFLAGS)
28# -fdiagnostics-show-option
29
30libSingular_la_CPPFLAGS   = -DNDEBUG -DOM_NDEBUG -DLIBSINGULAR
31libSingular_g_la_CPPFLAGS = -DLIBSINGULAR
32
33SOURCES =    Minor.cc\
34   MinorInterface.cc\
35   MinorProcessor.cc\
36   attrib.cc\
37   bbcone.cc\
38   bbfan.cc\
39   bigintm.cc\
40   blackbox.cc\
41   calcSVD.cc\
42   cntrlc.cc\
43   denom_list.cc\
44   eigenval_ip.cc\
45   extra.cc\
46   feOpt.cc\
47   fehelp.cc\
48   fevoices.cc\
49   fglm.cc\
50   gms.cc\
51   grammar.cc\
52   interpolation.cc\
53   iparith.cc\
54   ipassign.cc\
55   ipconv.cc\
56   ipid.cc\
57   iplib.cc\
58   ipprint.cc\
59   ipshell.cc\
60   janet.cc\
61   libparse.cc\
62   linearAlgebra_ip.cc\
63   lists.cc\
64   maps_ip.cc\
65   minpoly.cc\
66   misc_ip.cc\
67   mpsr_Error.cc\
68   mpsr_Get.cc\
69   mpsr_GetMisc.cc\
70   mpsr_GetPoly.cc\
71   mpsr_Put.cc\
72   mpsr_PutPoly.cc\
73   mpsr_Timer.cc\
74   mpsr_Tok.cc\
75   mpsr_sl.cc\
76   ndbm.cc\
77   newstruct.cc\
78   pcv.cc\
79   pipeLink.cc\
80   scanner.cc\
81   sdb.cc\
82   silink.cc\
83   sing_dbm.cc\
84   sing_win.cc\
85   slInit_Static.cc\
86   ssiLink.cc\
87   subexpr.cc\
88   utils.cc\
89   walk.cc\
90   walk_ip.cc\
91   wrapper.cc\
92   fereadl.c mmstd.c claptmpl.cc
93
94#   slInit_Dynamic.cc
95
96libSingular_la_SOURCES   = $(SOURCES)
97libSingular_g_la_SOURCES = $(SOURCES)
98
99SingularHEADERS =    Cache.h \
100   CacheImplementation.h \
101   Minor.h \
102   MinorInterface.h \
103   MinorProcessor.h \
104   attrib.h \
105   bigintm.h \
106   blackbox.h \
107   cntrlc.h \
108   dbm_sl.h \
109   distrib.h \
110   eigenval_ip.h \
111   feOpt.h feOptTab.h fehelp.h \
112   fglm.h \
113   gms.h \
114   grammar.h \
115   interpolation.h \
116   idrec.h \
117   ipconv.h \
118   ipid.h \
119   ipprint.h \
120   ipshell.h \
121   janet.h \
122   libparse.h \
123   libsingular.h \
124   linearAlgebra_ip.h\
125   lists.h \
126   locals.h \
127   maps_ip.h \
128   minpoly.h \
129   misc_ip.h \
130   mmalloc.h \
131   omSingularConfig.h \
132   mpsr.h \
133   mpsr_Get.h \
134   mpsr_Put.h \
135   mpsr_Timer.h \
136   mpsr_Tok.h \
137   mpsr_sl.h \
138   ndbm.h \
139   newstruct.h \
140   pcv.h \
141   pipeLink.h \
142   pyobject_setup.h \
143   run.h \
144   sdb.h \
145   silink.h \
146   sing_dbm.h \
147   sing_win.h \
148   slInit.h \
149   ssiLink.h \
150   static.h \
151   stype.h \
152   subexpr.h \
153   table.h \
154   tok.h \
155   utils.h \
156   version.h \
157   walk.h \
158   feOpt.h feOpt.inc \
159   mpsr_Tok.inc iparith.inc feOptTS.inc feOptES.inc
160
161libSingular_includedir = ${includedir}/singular/Singular/
162nobase_libSingular_include_HEADERS = $(SingularHEADERS)
163
164if ENABLE_FACTORY
165  USE_FACTORY = -L${top_builddir}/factory
166else
167  USE_FACTORY =
168endif
169
170# noinst_HEADERS = feOpt.h
171## TODO: install all the *.inc?! 
172## If not, move feOpt.h to SOURCES and remove *inc from HEADERS
173
174#########################################################
175# handle all the generated *.inc
176
177AM_LDFLAGS = -L${top_builddir}/Singular -L${top_builddir}/numeric -L${top_builddir}/kernel -L${top_builddir}/libpolys/polys -L${top_builddir}/libpolys/coeffs -L${top_builddir}/libpolys/reporter -L${top_builddir}/libpolys/resources -L${top_builddir}/libpolys/misc $(USE_FACTORY) -L${top_builddir}/omalloc
178
179noinst_PROGRAMS = gentable2 gentable1 feOpt feOptES feOptTS
180
181gentable2_SOURCES = gentable2.cc grammar.h tok.h table.h
182# gentable2_LDADD = -lSingular -lnumeric -lkernel -lpolys -lcoeffs -lresources -lreporter -lmisc $(FACTORY_LIBS) -lomalloc $(NTL_LIBS) $(GMP_LIBS) ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD}
183gentable2_CFLAGS = -O3 -fomit-frame-pointer ${PIPE}
184gentable2_CXXFLAGS = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
185gentable2_CPPFLAGS = -DNDEBUG -DOM_NDEBUG
186
187
188gentable1_SOURCES = gentable.cc grammar.h tok.h table.h
189# gentable1_LDADD = -lSingular -lnumeric -lkernel -lpolys -lcoeffs -lresources -lreporter -lmisc $(FACTORY_LIBS) -lomalloc $(NTL_LIBS) $(GMP_LIBS) ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD}
190gentable1_CFLAGS = -O3 -fomit-frame-pointer ${PIPE}
191gentable1_CXXFLAGS = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
192gentable1_CPPFLAGS = -DNDEBUG -DOM_NDEBUG
193
194feOpt_SOURCES = feOptGen.cc feOptGen.h
195feOpt_CXXFLAGS = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
196feOpt_CPPFLAGS = -DNDEBUG -DOM_NDEBUG
197
198feOptES_SOURCES = feOptGen.cc feOptGen.h
199feOptES_CXXFLAGS = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
200feOptES_CPPFLAGS = -DNDEBUG -DOM_NDEBUG -DESINGULAR
201
202feOptTS_SOURCES = feOptGen.cc feOptGen.h
203feOptTS_CXXFLAGS = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
204feOptTS_CPPFLAGS = -DNDEBUG -DOM_NDEBUG -DTSINGULAR
205
206########################### Singular* #########################
207
208bin_PROGRAMS = Singular Singularg
209
210Singular_CFLAGS = -O3 -fomit-frame-pointer ${PIPE}
211Singularg_CFLAGS = -g ${PIPE}
212
213Singular_CXXFLAGS = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
214Singularg_CXXFLAGS = -g -Wextra -Wall -Wno-long-long -pedantic ${PIPE} $(CXXTEMPLFLAGS)
215
216Singular_SOURCES = tesths.cc
217Singularg_SOURCES = tesths.cc
218
219Singular_LDADD = libSingular.la -lnumeric -lkernel -lpolys -lcoeffs -lresources -lreporter -lmisc $(FACTORY_LIBS) -lomalloc $(NTL_LIBS) $(GMP_LIBS) ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD}
220Singularg_LDADD = libSingular_g.la -lnumeric_g -lkernel_g -lpolys_g -lcoeffs_g -lresources_g -lreporter_g -lmisc_g $(FACTORY_LIBS) -lomalloc_g $(NTL_LIBS) $(GMP_LIBS) ${USEPPROCSDYNAMICLDFLAGS}  ${USEPPROCSDYNAMICLD}
221
222Singular_CPPFLAGS = -DNDEBUG -DOM_NDEBUG
223# Singularg_CPPFLAGS =
224
225
226#########################################################
227# the Singular library (*.lib files)
228
229include ${srcdir}/singular-libs
230
231singularlibrarydir = ${datadir}/singular
232singularlibrary = $(SLIB0:%=LIB/%) $(SLIB1:%=LIB/%) $(PLIBS:%=LIB/%)
233nobase_dist_singularlibrary_DATA = LIB/all.lib LIB/tst.lib LIB/help.cnf ${singularlibrary}
234EXTRA_DIST = make_alllib.sh LIB/all.lib.tmpl singular-libs LIB/help.cnf LIB/tst.lib
235
236# ${nobase_dist_singularlibrary_DATA}
237LIB/all.lib: ${srcdir}/make_alllib.sh ${srcdir}/LIB/all.lib.tmpl ${singularlibrary}
238        $(MKDIR_P) LIB
239        ${srcdir}/make_alllib.sh ${srcdir}/LIB/all.lib.tmpl ${SLIB0} ${PLIBS}
240
241########################### TEST #########################
242
243TESTS_ENVIRONMENT = SINGULARPATH='${abs_top_builddir}/Singular/LIB:${abs_top_builddir}/libpolys/tests/MOD:${abs_top_builddir}/libpolys/tests/gftables'
244TESTS_ENVIRONMENT += SINGULAR_ROOT_DIR='${abs_top_builddir}'
245
246TESTS=testg testr
247check_PROGRAMS=$(TESTS)
248
249testr_CFLAGS = -O3 -fomit-frame-pointer ${PIPE}
250testg_CFLAGS = ${PIPE}
251
252testr_CXXFLAGS = -O3 -fomit-frame-pointer --no-rtti -Wextra -Wall -Wno-long-long ${PIPE} $(CXXTEMPLFLAGS)
253testg_CXXFLAGS = -g -Wextra -Wall -Wno-long-long -pedantic ${PIPE} $(CXXTEMPLFLAGS)
254
255testr_SOURCES = test.cc
256testg_SOURCES = test.cc
257
258testr_LDADD = libSingular.la -lnumeric -lkernel -lpolys -lcoeffs -lresources -lreporter -lmisc $(FACTORY_LIBS) -lomalloc $(NTL_LIBS) $(GMP_LIBS) ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD}
259testg_LDADD = libSingular_g.la -lnumeric_g -lkernel_g -lpolys_g -lcoeffs_g -lresources_g -lreporter_g -lmisc_g $(FACTORY_LIBS) -lomalloc_g $(NTL_LIBS) $(GMP_LIBS) ${USEPPROCSDYNAMICLDFLAGS}  ${USEPPROCSDYNAMICLD}
260
261testr_CPPFLAGS = -DNDEBUG -DOM_NDEBUG
262# testg_CPPFLAGS =
263
264#########################################################
265
266# These files are built first
267BUILT_SOURCES = feOpt.inc mpsr_Tok.inc iparith.inc plural_cmd.inc feOptTS.inc feOptES.inc LIB/all.lib
268
269CLEANFILES = $(BUILT_SOURCES)
270
271feOpt.inc: feOpt
272        ./feOpt
273
274feOptES.inc: feOptES
275        ./feOptES
276
277feOptTS.inc: feOptTS
278        ./feOptTS
279
280plural_cmd.inc iparith.inc: gentable1
281        ./gentable1
282
283# fake rule to fix parallel make http://www.gnu.org/s/hello/manual/automake/Multiple-Outputs.html
284plural_cmd.inc: iparith.inc
285
286mpsr_Tok.inc: gentable2
287        ./gentable2
288
Note: See TracBrowser for help on using the repository browser.