#!/usr/bin/make -f export DEB_CXXFLAGS_MAINT_APPEND := $(shell dpkg-buildflags --get CPPFLAGS) export DEB_CFLAGS_MAINT_APPEND := $(shell dpkg-buildflags --get CPPFLAGS) export DEB_LDFLAGS_MAINT_APPEND := -Wl,--as-needed ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) BOOTSTRAP_PARALLEL = --parallel=$(NUMJOBS) endif BUILD_FLAGS_FILE = build-flags.cmake set_build_flag = echo 'set($(1) $(2) CACHE \ $(if $(filter $(2),YES ON TRUE NO OFF FALSE),BOOL,STRING) \ $(or $(3),"") FORCE)' >> $(BUILD_FLAGS_FILE) verify_build_flag = @grep \ --include=CMakeLists.txt --include=*.cmake \ --exclude=$(BUILD_FLAGS_FILE) -rqs '\b$(1)\b' . || echo '$(1) flag is obsolete' $(BUILD_FLAGS_FILE) verify-build-flags: $(call $(flag_action),CMAKE_SKIP_RPATH,ON,"Skip rpath") $(call $(flag_action),CMAKE_USE_RELATIVE_PATHS,ON,"Use relative paths") $(call $(flag_action),CMAKE_VERBOSE_MAKEFILE,ON,"Verbose build") $(call $(flag_action),CMAKE_C_FLAGS,"$(CFLAGS)","C flags") $(call $(flag_action),CMAKE_CXX_FLAGS,"$(CXXFLAGS)","C++ flags") $(call $(flag_action),CMAKE_SKIP_BOOTSTRAP_TEST,ON,"Skip BootstrapTest") $(call $(flag_action),BUILD_CursesDialog,ON,"Build curses GUI") $(call $(flag_action),BUILD_QtDialog,ON,"Build Qt4 GUI") # $(call $(flag_action),BUILD_DOCUMENTATION,ON) $(BUILD_FLAGS_FILE): flag_action := set_build_flag verify-build-flags: flag_action := verify_build_flag .PHONY: verify-build-flags override_dh_auto_configure: $(BUILD_FLAGS_FILE) rm -rf Build && mkdir -p Build cd Build && ../bootstrap --prefix=/usr --docdir=/share/doc/cmake --mandir=/share/man \ --init=../$(BUILD_FLAGS_FILE) --system-libs \ --sphinx-man --sphinx-html \ $(BOOTSTRAP_PARALLEL) --verbose override_dh_auto_test: HOME="`pwd`/Build" dh_auto_test -- ARGS="-E CTestTestUpload" override_dh_auto_clean: dh_auto_clean rm -f $(BUILD_FLAGS_FILE) override_dh_install: dh_install --list-missing override_dh_installdocs: dh_installdocs --link-doc=cmake-data override_dh_sphinxdoc: dh_sphinxdoc -pcmake-doc %: dh $@ --with=bash-completion,sphinxdoc --parallel --builddirectory=Build --dbg-package=cmake-dbg .PHONY: override_dh_auto_configure override_dh_auto_clean