3
3
# # This is used to package .deb packages and upload them to the launchpad
4
4
# # ppa servers for building.
5
5
# #
6
- # # The gnupg key for "[email protected] " has to be present in order to sign
7
- # # the package.
8
- # #
9
6
# # It will clone the Z3 git from github on the specified version tag,
10
7
# # create a source archive and push it to the ubuntu ppa servers.
11
8
# #
16
13
# # method = ftp
17
14
# # incoming = ~ethereum/cpp-build-deps
18
15
# # login = anonymous
19
-
16
+ # #
17
+ # # To interact with launchpad, you need to set the variables $LAUNCHPAD_EMAIL
18
+ # # and $LAUNCHPAD_KEYID in the file .release_ppa_auth in the root directory of
19
+ # # the project to your launchpad email and pgp keyid.
20
+ # # This could for example look like this:
21
+ # #
22
+
23
+ # # LAUNCHPAD_KEYID=123ABCFFFFFFFF
20
24
# #
21
25
# #############################################################################
22
26
23
- set -ev
27
+ set -e
24
28
25
- keyid=70D110489D66E2F6
26
-
27
29
packagename=z3-static
28
- version=4.8.17
30
+ version=" $1 "
31
+
32
+ REPO_ROOT=" $( dirname " $0 " ) /../.."
33
+
34
+ # shellcheck source=/dev/null
35
+ source " ${REPO_ROOT} /scripts/common.sh"
36
+
37
+ [[ $version != " " ]] || fail " Usage: $0 <version-without-leading-v>"
38
+
39
+ sourcePPAConfig
40
+
41
+ # Sanity check
42
+ checkDputEntries " \[cpp-build-deps\]"
29
43
30
- DISTRIBUTIONS=" focal impish jammy kinetic"
44
+ DISTRIBUTIONS=" focal jammy kinetic"
31
45
32
46
for distribution in $DISTRIBUTIONS
33
47
do
@@ -40,7 +54,7 @@ pparepo=cpp-build-deps
40
54
ppafilesurl=https://launchpad.net/~ethereum/+archive/ubuntu/${pparepo} /+files
41
55
42
56
# Fetch source
43
- git clone --branch z3-${version} https://github.com/Z3Prover/z3.git
57
+ git clone --branch " z3-${version} " https://github.com/Z3Prover/z3.git
44
58
cd z3
45
59
46
60
debversion=" ${version} "
@@ -50,11 +64,11 @@ CMAKE_OPTIONS="-DZ3_BUILD_LIBZ3_SHARED=OFF -DCMAKE_BUILD_TYPE=Release"
50
64
# gzip will create different tars all the time and we are not allowed
51
65
# to upload the same file twice with different contents, so we only
52
66
# create it once.
53
- if [ ! -e /tmp/${packagename} _${debversion} .orig.tar.gz ]
67
+ if [ ! -e " /tmp/${packagename} _${debversion} .orig.tar.gz" ]
54
68
then
55
- tar --exclude .git -czf /tmp/${packagename} _${debversion} .orig.tar.gz .
69
+ tar --exclude .git -czf " /tmp/${packagename} _${debversion} .orig.tar.gz" .
56
70
fi
57
- cp /tmp/${packagename} _${debversion} .orig.tar.gz ../
71
+ cp " /tmp/${packagename} _${debversion} .orig.tar.gz" ../
58
72
59
73
# Create debian package information
60
74
@@ -209,7 +223,7 @@ echo "3.0 (quilt)" > debian/source/format
209
223
chmod +x debian/rules
210
224
211
225
versionsuffix=1ubuntu0~${distribution}
212
- EMAIL=" $email " dch -v " 1:${debversion} -${versionsuffix} " " build of ${version} "
226
+ EMAIL=" $LAUNCHPAD_EMAIL " dch -v " 1:${debversion} -${versionsuffix} " " build of ${version} "
213
227
214
228
# build source package
215
229
# If packages is rejected because original source is already present, add
@@ -226,26 +240,26 @@ cd ..
226
240
orig=" ${packagename} _${debversion} .orig.tar.gz"
227
241
# shellcheck disable=SC2012
228
242
orig_size=$( ls -l " $orig " | cut -d ' ' -f 5)
229
- orig_sha1=$( sha1sum $orig | cut -d ' ' -f 1)
230
- orig_sha256=$( sha256sum $orig | cut -d ' ' -f 1)
231
- orig_md5=$( md5sum $orig | cut -d ' ' -f 1)
243
+ orig_sha1=$( sha1sum " $orig " | cut -d ' ' -f 1)
244
+ orig_sha256=$( sha256sum " $orig " | cut -d ' ' -f 1)
245
+ orig_md5=$( md5sum " $orig " | cut -d ' ' -f 1)
232
246
233
- if wget --quiet -O $orig -tmp " $ppafilesurl /$orig "
247
+ if wget --quiet -O " $orig -tmp" " $ppafilesurl /$orig "
234
248
then
235
249
echo " [WARN] Original tarball found in Ubuntu archive, using it instead"
236
- mv $ orig -tmp $orig
250
+ mv " ${ orig} -tmp" " $orig "
237
251
# shellcheck disable=SC2012
238
252
new_size=$( ls -l ./* .orig.tar.gz | cut -d ' ' -f 5)
239
- new_sha1=$( sha1sum $orig | cut -d ' ' -f 1)
240
- new_sha256=$( sha256sum $orig | cut -d ' ' -f 1)
241
- new_md5=$( md5sum $orig | cut -d ' ' -f 1)
253
+ new_sha1=$( sha1sum " $orig " | cut -d ' ' -f 1)
254
+ new_sha256=$( sha256sum " $orig " | cut -d ' ' -f 1)
255
+ new_md5=$( md5sum " $orig " | cut -d ' ' -f 1)
242
256
sed -i -e " s,$orig_sha1 ,$new_sha1 ,g" -e " s,$orig_sha256 ,$new_sha256 ,g" -e " s,$orig_size ,$new_size ,g" -e " s,$orig_md5 ,$new_md5 ,g" ./* .dsc
243
257
sed -i -e " s,$orig_sha1 ,$new_sha1 ,g" -e " s,$orig_sha256 ,$new_sha256 ,g" -e " s,$orig_size ,$new_size ,g" -e " s,$orig_md5 ,$new_md5 ,g" ./* .changes
244
258
fi
245
259
)
246
260
247
261
# sign the package
248
- debsign --re-sign -k " ${keyid } " " ../${packagename} _${debversion} -${versionsuffix} _source.changes"
262
+ debsign --re-sign -k " ${LAUNCHPAD_KEYID } " " ../${packagename} _${debversion} -${versionsuffix} _source.changes"
249
263
250
264
# upload
251
265
dput " ${pparepo} " " ../${packagename} _${debversion} -${versionsuffix} _source.changes"
0 commit comments