summaryrefslogtreecommitdiffstats
path: root/pushpkgs
blob: ff00c119ebf4d171aaf7ee0d5e9f42199eee7418 (plain)
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
#!/bin/sh

prependid()
{
    awk '!/^#/ && ! done { print "# $Id$"; done = 1 } 1' PKGBUILD \
        > PKGBUILD.new
    mv PKGBUILD.new PKGBUILD
}

# Make sure that the package directories are added to the SVN repo.
syncsvn()
{
    svn add --parents PKGBUILD ../repos
    # Make sure that the Id keyword-property is active.
    svn propset svn:keywords Id PKGBUILD
}


if [ -z "$DEST" ] ; then
    echo "Specify the destination directory with the DEST env var." 1>&2
    exit 1
fi

cd pkg || exit 1
pkgdir=$(pwd)

while [ $# -gt 0 ] ; do
    pkg=$1 ; shift
    if [ ! -d "$pkg" ] ; then
        echo "pkg/$pkg was not found." 1>&2
        continue
    fi

    echo "$DEST/$pkg"
    if [ -d "$DEST/$pkg" ] ; then
        rm -rf "$DEST/$pkg/trunk/"*
    fi

    mkdir -p "$DEST/$pkg/"{trunk,repos}
    cp -r -t "$DEST/$pkg/trunk" "$pkg"/* 

    cd "$DEST/$pkg/trunk"
    prependid
    syncsvn >/dev/null 2>&1

    cd "$pkgdir"
done