Skip to content

Commit 40459c6

Browse files
committed
debian packageing update (grass6/7)
1 parent 4c57941 commit 40459c6

File tree

4 files changed

+98
-76
lines changed

4 files changed

+98
-76
lines changed

debian/changelog

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@ qgis (2.8.3-1) UNRELEASED; urgency=medium
22

33
* split grass provider off into a separate package.
44
* disable grass plugin on sid (because of GRASS7)
5+
* add ubuntu wily
56

6-
-- Jürgen E. Fischer <jef@norbit.de> Tue, 25 Aug 2015 21:47:32 +0200
7+
-- Jürgen E. Fischer <jef@norbit.de> Thu, 01 Oct 2015 14:11:17 +0200
78

89
qgis (2.8.3) UNRELEASED; urgency=medium
910

debian/compat.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
#sid jessie sid-oracle trusty utopic vivid#9
1+
#stretch sid jessie trusty utopic vivid wily#9
22
#wheezy jessie#8
33
#precise#7

debian/control.in

Lines changed: 59 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ Priority: optional
66
Build-Depends:
77
bison,
88
cmake (>= 2.8),
9-
#sid jessie wheezy saucy sid-oracle trusty utopic vivid# debhelper (>= 9),
9+
#sid stretch jessie wheezy saucy trusty utopic vivid wily# debhelper (>= 9),
1010
#precise# debhelper (>= 7),
1111
flex,
1212
grass-dev,
1313
libexpat1-dev,
1414
libfcgi-dev,
15-
#sid jessie sid-oracle trusty utopic vivid# libgdal-dev (>= 1.10.1-0~),
15+
#sid stretch jessie trusty utopic vivid wily# libgdal-dev (>= 1.10.1-0~),
1616
#precise# libgdal-dev (>= 1.9.0) | libgdal1-dev (<< 1.9.0),
1717
#saucy# libgdal-dev (>= 1.9.0),
1818
#wheezy# libgdal1-dev,
@@ -23,21 +23,23 @@ Build-Depends:
2323
libqt4-dev (>= 4.7.0),
2424
libqt4-opengl-dev,
2525
libqtwebkit-dev,
26-
#jessie wheezy# libqwt-dev,
27-
#sid sid-oracle precise saucy trusty utopic vivid# libqwt5-qt4-dev,
26+
#stretch jessie wheezy# libqwt-dev,
27+
#precise saucy trusty utopic vivid wily stretch sid# libqwt5-qt4-dev,
2828
libspatialite-dev,
2929
libsqlite3-dev,
3030
libspatialindex-dev,
3131
pkg-config,
3232
pyqt4-dev-tools,
3333
python-qscintilla2,
34+
python-qt4 (>= 4.1.0),
35+
python-qt4-dev,
3436
#precise saucy wheezy# python,
3537
#precise saucy# python-central (>= 0.5),
3638
#saucy wheezy# python-dev,
3739
#saucy# libpython2.7-dev,
38-
#sid jessie sid-oracle trusty utopic vivid# python-all (>= 2.6.6-3~), python-all-dev (>= 2.6.6-3~),
39-
#sid jessie wheezy precise saucy sid-oracle trusty utopic vivid# python-qt4 (>= 4.1.0), python-qt4-dev,
40-
#sid# pyqt4.qsci-dev,
40+
#sid stretch jessie trusty utopic vivid wily# python-all (>= 2.6.6-3~), python-all-dev (>= 2.6.6-3~),
41+
#sid stretch jessie# pyqt4.qsci-dev,
42+
#sid stretch jessie trusty utopic vivid wily# python-pyspatialite,
4143
python-sip (>= 4.5.0),
4244
python-sip-dev (>= 4.5.0),
4345
libosgearth-dev,
@@ -49,14 +51,14 @@ Build-Depends:
4951
txt2tags,
5052
xvfb, xauth,
5153
xfonts-base, xfonts-100dpi, xfonts-75dpi, xfonts-scalable,
52-
#sid-oracle# oracle-instantclient11.2-devel,
54+
#oracle# oracle-instantclient11.2-devel,
5355
spawn-fcgi, lighttpd, poppler-utils, locales
5456
Build-Conflicts: libqgis-dev, qgis-dev
55-
#sid jessie sid-oracle vivid#Standards-Version: 3.9.6
57+
#sid stretch jessie vivid wily#Standards-Version: 3.9.6
5658
#wheezy#Standards-Version: 3.9.3
5759
#precise saucy trusty utopic#Standards-Version: 3.8.4
58-
#sid jessie sid-oracle#X-Python-Version: >= 2.7, << 2.8
59-
#wheezy precise saucy trusty utopic vivid#XS-Python-Version: current
60+
#sid stretch jessie#X-Python-Version: >= 2.7, << 2.8
61+
#wheezy precise saucy trusty utopic vivid wily#XS-Python-Version: current
6062
Vcs-Browser: https://github.com/qgis/QGIS/
6163
Vcs-Git: https://github.com/qgis/QGIS.git
6264
Homepage: http://qgis.org/
@@ -69,7 +71,7 @@ Depends:
6971
qgis-providers (= ${binary:Version}),
7072
qgis-common (= ${source:Version})
7173
Recommends:
72-
#!sid# qgis-plugin-grass,
74+
#grass6# qgis-plugin-grass,
7375
qgis-provider-grass,
7476
qgis-plugin-globe,
7577
python-qgis
@@ -213,7 +215,7 @@ Section: libdevel
213215
Depends:
214216
grass-dev,
215217
libexpat1-dev,
216-
#sid jessie sid-oracle trusty utopic vivid# libgdal-dev (>= 1.10.1-0~),
218+
#sid stretch jessie trusty utopic vivid wily# libgdal-dev (>= 1.10.1-0~),
217219
#precise# libgdal-dev (>= 1.9.0) | libgdal1-dev (<< 1.9.0),
218220
#saucy# libgdal-dev (>= 1.9.0),
219221
#wheezy# libgdal1-dev,
@@ -251,45 +253,45 @@ Depends:
251253
qgis (= ${binary:Version}),
252254
${shlibs:Depends},
253255
${misc:Depends}
254-
#sid#Breaks: qgis-plugin-grass
255-
#sid#Replaces: qgis-plugin-grass
256+
#grass7#Breaks: qgis-plugin-grass
257+
#grass7#Replaces: qgis-plugin-grass
256258
Description: GRASS plugin for QGIS
257259
QGIS is a Geographic Information System (GIS) which manages, analyzes and
258260
display databases of geographic information.
259261
.
260262
This provider enables GRASS data access in QGIS.
261263

