QGIS/debian/rules

377 lines
12 KiB
Plaintext
Raw Normal View History

#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# This has to be exported to make some magic below work.
export DH_OPTIONS
# Enable hardening build flags
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
include /usr/share/dpkg/pkg-info.mk
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
2014-01-18 23:07:33 +01:00
DEB_BUILD_MULTIARCH ?= $(shell dpkg-architecture -qDEB_BUILD_MULTIARCH)
DEB_TEST_TARGET ?= Experimental
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
QGIS_BUILDDIR ?= debian/build
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
export QT_SELECT=5
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
QGIS_VERSION=$(shell echo $(DEB_VERSION_UPSTREAM) | sed -e 's/\+.*//')
ifeq (,$(DIST))
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
DISTRIBUTION := $(DEB_DISTRIBUTION)
else
DISTRIBUTION := $(DIST)
2012-09-08 16:30:01 +02:00
endif
ifneq (,$(findstring -oracle,$(DISTRIBUTION)))
DISTRIBUTION := $(subst -oracle,,$(DISTRIBUTION))
WITH_ORACLE=1
endif
2016-05-27 23:41:01 +02:00
QT_PLUGINS_DIR = usr/lib/$(DEB_BUILD_MULTIARCH)/qt5/plugins
ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"buster bionic eoan focal"))
2012-09-08 16:30:01 +02:00
DISTRIBUTION := sid
endif
DEB_BUILD_NAME ?= $(DISTRIBUTION)-$(DEB_BUILD_ARCH)
QGIS_MAJOR=$(shell sed -ne 's/SET(CPACK_PACKAGE_VERSION_MAJOR "\([0-9]*\)")/\1/p' CMakeLists.txt)
QGIS_MINOR=$(shell sed -ne 's/SET(CPACK_PACKAGE_VERSION_MINOR "\([0-9]*\)")/\1/p' CMakeLists.txt)
QGIS_PATCH=$(shell sed -ne 's/SET(CPACK_PACKAGE_VERSION_PATCH "\([0-9]*\)")/\1/p' CMakeLists.txt)
QGIS_ABI=$(QGIS_MAJOR).$(QGIS_MINOR).$(QGIS_PATCH)
GRASS=grass$(subst .,,$(shell pkg-config --modversion grass|cut -d. -f1,2))
2015-04-11 17:20:52 +02:00
GRASSVER=$(subst .,,$(shell pkg-config --modversion grass|cut -d. -f1))
2017-09-27 23:02:24 +02:00
GRASSABI=$(subst .,,$(shell pkg-config --modversion grass|cut -d. -f1,2,3|sed -e 's/RC/-/'))
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
# Include percentage of started edges
export NINJA_STATUS=[%f/%t %p]
ifeq (,$(filter terse,$(DEB_BUILD_OPTIONS)))
NINJA_OPTS += -v
endif
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
MAKEFLAGS += -j$(NUMJOBS)
NINJA_OPTS += -j$(NUMJOBS)
endif
ifeq (,$(DISPLAY))
TESTMAKE=xvfb-run -a -n 1 -s "-screen 0 1280x1024x24 -dpi 96" ninja $(NINJA_OPTS)
else
TESTMAKE=ninja $(NINJA_OPTS)
endif
ifeq (,$(findstring $(DISTRIBUTION),"focal sid"))
2020-06-10 23:52:11 +02:00
PYTHON_LIBRARY=$(shell python3-config --ldflags | sed -e 's,-L\(.*\) -L/usr/lib -l\([^ ]*\) .*$$,\1/lib\2.so,')
else
2020-06-10 23:52:11 +02:00
PYTHON_LIBRARY=$(shell python3-config --ldflags --embed | sed -e 's,-L\(.*\) -L/usr/lib -l\([^ ]*\) .*$$,\1/lib\2.so,')
endif
CMAKE_OPTS := \
-G Ninja \
-DBUILDNAME=$(DEB_BUILD_NAME) \
-DCMAKE_VERBOSE_MAKEFILE=1 \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBINDINGS_GLOBAL_INSTALL=TRUE \
-DSIP_GLOBAL_INSTALL=TRUE \
-DPEDANTIC=TRUE \
-DSERVER_SKIP_ECW=TRUE \
-DQGIS_CGIBIN_SUBDIR=/usr/lib/cgi-bin \
-DWITH_APIDOC=TRUE \
-DGENERATE_QHP=TRUE \
2014-05-20 08:18:55 +02:00
-DWITH_CUSTOM_WIDGETS=TRUE \
2016-10-01 13:42:26 +02:00
-DWITH_SERVER=TRUE \
-DWITH_SERVER_PLUGINS=TRUE \
2016-05-27 23:41:01 +02:00
-DWITH_QWTPOLAR=FALSE \
-DQT_PLUGINS_DIR=$(QT_PLUGINS_DIR) \
-DPYTHON_LIBRARY=$(PYTHON_LIBRARY) \
-DDOXYGEN_ON_DEMAND=TRUE \
-DWITH_QSPATIALITE=TRUE
ifneq ($(SHA),)
CMAKE_OPTS += -DSHA=$(SHA)
endif
ifeq ($(GRASSVER),7)
CMAKE_OPTS += \
2015-09-27 13:33:02 +02:00
-DWITH_GRASS=TRUE \
-DWITH_GRASS7=TRUE \
-DGRASS_PREFIX7=/usr/lib/$(GRASS)
endif
ifneq (,$(findstring $(DISTRIBUTION),"sid buster"))
CMAKE_OPTS += -DPOSTGRES_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libpq.so
endif
ifneq (,$(findstring $(DISTRIBUTION),"sid buster bionic eoan focal"))
CMAKE_OPTS += \
-DWITH_3D=TRUE \
-DGEOS_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libgeos_c.so
$(shell test -f /usr/include/$(DEB_BUILD_MULTIARCH)/qt5/Qt3DExtras/qt3dextrasversion.h)
ifneq (0,$(.SHELLSTATUS))
# Qt3DExtras intentionally removed from debian (#895386) and in turn ubuntu
CMAKE_OPTS += \
-DCMAKE_PREFIX_PATH=$(realpath external/qt3dextra-headers/cmake) \
-DQT5_3DEXTRA_INCLUDE_DIR=$(realpath external/qt3dextra-headers) \
-DQT5_3DEXTRA_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libQt53DExtras.so
endif
2015-08-29 21:05:09 +02:00
endif
ifneq (,$(WITH_ORACLE))
ifeq ($(DEB_BUILD_ARCH),amd64)
2019-10-26 13:38:08 +02:00
ORACLE_INCLUDEDIR=/usr/include/oracle/18.5/client64/
ORACLE_LIBDIR=/usr/lib/oracle/18.5/client64/lib/
endif
ifeq ($(DEB_BUILD_ARCH),i386)
2019-10-26 13:38:08 +02:00
ORACLE_INCLUDEDIR=/usr/include/oracle/18.5/client/
ORACLE_LIBDIR=/usr/lib/oracle/18.5/client/lib/
endif
CMAKE_OPTS += \
-DWITH_ORACLE=TRUE \
-DORACLE_LIBDIR=$(ORACLE_LIBDIR) \
-DORACLE_INCLUDEDIR=$(ORACLE_INCLUDEDIR)
2013-01-09 16:46:30 +01:00
endif
ifneq (,$(findstring $(DISTRIBUTION),"sid buster"))
CMAKE_OPTS += -DSPATIALINDEX_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libspatialindex.so
endif
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CMAKE_OPTS += -DCMAKE_BUILD_TYPE=Debug
endif
ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
CMAKE_OPTS += -DENABLE_TESTS=FALSE
else
CMAKE_OPTS += -DENABLE_TESTS=TRUE -DDART_TESTING_TIMEOUT=60
endif
2012-05-26 16:09:07 +02:00
CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS := $(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS)
CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
2012-05-26 16:09:07 +02:00
CXXFLAGS += -O0
else
CFLAGS += -O2
2012-05-26 16:09:07 +02:00
CXXFLAGS += -O2
endif
2012-05-26 16:09:07 +02:00
ifneq (,$(findstring profile,$(DEB_BUILD_OPTIONS)))
CFLAGS += -pg
CXXFLAGS += -pg
LDFLAGS += -pg
endif
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
ifeq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -DNDEBUG
CXXFLAGS += -DNDEBUG
endif
# multi distribution support:
# - remove lines with applicable excludes
# - remove prefixes with applicable includes
# - remove prefixes with not applicable excludes
# - remove remaining comments
CONTROL_EXPRESSIONS = $(DISTRIBUTION) grass$(GRASSVER)
ifneq (,$(WITH_ORACLE))
CONTROL_EXPRESSIONS += oracle
endif
define gentemplate
$(2): $(1)
sed -r \
-e '/#(.+ |)!($(subst $(eval) ,|,$(CONTROL_EXPRESSIONS)))( .+|)#/d' \
-e 's/#([^#]+ |)($(subst $(eval) ,|,$(CONTROL_EXPRESSIONS)))( [^#]+|)#//g' \
-e 's/#([^#]+ |)![^#]+( [^#]*|)#//g' \
-e '/^#/d' \
-e "s/\{DEB_BUILD_GNU_TYPE\}/$(DEB_BUILD_GNU_TYPE)/g" \
-e "s/\{QGIS_ABI\}/$(QGIS_ABI)/g" \
-e "s/\{GRASS\}/$(GRASS)/g" \
2015-04-11 17:20:52 +02:00
-e "s/\{GRASSVER\}/$(GRASSVER)/g" \
2015-10-04 23:54:21 +02:00
-e "s/\{GRASSVER_QGISABI\}/$(GRASSVER)-$(QGIS_ABI)/g" \
2015-02-25 16:00:30 +01:00
$$^ >$$@
2012-09-08 16:30:01 +02:00
templates:: $(2)
templateclean::
rm -f $(2)
endef
$(foreach t,$(wildcard debian/*.in),$(eval $(call gentemplate,$(t),$(basename $(t)))))
2015-10-04 23:54:21 +02:00
$(foreach t,$(wildcard debian/*{GRASSVER_QGIS_ABI}*),$(eval $(call gentemplate,$(t),$(subst {GRASSVER_QGIS_ABI},$(GRASSVER)-$(QGIS_ABI),$(t)))))
$(foreach t,$(wildcard debian/*{QGIS_ABI}*),$(eval $(call gentemplate,$(t),$(subst {QGIS_ABI},$(QGIS_ABI),$(t)))))
cleantemplates:
$(MAKE) -f debian/rules templateclean
$(MAKE) -f debian/rules debian/control debian/compat
binary binary-arch binary-indep build build-arch build-indep clean install install-arch install-indep: templates
2016-05-27 23:41:01 +02:00
dh $@ --with python3 --parallel --builddirectory=$(QGIS_BUILDDIR)
override_dh_clean: cleantemplates
2017-02-20 11:27:29 +01:00
dh_clean qgis.bin.1
-$(RM) -r $(CURDIR)/$(QGIS_BUILDDIR)/
override_dh_auto_configure:
dh_auto_configure -- $(CMAKE_OPTS)
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
override_dh_auto_build:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
ninja $(NINJA_OPTS) -C $(QGIS_BUILDDIR) $(DEB_TEST_TARGET)Build
! grep -q "<Error>" $(QGIS_BUILDDIR)/Testing/$$(head -1 $(QGIS_BUILDDIR)/Testing/TAG)/Build.xml || { \
cat $(QGIS_BUILDDIR)/Testing/Temporary/LastBuild_$$(head -1 $(QGIS_BUILDDIR)/Testing/TAG).log; \
ninja $(NINJA_OPTS) -C $(QGIS_BUILDDIR) $(DEB_TEST_TARGET)Submit; \
false; }
else
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
ninja $(NINJA_OPTS) -C $(QGIS_BUILDDIR)
endif
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
ninja $(NINJA_OPTS) -C $(QGIS_BUILDDIR) apidoc
override_dh_auto_test: test-stamp
test-stamp:
2011-11-16 23:11:57 +01:00
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
# Code to run the package test suite
rm -f $(QGIS_BUILDDIR)/.error
mkdir -p debian/tmp/locale/
localedef -f UTF-8 -i en_US ./debian/tmp/locale/en_US.UTF-8/
LOCPATH=$(CURDIR)/debian/tmp/locale/ \
LC_ALL=en_US.UTF-8 \
LD_LIBRARY_PATH=$(CURDIR)/$(QGIS_BUILDDIR)/output/lib:$(LD_LIBRARY_PATH) \
PATH=/usr/sbin:$(PATH) \
$(TESTMAKE) -C $(QGIS_BUILDDIR) $(DEB_TEST_TARGET)Test || touch $(QGIS_BUILDDIR)/.error
# ignore submission errors
-$(TESTMAKE) -C $(QGIS_BUILDDIR) $(DEB_TEST_TARGET)Submit
# ignore the test outcome for now
# ! [ -f $(QGIS_BUILDDIR)/.error ]
else
2012-09-08 16:30:01 +02:00
@echo Skipping tests.
2011-11-16 23:11:57 +01:00
endif
touch test-stamp
2011-11-16 23:11:57 +01:00
override_dh_auto_install:
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
DESTDIR=$(CURDIR)/debian/tmp ninja $(NINJA_OPTS) -C $(QGIS_BUILDDIR) install
# remove unwanted files
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/doc/api/installdox
# replace leaflet and jquery urls
perl -i -p \
-e 's#http://.*/leaflet.css#leaflet/leaflet.css#;s#http://.*/leaflet.js#leaflet/leaflet.js#;s#http://.*/jquery-.*.min.js#jquery-min.js#' \
$(CURDIR)/debian/tmp/usr/share/qgis/doc/developersmap.html
# Don't include a copy of the world.tif also included in osgearth-data
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/globe/world.tif
# remove extra license files
-find $(CURDIR)/debian/tmp/usr/share/qgis/resources/cpt-city-qgis-min/ -name COPYING.xml -delete
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/doc/LICENSE
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/python/plugins/db_manager/LICENSE
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/python/plugins/MetaSearch/LICENSE.txt
2018-01-05 01:56:08 +01:00
$(RM) $(CURDIR)/debian/tmp/usr/bin/qgis_wcstest
$(RM) $(CURDIR)/debian/tmp/usr/bin/qgis_bench
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/resources/wcs-servers.json
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
# remove documentation outside usr/share/doc
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/python/plugins/db_manager/README
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/python/plugins/db_manager/TODO
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/resources/cpt-city-qgis-min/README-qgis.txt
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/resources/cpt-city-qgis-min/README.txt
# Man pages are installed by dh_installman
$(RM) $(CURDIR)/debian/tmp/usr/man/man1/qgis.1
# Don't ship srs.db, automatically updated in postinst with crssync
mv $(CURDIR)/debian/tmp/usr/share/qgis/resources/srs.db $(CURDIR)/debian/tmp/usr/share/qgis/resources/srs-template.db
# Mime info
install -o root -g root -d $(CURDIR)/debian/tmp/usr/share/mime/packages
install -o root -g root -m 644 $(CURDIR)/debian/qgis.xml $(CURDIR)/debian/tmp/usr/share/mime/packages
# qgis binaries
install -o root -g root -m 755 -d $(CURDIR)/debian/qgis/usr/bin
install -o root -g root -m 755 $(CURDIR)/debian/tmp/usr/bin/qgis $(CURDIR)/debian/qgis/usr/bin/qgis.bin
install -o root -g root -m 755 $(CURDIR)/debian/tmp/usr/bin/qgis_process $(CURDIR)/debian/qgis/usr/bin/qgis_process.bin
2020-04-28 07:27:09 +02:00
$(RM) $(CURDIR)/debian/tmp/usr/bin/qgis $(CURDIR)/debian/tmp/usr/bin/qgis_process
# qgis binary wrappers
sed -r \
-e "s/\{GRASS\}/$(GRASS)/g" \
-e "s#\{ORACLE_LIBDIR\}#$(ORACLE_LIBDIR)#g" \
$(CURDIR)/debian/qgis.sh.in >$(CURDIR)/debian/qgis.sh
install -o root -g root -m 755 $(CURDIR)/debian/qgis.sh $(CURDIR)/debian/qgis/usr/bin/qgis
install -o root -g root -m 755 $(CURDIR)/debian/qgis.sh $(CURDIR)/debian/qgis/usr/bin/qgis_process
override_dh_missing:
dh_missing --fail-missing
override_dh_install:
dh_install --autodest
override_dh_installchangelogs:
dh_installchangelogs ChangeLog
override_dh_installman:
cp qgis.1 qgis.bin.1
2017-02-20 11:27:29 +01:00
dh_installman -pqgis qgis.1 qgis.bin.1
override_dh_installmime:
dh_installmime -pqgis
2016-05-27 23:41:01 +02:00
override_dh_python3:
dh_python3
dh_python3 usr/share/qgis/grass/scripts
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
dh_sip3 -ppython3-qgis
override_dh_compress:
dh_compress --exclude=pdf
override_dh_makeshlibs:
ifneq (,$(WITH_ORACLE))
dh_makeshlibs -Xqgis-plugin-grass -Xlibqgis-customwidgets -Xqgis-provider-oracle -- -c0 -v$(QGIS_VERSION)
else
dh_makeshlibs -Xqgis-plugin-grass -Xlibqgis-customwidgets -- -c0 -v$(QGIS_VERSION)
endif
override_dh_shlibdeps:
ifneq (,$(WITH_ORACLE))
dh_shlibdeps -l/usr/lib/$(GRASS)/lib -l$(ORACLE_LIBDIR)
else
dh_shlibdeps -l/usr/lib/$(GRASS)/lib
endif
override_dh_strip:
dh_strip --dbg-package=qgis-dbg
debian packaging updates (squashed pull request #9254) 1b1e60d2a5 Use libqscintilla2-qt5-dev instead of virtual package. dd5003e1e4 Use "-noawait" variant for qgis-crssync trigger. d0e156e44e Remove obsolete diversions in qgis.preinst, but don't rename. 25a677e1ff Update watch file to use HTTPS. 7ca6a995eb Update registration URL in upstream metadata. 789d4fb56b Don't recommend liblwgeom-dev, it shouldn't be used by other projects. 7d3844047a Update packaging for Python 3. bb0017c793 Remove documentation outside /usr/share/doc from non-doc packages. cd7f1fd9b4 Fix FTBFS when building only arch:any packages (with -B). 03e4d0b6e1 Add -DNDEBUG flag for non-debug builds. c6cb002fc9 Include percentage of started edges in ninja output. f86761e712 Set -j & -v ninja options based on DEB_BUILD_OPTIONS. 3b07a54606 Use pkg-info.mk variables instead of dpkg-parsechangelog output. 5e18a74d8d Align paths in links file to improve readability. 2bd52f39b0 Don't use libjs-jquery for Doxygen docs. 3b9e875bbf Simplify python-qgis.install with common path to match all files. 96d5f202a3 Don't rely on QT_PLUGINS_DIR placeholder in template files. 74c3750741 Update copyright file. 1b596f5c21 Don't rely on QGIS_ABI placeholder in template files. aaabb94e70 Simplify lintian overrides. 38fad4d44c Don't rely on GRASSVER placeholder in template files. 9c772d174f Override dh_gencontrol to set GRASS ABI dependency with substvars. 8b9c14ba76 Reorder paths in install files. c518e14d1b Reorder (build) dependencies & remove duplicates.
2019-02-23 14:01:58 +01:00
override_dh_gencontrol:
dh_gencontrol -- -Vgrass:Depends="grass$(GRASSABI)"