1 | ACLOCAL_AMFLAGS = -I ../m4 |
---|
2 | |
---|
3 | bin_SCRIPTS = libpolys-config |
---|
4 | |
---|
5 | SUBDIRS=tests |
---|
6 | |
---|
7 | configheaderdir = ${includedir}/singular |
---|
8 | nodist_configheader_HEADERS = libpolysconfig.h |
---|
9 | DISTCLEANFILES = $(nodist_configheader_HEADERS) |
---|
10 | |
---|
11 | pkgconfigdir = $(libdir)/pkgconfig |
---|
12 | pkgconfig_DATA = libpolys.pc |
---|
13 | |
---|
14 | |
---|
15 | |
---|
16 | |
---|
17 | |
---|
18 | AM_CPPFLAGS = -I${top_srcdir} -I${top_builddir} \ |
---|
19 | ${FACTORY_INCLUDES} ${RESOURCES_INCLUDES} ${OMALLOC_INCLUDES} \ |
---|
20 | ${FLINT_CFLAGS} ${GMP_CPPFLAGS} |
---|
21 | |
---|
22 | AM_CXXFLAGS = |
---|
23 | |
---|
24 | |
---|
25 | if ENABLE_P_PROCS_STATIC |
---|
26 | USE_P_PROCS_STATIC_CC = polys/templates/p_Procs_Static.cc |
---|
27 | USE_P_PROCS_STATIC = -Dp_Procs_Static |
---|
28 | else |
---|
29 | USE_P_PROCS_STATIC_CC = |
---|
30 | USE_P_PROCS_STATIC = |
---|
31 | endif |
---|
32 | |
---|
33 | if ENABLE_P_PROCS_DYNAMIC |
---|
34 | USE_P_PROCS_DYNAMIC_CC = polys/templates/p_Procs_Dynamic.cc |
---|
35 | P_PROCS_CPPFLAGS_COMMON = ${AM_CPPFLAGS} -DDYNAMIC_VERSION |
---|
36 | else |
---|
37 | USE_P_PROCS_DYNAMIC_CC = |
---|
38 | P_PROCS_CPPFLAGS_COMMON = ${AM_CPPFLAGS} |
---|
39 | endif |
---|
40 | |
---|
41 | |
---|
42 | libpolys_LTLIBRARIES = libpolys.la |
---|
43 | libpolysdir = $(libdir) |
---|
44 | |
---|
45 | SOURCES = \ |
---|
46 | coeffs/numbers.cc coeffs/rintegers.cc coeffs/rmodulo2m.cc coeffs/rmodulon.cc coeffs/shortfl.cc \ |
---|
47 | coeffs/gnumpc.cc coeffs/gnumpfl.cc coeffs/longrat.cc coeffs/longrat0.cc coeffs/ffields.cc \ |
---|
48 | coeffs/modulop.cc coeffs/mpr_complex.cc coeffs/ntupel.cc \ |
---|
49 | coeffs/bigintmat.cc \ |
---|
50 | coeffs/flintcf_Qrat.cc coeffs/flintcf_Q.cc coeffs/flintcf_Zn.cc \ |
---|
51 | polys/monomials/p_polys.cc polys/monomials/ring.cc polys/monomials/maps.cc \ |
---|
52 | polys/operations/pShallowCopyDelete.cc polys/operations/p_Mult_q.cc \ |
---|
53 | polys/nc/sca.cc polys/nc/summator.cc polys/nc/ncSAFormula.cc polys/nc/ncSACache.cc polys/nc/ncSAMult.cc \ |
---|
54 | polys/pDebug.cc polys/polys0.cc polys/prCopy.cc polys/prCopyMacros.h \ |
---|
55 | polys/kbuckets.cc polys/sbuckets.cc polys/weight.cc polys/weight0.c polys/simpleideals.cc polys/matpol.cc \ |
---|
56 | polys/sparsmat.cc \ |
---|
57 | polys/shiftop.cc \ |
---|
58 | ${USE_P_PROCS_STATIC_CC} ${USE_P_PROCS_DYNAMIC_CC} polys/mod_raw.cc \ |
---|
59 | polys/ext_fields/algext.cc polys/ext_fields/transext.cc \ |
---|
60 | polys/clapsing.cc polys/clapconv.cc polys/flintconv.cc polys/flint_mpoly.cc\ |
---|
61 | polys/nc/old.gring.cc polys/PolyEnumerator.cc \ |
---|
62 | misc/int64vec.cc misc/options.c misc/sirandom.c misc/intvec.cc misc/prime.cc \ |
---|
63 | reporter/dError.cc reporter/reporter.cc reporter/s_buff.cc |
---|
64 | |
---|
65 | LIBPOLYSHEADERS = polys/monomials/ring.h polys/monomials/monomials.h \ |
---|
66 | polys/monomials/p_polys.h polys/monomials/maps.h polys/PolyEnumerator.h polys/prCopy.h \ |
---|
67 | polys/nc/nc.h polys/nc/sca.h polys/nc/summator.h polys/nc/ncSAFormula.h polys/nc/ncSACache.h polys/nc/ncSAMult.h polys/nc/gb_hack.h \ |
---|
68 | polys/operations/pShallowCopyDelete.h \ |
---|
69 | polys/templates/p_Procs.h polys/templates/p_MemAdd.h polys/templates/p_MemCmp.h \ |
---|
70 | polys/kbuckets.h polys/sbuckets.h polys/simpleideals.h polys/weight.h polys/matpol.h \ |
---|
71 | polys/sparsmat.h polys/clapsing.h polys/clapconv.h polys/coeffrings.h polys/flintconv.h polys/flint_mpoly.h\ |
---|
72 | polys/shiftop.h \ |
---|
73 | polys/ext_fields/algext.h polys/ext_fields/transext.h polys/mod_raw.h \ |
---|
74 | misc/mylimits.h misc/options.h misc/intvec.h misc/int64vec.h \ |
---|
75 | misc/sirandom.h misc/prime.h misc/auxiliary.h \ |
---|
76 | reporter/reporter.h reporter/s_buff.h reporter/si_signals.h \ |
---|
77 | coeffs/coeffs.h coeffs/numbers.h coeffs/si_gmp.h coeffs/gnumpc.h coeffs/gnumpfl.h coeffs/longrat.h coeffs/modulop.h coeffs/modulop_inl.h \ |
---|
78 | coeffs/ffields.h coeffs/rintegers.h coeffs/rmodulo2m.h coeffs/rmodulon.h \ |
---|
79 | coeffs/shortfl.h coeffs/mpr_complex.h coeffs/mpr_global.h coeffs/numstats.h coeffs/ntupel.h \ |
---|
80 | coeffs/bigintmat.h coeffs/Enumerator.h \ |
---|
81 | coeffs/flintcf_Qrat.h coeffs/flintcf_Q.h coeffs/flintcf_Zn.h |
---|
82 | |
---|
83 | libpolys_la_includedir =$(includedir)/singular |
---|
84 | libpolys_la_include_HEADERS=${LIBPOLYSHEADERS} |
---|
85 | |
---|
86 | EXTRA_DIST = \ |
---|
87 | polys/prCopy.pl polys/prCopyTemplate.cc \ |
---|
88 | polys/templates/p_Procs_Lib.cc polys/templates/p_MemCopy.h polys/templates/p_Numbers.h \ |
---|
89 | polys/templates/p_Procs_Set.h polys/templates/p_Procs_Static.h polys/templates/p_Procs_Dynamic.h \ |
---|
90 | polys/templates/p_Procs_Impl.h polys/templates/p_Delete__T.cc polys/templates/p_Copy__T.cc \ |
---|
91 | polys/templates/p_ShallowCopyDelete__T.cc polys/templates/p_Mult_nn__T.cc \ |
---|
92 | polys/templates/pp_Mult_nn__T.cc polys/templates/pp_Mult_mm__T.cc polys/templates/p_Mult_mm__T.cc \ |
---|
93 | polys/templates/pp_Mult_Coeff_mm_DivSelect__T.cc polys/templates/pp_Mult_nn__T.cc \ |
---|
94 | polys/templates/pp_Mult_Coeff_mm_DivSelectMult__T.cc \ |
---|
95 | polys/templates/pp_Mult_mm_Noether__T.cc polys/operations/p_Mult_q.h \ |
---|
96 | polys/templates/p_kBucketSetLm__T.cc polys/templates/p_Minus_mm_Mult_qq__T.cc \ |
---|
97 | polys/templates/p_Merge_q__T.cc polys/templates/p_Add_q__T.cc polys/templates/p_Neg__T.cc |
---|
98 | |
---|
99 | |
---|
100 | p_Procs_FieldGeneral_la_CPPFLAGS = -Dp_Procs_FieldGeneral ${P_PROCS_CPPFLAGS_COMMON} |
---|
101 | p_Procs_FieldIndep_la_CPPFLAGS = -Dp_Procs_FieldIndep ${P_PROCS_CPPFLAGS_COMMON} |
---|
102 | p_Procs_FieldQ_la_CPPFLAGS = -Dp_Procs_FieldQ ${P_PROCS_CPPFLAGS_COMMON} |
---|
103 | p_Procs_FieldZp_la_CPPFLAGS = -Dp_Procs_FieldZp ${P_PROCS_CPPFLAGS_COMMON} |
---|
104 | |
---|
105 | P_PROCS_MODULE_LDFLAGS = -shared -module -dynamic -export-dynamic -avoid-version -weak_reference_mismatches weak -undefined dynamic_lookup -flat_namespace |
---|
106 | |
---|
107 | p_Procs_FieldGeneral_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS} |
---|
108 | p_Procs_FieldIndep_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS} |
---|
109 | p_Procs_FieldQ_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS} |
---|
110 | p_Procs_FieldZp_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS} |
---|
111 | |
---|
112 | P_PROCS = polys/templates/p_Procs_Lib.cc |
---|
113 | |
---|
114 | p_Procs_FieldGeneral_la_SOURCES = ${P_PROCS} |
---|
115 | p_Procs_FieldIndep_la_SOURCES = ${P_PROCS} |
---|
116 | p_Procs_FieldQ_la_SOURCES = ${P_PROCS} |
---|
117 | p_Procs_FieldZp_la_SOURCES = ${P_PROCS} |
---|
118 | |
---|
119 | |
---|
120 | moduledir = $(libexecdir)/singular/MOD |
---|
121 | |
---|
122 | if ENABLE_P_PROCS_DYNAMIC |
---|
123 | module_LTLIBRARIES=p_Procs_FieldGeneral.la p_Procs_FieldIndep.la p_Procs_FieldQ.la p_Procs_FieldZp.la |
---|
124 | endif |
---|
125 | |
---|
126 | libpolys_includedir=$(includedir)/singular/polys |
---|
127 | |
---|
128 | nobase_libpolys_include_HEADERS = $(LIBPOLYSHEADERS) |
---|
129 | |
---|
130 | libpolys_la_SOURCES = ${SOURCES} |
---|
131 | |
---|
132 | EXTRA_libpolys_la_SOURCES = polys/templates/p_Procs_Static.cc polys/templates/p_Procs_Dynamic.cc |
---|
133 | |
---|
134 | libpolys_la_LDFLAGS= $(SINGULAR_LDFLAGS) ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD} -release ${PACKAGE_VERSION} |
---|
135 | libpolys_la_LIBADD = ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD} ${FACTORY_LIBS} |
---|
136 | |
---|
137 | |
---|
138 | ################################################# |
---|
139 | # autogenerated sources |
---|
140 | noinst_PROGRAMS = p_Procs_Generate |
---|
141 | nodist_p_Procs_Generate_SOURCES = polys/templates/p_Procs.inc |
---|
142 | p_Procs_Generate_SOURCES = polys/p_Procs_Generate.cc |
---|
143 | p_Procs_Generate_CPPFLAGS = ${AM_CPPFLAGS} ${USE_P_PROCS_STATIC} |
---|
144 | BUILT_SOURCES = polys/prCopy.inc gftables MOD polys/templates/p_Procs.inc |
---|
145 | |
---|
146 | polys/templates/p_Procs.inc: polys/p_Procs_Generate.cc |
---|
147 | $(MAKE) $(AM_MAKEFLAGS) CXX="$(CXX_FOR_BUILD)" \ |
---|
148 | CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \ |
---|
149 | CPPFLAGS="-I${abs_top_srcdir} -I${abs_top_builddir} -I${top_srcdir} -I${top_builddir} ${FACTORY_INCLUDES} $(CPPFLAGS_FOR_BUILD) ${USE_P_PROCS_STATIC}" \ |
---|
150 | LDFLAGS="" LIBS="" p_Procs_Generate |
---|
151 | ./p_Procs_Generate$(BUILD_EXEEXT) > ./polys/templates/p_Procs.inc |
---|
152 | |
---|
153 | polys/prCopy.inc: polys/prCopy.pl |
---|
154 | perl ${srcdir}/polys/prCopy.pl > polys/prCopy.inc |
---|
155 | |
---|
156 | CLEANFILES = $(BUILT_SOURCES) p_Procs_Generate |
---|
157 | |
---|
158 | ###################################################################### |
---|
159 | |
---|
160 | TESTS = test |
---|
161 | check_PROGRAMS = $(TESTS) |
---|
162 | |
---|
163 | test_LDADD=libpolys.la \ |
---|
164 | $(FACTORY_LIBS) $(RESOURCES_LIBS) $(OMALLOC_LIBS) \ |
---|
165 | $(FLINT_LIBS) $(GMP_LIBS) $(NTL_LIBS) |
---|
166 | |
---|
167 | test_SOURCES=test.cc |
---|
168 | |
---|
169 | gftables: ${top_srcdir}/../factory/gftables |
---|
170 | ln -snf ${top_srcdir}/../factory/gftables ${builddir}/gftables |
---|
171 | |
---|
172 | MOD: |
---|
173 | if [ -d "${top_builddir}/libpolys/.libs" ]; then \ |
---|
174 | ln -snf ${top_builddir}/libpolys/.libs/ ${abs_builddir}/MOD; \ |
---|
175 | fi |
---|
176 | |
---|