[SCM] Packaging for the OpenArena engine branch, master, updated. debian/0.8.5-5-14-gc94edf7
Simon McVittie
smcv at debian.org
Fri Oct 15 21:36:05 UTC 2010
The following commit has been merged in the master branch:
commit 17906a155dcea83081908326b3084b4ac1565d8e
Author: Simon McVittie <smcv at debian.org>
Date: Fri Oct 15 00:05:35 2010 +0100
Install wrapper scripts for ioquake3 instead of our own engine
* Install wrapper scripts for ioquake3 instead of our own engine
- therefore we no longer embed a copy of libjpeg (Closes: #495966)
diff --git a/debian/changelog b/debian/changelog
index d2a37c7..70cce57 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,7 @@
openarena (0.8.5-6) UNRELEASED; urgency=low
+ * Install wrapper scripts for ioquake3 instead of our own engine
+ - therefore we no longer embed a copy of libjpeg (Closes: #495966)
* Set up debian/rules so DEB_BUILD_OPTIONS="noopt" does a debug build
* Install example scripts to debug OpenArena with gdb, as
/usr/share/games/openarena/openarena{,-server}-gdb
diff --git a/debian/control b/debian/control
index 10a6efa..db21b5c 100644
--- a/debian/control
+++ b/debian/control
@@ -15,7 +15,8 @@ Package: openarena
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
openarena-data (>= 0.8.5-3~), openarena-data (<< 0.8.6~),
- openarena-server (= ${binary:Version})
+ openarena-server (= ${binary:Version}),
+ ioquake3
Description: fast-paced 3D first-person shooter
OpenArena is an open-source content package for ioQuake3 licensed under the
GPL, effectively creating a free stand-alone game. Though OpenArena is a free
@@ -29,7 +30,8 @@ Description: fast-paced 3D first-person shooter
Package: openarena-server
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends},
- openarena-data (>= 0.8.5), openarena-data (<< 0.8.6~)
+ openarena-data (>= 0.8.5), openarena-data (<< 0.8.6~),
+ ioquake3-server
Description: server and game logic for the game OpenArena
OpenArena is an open-source content package for ioQuake3 licensed under the
GPL, effectively creating a free stand-alone game. Though OpenArena is a free
diff --git a/debian/openarena-server.install b/debian/openarena-server.install
index af5d7a7..c6ad6b7 100644
--- a/debian/openarena-server.install
+++ b/debian/openarena-server.install
@@ -1,5 +1,3 @@
-debian/tmp/usr/games/openarena-server
+debian/scripts/openarena-server usr/games
debian/tmp/usr/lib/games/openarena/*/*.so
debian/tmp/usr/lib/games/openarena/*/*/*.so
-debian/scripts/openarena-server-gdb usr/share/games/openarena
-debian/scripts/crash.gdb usr/share/games/openarena
diff --git a/debian/openarena.install b/debian/openarena.install
index 3ea9b62..8a19981 100644
--- a/debian/openarena.install
+++ b/debian/openarena.install
@@ -1,5 +1,4 @@
-debian/tmp/usr/games/openarena
+debian/scripts/openarena usr/games
debian/openarena.desktop usr/share/applications
debian/openarena128.png usr/share/icons/hicolor/128x128/apps
debian/openarena32.xpm usr/share/pixmaps
-debian/scripts/openarena-gdb usr/share/games/openarena
diff --git a/debian/rules b/debian/rules
index 71832ed..e1fce05 100755
--- a/debian/rules
+++ b/debian/rules
@@ -59,7 +59,7 @@ GAME_081_OPTIONS = \
BUILD_DIR=build-0.8.1-compat \
OPENARENA_081_COMPATIBLE=1
-build: build-stamp
+build: build-stamp debian/scripts/openarena debian/scripts/openarena-server
build-stamp:
dh_testdir
$(MAKE) -C engine $(ENGINE_OPTIONS) $(TARGET)
@@ -67,6 +67,24 @@ build-stamp:
$(MAKE) -C game $(GAME_081_OPTIONS) $(TARGET)
touch $@
+debian/scripts/openarena: debian/scripts/openarena.in
+ install -d build
+ sed \
+ -e 's!@IOQ3BINARY@!ioquake3!' \
+ -e 's!@IOQ3SELF@!openarena!' \
+ -e 's!@IOQ3ROLE@!client!' \
+ < $< > $@
+ chmod +x $@
+
+debian/scripts/openarena-server: debian/scripts/openarena.in
+ install -d build
+ sed \
+ -e 's!@IOQ3BINARY@!ioq3ded!' \
+ -e 's!@IOQ3SELF@!openarena-server!' \
+ -e 's!@IOQ3ROLE@!server!' \
+ < $< > $@
+ chmod +x $@
+
clean:
dh_testdir
dh_testroot
@@ -75,6 +93,8 @@ clean:
rm -rf game/build
rm -rf game/build-0.8.1-compat
rm -f debian/openarena32.xpm
+ rm -f debian/scripts/openarena
+ rm -f debian/scripts/openarena-server
dh_clean
install: build
@@ -84,10 +104,6 @@ install: build
install -d debian/tmp/usr/games
install -d debian/tmp/usr/lib/games/openarena/baseoa/pak0/
install -d debian/tmp/usr/lib/games/openarena/missionpack/
- install engine/build/release-$(Q3PLATFORM)-$(Q3ARCH)/ioquake3.$(Q3ARCH) \
- debian/tmp/usr/games/openarena
- install engine/build/release-$(Q3PLATFORM)-$(Q3ARCH)/ioq3ded.$(Q3ARCH) \
- debian/tmp/usr/games/openarena-server
install -m644 game/build/release-$(Q3PLATFORM)-$(Q3ARCH)/baseq3/*.so \
debian/tmp/usr/lib/games/openarena/baseoa/
install -m644 game/build-0.8.1-compat/release-$(Q3PLATFORM)-$(Q3ARCH)/baseq3/*.so \
diff --git a/debian/scripts/crash.gdb b/debian/scripts/crash.gdb
deleted file mode 100644
index 46af122..0000000
--- a/debian/scripts/crash.gdb
+++ /dev/null
@@ -1,4 +0,0 @@
-run
-thread apply all bt full
-kill
-quit
diff --git a/debian/scripts/openarena-gdb b/debian/scripts/openarena-gdb
deleted file mode 100755
index d3ffca4..0000000
--- a/debian/scripts/openarena-gdb
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-exec gdb -return-child-result -batch -x /usr/share/games/openarena/crash.gdb --args /usr/games/openarena "$@"
diff --git a/debian/scripts/openarena-server-gdb b/debian/scripts/openarena-server-gdb
deleted file mode 100755
index d3ffca4..0000000
--- a/debian/scripts/openarena-server-gdb
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-exec gdb -return-child-result -batch -x /usr/share/games/openarena/crash.gdb --args /usr/games/openarena "$@"
diff --git a/debian/scripts/openarena.in b/debian/scripts/openarena.in
new file mode 100644
index 0000000..8dc7b78
--- /dev/null
+++ b/debian/scripts/openarena.in
@@ -0,0 +1,64 @@
+#!/bin/sh
+
+# quake3 or quake3-server or whatever
+IOQ3SELF=@IOQ3SELF@
+# "server" or "client"
+IOQ3ROLE=@IOQ3ROLE@
+# ioquake3 or ioq3ded
+IOQ3BINARY=@IOQ3BINARY@
+# q3a or openarena
+IOQ3DOTDIR=openarena
+
+ENGINE="/usr/lib/ioquake3/${IOQ3BINARY}"
+
+DEBUGGER="$OPENARENA_DEBUGGER"
+
+if test -n "$OPENARENA_BACKTRACE"; then
+ DEBUGGER="gdb -return-child-result -batch -ex run -ex 'thread apply all bt full' -ex kill -ex quit --args"
+fi
+
+# we're a standalone game
+CVARS="+set com_standalone 1"
+CVARS="$CVARS +set fs_basegame baseoa"
+CVARS="$CVARS +set fs_basepath /usr/lib/games/openarena"
+CVARS="$CVARS +set fs_homepath \"$HOME/.$IOQ3DOTDIR\""
+# OA uses a different protocol number to reflect incompatible game content
+CVARS="$CVARS +set protocol 71"
+# OA's default master server is different
+CVARS="$CVARS +set sv_master1 dpmaster.deathmask.net"
+# update.quake3arena.com is pretty irrelevant if you're playing OA
+CVARS="$CVARS +set cl_motd 0"
+
+QUIET=0
+
+EXCUSE="\
+OpenArena ${IOQ3ROLE} wrapper for Debian\n\
+\n\
+Usage: ${IOQ3SELF} [OPTION]...\n\
+\n\
+ -h, --help\t\tDisplay this help\n\
+ -q, --quiet\t\tDisable console output\n\
+ +<internal command>\tPass commands to the engine\n"
+
+while [ "$1" != "" ]; do
+ case "$1" in
+ -h|--help)
+ echo ${EXCUSE}
+ exit 0
+ ;;
+ -q|--quiet)
+ CVARS="$CVARS +set ttycon 0"
+ QUIET=1
+ ;;
+ *)
+ break
+ ;;
+ esac
+ shift
+done
+
+if test "z$QUIET" = z1; then
+ exec >/dev/null 2>&1;
+fi
+
+exec ${DEBUGGER} ${ENGINE} ${CVARS} "$@"
--
Packaging for the OpenArena engine
More information about the Pkg-games-commits
mailing list