~derek-name/openvista-gtm-integration/bug828224-journal_rolling

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#!/bin/sh

# build RPM package(s) from the files in this directory
#
# specify the name of a package to build as the first argument, or no arguments
# to build all packages

dir1=`pwd`
dir2=`dirname "$0"`
dir=`cd "$dir1/$dir2"; pwd`
id=`lsb_release -is`
release=`lsb_release -rs | cut -d . -f 1`

if [ -z "$1" ]; then
    packages=""
    for package in "$dir/packages/rpm/$id/$release/"*.spec; do
        package=`basename "$package"`
        package=`echo "$package" | sed 's/.spec$//'`
        packages="$packages $package"
    done
else
    if [ -f "$dir/packages/rpm/$id/$release/$1.spec" ]; then
        packages=$1
    else
        echo "rpmbuild.sh: $1: No such package in '$dir/packages/rpm/$id/$release'" >&2
        exit 3
    fi
fi

if [ -f "$HOME/.rpmmacros" ] && grep '^%_topdir' "$HOME/.rpmmacros" > /dev/null; then
    topdir=`grep '^%_topdir' "$HOME/.rpmmacros" | awk '{ print $2 }'`
else
    topdir=/usr/src/redhat
fi

for package in $packages; do
    version=`grep '^Version:' "$dir/packages/rpm/$id/$release/$package.spec" | sed 's/^Version:[ \t]*\([^ \t]\)/\1/'`

    # there may not be any patches, so redirect errors to /dev/null
    cp -f "$dir/packages/rpm/$id/$release/${package}_"*.patch "$topdir/SOURCES/" 2> /dev/null

    cp -f "$dir/packages/rpm/$id/$release/$package.spec" "$topdir/SPECS/"

    case $package in
        openvista-gtm-integration)
            # create source tarabll
            rm -rf "$topdir/SOURCES/${package}-$version"
            cp -R "$dir" "$topdir/SOURCES/${package}-$version"
            rm -rf "$topdir/SOURCES/${package}-$version/.bzr"
            rm -f "$topdir/SOURCES/${package}-$version.tar.bz2"
            tar -c --bzip2 -f "$topdir/SOURCES/${package}-$version.tar.bz2" -C "$topdir/SOURCES" "${package}-$version"
            rm -rf "$topdir/SOURCES/${package}-$version"

            cp -f "$dir/packages/rpm/$id/$release/webdav.conf" "$topdir/SOURCES/"
            cp -f "$dir/packages/rpm/$id/$release/openvista" "$topdir/SOURCES/"

            ( cd "$topdir/SPECS" && rpmbuild -ba "$package.spec" )
            ;;
        fis-gtm*)
            # assume sources are already present

            # this package must be built as root; assume sudo does not require a password
            ( cd "$topdir/SPECS" && sudo rpmbuild -ba "$package.spec" )
            ;;
        putty-tools|lsyncd)
            # assume sources are already present

            ( cd "$topdir/SPECS" && rpmbuild -ba "$package.spec" )
            ;;
    esac
done