[ioquake3] 11/11: Install symlinks to native-code cgame, qagame and ui modules for quake3

Simon McVittie smcv at debian.org
Fri Jan 23 01:15:49 UTC 2015


This is an automated email from the git hooks/post-receive script.

smcv pushed a commit to branch debian-experimental
in repository ioquake3.

commit 0443ffa735fc47f4cdfc21892b8e063a9a1f0df8
Author: Simon McVittie <smcv at debian.org>
Date:   Fri Jan 23 00:26:38 2015 +0000

    Install symlinks to native-code cgame, qagame and ui modules for quake3
---
 debian/changelog               |  5 +++++
 debian/control                 | 26 +++++++++++++++++---------
 debian/copyright               |  2 +-
 debian/ioquake3-server.install | 12 +++++++++---
 debian/ioquake3.install        | 17 +++++++++++------
 debian/rules                   | 29 ++++++++++++++++++++++-------
 6 files changed, 65 insertions(+), 26 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 5addadd..d654f53 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -9,6 +9,11 @@ ioquake3 (1.36+u20150114+dfsg1-1) UNRELEASED; urgency=medium
   * q3arch: add support for the modified architecture string used by iortcw
   * README.Debian: update instructions for integrating new games
     to point to src:openarena and src:quake as examples
+  * Install symlinks to native-code cgame, qagame and ui modules so that
+    quake3 (full, demo and Team Arena variants) can use them
+  * Make ioquake3 depend on ioquake3-server (the cost is approximately
+    1 megabyte, which is tiny compared with the game data) so it can share
+    the compiled qagame modules
 
  -- Simon McVittie <smcv at debian.org>  Wed, 31 Dec 2014 11:36:48 +0000
 
diff --git a/debian/control b/debian/control
index 828651b..bd8630c 100644
--- a/debian/control
+++ b/debian/control
@@ -22,7 +22,10 @@ Homepage: http://www.ioquake3.org/
 
 Package: ioquake3
 Architecture: linux-any kfreebsd-any hurd-any
-Depends: ${misc:Depends}, ${shlibs:Depends}
+Depends:
+ ioquake3-server (= ${binary:Version}),
+ ${misc:Depends},
+ ${shlibs:Depends},
 Recommends: x11-utils | zenity | kdebase-bin
 Breaks: openarena (<< 0.8.8-9~)
 Description: Game engine for 3D first person shooter games
@@ -35,22 +38,27 @@ Description: Game engine for 3D first person shooter games
 
 Package: ioquake3-server
 Architecture: linux-any kfreebsd-any hurd-any
-Depends: ${misc:Depends}, ${shlibs:Depends}
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
 Breaks: openarena-server (<< 0.8.8-9~)
-Description: Standalone server for ioQuake3 based games
- This package installs a modified version of the ioQuake3 dedicated server,
- which can be used to serve various games based on that engine, such as
+Description: Engine for 3D first person shooter games - server and common files
+ This package contains common files for the ioQuake3 game engine,
+ which can be used to play various games based on that engine, such as
  OpenArena, Quake III: Arena, World of Padman and Urban Terror.
+ It also contains the dedicated server binary.
  .
- This package alone isn't of any use; to get a usable server, install
- openarena-server or another suitable set of server data.
+ This package alone isn't of any use; to get a playable game, install
+ openarena or another suitable set of game data, or to get a usable server,
+ install openarena-server or another suitable set of server data.
 
 Package: ioquake3-dbg
 Architecture: linux-any kfreebsd-any hurd-any
 Section: debug
 Priority: extra
-Depends: ioquake3 (= ${binary:Version}) | ioquake3-server (= ${binary:Version}),
-         ${misc:Depends}
+Depends:
+ ioquake3-server (= ${binary:Version}),
+ ${misc:Depends},
 Description: debug symbols for the ioquake3 game engine
  This package contains debug symbols for the ioQuake3 game engine,
  which can be used to analyze crashes in games that use Debian's shared
