if HAVE_CLANG
if HAVE_CXX11
MAYBE_INTERFACE = interface
FORCE:
interface/extract_interface$(BUILD_EXEEXT): FORCE
	$(MAKE) $(AM_MAKEFLAGS) -C interface extract_interface$(BUILD_EXEEXT)
endif
endif
SUBDIRS = . $(MAYBE_INTERFACE) doc
DIST_SUBDIRS = $(MAYBE_INTERFACE) doc

ACLOCAL_AMFLAGS = -I m4
AUTOMAKE_OPTIONS = nostdinc subdir-objects

lib_LTLIBRARIES = libisl.la
noinst_PROGRAMS = isl_test isl_polyhedron_sample isl_pip \
	isl_polyhedron_minimize isl_polytope_scan \
	isl_polyhedron_detect_equalities isl_cat \
	isl_closure isl_bound isl_schedule isl_codegen isl_test_int \
	isl_flow isl_flow_cmp isl_schedule_cmp
TESTS = isl_test codegen_test.sh pip_test.sh bound_test.sh isl_test_int \
	flow_test.sh schedule_test.sh
if HAVE_CPP_ISL_H
  CPP_H = include/isl/cpp.h
if HAVE_CXX11
  noinst_PROGRAMS += isl_test_cpp
  TESTS += isl_test_cpp
endif
endif
if HAVE_CLANG
if HAVE_CXX11
  noinst_PROGRAMS += isl_test_cpp-checked isl_test_cpp-checked-conversion
  TESTS += isl_test_cpp-checked isl_test_cpp-checked-conversion
if HAVE_PYTHON
  TESTS += isl_test_python.py
  noinst_PYTHON = interface/isl.py
  isl_test_python.py: interface/isl.py libisl.la
endif
endif
endif
TEST_EXTENSIONS = .py
AM_TESTS_ENVIRONMENT = \
	export PYTHONPATH=interface; \
	export ISL_DYLD_LIBRARY_PATH=.libs; \
	export LD_LIBRARY_PATH=".libs:$(LD_LIBRARY_PATH)";
PY_LOG_COMPILER = $(PYTHON)

if IMATH_FOR_MP

MP_SRC = \
	isl_imath.c \
	isl_imath.h \
	isl_int_imath.h \
	imath_wrap/gmp_compat.h \
	imath_wrap/imath.h \
	imath_wrap/imrat.h \
	imath_wrap/wrap.h \
	imath_wrap/gmp_compat.c \
	imath_wrap/imath.c \
	imath_wrap/imrat.c

noinst_PROGRAMS += isl_test_imath
TESTS += isl_test_imath

if SMALL_INT_OPT
MP_SRC += isl_int_sioimath.h \
	isl_int_sioimath.c \
	isl_val_sioimath.c
else
MP_SRC += isl_val_imath.c
endif

MP_INCLUDE_H =
endif

if GMP_FOR_MP
if NEED_GET_MEMORY_FUNCTIONS
GET_MEMORY_FUNCTIONS=mp_get_memory_functions.c
endif

MP_SRC = \
	$(GET_MEMORY_FUNCTIONS) \
	isl_int_gmp.h \
	isl_gmp.c \
	isl_val_gmp.c

MP_INCLUDE_H = include/isl/val_gmp.h
endif

includes = -I. -I$(srcdir) -I$(srcdir)/include -Iinclude/
AM_CPPFLAGS = $(includes) @MP_CPPFLAGS@
AM_CFLAGS = @WARNING_FLAGS@ @MP_CFLAGS@