262-
#!sid#Package: qgis-plugin-grass
263-
#!sid#Architecture: any
264-
#!sid#Depends:
265-
#!sid# qgis (= ${binary:Version}),
266-
#!sid# qgis-plugin-grass-common (= ${source:Version}),
267-
#!sid# qgis-provider-grass (= ${source:Version}),
268-
#!sid# ${shlibs:Depends},
269-
#!sid# ${misc:Depends},
270-
#!sid !precise# grass-core
271-
#precise# grass
272-
#!sid#Description: GRASS plugin for QGIS
273-
#!sid# QGIS is a Geographic Information System (GIS) which manages, analyzes and
274-
#!sid# display databases of geographic information.
275-
#!sid# .
276-
#!sid# This plugin enables GRASS data access in QGIS.
277-
#!sid#
278-
#!sid#Package: qgis-plugin-grass-common
279-
#!sid#Architecture: all
280-
#!sid#Depends:
281-
#jessie saucy trusty# python2.7,
282-
#wheezy precise# python,
283-
#!sid# ${misc:Depends}
284-
#!sid#Breaks: qgis-common (<< 1.5)
285-
#!sid#Replaces: qgis-common (<< 1.5)
286-
#!sid#Description: GRASS plugin for QGIS - architecture-independent data
287-
#!sid# QGIS is a Geographic Information System (GIS) which manages, analyzes and
288-
#!sid# display databases of geographic information.
289-
#!sid# .
290-
#!sid# This package contains architecture-independent supporting data files for use
291-
#!sid# with the QGIS GRASS plugin.
292-
#!sid#
264+
#grass6#Package: qgis-plugin-grass
265+
#grass6#Architecture: any
266+
#grass6#Depends:
267+
#grass6# qgis (= ${binary:Version}),
268+
#grass6# qgis-plugin-grass-common (= ${source:Version}),
269+
#grass6# qgis-provider-grass (= ${source:Version}),
270+
#grass6# ${shlibs:Depends},
271+
#grass6# ${misc:Depends},
272+
#grass6##!precise# grass-core (<< 7)
273+
#grass6##precise# grass (<< 7)
274+
#grass6#Description: GRASS plugin for QGIS
275+
#grass6# QGIS is a Geographic Information System (GIS) which manages, analyzes and
276+
#grass6# display databases of geographic information.
277+
#grass6# .
278+
#grass6# This plugin enables GRASS data access in QGIS.
279+
#grass6#
280+
#grass6#Package: qgis-plugin-grass-common
281+
#grass6#Architecture: all
282+
#grass6#Depends:
283+
#grass6##saucy trusty# python2.7,
284+
#grass6##precise# python,
285+
#grass6# ${misc:Depends}
286+
#grass6#Breaks: qgis-common (<< 1.5)
287+
#grass6#Replaces: qgis-common (<< 1.5)
288+
#grass6#Description: GRASS plugin for QGIS - architecture-independent data
289+
#grass6# QGIS is a Geographic Information System (GIS) which manages, analyzes and
290+
#grass6# display databases of geographic information.
291+
#grass6# .
292+
#grass6# This package contains architecture-independent supporting data files for use
293+
#grass6# with the QGIS GRASS plugin.
294+
#grass6#
293295
Package: qgis-plugin-globe
294296
Architecture: any
295297
Depends:
@@ -331,7 +333,7 @@ Depends:
331333
python-dateutil,
332334
python-tz,
333335
python-six,
334-
#sid jessie trusty utopic vivid sid-oracle# python-pyspatialite,
336+
#sid stretch jessie trusty utopic vivid wily# python-pyspatialite,
335337
libqgispython{QGIS_ABI},
336338
${shlibs:Depends},
337339
${python:Depends},
@@ -417,13 +419,13 @@ Description: QGIS API documentation
417419
.
418420
This package contains the QGIS API documentation.
419421

