source: git/libpolys/polys/Makefile.am @ 35f51c1

spielwiese
Last change on this file since 35f51c1 was db6ce3, checked in by Oleksandr Motsak <motsak@…>, 10 years ago
Fix linker flags for dynamic/shared version of libpoly
  • Property mode set to 100644
File size: 4.6 KB
Line 
1ACLOCAL_AMFLAGS = -I ../../m4
2
3AM_CPPFLAGS     = -I${top_srcdir} -I${top_srcdir}/.. -I${top_builddir} -I${top_builddir}/.. -I${srcdir} -I${top_srcdir}/../factory/include -I${top_builddir}/../factory/include ${GMP_CFLAGS} 
4
5
6if ENABLE_P_PROCS_STATIC
7  USE_P_PROCS_STATIC_CC = templates/p_Procs_Static.cc
8  USE_P_PROCS_STATIC = -Dp_Procs_Static
9else
10  USE_P_PROCS_STATIC_CC =
11  USE_P_PROCS_STATIC =
12endif
13
14if ENABLE_P_PROCS_DYNAMIC
15  USE_P_PROCS_DYNAMIC_CC = templates/p_Procs_Dynamic.cc
16  P_PROCS_CPPFLAGS_COMMON = ${AM_CPPFLAGS} -DDYNAMIC_VERSION
17else
18  USE_P_PROCS_DYNAMIC_CC =
19  P_PROCS_CPPFLAGS_COMMON = ${AM_CPPFLAGS}
20endif
21
22
23libpolys_LTLIBRARIES = libpolys.la
24libpolysdir = $(libdir)
25
26SOURCES = \
27        monomials/monomials.cc monomials/p_polys.cc monomials/ring.cc monomials/maps.cc \
28        operations/pShallowCopyDelete.cc operations/p_Mult_q.cc \
29        nc/sca.cc nc/summator.cc nc/ncSAFormula.cc nc/ncSACache.cc nc/ncSAMult.cc \
30        pDebug.cc polys0.cc prCopy.cc prCopyMacros.h \
31        kbuckets.cc sbuckets.cc weight.cc weight0.c simpleideals.cc matpol.cc \
32        sparsmat.cc \
33        ${USE_P_PROCS_STATIC_CC} ${USE_P_PROCS_DYNAMIC_CC} mod_raw.cc \
34        ext_fields/algext.cc ext_fields/transext.cc \
35        clapsing.cc clapconv.cc \
36        nc/old.gring.cc PolyEnumerator.cc
37
38LIBPOLYSHEADERS = monomials/ring.h monomials/monomials.h \
39  monomials/p_polys.h monomials/maps.h PolyEnumerator.h  prCopy.h \
40        nc/nc.h nc/sca.h nc/summator.h nc/ncSAFormula.h nc/ncSACache.h nc/ncSAMult.h nc/gb_hack.h \
41        operations/pShallowCopyDelete.h \
42        templates/p_Procs.h templates/p_MemAdd.h templates/p_MemCmp.h \
43        kbuckets.h sbuckets.h simpleideals.h weight.h matpol.h \
44        sparsmat.h clapsing.h clapconv.h coeffrings.h \
45        ext_fields/algext.h ext_fields/transext.h mod_raw.h 
46
47EXTRA_DIST = \
48        prCopy.pl prCopyTemplate.cc \
49        templates/p_Procs_Lib.cc templates/p_MemCopy.h templates/p_Numbers.h \
50        templates/p_Procs_Set.h templates/p_Procs_Static.h templates/p_Procs_Dynamic.h \
51        templates/p_Procs_Impl.h templates/p_Delete__T.cc templates/p_Copy__T.cc \
52        templates/p_ShallowCopyDelete__T.cc templates/p_Mult_nn__T.cc \
53        templates/pp_Mult_nn__T.cc templates/pp_Mult_mm__T.cc templates/p_Mult_mm__T.cc \
54        templates/pp_Mult_Coeff_mm_DivSelect__T.cc templates/pp_Mult_nn__T.cc \
55        templates/pp_Mult_Coeff_mm_DivSelectMult__T.cc \
56        templates/pp_Mult_mm_Noether__T.cc operations/p_Mult_q.h \
57        templates/p_kBucketSetLm__T.cc templates/p_Minus_mm_Mult_qq__T.cc \
58        templates/p_Merge_q__T.cc templates/p_Add_q__T.cc templates/p_Neg__T.cc
59
60
61p_Procs_FieldGeneral_la_CPPFLAGS = -Dp_Procs_FieldGeneral ${P_PROCS_CPPFLAGS_COMMON}
62p_Procs_FieldIndep_la_CPPFLAGS = -Dp_Procs_FieldIndep ${P_PROCS_CPPFLAGS_COMMON}
63p_Procs_FieldQ_la_CPPFLAGS = -Dp_Procs_FieldQ ${P_PROCS_CPPFLAGS_COMMON}
64p_Procs_FieldZp_la_CPPFLAGS = -Dp_Procs_FieldZp ${P_PROCS_CPPFLAGS_COMMON}
65
66P_PROCS_MODULE_LDFLAGS = -shared -module -dynamic -export-dynamic -avoid-version -weak_reference_mismatches weak -undefined dynamic_lookup -Wl,-undefined -Wl,dynamic_lookup -flat_namespace
67
68p_Procs_FieldGeneral_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
69p_Procs_FieldIndep_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
70p_Procs_FieldQ_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
71p_Procs_FieldZp_la_LDFLAGS = ${P_PROCS_MODULE_LDFLAGS}
72
73P_PROCS = templates/p_Procs_Lib.cc
74
75p_Procs_FieldGeneral_la_SOURCES = ${P_PROCS}
76p_Procs_FieldIndep_la_SOURCES = ${P_PROCS}
77p_Procs_FieldQ_la_SOURCES = ${P_PROCS}
78p_Procs_FieldZp_la_SOURCES = ${P_PROCS}
79
80
81moduledir = $(libexecdir)/singular/MOD
82
83if ENABLE_P_PROCS_DYNAMIC
84  module_LTLIBRARIES=p_Procs_FieldGeneral.la p_Procs_FieldIndep.la p_Procs_FieldQ.la p_Procs_FieldZp.la
85endif
86
87libpolys_includedir=$(includedir)/singular/polys
88
89nobase_libpolys_include_HEADERS = $(LIBPOLYSHEADERS)
90
91libpolys_la_SOURCES = ${SOURCES}
92
93EXTRA_libpolys_la_SOURCES = templates/p_Procs_Static.cc templates/p_Procs_Dynamic.cc
94
95libpolys_la_LDFLAGS= ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD} -release ${PACKAGE_VERSION}
96libpolys_la_LIBADD = ${USEPPROCSDYNAMICLDFLAGS} ${USEPPROCSDYNAMICLD} ${top_builddir}/coeffs/libcoeffs.la
97
98
99#################################################
100# autogenerated sources
101
102BUILT_SOURCES = prCopy.inc templates/p_Procs.inc
103
104noinst_PROGRAMS = templates/p_Procs_Generate
105templates_p_Procs_Generate_SOURCES = templates/p_Procs_Generate.cc
106templates_p_Procs_Generate_CPPFLAGS = ${USE_P_PROCS_STATIC} ${AM_CPPFLAGS}
107templates_p_Procs_Generate_LDADD    = ${top_builddir}/reporter/libreporter.la ${top_builddir}/misc/libmisc.la
108
109templates/p_Procs.inc: templates/p_Procs_Generate$(EXEEXT)
110        ${builddir}/templates/p_Procs_Generate$(EXEEXT) > ${builddir}/templates/p_Procs.inc
111
112prCopy.inc: prCopy.pl
113        perl ${srcdir}/prCopy.pl >  prCopy.inc
114
115CLEANFILES = $(BUILT_SOURCES)
116
Note: See TracBrowser for help on using the repository browser.