Merge lp:~michihenning/unity-scopes-api/bileto-fix into lp:unity-scopes-api

Proposed by Marcus Tomlinson
Status: Merged
Approved by: Marcus Tomlinson
Approved revision: 367
Merged at revision: 363
Proposed branch: lp:~michihenning/unity-scopes-api/bileto-fix
Merge into: lp:unity-scopes-api
Prerequisite: lp:unity-scopes-api/staging
Diff against target: 196 lines (+50/-45)
9 files modified
CMakeLists.txt (+23/-15)
HACKING (+17/-16)
debian/QT-VERSION.MAJOR (+0/-1)
debian/QT-VERSION.MICRO (+0/-1)
debian/QT-VERSION.MINOR (+0/-1)
debian/VERSION.MAJOR (+0/-1)
debian/VERSION.MICRO (+0/-1)
debian/VERSION.MINOR (+0/-1)
debian/bileto_pre_release_hook (+10/-8)
To merge this branch: bzr merge lp:~michihenning/unity-scopes-api/bileto-fix
Reviewer Review Type Date Requested Status
Marcus Tomlinson (community) Approve
Review via email: mp+290561@code.launchpad.net

Commit message

Fixed incorrect generation of Replaces: and Conflicts: entries in debian/control for xenial.
Fixed incorrect library soname for vivid.

Description of the change

Fixed incorrect generation of Replaces: and Conflicts: entries in debian/control for xenial.
Fixed incorrect library soname for vivid.

To post a comment you must log in.
Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

Just tested this on the phone and looks good. Thanks Michi!

review: Approve
Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

I need to re-test this

review: Needs Information
Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

