xref: /netbsd-src/external/mit/isl/dist/Makefile.am (revision 5971e316fdea024efff6be8f03536623db06833e)
1if HAVE_CLANG
2if HAVE_CXX11
3MAYBE_INTERFACE = interface
4FORCE:
5interface/extract_interface$(BUILD_EXEEXT): FORCE
6	$(MAKE) $(AM_MAKEFLAGS) -C interface extract_interface$(BUILD_EXEEXT)
7endif
8endif
9SUBDIRS = . $(MAYBE_INTERFACE) doc
10DIST_SUBDIRS = $(MAYBE_INTERFACE) doc
11
12ACLOCAL_AMFLAGS = -I m4
13AUTOMAKE_OPTIONS = nostdinc subdir-objects
14
15lib_LTLIBRARIES = libisl.la
16noinst_PROGRAMS = isl_test isl_polyhedron_sample isl_pip \
17	isl_polyhedron_minimize isl_polytope_scan \
18	isl_polyhedron_detect_equalities \
19	isl_polyhedron_remove_redundant_equalities isl_cat \
20	isl_closure isl_bound isl_schedule isl_codegen isl_test_int \
21	isl_flow isl_flow_cmp isl_schedule_cmp
22TESTS = isl_test codegen_test.sh pip_test.sh bound_test.sh isl_test_int \
23	flow_test.sh schedule_test.sh
24if HAVE_CPP_ISL_H
25  CPP_H = include/isl/cpp.h include/isl/typed_cpp.h
26if HAVE_CXX11
27  noinst_PROGRAMS += isl_test2 isl_test_cpp
28  TESTS += isl_test2 isl_test_cpp isl_test_cpp_failed.sh
29endif
30if HAVE_CXX17
31  noinst_PROGRAMS += isl_test_cpp17 isl_test_cpp17-checked
32  TESTS += isl_test_cpp17 isl_test_cpp17-checked
33endif
34endif
35if HAVE_CLANG
36if HAVE_CXX11
37  noinst_PROGRAMS += isl_test_cpp-checked isl_test_cpp-checked-conversion
38  TESTS += isl_test_cpp-checked isl_test_cpp-checked-conversion
39if HAVE_PYTHON
40  TESTS += isl_test_python.py
41  noinst_PYTHON = interface/isl.py
42  isl_test_python.py: interface/isl.py libisl.la
43endif
44endif
45endif
46TEST_EXTENSIONS = .py
47AM_TESTS_ENVIRONMENT = \
48	export PYTHONPATH=interface; \
49	export ISL_DYLD_LIBRARY_PATH=.libs; \
50	export LD_LIBRARY_PATH=".libs:$(LD_LIBRARY_PATH)";
51PY_LOG_COMPILER = $(PYTHON)
52
53if IMATH_FOR_MP
54
55MP_SRC = \
56	isl_imath.c \
57	isl_imath.h \
58	isl_int_imath.h \
59	imath_wrap/gmp_compat.h \
60	imath_wrap/imath.h \
61	imath_wrap/imrat.h \
62	imath_wrap/wrap.h \
63	imath_wrap/gmp_compat.c \
64	imath_wrap/imath.c \
65	imath_wrap/imrat.c
66
67noinst_PROGRAMS += isl_test_imath
68TESTS += isl_test_imath
69
70if SMALL_INT_OPT
71MP_SRC += isl_int_sioimath.h \
72	isl_int_sioimath.c \
73	isl_val_sioimath.c
74else
75MP_SRC += isl_val_imath.c
76endif
77
78MP_INCLUDE_H =
79endif
80
81if GMP_FOR_MP
82if NEED_GET_MEMORY_FUNCTIONS
83GET_MEMORY_FUNCTIONS=mp_get_memory_functions.c
84endif
85
86MP_SRC = \
87	$(GET_MEMORY_FUNCTIONS) \
88	isl_int_gmp.h \
89	isl_gmp.c \
90	isl_val_gmp.c
91
92MP_INCLUDE_H = include/isl/val_gmp.h
93endif
94
95includes = -I. -I$(srcdir) -I$(srcdir)/include -Iinclude/
96AM_CPPFLAGS = $(includes) @MP_CPPFLAGS@
97AM_CFLAGS = @WARNING_FLAGS@ @MP_CFLAGS@
98
99libisl_la_SOURCES = \
100	$(MP_SRC) \
101	isl_aff.c \
102	isl_aff_map.c \
103	isl_aff_private.h \
104	isl_affine_hull.c \
105	isl_arg.c \
106	isl_ast.c \
107	isl_ast_private.h \
108	isl_ast_build.c \
109	isl_ast_build_private.h \
110	isl_ast_build_expr.c \
111	isl_ast_build_expr.h \
112	isl_ast_codegen.c \
113	isl_ast_graft.c \
114	isl_ast_graft_private.h \
115	isl_basis_reduction.h \
116	basis_reduction_tab.c \
117	isl_bernstein.c \
118	isl_bernstein.h \
119	isl_blk.c \
120	isl_blk.h \
121	isl_bound.c \
122	isl_bound.h \
123	isl_box.c \
124	isl_coalesce.c \
125	isl_constraint.c \
126	isl_constraint_private.h \
127	isl_convex_hull.c \
128	isl_ctx.c \
129	isl_ctx_private.h \
130	isl_deprecated.c \
131	isl_dim_map.h \
132	isl_dim_map.c \
133	isl_equalities.c \
134	isl_equalities.h \
135	isl_factorization.c \
136	isl_factorization.h \
137	isl_farkas.c \
138	isl_ffs.c \
139	isl_flow.c \
140	isl_fold.c \
141	isl_hash.c \
142	isl_hash_private.h \
143	isl_id_to_ast_expr.c \
144	isl_id_to_id.c \
145	isl_id_to_pw_aff.c \
146	isl_ilp.c \
147	isl_ilp_private.h \
148	isl_input.c \
149	isl_int.h \
150	isl_list_private.h \
151	isl_local_private.h \
152	isl_local.h \
153	isl_local.c \
154	isl_local_space_private.h \
155	isl_local_space.c \
156	isl_lp.c \
157	isl_lp_private.h \
158	isl_map.c \
159	isl_map_list.c \
160	isl_map_simplify.c \
161	isl_map_subtract.c \
162	isl_map_private.h \
163	isl_map_to_basic_set.c \
164	isl_mat.c \
165	isl_mat_private.h \
166	isl_morph.c \
167	isl_morph.h \
168	isl_id.c \
169	isl_id_private.h \
170	isl_obj.c \
171	isl_options.c \
172	isl_options_private.h \
173	isl_output.c \
174	isl_output_private.h \
175	isl_point_private.h \
176	isl_point.c \
177	isl_polynomial_private.h \
178	isl_polynomial.c \
179	isl_printer_private.h \
180	isl_printer.c \
181	print.c \
182	isl_range.c \
183	isl_range.h \
184	isl_reordering.c \
185	isl_reordering.h \
186	isl_sample.h \
187	isl_sample.c \
188	isl_scan.c \
189	isl_scan.h \
190	isl_schedule.c \
191	isl_schedule_band.c \
192	isl_schedule_band.h \
193	isl_schedule_node.c \
194	isl_schedule_node_private.h \
195	isl_schedule_read.c \
196	isl_schedule_tree.c \
197	isl_schedule_tree.h \
198	isl_schedule_private.h \
199	isl_schedule_constraints.c \
200	isl_schedule_constraints.h \
201	isl_scheduler.c \
202	isl_scheduler.h \
203	isl_scheduler_clustering.c \
204	isl_scheduler_clustering.h \
205	isl_scheduler_scc.c \
206	isl_scheduler_scc.h \
207	isl_set_list.c \
208	isl_sort.c \
209	isl_sort.h \
210	isl_space.c \
211	isl_space_private.h \
212	isl_stream.c \
213	isl_stream_private.h \
214	isl_seq.c \
215	isl_seq.h \
216	isl_set_to_ast_graft_list.c \
217	isl_set_to_ast_graft_list.h \
218	isl_stride.c \
219	isl_tab.c \
220	isl_tab.h \
221	isl_tab_pip.c \
222	isl_tarjan.c \
223	isl_tarjan.h \
224	isl_transitive_closure.c \
225	isl_union_map.c \
226	isl_union_map_private.h \
227	isl_union_set_private.h \
228	isl_val.c \
229	isl_val_private.h \
230	isl_vec_private.h \
231	isl_vec.c \
232	isl_version.c \
233	isl_vertices_private.h \
234	isl_vertices.c \
235	isl_yaml.h
236libisl_la_LIBADD = @MP_LIBS@
237libisl_la_LDFLAGS = -version-info @versioninfo@ \
238	@MP_LDFLAGS@
239
240isl_test_LDFLAGS = @MP_LDFLAGS@
241isl_test_LDADD = libisl.la @MP_LIBS@
242
243isl_test2_SOURCES = \
244	isl_test2.cc \
245	include/isl/cpp.h
246isl_test2_LDFLAGS = @MP_LDFLAGS@
247isl_test2_LDADD = libisl.la @MP_LIBS@
248
249isl_test_int_LDFLAGS = @MP_LDFLAGS@
250isl_test_int_LDADD = libisl.la @MP_LIBS@
251
252if IMATH_FOR_MP
253isl_test_imath_LDFLAGS = @MP_LDFLAGS@
254isl_test_imath_LDADD = libisl.la @MP_LIBS@
255endif
256
257isl_polyhedron_sample_LDADD = libisl.la
258isl_polyhedron_sample_SOURCES = \
259	polyhedron_sample.c
260
261isl_pip_LDFLAGS = @MP_LDFLAGS@
262isl_pip_LDADD = libisl.la @MP_LIBS@
263isl_pip_SOURCES = \
264	pip.c
265
266isl_schedule_LDFLAGS = @MP_LDFLAGS@
267isl_schedule_LDADD = libisl.la @MP_LIBS@
268isl_schedule_SOURCES = \
269	schedule.c
270
271isl_schedule_cmp_LDFLAGS = @MP_LDFLAGS@
272isl_schedule_cmp_LDADD = libisl.la @MP_LIBS@
273isl_schedule_cmp_SOURCES = \
274	schedule_cmp.c
275
276isl_flow_LDFLAGS = @MP_LDFLAGS@
277isl_flow_LDADD = libisl.la @MP_LIBS@
278isl_flow_SOURCES = \
279	flow.c
280
281isl_flow_cmp_LDFLAGS = @MP_LDFLAGS@
282isl_flow_cmp_LDADD = libisl.la @MP_LIBS@
283isl_flow_cmp_SOURCES = \
284	flow_cmp.c
285
286isl_codegen_LDFLAGS = @MP_LDFLAGS@
287isl_codegen_LDADD = libisl.la @MP_LIBS@
288isl_codegen_SOURCES = \
289	codegen.c
290
291isl_bound_LDFLAGS = @MP_LDFLAGS@
292isl_bound_LDADD = libisl.la @MP_LIBS@
293isl_bound_SOURCES = \
294	bound.c
295
296isl_polyhedron_minimize_LDFLAGS = @MP_LDFLAGS@
297isl_polyhedron_minimize_LDADD = libisl.la @MP_LIBS@
298isl_polyhedron_minimize_SOURCES = \
299	polyhedron_minimize.c
300
301isl_polytope_scan_LDADD = libisl.la
302isl_polytope_scan_SOURCES = \
303	polytope_scan.c
304
305isl_polyhedron_detect_equalities_LDADD = libisl.la
306isl_polyhedron_detect_equalities_SOURCES = \
307	polyhedron_detect_equalities.c
308
309isl_polyhedron_remove_redundant_equalities_LDADD = libisl.la
310isl_polyhedron_remove_redundant_equalities_SOURCES = \
311	polyhedron_remove_redundant_equalities.c
312
313isl_cat_LDADD = libisl.la
314isl_cat_SOURCES = \
315	cat.c
316
317isl_closure_LDADD = libisl.la
318isl_closure_SOURCES = \
319	closure.c
320
321isl_test_cpp_CPPFLAGS = $(AM_CPPFLAGS) -UCOMPILE_ERROR
322isl_test_cpp_SOURCES = \
323	isl_test_cpp.cc \
324	include/isl/cpp.h
325isl_test_cpp_LDFLAGS = @MP_LDFLAGS@
326isl_test_cpp_LDADD = libisl.la @MP_LIBS@
327
328# This program is not meant to be compiled by default.
329# In fact it is meant not to be compilable.
330# It is identical to isl_test_cpp, except that it gets compiled
331# with the COMPILE_ERROR flag set.
332EXTRA_PROGRAMS = isl_test_cpp_failed
333isl_test_cpp_failed_CPPFLAGS = $(AM_CPPFLAGS) -DCOMPILE_ERROR
334isl_test_cpp_failed_SOURCES = \
335	isl_test_cpp.cc \
336	include/isl/cpp.h
337isl_test_cpp_failed_LDFLAGS = @MP_LDFLAGS@
338isl_test_cpp_failed_LDADD = libisl.la @MP_LIBS@
339
340isl_test_cpp17_SOURCES = \
341	isl_test_cpp17.cc \
342	include/isl/cpp.h
343isl_test_cpp17_LDFLAGS = @MP_LDFLAGS@
344isl_test_cpp17_LDADD = libisl.la @MP_LIBS@
345
346isl_test_cpp_checked_SOURCES = \
347	isl_test_cpp-checked.cc \
348	include/isl/cpp-checked.h
349isl_test_cpp_checked_LDFLAGS = @MP_LDFLAGS@
350isl_test_cpp_checked_LDADD = libisl.la @MP_LIBS@
351
352isl_test_cpp17_checked_SOURCES = \
353	isl_test_cpp17-checked.cc \
354	include/isl/cpp.h
355isl_test_cpp17_checked_LDFLAGS = @MP_LDFLAGS@
356isl_test_cpp17_checked_LDADD = libisl.la @MP_LIBS@
357
358isl_test_cpp_checked_conversion_SOURCES = \
359	isl_test_cpp-checked-conversion.cc \
360	include/isl/cpp-checked-conversion.h
361isl_test_cpp_checked_conversion_LDFLAGS = @MP_LDFLAGS@
362isl_test_cpp_checked_conversion_LDADD = libisl.la @MP_LIBS@
363
364# dummy library that captures the dependencies on all headers
365# that are relevant for the bindings
366noinst_LIBRARIES = libdep.a
367libdep_a_SOURCES = dep.c
368
369if HAVE_CLANG
370if HAVE_CXX11
371interface/isldlname.py: libisl.la
372	$(AM_V_GEN) $(GREP) dlname $< | $(SED) -e 's/dlname/isl_dlname/' > $@
373interface/isl.py: interface/extract_interface$(BUILD_EXEEXT) libdep.a \
374		python/isl.py.top interface/isldlname.py
375	(cat interface/isldlname.py $(srcdir)/python/isl.py.top && \
376		interface/extract_interface$(BUILD_EXEEXT) --language=python \
377			$(includes) $(srcdir)/all.h) \
378			> $@ || (rm $@ && false)
379
380include/isl/cpp.h: interface/extract_interface$(BUILD_EXEEXT) libdep.a \
381		cpp/cpp.h.top cpp/cpp.h.bot
382	$(MKDIR_P) "include/isl" && \
383	(cat $(srcdir)/cpp/cpp.h.top $(srcdir)/all.h && \
384		interface/extract_interface$(BUILD_EXEEXT) --language=cpp \
385			$(includes) $(srcdir)/all.h && \
386		cat $(srcdir)/cpp/cpp.h.bot) \
387			> $@ || (rm $@ && false)
388
389include/isl/cpp-checked.h: interface/extract_interface$(BUILD_EXEEXT) libdep.a \
390		cpp/cpp-checked.h.top cpp/cpp-checked.h.bot
391	$(MKDIR_P) "include/isl" && \
392	(cat $(srcdir)/cpp/cpp-checked.h.top $(srcdir)/all.h && \
393		interface/extract_interface$(BUILD_EXEEXT) \
394			--language=cpp-checked \
395			$(includes) $(srcdir)/all.h && \
396		cat $(srcdir)/cpp/cpp-checked.h.bot) \
397			> $@ || (rm $@ && false)
398
399include/isl/cpp-checked-conversion.h: \
400		interface/extract_interface$(BUILD_EXEEXT) \
401		libdep.a \
402		cpp/cpp-checked-conversion.h.top \
403		cpp/cpp-checked-conversion.h.bot
404	$(MKDIR_P) "include/isl" && \
405	(cat $(srcdir)/cpp/cpp-checked-conversion.h.top && \
406		interface/extract_interface$(BUILD_EXEEXT) \
407			--language=cpp-checked-conversion \
408			$(includes) $(srcdir)/all.h && \
409		cat $(srcdir)/cpp/cpp-checked-conversion.h.bot) \
410			> $@ || (rm $@ && false)
411
412include/isl/typed_cpp.h: interface/extract_interface$(BUILD_EXEEXT) \
413		libdep.a cpp/typed_cpp.h.top cpp/typed_cpp.h.bot
414	$(MKDIR_P) "include/isl" && \
415	(cat $(srcdir)/cpp/typed_cpp.h.top && \
416		interface/extract_interface$(BUILD_EXEEXT) \
417			--language=template-cpp \
418			$(includes) $(srcdir)/all.h && \
419		cat $(srcdir)/cpp/typed_cpp.h.bot) \
420			> $@ || (rm $@ && false)
421endif
422endif
423
424nodist_pkginclude_HEADERS = \
425	include/isl/stdint.h
426pkginclude_HEADERS = \
427	$(CPP_H) \
428	$(MP_INCLUDE_H) \
429	include/isl/aff.h \
430	include/isl/aff_type.h \
431	include/isl/arg.h \
432	include/isl/ast.h \
433	include/isl/ast_type.h \
434	include/isl/ast_build.h \
435	include/isl/constraint.h \
436	include/isl/ctx.h \
437	include/isl/fixed_box.h \
438	include/isl/flow.h \
439	include/isl/id.h \
440	include/isl/id_type.h \
441	include/isl/id_to_ast_expr.h \
442	include/isl/id_to_id.h \
443	include/isl/id_to_pw_aff.h \
444	include/isl/ilp.h \
445	include/isl/hash.h \
446	include/isl/hmap.h \
447	include/isl/hmap_templ.c \
448	include/isl/list.h \
449	include/isl/local_space.h \
450	include/isl/lp.h \
451	include/isl/mat.h \
452	include/isl/map.h \
453	include/isl/map_to_basic_set.h \
454	include/isl/map_type.h \
455	include/isl/maybe.h \
456	include/isl/maybe_ast_expr.h \
457	include/isl/maybe_basic_set.h \
458	include/isl/maybe_id.h \
459	include/isl/maybe_pw_aff.h \
460	include/isl/maybe_templ.h \
461	include/isl/multi.h \
462	include/isl/obj.h \
463	include/isl/options.h \
464	include/isl/point.h \
465	include/isl/polynomial.h \
466	include/isl/polynomial_type.h \
467	include/isl/printer.h \
468	include/isl/printer_type.h \
469	include/isl/schedule.h \
470	include/isl/schedule_node.h \
471	include/isl/schedule_type.h \
472	include/isl/set.h \
473	include/isl/set_type.h \
474	include/isl/space.h \
475	include/isl/space_type.h \
476	include/isl/stream.h \
477	include/isl/stride_info.h \
478	include/isl/union_map.h \
479	include/isl/union_map_type.h \
480	include/isl/union_set.h \
481	include/isl/union_set_type.h \
482	include/isl/val.h \
483	include/isl/val_type.h \
484	include/isl/vec.h \
485	include/isl/version.h \
486	include/isl/vertices.h
487
488if HAVE_CLANG
489if HAVE_CXX11
490    CPP_INTERFACES = \
491	include/isl/cpp.h \
492	include/isl/cpp-checked.h \
493	include/isl/cpp-checked-conversion.h \
494	include/isl/typed_cpp.h
495endif
496endif
497BUILT_SOURCES = gitversion.h $(CPP_INTERFACES)
498CLEANFILES = \
499	gitversion.h \
500	interface/isldlname.py \
501	interface/isl.py \
502	interface/isl.pyc \
503	interface/__pycache__/*.pyc \
504	$(CPP_INTERFACES)
505
506DISTCLEANFILES = \
507	isl-uninstalled.sh \
508	isl-uninstalled.pc \
509	isl.pc \
510	isl.pc.in \
511	include/isl/stdint.h
512
513EXTRA_DIST = \
514	LICENSE \
515	isl_config_post.h \
516	isl_aff_lex_templ.c \
517	isl_align_params_templ.c \
518	isl_align_params_bin_templ.c \
519	isl_ast_node_set_field_templ.c \
520	basis_reduction_templ.c \
521	isl_bind_domain_templ.c \
522	bset_to_bmap.c \
523	bset_from_bmap.c \
524	isl_check_named_params_templ.c \
525	check_parse_fail_test_templ.c \
526	check_reparse_templ.c \
527	check_reparse_test_templ.c \
528	check_single_reference_templ.c \
529	check_type_range_templ.c \
530	isl_copy_tuple_id_templ.c \
531	isl_domain_factor_templ.c \
532	isl_drop_unused_params_templ.c \
533	extract_key.c \
534	isl_from_range_templ.c \
535	isl_ilp_opt_fn_val_templ.c \
536	isl_ilp_opt_multi_val_templ.c \
537	isl_ilp_opt_val_templ.c \
538	has_single_reference_templ.c \
539	isl_insert_domain_templ.c \
540	isl_list_macro.h \
541	isl_list_templ.c \
542	isl_list_templ.h \
543	isl_list_read_templ.c \
544	isl_list_read_yaml_templ.c \
545	isl_map_bound_templ.c \
546	isl_map_lexopt_templ.c \
547	isl_maybe_ast_graft_list.h \
548	isl_maybe_map.h \
549	isl_multi_macro.h \
550	isl_multi_bind_templ.c \
551	isl_multi_explicit_domain.c \
552	isl_multi_pw_aff_explicit_domain.c \
553	isl_multi_union_pw_aff_explicit_domain.c \
554	isl_multi_no_explicit_domain.c \
555	isl_multi_no_domain_templ.c \
556	isl_multi_templ.c \
557	isl_multi_templ.h \
558	isl_multi_add_constant_templ.c \
559	isl_multi_align_set.c \
560	isl_multi_align_union_set.c \
561	isl_multi_apply_templ.c \
562	isl_multi_apply_explicit_domain_templ.c \
563	isl_multi_apply_no_explicit_domain_templ.c \
564	isl_multi_apply_set_explicit_domain_templ.c \
565	isl_multi_apply_set_no_explicit_domain_templ.c \
566	isl_multi_apply_union_set_explicit_domain_templ.c \
567	isl_multi_arith_templ.c \
568	isl_multi_bin_val_templ.c \
569	isl_multi_bind_domain_templ.c \
570	isl_multi_check_domain_templ.c \
571	isl_multi_cmp.c \
572	isl_multi_coalesce.c \
573	isl_multi_dim_id_templ.c \
574	isl_multi_dims.c \
575	isl_multi_domain_templ.c \
576	isl_multi_domain_reverse_templ.c \
577	isl_multi_floor.c \
578	isl_multi_from_base_templ.c \
579	isl_multi_from_tuple_templ.c \
580	isl_multi_gist.c \
581	isl_multi_hash.c \
582	isl_multi_insert_domain_templ.c \
583	isl_multi_intersect.c \
584	isl_multi_identity_templ.c \
585	isl_multi_locals_templ.c \
586	isl_multi_min_max_templ.c \
587	isl_multi_move_dims_templ.c \
588	isl_multi_nan_templ.c \
589	isl_multi_param_templ.c \
590	isl_multi_product_templ.c \
591	isl_multi_pw_aff_pullback_templ.c \
592	isl_multi_read_no_explicit_domain_templ.c \
593	isl_multi_splice_templ.c \
594	isl_multi_tuple_id_templ.c \
595	isl_multi_un_op_templ.c \
596	isl_multi_unbind_params_templ.c \
597	isl_multi_union_add_templ.c \
598	isl_multi_zero_templ.c \
599	isl_multi_zero_space_templ.c \
600	isl_opt_mpa_templ.c \
601	opt_type.h \
602	print_templ.c \
603	print_templ_yaml.c \
604	print_yaml_field_templ.c \
605	isl_power_templ.c \
606	isl_project_out_all_params_templ.c \
607	isl_project_out_param_templ.c \
608	isl_pw_macro.h \
609	isl_pw_templ.c \
610	isl_pw_templ.h \
611	isl_pw_add_constant_templ.c \
612	isl_pw_add_constant_multi_val_templ.c \
613	isl_pw_add_constant_val_templ.c \
614	isl_pw_add_disjoint_templ.c \
615	isl_pw_bind_domain_templ.c \
616	isl_pw_domain_reverse_templ.c \
617	isl_pw_eval.c \
618	isl_pw_fix_templ.c \
619	isl_pw_from_range_templ.c \
620	isl_pw_hash.c \
621	isl_pw_insert_dims_templ.c \
622	isl_pw_insert_domain_templ.c \
623	isl_pw_lift_templ.c \
624	isl_pw_locals_templ.c \
625	isl_pw_morph_templ.c \
626	isl_pw_move_dims_templ.c \
627	isl_pw_neg_templ.c \
628	isl_pw_opt_templ.c \
629	isl_pw_print_templ.c \
630	isl_pw_pullback_templ.c \
631	isl_pw_range_tuple_id_templ.c \
632	isl_pw_scale_templ.c \
633	isl_pw_split_dims_templ.c \
634	isl_pw_sub_templ.c \
635	isl_pw_un_op_templ.c \
636	isl_pw_union_opt.c \
637	isl_read_from_str_templ.c \
638	read_in_string_templ.c \
639	set_to_map.c \
640	set_from_map.c \
641	set_list_from_map_list_inl.c \
642	isl_stream_read_pw_with_params_templ.c \
643	isl_stream_read_with_params_templ.c \
644	isl_tab_lexopt_templ.c \
645	isl_test_list_templ.c \
646	isl_test_plain_equal_templ.c \
647	isl_type_check_equal_space_templ.c \
648	isl_type_check_match_range_multi_val.c \
649	isl_type_has_equal_space_bin_templ.c \
650	isl_type_has_equal_space_templ.c \
651	isl_type_has_space_templ.c \
652	isl_unbind_params_templ.c \
653	uset_to_umap.c \
654	uset_from_umap.c \
655	isl_union_macro.h \
656	isl_union_templ.c \
657	isl_union_single.c \
658	isl_union_multi.c \
659	isl_union_domain_reverse_templ.c \
660	isl_union_eval.c \
661	isl_union_locals_templ.c \
662	isl_union_map_lex_templ.c \
663	isl_union_neg.c \
664	isl_union_print_templ.c \
665	isl_union_pw_templ.c \
666	isl_union_sub_templ.c \
667	libisl-gdb.py \
668	doc/CodingStyle \
669	doc/SubmittingPatches \
670	doc/implementation.tex \
671	doc/isl.bib \
672	doc/mypod2latex \
673	doc/manual.tex \
674	doc/reading.tex \
675	doc/user.pod \
676	imath/gmp_compat.c \
677	imath/gmp_compat.h \
678	imath/imath.c \
679	imath/imath.h \
680	imath/imrat.c \
681	imath/imrat.h \
682	all.h \
683	cpp \
684	python \
685	isl_test_cpp-generic.cc \
686	isl_test_cpp_failed.sh \
687	isl_test_cpp17-generic.cc \
688	isl_test_python.py \
689	test_inputs
690
691dist-hook:
692	echo @GIT_HEAD_VERSION@ > $(distdir)/GIT_HEAD_ID
693	(cd doc; make manual.pdf)
694	cp doc/manual.pdf $(distdir)/doc/
695
696pkgconfigdir=$(pkgconfig_libdir)
697pkgconfig_DATA = $(pkgconfig_libfile)
698
699gitversion.h: @GIT_HEAD@
700	$(AM_V_GEN)echo '#define GIT_HEAD_ID "'@GIT_HEAD_VERSION@'"' > $@
701
702install-data-local: $(srcdir)/libisl-gdb.py
703	@libisl=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
704		 $(builddir)/libisl.la`; \
705	case $$libisl in \
706	'') echo Cannot find isl library name. GDB bindings not installed.;; \
707	*) echo $(INSTALL_DATA) $(srcdir)/libisl-gdb.py \
708		$(DESTDIR)$(libdir)/$$libisl-gdb.py; \
709	test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"; \
710	$(INSTALL_DATA) $(srcdir)/libisl-gdb.py \
711	    $(DESTDIR)$(libdir)/$$libisl-gdb.py; \
712	esac
713
714uninstall-local:
715	@libisl=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
716		 $(builddir)/libisl.la`; \
717	if test -n "$${libisl}"; then \
718		rm -f $(DESTDIR)$(libdir)/$$libisl-gdb.py; \
719	fi
720