libisl_la_SOURCES = \
	$(MP_SRC) \
	isl_aff.c \
	isl_aff_map.c \
	isl_aff_private.h \
	isl_affine_hull.c \
	isl_arg.c \
	isl_ast.c \
	isl_ast_private.h \
	isl_ast_build.c \
	isl_ast_build_private.h \
	isl_ast_build_expr.c \
	isl_ast_build_expr.h \
	isl_ast_codegen.c \
	isl_ast_graft.c \
	isl_ast_graft_private.h \
	isl_basis_reduction.h \
	basis_reduction_tab.c \
	isl_bernstein.c \
	isl_bernstein.h \
	isl_blk.c \
	isl_blk.h \
	isl_bound.c \
	isl_bound.h \
	isl_box.c \
	isl_coalesce.c \
	isl_constraint.c \
	isl_constraint_private.h \
	isl_convex_hull.c \
	isl_ctx.c \
	isl_ctx_private.h \
	isl_deprecated.c \
	isl_dim_map.h \
	isl_dim_map.c \
	isl_equalities.c \
	isl_equalities.h \
	isl_factorization.c \
	isl_factorization.h \
	isl_farkas.c \
	isl_ffs.c \
	isl_flow.c \
	isl_fold.c \
	isl_hash.c \
	isl_id_to_ast_expr.c \
	isl_id_to_id.c \
	isl_id_to_pw_aff.c \
	isl_ilp.c \
	isl_ilp_private.h \
	isl_input.c \
	isl_int.h \
	isl_list_private.h \
	isl_local_private.h \
	isl_local.h \
	isl_local.c \
	isl_local_space_private.h \
	isl_local_space.c \
	isl_lp.c \
	isl_lp_private.h \
	isl_map.c \
	isl_map_list.c \
	isl_map_simplify.c \
	isl_map_subtract.c \
	isl_map_private.h \
	isl_map_to_basic_set.c \
	isl_mat.c \
	isl_mat_private.h \
	isl_morph.c \
	isl_morph.h \
	isl_id.c \
	isl_id_private.h \
	isl_obj.c \
	isl_options.c \
	isl_options_private.h \
	isl_output.c \
	isl_output_private.h \
	isl_point_private.h \
	isl_point.c \
	isl_polynomial_private.h \
	isl_polynomial.c \
	isl_printer_private.h \
	isl_printer.c \
	print.c \
	isl_range.c \
	isl_range.h \
	isl_reordering.c \
	isl_reordering.h \
	isl_sample.h \
	isl_sample.c \
	isl_scan.c \
	isl_scan.h \
	isl_schedule.c \
	isl_schedule_band.c \
	isl_schedule_band.h \
	isl_schedule_node.c \
	isl_schedule_node_private.h \
	isl_schedule_read.c \
	isl_schedule_tree.c \
	isl_schedule_tree.h \
	isl_schedule_private.h \
	isl_schedule_constraints.c \
	isl_schedule_constraints.h \
	isl_scheduler.c \
	isl_set_list.c \
	isl_sort.c \
	isl_sort.h \
	isl_space.c \
	isl_space_private.h \
	isl_stream.c \
	isl_stream_private.h \
	isl_seq.c \
	isl_seq.h \
	isl_set_to_ast_graft_list.c \
	isl_set_to_ast_graft_list.h \
	isl_stride.c \
	isl_tab.c \
	isl_tab.h \
	isl_tab_pip.c \
	isl_tarjan.c \
	isl_tarjan.h \
	isl_transitive_closure.c \
	isl_union_map.c \
	isl_union_map_private.h \
	isl_union_set_private.h \
	isl_val.c \
	isl_val_private.h \
	isl_vec_private.h \
	isl_vec.c \
	isl_version.c \
	isl_vertices_private.h \
	isl_vertices.c \
	isl_yaml.h
libisl_la_LIBADD = @MP_LIBS@
libisl_la_LDFLAGS = -version-info @versioninfo@ \
	@MP_LDFLAGS@

isl_test_LDFLAGS = @MP_LDFLAGS@
isl_test_LDADD = libisl.la @MP_LIBS@

isl_test_int_LDFLAGS = @MP_LDFLAGS@
isl_test_int_LDADD = libisl.la @MP_LIBS@

