1SUBDIRS = include Test 2 3EXTRA_CPPFLAGS = -I$(srcdir)/include -Iinclude @CPPFLAGS@ 4 5ACLOCAL_AMFLAGS = -I m4 6 7poly_src = $(srcdir)/applications 8poly_arith = $(srcdir)/source/arith 9 10CFILES= \ 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 32 33sources = $(CFILES) \ 34 $(poly_arith)/assert.h \ 35 $(poly_arith)/arithmetique.h \ 36 $(poly_arith)/arithmetic_errors.h 37 38EXTRA_DIST = doc source/oldpolytest.c INSTALL COPYING 39 40lib_LTLIBRARIES = @polylibs@ 41libpolylib32_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@ 42libpolylib32_la_SOURCES = $(sources) 43libpolylib32_la_CPPFLAGS = -DPOLYLIB_BITS=32 $(EXTRA_CPPFLAGS) 44libpolylib32_la_LIBADD = @LTLIBOBJS@ 45libpolylib64_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@ 46libpolylib64_la_SOURCES = $(sources) 47libpolylib64_la_CPPFLAGS = -DPOLYLIB_BITS=64 $(EXTRA_CPPFLAGS) 48libpolylib64_la_LIBADD = @LTLIBOBJS@ 49libpolylib128_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@ 50libpolylib128_la_SOURCES = $(sources) 51libpolylib128_la_CPPFLAGS = -DPOLYLIB_BITS=128 $(EXTRA_CPPFLAGS) 52libpolylib128_la_LIBADD = @LTLIBOBJS@ 53libpolylibgmp_la_LDFLAGS = -rpath $(libdir) -version-info @versioninfo@ 54libpolylibgmp_la_SOURCES = $(sources) 55libpolylibgmp_la_CPPFLAGS = -DGNUMP $(EXTRA_CPPFLAGS) 56libpolylibgmp_la_LIBADD = @LTLIBOBJS@ 57 58testlib_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 59example_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 60count_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 61c2p_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 62r2p_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 63findv_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 64disjoint_union_sep_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 65disjoint_union_adj_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 66ehrhart_quick_apx_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 67ehrhart_lower_bound_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 68ehrhart_upper_bound_CPPFLAGS = $(libpolylib@BITS@_la_CPPFLAGS) 69 70 71EXTRA_LTLIBRARIES = libpolylib32.la libpolylib64.la libpolylib128.la \ 72 libpolylibgmp.la 73 74# not using foreach GNU make extension 75no_inst_programs_32=Zpolytest32$(EXEEXT) polytest32$(EXEEXT) verif_ehrhart32$(EXEEXT) testCompressParms32$(EXEEXT) 76no_inst_programs_64=Zpolytest64$(EXEEXT) polytest64$(EXEEXT) verif_ehrhart64$(EXEEXT) testCompressParms64$(EXEEXT) 77no_inst_programs_gmp=Zpolytestgmp$(EXEEXT) polytestgmp$(EXEEXT) verif_ehrhartgmp$(EXEEXT) testCompressParmsgmp$(EXEEXT) 78 79noinst_PROGRAMS = \ 80 testlib \ 81 example \ 82 count \ 83 @multi_noinst_programs@ 84 85multi_bin_programs_32=ehrhart_ranking32$(EXEEXT) ehrhart_union32$(EXEEXT) pp32$(EXEEXT) testehrhart32$(EXEEXT) 86multi_bin_programs_64=ehrhart_ranking64$(EXEEXT) ehrhart_union64$(EXEEXT) pp64$(EXEEXT) testehrhart64$(EXEEXT) 87multi_bin_programs_gmp=ehrhart_rankinggmp$(EXEEXT) ehrhart_uniongmp$(EXEEXT) ppgmp$(EXEEXT) testehrhartgmp$(EXEEXT) 88 89bin_PROGRAMS = \ 90 c2p \ 91 r2p \ 92 findv \ 93 disjoint_union_sep \ 94 disjoint_union_adj \ 95 ehrhart_quick_apx \ 96 ehrhart_upper_bound \ 97 ehrhart_lower_bound \ 98 @multi_bin_programs@ 99 100EXTRA_PROGRAMS = $(no_inst_programs_32) $(no_inst_programs_64) $(no_inst_programs_gmp) \ 101 $(multi_bin_programs_32) $(multi_bin_programs_64) $(multi_bin_programs_gmp) 102 103 104 105LDADD = @polylib@ 106c2p_SOURCES = $(poly_src)/c2p.c 107c2p_DEPENDENCIES = @polylib@ 108r2p_SOURCES = $(poly_src)/r2p.c 109r2p_DEPENDENCIES = @polylib@ 110findv_SOURCES = $(poly_src)/findv.c 111findv_DEPENDENCIES = @polylib@ 112disjoint_union_sep_SOURCES = $(poly_src)/disjoint_union_sep.c 113disjoint_union_sep_DEPENDENCIES = @polylib@ 114disjoint_union_adj_SOURCES = $(poly_src)/disjoint_union_adj.c 115disjoint_union_adj_DEPENDENCIES = @polylib@ 116ehrhart_quick_apx_SOURCES = $(poly_src)/ehrhart_quick_apx.c 117ehrhart_quick_apx_DEPENDENCIES = @polylib@ 118ehrhart_upper_bound_SOURCES = $(poly_src)/ehrhart_upper_bound.c 119ehrhart_upper_bound_DEPENDENCIES = @polylib@ 120ehrhart_lower_bound_SOURCES = $(poly_src)/ehrhart_lower_bound.c 121ehrhart_lower_bound_DEPENDENCIES = @polylib@ 122testlib_SOURCES = $(poly_src)/testlib.c 123testlib_DEPENDENCIES = @polylib@ 124example_SOURCES = $(poly_src)/example.c 125example_DEPENDENCIES = @polylib@ 126count_SOURCES = source/count.c 127count_DEPENDENCIES = @polylib@ 128Zpolytest32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 129Zpolytest32_SOURCES = $(poly_src)/Zpolytest.c 130Zpolytest32_LDADD = libpolylib32.la 131Zpolytest64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 132Zpolytest64_SOURCES = $(poly_src)/Zpolytest.c 133Zpolytest64_LDADD = libpolylib64.la 134Zpolytestgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 135Zpolytestgmp_SOURCES = $(poly_src)/Zpolytest.c 136Zpolytestgmp_LDADD = libpolylibgmp.la 137ehrhart_ranking32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 138ehrhart_ranking32_SOURCES = $(poly_src)/ehrhart_ranking.c 139ehrhart_ranking32_LDADD = libpolylib32.la 140ehrhart_ranking64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 141ehrhart_ranking64_SOURCES = $(poly_src)/ehrhart_ranking.c 142ehrhart_ranking64_LDADD = libpolylib64.la 143ehrhart_rankinggmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 144ehrhart_rankinggmp_SOURCES = $(poly_src)/ehrhart_ranking.c 145ehrhart_rankinggmp_LDADD = libpolylibgmp.la 146ehrhart_union32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 147ehrhart_union32_SOURCES = $(poly_src)/ehrhart_union.c 148ehrhart_union32_LDADD = libpolylib32.la 149ehrhart_union64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 150ehrhart_union64_SOURCES = $(poly_src)/ehrhart_union.c 151ehrhart_union64_LDADD = libpolylib64.la 152ehrhart_uniongmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 153ehrhart_uniongmp_SOURCES = $(poly_src)/ehrhart_union.c 154ehrhart_uniongmp_LDADD = libpolylibgmp.la 155polytest32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 156polytest32_SOURCES = $(poly_src)/polytest.c 157polytest32_LDADD = libpolylib32.la 158polytest64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 159polytest64_SOURCES = $(poly_src)/polytest.c 160polytest64_LDADD = libpolylib64.la 161polytestgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 162polytestgmp_SOURCES = $(poly_src)/polytest.c 163polytestgmp_LDADD = libpolylibgmp.la 164pp32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 165pp32_SOURCES = $(poly_src)/pp.c 166pp32_LDADD = libpolylib32.la 167pp64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 168pp64_SOURCES = $(poly_src)/pp.c 169pp64_LDADD = libpolylib64.la 170ppgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 171ppgmp_SOURCES = $(poly_src)/pp.c 172ppgmp_LDADD = libpolylibgmp.la 173testehrhart32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 174testehrhart32_SOURCES = $(poly_src)/testehrhart.c 175testehrhart32_LDADD = libpolylib32.la 176testehrhart64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 177testehrhart64_SOURCES = $(poly_src)/testehrhart.c 178testehrhart64_LDADD = libpolylib64.la 179testehrhartgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 180testehrhartgmp_SOURCES = $(poly_src)/testehrhart.c 181testehrhartgmp_LDADD = libpolylibgmp.la 182testCompressParms32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 183testCompressParms32_SOURCES = $(poly_src)/testCompressParms.c 184testCompressParms32_LDADD = libpolylib32.la 185testCompressParms64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 186testCompressParms64_SOURCES = $(poly_src)/testCompressParms.c 187testCompressParms64_LDADD = libpolylib64.la 188testCompressParmsgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 189testCompressParmsgmp_SOURCES = $(poly_src)/testCompressParms.c 190testCompressParmsgmp_LDADD = libpolylibgmp.la 191verif_ehrhart32_CPPFLAGS = $(libpolylib32_la_CPPFLAGS) 192verif_ehrhart32_SOURCES = $(poly_src)/verif_ehrhart.c 193verif_ehrhart32_LDADD = libpolylib32.la 194verif_ehrhart64_CPPFLAGS = $(libpolylib64_la_CPPFLAGS) 195verif_ehrhart64_SOURCES = $(poly_src)/verif_ehrhart.c 196verif_ehrhart64_LDADD = libpolylib64.la 197verif_ehrhartgmp_CPPFLAGS = $(libpolylibgmp_la_CPPFLAGS) 198verif_ehrhartgmp_SOURCES = $(poly_src)/verif_ehrhart.c 199verif_ehrhartgmp_LDADD = libpolylibgmp.la 200 201check: tests 202 203tests: all 204 (cd Test; $(MAKE) tests) 205 206longtest: all 207 (cd Test; $(MAKE) long_tests) 208 209# Make the 'javadoc' style documentation 210document: 211 -mkdir doc 212 $(DOXYGEN) polylib.doxygen 213 214dist-hook: document 215 rm -rf `find $(distdir)/doc -name CVS` 216 217clean-local: 218 rm -rf doc 219distclean-local: 220 rm -f polylib*.pc polylib*-uninstalled.pc polylib*-uninstalled.sh polylib*.pc.in 221 222install-data-local: 223 @test -z "$(pkgconfig_libdir)" || $(mkdir_p) "$(DESTDIR)$(pkgconfig_libdir)" 224 $(INSTALL_DATA) $(pkgconfig_libfile) "$(DESTDIR)$(pkgconfig_libdir)/$(pkgconfig_libfile)" 225 226uninstall-local: 227 rm -f "$(DESTDIR)$(pkgconfig_libdir)/$(pkgconfig_libfile)" 228