summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Swanson2014-06-14 11:07:42 -0700
committerMike Swanson2014-06-14 11:07:42 -0700
commit0b429455d27e74b1b699761843b5004a33b0f52f (patch)
tree1ec94435fcc7446a9b0e51dc59c055202ba0fd04
downloadaur-0b429455d27e74b1b699761843b5004a33b0f52f.tar.gz
Adopt fs2_open
-rw-r--r--.SRCINFO40
-rw-r--r--.gitignore5
-rw-r--r--PKGBUILD71
-rwxr-xr-xfs2_open11
-rw-r--r--fs2_open.changelog20
-rw-r--r--fs2_open.desktop7
-rw-r--r--fs2_open.install13
-rw-r--r--increase_joy_buttons_fixed.patch96
-rw-r--r--options13
-rw-r--r--osapi_unix.patch11
10 files changed, 287 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..bb2dbc272631
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,40 @@
+pkgbase = fs2_open
+ pkgdesc = An enhancement of the FreeSpace 2 engine
+ pkgver = 3.7.2~rc3
+ pkgrel = 1
+ epoch = 1
+ url = http://scp.indiegames.us
+ install = fs2_open.install
+ changelog = fs2_open.changelog
+ arch = i686
+ arch = x86_64
+ license = custom:fs2_open
+ depends = fs2_open-data
+ depends = glu
+ depends = libjpeg
+ depends = libpng
+ depends = libtheora
+ depends = libvorbis
+ depends = lua51
+ depends = openal
+ depends = sdl
+ optdepends = fs2_open-mediavps: extensive audiovisual enhancements
+ conflicts = fs2_open_3614
+ replaces = fs2_open_3614
+ source = http://swc.fs2downloads.com/builds/fs2_open_3_7_2_RC3_src.tgz
+ source = fs2_open
+ source = fs2_open.changelog
+ source = fs2_open.desktop
+ source = increase_joy_buttons_fixed.patch
+ source = options
+ source = osapi_unix.patch
+ sha256sums = 999de332f90608a4d54d6c6b771a39cc680427da6cbbe8f41014bef763cb60e3
+ sha256sums = c978c91ced574a0904a883d41c72248796e0cf50a0c5e06bc5f890d92bb244c1
+ sha256sums = 6e85bffb776b7daf707d45741a5da5311f211885bfdb8ea44202691256b1d1b4
+ sha256sums = cac8914fb96eb4f09d8dec0005ccb3626499ab9f3f4c5f64c11bd8d2e913e372
+ sha256sums = 750d9e51054e4c88679a9690a10d06a7fceaa29b7afa2f31cfcd022d6aa74041
+ sha256sums = 6e8148aea5d23658e74a2893652de8889af45d542c079d086b8fd586c8b73229
+ sha256sums = 4256b298690e1ef0fc4d923dd24b803fe57646a941eb48a6ffd7f8de0e96d945
+
+pkgname = fs2_open
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..ac22e547c2bd
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+*.pkg.tar*
+*.src.tar*
+*.tgz
+src
+pkg
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..6110aae1f623
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,71 @@
+# Maintainer: Jacob Emmert-Aronson <jacob at mlaronson dot com>
+# Contributor: Rene Schoebel <schoebel.r at gmail dot com>
+# Contributor: ZekeSulastin <zekesulastin@gmail.com>
+# Contributor: Mr_Robotic_Evil <mr.robotic.evil@googlemail.com>
+# Contributor: Lone_Wolf <lonewolf@xs4all.nl>
+
+# This PKGBUILD only generates the engine binary.
+# The retail Freespace 2 data is required to play the
+# original game and most mods. You can use a non-AUR/pacman'd
+# copy, but you'll be on your own as far as running the game
+# and mods are concerned.
+# Check the AUR package 'fs2_open-data' for details.
+
+pkgname=fs2_open
+pkgver=3.7.2~rc3
+_pkgver=3_7_2_RC3 # Upstream's url/dirs ...
+pkgrel=1
+epoch=1
+pkgdesc="An enhancement of the FreeSpace 2 engine"
+url="http://scp.indiegames.us"
+arch=('i686' 'x86_64')
+license=('custom:fs2_open')
+depends=('fs2_open-data' 'glu' 'libjpeg' 'libpng'
+ 'libtheora' 'libvorbis' 'lua51' 'openal' 'sdl')
+optdepends=('fs2_open-mediavps: extensive audiovisual enhancements')
+conflicts=('fs2_open_3614')
+replaces=('fs2_open_3614')
+install=$pkgname.install
+changelog=$pkgname.changelog
+source=(http://swc.fs2downloads.com/builds/fs2_open_${_pkgver}_src.tgz
+ 'fs2_open'
+ 'fs2_open.changelog'
+ 'fs2_open.desktop'
+ 'increase_joy_buttons_fixed.patch'
+ 'options'
+ 'osapi_unix.patch')
+sha256sums=('999de332f90608a4d54d6c6b771a39cc680427da6cbbe8f41014bef763cb60e3'
+ 'c978c91ced574a0904a883d41c72248796e0cf50a0c5e06bc5f890d92bb244c1'
+ '6e85bffb776b7daf707d45741a5da5311f211885bfdb8ea44202691256b1d1b4'
+ 'cac8914fb96eb4f09d8dec0005ccb3626499ab9f3f4c5f64c11bd8d2e913e372'
+ '750d9e51054e4c88679a9690a10d06a7fceaa29b7afa2f31cfcd022d6aa74041'
+ '6e8148aea5d23658e74a2893652de8889af45d542c079d086b8fd586c8b73229'
+ '4256b298690e1ef0fc4d923dd24b803fe57646a941eb48a6ffd7f8de0e96d945')
+
+build()
+{
+ cd "$srcdir/${pkgname}_${_pkgver}"
+
+ # Changes default video settings for better mod compatability
+ patch -Np0 -i "$srcdir/osapi_unix.patch"
+
+ # Increases hard limit of joystick buttons for better use with HOTAS etc.
+ patch -Np0 -i "$srcdir/increase_joy_buttons_fixed.patch"
+
+ # Add --enable-debug to make a debug build. These are NOT meant for general play;
+ # only make a debug build if generating logs/bugreports.
+ LDFLAGS="-l:liblua.so.5.1 $LDFLAGS" CXXFLAGS="-I/usr/include/lua5.1 $CXXFLAGS" ./autogen.sh --enable-speech
+ make
+}
+
+package()
+{
+ cd "$srcdir/${pkgname}_${_pkgver}"
+
+ _pkgver=${pkgver//~rc/_RC}
+ install -D -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -D -m644 ../fs2_open.desktop "$pkgdir/usr/share/applications/fs2_open.desktop"
+ install -D -m644 ../options "$pkgdir/usr/share/$pkgname/options"
+ install -D -m755 code/fs2_open_$_pkgver "$pkgdir/opt/$pkgname/fs2_open_$_pkgver"
+ install -D -m755 "$srcdir/fs2_open" "$pkgdir/usr/bin/fs2_open"
+}
diff --git a/fs2_open b/fs2_open
new file mode 100755
index 000000000000..d27184925acd
--- /dev/null
+++ b/fs2_open
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+if [ -r "$HOME"/.fs2_open/options ]; then
+ . "$HOME"/.fs2_open/options
+else
+ . /usr/share/fs2_open/options
+fi
+
+cd /opt/fs2_open
+
+/opt/fs2_open/fs2_open_3.7.2 "$@" "$FS2OPTS"
diff --git a/fs2_open.changelog b/fs2_open.changelog
new file mode 100644
index 000000000000..4ba76f307fcb
--- /dev/null
+++ b/fs2_open.changelog
@@ -0,0 +1,20 @@
+2014-06-14 Mike Swanson <mikeonthecomputer@gmail.com>
+ * 3.7.2-RC3
+ new upstream release
+
+2013-09-17 Jacob Emmert-Aronson <jacob@mlaronson.com>
+ * 3.7.0-1 :
+ new upstream release.
+ Bumped epoch.
+
+ * mantis2904-svn.patch :
+ Removed, applied upstream.
+
+2013-07-30 Rene Schoebel <schoebel.r@gmail.com>
+ * 3.7.0_RC2-1 :
+ new upstream release.
+
+2013-05-12 Rene Schoebel <schoebel.r@gmail.com>
+
+ * 3.7.0_RC1-1 :
+ new upstream release.
diff --git a/fs2_open.desktop b/fs2_open.desktop
new file mode 100644
index 000000000000..4a18b13c9af0
--- /dev/null
+++ b/fs2_open.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=FS2 Open
+Type=Application
+Comment=FreeSpace 2
+Exec=fs2_open
+Icon=freespace2
+Categories=Game;
diff --git a/fs2_open.install b/fs2_open.install
new file mode 100644
index 000000000000..9af468f48cac
--- /dev/null
+++ b/fs2_open.install
@@ -0,0 +1,13 @@
+post_install() {
+
+cat << EOF
+>>> Copy /usr/share/fs2_open/options to ~/.fs2_open/
+>>> and add command-line flags in there - most of the game's
+>>> configuration is done via these flags if a GUI launcher
+>>> is not used. Details are available within the file.
+EOF
+}
+
+post_upgrade() {
+ post_install
+}
diff --git a/increase_joy_buttons_fixed.patch b/increase_joy_buttons_fixed.patch
new file mode 100644
index 000000000000..87eadf2cc386
--- /dev/null
+++ b/increase_joy_buttons_fixed.patch
@@ -0,0 +1,96 @@
+Index: code/controlconfig/controlsconfigcommon.cpp
+===================================================================
+--- code/controlconfig/controlsconfigcommon.cpp (revision 8781)
++++ code/controlconfig/controlsconfigcommon.cpp (working copy)
+@@ -234,12 +234,23 @@
+ };
+
+ char *Joy_button_text_german[] = {
+- "Knopf 1", "Knopf 2", "Knopf 3", "Knopf 4", "Knopf 5", "Knopf 6",
+- "Knopf 7", "Knopf 8", "Knopf 9", "Knopf 10", "Knopf 11", "Knopf 12",
+- "Knopf 13", "Knopf 14", "Knopf 15", "Knopf 16", "Knopf 17", "Knopf 18",
+- "Knopf 19", "Knopf 20", "Knopf 21", "Knopf 22", "Knopf 23", "Knopf 24",
+- "Knopf 25", "Knopf 26", "Knopf 27", "Knopf 28", "Knopf 29", "Knopf 30",
+- "Knopf 31", "Knopf 32", "Hut Hinten", "Hut Vorne", "Hut Links", "Hut Rechts"
++ "Knopf 1", "Knopf 2", "Knopf 3", "Knopf 4", "Knopf 5", "Knopf 6",
++ "Knopf 7", "Knopf 8", "Knopf 9", "Knopf 10", "Knopf 11", "Knopf 12",
++ "Knopf 13", "Knopf 14", "Knopf 15", "Knopf 16", "Knopf 17", "Knopf 18",
++ "Knopf 19", "Knopf 20", "Knopf 21", "Knopf 22", "Knopf 23", "Knopf 24",
++ "Knopf 25", "Knopf 26", "Knopf 27", "Knopf 28", "Knopf 29", "Knopf 30",
++ "Knopf 31", "Knopf 32", "Knopf 33", "Knopf 34", "Knopf 35", "Knopf 36",
++ "Knopf 37", "Knopf 38", "Knopf 39", "Knopf 40", "Knopf 41", "Knopf 42",
++ "Knopf 43", "Knopf 44", "Knopf 45", "Knopf 46", "Knopf 47", "Knopf 48",
++ "Knopf 49", "Knopf 50", "Knopf 51", "Knopf 52", "Knopf 53", "Knopf 54",
++ "Knopf 55", "Knopf 56", "Knopf 57", "Knopf 58", "Knopf 59", "Knopf 60",
++ "Knopf 61", "Knopf 62", "Knopf 63", "Knopf 64", "Knopf 65", "Knopf 66",
++ "Knopf 67", "Knopf 68", "Knopf 69", "Knopf 70", "Knopf 71", "Knopf 72",
++ "Knopf 73", "Knopf 74", "Knopf 75", "Knopf 76", "Knopf 77", "Knopf 78",
++ "Knopf 79", "Knopf 80", "Knopf 81", "Knopf 82", "Knopf 83", "Knopf 84",
++ "Knopf 85", "Knopf 86", "Knopf 87", "Knopf 88", "Knopf 89", "Knopf 90",
++ "Knopf 91", "Knopf 92", "Knopf 93", "Knopf 94", "Knopf 95", "Knopf 96",
++ "Knopf 97", "Knopf 98", "Hut Hinten", "Hut Vorne", "Hut Links", "Hut Rechts"
+ };
+
+ char *Scan_code_text_french[] = {
+@@ -286,11 +297,22 @@
+
+ char *Joy_button_text_french[] = {
+ "Bouton 1", "Bouton 2", "Bouton 3", "Bouton 4", "Bouton 5", "Bouton 6",
+- "Bouton 7", "Bouton 8", "Bouton 9", "Bouton 10", "Bouton 11", "Bouton 12",
+- "Bouton 13", "Bouton 14", "Bouton 15", "Bouton 16", "Bouton 17", "Bouton 18",
+- "Bouton 19", "Bouton 20", "Bouton 21", "Bouton 22", "Bouton 23", "Bouton 24",
+- "Bouton 25", "Bouton 26", "Bouton 27", "Bouton 28", "Bouton 29", "Bouton 30",
+- "Bouton 31", "Bouton 32", "Chapeau Arriere", "Chapeau Avant", "Chapeau Gauche", "Chapeau Droite"
++ "Bouton 7", "Bouton 8", "Bouton 9", "Bouton 10", "Bouton 11", "Bouton 12",
++ "Bouton 13", "Bouton 14", "Bouton 15", "Bouton 16", "Bouton 17", "Bouton 18",
++ "Bouton 19", "Bouton 20", "Bouton 21", "Bouton 22", "Bouton 23", "Bouton 24",
++ "Bouton 25", "Bouton 26", "Bouton 27", "Bouton 28", "Bouton 29", "Bouton 30",
++ "Bouton 31", "Bouton 32", "Bouton 33", "Bouton 34", "Bouton 35", "Bouton 36",
++ "Bouton 37", "Bouton 38", "Bouton 39", "Bouton 40", "Bouton 41", "Bouton 42",
++ "Bouton 43", "Bouton 44", "Bouton 45", "Bouton 46", "Bouton 47", "Bouton 48",
++ "Bouton 49", "Bouton 50", "Bouton 51", "Bouton 52", "Bouton 53", "Bouton 54",
++ "Bouton 55", "Bouton 56", "Bouton 57", "Bouton 58", "Bouton 59", "Bouton 60",
++ "Bouton 61", "Bouton 62", "Bouton 63", "Bouton 64", "Bouton 65", "Bouton 66",
++ "Bouton 67", "Bouton 68", "Bouton 69", "Bouton 70", "Bouton 71", "Bouton 72",
++ "Bouton 73", "Bouton 74", "Bouton 75", "Bouton 76", "Bouton 77", "Bouton 78",
++ "Bouton 79", "Bouton 80", "Bouton 81", "Bouton 82", "Bouton 83", "Bouton 84",
++ "Bouton 85", "Bouton 86", "Bouton 87", "Bouton 88", "Bouton 89", "Bouton 90",
++ "Bouton 91", "Bouton 92", "Bouton 93", "Bouton 94", "Bouton 95", "Bouton 96",
++ "Bouton 97", "Bouton 98", "Chapeau Arriere", "Chapeau Avant", "Chapeau Gauche", "Chapeau Droite"
+ };
+
+ // This is the text that is displayed on the screen for the keys a player selects
+@@ -342,7 +364,18 @@
+ "Button 13", "Button 14", "Button 15", "Button 16", "Button 17", "Button 18",
+ "Button 19", "Button 20", "Button 21", "Button 22", "Button 23", "Button 24",
+ "Button 25", "Button 26", "Button 27", "Button 28", "Button 29", "Button 30",
+- "Button 31", "Button 32", "Hat Back", "Hat Forward", "Hat Left", "Hat Right"
++ "Button 31", "Button 32", "Button 33", "Button 34", "Button 35", "Button 36",
++ "Button 37", "Button 38", "Button 39", "Button 40", "Button 41", "Button 42",
++ "Button 43", "Button 44", "Button 45", "Button 46", "Button 47", "Button 48",
++ "Button 49", "Button 50", "Button 51", "Button 52", "Button 53", "Button 54",
++ "Button 55", "Button 56", "Button 57", "Button 58", "Button 59", "Button 60",
++ "Button 61", "Button 62", "Button 63", "Button 64", "Button 65", "Button 66",
++ "Button 67", "Button 68", "Button 69", "Button 70", "Button 71", "Button 72",
++ "Button 73", "Button 74", "Button 75", "Button 76", "Button 77", "Button 78",
++ "Button 79", "Button 80", "Button 81", "Button 82", "Button 83", "Button 84",
++ "Button 85", "Button 86", "Button 87", "Button 88", "Button 89", "Button 90",
++ "Button 91", "Button 92", "Button 93", "Button 94", "Button 95", "Button 96",
++ "Button 97", "Button 98", "Hat Back", "Hat Forward", "Hat Left", "Hat Right"
+ };
+
+ char **Scan_code_text = Scan_code_text_english;
+
+Index: code/io/joy.h
+===================================================================
+--- code/io/joy.h (revision 8781)
++++ code/io/joy.h (working copy)
+@@ -12,7 +12,7 @@
+ #ifndef __JOY_H__
+ #define __JOY_H__
+
+-#define JOY_NUM_BUTTONS 32
++#define JOY_NUM_BUTTONS 98
+ #define JOY_NUM_HAT_POS 4
+ #define JOY_TOTAL_BUTTONS (JOY_NUM_BUTTONS + JOY_NUM_HAT_POS)
+ #define JOY_NUM_AXES 6
diff --git a/options b/options
new file mode 100644
index 000000000000..5bc0745b1625
--- /dev/null
+++ b/options
@@ -0,0 +1,13 @@
+#!/usr/bin/env bash
+
+# This file is read by the standard launcher scripts included in the
+# various fs2_open packages; wxLauncher does not look at this at all.
+# Do not set -mod here, as this will conflict with the mod launcher scripts!
+
+# Full command line reference available at:
+# http://www.hard-light.net/wiki/index.php/Command-Line_Reference
+
+# A lot of graphical and gameplay options are set via these flags - you should
+# really take a look.
+
+FS2OPTS="" \ No newline at end of file
diff --git a/osapi_unix.patch b/osapi_unix.patch
new file mode 100644
index 000000000000..ad694cc64648
--- /dev/null
+++ b/osapi_unix.patch
@@ -0,0 +1,11 @@
+--- code/osapi/osapi_unix.cpp 2012-06-03 17:06:50.811573048 -0400
++++ code/osapi/osapi_unix_1024.cpp 2012-06-03 17:07:34.860310023 -0400
+@@ -73,7 +73,7 @@
+
+ // create default ini entries for the user
+ if (os_config_read_string(NULL, NOX("VideocardFs2open"), NULL) == NULL)
+- os_config_write_string(NULL, NOX("VideocardFs2open"), NOX("OGL -(640x480)x16 bit"));
++ os_config_write_string(NULL, NOX("VideocardFs2open"), NOX("OGL -(1024x768)x32 bit"));
+
+ os_init_registry_stuff(Osreg_company_name, title, version_string);
+