if IMATH_FOR_MP
isl_test_imath_LDFLAGS = @MP_LDFLAGS@
isl_test_imath_LDADD = libisl.la @MP_LIBS@
endif

isl_polyhedron_sample_LDADD = libisl.la
isl_polyhedron_sample_SOURCES = \
	polyhedron_sample.c

isl_pip_LDFLAGS = @MP_LDFLAGS@
isl_pip_LDADD = libisl.la @MP_LIBS@
isl_pip_SOURCES = \
	pip.c

isl_schedule_LDFLAGS = @MP_LDFLAGS@
isl_schedule_LDADD = libisl.la @MP_LIBS@
isl_schedule_SOURCES = \
	schedule.c

isl_schedule_cmp_LDFLAGS = @MP_LDFLAGS@
isl_schedule_cmp_LDADD = libisl.la @MP_LIBS@
isl_schedule_cmp_SOURCES = \
	schedule_cmp.c

isl_flow_LDFLAGS = @MP_LDFLAGS@
isl_flow_LDADD = libisl.la @MP_LIBS@
isl_flow_SOURCES = \
	flow.c

isl_flow_cmp_LDFLAGS = @MP_LDFLAGS@
isl_flow_cmp_LDADD = libisl.la @MP_LIBS@
isl_flow_cmp_SOURCES = \
	flow_cmp.c

isl_codegen_LDFLAGS = @MP_LDFLAGS@
isl_codegen_LDADD = libisl.la @MP_LIBS@
isl_codegen_SOURCES = \
	codegen.c

isl_bound_LDFLAGS = @MP_LDFLAGS@
isl_bound_LDADD = libisl.la @MP_LIBS@
isl_bound_SOURCES = \
	bound.c

isl_polyhedron_minimize_LDFLAGS = @MP_LDFLAGS@
isl_polyhedron_minimize_LDADD = libisl.la @MP_LIBS@
isl_polyhedron_minimize_SOURCES = \
	polyhedron_minimize.c

isl_polytope_scan_LDADD = libisl.la
isl_polytope_scan_SOURCES = \
	polytope_scan.c

isl_polyhedron_detect_equalities_LDADD = libisl.la
isl_polyhedron_detect_equalities_SOURCES = \
	polyhedron_detect_equalities.c

isl_cat_LDADD = libisl.la
isl_cat_SOURCES = \
	cat.c

isl_closure_LDADD = libisl.la
isl_closure_SOURCES = \
	closure.c

isl_test_cpp_SOURCES = \
	isl_test_cpp.cc \
	include/isl/cpp.h
isl_test_cpp_LDFLAGS = @MP_LDFLAGS@
isl_test_cpp_LDADD = libisl.la @MP_LIBS@

isl_test_cpp_checked_SOURCES = \
	isl_test_cpp-checked.cc \
	include/isl/cpp-checked.h
isl_test_cpp_checked_LDFLAGS = @MP_LDFLAGS@
isl_test_cpp_checked_LDADD = libisl.la @MP_LIBS@

isl_test_cpp_checked_conversion_SOURCES = \
	isl_test_cpp-checked-conversion.cc \
	include/isl/cpp-checked-conversion.h
isl_test_cpp_checked_conversion_LDFLAGS = @MP_LDFLAGS@
isl_test_cpp_checked_conversion_LDADD = libisl.la @MP_LIBS@

# dummy library that captures the dependencies on all headers
# that are relevant for the bindings
noinst_LIBRARIES = libdep.a
libdep_a_SOURCES = dep.c

if HAVE_CLANG
if HAVE_CXX11
interface/isldlname.py: libisl.la
	$(AM_V_GEN) $(GREP) dlname $< | $(SED) -e 's/dlname/isl_dlname/' > $@