420-
#sid-oracle#Package: qgis-oracle-provider
421-
#sid-oracle#Architecture: any
422-
#sid-oracle#Depends: ${shlibs:Depends}, ${misc:Depends}
423-
#sid-oracle#Section: contrib/database
424-
#sid-oracle#Description: QGIS oracle provider
425-
#sid-oracle# QGIS is a Geographic Information System (GIS) which manages, analyzes and
426-
#sid-oracle# display databases of geographic information.
427-
#sid-oracle# .
428-
#sid-oracle# This package contains the QGIS oracle provider.
429-
#sid-oracle#
422+
#oracle#Package: qgis-oracle-provider
423+
#oracle#Architecture: any
424+
#oracle#Depends: ${shlibs:Depends}, ${misc:Depends}
425+
#oracle#Section: contrib/database
426+
#oracle#Description: QGIS oracle provider
427+
#oracle# QGIS is a Geographic Information System (GIS) which manages, analyzes and
428+
#oracle# display databases of geographic information.
429+
#oracle# .
430+
#oracle# This package contains the QGIS oracle provider.
431+
#oracle#

debian/rules

Lines changed: 36 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,20 @@ DEB_BUILD_MULTIARCH ?= $(shell dpkg-architecture -qDEB_BUILD_MULTIARCH)
1616
QT_PLUGIN_DIR = usr/lib/$(DEB_BUILD_MULTIARCH)/qt4/plugins
1717

1818
DEB_TEST_TARGET ?= Experimental
19+
BUILDDIR ?= debian/build
1920

2021
QGIS_VERSION=$(shell dpkg-parsechangelog | sed -ne 's/^Version: \(.*\)-.*/\1/p')
2122

