#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

%:
	dh $@ --parallel --with python2

override_dh_auto_configure:
	python scripts/mk_make.py --prefix=$(CURDIR)/debian/tmp/usr
	sed -i 's/^SLINK_FLAGS=.*/SLINK_FLAGS=-shared $(LDFLAGS) -Wl,-soname,libz3.so.4/' build/config.mk
	sed -i 's/^CXXFLAGS=/CXXFLAGS=-fPIC /' build/config.mk
	printf '%%:\n\t$$(MAKE) -C build $$@\n' > Makefile
	printf '\nall:\n\t$$(MAKE) -C build $$@\n' >> Makefile

override_dh_clean:
	dh_clean
	$(RM) Makefile scripts/*.pyc
	$(RM) -r build
	$(RM) src/api/python/*.pyc
	$(RM) \
    src/api/api_commands.cpp \
    src/api/api_log_macros.cpp \
    src/api/api_log_macros.h \
    src/api/dll/gparams_register_modules.cpp \
    src/api/dll/install_tactic.cpp \
    src/api/dll/mem_initializer.cpp \
    src/api/dotnet/Enumerations.cs \
    src/api/dotnet/Native.cs \
    src/api/dotnet/Properties/AssemblyInfo.cs \
    src/api/python/z3consts.py \
    src/api/python/z3core.py \
    src/ast/fpa/fpa2bv_rewriter_params.hpp \
    src/ast/normal_forms/nnf_params.hpp \
    src/ast/pattern/database.h \
    src/ast/pattern/pattern_inference_params_helper.hpp \
    src/ast/pp_params.hpp \
    src/ast/rewriter/arith_rewriter_params.hpp \
    src/ast/rewriter/array_rewriter_params.hpp \
    src/ast/rewriter/bool_rewriter_params.hpp \
    src/ast/rewriter/bv_rewriter_params.hpp \
    src/ast/rewriter/fpa_rewriter_params.hpp \
    src/ast/rewriter/poly_rewriter_params.hpp \
    src/ast/rewriter/rewriter_params.hpp \
    src/ast/simplifier/arith_simplifier_params_helper.hpp \
    src/ast/simplifier/array_simplifier_params_helper.hpp \
    src/ast/simplifier/bv_simplifier_params_helper.hpp \
    src/interp/interp_params.hpp \
    src/math/polynomial/algebraic_params.hpp \
    src/math/realclosure/rcf_params.hpp \
    src/model/model_evaluator_params.hpp \
    src/model/model_params.hpp \
    src/muz/base/fixedpoint_params.hpp \
    src/nlsat/nlsat_params.hpp \
    src/parsers/util/parser_params.hpp \
    src/sat/sat_asymm_branch_params.hpp \
    src/sat/sat_params.hpp \
    src/sat/sat_scc_params.hpp \
    src/sat/sat_simplifier_params.hpp \
    src/shell/gparams_register_modules.cpp \
    src/shell/install_tactic.cpp \
    src/shell/mem_initializer.cpp \
    src/smt/params/smt_params_helper.hpp \
    src/solver/combined_solver_params.hpp \
    src/tactic/sls/sls_params.hpp \
    src/test/gparams_register_modules.cpp \
    src/test/install_tactic.cpp \
    src/test/mem_initializer.cpp \
    src/util/version.h \
    src/opt/opt_params.hpp

override_dh_auto_test:
	$(MAKE) test-z3
	build/test-z3 -a
	$(RM) interval_lemma_* trigo-lemmas.math

override_dh_auto_install:
	mkdir -p debian/tmp/usr/lib/python2.7/dist-packages/
	dh_auto_install
	mv debian/tmp/usr/lib/libz3.so debian/tmp/usr/lib/libz3.so.4
	ln -s libz3.so.4 debian/tmp/usr/lib/libz3.so

override_dh_installchangelogs:
	dh_installchangelogs RELEASE_NOTES
