source: subsurface/Readme.ubuntu

Mtestandroid_testdcDownloadforTomazforatdotdegitMergegitdebuggitpicturesiosmergeKirigamiPortpictimeshiftresolutionIndependencespinnertestTomaztestingv4.4-branchv4.5-branch
Last change on this file was 0ca8c54d, checked in by Dirk Hohndel <dirk@…>, 3 years ago

Update Readme.ubuntu

Signed-off-by: Dirk Hohndel <dirk@…>

  • Property mode set to 100644
File size: 3.1 KB
Line 
1Building Ubuntu packages of Subsurface
2--------------------------------------
3
4These steps describe roughly, how one can create Ubuntu packages out of
5Subsurface and publish them in Launchpad.
6
7We have a more complete shell script now under packaging/ubuntu, but the
8details in this file are still helpful to understand how all this works.
9
10You need quite a bit of packages installed for all this to work, but that is
11not described here. The contents of control, rules and other files edited can
12be based on the files under packaging/ubuntu/debian.  GPG is used to sign the
13changes file and SSH keys are required for the upload to Launchpad.
14
15---8<---
16# First we need to create a source directory and have the sources of the
17# latest version there
18
19version="4.2.90"
20mkdir subsurface-${version}
21cd subsurface-git
22git archive --format=tar v${version} | tar -xf - -C ../subsurface${version}/
23cd ../subsurface${version}
24
25# Then we create the source tarball and "Debianize" the sources with
26# dh_make
27
28dh_make --email miika.turkia@gmail.com -c gpl2 --createorig --single
29
30# Next step is to fix the control files
31
32rm debian/*.ex debian/*.EX debian/README.*
33vi debian/{changelog,copyright,control,rules}
34
35# Generating the build instructions that can be uploaded to Launchpad
36# (or tested first locally with pbuilder). Following assumes that the
37# version initially is "trusty"
38
39debuild -S
40
41# To test locally, one needs pbuilder set up properly
42
43sudo pbuilder build subsurface_${version}-0exp1ppa1~trusty.dsc
44
45# Once everything is working properly, create the other supported
46# releases and upload them all to Launchpad.
47
48sed -i 's/trusty/utopic/g' debian/changelog && debuild  -S
49sed -i 's/utopic/precise/g' debian/changelog && debuild  -S
50
51dput ppa:subsurface/subsurface-beta subsurface_${version}-0exp1ppa1~trusty_source.changes
52dput ppa:subsurface/subsurface-beta subsurface_${version}-0exp1ppa1~utopic_source.changes
53dput ppa:subsurface/subsurface-beta subsurface_${version}-0exp1ppa1~precise_source.changes
54---8<---
55
56Current dependencies are the following:
57
58Build-Depends: debhelper (>= 8.0.0), cmake, libdivecomputer-dev (>=
590.4.2), cdbs, libqt4-dev, qt4-qmake, libxml2-dev, libxslt1-dev,
60zlib1g-dev, libusb-1.0-0-dev, libzip-dev, libmarble-dev, libsqlite3-dev,
61libqtwebkit-dev, pkg-config, libgit2-dev, asciidoc
62
63Depends: ${shlibs:Depends}, ${misc:Depends}, libdivecomputer0 (>= 0.4.2)
64
65And the rules file contains only the following includes:
66
67include /usr/share/cdbs/1/rules/debhelper.mk
68include /usr/share/cdbs/1/class/qmake.mk
69
70
71Building Ubuntu packages of libdivecomputer
72-------------------------------------------
73
74Building libdivecomputer is mostly the same as building Subsurface.
75However, one must remove the line "usr/share/pkgconfig/*" from
76debian/libdivecomputer-dev.install. Also "debianizing" the sources
77differs and is done with the following command:
78
79dh_make --email miika.turkia@gmail.com -c gpl2 --createorig --library
80
81
82Including libgit2
83-----------------
84
85It should suffice for us to just copy the libgit2 package from
86repository to another on Launchpad. Precise is the only release that
87does not have libgit2 available, for the other releases we can use the
88distribution provided version.
Note: See TracBrowser for help on using the repository browser.