[openjk] 02/02: Initial Debian packaging

Simon McVittie smcv at debian.org
Tue Dec 30 12:02:31 UTC 2014


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

smcv pushed a commit to branch master
in repository openjk.

commit 36fa83fa77ef1711e8424a12d503f87db9ee1eed
Author: Simon McVittie <smcv at debian.org>
Date:   Tue Dec 30 12:01:51 2014 +0000

    Initial Debian packaging
---
 debian/.gitignore                                  |  12 ++
 debian/README.jedi-academy-data                    |   6 +
 debian/README.jedi-outcast-data                    |   6 +
 debian/changelog                                   |   5 +
 debian/compat                                      |   1 +
 debian/control                                     |  96 +++++++++
 debian/copyright                                   | 218 +++++++++++++++++++++
 debian/gbp.conf                                    |   5 +
 debian/openjk-academy-mp.desktop                   |   7 +
 debian/openjk-academy-server.install               |   3 +
 debian/openjk-academy-server.links                 |   4 +
 debian/openjk-academy-sp.desktop                   |   7 +
 debian/openjk-academy.bug-control                  |   1 +
 debian/openjk-academy.install                      |  13 ++
 debian/openjk-academy.links                        |   4 +
 debian/openjk-common.install                       |  17 ++
 debian/openjk-outcast-sp.desktop                   |   7 +
 debian/openjk-outcast.bug-control                  |   1 +
 debian/openjk-outcast.install                      |   8 +
 debian/openjk-outcast.links                        |   4 +
 ...ing-an-external-libjpeg-turbo-or-libjpeg8.patch | 120 ++++++++++++
 .../Import-sys_loadlib.h-from-ioquake3.patch       | 128 ++++++++++++
 .../patches/Only-require-glext.h-on-Windows.patch  |  61 ++++++
 ...m-zlib-headers-if-we-re-using-system-zlib.patch | 113 +++++++++++
 ...b-out-debug-code-to-write-to-a-misc-Windo.patch |  29 +++
 debian/patches/series                              |   5 +
 debian/rules                                       | 168 ++++++++++++++++
 debian/scripts/jedi.in                             |  66 +++++++
 debian/source/format                               |   1 +
 29 files changed, 1116 insertions(+)

