source: git/Singular/Makefile.am @ 5d51cc6

spielwiese
Last change on this file since 5d51cc6 was a3a6a0, checked in by Hans Schoenemann <hannes@…>, 8 years ago
change library name: libresources -> libsingular_resources
  • Property mode set to 100644
File size: 7.5 KB
Line 
1ACLOCAL_AMFLAGS = -I../m4
2
3GIT_VERSION := $(shell $(top_srcdir)/git-version-gen $(top_srcdir)/.tarball-git-version)
4
5AM_CPPFLAGS = -I${top_srcdir} -I${top_builddir} -I${top_srcdir}/kernel -I${top_builddir}/kernel -I${top_srcdir}/libpolys -I${top_builddir}/libpolys $(FACTORY_INCLUDES)  $(GMP_CFLAGS) $(NTL_CFLAGS) $(FLINT_CFLAGS) -DGIT_VERSION='"$(GIT_VERSION)"'
6
7all-local: feOpt.inc feOptTS.inc feOptES.inc iparith.inc all.lib gftables MOD ${abs_builddir}/LIB Singular$(EXEEXT) ESingular$(EXEEXT) TSingular$(EXEEXT)
8
9SUBDIRS = dyn_modules
10
11########################### Possible builtin modules... #########################
12BUILTIN_FLAGS = ${BUILTIN_LIBS}
13
14########################### libSingular* #########################
15
16libSingular_LTLIBRARIES = libSingular.la
17libSingulardir = $(libdir)
18
19libSingular_la_CPPFLAGS = ${AM_CPPFLAGS} -DLIBSINGULAR ${PTHREAD_CFLAGS}
20
21SOURCES = \
22   links/asciiLink.cc\
23   attrib.cc\
24   blackbox.cc\
25   calcSVD.cc\
26   cntrlc.cc\
27   countedref.cc\
28   denom_list.cc\
29   eigenval_ip.cc\
30   extra.cc\
31   feOpt.cc\
32   fehelp.cc\
33   fevoices.cc\
34   fglm.cc\
35   gms.cc\
36   grammar.cc\
37   iparith.cc\
38   ipassign.cc\
39   ipconv.cc\
40   ipid.cc\
41   iplib.cc\
42   ipprint.cc\
43   ipshell.cc\
44   libparse.cc\
45   linearAlgebra_ip.cc\
46   lists.cc\
47   maps_ip.cc\
48   misc_ip.cc\
49   mod_lib.cc\
50   links/ndbm.cc\
51   newstruct.cc\
52   number2.cc\
53   pcv.cc\
54   links/pipeLink.cc\
55   scanner.cc\
56   sdb.cc\
57   links/silink.cc\
58   links/sing_dbm.cc\
59   links/slInit_Static.cc\
60   links/ssiLink.cc\
61   links/semaphore.c\
62   subexpr.cc\
63   pyobject_setup.cc\
64   walk.cc\
65   walk_ip.cc\
66   wrapper.cc\
67   mmstd.c claptmpl.cc\
68   febase.cc
69
70#   links/slInit_Dynamic.cc
71
72libSingular_la_SOURCES   = $(SOURCES)
73
74SingularHEADERS = \
75   attrib.h \
76   blackbox.h \
77   cntrlc.h \
78   countedref.h \
79   links/dbm_sl.h \
80   distrib.h \
81   eigenval_ip.h \
82   feOpt.h feOptTab.h fehelp.h \
83   fglm.h \
84   gms.h \
85   grammar.h \
86   idrec.h \
87   ipconv.h \
88   ipid.h \
89   ipprint.h \
90   ipshell.h \
91   libparse.h \
92   libsingular.h \
93   linearAlgebra_ip.h\
94   lists.h \
95   locals.h \
96   maps_ip.h \
97   misc_ip.h \
98   mmalloc.h \
99   mod_lib.h \
100   links/ndbm.h \
101   newstruct.h \
102   number2.h \
103   pcv.h \
104   links/pipeLink.h \
105   pyobject_setup.h \
106   run.h \
107   sdb.h \
108   links/silink.h \
109   links/sing_dbm.h \
110   links/slInit.h \
111   links/ssiLink.h \
112   links/simpleipc.h \
113   stype.h \
114   subexpr.h \
115   table.h \
116   tok.h \
117   walk.h \
118   fevoices.h
119
120
121# -DMAKE_DISTRIBUTION
122
123# plural_cmd.inc
124nodist_libSingular_la_SOURCES = feOpt.inc iparith.inc
125
126libSingular_la_LDFLAGS    =${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD} -release ${PACKAGE_VERSION} ${PTHREAD_LDFLAGS}
127libSingular_la_LIBADD     =${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD} ${BUILTIN_FLAGS} ${top_builddir}/kernel/libkernel.la ${PTHREAD_LIBS}
128
129libSingular_includedir = ${includedir}/singular/Singular
130nobase_libSingular_include_HEADERS = $(SingularHEADERS)
131
132#########################################################
133# handle all the generated *.inc
134
135noinst_PROGRAMS = gentable1 feOptGen feOptES feOptTS
136
137gentable1_SOURCES = gentable.cc grammar.h tok.h table.h
138gentable1_CPPFLAGS = ${AM_CPPFLAGS}
139
140feOptGen_SOURCES = feOptGen.cc feOptGen.h
141feOptGen_CPPFLAGS = ${AM_CPPFLAGS}
142
143feOptES_SOURCES = feOptGen.cc feOptGen.h
144feOptES_CPPFLAGS = ${AM_CPPFLAGS} -DESINGULAR
145
146feOptTS_SOURCES = feOptGen.cc feOptGen.h
147feOptTS_CPPFLAGS = ${AM_CPPFLAGS} -DTSINGULAR
148
149########################### Singular* #########################
150
151EXTRA_PROGRAMS =  libparse Singulard
152
153# the "optional_programs" variable should be defined in the configure
154# script, and listed in an AC_SUBST macro
155optional_Singular_programs =
156
157bin_PROGRAMS = Singular ESingular TSingular $(optional_Singular_programs)
158
159Singular_SOURCES = tesths.cc fegetopt.c fegetopt.h utils.cc  utils.h
160
161Singular_LDADD = libSingular.la ${BUILTIN_FLAGS}
162
163Singular_LDFLAGS = -static ${AM_LDFLAGS} ${BUILTIN_FLAGS}
164
165Singulard_SOURCES = tesths.cc fegetopt.c fegetopt.h utils.cc  utils.h
166
167Singulard_LDADD = libSingular.la ${BUILTIN_FLAGS}
168
169Singulard_LDFLAGS = -shared ${AM_LDFLAGS} ${BUILTIN_FLAGS}
170
171scriptdir = $(libexecdir)/singular/MOD
172dist_script_SCRIPTS = singularsurf singularsurf_jupyter singularsurf_win
173
174#### ESingular
175ESingular_CPPFLAGS = ${AM_CPPFLAGS} -DESINGULAR -DPROTO
176# ESingular_LDFLAGS = -static ${AM_LDFLAGS}
177ESingular_LDADD =  ${top_builddir}/libpolys/reporter/libreporter.la \
178${top_builddir}/libpolys/misc/libmisc.la ${top_builddir}/omalloc/libomalloc.la \
179${top_builddir}/resources/libsingular_resources.la
180
181
182ESingular_SOURCES = emacs.cc fegetopt.c fegetopt.h feOptES.inc feOpt.cc
183
184#### same for TSingular
185TSingular_CPPFLAGS = ${AM_CPPFLAGS} -DTSINGULAR -DPROTO
186# TSingular_LDFLAGS = -static ${AM_LDFLAGS}
187TSingular_LDADD = ${top_builddir}/libpolys/reporter/libreporter.la \
188${top_builddir}/libpolys/misc/libmisc.la ${top_builddir}/omalloc/libomalloc.la \
189${top_builddir}/resources/libsingular_resources.la
190
191TSingular_SOURCES = emacs.cc fegetopt.c fegetopt.h feOptTS.inc feOpt.cc
192# utils.cc utils.h
193
194
195#### libparse
196libparse_CPPFLAGS = ${AM_CPPFLAGS} -DSTANDALONE_PARSER
197
198libparse_SOURCES = libparse.cc fegetopt.c fegetopt.h utils.cc  utils.h
199
200libparse_LDADD = ${top_builddir}/omalloc/libomalloc.la
201libparse_LDFLAGS = -static ${AM_LDFLAGS}
202
203#########################################################
204# the Singular library (*.lib files)
205
206include ${srcdir}/singular-libs
207
208singularlibrarydir = ${datadir}/singular
209singularlibrary = $(SLIB0:%=LIB/%) $(SLIB1:%=LIB/%) $(PLIBS:%=LIB/%) $(SLIB2:%=LIB/%)
210singularlibrary_DATA = $(top_srcdir)/doc/singular.idx
211nobase_dist_singularlibrary_DATA = LIB/tst.lib LIB/help.cnf ${singularlibrary}
212EXTRA_DIST = grammar.y libparse.ll make_alllib.sh LIB/all.lib.tmpl \
213             singular-libs LIB/help.cnf LIB/.singularrc LIB/COPYING \
214             links/slInit_Dynamic.cc ../doc/singular.idx
215
216singularalllibrarydir = ${datadir}/singular/LIB
217singularalllibrary = all.lib
218nobase_dist_singularalllibrary_DATA = all.lib
219
220all.lib: ${srcdir}/make_alllib.sh ${srcdir}/LIB/all.lib.tmpl ${singularlibrary}
221        ${srcdir}/make_alllib.sh ${srcdir}/LIB/all.lib.tmpl ${SLIB0} ${PLIBS}
222
223########################### TEST #########################
224TESTS_ENVIRONMENT = SINGULARPATH='${top_builddir}/Singular/LIB:${top_srcdir}/Singular/LIB:${top_builddir}/libpolys/polys/.libs:${top_builddir}/factory/gftables'
225TESTS_ENVIRONMENT += SINGULAR_ROOT_DIR='${top_builddir}'
226
227TESTS=test
228
229check_PROGRAMS=$(TESTS)
230
231test_SOURCES = test.cc
232test_LDADD = libSingular.la
233
234#########################################################
235# These files are built first
236BUILT_SOURCES = feOpt.inc feOptTS.inc feOptES.inc iparith.inc all.lib gftables MOD
237CLEANFILES = $(BUILT_SOURCES) $(EXTRA_PROGRAMS)
238
239clean-local:
240        if [ "${abs_builddir}" != "${abs_srcdir}" ]; then \
241          if [ -L ${abs_builddir}/LIB ]; then unlink ${abs_builddir}/LIB; fi \
242        fi
243
244feOpt.inc: feOptGen$(EXEEXT)
245        ${builddir}/feOptGen$(EXEEXT)
246
247feOptES.inc: feOptES$(EXEEXT)
248        ${builddir}/feOptES$(EXEEXT)
249
250feOptTS.inc: feOptTS$(EXEEXT)
251        ${builddir}/feOptTS$(EXEEXT)
252
253iparith.inc: gentable1$(EXEEXT) table.h
254        ${builddir}/gentable1$(EXEEXT)
255
256# # fake rule to fix parallel make http://www.gnu.org/s/hello/manual/automake/Multiple-Outputs.html
257
258gftables: ${top_srcdir}/factory/gftables
259        ln -snf ${top_srcdir}/factory/gftables ${builddir}/gftables
260
261${abs_builddir}/LIB: ${srcdir}/LIB
262        if [ "${abs_builddir}" != "${abs_srcdir}" ]; then \
263          ln -snf ${abs_srcdir}/LIB ${abs_builddir}/; \
264        fi
265
266MOD:
267        if [ -d "${top_builddir}/libpolys/polys/.libs" ]; then \
268          ln -snf ${top_builddir}/libpolys/polys/.libs/ ${abs_builddir}/MOD; \
269        fi
270
271echoLIBS:
272        @echo ${SLIB0} ${SLIB1} ${SLIB2} ${PLIBS}
273
Note: See TracBrowser for help on using the repository browser.