diff options
-rw-r--r-- | .SRCINFO | 8 | ||||
-rw-r--r-- | PKGBUILD | 25 | ||||
-rw-r--r-- | disable-asmcse-opt.patch | 35 | ||||
-rw-r--r-- | disable-offending-shell-code.patch | 12 | ||||
-rw-r--r-- | hard-code-svn-revision.patch | 12 |
5 files changed, 87 insertions, 5 deletions
@@ -1,7 +1,7 @@ pkgbase = doomrl-git pkgdesc = Doom: The Rogue-like (git-latest) (WIP!). pkgver = r8.0cbac80 - pkgrel = 5 + pkgrel = 6 url = http://drl.chaosforge.org/ arch = any license = GPL3 @@ -16,9 +16,15 @@ pkgbase = doomrl-git source = doomrl-git::git+https://github.com/ChaosForge/doomrl source = fpcvalkyrie::git+https://github.com/ChaosForge/fpcvalkyrie source = http://www.libregeek.org/Linux/game-files/doomrl/doomrl-linux-assets-x64-0997.tar + source = disable-asmcse-opt.patch + source = disable-offending-shell-code.patch + source = hard-code-svn-revision.patch sha256sums = SKIP sha256sums = SKIP sha256sums = 590c28b4e7f655e23c01bca0b2f9ddf9b8dd024f3a8b7ac5ec65d79877a6450b + sha256sums = 1844d4698da23f31276f71e2fdd369959b41eac0b69677a147bd534b9c32b5ce + sha256sums = 439de08ce548b0dc7ff6ba31ace7f375a1e6f0ebac32addf8a05d3d31283e192 + sha256sums = e57148577e3152c99a61adb7ae841272491b7be62b168b8d62ee73b322b37418 pkgname = doomrl-git @@ -3,7 +3,7 @@ pkgname=doomrl-git pkgver=r8.0cbac80 doomrl_assets='doomrl-linux-assets-x64-0997' -pkgrel=5 +pkgrel=6 pkgdesc="Doom: The Rogue-like (git-latest) (WIP!)." arch=(any) url="http://drl.chaosforge.org/" @@ -13,23 +13,35 @@ makedepends=('git' 'fpc-svn' 'lua') source=("$pkgname::git+https://github.com/ChaosForge/doomrl" "fpcvalkyrie::git+https://github.com/ChaosForge/fpcvalkyrie" "http://www.libregeek.org/Linux/game-files/doomrl/${doomrl_assets}.tar" + 'disable-asmcse-opt.patch' + 'disable-offending-shell-code.patch' + 'hard-code-svn-revision.patch' ) sha256sums=('SKIP' 'SKIP' '590c28b4e7f655e23c01bca0b2f9ddf9b8dd024f3a8b7ac5ec65d79877a6450b' + '1844d4698da23f31276f71e2fdd369959b41eac0b69677a147bd534b9c32b5ce' + '439de08ce548b0dc7ff6ba31ace7f375a1e6f0ebac32addf8a05d3d31283e192' + 'e57148577e3152c99a61adb7ae841272491b7be62b168b8d62ee73b322b37418' ) prepare() { - # fpcvalkyrie is harcoded from Makefile to look a level up - # from doomrl/makeifle.lua ... - cp -ru $srcdir/fpcvalkyrie $srcdir/$pkgname + # clean + find "$srcdir/$pkgname" "$srcdir/fpcvalkyrie" \ + '(' -iname '*.o' -or -iname '*.ppu' ')' -exec rm -f '{}' ';' # assets cp -ru "$srcdir/$doomrl_assets/mp3"/* "$srcdir/$pkgname/bin/mp3" cp -ru "$srcdir/$doomrl_assets/wavhq"/* "$srcdir/$pkgname/bin/wavhq" + # patch + cd "${srcdir}" + patch -p1 < disable-asmcse-opt.patch + patch -p1 < disable-offending-shell-code.patch + patch -p1 < hard-code-svn-revision.patch + } pkgver() { @@ -42,8 +54,13 @@ build() cd $srcdir/$pkgname rm -rf tmp && mkdir tmp + + # add Linux config + echo "OS=\"LINUX\"" > "$srcdir/$pkgname/config.lua" + echo "VALKYRIE_ROOT=\"$srcdir/fpcvalkyrie/\"" >> "$srcdir/$pkgname/config.lua" lua makefile.lua hq + } package() { diff --git a/disable-asmcse-opt.patch b/disable-asmcse-opt.patch new file mode 100644 index 000000000000..4b1e2eaf46bf --- /dev/null +++ b/disable-asmcse-opt.patch @@ -0,0 +1,35 @@ +diff -ruN src.orig/doomrl-git/src/doomrl.inc src/doomrl-git/src/doomrl.inc +--- src.orig/doomrl-git/src/doomrl.inc 2016-12-21 09:10:24.713011262 -0500 ++++ src/doomrl-git/src/doomrl.inc 2016-12-21 09:08:53.035649390 -0500 +@@ -2,13 +2,13 @@ + {$INTERFACES CORBA} + {$COPERATORS ON} + {$INLINE ON} ++{ASMCSE OFF} + + {$IFNDEF WINDOWS} + {$OPTIMIZATION OFF} + {.$OPTIMIZATION REGVAR} + {$OPTIMIZATION STACKFRAME} + {$OPTIMIZATION PEEPHOLE} +- {$OPTIMIZATION ASMCSE} + {$OPTIMIZATION LOOPUNROLL} + {$OPTIMIZATION CSE} + {.$OPTIMIZATION DFA} +diff -ruN src.orig/fpcvalkyrie/src/valkyrie.inc src/fpcvalkyrie/src/valkyrie.inc +--- src.orig/fpcvalkyrie/src/valkyrie.inc 2016-12-21 09:10:08.592888936 -0500 ++++ src/fpcvalkyrie/src/valkyrie.inc 2016-12-21 09:08:53.038982749 -0500 +@@ -4,12 +4,12 @@ + {$COPERATORS ON} + {$MACRO ON} + {$INLINE ON} ++{ASMCSE OFF} + + {$IFNDEF WINDOWS} + {$OPTIMIZATION OFF} + {.$OPTIMIZATION REGVAR} + {$OPTIMIZATION PEEPHOLE} +- {$OPTIMIZATION ASMCSE} + {$OPTIMIZATION LOOPUNROLL} + {$OPTIMIZATION CSE} + {$OPTIMIZATION DFA} diff --git a/disable-offending-shell-code.patch b/disable-offending-shell-code.patch new file mode 100644 index 000000000000..f7cb896158ff --- /dev/null +++ b/disable-offending-shell-code.patch @@ -0,0 +1,12 @@ +diff -ruN src.orig/fpcvalkyrie/src/vtextio.pas src/fpcvalkyrie/src/vtextio.pas +--- src.orig/fpcvalkyrie/src/vtextio.pas 2016-12-21 09:02:25.722725632 -0500 ++++ src/fpcvalkyrie/src/vtextio.pas 2016-12-21 09:14:21.148142771 -0500 +@@ -284,7 +284,7 @@ + try if FMouse then DoneMouse; except on Exception do end; + try DoneVideo except on Exception do end; + //Unknown to myself, I have no clue why I get an access violation here... +- {$IFDEF UNIX}Shell('reset');{$ENDIF} ++// {$IFDEF UNIX}Shell('reset');{$ENDIF} + inherited Destroy; + end; + diff --git a/hard-code-svn-revision.patch b/hard-code-svn-revision.patch new file mode 100644 index 000000000000..21804326dfd3 --- /dev/null +++ b/hard-code-svn-revision.patch @@ -0,0 +1,12 @@ +diff -ruN src.orig/fpcvalkyrie/scripts/lua_make.lua src/fpcvalkyrie/scripts/lua_make.lua +--- src.orig/fpcvalkyrie/scripts/lua_make.lua 2016-12-21 09:02:25.719392273 -0500 ++++ src/fpcvalkyrie/scripts/lua_make.lua 2016-12-21 09:13:00.747530463 -0500 +@@ -319,7 +319,7 @@ + VERSION_STRING = '{!string}'; + VERSION_ARRAY : array[1..{!length}] of byte = ({!array}); + VERSION_BETA = {!beta}; +-VERSION_REV = {!revision}; ++VERSION_REV = 1; + ]] + make.write_file( target, text, subs ) + end |