Skip to content

Commit

Permalink
debian packages
Browse files Browse the repository at this point in the history
* remove outdated conditionals
* switch to ninja
  • Loading branch information
jef-n committed Oct 6, 2016
1 parent 98c0da9 commit b4f3126
Show file tree
Hide file tree
Showing 6 changed files with 81 additions and 63 deletions.
4 changes: 2 additions & 2 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
qgis (2.99.0) UNRELEASED; urgency=medium

* New development version 2.999 after branch of 2.16
* move to qt5/python3
* move to qt5/python3/ninja

-- Jürgen E. Fischer <jef@norbit.de> Fri, 08 Jul 2016 14:12:36 +0200
-- Jürgen E. Fischer <jef@norbit.de> Thu, 06 Oct 2016 13:30:42 +0200

qgis (2.16.0) unstable; urgency=medium

Expand Down
3 changes: 1 addition & 2 deletions debian/compat
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
#stretch sid jessie trusty xenial#9
#jessie#8
9
94 changes: 51 additions & 43 deletions debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -6,35 +6,41 @@ Priority: optional
Build-Depends:
bison,
cmake (>= 2.8),
debhelper (>= 7),
debhelper (>= 9),
dh-python,
flex,
grass-dev,
libexpat1-dev,
libfcgi-dev,
libgdal1-dev | libgdal-dev,
libgdal-dev (>= 1.11),
libgsl-dev,
libgeos-dev (>= 3.0.0),
libgsl0-dev,
libpq-dev,
libproj-dev,
qtbase5-dev,
libqca-qt5-2-dev,
libqwt-qt5-dev,
libspatialite-dev,
libsqlite3-dev,
libspatialindex-dev,
qtbase5-dev, qttools5-dev-tools, qttools5-dev, qtscript5-dev, qtpositioning5-dev,
libqt5svg5-dev, libqt5xmlpatterns5-dev, libqt5webkit5-dev, libqt5opengl5-dev, libqt5sql5-sqlite, libqt5scintilla2-dev,
libqwt-qt5-dev, libqca-qt5-2-dev, libqca-qt5-2-plugins,
python3-dev, python3-all-dev, python3-sip, python3-sip-dev,
pyqt5-dev-tools, pyqt5-dev, pyqt5.qsci-dev,
python3-pyqt5, python3-pyqt5.qsci, python3-pyqt5.qtsql, python3-pyqt5.qtsvg,
python3-gdal,
python3-nose2, python3-yaml, python3-mock, python3-psycopg2, python3-future, python3-termcolor,
pkg-config,
pyqt5-dev,
python3-dev,
python3-all-dev,
python3-sip,
python3-sip-dev,
python3-pyqt5,
git,
txt2tags,
doxygen
doxygen,
gdal-bin,
spawn-fcgi, lighttpd, poppler-utils,
graphviz,
xvfb, xauth,
xfonts-base, xfonts-100dpi, xfonts-75dpi, xfonts-scalable,
libosgearth-dev,
locales, ca-certificates, ninja-build
Build-Conflicts: libqgis-dev, qgis-dev
Standards-Version: 3.8.4
XS-Python-Version: current
Standards-Version: 3.9.7
Vcs-Browser: https://github.com/qgis/QGIS/
Vcs-Git: https://github.com/qgis/QGIS.git
Homepage: http://qgis.org/
Expand Down Expand Up @@ -64,28 +70,30 @@ Description: Geographic Information System (GIS)
Package: qgis-common
Architecture: all
Depends:
${misc:Depends}
libjs-jquery,
libjs-leaflet,
${misc:Depends}
Description: QGIS - architecture-independent data
QGIS is a Geographic Information System (GIS) which manages, analyzes and
display databases of geographic information.
.
This package contains architecture-independent supporting data files for use
with QGIS.

Package: libqgis-app3.0.0
Package: libqgis-app2.99.0
Architecture: any
Section: libs
Depends:
${shlibs:Depends},
${misc:Depends}
Replaces: libqgis{QGIS_ABI}
Replaces: libqgis2.99.0
Description: QGIS - shared app library
QGIS is a Geographic Information System (GIS) which manages, analyzes and
display databases of geographic information.
.
This package contains the shared app library.

Package: libqgis-core3.0.0
Package: libqgis-core2.99.0
Architecture: any
Section: libs
Depends:
Expand All @@ -97,7 +105,7 @@ Description: QGIS - shared core library
.
This package contains the shared core library.

Package: libqgis-gui3.0.0
Package: libqgis-gui2.99.0
Architecture: any
Section: libs
Depends:
Expand All @@ -109,7 +117,7 @@ Description: QGIS - shared gui library
.
This package contains the shared gui library.

Package: libqgis-analysis3.0.0
Package: libqgis-analysis2.99.0
Architecture: any
Section: libs
Depends:
Expand All @@ -121,7 +129,7 @@ Description: QGIS - shared analysis library
.
This package contains the shared analysis library.

