#!/usr/bin/make -f # The next line will cause Dart to be used if it is installed... #USE_DARTP:=$(shell if [ -d /usr/share/Dart ]; then echo true; fi ) USE_DARTP:= DARCH := $(shell dpkg --print-installation-architecture) CFLAGS := -Wall -g $(if $(findstring noopt,$(DEB_BUILD_OPTIONS)),-O0,-O2) QUILT_CALL := QUILT_PATCHES=debian/patches quilt --quiltrc /dev/null BUILD_FLAGS_FILE := build-flags.cmake # Hack for parisc64 to close bug #133696 ifeq ($(shell arch),parisc64) CFLAGS += -ffunction-sections endif patch: patch-stamp patch-stamp: $(QUILT_CALL) push -a || test $$? = 2 touch $@ unpatch: $(QUILT_CALL) pop -a -R || test $$? = 2 $(BUILD_FLAGS_FILE): touch $@ echo 'set(CMAKE_SKIP_RPATH YES CACHE BOOL "Skip rpath" FORCE)' >> $@ echo 'set(CMAKE_VERBOSE_MAKEFILE ON CACHE BOOL "Verbose build" FORCE)' >> $@ echo 'set(CMAKE_C_FLAGS "$(CFLAGS)" CACHE STRING "C flags" FORCE)' >> $@ echo 'set(CMAKE_CXX_FLAGS "$(CFLAGS)" CACHE STRING "C++ flags" FORCE)' >> $@ # echo 'set(BUILD_WXDialog ON CACHE STRING "Build WXDialog" FORCE)' >> $@ echo 'set(BUILD_CursesDialog TRUE CACHE BOOL "Build curses GUI" FORCE)' >> $@ echo 'set(BUILD_QtDialog TRUE CACHE BOOL "Build Qt4 GUI" FORCE)' >> $@ # echo 'set(TARGET_VERSION CACHE STRING ""FORCE)' >> $@ # echo 'set(TARGET_SOVERSION CACHE STRING "" FORCE)' >> $@ # echo 'set(BUILD_DOCUMENTATION ON CACHE BOOL "" FORCE)' >> $@ # echo 'set(BUILD_DOXYGEN ON CACHE BOOL "" FORCE)' >> $@ $(if $(USE_DARTP),echo 'set(DART_ROOT /usr/share/Dart CACHE STRING "" FORCE)' >> $@) $(if $(USE_DARTP),echo 'set(BUILDNAME "cmake_2.2.3-1_$(DARCH).deb" CACHE STRING "" FORCE)' >> $@) configure: configure-stamp configure-stamp: $(BUILD_FLAGS_FILE) dh_testdir # pre-load the cache to avoid setting rpath: rm -rf Build && mkdir -p Build cd Build && ../bootstrap --prefix=/usr --docdir=/share/doc/cmake --mandir=/share/man \ --init=../$(BUILD_FLAGS_FILE) --system-libs chmod -x ChangeLog.manual chmod -x Modules/*.cmake Modules/*.cmake.in Modules/*.cxx Modules/Platform/* touch $@ build: patch-stamp configure-stamp build-stamp build-stamp: dh_testdir cd Build && $(MAKE) $(if $(USE_DARTP),Experimental && $(MAKE) ExperimentalSubmit) touch $@ clean: unpatch dh_testdir dh_testroot rm -rf .pc build-stamp configure-stamp patch-stamp $(BUILD_FLAGS_FILE) rm -rf Build dh_clean install: build dh_testdir dh_testroot dh_clean -k dh_installdirs # Add here commands to install the package into debian/cmake. cd Build && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install dh_lintian #cp Docs/cmake-indent.vim debian/cmake/usr/share/vim/addons/indent/cmake.vim #cp Docs/cmake-syntax.vim debian/cmake/usr/share/vim/addons/syntax/cmake.vim # Build architecture-independent files here. binary-indep: build install # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot dh_install dh_installdocs dh_installexamples dh_installmenu dh_installemacsen dh_installcron dh_installman dh_installinfo dh_installchangelogs ChangeLog.txt ChangeLog.manual dh_link dh_strip dh_compress -XCMake.pdf dh_fixperms dh_installdeb dh_shlibdeps dh_gencontrol dh_md5sums dh_builddeb binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install configure patch unpatch