interface/isl.py: interface/extract_interface$(BUILD_EXEEXT) libdep.a \
		python/isl.py.top interface/isldlname.py
	(cat interface/isldlname.py $(srcdir)/python/isl.py.top && \
		interface/extract_interface$(BUILD_EXEEXT) --language=python \
			$(includes) $(srcdir)/all.h) \
			> $@ || (rm $@ && false)

include/isl/cpp.h: interface/extract_interface$(BUILD_EXEEXT) libdep.a \
		cpp/cpp.h.top cpp/cpp.h.pre cpp/cpp.h.bot
	$(MKDIR_P) "include/isl/cpp" && \
	(cat $(srcdir)/cpp/cpp.h.top $(srcdir)/all.h \
	    $(srcdir)/cpp/cpp.h.pre && \
		interface/extract_interface$(BUILD_EXEEXT) --language=cpp \
			$(includes) $(srcdir)/all.h && \
		cat $(srcdir)/cpp/cpp.h.bot) \
			> $@ || (rm $@ && false)

include/isl/cpp-checked.h: interface/extract_interface$(BUILD_EXEEXT) libdep.a \
		cpp/cpp-checked.h.top \
		cpp/cpp-checked.h.pre cpp/cpp-checked.h.bot
	(cat $(srcdir)/cpp/cpp-checked.h.top $(srcdir)/all.h \
	    $(srcdir)/cpp/cpp-checked.h.pre && \
		interface/extract_interface$(BUILD_EXEEXT) \
			--language=cpp-checked \
			$(includes) $(srcdir)/all.h && \
		cat $(srcdir)/cpp/cpp-checked.h.bot) \
			> $@ || (rm $@ && false)

include/isl/cpp-checked-conversion.h: \
		interface/extract_interface$(BUILD_EXEEXT) \
		libdep.a \
		cpp/cpp-checked-conversion.h.top \
		cpp/cpp-checked-conversion.h.bot
	(cat $(srcdir)/cpp/cpp-checked-conversion.h.top && \
		interface/extract_interface$(BUILD_EXEEXT) \
			--language=cpp-checked-conversion \
			$(includes) $(srcdir)/all.h && \
		cat $(srcdir)/cpp/cpp-checked-conversion.h.bot) \
			> $@ || (rm $@ && false)
endif
endif

nodist_pkginclude_HEADERS = \
	include/isl/stdint.h
pkginclude_HEADERS = \
	$(CPP_H) \
	$(MP_INCLUDE_H) \
	include/isl/aff.h \
	include/isl/aff_type.h \
	include/isl/arg.h \
	include/isl/ast.h \
	include/isl/ast_type.h \
	include/isl/ast_build.h \
	include/isl/constraint.h \
	include/isl/ctx.h \
	include/isl/fixed_box.h \
	include/isl/flow.h \
	include/isl/id.h \
	include/isl/id_type.h \
	include/isl/id_to_ast_expr.h \
	include/isl/id_to_id.h \
	include/isl/id_to_pw_aff.h \
	include/isl/ilp.h \
	include/isl/hash.h \
	include/isl/hmap.h \
	include/isl/hmap_templ.c \
	include/isl/list.h \
	include/isl/local_space.h \
	include/isl/lp.h \
	include/isl/mat.h \
	include/isl/map.h \
	include/isl/map_to_basic_set.h \
	include/isl/map_type.h \
	include/isl/maybe.h \
	include/isl/maybe_ast_expr.h \
	include/isl/maybe_basic_set.h \
	include/isl/maybe_id.h \
	include/isl/maybe_pw_aff.h \
	include/isl/maybe_templ.h \
	include/isl/multi.h \
	include/isl/obj.h \
	include/isl/options.h \
	include/isl/point.h \
	include/isl/polynomial.h \
	include/isl/polynomial_type.h \
	include/isl/printer.h \
	include/isl/printer_type.h \
	include/isl/schedule.h \
	include/isl/schedule_node.h \
	include/isl/schedule_type.h \
	include/isl/set.h \
	include/isl/set_type.h \
	include/isl/space.h \
	include/isl/space_type.h \
	include/isl/stream.h \
	include/isl/stride_info.h \
	include/isl/union_map.h \
	include/isl/union_map_type.h \
	include/isl/union_set.h \
	include/isl/union_set_type.h \
	include/isl/val.h \
	include/isl/val_type.h \
	include/isl/vec.h \
	include/isl/version.h \
	include/isl/vertices.h

