OBS: replace OS specific with feature specific .dsc's
[siplcs.git] / contrib / opensuse-build-service / generate_debian.sh
blob46566409b2ed09ae68ca2a99f72e8642a85c7f2e
1 #!/bin/bash
2 abort() {
3 echo "$0: $1 - Aborting"
4 exit 1
6 cleanup() {
7 rm -rf debian
8 abort "$1"
11 # Sanity checks
12 version=$(ls pidgin-sipe-*.tar.gz | sed 's/^pidgin-sipe-//;s/.tar.gz$//')
13 [ -z "${version}" ] && abort "can't find pidgin-sipe archive"
14 [ -e debian ] && abort "directory 'debian' - already exists"
16 # Copy latest source archive
17 cp pidgin-sipe-${version}.tar.gz pidgin-sipe_${version}.orig.tar.gz
19 # Extract contrib/debian directory from release
20 tar --strip-components=2 --wildcards -xvf \
21 pidgin-sipe-${version}.tar.gz \
22 "*/contrib/debian" || cleanup "tar failed"
23 [ -e debian ] || cleanup "directory 'debian' - does not exist"
25 # Have the contents changed?
26 if tar 2>/dev/null -df pidgin-sipe_${version}-1.debian.tar.gz; then
27 echo "contrib/debian is unchanged - not updating .debian.tar.gz."
28 else
29 # Update debian archive
30 tar cfz pidgin-sipe_${version}-1.debian.tar.gz debian || cleanup "can't create tar archive"
32 rm -rf debian
34 # Update .dsc files
35 for p in \
36 "Checksums-Sha1=sha1sum" \
37 "Checksums-Sha256=sha256sum" \
38 "Files=md5sum";
39 do \
40 label=${p%=*}; \
41 program=${p#*=}; \
42 echo "${label}:"
43 for t in \
44 pidgin-sipe_${version}.orig.tar.gz \
45 pidgin-sipe_${version}-1.debian.tar.gz; \
46 do \
47 echo " $(${program} ${t} | cut -d' ' -f1) $(wc -c ${t})"; \
48 done \
49 done >checksums.txt
50 for d in *.dsc; do cat checksums.txt >>${d}; done
51 rm checksums.txt
53 # Overwrite those .dsc's that have support for Voice & Video
54 for os in \
55 xUbuntu_11.10; \
56 do \
57 cp pidgin-sipe-VandV.dsc pidgin-sipe-${os}.dsc; \
58 done
60 # Overwrite those .dsc's that have support for telepathy
61 for os in \
62 xUbuntu_12.10 \
63 xUbuntu_12.04; \
64 do \
65 cp pidgin-sipe-telepathy.dsc pidgin-sipe-${os}.dsc; \
66 done
68 # That's all folks...
69 echo "Done."
70 osc status
71 exit 0