diff --git a/debian/copyright b/debian/copyright
index 8e61c09..3e3c18c 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -49,7 +49,7 @@ License: GPL-2+
 Files: debian/*
 Copyright:
   © 2010 Bruno Kleinert
-  © 2010-2013 Simon McVittie
+  © 2010-2015 Simon McVittie
 License: GPL-2+
 
 Files: code/qcommon/md5.c
diff --git a/debian/ioquake3-server.install b/debian/ioquake3-server.install
index 7b44256..f04564e 100644
--- a/debian/ioquake3-server.install
+++ b/debian/ioquake3-server.install
@@ -1,4 +1,10 @@
-build/ioq3ded usr/lib/ioquake3
-build/baseq3/qagame*.so usr/lib/ioquake3/baseq3
-build/missionpack/qagame*.so usr/lib/ioquake3/missionpack
+usr/lib/ioquake3/ioq3ded
+usr/lib/ioquake3/*/qagame*.so
+
+# Symlinks for the full game, to be used by quake3.
+# The actual symlinks are made in debian/rules because the names vary;
+# we put them in this package instead of quake3 so that quake3 doesn't
+# have to be architecture-specific.
+usr/lib/quake3/*/*/qagame*.so
+
 debian/q3arch usr/share/ioquake3
diff --git a/debian/ioquake3.install b/debian/ioquake3.install
index 5062845..d22b762 100644
--- a/debian/ioquake3.install
+++ b/debian/ioquake3.install
@@ -1,6 +1,11 @@
-build/ioquake3 usr/lib/ioquake3
-build/baseq3/cgame*.so usr/lib/ioquake3/baseq3
-build/baseq3/ui*.so usr/lib/ioquake3/baseq3
-build/missionpack/cgame*.so usr/lib/ioquake3/missionpack
-build/missionpack/ui*.so usr/lib/ioquake3/missionpack
-build/renderer*.so usr/lib/ioquake3
+usr/lib/ioquake3/ioquake3
+usr/lib/ioquake3/*/cgame*.so
+usr/lib/ioquake3/*/ui*.so
+usr/lib/ioquake3/renderer*.so
+
+# Symlinks for the full game, to be used by quake3.
+# The actual symlinks are made in debian/rules because the names vary;
+# we put them in this package instead of quake3 so that quake3 doesn't
+# have to be architecture-specific.
+usr/lib/quake3/*/*/cgame*.so
+usr/lib/quake3/*/*/ui*.so
diff --git a/debian/rules b/debian/rules
index 0a46409..95bce8b 100755
--- a/debian/rules
+++ b/debian/rules
@@ -20,9 +20,7 @@ else
 TARGET = debug
 endif
 
-override_dh_auto_build:
-	dh_auto_build \
-		-- \
+OPTIONS := \
 		BR=build \
 		BD=build \
 		V=1 \
@@ -45,10 +43,27 @@ override_dh_auto_build:
 		BUILD_GAME_QVM=0 \
 		VERSION=$(DEB_VERSION)/$(distro) \
 		CFLAGS="$(CFLAGS)" \
-		$(TARGET)
-	install build/ioq3ded.* build/ioq3ded
-	install build/ioquake3.* build/ioquake3
-	install README.md build/README
+		NO_STRIP=1 \
+		$(NULL)
+
+override_dh_auto_build:
+	dh_auto_build -- $(OPTIONS) $(TARGET)
+
+override_dh_auto_install: DESTDIR = debian/tmp
+override_dh_auto_install:
+	install -d $(DESTDIR)/usr/lib/ioquake3/baseq3/
+	$(MAKE) copyfiles $(OPTIONS) COPYDIR=$(DESTDIR)/usr/lib/ioquake3
+	mv $(DESTDIR)/usr/lib/ioquake3/ioquake3.* $(DESTDIR)/usr/lib/ioquake3/ioquake3
+	mv $(DESTDIR)/usr/lib/ioquake3/ioq3ded.* $(DESTDIR)/usr/lib/ioquake3/ioq3ded
+	install -m644 README.md build/README
+	install -d $(DESTDIR)/usr/lib/quake3/base/baseq3/
+	install -d $(DESTDIR)/usr/lib/quake3/demo/demoq3/
+	install -d $(DESTDIR)/usr/lib/quake3/ta/baseq3/
+	install -d $(DESTDIR)/usr/lib/quake3/ta/missionpack/
+	cd $(DESTDIR)/usr/lib/quake3/base/baseq3 && ln -s ../../../ioquake3/baseq3/*.so .
+	cd $(DESTDIR)/usr/lib/quake3/demo/demoq3 && ln -s ../../../ioquake3/baseq3/*.so .
+	cd $(DESTDIR)/usr/lib/quake3/ta/baseq3 && ln -s ../../../ioquake3/baseq3/*.so .
+	cd $(DESTDIR)/usr/lib/quake3/ta/missionpack && ln -s ../../../ioquake3/missionpack/*.so .
 
 override_dh_strip:
 	dh_strip --dbg-package=ioquake3-dbg

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/ioquake3.git



More information about the Pkg-games-commits mailing list