Package: libqgis-networkanalysis3.0.0
Package: libqgis-networkanalysis2.99.0
Architecture: any
Section: libs
Depends:
Expand All @@ -133,7 +141,7 @@ Description: QGIS - shared network analysis library
.
This package contains the shared network analysis library.

Package: libqgisgrass3.0.0
Package: libqgisgrass7-2.99.0
Architecture: any
Section: libs
Depends:
Expand All @@ -145,13 +153,13 @@ Description: QGIS - shared grass library
.
This package contains the shared grass library.

Package: libqgispython3.0.0
Package: libqgispython2.99.0
Architecture: any
Section: libs
Depends:
${shlibs:Depends},
${misc:Depends}
Replaces: libqgis3.0.0
Replaces: libqgis2.99.0
Description: QGIS - shared Python library
QGIS is a Geographic Information System (GIS) which manages, analyzes and
display databases of geographic information.
Expand All @@ -170,7 +178,7 @@ Description: QGIS custom widgets for Qt Designer
.
This package contains a library to use specific QGIS widgets in Qt Designer.

Package: libqgis-server{QGIS_ABI}
Package: libqgis-server2.99.0
Architecture: any
Depends:
${shlibs:Depends},
Expand All @@ -187,18 +195,18 @@ Section: libdevel
Depends:
grass-dev,
libexpat1-dev,
libgdal1-dev,
libgdal-dev (>= 1.11),
libgeos-dev (>= 3.0.0),
libgsl0-dev,
libgsl-dev,
libpq-dev,
libproj-dev,
libqgis-app3.0.0 (= ${binary:Version}),
libqgis-core3.0.0 (= ${binary:Version}),
libqgis-gui3.0.0 (= ${binary:Version}),
libqgis-analysis3.0.0 (= ${binary:Version}),
libqgis-networkanalysis3.0.0 (= ${binary:Version}),
libqgisgrass7.0.4-3.0.0 (= ${binary:Version}),
libqgispython3.0.0 (= ${binary:Version}),
libqgis-app2.99.0 (= ${binary:Version}),
libqgis-core2.99.0 (= ${binary:Version}),
libqgis-gui2.99.0 (= ${binary:Version}),
libqgis-analysis2.99.0 (= ${binary:Version}),
libqgis-networkanalysis2.99.0 (= ${binary:Version}),
libqgisgrass7-2.99.0 (= ${binary:Version}),
libqgispython2.99.0 (= ${binary:Version}),
libsqlite3-dev,
qtbase5-dev, python3-pyqt5, qttools5-dev,
libqt5svg5-dev, pyqt5.qsci-dev,
Expand Down Expand Up @@ -229,13 +237,13 @@ Architecture: any
Section: debug
Priority: extra
Depends:
libqgis-app{QGIS_ABI} (= ${binary:Version}),
libqgis-core{QGIS_ABI} (= ${binary:Version}),
libqgis-gui{QGIS_ABI} (= ${binary:Version}),
libqgis-analysis{QGIS_ABI} (= ${binary:Version}),
libqgis-networkanalysis{QGIS_ABI} (= ${binary:Version}),
libqgisgrass{GRASSVER}-{QGIS_ABI} (= ${binary:Version}),
libqgispython{QGIS_ABI} (= ${binary:Version}),
libqgis-app2.99.0 (= ${binary:Version}),
libqgis-core2.99.0 (= ${binary:Version}),
libqgis-gui2.99.0 (= ${binary:Version}),
libqgis-analysis2.99.0 (= ${binary:Version}),
libqgis-networkanalysis2.99.0 (= ${binary:Version}),
libqgisgrass7-2.99.0 (= ${binary:Version}),
libqgispython2.99.0 (= ${binary:Version}),
${misc:Depends}
Suggests: gdb
Description: QGIS - debugging symbols
Expand Down Expand Up @@ -304,7 +312,7 @@ Depends:
python3-six,
python3-yaml,
python3-future,
libqgispython3.0.0,
libqgispython2.99.0,
${shlibs:Depends},
${python:Depends},
${misc:Depends},
Expand Down
16 changes: 7 additions & 9 deletions debian/control.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ Priority: optional
Build-Depends:
bison,
cmake (>= 2.8),
#sid stretch jessie trusty xenial# debhelper (>= 9),
#sid stretch jessie trusty xenial# dh-python,
debhelper (>= 9),
dh-python,
flex,
grass-dev,
libexpat1-dev,
libfcgi-dev,
#sid stretch jessie trusty xenial# libgdal-dev (>= 1.10.1-0~),
#jessie trusty# libgsl0-dev,
libgdal-dev (>= 1.11),
#trusty# libgsl0-dev,
#sid stretch xenial# libgsl-dev,
libgeos-dev (>= 3.0.0),
libpq-dev,
Expand All @@ -40,12 +40,10 @@ Build-Depends:
xfonts-base, xfonts-100dpi, xfonts-75dpi, xfonts-scalable,
#sid# libosgearth-dev,
#oracle# oracle-instantclient12.1-devel,
locales, ca-certificates
locales, ca-certificates, ninja-build
Build-Conflicts: libqgis-dev, qgis-dev
#sid stretch xenial#Standards-Version: 3.9.7
#jessie#Standards-Version: 3.9.6
#trusty#Standards-Version: 3.8.4
#sid stretch jessie#X-Python-Version: >= 2.7, << 2.8
#trusty xenial#XS-Python-Version: current
Vcs-Browser: https://github.com/qgis/QGIS/
Vcs-Git: https://github.com/qgis/QGIS.git
Expand Down Expand Up @@ -202,9 +200,9 @@ Section: libdevel
Depends:
grass-dev,
libexpat1-dev,
#sid stretch jessie trusty xenial# libgdal-dev (>= 1.10.1-0~),
libgdal-dev (>= 1.11),
libgeos-dev (>= 3.0.0),
#jessie trusty# libgsl0-dev,
#trusty# libgsl0-dev,
#sid stretch xenial# libgsl-dev,
libpq-dev,
libproj-dev,
Expand Down
18 changes: 12 additions & 6 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ endif

