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 BUILTDIR=$2
PACKAGEDIR=$3 PACKAGEDIR=$3
# Clean up
rm -rf root
# Game files # Game files
mkdir -p root/usr/bin/ mkdir -p root/usr/bin/
cp openra root/usr/bin/ cp openra root/usr/bin/
mkdir -p root/usr/share/openra/ 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 # Desktop Icons
mkdir -p root/usr/share/applications/ 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." echo "Arch-Linux package build failed, refer to $PWD/package.log."
fi fi
) & ) &
#
# ( (
# echo "Building RPM package." echo "Building RPM package."
# pushd rpm/ &> /dev/null cd rpm
# sh buildpackage.sh "$VERSION" ~/rpmbuild "$PACKAGEDIR" &> package.log sh buildpackage.sh "$VERSION" ../root ~/rpmbuild "$PACKAGEDIR" &> package.log
# if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
# echo "RPM package build failed, refer to $PWD/package.log." echo "RPM package build failed, refer to $PWD/package.log."
# fi fi
# popd &> /dev/null ) &
# ) &
#
wait wait
# Clean up
rm -rf root

View File

@@ -7,12 +7,13 @@ then
exit $E_BADARGS exit $E_BADARGS
fi fi
VERSION=$1 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) # Copy template files into a clean build directory (required)
mkdir root mkdir root
cp -R DEBIAN root cp -R DEBIAN root
cp -R $2/usr root cp -R $rootdir/usr root
# Create the control and changelog files from templates # Create the control and changelog files from templates
sed "s/{VERSION}/$VERSION/" DEBIAN/control | sed "s/{SIZE}/$PACKAGE_SIZE/" > root/DEBIAN/control 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 # Clean up
popd popd
rm -rf root rm -rf root

View File

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

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

@@ -8,7 +8,8 @@ fi
PKGVERSION=`echo $1 | sed "s/-/\\./g"` PKGVERSION=`echo $1 | sed "s/-/\\./g"`
sed -i "s/{VERSION}/$PKGVERSION/" PKGBUILD sed -i "s/{VERSION}/$PKGVERSION/" PKGBUILD
sed -i "s/{ROOT}/$2/" PKGBUILD rootdir=`readlink -f $2`
sed -i "s|{ROOT}|$rootdir|" PKGBUILD
makepkg --holdver makepkg --holdver
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
@@ -16,3 +17,4 @@ if [ $? -ne 0 ]; then
fi 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 #!/bin/bash
E_BADARGS=85 E_BADARGS=85
if [ $# -ne "3" ] if [ $# -ne "4" ]
then then
echo "Usage: `basename $0` version packaging-dir outputdir" echo "Usage: `basename $0` version root-dir packaging-dir outputdir"
exit $E_BADARGS exit $E_BADARGS
fi fi
PKGVERSION=`echo $1 | sed "s/-/\\./g"` PKGVERSION=`echo $1 | sed "s/-/\\./g"`
sed -i "s/%define version [0-9\\.]\+/%define version $PKGVERSION/" openra.spec sed -i "s/{VERSION_FIELD}/$PKGVERSION/" openra.spec
cp openra.spec "$2/SPECS/" 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 rpmbuild --target noarch -bb SPECS/openra.spec
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
@@ -18,4 +20,5 @@ if [ $? -ne 0 ]; then
fi fi
cd RPMS/noarch/ 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 name openra
%define version 20100801.2 %define version {VERSION_FIELD}
%define root {ROOT_DIR}
Name: %{name} Name: %{name}
Version: %{version} Version: %{version}
Release: 1 Release: 1
@@ -22,7 +23,7 @@ and includes Command & Conquer as an official mod.
%install %install
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
cp -r ~/openra-package/built/ $RPM_BUILD_ROOT cp -r %{root} $RPM_BUILD_ROOT
%clean %clean
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
@@ -65,6 +66,7 @@ done
/usr/share/openra/*.ttf /usr/share/openra/*.ttf
/usr/share/openra/*.dll /usr/share/openra/*.dll
/usr/share/openra/*.dll.config /usr/share/openra/*.dll.config
/usr/share/openra/OpenRA.ico
/usr/share/openra/VERSION /usr/share/openra/VERSION
/usr/share/openra/COPYING /usr/share/openra/COPYING
/usr/share/openra/HACKING /usr/share/openra/HACKING
@@ -79,3 +81,4 @@ done
/usr/share/icons/hicolor/48x48/apps/openra.png /usr/share/icons/hicolor/48x48/apps/openra.png
/usr/share/icons/hicolor/64x64/apps/openra.png /usr/share/icons/hicolor/64x64/apps/openra.png
/usr/share/icons/hicolor/128x128/apps/openra.png /usr/share/icons/hicolor/128x128/apps/openra.png