source: git/factory/Makefile.am @ dccceb

spielwiese
Last change on this file since dccceb was 0943bd, checked in by Jan Engelhardt <jengelh@…>, 12 years ago
factory/build: libtool file updates Removes redundant statements, and adds the requires library dependencies. The library basename is enriched with the version number because there has been no trace of serious SO version numbering in previous releases been observed so far.
  • Property mode set to 100644
File size: 8.9 KB
Line 
1ACLOCAL_AMFLAGS = -I ../m4
2
3CXXTEMPLFLAGS      =  --no-exceptions ## -fno-implicit-templates
4
5AM_CPPFLAGS = -I${top_srcdir} -I${top_srcdir}/.. -I${top_builddir} -I${top_builddir}/.. -I${srcdir} ${GMP_CFLAGS} ${NTL_CFLAGS}
6
7lib_LTLIBRARIES = libfactory.la libfactory_g.la
8
9libfactory_la_CXXFLAGS   = -O3 -fomit-frame-pointer --no-rtti ${CXXTEMPLFLAGS}
10libfactory_la_LIBADD     = ${GMP_LIBS} ${NTL_LIBS}
11libfactory_la_LDFLAGS    = -release ${PACKAGE_VERSION}
12libfactory_g_la_CXXFLAGS = -g -Wextra -Wall -pedantic -Wno-long-long ${CXXTEMPLFLAGS}
13libfactory_g_la_LIBADD   = ${GMP_LIBS} ${NTL_LIBS}
14libfactory_g_la_LDFLAGS  = -release ${PACKAGE_VERSION}
15
16# factory source files
17SOURCES = \
18                algext.cc \
19                canonicalform.cc \
20                cf_algorithm.cc \
21                cf_binom.cc \
22                cf_char.cc \
23                cf_chinese.cc \
24                cf_cyclo.cc \
25                cf_eval.cc \
26                cf_factor.cc \
27                cf_factory.cc \
28                cf_gcd.cc \
29                cf_gcd_smallp.cc \
30                cf_generator.cc \
31                cf_globals.cc \
32                cf_hnf.cc \
33                cf_inline.cc \
34                cf_irred.cc \
35                cf_iter.cc \
36                cf_iter_inline.cc \
37                cf_linsys.cc \
38                cf_map.cc \
39                cf_map_ext.cc \
40                cfNewtonPolygon.cc \
41                cfModResultant.cc \
42                cf_ops.cc \
43                cf_primes.cc \
44                cf_random.cc \
45                cf_resultant.cc \
46                cf_reval.cc \
47                cf_switches.cc \
48                cf_util.cc \
49                debug.cc \
50                DegreePattern.cc \
51                ExtensionInfo.cc \
52                facAlgExt.cc \
53                facBivar.cc \
54                fac_berlekamp.cc \
55                fac_cantzass.cc \
56                fac_distrib.cc \
57                fac_ezgcd.cc \
58                facFactorize.cc \
59                fac_iterfor.cc \
60                fac_multihensel.cc \
61                fac_multivar.cc \
62                fac_sqrfree.cc \
63                fac_univar.cc \
64                fac_util.cc \
65                facFqBivar.cc \
66                facFqBivarUtil.cc \
67                facFqFactorize.cc \
68                facFqFactorizeUtil.cc \
69                facFqSquarefree.cc \
70                facHensel.cc \
71                facIrredTest.cc \
72                facSparseHensel.cc \
73                fieldGCD.cc \
74                ffops.cc \
75                gf_tabutil.cc \
76                gfops.cc \
77                imm.cc \
78                int_cf.cc \
79                int_int.cc \
80                int_intdiv.cc \
81                int_poly.cc \
82                int_pp.cc \
83                int_rat.cc \
84                sm_sparsemod.cc \
85                sm_util.cc \
86                variable.cc \
87                NTLconvert.cc \
88                abs_fac.cc \
89                bifac.cc \
90                lgs.cc \
91                singext.cc \
92                parseutil.cc \
93                ftmpl_inst.cc
94
95if WITH_PARSER_FOR_CANONICAL_FORM
96    SOURCES +=  readcf.yy
97endif
98
99libfactory_la_SOURCES = $(SOURCES)
100libfactory_g_la_SOURCES = $(SOURCES)
101
102libfactory_la_CPPFLAGS  = ${AM_CPPFLAGS} -DHAVE_CONFIG_H -DOM_NDEBUG -DNDEBUG
103libfactory_g_la_CPPFLAGS= ${AM_CPPFLAGS} -DHAVE_CONFIG_H
104
105nodist_libfactory_la_SOURCES = cplusplus.h factory.h factoryconf.h
106nodist_libfactory_g_la_SOURCES = cplusplus.h factory.h factoryconf.h
107
108
109# factory header files
110factory_headers = \
111                cf_assert.h \
112                canonicalform.h \
113                cf_algorithm.h \
114                cf_cyclo.h \
115                cf_binom.h \
116                cf_defs.h \
117                cf_eval.h \
118                cf_factory.h \
119                cf_generator.h \
120                cf_globals.h \
121                cf_gcd_smallp.h \
122                cf_hnf.h \
123                cf_irred.h \
124                cf_iter.h \
125                cf_map.h \
126                cf_map_ext.h \
127                cfNewtonPolygon.h \
128                cfModResultant.h \
129                cf_primes.h \
130                cf_primetab.h \
131                cf_random.h \
132                cf_reval.h \
133                cf_switches.h \
134                cf_util.h \
135                debug.h \
136                DegreePattern.h \
137                ExtensionInfo.h \
138                facAlgExt.h \
139                facBivar.h \
140                fac_berlekamp.h \
141                fac_cantzass.h \
142                fac_distrib.h \
143                facFactorize.h \
144                fac_iterfor.h \
145                fac_multivar.h \
146                fac_sqrfree.h \
147                fac_univar.h \
148                fac_util.h \
149                facFqBivar.h \
150                facFqBivarUtil.h \
151                facFqFactorize.h \
152                facFqFactorizeUtil.h \
153                facFqSquarefree.h \
154                facHensel.h \
155                facIrredTest.h \
156                facSparseHensel.h \
157                fieldGCD.h \
158                ffops.h \
159                gf_tabutil.h \
160                gfops.h \
161                gmpext.h \
162                imm.h \
163                int_cf.h \
164                int_int.h \
165                int_poly.h \
166                int_pp.h \
167                int_rat.h \
168                sm_sparsemod.h \
169                sm_util.h \
170                timing.h \
171                variable.h \
172                NTLconvert.h \
173                bifac.h \
174                bifacConfig.h \
175                lgs.h \
176                algext.h \
177                singext.h \
178                parseutil.h
179
180noinst_HEADERS = $(factory_headers)
181
182libfactory_includedir=$(includedir)/factory
183
184nobase_libfactory_include_HEADERS = \
185    cf_gmp.h $(templateincl)
186
187nodist_libfactory_include_HEADERS = cplusplus.h factory.h factoryconf.h
188
189
190####################################################
191# Documentation
192include $(top_srcdir)/aminclude.am
193
194doxysrc = $(SOURCES) parseutil.cc
195doxyincl = $(factory_headers) parseutil.h
196
197# doxygen targets
198doxy:           factory.cfg $(doxysrc) $(doxyincl)
199                doxygen $<
200
201doxyclean:
202                rm -rf doxygen
203
204####################################################
205# the precomputed GF(q)-tables
206
207gftablesdir=$(datadir)/gftables
208dist_gftables_DATA = gftables/10201 gftables/1024 gftables/10609 gftables/11449 \
209gftables/11881 gftables/121 gftables/12167 gftables/125 gftables/12769 \
210gftables/128 gftables/1331 gftables/1369 gftables/14641 \
211gftables/15625 gftables/16 gftables/16129 gftables/16384 \
212gftables/16807 gftables/1681 gftables/169 gftables/17161 gftables/1849 \
213gftables/18769 gftables/19321 gftables/19683 gftables/2048 \
214gftables/2187 gftables/2197 gftables/2209 gftables/22201 \
215gftables/22801 gftables/2401 gftables/243 gftables/24389 \
216gftables/24649 gftables/25 gftables/256 gftables/26569 gftables/27 \
217gftables/27889 gftables/2809 gftables/28561 gftables/289 \
218gftables/29791 gftables/29929 gftables/3125 gftables/32 gftables/32041 \
219gftables/32761 gftables/32768 gftables/343 gftables/3481 gftables/361 \
220gftables/36481 gftables/3721 gftables/37249 gftables/38809 \
221gftables/39601 gftables/4 gftables/4096 gftables/44521 gftables/4489 \
222gftables/49 gftables/4913 gftables/49729 gftables/5041 \
223gftables/50653 gftables/512 gftables/51529 gftables/52441 gftables/529 \
224gftables/5329 gftables/54289 gftables/57121 gftables/58081 \
225gftables/59049 gftables/6241 gftables/625 gftables/63001 \
226gftables/64 gftables/6561 gftables/6859 gftables/6889 gftables/729 \
227gftables/7921 gftables/8 gftables/81 gftables/8192 gftables/841 \
228gftables/9 gftables/9409 gftables/961
229
230
231####################################################
232# Support for building GF(q)-tables
233#
234# gengftables needs libfactory.la and factory.h AND is needed for
235# generating gftable but the tables are not necessarily needed to
236# compile and use libfactory (though it will be a lot slower).
237
238EXTRA_PROGRAMS = gengftables
239gengftables_SOURCES = gengftables-conway.cc
240gengftables_LDADD = -L${builddir} -lfactory $(GMP_LIBS) $(NTL_LIBS)
241
242
243####################################################
244# These files listed below are not used anywhere but are included in
245# the distribution. So they will be tacked on to EXTRA_DIST.
246
247templatesrc =   templates/ftmpl_array.cc \
248                templates/ftmpl_factor.cc \
249                templates/ftmpl_functions.h \
250                templates/ftmpl_list.cc \
251                templates/ftmpl_matrix.cc
252
253templateincl =  templates/ftmpl_array.h \
254                templates/ftmpl_factor.h \
255                templates/ftmpl_list.h \
256                templates/ftmpl_matrix.h
257
258# header templates
259hdrtemplsrc =   factoryconf.template \
260                factory.template
261
262# FTE source files
263ftestsrc =      ftest/ftest_io.cc \
264                ftest/ftest_util.cc \
265                ftest/ntl_util.cc
266
267# FTE header files
268ftestincl =     ftest/ftest_io.h \
269                ftest/ftest_util.h \
270                ftest/ntl_util.h
271
272ftestm4src =    ftest/commonden.m4 \
273                ftest/degree.m4 \
274                ftest/deriv.m4 \
275                ftest/divides.m4 \
276                ftest/divrem.m4 \
277                ftest/extgcd.m4 \
278                ftest/factorize.m4 \
279                ftest/fbinops.m4 \
280                ftest/feval.m4 \
281                ftest/gcd.m4 \
282                ftest/gcd.ntl.m4 \
283                ftest/insert.m4 \
284                ftest/norm.m4 \
285                ftest/resultant.m4 \
286                ftest/revert.m4 \
287                ftest/sqrfree.m4 \
288                ftest/size.m4 \
289                ftest/totaldegree.m4
290
291ftestdistfiles = \
292                ftest/ftest_util.m4
293
294EXTRA_DIST =    test_install.cc \
295                $(templatesrc) $(hdrtemplsrc) \
296                $(ftestsrc) $(ftestincl) $(ftestm4src) $(ftestdistfiles) \
297                doxygen.cfg factory.cfg \
298                examples/application.cc \
299                examples/factorize.cc examples/gcd.cc \
300                bin/folding.el bin/fold-docu.el \
301                bin/makeheader bin/gen-readcf readcf.yy
302
303##################################################
304# autogenerated sources
305
306noinst_PROGRAMS = cplusplus
307
308BUILT_SOURCES = cplusplus.h factory.h factoryconf.h
309
310CLEANFILES = $(BUILT_SOURCES)
311
312
313cplusplus_SOURCES = cplusplus.cc
314
315cplusplus.h: cplusplus
316        ${abs_builddir}/cplusplus > ${abs_builddir}/cplusplus.h
317
318.template.h:
319        ${srcdir}/bin/makeheader $< $@
320
321# factory/gfops.cc has the gftables path hardcoded in, so we create a
322# symlink. Remove this rule once gfopts.cc has been fixed. Note that
323# check-local would run in parallel with check, so we can't use it
324# here!
325all-local:
326        [ -d ${builddir}/gftables ] || ln -s ${srcdir}/gftables ${builddir}
327
328####################################################
329## Test program
330##
331TESTS = test-s-g test-s-r test-d-g test-d-r
332check_PROGRAMS = $(TESTS)
333
334TESTSSOURCES = test.cc
335
336test_s_g_SOURCES = $(TESTSSOURCES)
337test_s_g_CFLAGS = -g -Wextra -Wall -pedantic -Wno-long-long -fomit-frame-pointer --no-rtti
338#ftmpl_inst.o
339test_s_g_LDADD = -L${builddir} -lfactory_g $(GMP_LIBS) $(NTL_LIBS)
340
341test_s_r_SOURCES = $(TESTSSOURCES)
342test_s_r_CFLAGS = -O3 -fomit-frame-pointer --no-rtti
343#ftmpl_inst.o
344test_s_r_LDADD = -L${builddir} -lfactory $(GMP_LIBS) $(NTL_LIBS)
345
346test_s_r_LDFLAGS = -static
347test_s_g_LDFLAGS = -static
348
349
350
351test_d_g_SOURCES = $(TESTSSOURCES)
352test_d_g_CFLAGS = -g -Wextra -Wall -pedantic -Wno-long-long -fomit-frame-pointer --no-rtti
353#ftmpl_inst.o
354test_d_g_LDADD = -L${builddir} -lfactory_g $(GMP_LIBS) $(NTL_LIBS)
355
356test_d_r_SOURCES = $(TESTSSOURCES)
357test_d_r_CFLAGS = -O3 -fomit-frame-pointer --no-rtti
358#ftmpl_inst.o
359test_d_r_LDADD = -L${builddir} -lfactory $(GMP_LIBS) $(NTL_LIBS)
Note: See TracBrowser for help on using the repository browser.