QT_PLUGINS_DIR = usr/lib/$(DEB_BUILD_MULTIARCH)/qt5/plugins

ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"stretch xenial"))
ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"trusty stretch xenial"))
DISTRIBUTION := sid
endif

Expand All @@ -56,6 +56,7 @@ GRASS=grass$(subst .,,$(shell pkg-config --modversion grass|cut -d. -f1,2))
GRASSVER=$(subst .,,$(shell pkg-config --modversion grass|cut -d. -f1))

CMAKE_OPTS := \
-G Ninja \
-DBUILDNAME=$(DEB_BUILD_NAME) \
-DCMAKE_VERBOSE_MAKEFILE=1 \
-DCMAKE_INSTALL_PREFIX=/usr \
Expand Down Expand Up @@ -84,7 +85,8 @@ CMAKE_OPTS := \
-DWITH_QSPATIALITE=TRUE \
-DWITH_PYSPATIALITE=TRUE \
-DQT_PLUGINS_DIR=$(QT_PLUGINS_DIR) \
-DPYTHON_LIBRARY=$(shell python3-config --ldflags | sed -e 's\#-L\(.*\) -L/usr/lib -l\([^ ]*\) .*$$\#\1/lib\2.so\#')
-DPYTHON_LIBRARY=$(shell python3-config --ldflags | sed -e 's\#-L\(.*\) -L/usr/lib -l\([^ ]*\) .*$$\#\1/lib\2.so\#') \
-DDOXYGEN_ON_DEMAND=TRUE

ifneq ($(SHA),)
CMAKE_OPTS += -DSHA=$(SHA)
Expand Down Expand Up @@ -136,7 +138,7 @@ endif
-DORACLE_INCLUDEDIR=$(ORACLE_INCLUDEDIR)
endif

ifneq (,$(findstring $(DISTRIBUTION),"sid stretch jessie"))
ifneq (,$(findstring $(DISTRIBUTION),"sid stretch"))
CMAKE_OPTS += -DSPATIALINDEX_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libspatialindex.so
endif

Expand All @@ -154,12 +156,10 @@ else
CMAKE_OPTS += -DENABLE_TESTS=TRUE
endif

ifneq (,$(findstring $(DISTRIBUTION),"jessie stretch trusty sid"))
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)
endif

ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
Expand Down Expand Up @@ -236,6 +236,12 @@ override_dh_clean: cleantemplates
override_dh_auto_configure:
dh_auto_configure -- $(CMAKE_OPTS)

override_dh_auto_build-arch:
ninja -C $(QGIS_BUILDDIR)

override_dh_auto_build-indep:
ninja -C $(QGIS_BUILDDIR) apidoc

override_dh_auto_test: test-stamp

test-stamp:
Expand All @@ -254,7 +260,7 @@ endif
touch test-stamp

override_dh_auto_install:
dh_auto_install
DESTDIR=$(CURDIR)/debian/tmp ninja -C $(QGIS_BUILDDIR) install

# remove unwanted files
$(RM) $(CURDIR)/debian/tmp/usr/share/qgis/doc/api/installdox
Expand Down
9 changes: 8 additions & 1 deletion doc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,14 @@ IF(WITH_APIDOC)
STRING(REPLACE ";" " " DOXYGEN_INPUT "${DOXYGEN_INPUT}")

CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake_templates/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
ADD_CUSTOM_TARGET(apidoc ALL DEPENDS ${QHP_FILES})

SET (DOXYGEN_ON_DEMAND FALSE CACHE BOOL "Determines whether the QGIS API doxygen documentation should be build on demand only")

IF(DOXYGEN_ON_DEMAND)
ADD_CUSTOM_TARGET(apidoc DEPENDS ${QHP_FILES})
ELSE(DOXYGEN_ON_DEMAND)
ADD_CUSTOM_TARGET(apidoc ALL DEPENDS ${QHP_FILES})
ENDIF(DOXYGEN_ON_DEMAND)
ADD_CUSTOM_COMMAND(
OUTPUT ${QHP_FILES}
DEPENDS ${DOXYGEN_FILES}
Expand Down

0 comments on commit b4f3126

Please sign in to comment.