if HAVE_CLANG
if HAVE_CXX11
    CPP_INTERFACES = \
	include/isl/cpp.h \
	include/isl/cpp-checked.h \
	include/isl/cpp-checked-conversion.h
endif
endif
BUILT_SOURCES = gitversion.h $(CPP_INTERFACES)
CLEANFILES = \
	gitversion.h \
	interface/isldlname.py \
	interface/isl.py \
	interface/isl.pyc \
	$(CPP_INTERFACES)

DISTCLEANFILES = \
	isl-uninstalled.sh \
	isl-uninstalled.pc \
	isl.pc \
	isl.pc.in \
	include/isl/stdint.h

EXTRA_DIST = \
	LICENSE \
	isl_config_post.h \
	isl_aff_lex_templ.c \
	isl_align_params_templ.c \
	isl_align_params_bin_templ.c \
	basis_reduction_templ.c \
	isl_bind_domain_templ.c \
	bset_to_bmap.c \
	bset_from_bmap.c \
	isl_check_named_params_templ.c \
	check_reparse_templ.c \
	check_reparse_test_templ.c \
	check_single_reference_templ.c \
	check_type_range_templ.c \
	isl_copy_tuple_id_templ.c \
	isl_domain_factor_templ.c \
	extract_key.c \
	isl_ilp_opt_multi_val_templ.c \
	isl_ilp_opt_val_templ.c \
	has_single_reference_templ.c \
	isl_insert_domain_templ.c \
	isl_list_macro.h \
	isl_list_templ.c \
	isl_list_templ.h \
	isl_map_bound_templ.c \
	isl_map_lexopt_templ.c \
	isl_maybe_ast_graft_list.h \
	isl_maybe_map.h \
	isl_multi_macro.h \
	isl_multi_bind_templ.c \
	isl_multi_explicit_domain.c \
	isl_multi_pw_aff_explicit_domain.c \
	isl_multi_union_pw_aff_explicit_domain.c \
	isl_multi_no_explicit_domain.c \
	isl_multi_no_domain_templ.c \
	isl_multi_templ.c \
	isl_multi_templ.h \
	isl_multi_add_constant_templ.c \
	isl_multi_align_templ.c \
	isl_multi_align_set.c \
	isl_multi_align_union_set.c \
	isl_multi_apply_templ.c \
	isl_multi_apply_set.c \
	isl_multi_apply_union_set.c \
	isl_multi_arith_templ.c \
	isl_multi_bind_domain_templ.c \
	isl_multi_cmp.c \
	isl_multi_coalesce.c \
	isl_multi_dim_id_templ.c \
	isl_multi_dims.c \
	isl_multi_domain_templ.c \
	isl_multi_floor.c \
	isl_multi_from_base_templ.c \
	isl_multi_gist.c \
	isl_multi_hash.c \
	isl_multi_insert_domain_templ.c \
	isl_multi_intersect.c \
	isl_multi_identity_templ.c \
	isl_multi_locals_templ.c \
	isl_multi_min_max_templ.c \
	isl_multi_move_dims_templ.c \
	isl_multi_nan_templ.c \
	isl_multi_param_templ.c \
	isl_multi_product_templ.c \
	isl_multi_read_no_explicit_domain_templ.c \
	isl_multi_splice_templ.c \
	isl_multi_tuple_id_templ.c \
	isl_multi_unbind_params_templ.c \
	isl_multi_union_add_templ.c \
	isl_multi_zero_templ.c \
	isl_opt_mpa_templ.c \
	opt_type.h \
	print_templ.c \
	print_templ_yaml.c \
	print_yaml_field_templ.c \
	isl_power_templ.c \
	isl_project_out_all_params_templ.c \
	isl_pw_macro.h \
	isl_pw_templ.c \
	isl_pw_templ.h \
	isl_pw_add_constant_templ.c \
	isl_pw_add_constant_multi_val_templ.c \
	isl_pw_add_constant_val_templ.c \
	isl_pw_bind_domain_templ.c \
	isl_pw_eval.c \
	isl_pw_hash.c \
	isl_pw_insert_dims_templ.c \
	isl_pw_insert_domain_templ.c \
	isl_pw_lift_templ.c \
	isl_pw_locals_templ.c \
	isl_pw_morph_templ.c \
	isl_pw_move_dims_templ.c \
	isl_pw_neg_templ.c \
	isl_pw_opt_templ.c \
	isl_pw_pullback_templ.c \
	isl_pw_sub_templ.c \
	isl_pw_union_opt.c \
	read_in_string_templ.c \
	set_to_map.c \
	set_from_map.c \
	set_list_from_map_list_inl.c \
	isl_tab_lexopt_templ.c \
	isl_test_list_templ.c \
	isl_test_plain_equal_templ.c \
	isl_type_check_equal_space_templ.c \
	isl_type_has_equal_space_bin_templ.c \
	isl_type_has_equal_space_templ.c \
	isl_type_has_space_templ.c \
	isl_unbind_params_templ.c \
	uset_to_umap.c \
	uset_from_umap.c \
	isl_union_macro.h \
	isl_union_templ.c \
	isl_union_single.c \
	isl_union_multi.c \
	isl_union_eval.c \
	isl_union_locals_templ.c \
	isl_union_map_lex_templ.c \
	isl_union_neg.c \
	isl_union_pw_templ.c \
	libisl-gdb.py \
	doc/CodingStyle \
	doc/SubmittingPatches \
	doc/implementation.tex \
	doc/isl.bib \
	doc/mypod2latex \
	doc/manual.tex \
	doc/reading.tex \
	doc/user.pod \
	imath/gmp_compat.c \
	imath/gmp_compat.h \
	imath/imath.c \
	imath/imath.h \
	imath/imrat.c \
	imath/imrat.h \
	all.h \
	cpp \
	python \
	isl_test_cpp-generic.cc \
	isl_test_python.py \
	test_inputs

