]> git.pld-linux.org Git - projects/pld-builder.new.git/blame - client/rebuild-th-kernel.sh
- mount/umount/stat chroot /proc without having mount(1) installed inside chroot
[projects/pld-builder.new.git] / client / rebuild-th-kernel.sh
CommitLineData
0916169e
AM
1#!/bin/sh
2
e80b5fcd
ER
3dir=$(cd "$(dirname "$0")"; pwd)
4rpmdir=$(rpm -E %_topdir)
5dist=th
6
7pkgs_head="
8 dahdi-linux
a6889455
JR
9 e1000e
10 igb
e600b426 11 ipset
a6889455
JR
12 ixgbe
13 linuxrdac
e600b426
JR
14 lirc
15 madwifi-ng
16 open-vm-tools
17 r8168
18 VirtualBox
19 xorg-driver-video-fglrx
20 xorg-driver-video-nvidia
21 xtables-addons
e80b5fcd
ER
22"
23
24pkgs_longterm="
e600b426
JR
25 iscsitarget
26 openvswitch
27 xorg-driver-video-nvidia-legacy3
e80b5fcd
ER
28"
29
30# autotag from rpm-build-macros
31# displays latest used tag for a specfile
32autotag() {
33 local out s
34 for s in "$@"; do
35 # strip branches
36 s=${s%:*}
37 # ensure package ends with .spec
38 s=${s%.spec}.spec
39 out=$(cvs status -v $s | awk "!/Sticky/&&/auto-$dist-/{if (!a++) print \$1}")
40 echo "$s:$out"
41 done
42}
43
44get_last_tags() {
45 local pkg spec
ea0b3fb4
ER
46
47 echo >&2 "Fetching package tags: $*..."
48 for pkg in "$@"; do
e80b5fcd 49 echo >&2 "$pkg... "
ea0b3fb4
ER
50 if [ ! -e $pkg/$pkg.spec ]; then
51 $rpmdir/builder -g $pkg -ns -r HEAD 1>&2
52 fi
53 if [ ! -e $pkg/$pkg.spec ]; then
54 # just print it out, to fallback to base pkg name
55 echo "$pkg"
56 else
57 spec=$(autotag $pkg/$pkg.spec)
cd63efd1 58 spec=${spec:#*/}
ea0b3fb4
ER
59 echo >&2 "... $spec"
60 echo $spec
e80b5fcd 61 fi
e80b5fcd
ER
62 done
63}
64
ea0b3fb4 65cd $rpmdir
0916169e 66case "$1" in
0916169e 67 head)
e80b5fcd 68 for pkg in $pkgs_head; do
0cd8550e 69 echo >&2 "Rebuilding $pkg..."
e80b5fcd 70 $rpmdir/builder -g $pkg -ns
2024e645 71 $rpmdir/relup.sh -ui $pkg/$pkg.spec && $dir/make-request.sh -r -d th $pkg.spec
0916169e
AM
72 done
73 ;;
e80b5fcd
ER
74 longterm)
75 cd $rpmdir
e600b426
JR
76 for pkg in $pkgs_longterm; do
77 echo >&2 "Rebuilding $pkg..."
78 $rpmdir/builder -g $pkg -ns
79 $rpmdir/relup.sh -ui $pkg/$pkg.spec && $dir/make-request.sh -r -d th --without kernel $pkg.spec
80 done
81 specs=$(get_last_tags $pkgs_head $pkgs_longterm)
0cd8550e
JR
82 for pkg in $specs; do
83 echo >&2 "Rebuilding $pkg..."
84 $dir/make-request.sh -r -d $dist --kernel longterm --without userspace $pkg
85 done
e80b5fcd 86 ;;
0916169e 87 *)
ea0b3fb4
ER
88 # try to parse all args, filling them with last autotag
89 while [ $# -gt 0 ]; do
90 case "$1" in
91 --kernel|--with|--without)
92 args="$1 $2"
93 shift
94 ;;
95 -*)
96 args="$args $1"
97 ;;
98 *)
99 specs="$specs $1"
100 ;;
101 esac
102 shift
103 done
104 specs=$(get_last_tags $specs)
105 $dir/make-request.sh -r -d $dist $args $specs
0916169e
AM
106 ;;
107esac
This page took 0.082688 seconds and 4 git commands to generate.