summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2014-12-10 12:39:27 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-12-10 13:08:35 -0800
commitc9f927d5474cc839eb61bbc2c36469d7eb1a6d19 (patch)
tree456919259779501ee583b0f4bfd112071270d033
parent4ee59bc1b707b89ff96caa1d96fc95e7acfd8b88 (diff)
downloadsubsurface-c9f927d5474cc839eb61bbc2c36469d7eb1a6d19.tar.gz
Updates to Ubuntu package building process
Marble can't be static, so instead we build a shared library but give it a different name so it can be installed in parallel with the "real" libmarblewidget.so. Also make sure that the correct libusb is installed so that Atomics Aquatics dive computers are supported. Fixes #782 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--packaging/ubuntu/debian/control2
-rwxr-xr-xpackaging/ubuntu/debian/rules9
-rw-r--r--packaging/ubuntu/make-package.sh2
-rw-r--r--subsurface-configure.pri14
-rw-r--r--subsurface-install.pri6
5 files changed, 19 insertions, 14 deletions
diff --git a/packaging/ubuntu/debian/control b/packaging/ubuntu/debian/control
index 874f25c2d..679679ba2 100644
--- a/packaging/ubuntu/debian/control
+++ b/packaging/ubuntu/debian/control
@@ -17,7 +17,7 @@ Build-Depends: asciidoc,
automake,
cmake,
dpkg-dev (>= 1.16.1.1),
- libusb-dev,
+ libusb-1.0-0-dev,
dh-autoreconf,
libz-dev,
libssl-dev,
diff --git a/packaging/ubuntu/debian/rules b/packaging/ubuntu/debian/rules
index 76ac5b98a..a4c51d912 100755
--- a/packaging/ubuntu/debian/rules
+++ b/packaging/ubuntu/debian/rules
@@ -21,11 +21,15 @@ override_dh_auto_configure:
(cd libdivecomputer ; autoreconf --install ; ./configure ; make -j8 )
(mkdir libgit2/build ; cd libgit2/build ; cmake -DBUILD_SHARED_LIBS=OFF .. ; sed -i 's/.so$/.a/' CMakeCache.txt ; make -j8 )
(mkdir marble-build ; cd marble-build ; \
- cmake -DQTONLY=ON -DBUILD_MARBLE_APPS=OFF -DBUILD_MARBLE_EXAMPLES=OFF -DBUILD_MARBLE_TESTS=OFF -DBUILD_MARBLE_TOOLS=OFF -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTING=OFF -DWITH_DESIGNER_PLUGIN=OFF -DBUILD_WITH_DBUS=OFF ../marble-source ; \
+ cmake -DQTONLY=ON -DQT5BUILD=ON \
+ -DBUILD_MARBLE_APPS=OFF -DBUILD_MARBLE_EXAMPLES=OFF \
+ -DBUILD_MARBLE_TESTS=OFF -DBUILD_MARBLE_TOOLS=OFF \
+ -DBUILD_TESTING=OFF -DWITH_DESIGNER_PLUGIN=OFF \
+ -DBUILD_WITH_DBUS=OFF ../marble-source ; \
make -j8 ; \
mkdir include ; cd include ; for i in `find ../../marble-source -name \*.h` ; do ln -s $$i . ; echo ln -s $$i . ; done ; \
ln -s . marble )
- qmake LIBDCDEVEL=./libdivecomputer LIBGIT2DEVEL=./libgit2 LIBGIT2STATIC=1 LIBMARBLEDEVEL=./marble-build LIBMARBLESTATIC=1 subsurface.pro
+ qmake LIBDCDEVEL=./libdivecomputer LIBGIT2DEVEL=./libgit2 LIBGIT2STATIC=1 LIBMARBLEDEVEL=./marble-build SPECIAL_MARBLE_PREFIX=1 subsurface.pro
override_dh_installchangelogs:
dh_installchangelogs
@@ -34,4 +38,3 @@ override_dh_installchangelogs:
mkdir -p debian/subsurface/usr/share/doc/subsurface
cp Documentation/user-manual.txt debian/subsurface/usr/share/doc/subsurface/
cp Documentation/user-manual.html debian/subsurface/usr/share/doc/subsurface/html
-
diff --git a/packaging/ubuntu/make-package.sh b/packaging/ubuntu/make-package.sh
index 22c0998e2..423e9eb62 100644
--- a/packaging/ubuntu/make-package.sh
+++ b/packaging/ubuntu/make-package.sh
@@ -17,7 +17,7 @@ fi
mkdir subsurface_$VERSION
(cd subsurface ; tar cf - . ) | (cd subsurface_$VERSION ; tar xf - )
cd subsurface_$VERSION
-rm -rf .git libdivecomputer/.git libgit2/.git
+rm -rf .git libdivecomputer/.git libgit2/.git marble-source/.git
echo $GITVERSION > .gitversion
dh_make --email dirk@hohndel.org -c gpl2 --createorig --single --yes -p subsurface_$VERSION
diff --git a/subsurface-configure.pri b/subsurface-configure.pri
index 5f8be2ba4..d2092d3ac 100644
--- a/subsurface-configure.pri
+++ b/subsurface-configure.pri
@@ -156,18 +156,14 @@ contains(QMAKE_PLATFORM, android): DEFINES += NO_MARBLE NO_USERMANUAL NO_PRINTIN
!isEmpty(LIBMARBLEDEVEL) {
# find it next to our sources
INCLUDEPATH += $$LIBMARBLEDEVEL/include
- isEmpty(LIBMARBLESTATIC) {
- LIBS += -L$$LIBMARBLEDEVEL/lib
- }
+ LIBS += -L$$LIBMARBLEDEVEL/lib
}
!contains(DEFINES, NO_MARBLE) {
win32: CONFIG(debug, debug|release): LIBS += -lmarblewidgetd
- else: {
- isEmpty(LIBMARBLESTATIC) {
- LIBS += -lmarblewidget
- } else {
- LIBS += $$LIBMARBLEDEVEL/src/lib/marble/libmarblewidget.a
- }
+ else: !isEmpty(SPECIAL_MARBLE_PREFIX) {
+ LIBS += -L$$LIBMARBLEDEVEL/src/lib/marble -lssrfmarblewidget
+ } else {
+ LIBS += -lmarblewidget
}
}
diff --git a/subsurface-install.pri b/subsurface-install.pri
index d3985ace1..8125d346f 100644
--- a/subsurface-install.pri
+++ b/subsurface-install.pri
@@ -165,6 +165,11 @@ mac {
target.path = /$(EXPORT_BINDIR)
target.files = $$TARGET
+ !isEmpty(SPECIAL_MARBLE_PREFIX) {
+ ourmarble.path = /$(prefix)/lib
+ ourmarble.files = marble-build/src/lib/marble/libssrfmarblewidget.so*
+ }
+
desktop.path = /$(EXPORT_DESKTOPDIR)
desktop.files = $$DESKTOP_FILE
manpage.path = /$(EXPORT_MANDIR)
@@ -183,6 +188,7 @@ mac {
translation.CONFIG += no_check_exist
INSTALLS += target desktop manpage doc marbledir translation icon theme
+ !isEmpty(SPECIAL_MARBLE_PREFIX) : INSTALLS += ourmarble
install.target = install
}
!isEmpty(TRANSLATIONS) {