Fixed pkgbuild and reimplemented RPM scripts.

This commit is contained in:
Matthew
2010-10-12 00:38:42 +13:00
committed by Paul Chote
parent 25525b4155
commit 8f58e41304
7 changed files with 40 additions and 29 deletions

View File

@@ -10,11 +10,14 @@ VERSION=$1
BUILTDIR=$2
PACKAGEDIR=$3
# Clean up
rm -rf root
# Game files
mkdir -p root/usr/bin/
cp openra root/usr/bin/
mkdir -p root/usr/share/openra/
cp -R "$BUILTDIR/" "root/usr/share/openra/" || exit 3
cp -R $BUILTDIR/* "root/usr/share/openra/" || exit 3
# Desktop Icons
mkdir -p root/usr/share/applications/
@@ -49,18 +52,15 @@ cp -r hicolor root/usr/share/icons/
echo "Arch-Linux package build failed, refer to $PWD/package.log."
fi
) &
#
# (
# echo "Building RPM package."
# pushd rpm/ &> /dev/null
# sh buildpackage.sh "$VERSION" ~/rpmbuild "$PACKAGEDIR" &> package.log
# if [ $? -ne 0 ]; then
# echo "RPM package build failed, refer to $PWD/package.log."
# fi
# popd &> /dev/null
# ) &
#
(
echo "Building RPM package."
cd rpm
sh buildpackage.sh "$VERSION" ../root ~/rpmbuild "$PACKAGEDIR" &> package.log
if [ $? -ne 0 ]; then
echo "RPM package build failed, refer to $PWD/package.log."
fi
) &
wait
# Clean up
rm -rf root

View File

@@ -7,12 +7,13 @@ then
exit $E_BADARGS
fi
VERSION=$1
PACKAGE_SIZE=`du --apparent-size -c $2/usr | grep "total" | awk '{print $1}'`
rootdir=`readlink -f $2`
PACKAGE_SIZE=`du --apparent-size -c $rootdir/usr | grep "total" | awk '{print $1}'`
# Copy template files into a clean build directory (required)
mkdir root
cp -R DEBIAN root
cp -R $2/usr root
cp -R $rootdir/usr root
# Create the control and changelog files from templates
sed "s/{VERSION}/$VERSION/" DEBIAN/control | sed "s/{SIZE}/$PACKAGE_SIZE/" > root/DEBIAN/control
@@ -30,3 +31,4 @@ dpkg-deb -b . $3/openra-$VERSION.deb
# Clean up
popd
rm -rf root

View File

@@ -23,3 +23,4 @@ md5sums=()
build() {
cp -r {ROOT}/usr/ $pkgdir/
}

6
packaging/linux/pkgbuild/buildpackage.sh Normal file → Executable file
View File

@@ -8,11 +8,13 @@ fi
PKGVERSION=`echo $1 | sed "s/-/\\./g"`
sed -i "s/{VERSION}/$PKGVERSION/" PKGBUILD
sed -i "s/{ROOT}/$2/" PKGBUILD
rootdir=`readlink -f $2`
sed -i "s|{ROOT}|$rootdir|" PKGBUILD
makepkg --holdver
if [ $? -ne 0 ]; then
exit 1
fi
mv openra-$PKGVERSION-1-any.pkg.tar.xz $3
mv openra-$PKGVERSION-1-any.pkg.tar.xz $3

15
packaging/linux/rpm/buildpackage.sh Normal file → Executable file
View File

@@ -1,16 +1,18 @@
#!/bin/bash
E_BADARGS=85
if [ $# -ne "3" ]
if [ $# -ne "4" ]
then
echo "Usage: `basename $0` version packaging-dir outputdir"
echo "Usage: `basename $0` version root-dir packaging-dir outputdir"
exit $E_BADARGS
fi
PKGVERSION=`echo $1 | sed "s/-/\\./g"`
sed -i "s/%define version [0-9\\.]\+/%define version $PKGVERSION/" openra.spec
cp openra.spec "$2/SPECS/"
sed -i "s/{VERSION_FIELD}/$PKGVERSION/" openra.spec
rootdir=`readlink -f $2`
sed -i "s|{ROOT_DIR}|$rootdir|" openra.spec
cp openra.spec "$3/SPECS/"
cd "$2"
cd "$3"
rpmbuild --target noarch -bb SPECS/openra.spec
if [ $? -ne 0 ]; then
@@ -18,4 +20,5 @@ if [ $? -ne 0 ]; then
fi
cd RPMS/noarch/
mv openra-$PKGVERSION-1.noarch.rpm $3
mv openra-$PKGVERSION-1.noarch.rpm $4

View File

@@ -1,5 +1,6 @@
%define name openra
%define version 20100801.2
%define version {VERSION_FIELD}
%define root {ROOT_DIR}
Name: %{name}
Version: %{version}
Release: 1
@@ -22,7 +23,7 @@ and includes Command & Conquer as an official mod.
%install
rm -rf $RPM_BUILD_ROOT
cp -r ~/openra-package/built/ $RPM_BUILD_ROOT
cp -r %{root} $RPM_BUILD_ROOT
%clean
rm -rf $RPM_BUILD_ROOT
@@ -65,6 +66,7 @@ done
/usr/share/openra/*.ttf
/usr/share/openra/*.dll
/usr/share/openra/*.dll.config
/usr/share/openra/OpenRA.ico
/usr/share/openra/VERSION
/usr/share/openra/COPYING
/usr/share/openra/HACKING
@@ -79,3 +81,4 @@ done
/usr/share/icons/hicolor/48x48/apps/openra.png
/usr/share/icons/hicolor/64x64/apps/openra.png
/usr/share/icons/hicolor/128x128/apps/openra.png

View File

@@ -58,7 +58,7 @@ echo "Creating packages..."
) &
(
cd osx
cd osx
sh buildpackage.sh "$VERSION" "$BUILTDIR" "$OUTPUTDIR" &> package.log
if [ $? -ne 0 ]; then
echo "OSX package build failed, refer to osx/package.log."
@@ -66,8 +66,8 @@ echo "Creating packages..."
) &
(
cd linux
sh buildpackage.sh "$VERSION" "$BUILTDIR" "$OUTPUTDIR" &> package.log
cd linux
sh buildpackage.sh "$VERSION" "$BUILTDIR" "$OUTPUTDIR" &> package.log
if [ $? -ne 0 ]; then
echo "linux package build failed, refer to linux/package.log."
fi