blob: a8e41df1ae8e0f6cc189265e11657451b03ebe75 (
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
#!/bin/sh
VERSION=0.01
die() {
echo "error: $*"
exit 1
}
pbjtopkg()
{
pkg=$1
rm -rf "$pkgroot/$pkg"
mkdir "$pkgroot/$pkg"
cd "$pkgroot/$pkg"
jamfile="$jamdir/$1.pbj"
if [ ! -f "$jamfile" ]
then
die "$jamfile is missing"
fi
# Match the pkgname to the .pbj filename.
# Provide values for other things macros won't be able to.
printf "+ pkgname $pkg\n+ pkgrel ${PKGREL:-1}\n+ pbjver $VERSION\n" \
| cat - "$jamfile" \
| pbjexpand \
| awk -f "$bindir/pbjparse.awk" \
> PKGMETA
if [ $? -ne 0 ]
then
die "Failed to write $pkgroot/$pkg/PKGMETA"
fi
# pbjparse.awk also creates a makepb script in our cwd.
if ! ./makepb >PKGBUILD
then
die "makepb failed, error code $?"
fi
echo "$pkgroot/$pkg/PKGBUILD"
}
if [ -z "$1" ]; then die "Usage: $0 [package name]"; fi
if [ "$PBJROOT" ]; then cd "$PBJROOT"; fi
bindir="$(pwd)/bin"
if [ ! -d "$bindir" ]; then die "$bindir does not exist"; fi
PATH="$PATH:$bindir"
if [ -n "$PKGROOT" ]; then pkgroot="$PKGROOT"
else pkgroot="$(pwd)/pkg"
fi
if [ ! -d "$pkgroot" ]; then die "$pkgroot does not exist"; fi
jamdir="$(pwd)/pbj"
if [ ! -d "$jamdir" ]; then die "$jamdir does not exist"; fi
export PATH="$PATH:$bindir/macros:$bindir/templ"
for pbj; do pbjtopkg "$pbj"; done
|