2223
ifeq (,$(DISTRIBUTION))
2324
DISTRIBUTION := $(shell dpkg-parsechangelog --format rfc822 | sed -ne "s/^Distribution: //p")
2425
endif
2526

26-
ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"wheezy jessie precise trusty utopic vivid sid-oracle"))
27+
ifneq (,$(findstring -oracle,$(DISTRIBUTION)))
28+
DISTRIBUTION := $(subst -oracle,,$(DISTRIBUTION))
29+
WITH_ORACLE=1
30+
endif
31+
32+
ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"wheezy jessie stretch precise trusty utopic vivid wily"))
2733
DISTRIBUTION := sid
2834
endif
2935

@@ -40,12 +46,12 @@ QGIS_MINOR=$(shell sed -ne 's/SET(CPACK_PACKAGE_VERSION_MINOR "\([0-9]*\)")/\1/p
4046
QGIS_PATCH=$(shell sed -ne 's/SET(CPACK_PACKAGE_VERSION_PATCH "\([0-9]*\)")/\1/p' CMakeLists.txt)
4147
QGIS_ABI=$(QGIS_MAJOR).$(QGIS_MINOR).$(QGIS_PATCH)
4248
GRASS=grass$(subst .,,$(shell pkg-config --modversion grass|cut -d. -f1,2))
49+
GRASSVER=$(subst .,,$(shell pkg-config --modversion grass|cut -d. -f1))
4350

4451
CMAKE_OPTS := \
4552
-DBUILDNAME=$(DEB_BUILD_NAME) \
4653
-DCMAKE_VERBOSE_MAKEFILE=1 \
4754
-DCMAKE_INSTALL_PREFIX=/usr \
48-
-DGRASS_PREFIX=/usr/lib/$(GRASS) \
4955
-DBINDINGS_GLOBAL_INSTALL=TRUE \
5056
-DPEDANTIC=TRUE \
5157
-DWITH_QSPATIALITE=TRUE \
@@ -62,7 +68,9 @@ CMAKE_OPTS := \
6268
-DWITH_INTERNAL_PYGMENTS=FALSE \
6369
-DWITH_INTERNAL_DATEUTIL=FALSE \
6470
-DWITH_INTERNAL_PYTZ=FALSE \
65-
-DWITH_INTERNAL_SIX=FALSE
71+
-DWITH_INTERNAL_SIX=FALSE \
72+
-DWITH_GRASS=TRUE \
73+
-DGRASS_PREFIX=/usr/lib/$(GRASS)
6674

6775
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
6876
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
@@ -73,19 +81,23 @@ ifneq (,$(findstring $(DISTRIBUTION),"wheezy jessie sid precise"))
7381
CMAKE_OPTS += -DWITH_PYSPATIALITE=TRUE
7482
endif
7583

76-
ifneq (,$(findstring $(DISTRIBUTION),"sid sid-oracle"))
84+
ifneq (,$(findstring $(DISTRIBUTION),"sid stretch"))
7785
CMAKE_OPTS += -DPOSTGRES_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libpq.so
7886
endif
7987

80-
ifneq (,$(findstring $(DISTRIBUTION),"jessie trusty utopic vivid sid sid-oracle"))
88+
ifneq (,$(findstring $(DISTRIBUTION),"sid"))
89+
CMAKE_OPTS += -DGEOS_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libgeos_c.so
90+
endif
91+
92+
ifneq (,$(findstring $(DISTRIBUTION),"jessie stretch trusty utopic vivid wily sid"))
8193
CMAKE_OPTS += -DPYTHON_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libpython2.7.so
8294
endif
8395

8496
ifneq (,$(findstring -oracle,$(DISTRIBUTION)))
8597
CMAKE_OPTS += -DWITH_ORACLE=TRUE
8698
endif
8799

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

@@ -102,7 +114,7 @@ else
102114
CMAKE_OPTS += -DENABLE_TESTS=TRUE
103115
endif
104116

105-
ifneq (,$(findstring $(DISTRIBUTION),"wheezy jessie trusty sid sid-oracle"))
117+
ifneq (,$(findstring $(DISTRIBUTION),"wheezy jessie stretch trusty sid"))
106118
CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
107119
CFLAGS := $(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS)
108120
CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
@@ -128,22 +140,29 @@ ifneq (,$(findstring profile,$(DEB_BUILD_OPTIONS)))
128140
endif
129141

130142
# multi distribution support:
131-
# - remove prefixes for current distribution
132-
# - remove lines that exclude current distribution
133-
# - remove prefixes that exclude other distributions
143+
# - remove lines with applicable excludes
144+
# - remove prefixes with applicable includes
145+
# - remove prefixes with not applicable excludes
134146
# - remove remaining comments
135147

148+
CONTROL_EXPRESSIONS = $(DISTRIBUTION) grass$(GRASSVER)
149+
150+
ifneq (,$(WITH_ORACLE))
151+
CONTROL_EXPRESSIONS += oracle
152+
endif
153+
136154
define gentemplate
137155
$(2): $(1)
138156
sed -r \
139-
-e 's/^#(.* |)$(DISTRIBUTION)( .*|)#//' \
140-
-e '/^#(.* |)!$(DISTRIBUTION)( .*|)#/d' \
141-
-e 's/^#(.* |)![^ ]*( .*|)#//' \
157+
-e '/#(.+ |)!($(subst $(eval) ,|,$(CONTROL_EXPRESSIONS)))( .+|)#/d' \
158+
-e 's/#([^#]+ |)($(subst $(eval) ,|,$(CONTROL_EXPRESSIONS)))( [^#]+|)#//g' \
159+
-e 's/#([^#]+ |)![^#]+( [^#]*|)#//g' \
142160
-e '/^#/d' \
143161
-e "s/\{DEB_BUILD_GNU_TYPE\}/$(DEB_BUILD_GNU_TYPE)/g" \
144162
-e "s#\{QT_PLUGIN_DIR\}#$(QT_PLUGIN_DIR)#g" \
145163
-e "s/\{QGIS_ABI\}/$(QGIS_ABI)/g" \
146164
-e "s/\{GRASS\}/$(GRASS)/g" \
165+
-e "s/\{GRASSVER\}/$(GRASSVER)/g" \
147166
$$^ >$$@
148167

149168
templates:: $(2)
@@ -160,7 +179,7 @@ cleantemplates:
160179
$(MAKE) -f debian/rules debian/control debian/compat
161180

162181
binary binary-arch binary-indep build build-arch build-indep clean install install-arch install-indep:
163-
dh $@ --with python2 --parallel --builddirectory=debian/build
182+
dh $@ --with python2 --parallel --builddirectory=$(BUILDDIR)
164183

165184
override_dh_clean: cleantemplates
166185
dh_clean
@@ -169,7 +188,7 @@ override_dh_clean: cleantemplates
169188
-$(RM) $(CURDIR)/src/core/qgscontexthelp_texts.cpp
170189
-$(RM) $(CURDIR)/src/core/qgsexpression_texts.cpp
171190

172-
-$(RM) -r $(CURDIR)/debian/build/
191+
-$(RM) -r $(CURDIR)/$(BUILDDIR)/
173192

174193
override_dh_auto_configure: templates
175194
dh_auto_configure -- $(CMAKE_OPTS)
@@ -181,9 +200,9 @@ override_dh_auto_test:
181200
localedef -f UTF-8 -i en_US ./debian/tmp/locale/en_US.UTF-8/
182201
-LOCPATH=$(CURDIR)/debian/tmp/locale/ \
183202
LC_ALL=en_US.UTF-8 \
184-
LD_LIBRARY_PATH=$(CURDIR)/debian/build/output/lib:$(LD_LIBRARY_PATH) \
203+
LD_LIBRARY_PATH=$(CURDIR)/$(BUILDDIR)/output/lib:$(LD_LIBRARY_PATH) \
185204
PATH=/usr/sbin:$(PATH) \
186-
$(TESTMAKE) -C debian/build $(DEB_TEST_TARGET)
205+
$(TESTMAKE) -C $(BUILDDIR) $(DEB_TEST_TARGET)
187206
else
188207
override_dh_auto_test:
189208
@echo Skipping tests.

0 commit comments

Comments
 (0)