new version 5.22.4
[polylib.git] / Makefile.am
blob7d430f9a39220755702de272ebf5303f4b89ccab
1 SUBDIRS = include Test
3 CPPFLAGS = -I$(srcdir)/include -Iinclude @CPPFLAGS@
5 ACLOCAL_AMFLAGS = -I m4
7 poly_src = $(srcdir)/applications
8 poly_arith = $(srcdir)/source/arith
10 CFILES= \
11         source/arith/errors.c \
12         source/kernel/errormsg.c \
13         source/kernel/vector.c \
14         source/kernel/matrix.c \
15         source/kernel/polyhedron.c \
16         source/kernel/polyparam.c \
17         source/kernel/param.c \
18         source/kernel/alpha.c \
19         source/ehrhart/ehrhart.c \
20         source/ehrhart/ext_ehrhart.c \
21         source/ehrhart/eval_ehrhart.c \
22         source/ehrhart/homogenization.c \
23         source/ehrhart/ranking.c \
24         source/kernel/matrix_addon.c \
25         source/kernel/matrix_permutations.c \
26         source/kernel/compress_parms.c \
27         source/kernel/SolveDio.c \
28         source/kernel/Lattice.c \
29         source/kernel/Matop.c \
30         source/kernel/NormalForms.c \
31         source/kernel/Zpolyhedron.c             
33 sources = $(CFILES) \
34         $(poly_arith)/assert.h \
35         $(poly_arith)/arithmetique.h \
36         $(poly_arith)/arithmetic_errors.h
38 EXTRA_DIST = doc source/oldpolytest.c
40 lib_LTLIBRARIES = @polylibs@
41 libpolylib32_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@
42 libpolylib32_la_SOURCES = $(sources)
43 libpolylib32_la_CPPFLAGS = -DPOLYLIB_BITS=32
44 libpolylib32_la_LIBADD = @LTLIBOBJS@
45 libpolylib64_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@
46 libpolylib64_la_SOURCES = $(sources)
47 libpolylib64_la_CPPFLAGS = -DPOLYLIB_BITS=64
48 libpolylib64_la_LIBADD = @LTLIBOBJS@
49 libpolylib128_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@
50 libpolylib128_la_SOURCES = $(sources)
51 libpolylib128_la_CPPFLAGS = -DPOLYLIB_BITS=128
52 libpolylib128_la_LIBADD = @LTLIBOBJS@
53 libpolylibgmp_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@
54 libpolylibgmp_la_SOURCES = $(sources)
55 libpolylibgmp_la_CPPFLAGS = -DGNUMP
56 libpolylibgmp_la_LIBADD = @LTLIBOBJS@
58 testlib_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
59 example_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
60 count_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
61 c2p_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
62 r2p_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
63 findv_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
64 disjoint_union_sep_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
65 disjoint_union_adj_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
66 ehrhart_quick_apx_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
67 ehrhart_lower_bound_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
68 ehrhart_upper_bound_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS)
71 EXTRA_LTLIBRARIES = libpolylib32.la libpolylib64.la libpolylib128.la \
72                     libpolylibgmp.la
74 multi_noinst_programs = $(foreach B,$(ALL_BITS), \
75         Zpolytest$(B)$(EXEEXT) \
76         polytest$(B)$(EXEEXT) \
77         verif_ehrhart$(B)$(EXEEXT) \
78         testCompressParms$(B)$(EXEEXT) \
81 noinst_PROGRAMS = \
82         testlib \
83         example \
84         count \
85         @multi_noinst_programs@
87 multi_bin_programs = $(foreach B,$(ALL_BITS), \
88         ehrhart_ranking$(B)$(EXEEXT) \
89         ehrhart_union$(B)$(EXEEXT) \
90         pp$(B)$(EXEEXT) \
91         testehrhart$(B)$(EXEEXT) \
94 bin_PROGRAMS = \
95         c2p \
96         r2p \
97         findv \
98         disjoint_union_sep \
99         disjoint_union_adj \
100         ehrhart_quick_apx \
101         ehrhart_upper_bound \
102         ehrhart_lower_bound \
103         @multi_bin_programs@
105 EXTRA_PROGRAMS = \
106         Zpolytest32 \
107         Zpolytest64 \
108         Zpolytestgmp \
109         ehrhart_ranking32 \
110         ehrhart_ranking64 \
111         ehrhart_rankinggmp \
112         ehrhart_union32 \
113         ehrhart_union64 \
114         ehrhart_uniongmp \
115         polytest32 \
116         polytest64 \
117         polytestgmp \
118         pp32 \
119         pp64 \
120         ppgmp \
121         testehrhart32 \
122         testehrhart64 \
123         testehrhartgmp \
124         testCompressParms32 \
125         testCompressParms64 \
126         testCompressParmsgmp \
127         verif_ehrhart32 \
128         verif_ehrhart64 \
129         verif_ehrhartgmp
131 LDADD = @polylib@
132 c2p_SOURCES = $(poly_src)/c2p.c
133 c2p_DEPENDENCIES = @polylib@
134 r2p_SOURCES = $(poly_src)/r2p.c
135 r2p_DEPENDENCIES = @polylib@
136 findv_SOURCES = $(poly_src)/findv.c
137 findv_DEPENDENCIES = @polylib@
138 disjoint_union_sep_SOURCES = $(poly_src)/disjoint_union_sep.c
139 disjoint_union_sep_DEPENDENCIES = @polylib@
140 disjoint_union_adj_SOURCES = $(poly_src)/disjoint_union_adj.c
141 disjoint_union_adj_DEPENDENCIES = @polylib@
142 ehrhart_quick_apx_SOURCES = $(poly_src)/ehrhart_quick_apx.c
143 ehrhart_quick_apx_DEPENDENCIES = @polylib@
144 ehrhart_upper_bound_SOURCES =  $(poly_src)/ehrhart_upper_bound.c
145 ehrhart_upper_bound_DEPENDENCIES = @polylib@
146 ehrhart_lower_bound_SOURCES =  $(poly_src)/ehrhart_lower_bound.c
147 ehrhart_lower_bound_DEPENDENCIES = @polylib@
148 testlib_SOURCES = $(poly_src)/testlib.c
149 testlib_DEPENDENCIES = @polylib@
150 example_SOURCES = $(poly_src)/example.c
151 example_DEPENDENCIES = @polylib@
152 count_SOURCES = source/count.c
153 count_DEPENDENCIES = @polylib@
154 Zpolytest32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
155 Zpolytest32_SOURCES = $(poly_src)/Zpolytest.c
156 Zpolytest32_LDADD = libpolylib32.la
157 Zpolytest64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
158 Zpolytest64_SOURCES = $(poly_src)/Zpolytest.c
159 Zpolytest64_LDADD = libpolylib64.la
160 Zpolytestgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
161 Zpolytestgmp_SOURCES = $(poly_src)/Zpolytest.c
162 Zpolytestgmp_LDADD = libpolylibgmp.la
163 ehrhart_ranking32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
164 ehrhart_ranking32_SOURCES = $(poly_src)/ehrhart_ranking.c
165 ehrhart_ranking32_LDADD = libpolylib32.la
166 ehrhart_ranking64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
167 ehrhart_ranking64_SOURCES = $(poly_src)/ehrhart_ranking.c
168 ehrhart_ranking64_LDADD = libpolylib64.la
169 ehrhart_rankinggmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
170 ehrhart_rankinggmp_SOURCES = $(poly_src)/ehrhart_ranking.c
171 ehrhart_rankinggmp_LDADD = libpolylibgmp.la
172 ehrhart_union32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
173 ehrhart_union32_SOURCES = $(poly_src)/ehrhart_union.c
174 ehrhart_union32_LDADD = libpolylib32.la
175 ehrhart_union64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
176 ehrhart_union64_SOURCES = $(poly_src)/ehrhart_union.c
177 ehrhart_union64_LDADD = libpolylib64.la
178 ehrhart_uniongmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
179 ehrhart_uniongmp_SOURCES = $(poly_src)/ehrhart_union.c
180 ehrhart_uniongmp_LDADD = libpolylibgmp.la
181 polytest32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
182 polytest32_SOURCES = $(poly_src)/polytest.c
183 polytest32_LDADD = libpolylib32.la
184 polytest64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
185 polytest64_SOURCES = $(poly_src)/polytest.c
186 polytest64_LDADD = libpolylib64.la
187 polytestgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
188 polytestgmp_SOURCES = $(poly_src)/polytest.c
189 polytestgmp_LDADD = libpolylibgmp.la
190 pp32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
191 pp32_SOURCES = $(poly_src)/pp.c
192 pp32_LDADD = libpolylib32.la
193 pp64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
194 pp64_SOURCES = $(poly_src)/pp.c
195 pp64_LDADD = libpolylib64.la
196 ppgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
197 ppgmp_SOURCES = $(poly_src)/pp.c
198 ppgmp_LDADD = libpolylibgmp.la
199 testehrhart32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
200 testehrhart32_SOURCES = $(poly_src)/testehrhart.c
201 testehrhart32_LDADD = libpolylib32.la
202 testehrhart64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
203 testehrhart64_SOURCES = $(poly_src)/testehrhart.c
204 testehrhart64_LDADD = libpolylib64.la
205 testehrhartgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
206 testehrhartgmp_SOURCES = $(poly_src)/testehrhart.c
207 testehrhartgmp_LDADD = libpolylibgmp.la
208 testCompressParms32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
209 testCompressParms32_SOURCES = $(poly_src)/testCompressParms.c
210 testCompressParms32_LDADD = libpolylib32.la
211 testCompressParms64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
212 testCompressParms64_SOURCES = $(poly_src)/testCompressParms.c
213 testCompressParms64_LDADD = libpolylib64.la
214 testCompressParmsgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
215 testCompressParmsgmp_SOURCES = $(poly_src)/testCompressParms.c
216 testCompressParmsgmp_LDADD = libpolylibgmp.la
217 verif_ehrhart32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS)
218 verif_ehrhart32_SOURCES = $(poly_src)/verif_ehrhart.c
219 verif_ehrhart32_LDADD = libpolylib32.la
220 verif_ehrhart64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS)
221 verif_ehrhart64_SOURCES = $(poly_src)/verif_ehrhart.c
222 verif_ehrhart64_LDADD = libpolylib64.la
223 verif_ehrhartgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS)
224 verif_ehrhartgmp_SOURCES = $(poly_src)/verif_ehrhart.c
225 verif_ehrhartgmp_LDADD = libpolylibgmp.la
227 check: tests
229 tests: all
230         (cd Test; $(MAKE) tests)
232 longtest: all
233         (cd Test; $(MAKE) long_tests)
235 # Make the 'javadoc' style documentation
236 document:
237         -mkdir doc
238         $(DOXYGEN) polylib.doxygen
240 dist-hook: document
241         rm -rf `find $(distdir)/doc -name CVS`
242         cp -r doc/codeDoc $(distdir)/doc
244 install-data-local:
245         @test -z "$(pkgconfig_libdir)" || $(mkdir_p) "$(DESTDIR)$(pkgconfig_libdir)"
246         $(INSTALL_DATA) $(pkgconfig_libfile) "$(DESTDIR)$(pkgconfig_libdir)/$(pkgconfig_libfile)"
248 uninstall-local:
249         rm -f "$(DESTDIR)$(pkgconfig_libdir)/$(pkgconfig_libfile)"