3 # Build RPMs from the source in the current directory. This script sets
4 # up an RPM "_topdir" and builds the RPMs under there, then copies the
5 # binary and source RPMs to the current directory.
7 # Written by Sean Reifschneider <jafo-rpms@tummy.com>, 2003
9 TARBALL=$1 # tarball to build from
11 # set up temporary directory
12 TMPDIR=`pwd`/rpm-build.$$
13 [ ! -z "$TMPDIR" -a "$TMPDIR" != / ] && rm -rf "$TMPDIR"
14 mkdir -p "$TMPDIR"/BUILD
15 mkdir -p "$TMPDIR"/RPMS
16 mkdir -p "$TMPDIR"/SOURCES
17 mkdir -p "$TMPDIR"/SPECS
18 mkdir -p "$TMPDIR"/SRPMS
20 # set up rpmmacros file
21 MACROFILE="$TMPDIR"/rpmmacros
22 RCFILE="$TMPDIR"/rpmrc
23 sed "s|~/.rpmmacros|$MACROFILE|" /usr/lib/rpm/rpmrc >"$RCFILE"
24 echo "%_topdir $TMPDIR" >"$MACROFILE"
25 echo "%_topdir $TMPDIR" >"$MACROFILE"
27 ARCH=--target=$(uname -m)
30 rpmbuild --rcfile "$RCFILE" $ARCH -ta $TARBALL \
31 || rpm --rcfile "$RCFILE" $ARCH -ta $TARBALL
36 # move RPMs to this directory
37 mv "$TMPDIR"/RPMS/*/*.rpm .
38 mv "$TMPDIR"/SRPMS/*.rpm .
41 # clean up build directory
42 [ ! -z "$TMPDIR" -a "$TMPDIR" != / ] && rm -rf "$TMPDIR"