add rudimentary argument parsing facility
[platform/upstream/isl.git] / Makefile.am
1 if BUNDLED_PIPLIB
2 MAYBE_PIPLIB = piplib
3 endif
4
5 SUBDIRS = $(MAYBE_PIPLIB) . doc
6 DIST_SUBDIRS = $(MAYBE_PIPLIB) doc
7
8 ACLOCAL_AMFLAGS = -I m4
9
10 lib_LTLIBRARIES = libisl.la
11 noinst_PROGRAMS = isl_test isl_polyhedron_sample isl_pip \
12         isl_polyhedron_minimize isl_polytope_scan \
13         isl_polyhedron_detect_equalities
14 TESTS = isl_test
15
16 if HAVE_POLYLIB
17 ISL_POLYLIB = \
18         isl_map_polylib.c
19 endif
20
21 if HAVE_PIPLIB
22 ISL_PIPLIB = \
23         isl_lp_piplib.c \
24         isl_map_piplib.c \
25         isl_sample_piplib.c \
26         isl_sample_piplib.h \
27         isl_piplib.c
28 else
29 ISL_PIPLIB = \
30         isl_lp_no_piplib.c \
31         isl_map_no_piplib.c \
32         isl_sample_no_piplib.c
33 endif
34 if BUNDLED_PIPLIB
35 PIPLIB_LA = $(top_builddir)/piplib/libpiplibMP.la
36 endif
37
38 if NEED_GET_MEMORY_FUNCTIONS
39 GET_MEMORY_FUNCTIONS=mp_get_memory_functions.c
40 endif
41
42 libisl_la_SOURCES = \
43         $(ISL_PIPLIB) \
44         $(ISL_POLYLIB) \
45         $(GET_MEMORY_FUNCTIONS) \
46         isl_affine_hull.c \
47         isl_arg.c \
48         isl_basis_reduction.h \
49         basis_reduction_tab.c \
50         isl_blk.c \
51         isl_coalesce.c \
52         isl_constraint.c \
53         isl_convex_hull.c \
54         isl_ctx.c \
55         isl_dim.c \
56         isl_div.c \
57         isl_equalities.c \
58         isl_equalities.h \
59         isl_gmp.c \
60         isl_hash.c \
61         isl_ilp.c \
62         isl_input.c \
63         isl_input_omega.c \
64         isl_input_omega.h \
65         isl_list.c \
66         isl_lp.c \
67         isl_lp_piplib.h \
68         isl_map.c \
69         isl_map_simplify.c \
70         isl_map_private.h \
71         isl_map_piplib.h \
72         isl_mat.c \
73         isl_name.c \
74         isl_name.h \
75         isl_output.c \
76         isl_piplib.h \
77         isl_sample.h \
78         isl_sample.c \
79         isl_scan.c \
80         isl_scan.h \
81         isl_stream.c \
82         isl_stream.h \
83         isl_seq.c \
84         isl_tab.c \
85         isl_tab.h \
86         isl_tab_pip.c \
87         isl_vec.c
88 EXTRA_libisl_la_SOURCES = \
89         isl_lp_piplib.c \
90         isl_lp_no_piplib.c \
91         isl_map_piplib.c \
92         isl_map_no_piplib.c \
93         isl_map_polylib.c \
94         isl_sample_no_piplib.c \
95         isl_sample_piplib.c \
96         isl_sample_piplib.h \
97         isl_piplib.c
98 libisl_la_LIBADD = $(PIPLIB_LA) @PIPLIB_LIBS@ @POLYLIB_LIBS@ -lgmp
99 libisl_la_LDFLAGS = -version-info @versioninfo@ \
100         @PIPLIB_LDFLAGS@ @POLYLIB_LDFLAGS@ @GMP_LDFLAGS@
101 libisl_la_CPPFLAGS = -I$(srcdir)/include -Iinclude/ \
102         @PIPLIB_CPPFLAGS@ @POLYLIB_CPPFLAGS@ \
103         @GMP_CPPFLAGS@
104
105 isl_test_CPPFLAGS = -I$(srcdir)/include -Iinclude/ @GMP_CPPFLAGS@
106 isl_test_LDADD = libisl.la
107
108 isl_polyhedron_sample_CPPFLAGS = -I$(srcdir)/include -Iinclude/ \
109         @GMP_CPPFLAGS@
110 isl_polyhedron_sample_LDADD = libisl.la
111 isl_polyhedron_sample_SOURCES = \
112         polyhedron_sample.c
113
114 isl_pip_CPPFLAGS = -I$(srcdir)/include -Iinclude/ \
115         @GMP_CPPFLAGS@
116 isl_pip_LDADD = libisl.la
117 isl_pip_SOURCES = \
118         pip.c
119
120 isl_polyhedron_minimize_CPPFLAGS = -I$(srcdir)/include -Iinclude/ \
121         @GMP_CPPFLAGS@
122 isl_polyhedron_minimize_LDADD = libisl.la
123 isl_polyhedron_minimize_SOURCES = \
124         polyhedron_minimize.c
125
126 isl_polytope_scan_CPPFLAGS = -I$(srcdir)/include -Iinclude/ \
127         @GMP_CPPFLAGS@
128 isl_polytope_scan_LDADD = libisl.la
129 isl_polytope_scan_SOURCES = \
130         polytope_scan.c
131
132 isl_polyhedron_detect_equalities_CPPFLAGS = -I$(srcdir)/include -Iinclude/ \
133         @GMP_CPPFLAGS@
134 isl_polyhedron_detect_equalities_LDADD = libisl.la
135 isl_polyhedron_detect_equalities_SOURCES = \
136         polyhedron_detect_equalities.c
137
138 nodist_pkginclude_HEADERS = \
139         include/isl_config.h \
140         include/isl_stdint.h
141 pkginclude_HEADERS = \
142         include/isl_arg.h \
143         include/isl_blk.h \
144         include/isl_constraint.h \
145         include/isl_ctx.h \
146         include/isl_dim.h \
147         include/isl_div.h \
148         include/isl_ilp.h \
149         include/isl_int.h \
150         include/isl_hash.h \
151         include/isl_list.h \
152         include/isl_lp.h \
153         include/isl_mat.h \
154         include/isl_map.h \
155         include/isl_map_polylib.h \
156         include/isl_polylib.h \
157         include/isl_seq.h \
158         include/isl_set.h \
159         include/isl_set_polylib.h \
160         include/isl_vec.h
161
162 EXTRA_DIST = \
163         basis_reduction_templ.c \
164         doc/mypod2latex \
165         doc/manual.tex \
166         doc/user.pod \
167         test_inputs
168
169 dist-hook:
170         (cd doc; make manual.pdf)
171         cp doc/manual.pdf $(distdir)/doc/
172
173 pkgconfigdir=$(pkgconfig_libdir)
174 pkgconfig_DATA = $(pkgconfig_libfile)