diff --git a/debian/.gitignore b/debian/.gitignore
new file mode 100644
index 0000000..c715d06
--- /dev/null
+++ b/debian/.gitignore
@@ -0,0 +1,12 @@
+/*.debhelper.log
+/openjk-academy-server/
+/openjk-academy/
+/openjk-common/
+/openjk-dbg/
+/openjk-outcast/
+/icons/
+/scripts/openjk-*
+*.debhelper.log
+*.substvars
+/files
+/*.debhelper
diff --git a/debian/README.jedi-academy-data b/debian/README.jedi-academy-data
new file mode 100644
index 0000000..4ae00a2
--- /dev/null
+++ b/debian/README.jedi-academy-data
@@ -0,0 +1,6 @@
+Use game-data-packager to build and install the jedi-academy-data package.
+
+You will need to install Jedi Academy on a Windows or Wine
+or Wine system, either from CD-ROM or via Steam, and provide the
+installation directory as input. If you use the original CD-ROM
+you will also need to install patch 1.01 before using game-data-packager.
diff --git a/debian/README.jedi-outcast-data b/debian/README.jedi-outcast-data
new file mode 100644
index 0000000..448483f
--- /dev/null
+++ b/debian/README.jedi-outcast-data
@@ -0,0 +1,6 @@
+Use game-data-packager to build and install the jedi-outcast-data package.
+
+You will need to install Jedi Outcast on a Windows or Wine
+or Wine system, either from CD-ROM or via Steam, and provide the
+installation directory as input. If you use the original CD-ROM
+you will also need to install patch 1.04 before using game-data-packager.
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..7dc9e62
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,5 @@
+openjk (0~20141229+ds1-1) UNRELEASED-experimental; urgency=low
+
+  * Initial release. (Closes: #739486)
+
+ -- Simon McVittie <smcv at debian.org>  Tue, 23 Dec 2014 23:13:20 +0000
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..de6c956
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,96 @@
+Source: openjk
+Section: contrib/games
+Priority: extra
+Maintainer: Debian Games Team <pkg-games-devel at lists.alioth.debian.org>
+Uploaders: Simon McVittie <smcv at debian.org>
+Build-Depends:
+ cmake,
+ debhelper (>= 9),
+ dpkg-dev (>= 1.16.1),
+ libjpeg-dev,
+ libpng-dev,
+ libsdl2-dev (>= 2.0.0),
+Standards-Version: 3.9.6
+Vcs-Git: git://anonscm.debian.org/pkg-games/openjk.git
+Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-games/openjk.git
+Homepage: https://github.com/JACoders/OpenJK
+
+Package: openjk-academy
+Architecture: i386 amd64
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+ jedi-academy-data | game-data-packager,
+Description: Jedi Academy single-player and multiplayer game engine
+ Star Wars Jedi Knight: Jedi Academy is a first- and third-person
+ action game set in the Star Wars universe, developed by Raven Software
+ and released in 2003.
+ .
+ This package contains the OpenJK single-player and multiplayer game engines
+ for Jedi Academy, based on the 2013 GPL source release and modified to work
+ on modern systems. It requires non-distributable game data files
+ prepared using the game-data-packager tool.
+ .
+ Jedi Academy is a sequel to Star Wars Jedi Knight II: Jedi Outcast, for
+ which an experimental engine is available in the openjk-outcast package.
+
+Package: openjk-academy-server
+Architecture: i386 amd64
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+ jedi-academy-data | game-data-packager,
+Description: Jedi Academy multiplayer game server
+ Star Wars Jedi Knight: Jedi Academy is a first- and third-person
+ action game set in the Star Wars universe, developed by Raven Software
+ and released in 2003.
+ .
+ This package contains the OpenJK multiplayer dedicated server
+ for Jedi Academy, based on the 2013 GPL source release and modified to work
+ on modern systems. It requires non-distributable game data files
+ prepared using the game-data-packager tool.
+
+Package: openjk-outcast
+Architecture: i386 amd64
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+ jedi-outcast-data | game-data-packager,
+Description: experimental Jedi Outcast single-player game engine
+ Star Wars Jedi Knight II: Jedi Outcast is a first- and third-person
+ action game set in the Star Wars universe, developed by Raven Software
+ and released in 2002.
+ .
+ This package contains the OpenJK single-player game engine for Jedi Outcast,
+ based on the 2013 GPL source release and modified to work
+ on modern systems. It requires non-distributable game data files
+ prepared using the game-data-packager tool.
+ .
+ This version of the OpenJK engine is a mixture of code originating from
+ Jedi Outcast and its sequel Jedi Academy; it is not currently considered to
+ be stable, and does not have a multiplayer component. See the openjk-academy
+ package for the sequel, Star Wars Jedi Knight: Jedi Academy, which is more
+ stable and does support multiplayer.
+
+Package: openjk-common
+Architecture: i386 amd64
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+Description: common files for all OpenJK games
+ This package contains common files for the openjk-academy,
+ openjk-outcast and openjk-academy-server packages.
+
+Package: openjk-dbg
+Architecture: i386 amd64
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+Recommends:
+ openjk-academy (= ${binary:Version})
+ | openjk-outcast (= ${binary:Version})
+ | openjk-academy-server (= ${binary:Version})
+Description: debug symbols for the OpenJK family of game engines
+ This package contains separate debug symbols which can be used to debug
+ crashes in the openjk-academy, openjk-outcast and/or openjk-academy-server
+ packages.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..ff66f56
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,218 @@
+Format: http://dep.debian.net/deps/dep5/
+Upstream-Name: OpenJK
+Source: https://github.com/JACoders/OpenJK/
+Files-Excluded:
+ CMakeModules/FindJPEG.cmake
+ CMakeModules/FindPNG.cmake
+ code*/client/OpenAL
+ code*/client/eax
+ code*/rd-*/glext.h
+ code*/sys/sys_loadlib.h
+ code*/*.dll
+ lib/*.lib
+ lib/jpeg-8c
+ lib/libpng
+ lib/zlib
+ tools/Assimilate
+ tools/ModView
+ tools/create_soundbank
+ tools/lipsyncthing
+ tools/lipthing2
+ tools/maptool
+ tools/pngtgaTool
+Comment:
+ Many files do not indicate a specific copyright holder or license,
+ but appear to have been written by either Activision or Raven Software
+ and were included in the GPL-2+ release of these game engines:
+ <http://www.kotaku.com.au/2013/04/in-tribute-to-lucasarts-raven-releases-the-source-code-for-jedi-knight-ii/>
+ .
+ The original GPL code-drop was withdrawn from Sourceforge due to its
+ inclusion of third-party "Bink" and "Feelit" libraries, but OpenJK
+ does not distribute these. Clarification from one of the Jedi Academy
+ developers:
+ <http://forums.inside3d.com/viewtopic.php?p=48995#p48995>
+ .
+ All of the excluded files appear to be free software and GPL-compatible,
+ with the possible exception of the EAX implementation, but they have been
+ deleted from the Debian package anyway to simplify license compliance:
+ .
+ We use system copies of OpenAL, libjpeg, libpng, zlib, and some
+ CMake modules for Debian, so those are not needed.
+ .
+ EAX is only relevant on Windows, and the license of the bundled DLL
+ is unknown.
+ .
+ glext.h is only used on Windows, and the copy bundled in OpenJK is
+ under an annoyingly verbose license.
+ .
+ sys_loadlib.h was copied from ioquake3 via one of the Return to
+ Castle Wolfenstein family of engines, where it acquired GPL-3+ license
+ headers with additional terms. In Debian we apply a patch to replace
+ this file with a functionally identical one under GPL-2+,
+ taken directly from ioquake3.
+ .
+ The tools directory is not needed for the main OpenJK build, apart from
+ Ibize which contributes one header file.
+
+Files: *
+Copyright:
+ © 1997-1998 Andrew Tridgell
+ © 1999-2005 Id Software, Inc.
+ © 2000-2013 Raven Software, Inc.
+ © 2002-2013 Activision
+ © 2013 OpenJK
+ © 2005-2006 Tim Angus
+ © unspecified ioquake3 contributors
+License: GPL-2+
+
+Files:
+ CMakeModules/FindSDL2.cmake
+Copyright:
+ © 2003-2009 Kitware, Inc.
+License: BSD-3-clause-cmake
+
+Files:
+ CMakeModules/GetGitRevisionDescription.cmake*
+Copyright:
+ © 2009-2010 Iowa State University
+License: boost
+
+Files:
+ code/mp3code/*
+ codemp/mp3code/*
+Copyright:
+ © 1995-1997 Xing Technology
+ © 1998-1999 EMusic.com
+License: GPL-2+
+
+Files:
+ code/qcommon/md4.cpp
+Copyright:
+ © 1990-1992 RSA Data Security, Inc.
+ © 2001-2013 Raven Software
+License: GPL-2+ and RSA-MD4
+
+Files:
+ tools/Ibize/md4.c
+Copyright:
+ © 1990-1992 RSA Data Security, Inc.
+License: RSA-MD4
+
+Files:
+ codemp/qcommon/md5.cpp
+Copyright: none
+License: MD5-PD
+ This code was written by Colin Plumb in 1993, no copyright is claimed.
+ This code is in the public domain; do with it what you wish.
+
+Files:
+ lib/minizip/*
+Copyright:
+ © 1998-2005 Gilles Vollant
+ © 1990-2000 Info-Zip
+License: zlib
+
+# ==== LICENSE TEXTS ===================================================
+
+License: GPL-2+
+ Jedi Academy is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 2 of the License, or
+ (at your option) any later version.
+ .
+ Jedi Academy is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with Jedi Academy.  If not, see <http://www.gnu.org/licenses/>.
+Comment:
+ See /usr/share/common-licenses/GPL-2 for a copy of the GPL version 2.
+ .
+ Some files have variations of this license grant naming a different
+ project instead of Jedi Academy, such as Quake III Arena.
+
+License: RSA-MD4
+ License to copy and use this software is granted provided that it is
+ identified as the RSA Data Security, Inc. MD4 Message-Digest Algorithm in
+ all material mentioning or referencing this software or this function.
+ License is also granted to make and use derivative works provided that
+ such works are identified as derived from the RSA Data Security, Inc. MD4
+ Message-Digest Algorithm in all material mentioning or referencing
+ the derived work.  RSA Data Security, Inc. makes no representations
+ concerning either the merchantability of this software or the suitability
+ of this software for any particular purpose. It is provided as is without
+ express or implied warranty of any kind.
+ .
+ These notices must be retained in any copies of any part of this
+ documentation and/or software.
+
+License: zlib
+ This software is provided 'as-is', without any express or implied
+ warranty.  In no event will the authors be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this software must not be misrepresented; you must not
+    claim that you wrote the original software. If you use this software
+    in a product, an acknowledgment in the product documentation would be
+    appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+    misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+License: boost
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+License: BSD-3-clause-cmake
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ .
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ .
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ .
+ * Neither the names of Kitware, Inc., the Insight Software Consortium,
+ nor the names of their contributors may be used to endorse or promote
+ products derived from this software without specific prior written
+ permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 0000000..190fc09
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,5 @@
+[DEFAULT]
+debian-branch = debian-experimental
+upstream-branch = upstream
+pristine-tar = True
+patch-numbers = False
diff --git a/debian/openjk-academy-mp.desktop b/debian/openjk-academy-mp.desktop
new file mode 100644
index 0000000..f9419ba
--- /dev/null
+++ b/debian/openjk-academy-mp.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Jedi Academy multiplayer
+Exec=/usr/games/openjk-academy-mp --quiet
+Terminal=false
+Icon=openjk
+Type=Application
+Categories=Game;ArcadeGame;
diff --git a/debian/openjk-academy-server.install b/debian/openjk-academy-server.install
new file mode 100644
index 0000000..5c9f3fe
--- /dev/null
+++ b/debian/openjk-academy-server.install
@@ -0,0 +1,3 @@
+debian/scripts/openjk-academy-server   usr/games
+usr/lib/openjk/openjkded               usr/lib/openjk-academy
+usr/lib/openjk/openjkded.*             usr/lib/openjk-academy
diff --git a/debian/openjk-academy-server.links b/debian/openjk-academy-server.links
new file mode 100644
index 0000000..c15af3d
--- /dev/null
+++ b/debian/openjk-academy-server.links
@@ -0,0 +1,4 @@
+usr/share/games/jedi-academy-data/base/assets0.pk3         usr/lib/openjk-academy-server/base/assets0.pk3
+usr/share/games/jedi-academy-data/base/assets1.pk3         usr/lib/openjk-academy-server/base/assets1.pk3
+usr/share/games/jedi-academy-data/base/assets2.pk3         usr/lib/openjk-academy-server/base/assets2.pk3
+usr/share/games/jedi-academy-data/base/assets3.pk3         usr/lib/openjk-academy-server/base/assets3.pk3
diff --git a/debian/openjk-academy-sp.desktop b/debian/openjk-academy-sp.desktop
new file mode 100644
index 0000000..40087b2
--- /dev/null
+++ b/debian/openjk-academy-sp.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Jedi Academy single-player
+Exec=/usr/games/openjk-academy-sp --quiet
+Terminal=false
+Icon=openjk
+Type=Application
+Categories=Game;ArcadeGame;
diff --git a/debian/openjk-academy.bug-control b/debian/openjk-academy.bug-control
new file mode 100644
index 0000000..3dcc36c
--- /dev/null
+++ b/debian/openjk-academy.bug-control
@@ -0,0 +1 @@
+package-status: libgl1-mesa-dri
diff --git a/debian/openjk-academy.install b/debian/openjk-academy.install
new file mode 100644
index 0000000..be241b2
--- /dev/null
+++ b/debian/openjk-academy.install
@@ -0,0 +1,13 @@
+debian/openjk-academy-mp.desktop       usr/share/applications
+debian/openjk-academy-sp.desktop       usr/share/applications
+debian/scripts/openjk-academy-sp       usr/games
+debian/scripts/openjk-academy-mp       usr/games
+usr/lib/openjk/openjk_sp               usr/lib/openjk-academy
+usr/lib/openjk/openjk_sp.*             usr/lib/openjk-academy
+usr/lib/openjk/openjk                  usr/lib/openjk-academy
+usr/lib/openjk/openjk.*                usr/lib/openjk-academy
+usr/lib/openjk/rdsp-*.so               usr/lib/openjk-academy
+usr/lib/openjk/rd-*.so                 usr/lib/openjk-academy
+usr/lib/openjk/OpenJK/jagame*.so
+usr/lib/openjk-academy/OpenJK/jagame*.so
+usr/lib/openjk-academy/base/jagame*.so
diff --git a/debian/openjk-academy.links b/debian/openjk-academy.links
new file mode 100644
index 0000000..75d57ca
--- /dev/null
+++ b/debian/openjk-academy.links
@@ -0,0 +1,4 @@
+usr/share/games/jedi-academy-data/base/assets0.pk3         usr/lib/openjk-academy/base/assets0.pk3
+usr/share/games/jedi-academy-data/base/assets1.pk3         usr/lib/openjk-academy/base/assets1.pk3
+usr/share/games/jedi-academy-data/base/assets2.pk3         usr/lib/openjk-academy/base/assets2.pk3
+usr/share/games/jedi-academy-data/base/assets3.pk3         usr/lib/openjk-academy/base/assets3.pk3
diff --git a/debian/openjk-common.install b/debian/openjk-common.install
new file mode 100644
index 0000000..8c9320e
--- /dev/null
+++ b/debian/openjk-common.install
@@ -0,0 +1,17 @@
+debian/icons/16/openjk.png             usr/share/icons/hicolor/16x16/apps
+debian/icons/32/openjk.png             usr/share/icons/hicolor/32x32/apps
+debian/icons/128/openjk.png            usr/share/icons/hicolor/128x128/apps
+debian/icons/512/openjk.png            usr/share/icons/hicolor/512x512/apps
+debian/README.jedi-academy-data        usr/lib/openjk-academy
+debian/README.jedi-outcast-data        usr/lib/openjk-outcast
+usr/lib/openjk/OpenJK/cgame*.so
+usr/lib/openjk/OpenJK/ui*.so
+usr/lib/openjk/OpenJK/jampgame*.so
+usr/lib/openjk-academy/OpenJK/cgame*.so
+usr/lib/openjk-academy/OpenJK/ui*.so
+usr/lib/openjk-academy/OpenJK/jampgame*.so
+usr/lib/openjk-academy/base/cgame*.so
+usr/lib/openjk-academy/base/ui*.so
+usr/lib/openjk-academy/base/jampgame*.so
+usr/lib/openjk-outcast/OpenJK/cgame*.so
+usr/lib/openjk-outcast/OpenJK/ui*.so
diff --git a/debian/openjk-outcast-sp.desktop b/debian/openjk-outcast-sp.desktop
new file mode 100644
index 0000000..3434596
--- /dev/null
+++ b/debian/openjk-outcast-sp.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Jedi Knight II: Jedi Outcast
+Exec=/usr/games/openjk-outcast-sp --quiet
+Terminal=false
+Icon=openjk
+Type=Application
+Categories=Game;ArcadeGame;
diff --git a/debian/openjk-outcast.bug-control b/debian/openjk-outcast.bug-control
new file mode 100644
index 0000000..3dcc36c
--- /dev/null
+++ b/debian/openjk-outcast.bug-control
@@ -0,0 +1 @@
+package-status: libgl1-mesa-dri
diff --git a/debian/openjk-outcast.install b/debian/openjk-outcast.install
new file mode 100644
index 0000000..2cecea8
--- /dev/null
+++ b/debian/openjk-outcast.install
@@ -0,0 +1,8 @@
+debian/openjk-outcast-sp.desktop       usr/share/applications
+debian/scripts/openjk-outcast-sp       usr/games
+usr/lib/openjk/openjo_sp               usr/lib/openjk-outcast
+usr/lib/openjk/openjo_sp.*             usr/lib/openjk-outcast
+usr/lib/openjk/rdjosp-vanilla_*.so     usr/lib/openjk-outcast
+usr/lib/openjk/OpenJK/jospgame*.so
+usr/lib/openjk-outcast/OpenJK/jospgame*.so
+usr/lib/openjk-outcast/base/jospgame*.so
diff --git a/debian/openjk-outcast.links b/debian/openjk-outcast.links
new file mode 100644
index 0000000..315c7f3
--- /dev/null
+++ b/debian/openjk-outcast.links
@@ -0,0 +1,4 @@
+usr/share/games/jedi-outcast-data/base/assets0.pk3         usr/lib/openjk-outcast/base/assets0.pk3
+usr/share/games/jedi-outcast-data/base/assets1.pk3         usr/lib/openjk-outcast/base/assets1.pk3
+usr/share/games/jedi-outcast-data/base/assets2.pk3         usr/lib/openjk-outcast/base/assets2.pk3
+usr/share/games/jedi-outcast-data/base/assets5.pk3         usr/lib/openjk-outcast/base/assets5.pk3
diff --git a/debian/patches/Allow-using-an-external-libjpeg-turbo-or-libjpeg8.patch b/debian/patches/Allow-using-an-external-libjpeg-turbo-or-libjpeg8.patch
new file mode 100644
index 0000000..4ffbd2f
--- /dev/null
+++ b/debian/patches/Allow-using-an-external-libjpeg-turbo-or-libjpeg8.patch
@@ -0,0 +1,120 @@
+From: Simon McVittie <smcv at debian.org>
+Date: Tue, 30 Dec 2014 00:31:39 +0000
+Subject: Allow using an external libjpeg-turbo or libjpeg8
+
+---
+ CMakeLists.txt                    | 10 ++++++++++
+ code/rd-common/tr_image_jpg.cpp   |  4 ++++
+ code/rd-vanilla/CMakeLists.txt    | 12 +++++++++---
+ codemp/rd-common/tr_image_jpg.cpp |  4 ++++
+ codemp/rd-vanilla/CMakeLists.txt  | 12 +++++++++---
+ 5 files changed, 36 insertions(+), 6 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d41b678..7d0380b 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -37,6 +37,12 @@ else()
+ 	option(UseInternalPNG "Whether to use the included libpng instead of a locally installed one" OFF)
+ endif()
+ 
++if(WIN32 OR APPLE)
++	option(UseInternalJPEG "Whether to use the included libjpeg instead of a locally installed one" ON)
++else()
++	option(UseInternalJPEG "Whether to use the included libjpeg instead of a locally installed one" OFF)
++endif()
++
+ if(APPLE)
+ 	option(MakeApplicationBundles "Whether to build .app application bundles for engines built" ON)
+ else()
+@@ -192,6 +198,10 @@ if(BuildPortableVersion)
+ 	set(SharedDefines ${SharedDefines} "_PORTABLE_VERSION")
+ endif()
+ 
++if(UseInternalJPEG)
++	set(SharedDefines ${SharedDefines} "USE_INTERNAL_JPEG")
++endif()
++
+ set(OpenJKLibDir "${CMAKE_SOURCE_DIR}/lib")
+ 
+ if(NOT MSVC)
+diff --git a/code/rd-common/tr_image_jpg.cpp b/code/rd-common/tr_image_jpg.cpp
+index 72aa9f1..6d52e45 100644
+--- a/code/rd-common/tr_image_jpg.cpp
++++ b/code/rd-common/tr_image_jpg.cpp
+@@ -11,8 +11,12 @@
+  * (stdio.h is sufficient on ANSI-conforming systems.)
+  * You may also wish to include "jerror.h".
+  */
++#ifdef USE_INTERNAL_JPEG
+ #define JPEG_INTERNALS
+ #include "jpeg-8c/jpeglib.h"
++#else
++#include <jpeglib.h>
++#endif
+ 
+ static void R_JPGErrorExit(j_common_ptr cinfo)
+ {
+diff --git a/code/rd-vanilla/CMakeLists.txt b/code/rd-vanilla/CMakeLists.txt
+index 983aaf5..09c498f 100644
+--- a/code/rd-vanilla/CMakeLists.txt
++++ b/code/rd-vanilla/CMakeLists.txt
+@@ -18,9 +18,15 @@ if(BuildSPRdVanilla OR BuildJK2SPRdVanilla)
+ 	# Files
+ 
+ 	# JPEG
+-	file(GLOB_RECURSE J_SRC "${OpenJKLibDir}/jpeg-8c/*.c" "${OpenJKLibDir}/jpeg-8c/*.h")
+-	source_group("jpeg-8c" FILES ${J_SRC})
+-	set(SPRDVanillaFiles ${SPRDVanillaFiles} ${J_SRC})
++	if(UseInternalJPEG)
++		file(GLOB_RECURSE J_SRC "${OpenJKLibDir}/jpeg-8c/*.c" "${OpenJKLibDir}/jpeg-8c/*.h")
++		source_group("jpeg-8c" FILES ${J_SRC})
++		set(SPRDVanillaFiles ${SPRDVanillaFiles} ${J_SRC})
++	else()
++		find_package(JPEG REQUIRED)
++		set(SPRDVanillaRendererIncludeDirectories ${SPRDVanillaRendererIncludeDirectories} ${JPEG_INCLUDE_DIR})
++		set(SPRDVanillaRendererLibraries ${SPRDVanillaRendererLibraries} ${JPEG_LIBRARIES})
++	endif()
+ 
+ 	# GHOUL 2
+ 	set(SPRDVanillaG2Files
+diff --git a/codemp/rd-common/tr_image_jpg.cpp b/codemp/rd-common/tr_image_jpg.cpp
+index 9e35130..3c5b985 100644
+--- a/codemp/rd-common/tr_image_jpg.cpp
++++ b/codemp/rd-common/tr_image_jpg.cpp
+@@ -7,8 +7,12 @@
+  * (stdio.h is sufficient on ANSI-conforming systems.)
+  * You may also wish to include "jerror.h".
+  */
++#ifdef USE_INTERNAL_JPEG
+ #define JPEG_INTERNALS
+ #include "jpeg-8c/jpeglib.h"
++#else
++#include <jpeglib.h>
++#endif
+ 
+ static void R_JPGErrorExit(j_common_ptr cinfo)
+ {
+diff --git a/codemp/rd-vanilla/CMakeLists.txt b/codemp/rd-vanilla/CMakeLists.txt
+index 51ae174..1b05ba0 100644
+--- a/codemp/rd-vanilla/CMakeLists.txt
++++ b/codemp/rd-vanilla/CMakeLists.txt
+@@ -83,9 +83,15 @@ set(MPVanillaRendererCommonFiles
+ source_group("common" FILES ${MPVanillaRendererCommonFiles})
+ set(MPVanillaRendererFiles ${MPVanillaRendererFiles} ${MPVanillaRendererCommonFiles})
+ 
+-file(GLOB_RECURSE MPVanillaRendererJpegFiles "${OpenJKLibDir}/jpeg-8c/*.c" "${OpenJKLibDir}/jpeg-8c/*.h")
+-source_group("jpeg-8c" FILES ${MPVanillaRendererJpegFiles})
+-set(MPVanillaRendererFiles ${MPVanillaRendererFiles} ${MPVanillaRendererJpegFiles})
++if(UseInternalJPEG)
++	file(GLOB_RECURSE MPVanillaRendererJpegFiles "${OpenJKLibDir}/jpeg-8c/*.c" "${OpenJKLibDir}/jpeg-8c/*.h")
++	source_group("jpeg-8c" FILES ${MPVanillaRendererJpegFiles})
++	set(MPVanillaRendererFiles ${MPVanillaRendererFiles} ${MPVanillaRendererJpegFiles})
++else()
++	find_package(JPEG REQUIRED)
++	set(MPVanillaRendererIncludeDirectories ${MPVanillaRendererIncludeDirectories} ${JPEG_INCLUDE_DIR})
++	set(MPVanillaRendererLibraries ${MPVanillaRendererLibraries} ${JPEG_LIBRARIES})
++endif()
+ 
+ if(UseInternalPNG)
+ 	set(MPVanillaRendererLibPngFiles
diff --git a/debian/patches/Import-sys_loadlib.h-from-ioquake3.patch b/debian/patches/Import-sys_loadlib.h-from-ioquake3.patch
new file mode 100644
index 0000000..24f3541
--- /dev/null
+++ b/debian/patches/Import-sys_loadlib.h-from-ioquake3.patch
@@ -0,0 +1,128 @@
+From: Simon McVittie <smcv at debian.org>
+Date: Tue, 30 Dec 2014 00:23:51 +0000
+Subject: Import sys_loadlib.h from ioquake3
+
+The one in OpenJK is functionally identical, but has GPL-3+ headers
+because it came via one of the Return to Castle Wolfenstein family
+of games. Let's simplify the licensing here.
+---
+ code/sys/sys_loadlib.h   | 51 ++++++++++++++++++++++++++++++++++++++++++++++++
+ codemp/sys/sys_loadlib.h | 51 ++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 102 insertions(+)
+ create mode 100644 code/sys/sys_loadlib.h
+ create mode 100644 codemp/sys/sys_loadlib.h
+
+diff --git a/code/sys/sys_loadlib.h b/code/sys/sys_loadlib.h
+new file mode 100644
+index 0000000..0b1eac3
+--- /dev/null
++++ b/code/sys/sys_loadlib.h
+@@ -0,0 +1,51 @@
++/*
++===========================================================================
++Copyright (C) 1999-2005 Id Software, Inc.
++
++This file is part of Quake III Arena source code.
++
++Quake III Arena source code is free software; you can redistribute it
++and/or modify it under the terms of the GNU General Public License as
++published by the Free Software Foundation; either version 2 of the License,
++or (at your option) any later version.
++
++Quake III Arena source code is distributed in the hope that it will be
++useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with Quake III Arena source code; if not, write to the Free Software
++Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
++===========================================================================
++*/
++
++#ifdef DEDICATED
++#	ifdef _WIN32
++#		include <windows.h>
++#		define Sys_LoadLibrary(f) (void*)LoadLibrary(f)
++#		define Sys_UnloadLibrary(h) FreeLibrary((HMODULE)h)
++#		define Sys_LoadFunction(h,fn) (void*)GetProcAddress((HMODULE)h,fn)
++#		define Sys_LibraryError() "unknown"
++#	else
++#	include <dlfcn.h>
++#		define Sys_LoadLibrary(f) dlopen(f,RTLD_NOW)
++#		define Sys_UnloadLibrary(h) dlclose(h)
++#		define Sys_LoadFunction(h,fn) dlsym(h,fn)
++#		define Sys_LibraryError() dlerror()
++#	endif
++#else
++#	ifdef USE_LOCAL_HEADERS
++#		include "SDL.h"
++#		include "SDL_loadso.h"
++#	else
++#		include <SDL.h>
++#		include <SDL_loadso.h>
++#	endif
++#	define Sys_LoadLibrary(f) SDL_LoadObject(f)
++#	define Sys_UnloadLibrary(h) SDL_UnloadObject(h)
++#	define Sys_LoadFunction(h,fn) SDL_LoadFunction(h,fn)
++#	define Sys_LibraryError() SDL_GetError()
++#endif
++
++void * QDECL Sys_LoadDll(const char *name, qboolean useSystemLib);
+diff --git a/codemp/sys/sys_loadlib.h b/codemp/sys/sys_loadlib.h
+new file mode 100644
+index 0000000..0b1eac3
+--- /dev/null
++++ b/codemp/sys/sys_loadlib.h
+@@ -0,0 +1,51 @@
++/*
++===========================================================================
++Copyright (C) 1999-2005 Id Software, Inc.
++
++This file is part of Quake III Arena source code.
++
++Quake III Arena source code is free software; you can redistribute it
++and/or modify it under the terms of the GNU General Public License as
++published by the Free Software Foundation; either version 2 of the License,
++or (at your option) any later version.
++
++Quake III Arena source code is distributed in the hope that it will be
++useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with Quake III Arena source code; if not, write to the Free Software
++Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
++===========================================================================
++*/
++
++#ifdef DEDICATED
++#	ifdef _WIN32
++#		include <windows.h>
++#		define Sys_LoadLibrary(f) (void*)LoadLibrary(f)
++#		define Sys_UnloadLibrary(h) FreeLibrary((HMODULE)h)
++#		define Sys_LoadFunction(h,fn) (void*)GetProcAddress((HMODULE)h,fn)
++#		define Sys_LibraryError() "unknown"
++#	else
++#	include <dlfcn.h>
++#		define Sys_LoadLibrary(f) dlopen(f,RTLD_NOW)
++#		define Sys_UnloadLibrary(h) dlclose(h)
++#		define Sys_LoadFunction(h,fn) dlsym(h,fn)
++#		define Sys_LibraryError() dlerror()
++#	endif
++#else
++#	ifdef USE_LOCAL_HEADERS
++#		include "SDL.h"
++#		include "SDL_loadso.h"
++#	else
++#		include <SDL.h>
++#		include <SDL_loadso.h>
++#	endif
++#	define Sys_LoadLibrary(f) SDL_LoadObject(f)
++#	define Sys_UnloadLibrary(h) SDL_UnloadObject(h)
++#	define Sys_LoadFunction(h,fn) SDL_LoadFunction(h,fn)
++#	define Sys_LibraryError() SDL_GetError()
++#endif
++
++void * QDECL Sys_LoadDll(const char *name, qboolean useSystemLib);
diff --git a/debian/patches/Only-require-glext.h-on-Windows.patch b/debian/patches/Only-require-glext.h-on-Windows.patch
new file mode 100644
index 0000000..2c516df
--- /dev/null
+++ b/debian/patches/Only-require-glext.h-on-Windows.patch
@@ -0,0 +1,61 @@
+From: Simon McVittie <smcv at debian.org>
+Date: Thu, 25 Dec 2014 23:55:35 +0000
+Subject: Only require glext.h on Windows
+
+The license of the version shipped in OpenJK is Free, but is annoyingly
+verbose; removing it is easier than putting it in debian/copyright.
+
+Forwarded: not needed, Debian-specific
+---
+ code/rd-vanilla/CMakeLists.txt   | 6 +++++-
+ codemp/rd-vanilla/CMakeLists.txt | 6 +++++-
+ 2 files changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/code/rd-vanilla/CMakeLists.txt b/code/rd-vanilla/CMakeLists.txt
+index 11e991a..983aaf5 100644
+--- a/code/rd-vanilla/CMakeLists.txt
++++ b/code/rd-vanilla/CMakeLists.txt
+@@ -112,7 +112,6 @@ if(BuildSPRdVanilla OR BuildJK2SPRdVanilla)
+ 
+ 	# main files
+ 	set(SPRDVanillaMainFiles
+-		"${SPDir}/rd-vanilla/glext.h"
+ 		"${SPDir}/rd-vanilla/qgl.h"
+ 		"${SPDir}/rd-vanilla/tr_backend.cpp"
+ 		"${SPDir}/rd-vanilla/tr_bsp.cpp"
+@@ -147,6 +146,11 @@ if(BuildSPRdVanilla OR BuildJK2SPRdVanilla)
+ 		"${SPDir}/rd-vanilla/tr_WorldEffects.h"
+ 		)
+ 	source_group("renderer" FILES ${SPRDVanillaMainFiles})
++
++	if(WIN32)
++		set(SPRDVanillaMainFiles ${SPRDVanillaMainFiles} "${SPDir}/rd-vanilla/glext.h")
++	endif()
++
+ 	set(SPRDVanillaFiles ${SPRDVanillaFiles} ${SPRDVanillaMainFiles})
+ 
+ 	set(SPRDVanillaRdCommonFiles
+diff --git a/codemp/rd-vanilla/CMakeLists.txt b/codemp/rd-vanilla/CMakeLists.txt
+index 4d51711..51ae174 100644
+--- a/codemp/rd-vanilla/CMakeLists.txt
++++ b/codemp/rd-vanilla/CMakeLists.txt
+@@ -9,7 +9,6 @@ set(MPVanillaRendererIncludeDirectories ${MPDir})
+ set(MPVanillaRendererIncludeDirectories ${MPVanillaRendererIncludeDirectories} "${MPDir}/rd-vanilla")
+ 
+ set(MPVanillaRendererFiles
+-	"${MPDir}/rd-vanilla/glext.h"
+ 	"${MPDir}/rd-vanilla/qgl.h"
+ 	"${MPDir}/rd-vanilla/G2_API.cpp"
+ 	"${MPDir}/rd-vanilla/G2_bolts.cpp"
+@@ -47,6 +46,11 @@ set(MPVanillaRendererFiles
+ 	"${MPDir}/rd-vanilla/tr_WorldEffects.cpp"
+ 	"${MPDir}/rd-vanilla/tr_WorldEffects.h"
+ 	)
++
++if(WIN32)
++	set(MPVanillaRendererFiles ${MPVanillaRendererFiles} "${MPDir}/rd-vanilla/glext.h")
++endif()
++
+ source_group("renderer" FILES ${MPVanillaRendererFiles})
+ 
+ set(MPVanillaRendererGhoul2Files
diff --git a/debian/patches/Use-system-zlib-headers-if-we-re-using-system-zlib.patch b/debian/patches/Use-system-zlib-headers-if-we-re-using-system-zlib.patch
new file mode 100644
index 0000000..cba348b
--- /dev/null
+++ b/debian/patches/Use-system-zlib-headers-if-we-re-using-system-zlib.patch
@@ -0,0 +1,113 @@
+From: Simon McVittie <smcv at debian.org>
+Date: Tue, 30 Dec 2014 00:32:01 +0000
+Subject: Use system zlib headers if we're using system zlib
+
+---
+ CMakeLists.txt              | 4 ++++
+ code/qcommon/files.h        | 4 ++++
+ codemp/client/cl_parse.cpp  | 5 +++++
+ codemp/server/sv_client.cpp | 6 ++++++
+ lib/minizip/ioapi.c         | 5 +++++
+ lib/minizip/unzip.h         | 5 +++++
+ 6 files changed, 29 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7d0380b..2db8c24 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -202,6 +202,10 @@ if(UseInternalJPEG)
+ 	set(SharedDefines ${SharedDefines} "USE_INTERNAL_JPEG")
+ endif()
+ 
++if(UseInternalZlib)
++	set(SharedDefines ${SharedDefines} "USE_INTERNAL_ZLIB")
++endif()
++
+ set(OpenJKLibDir "${CMAKE_SOURCE_DIR}/lib")
+ 
+ if(NOT MSVC)
+diff --git a/code/qcommon/files.h b/code/qcommon/files.h
+index f45fe98..8383eb6 100644
+--- a/code/qcommon/files.h
++++ b/code/qcommon/files.h
+@@ -25,7 +25,11 @@ This file is part of Jedi Academy.
+    Structures local to the files_* modules.
+ */
+ 
++#ifdef USE_INTERNAL_ZLIB
+ #include "zlib/zlib.h"
++#else
++#include <zlib.h>
++#endif
+ #include "minizip/unzip.h"
+ 
+ #define MAX_ZPATH			256
+diff --git a/codemp/client/cl_parse.cpp b/codemp/client/cl_parse.cpp
+index a48fa0b..71df1d8 100644
+--- a/codemp/client/cl_parse.cpp
++++ b/codemp/client/cl_parse.cpp
+@@ -3,7 +3,12 @@
+ #include "client.h"
+ #include "cl_cgameapi.h"
+ #include "qcommon/stringed_ingame.h"
++
++#ifdef USE_INTERNAL_ZLIB
+ #include "zlib/zlib.h"
++#else
++#include <zlib.h>
++#endif
+ 
+ static char hiddenCvarVal[128];
+ 
+diff --git a/codemp/server/sv_client.cpp b/codemp/server/sv_client.cpp
+index e5b3e7e..7c10b1b 100644
+--- a/codemp/server/sv_client.cpp
++++ b/codemp/server/sv_client.cpp
+@@ -2,7 +2,13 @@
+ 
+ #include "server.h"
+ #include "qcommon/stringed_ingame.h"
++
++#ifdef USE_INTERNAL_ZLIB
+ #include "zlib/zlib.h"
++#else
++#include <zlib.h>
++#endif
++
+ #include "server/sv_gameapi.h"
+ 
+ static void SV_CloseDownload( client_t *cl );
+diff --git a/lib/minizip/ioapi.c b/lib/minizip/ioapi.c
+index 217eb25..e0ffbeb 100644
+--- a/lib/minizip/ioapi.c
++++ b/lib/minizip/ioapi.c
+@@ -10,7 +10,12 @@
+ #include <stdlib.h>
+ #include <string.h>
+ 
++#ifdef USE_INTERNAL_ZLIB
+ #include "../zlib/zlib.h"
++#else
++#include <zlib.h>
++#endif
++
+ #include "ioapi.h"
+ 
+ 
+diff --git a/lib/minizip/unzip.h b/lib/minizip/unzip.h
+index 4b090bd..f8f9f29 100644
+--- a/lib/minizip/unzip.h
++++ b/lib/minizip/unzip.h
+@@ -48,7 +48,12 @@
+ extern "C" {
+ #endif
+ 
++#ifdef USE_INTERNAL_ZLIB
+ #include "zlib/zlib.h"
++#else
++#include <zlib.h>
++#endif
++
+ #include "ioapi.h"
+ 
+ #define NOUNCRYPT
diff --git a/debian/patches/g_utils-stub-out-debug-code-to-write-to-a-misc-Windo.patch b/debian/patches/g_utils-stub-out-debug-code-to-write-to-a-misc-Windo.patch
new file mode 100644
index 0000000..aa91968
--- /dev/null
+++ b/debian/patches/g_utils-stub-out-debug-code-to-write-to-a-misc-Windo.patch
@@ -0,0 +1,29 @@
+From: Simon McVittie <smcv at debian.org>
+Date: Sat, 27 Dec 2014 22:00:37 +0000
+Subject: g_utils: stub out debug code to write to a misc Windows-style file
+
+This is just not going to work.
+---
+ code/game/g_utils.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/code/game/g_utils.cpp b/code/game/g_utils.cpp
+index c5aaf50..c3a40c5 100644
+--- a/code/game/g_utils.cpp
++++ b/code/game/g_utils.cpp
+@@ -813,6 +813,7 @@ gentity_t *G_Spawn( void )
+ 		e = &g_entities[0];
+ 
+ //--------------Use this to dump directly to a file
++#if 0
+ 		char buff[256];
+ 		FILE *fp;
+ 
+@@ -827,6 +828,7 @@ gentity_t *G_Spawn( void )
+ 			fputs( buff, fp );
+ 		}
+ 		fclose( fp );
++#endif
+ /*
+ //---------------Or use this to dump to the console -- beware though, the console will fill quickly and you probably won't see the full list
+ 		for ( i = 0 ; i<globals.num_entities ; i++, e++) 
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..1b55d2b
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,5 @@
+Import-sys_loadlib.h-from-ioquake3.patch
+Only-require-glext.h-on-Windows.patch
+g_utils-stub-out-debug-code-to-write-to-a-misc-Windo.patch
+Allow-using-an-external-libjpeg-turbo-or-libjpeg8.patch
+Use-system-zlib-headers-if-we-re-using-system-zlib.patch
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..c799d5b
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,168 @@
+#!/usr/bin/make -f
+#export DH_VERBOSE=1
+
+# Flags valid in both CFLAGS and CXXFLAGS
+compiler_flags := \
+	-Wall \
+	-Wno-unused-parameter \
+	-Wno-missing-field-initializers \
+	-fno-strict-aliasing \
+	-Wno-strict-aliasing \
+	-Wno-unused-but-set-variable \
+	$(NULL)
+DEB_CFLAGS_MAINT_APPEND := \
+	$(compiler_flags) \
+	$(NULL)
+DEB_CXXFLAGS_MAINT_APPEND := \
+	$(compiler_flags) \
+	$(NULL)
+DEB_LDFLAGS_MAINT_APPEND := \
+	-lm \
+	$(NULL)
+
+ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+	CMAKE_BUILD_TYPE = RELWITHDEBINFO
+else
+	CMAKE_BUILD_TYPE = DEBUG
+endif
+
+include /usr/share/dpkg/default.mk
+
+# for convenience, use a builddir that is excluded by upstream's .gitignore
+%:
+	dh $@ --builddir=obj
+
+override_dh_auto_configure:
+	dh_auto_configure -- \
+		-DBuildJK2SPEngine=ON \
+		-DBuildJK2SPRdVanilla=ON \
+		-DBuildJK2SPGame=ON \
+		-DCMAKE_BUILD_TYPE=$(CMAKE_BUILD_TYPE) \
+		-DCMAKE_INSTALL_PREFIX=/usr/lib/openjk \
+		-DCMAKE_VERBOSE_MAKEFILE=TRUE \
+		$(NULL)
+
+override_dh_auto_build: debian/icons
+	dh_auto_build
+
+override_dh_auto_install: debian/icons
+	dh_auto_install
+	cd debian/tmp/usr/lib/openjk && ln -s openjo_sp.* openjo_sp
+	cd debian/tmp/usr/lib/openjk && ln -s openjk_sp.* openjk_sp
+	cd debian/tmp/usr/lib/openjk && ln -s openjk.* openjk
+	cd debian/tmp/usr/lib/openjk && ln -s openjkded.* openjkded
+	install -d debian/tmp/usr/lib/openjk-academy/OpenJK
+	cd debian/tmp/usr/lib/openjk-academy/OpenJK && ln -s ../../openjk/OpenJK/*.so .
+	install -d debian/tmp/usr/lib/openjk-academy/base
+	cd debian/tmp/usr/lib/openjk-academy/base && ln -s ../../openjk/OpenJK/*.so .
+	install -d debian/tmp/usr/lib/openjk-outcast/OpenJK
+	cd debian/tmp/usr/lib/openjk-outcast/OpenJK && ln -s ../../openjk/OpenJK/*.so .
+	install -d debian/tmp/usr/lib/openjk-outcast/base
+	cd debian/tmp/usr/lib/openjk-outcast/base && ln -s ../../openjk/OpenJK/*.so .
+	sed \
+		-e 's!@IOQ3BINARY@!openjk_sp!' \
+		-e 's!@IOQ3SELF@!openjk-academy-sp!' \
+		-e 's!@LIBDIR@!openjk-academy!' \
+		-e 's!@DATA@!jedi-academy-data!' \
+		-e 's!@IOQ3GAME@!Jedi Academy!' \
+		-e 's!@IOQ3ROLE@!single-player!' \
+		< debian/scripts/jedi.in > debian/scripts/openjk-academy-sp
+	sed \
+		-e 's!@IOQ3BINARY@!openjo_sp!' \
+		-e 's!@IOQ3SELF@!openjk-outcast-sp!' \
+		-e 's!@LIBDIR@!openjk-outcast!' \
+		-e 's!@DATA@!jedi-outcast-data!' \
+		-e 's!@IOQ3GAME@!Jedi Knight II!' \
+		-e 's!@IOQ3ROLE@!single-player!' \
+		< debian/scripts/jedi.in > debian/scripts/openjk-outcast-sp
+	sed \
+		-e 's!@IOQ3BINARY@!openjk!' \
+		-e 's!@IOQ3SELF@!openjk-academy-mp!' \
+		-e 's!@LIBDIR@!openjk-academy!' \
+		-e 's!@DATA@!jedi-academy-data!' \
+		-e 's!@IOQ3GAME@!Jedi Academy!' \
+		-e 's!@IOQ3ROLE@!multiplayer!' \
+		< debian/scripts/jedi.in > debian/scripts/openjk-academy-mp
+	sed \
+		-e 's!@IOQ3BINARY@!openjkded!' \
+		-e 's!@IOQ3SELF@!openjk-academy-server!' \
+		-e 's!@LIBDIR@!openjk-academy!' \
+		-e 's!@DATA@!jedi-academy-data!' \
+		-e 's!@IOQ3GAME@!Jedi Academy!' \
+		-e 's!@IOQ3ROLE@!server!' \
+		< debian/scripts/jedi.in > debian/scripts/openjk-academy-server
+	chmod 0755 debian/scripts/openjk-*
+
+debian/icons: debian/rules
+	install -d debian/icons/512 debian/icons/128 \
+		debian/icons/32 debian/icons/16
+	icns2png -x code/macosx/OpenJK.icns
+	mv OpenJK_512x512x32.png debian/icons/512/openjk.png
+	mv OpenJK_128x128x32.png debian/icons/128/openjk.png
+	mv OpenJK_32x32x32.png debian/icons/32/openjk.png
+	mv OpenJK_16x16x32.png debian/icons/16/openjk.png
+
+# no libraries here, only plugins
+override_dh_makeshlibs:
+	:
+
+override_dh_strip:
+	dh_strip --dbg-package=openjk-dbg
+
+override_dh_clean:
+	rm -fr debian/icons
+	dh_clean
+
+# =====================================================================
+
+ORIG_REPO ?= https://github.com/JACoders/OpenJK
+ORIG_REL =
+# Empty if upstream ever get round to tagging a release
+ORIG_REV = 428c0a0a2217b2e9e83a35fa1ac52f6c2bf477f1
+# Use the date of the ORIG_REV, or 20130426.1 if you snapshot twice in a day,
+# or empty if ORIG_REV is
+ORIG_DATE = 20141229
+ORIG_SUFFIX = +ds1
+
+ifeq (${ORIG_REV},)
+	# I have no idea what tags are going to look like, because there
+	# aren't any yet. For now, assume they'll be like "1.2".
+	ORIG_VER := ${ORIG_REL}${ORIG_SUFFIX}
+	ORIG_EXPORT := ${ORIG_REL}
+else
+ifeq (${ORIG_REL},)
+	ORIG_VER := 0~${ORIG_DATE}${ORIG_SUFFIX}
+	ORIG_EXPORT := ${ORIG_REV}
+else
+	ORIG_VER := ${ORIG_REL}+${ORIG_DATE}${ORIG_SUFFIX}
+	ORIG_EXPORT := ${ORIG_REV}
+endif
+endif
+
+get-orig-source:
+	git clone --bare --branch master ${ORIG_REPO} openjk-${ORIG_VER}.git
+	GIT_DIR=openjk-${ORIG_VER}.git git archive \
+		--format=tar \
+		--prefix=openjk-${ORIG_VER}.orig/ \
+		${ORIG_EXPORT} | tar -xvf-
+	rm -fr openjk-${ORIG_VER}.orig/CMakeModules/FindJPEG.cmake
+	rm -fr openjk-${ORIG_VER}.orig/CMakeModules/FindPNG.cmake
+	rm -fr openjk-${ORIG_VER}.orig/code*/client/OpenAL
+	rm -fr openjk-${ORIG_VER}.orig/code*/client/eax
+	rm -fr openjk-${ORIG_VER}.orig/code*/rd-*/glext.h
+	rm -fr openjk-${ORIG_VER}.orig/code*/sys/sys_loadlib.h
+	rm -fr openjk-${ORIG_VER}.orig/code*/*.dll
+	rm -fr openjk-${ORIG_VER}.orig/lib/*.lib
+	rm -fr openjk-${ORIG_VER}.orig/lib/jpeg-*
+	rm -fr openjk-${ORIG_VER}.orig/lib/libpng
+	rm -fr openjk-${ORIG_VER}.orig/lib/zlib
+	rm -fr openjk-${ORIG_VER}.orig/tools/Assimilate
+	rm -fr openjk-${ORIG_VER}.orig/tools/ModView
+	rm -fr openjk-${ORIG_VER}.orig/tools/create_soundbank
+	rm -fr openjk-${ORIG_VER}.orig/tools/lipsyncthing
+	rm -fr openjk-${ORIG_VER}.orig/tools/lipthing2
+	rm -fr openjk-${ORIG_VER}.orig/tools/maptool
+	rm -fr openjk-${ORIG_VER}.orig/tools/pngtgaTool
+	tar --xz -cvf openjk_${ORIG_VER}.orig.tar.xz openjk-${ORIG_VER}.orig
+	rm -rf openjk-${ORIG_VER}.orig
+	rm -rf openjk-${ORIG_VER}.git
diff --git a/debian/scripts/jedi.in b/debian/scripts/jedi.in
new file mode 100644
index 0000000..12696fd
--- /dev/null
+++ b/debian/scripts/jedi.in
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+IOQ3SELF="@IOQ3SELF@"
+IOQ3GAME="@IOQ3GAME@"
+IOQ3ROLE="@IOQ3ROLE@"
+IOQ3BINARY="@IOQ3BINARY@"
+
+BASEPATH="/usr/lib/@LIBDIR@"
+ENGINE="$BASEPATH/${IOQ3BINARY}"
+
+QUIET=0
+
+EXCUSE="\
+${IOQ3GAME} ${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
+
+# sanity check: the engine doesn't cope well with missing data
+if test -f $BASEPATH/base/assets1.pk3; then
+  :
+else
+  case "$IOQ3ROLE" in
+    *server*)
+      echo "${IOQ3GAME} data missing, see ${BASEPATH}/README. at DATA@"
+      ;;
+    *)
+      /usr/lib/openjk/need-data.sh "${IOQ3GAME}" "`cat ${BASEPATH}/README. at DATA@`"
+      ;;
+  esac
+  exit 72     # EX_OSFILE
+fi
+
+if test "z$QUIET" = z1; then
+  exec >/dev/null 2>&1;
+fi
+
+# So that switching SP <-> MP will work
+cd $BASEPATH
+
+if test -n "$OPENJK_BACKTRACE"; then
+  exec gdb -return-child-result -batch -ex run -ex 'thread apply all bt full' -ex kill -ex quit --args ${ENGINE} ${CVARS} "$@"
+else
+  exec ${OPENJK_DEBUGGER} ${ENGINE} ${CVARS} "$@"
+fi
+# vim:set sw=2 sts=2 ft=sh:
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)

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



More information about the Pkg-games-commits mailing list