dist-hook:
	echo @GIT_HEAD_VERSION@ > $(distdir)/GIT_HEAD_ID
	(cd doc; make manual.pdf)
	cp doc/manual.pdf $(distdir)/doc/

pkgconfigdir=$(pkgconfig_libdir)
pkgconfig_DATA = $(pkgconfig_libfile)

gitversion.h: @GIT_HEAD@
	$(AM_V_GEN)echo '#define GIT_HEAD_ID "'@GIT_HEAD_VERSION@'"' > $@

install-data-local: $(srcdir)/libisl-gdb.py
	@libisl=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
		 $(builddir)/libisl.la`; \
	case $$libisl in \
	'') echo Cannot find isl library name. GDB bindings not installed.;; \
	*) echo $(INSTALL_DATA) $(srcdir)/libisl-gdb.py \
		$(DESTDIR)$(libdir)/$$libisl-gdb.py; \
	test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"; \
	$(INSTALL_DATA) $(srcdir)/libisl-gdb.py \
	    $(DESTDIR)$(libdir)/$$libisl-gdb.py; \
	esac

uninstall-local:
	@libisl=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
		 $(builddir)/libisl.la`; \
	if test -n "$${libisl}"; then \
		rm -f $(DESTDIR)$(libdir)/$$libisl-gdb.py; \
	fi