Looks good

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2016-04-01 00:11:19 +0000
3+++ CMakeLists.txt 2016-04-01 00:11:19 +0000
4@@ -115,7 +115,7 @@
5 message(WARNING "Cannot find dos2unix: formatcode target will not be available")
6 else()
7 # Some time after clang-format-3.6, someone finally decided to install the versioned
8- # /usr/bin/clang-format binary name as /usr/bin/clang-format (without out version suffix).
9+ # /usr/bin/clang-format binary name as /usr/bin/clang-format (without the version suffix).
10 find_program(CLANG_FORMAT_COMMAND NAMES clang-format clang-format-3.6 clang-format-3.5)
11 if (NOT CLANG_FORMAT_COMMAND)
12 message(WARNING "Cannot find clang-format >= clang-format-3.5: formatcode target will not be available")
13@@ -218,26 +218,34 @@
14 set(UNITY_SCOPES_LIB unity-scopes)
15 set(UNITY_SCOPES_QT_LIB unity-scopes-qt)
16
17+set(DEBIAN_DIR ${CMAKE_SOURCE_DIR}/debian)
18+
19 # Set versions for libunity-scopes.
20-set(DEBIAN_DIR ${CMAKE_SOURCE_DIR}/debian)
21-file(READ ${DEBIAN_DIR}/VERSION.MAJOR UNITY_SCOPES_MAJOR)
22-string(STRIP ${UNITY_SCOPES_MAJOR} UNITY_SCOPES_MAJOR)
23-file(READ ${DEBIAN_DIR}/VERSION.MINOR UNITY_SCOPES_MINOR)
24-string(STRIP ${UNITY_SCOPES_MINOR} UNITY_SCOPES_MINOR)
25-file(READ ${DEBIAN_DIR}/VERSION.MICRO UNITY_SCOPES_MICRO)
26-string(STRIP ${UNITY_SCOPES_MICRO} UNITY_SCOPES_MICRO)
27+file(READ ${DEBIAN_DIR}/VERSION version)
28+string(REGEX MATCHALL "[0-9]+" version_list ${version})
29+list(GET version_list 0 UNITY_SCOPES_MAJOR)
30+list(GET version_list 1 UNITY_SCOPES_MINOR)
31+list(GET version_list 2 UNITY_SCOPES_MICRO)
32
33 set(UNITY_SCOPES_MAJOR_MINOR ${UNITY_SCOPES_MAJOR}.${UNITY_SCOPES_MINOR})
34 set(UNITY_SCOPES_FULL_VERSION ${UNITY_SCOPES_MAJOR_MINOR}.${UNITY_SCOPES_MICRO})
35-set(UNITY_SCOPES_SOVERSION ${UNITY_SCOPES_MAJOR_MINOR})
36+
37+execute_process(COMMAND lsb_release -c -s OUTPUT_VARIABLE SERIES)
38+string(STRIP ${SERIES} SERIES)
39+if (${SERIES} STREQUAL "vivid")
40+ # For backward compatibility. On Vivid, the soname started counting at 3: libunity-scopes.so.3.
41+ math(EXPR UNITY_SCOPES_SOVERSION "${UNITY_SCOPES_MINOR} + 3")
42+else()
43+ # For Wily and later, the soname is libunity-scopes.so.<maj>.<min>, e.g. libunity-scopes.so.1.0.
44+ set(UNITY_SCOPES_SOVERSION ${UNITY_SCOPES_MAJOR_MINOR})
45+endif()
46
47 # Set versions for libunity-scopes-qt.
48-file(READ ${DEBIAN_DIR}/QT-VERSION.MAJOR UNITY_SCOPES_QT_MAJOR)
49-string(STRIP ${UNITY_SCOPES_QT_MAJOR} UNITY_SCOPES_QT_MAJOR)
50-file(READ ${DEBIAN_DIR}/QT-VERSION.MINOR UNITY_SCOPES_QT_MINOR)
51-string(STRIP ${UNITY_SCOPES_QT_MINOR} UNITY_SCOPES_QT_MINOR)
52-file(READ ${DEBIAN_DIR}/QT-VERSION.MICRO UNITY_SCOPES_QT_MICRO)
53-string(STRIP ${UNITY_SCOPES_QT_MICRO} UNITY_SCOPES_QT_MICRO)
54+file(READ ${DEBIAN_DIR}/QT-VERSION version)
55+string(REGEX MATCHALL "[0-9]+" version_list ${version})
56+list(GET version_list 0 UNITY_SCOPES_QT_MAJOR)
57+list(GET version_list 1 UNITY_SCOPES_QT_MINOR)
58+list(GET version_list 2 UNITY_SCOPES_QT_MICRO)
59
60 set(UNITY_SCOPES_QT_MAJOR_MINOR ${UNITY_SCOPES_QT_MAJOR}.${UNITY_SCOPES_QT_MINOR})
61 set(UNITY_SCOPES_QT_FULL_VERSION ${UNITY_SCOPES_QT_MAJOR_MINOR}.${UNITY_SCOPES_QT_MICRO})
62
63=== modified file 'HACKING'
64--- HACKING 2016-04-01 00:11:19 +0000
65+++ HACKING 2016-04-01 00:11:19 +0000
66@@ -231,31 +231,32 @@
67 The version numbers for the libraries are generated from files
68 in the debian directory. (See below for general rules on versioning.)
69 There are no version numbers defined in any of the MakeLists.txt files.
70-Instead, to change the version number, you must edit the following
71+Instead, to change the version numbers, you must edit the following
72 files:
73
74- - VERSION.MAJOR
75- - VERSION.MINOR
76- - VERSION.MICRO
77-
78- Each file contains a single integer representing a portion of the
79- libunity-scopes version.
80-
81- - QT-VERSION.MAJOR
82- - QT-VERSION.MINOR
83- - QT-VERSION.MICRO
84-
85- The full version number parts for libunity-scopes-qt, one integer per file.
86+ - VERSION
87+
88+ The full version number for libunity-scopes.
89+
90+ - QT-VERSION
91+
92+ The full version number parts for libunity-scopes-qt.
93
94 - *If* the soname changes, you need to add the outdated
95 versions to the "Replaces:" and "Conflicts:" entries
96 in control and control.in. (You need an extra
97- entry for each Vivid and Wily. See bileto_pre_release_hook
98- for the sed scripts that append a line to the stanza
99- if the soname is changed. This also may apply
100+ entry for each Vivid and Wily/Xenial andlater. See
101+ bileto_pre_release_hook for the sed scripts that append a
102+ line to the stanza if the soname is changed. This also may apply
103 if the soname of the Qt library changes, in which case
104 bileto_pre_release_hook needs a corresponding update.
105
106+The version files have the format
107+
108+ <major>.<minor>.<micro>
109+
110+All three numbers must be present.
111+
112 The soversion for each library is derived from the corresponding
113 version file so, unless the soversion changes, you don't need to
114 do anything special.
115
116=== removed file 'debian/QT-VERSION.MAJOR'
117--- debian/QT-VERSION.MAJOR 2016-04-01 00:11:19 +0000
118+++ debian/QT-VERSION.MAJOR 1970-01-01 00:00:00 +0000
119@@ -1,1 +0,0 @@
120-0
121
122=== removed file 'debian/QT-VERSION.MICRO'
123--- debian/QT-VERSION.MICRO 2016-04-01 00:11:19 +0000
124+++ debian/QT-VERSION.MICRO 1970-01-01 00:00:00 +0000
125@@ -1,1 +0,0 @@
126-0
127
128=== removed file 'debian/QT-VERSION.MINOR'
129--- debian/QT-VERSION.MINOR 2016-04-01 00:11:19 +0000
130+++ debian/QT-VERSION.MINOR 1970-01-01 00:00:00 +0000
131@@ -1,1 +0,0 @@
132-2
133
134=== removed file 'debian/VERSION.MAJOR'
135--- debian/VERSION.MAJOR 2016-04-01 00:11:19 +0000
136+++ debian/VERSION.MAJOR 1970-01-01 00:00:00 +0000
137@@ -1,1 +0,0 @@
138-1
139
140=== removed file 'debian/VERSION.MICRO'
141--- debian/VERSION.MICRO 2016-04-01 00:11:19 +0000
142+++ debian/VERSION.MICRO 1970-01-01 00:00:00 +0000
143@@ -1,1 +0,0 @@
144-5
145
146=== removed file 'debian/VERSION.MINOR'
147--- debian/VERSION.MINOR 2016-04-01 00:11:19 +0000
148+++ debian/VERSION.MINOR 1970-01-01 00:00:00 +0000
149@@ -1,1 +0,0 @@
150-0
151
152=== modified file 'debian/bileto_pre_release_hook'
153--- debian/bileto_pre_release_hook 2016-04-01 00:11:19 +0000
154+++ debian/bileto_pre_release_hook 2016-04-01 00:11:19 +0000
155@@ -53,13 +53,13 @@
156 # Only call lsb_release if $SERIES isn't already set
157 [ -n "$SERIES" ] || SERIES=$(lsb_release -c -s)
158
159-export UNITY_SCOPES_MAJOR_VERSION=$(cat "$dir/VERSION.MAJOR")
160-export UNITY_SCOPES_MINOR_VERSION=$(cat "$dir/VERSION.MINOR")
161-export UNITY_SCOPES_MICRO_VERSION=$(cat "$dir/VERSION.MICRO")
162+export UNITY_SCOPES_MAJOR_VERSION=$(cut -d. -f1 "$dir/VERSION")
163+export UNITY_SCOPES_MINOR_VERSION=$(cut -d. -f2 "$dir/VERSION")
164+export UNITY_SCOPES_MICRO_VERSION=$(cut -d. -f3 "$dir/VERSION")
165
166-export UNITY_SCOPES_QT_MAJOR_VERSION=$(cat "$dir/QT-VERSION.MAJOR")
167-export UNITY_SCOPES_QT_MINOR_VERSION=$(cat "$dir/QT-VERSION.MINOR")
168-export UNITY_SCOPES_QT_MICRO_VERSION=$(cat "$dir/QT-VERSION.MICRO")
169+export UNITY_SCOPES_QT_MAJOR_VERSION=$(cut -d. -f1 "$dir/QT-VERSION")
170+export UNITY_SCOPES_QT_MINOR_VERSION=$(cut -d. -f2 "$dir/QT-VERSION")
171+export UNITY_SCOPES_QT_MICRO_VERSION=$(cut -d. -f3 "$dir/QT-VERSION")
172
173 export UNITY_SCOPES_MAJOR_MINOR="$UNITY_SCOPES_MAJOR_VERSION.$UNITY_SCOPES_MINOR_VERSION"
174 export UNITY_SCOPES_QT_MAJOR_MINOR="$UNITY_SCOPES_QT_MAJOR_VERSION.$UNITY_SCOPES_QT_MINOR_VERSION"
175@@ -67,9 +67,11 @@
176 export UNITY_SCOPES_FULL_VERSION="$UNITY_SCOPES_MAJOR_MINOR.$UNITY_SCOPES_MICRO_VERSION"
177 export UNITY_SCOPES_QT_FULL_VERSION="$UNITY_SCOPES_QT_MAJOR_MINOR.$UNITY_SCOPES_QT_MICRO_VERSION"
178
179+export UNITY_SCOPES_VIVID_SOVERSION=$(expr "$UNITY_SCOPES_MINOR_VERSION" + 3)
180+
181 if [ "$SERIES" = "vivid" ]
182 then
183- export UNITY_SCOPES_SOVERSION=$(expr "$UNITY_SCOPES_MINOR_VERSION" + 3)
184+ export UNITY_SCOPES_SOVERSION="$UNITY_SCOPES_VIVID_SOVERSION"
185 export UNITY_SCOPES_QT_SOVERSION="$UNITY_SCOPES_QT_MINOR_VERSION"
186 else
187 export UNITY_SCOPES_SOVERSION="$UNITY_SCOPES_MAJOR_MINOR"
188@@ -85,7 +87,7 @@
189 # This file is autogenerated. DO NOT EDIT!
190 #
191 # Modifications should be made to $(basename "$1") instead.
192-# This file is regenerated automatically in the clean target.
193+# This file is regenerated automatically by bileto.
194 #
195 EOF
196 perl -pe 's/@([A-Z_]+)@/$ENV{$1} or die "$1 undefined"/eg' <"$1"

Subscribers

People subscribed via source and target branches

to all changes: