Skip to content
Snippets Groups Projects
Commit 9e2e4fc5 authored by Mads Kiilerich's avatar Mads Kiilerich
Browse files

buildrpm: introduce --rpmdir instead of using hardcoded rpmbuild dir

Used as rpm _topdir when preparing spec and source and building rpms.
parent 96d95b75
No related branches found
No related tags found
No related merge requests found
......@@ -8,6 +8,7 @@
# - centOS 6
BUILD=1
RPMBUILDDIR="$PWD/rpmbuild"
while [ "$1" ]; do
case "$1" in
--prepare )
......@@ -18,6 +19,11 @@
shift
PYTHONVER=2.7.8
;;
--rpmbuilddir )
shift
RPMBUILDDIR="$1"
shift
;;
* )
echo "Invalid parameter $1!" 1>&2
exit 1
......@@ -44,10 +50,7 @@
PYTHONPATH="$PWD/mercurial/pure"
export PYTHONPATH
rpmdir="$PWD/rpmbuild"
rm -rf $rpmdir
mkdir -p $rpmdir/SOURCES $rpmdir/SPECS $rpmdir/RPMS $rpmdir/SRPMS $rpmdir/BUILD
mkdir -p $RPMBUILDDIR/SOURCES $RPMBUILDDIR/SPECS $RPMBUILDDIR/RPMS $RPMBUILDDIR/SRPMS $RPMBUILDDIR/BUILD
hgversion=`$HG version | sed -ne 's/.*(version \(.*\))$/\1/p'`
......@@ -67,9 +70,9 @@
RPMPYTHONVER=%{nil}
fi
$HG archive -t tgz $rpmdir/SOURCES/mercurial-$version-$release.tar.gz
$HG archive -t tgz $RPMBUILDDIR/SOURCES/mercurial-$version-$release.tar.gz
if [ "$PYTHONVER" ]; then
(
cd build
PYTHON_SRCFILE=Python-$PYTHONVER.tgz
[ -f $PYTHON_SRCFILE ] || curl -Lo $PYTHON_SRCFILE http://www.python.org/ftp/python/$PYTHONVER/$PYTHON_SRCFILE
......@@ -71,10 +74,10 @@
if [ "$PYTHONVER" ]; then
(
cd build
PYTHON_SRCFILE=Python-$PYTHONVER.tgz
[ -f $PYTHON_SRCFILE ] || curl -Lo $PYTHON_SRCFILE http://www.python.org/ftp/python/$PYTHONVER/$PYTHON_SRCFILE
ln -f $PYTHON_SRCFILE $rpmdir/SOURCES/$PYTHON_SRCFILE
ln -f $PYTHON_SRCFILE $RPMBUILDDIR/SOURCES/$PYTHON_SRCFILE
DOCUTILSVER=`sed -ne "s/^%global docutilsname docutils-//p" $specfile`
DOCUTILS_SRCFILE=docutils-$DOCUTILSVER.tar.gz
[ -f $DOCUTILS_SRCFILE ] || curl -Lo $DOCUTILS_SRCFILE http://downloads.sourceforge.net/project/docutils/docutils/$DOCUTILSVER/$DOCUTILS_SRCFILE
......@@ -77,8 +80,8 @@
DOCUTILSVER=`sed -ne "s/^%global docutilsname docutils-//p" $specfile`
DOCUTILS_SRCFILE=docutils-$DOCUTILSVER.tar.gz
[ -f $DOCUTILS_SRCFILE ] || curl -Lo $DOCUTILS_SRCFILE http://downloads.sourceforge.net/project/docutils/docutils/$DOCUTILSVER/$DOCUTILS_SRCFILE
ln -f $DOCUTILS_SRCFILE $rpmdir/SOURCES/$DOCUTILS_SRCFILE
ln -f $DOCUTILS_SRCFILE $RPMBUILDDIR/SOURCES/$DOCUTILS_SRCFILE
)
fi
......@@ -82,7 +85,7 @@
)
fi
rpmspec=$rpmdir/SPECS/mercurial.spec
rpmspec=$RPMBUILDDIR/SPECS/mercurial.spec
sed -e "s,^Version:.*,Version: $version," \
-e "s,^Release:.*,Release: $release," \
......@@ -138,7 +141,7 @@
$rpmspec
if [ "$BUILD" ]; then
rpmbuild --define "_topdir $rpmdir" -ba $rpmspec --clean
rpmbuild --define "_topdir $RPMBUILDDIR" -ba $rpmspec --clean
if [ $? = 0 ]; then
echo
echo "Built packages for $version-$release:"
......@@ -142,6 +145,6 @@
if [ $? = 0 ]; then
echo
echo "Built packages for $version-$release:"
find $rpmdir/*RPMS/ -type f -newer $rpmspec
find $RPMBUILDDIR/*RPMS/ -type f -newer $rpmspec
fi
else
......@@ -146,5 +149,5 @@
fi
else
echo "Prepared sources for $version-$release $rpmspec are in $rpmdir/SOURCES/ - use like:"
echo "rpmbuild --define '_topdir $rpmdir' -ba $rpmspec --clean"
echo "Prepared sources for $version-$release $rpmspec are in $RPMBUILDDIR/SOURCES/ - use like:"
echo "rpmbuild --define '_topdir $RPMBUILDDIR' -ba $rpmspec --clean"
fi
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment