]> git.pld-linux.org Git - packages/rpm-build-tools.git/blame - update-kde4.sh
- add kde4-nepomuk-widgets
[packages/rpm-build-tools.git] / update-kde4.sh
CommitLineData
5fc8c657
JR
1#!/bin/sh
2
3KDEPKGS="
4kde4-kdelibs
7fc1512a 5kde4-nepomuk-core
47537d92 6kde4-nepomuk-widgets
5fc8c657
JR
7kde4-kactivities
8kde4-kdepimlibs
9kde4-kdebase-workspace
10kde4-kdebase
11kde4-libkdeedu
5fc8c657
JR
12kde4-kdebase-runtime
13python-PyKDE4
14kde4-kate
15kde4-okular
16kde4-smokegen
17kde4-smokeqt
18kde4-smokekde
19perl-Qt4
20perl-KDE4
21kde4-analitza
22kde4-libkexiv2
23kde4-libkcddb
24kde4-libkdcraw
25kde4-libkipi
26kde4-libksane
27kde4-marble
28kde4-qyoto
29kde4-ark
30kde4-libkcompactdisc
31kde4-audiocd-kio
32kde4-blinken
33kde4-cantor
34kde4-dragon
35kde4-ffmpegthumbs
36kde4-filelight
37kde4-gwenview
38kde4-jovie
39kde4-juk
40kde4-kaccessible
41kde4-kalgebra
42kde4-kalzium
43kde4-kamera
44kde4-kanagram
45kde4-kbruch
46kde4-kcalc
47kde4-kcharselect
48kde4-kcolorchooser
49kde4-kdebase-artwork
50kde4-wallpapers
51kde4-kdeadmin
52kde4-kdeartwork
53kde4-kdegames
54kde4-kdegraphics-mobipocket
55kde4-kdegraphics-strigi-analyzer
56kde4-kdegraphics-thumbnailers
57kde4-kdenetwork
58kde4-kdepim
59kde4-kdepim-runtime
60kde4-kdeplasma-addons
61kde4-kdesdk
62kde4-kdetoys
63kde4-kdewebdev
64kde4-kdf
65kde4-kgamma
66kde4-kgeography
67kde4-kgpg
68kde4-khangman
69kde4-kig
70kde4-kimono
71kde4-kiten
72kde4-klettres
73kde4-kmag
74kde4-kmix
75kde4-kmousetool
76kde4-kmouth
77kde4-kmplot
78kde4-kolourpaint
79kde4-konsole
80kde4-kremotecontrol
81kde4-kruler
82kde4-ksaneplugin
83kde4-kscd
84kde4-ksnapshot
85kde4-kstars
86kde4-ktimer
87kde4-ktouch
88kde4-kturtle
89kde4-kwallet
90kde4-kwordquiz
91kde4-mplayerthumbs
92kde4-oxygen-icons
93kde4-pairs
94kde4-parley
95kde4-printer-applet
96kde4-rocs
97kde4-step
98kde4-superkaramba
99kde4-svgpart
100kde4-sweeper
101"
102
103#kfloppy
104#korundum
105#kross-interpreters
106#qtruby
107
108newver="4.9.5"
109
110topdir=$(rpm -E '%{_topdir}')
111
112n="$(echo -e '\nn')"
113n="${n%%n}"
114
115get_dump() {
116 local specfile="$1"
117 if ! out=$(rpm --specfile "$specfile" --define 'prep %dump' -q 2>&1); then
118 echo >&2 "$out"
119 echo >&2 "You need icon files being present in SOURCES."
120 exit 1
121 fi
122 echo "$out"
123}
124
125set_release() {
126 local specfile="$1"
127 local rel="$2"
128 local newrel="$3"
129 sed -i -e "
130 s/^\(%define[ \t]\+_\?rel[ \t]\+\)$rel\$/\1$newrel/
131 s/^\(Release:[ \t]\+\)$rel\$/\1$newrel/
132 " $specfile
133}
134
135set_version() {
136 local specfile="$1"
137 local rel="$2"
138 local newrel="$3"
139 sed -i -e "
140 s/^\(%define[ \t]\+_\?ver[ \t]\+\)$rel\$/\1$newrel/
141 s/^\(Version:[ \t]\+\)$rel\$/\1$newrel/
142 " $specfile
143}
144
145cd "$topdir"
146for pkg in $KDEPKGS ; do
147 # spec: package/package.spec
148 spec=$(rpm -D "name $pkg" -E '%{_specdir}/%{name}.spec')
149 spec=${spec#$topdir/}
150
151 # pkgdir: package/
152 pkgdir=${spec%/*}
153
154 # specname: only spec filename
155 specname=${spec##*/}
156
157 # start real work
158 echo "$pkg ..."
159
160 # get package
161 [ "$get" = 1 -a -d "$pkgdir" ] && continue
162
163 if [ "$update" = "1" -o "$get" = "1" ]; then
164 ./builder -g -ns "$spec"
165 fi
166
167 [ "$get" = 1 ] && continue
168
169 # update .spec files
170 dump=$(get_dump "$spec")
171
172 ver=$(awk '/^%define[ ]+_?rel[ ]+/{print $NF}' $spec)
173 if [ -z "$ver" ]; then
174 ver=$(echo "$dump" | awk '/PACKAGE_VERSION/{print $NF; exit}')
175 fi
176 rel=$(awk '/^%define[ ]+_?rel[ ]+/{print $NF}' $spec)
177 if [ -z "$rel" ]; then
178 rel=$(echo "$dump" | awk '/PACKAGE_RELEASE/{print $NF; exit}')
179 fi
180 echo $ver-$rel
181
182 set_release "$spec" $rel "1"
183 set_version "$spec" $ver $newver
184
185 # update md5sums
186 ./builder -U "$spec"
187
188 # commit the changes
189 msg=""
190 [ -n "$message" ] && msg="$msg- $message$n"
191 msg="$msg- updated to $newver (by update-kde4.sh)"
192 echo git commit -m "$msg" $spec
193 if [ "$test" != 1 ]; then
194 cd $pkgdir
195 git commit -m "$msg" $specname
196 git push
197 cd ..
198 fi
199done
This page took 0.041516 seconds and 4 git commands to generate.