summaryrefslogtreecommitdiff
path: root/games-util
diff options
context:
space:
mode:
authoreroen2013-06-16 01:52:10 +0200
committereroen2013-06-16 01:52:10 +0200
commitc6443be2065f543e7f12ce7a25fdb0634850d7eb (patch)
tree56313d2b07c563cd63a322c3723e090846e6ac81 /games-util
parentc40eb8df1970c851f3af4e6f1602f8783fc09ed8 (diff)
downloaderoen-overlay-c6443be2065f543e7f12ce7a25fdb0634850d7eb.tar.gz
eroen-overlay-c6443be2065f543e7f12ce7a25fdb0634850d7eb.tar.bz2
eroen-overlay-c6443be2065f543e7f12ce7a25fdb0634850d7eb.tar.xz
dfhack-9999 - startup script modification to cmake
Diffstat (limited to 'games-util')
-rw-r--r--games-util/dfhack/Manifest5
-rw-r--r--games-util/dfhack/dfhack-9999.ebuild17
-rw-r--r--games-util/dfhack/files/dfhack-9999/07-startup-scripts-configurable.patch247
-rw-r--r--games-util/dfhack/files/dfhack-9999/series1
4 files changed, 254 insertions, 16 deletions
diff --git a/games-util/dfhack/Manifest b/games-util/dfhack/Manifest
index 84ba952a..3704a094 100644
--- a/games-util/dfhack/Manifest
+++ b/games-util/dfhack/Manifest
@@ -10,7 +10,8 @@ AUX dfhack-9999/03-configurable-install-paths.patch 3975 SHA256 bdfd0d8285089a51
AUX dfhack-9999/04-compile-time-configurable.patch 5252 SHA256 89f8396c8709a2d72f55f364b73d129e05f65caa32b8c145741d841281f7a71a SHA512 6a613fb00748f22938bf8fdbf55a1acfb141e48c85185c71fd08cc934ab9dd0089431f3942f2bce726d0e71cfd660ece4866026335ca03f75370565c190d330b WHIRLPOOL 7d3e6fe729f61ce5e61e6843c1219e19cba5b77d7558371044c2bb3e60c071d6a13af2e051d3978704b7ee43523ac029833d18e47830ab688ef8af7208bb7edb
AUX dfhack-9999/05-compile-time-configurable-0.patch 1562 SHA256 16810214a14c585a7f99f3939f52c66aaab7d388f4854c1d684032df4e3ddf80 SHA512 a2797092215b61765cfee6654a45f0c1f890e6d537e370d038907e25e9e916d54e140635b57012b892039467027e62505045287f3d6a06a2f6d0e6dac83fe256 WHIRLPOOL 49c95f1adb62d1997adea7521e550ffb1bdf38b22e2ca699fd8314b0f96b32de6ee042218d0053f9da0827fecd81d923d078cb9f37447bc4c3211226d9ea0eff
AUX dfhack-9999/06-compile-time-configurable-1.patch 3578 SHA256 ead1019a14dbdab2fb0ac097073c7f2a22fa24f426eb031615cd79a5a28b1a54 SHA512 fae5f28c20364a6032f329115a8d1630e17fb1e5e7888c058c94218824616f1b807e7471330fdb7e6d1f29d3960a85f1469edbf1d270cc44ed9a707295bf8c90 WHIRLPOOL 5c8e9a113fc0a4972e54df0871fa6cce4074ef0b4cca33cf2d26cffab3d75863d8aace3423d14d2110a00a5ba79ca39b680e1838889e9ac390f4ea95d06c6784
-AUX dfhack-9999/series 295 SHA256 9ffb7300e169f2cb49a6508bb1f9905fdcdcafb0b462db0d077c365c2412444e SHA512 29d25cfd8d43d4bb8931043845f918c74f154992938c696d18d2c1b1fec079f86063ed8689de9b68608a40cca8329b95385ed46f1d521900e4fb75672fdf7f3c WHIRLPOOL d3a044b754dfff9ad87616e107d78a50dbe9af8a5437490449a6a8fe492b519110c524a237c136bf1b4b46e6cc52ac12732ae1278767b09762083871e96d3658
+AUX dfhack-9999/07-startup-scripts-configurable.patch 8154 SHA256 b7669577715f3c3fe000b951bb9071359fe6bdf41e2ea56351a0fa3a76e10bc3 SHA512 1271050439a9dcea525fb9555d1c43e2e76c99544db9789dbea22cae217826391ff5e31f9d08029e777e121e8b658e67e9cbdeb6edbbbcf28cc54afe737903e6 WHIRLPOOL af71902548542259a4103a3c156e6bbbf85607226c2a7f5e0638f872bf55dd1304283460e59f17e3975574329b80b04dd252df2e7d00819f62a8b41d75656139
+AUX dfhack-9999/series 333 SHA256 9f6dc3e87b5fe9c19ee6e4c9a83ec99751975ebab26da58c1e8899bb8f31e304 SHA512 d1ba58776c80b86f847f6c2ddf11ab9002a8c15c978eb25f15f8a3807b70ebb182e5c75fcf92c06507365a53058e43f3b7841a60fc404b7cefd79a0e4079579b WHIRLPOOL de03a18cc24bcd54dde05efe202ddfb2955812283813808b0b9f8c713b5be5641869d51785d63f41d3cbb32caeaf48621740dded238be9d5f2d9add156caf668
AUX stonesense-9999/01-null-isn-t-an-int32.patch 2293 SHA256 c140f17f9ad485b43ab2b6de8e1ab88ff8e3f6748a233d7d34d63e79a9f8074e SHA512 84ab7ebd25505515085c3c6c2c903d4aa51d8432b8c750a4f66d436426ad9963c07fa5019e24f0ca6d5618be329b35673a819443d092460e55bb6bb829dd4760 WHIRLPOOL 3beb7cc546b1f5eba970628e3a263e2536f881ae1e21115df19c4979b9c267d66ba060bf16f78a46675fe96b2f18fb7281ba1a9dd1695e3e5f0df4147bcb78b7
AUX stonesense-9999/02-configurable-install-paths.patch 1388 SHA256 03ac914c0fbee6d27b68c075d91b8b315179d9cb91944da731006241e0589dbb SHA512 b7b75f33b9aefe91081f4cede21b79b7583374ea5f5608cd4982a6ba5ad35006986ede06985bac70f5260610f2b32ac05cc06e90a983dbc6e85e7346da084d96 WHIRLPOOL 677942b840640ce40a3e93d28265a5f39c778fe369c4de27eee382d8a83e063a775477f5434f754173de88c2a0bf46750006ca11294b244fffe4f3ec5ba80d5f
AUX stonesense-9999/03-don-t-segfault-if-logfile-is.patch 817 SHA256 7fd33d13206ef38bca971856d9cfff0fbef88f1e7685111e00fa13b780cc9ecb SHA512 2ff023f34a1cf8718a3954e3a7584d07a1716b67756473d0852863f182c55bcde209921a9e26e1efeffde17ae42ab87c322915d74f2661b79ec49dd158df7cd1 WHIRLPOOL 1c88b645f01d651896b951acbc97d610d986a7d756cb0d58cc9c3c9caaa3873c18d191c46238ad13e050047476cc2589ae7f40614f0b8d3a52bb24fa58325976
@@ -25,5 +26,5 @@ AUX stonesense/0002-compile-time-configuration-of-magic-cwd.patch 7753 SHA256 79
AUX stonesense/0003-screenshots-in-home-dir.patch 2578 SHA256 88bc1a28442dfe8e5ff08e27e82de6443a3c5bccf49d7bcb2a26637a71ae3e18 SHA512 988efaba82e96149641e8dd6d8769b3ac1d890ebaa35128507a8f0d633af947ad9d8090758e1734a2f9b118c5404e4d712e2abb9a4e971f980f4163c0b646f5b WHIRLPOOL f3f03c297fbd39f27b5957cca0073a3420a10ba0a1741cf73f210cf680c2083c761cb68a637663281e69d1fee9e7b5049c3074f18fed394f48888bc377f5bb70
AUX stonesense/0004-create-various-output-files-in-HOME-not-cwd.patch 5217 SHA256 3ac09c948cc36b04058a82cb9f04e0ff26ffee765bf2300a46eac09cebc867de SHA512 9f0c2c5f4a2d15c99e06d30e1d3825527449f63de4d370533f07ce4324d0afbd1a2190dcf9589cbd326fd0f9705333bb436bed74e72ac4a7485f002fa3600639 WHIRLPOOL cbe81a086301a3dc218f31e3b1edb837bd81a25d151e5d46c0988d080165e95faac8ab14a97995a7092262542cbb8b29a2a540fe45a5c74b520e47ec5ab0f420
EBUILD dfhack-0.34.11.2.ebuild 5523 SHA256 c126fc718aaddcfd1f62c04a5ce37add8c6ecfb72e0fa73d8048383e02d048f0 SHA512 ab671faa41ab7cff26b933ef816fba8f5c86389769f5dcf1da6a5ee7413324d50ebcd7e60812935fd0ddd70688461ca23d55edf499ffffec89e3ff3ad321c2e8 WHIRLPOOL 11246c870f497929299ccf75c91f77481a6d3faccc9a8646c668836b22906d089e04826b3f67f5dcc8640b918a9e3a0e1fa9821d7d17664ec58f8a88db498170
-EBUILD dfhack-9999.ebuild 8657 SHA256 10571028dd113d9b4c86aa1dda06be355eb59382754c07b27ef7e95380e9f038 SHA512 a782622a8b6f3ccce0d289559083167a37c67d2066d729b5d149a8e0ecfeb9aec3327df74688fe824a99755251ee8daced21a609abb5dd3c846a6cc35aaed947 WHIRLPOOL 34b80108d46df707225040253a2205dc6f2de7a19485947814ee3d5f8c2f564c3fe743d0f68423fae4ec141ec1c68c8ee582c468de39cdd4718061590025419d
+EBUILD dfhack-9999.ebuild 8268 SHA256 018bd1b3964b30cf1aee98dba465ad39d4d39097b3591b3ed310d51b08522a15 SHA512 ac7de2e601562232b57a98907ce512babd4ba5b736d20b21dee47f1fef0bf5f3bca58fde02cf77b42144d7a4eb347482f56a116fa833bf6f85e7d4f3abc87022 WHIRLPOOL a9be423a7aada29d1eed6cde7b5b9f8c1906bf784a1180e39d5113f88d936ddc536952f7fec7f625f6889081d9316e0c9dc143ca26cf3f651fbd1a2c1a61b4c9
MISC metadata.xml 663 SHA256 55a12d4c9666a995d266a30d607c232114db139aafa462b02db6f657eb39fa8a SHA512 9a9eede0ad1fed3f735bb08e6f0e9911cc5de7310bc57be987b42842bcaff05becad270d7414da2bca9b40531a69eefb5dff725a61d5b9bfcd3cb84c41847d3c WHIRLPOOL 28e63c07f1470f7bdb56d9c0a7838a501bf94585ed1446e2a107dc5669e0aefc48a6b227c5c55e1e33d0ed2a9be1bff8e2437381496e278b598e542950f43e42
diff --git a/games-util/dfhack/dfhack-9999.ebuild b/games-util/dfhack/dfhack-9999.ebuild
index ba9989e4..46db9316 100644
--- a/games-util/dfhack/dfhack-9999.ebuild
+++ b/games-util/dfhack/dfhack-9999.ebuild
@@ -88,6 +88,7 @@ else
fi
pkg_setup() {
+ df_executable="df-${df_PV}"
dfhack_datadir="${GAMES_DATADIR}/${P}"
dfhack_docdir="/usr/share/doc/${P}"
dfhack_statedir="${GAMES_STATEDIR}/${P}"
@@ -100,6 +101,7 @@ src_prepare() {
epatch "${FILESDIR}"/${P}/04-compile-time-configurable.patch
epatch "${FILESDIR}"/${P}/05-compile-time-configurable-0.patch
epatch "${FILESDIR}"/${P}/06-compile-time-configurable-1.patch
+ epatch "${FILESDIR}"/${P}/07-startup-scripts-configurable.patch
pushd "${S}"/depends/clsocket
epatch "${FILESDIR}"/clsocket/0001-Compile-static-library-as-PIC.patch
@@ -120,20 +122,6 @@ src_prepare() {
popd
fi
- # Fix up the startup scripts
- sed -i "package/linux/dfhack" \
- -e "s%\"\./hack\"%\"${dfhack_libdir}\"%" \
- -e "s%\"\./hack/libs\"%\"${dfhack_libdir}/libs\"%" \
- -e "s%\./hack/libdfhack.so%\"${dfhack_libdir}/libdfhack.so\"%" \
- -e "s%\./libs/Dwarf_Fortress%df-${df_PV}%" \
- || die "dfhack sed"
-
- sed -i "package/linux/dfhack-run" \
- -e "s%\"\./hack"%"${dfhack_libdir}\"%" \
- -e "s%\"\./hack/libs"%"${dfhack_libdir/libs}\"%" \
- -e "s%hack/dfhack-run%\"${dfhack_libdir}/dfhack-run\"%" \
- || die "dfhack-run sed"
-
# Fix other scripts
sed -i "plugins/ruby/ruby.rb" \
-e "s%\./hack/ruby/%${GAMES_DATADIR}/${P}/ruby/%" \
@@ -181,6 +169,7 @@ src_configure() {
"-DCONSOLE_NO_CATCH=OFF"
"-DDL_RUBY=ON"
+ "-DDF_EXECUTABLE=${df_executable}"
"-DDFHACK_STATEDIR=${GAMES_STATEDIR}/${P}"
"-DDFHACK_BINARY_DESTINATION=${GAMES_BINDIR}"
"-DDFHACK_LIBRARY_DESTINATION=${dfhack_libdir}"
diff --git a/games-util/dfhack/files/dfhack-9999/07-startup-scripts-configurable.patch b/games-util/dfhack/files/dfhack-9999/07-startup-scripts-configurable.patch
new file mode 100644
index 00000000..73fb4c54
--- /dev/null
+++ b/games-util/dfhack/files/dfhack-9999/07-startup-scripts-configurable.patch
@@ -0,0 +1,247 @@
+startup scripts - configurable paths
+
+From: eroen <eroen@occam.eroen.eu>
+
+
+---
+ CMakeLists.txt | 3 ++
+ library/CMakeLists.txt | 6 +++
+ package/linux/dfhack | 79 -------------------------------------------
+ package/linux/dfhack-run | 8 ----
+ package/linux/dfhack-run.in | 8 ++++
+ package/linux/dfhack.in | 79 +++++++++++++++++++++++++++++++++++++++++++
+ 6 files changed, 96 insertions(+), 87 deletions(-)
+ delete mode 100755 package/linux/dfhack
+ delete mode 100755 package/linux/dfhack-run
+ create mode 100755 package/linux/dfhack-run.in
+ create mode 100755 package/linux/dfhack.in
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 73a4ac1..031a2cd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -68,6 +68,9 @@ add_definitions(-DDFHACK_VERSION="${DFHACK_VERSION}")
+ SET(DFHACK_STATEDIR "." CACHE PATH "DFHACK_STATEDIR")
+ ADD_DEFINITIONS(-DDFHACK_STATEDIR="${DFHACK_STATEDIR}")
+
++## what to call to start DF, configured into startup scripts
++SET(DF_EXECUTABLE "./libs/Dwarf_Fortress" CACHE STRING "DF_EXECUTABLE")
++
+ ## where to install things (after the build is done, classic 'make install' or package structure)
+ # the dfhack libraries will be installed here:
+ IF(UNIX)
+diff --git a/library/CMakeLists.txt b/library/CMakeLists.txt
+index 18635ed..6979f0a 100644
+--- a/library/CMakeLists.txt
++++ b/library/CMakeLists.txt
+@@ -301,6 +301,12 @@ IF(UNIX)
+ DESTINATION .)
+ else()
+ # On linux, copy our version of the df launch script which sets LD_PRELOAD
++ configure_file(${dfhack_SOURCE_DIR}/package/linux/dfhack.in
++ ${dfhack_SOURCE_DIR}/package/linux/dfhack
++ @ONLY)
++ configure_file(${dfhack_SOURCE_DIR}/package/linux/dfhack-run.in
++ ${dfhack_SOURCE_DIR}/package/linux/dfhack-run
++ @ONLY)
+ install(PROGRAMS ${dfhack_SOURCE_DIR}/package/linux/dfhack
+ DESTINATION ${DFHACK_BINARY_DESTINATION})
+ install(PROGRAMS ${dfhack_SOURCE_DIR}/package/linux/dfhack-run
+diff --git a/package/linux/dfhack b/package/linux/dfhack
+deleted file mode 100755
+index 5ddd2a1..0000000
+--- a/package/linux/dfhack
++++ /dev/null
+@@ -1,79 +0,0 @@
+-#!/bin/sh
+-
+-# NOTE: This is dfhack's modification of the normal invocation script,
+-# changed to properly set LD_PRELOAD so as to run DFHACK.
+-#
+-# You can run DF under gdb by passing -g or --gdb as the first argument.
+-#
+-# If the file ".dfhackrc" exists in the DF directory or your home directory
+-# it will be sourced by this script, to let you set environmental variables.
+-# If it exists in both places it will first source the one in your home
+-# directory, then the on in the game directory.
+-#
+-# Shell variables .dfhackrc can set to affect this script:
+-# DF_GDB_OPTS: Options to pass to gdb, if it's being run
+-# DF_VALGRIND_OPTS: Options to pass to valgrind, if it's being run
+-# DF_HELGRIND_OPTS: Options to pass to helgrind, if it's being run
+-# DF_POST_CMD: Shell command to be run at very end of script
+-
+-DF_DIR=$(dirname "$0")
+-cd "${DF_DIR}"
+-export SDL_DISABLE_LOCK_KEYS=1 # Work around for bug in Debian/Ubuntu SDL patch.
+-#export SDL_VIDEO_CENTERED=1 # Centre the screen. Messes up resizing.
+-
+-# User config files
+-RC=".dfhackrc"
+-
+-if [ -r "$HOME/$RC" ]; then
+- . $HOME/$RC
+-fi
+-if [ -r "./$RC" ]; then
+- . "./$RC"
+-fi
+-
+-# Save current terminal settings
+-old_tty_settings=$(stty -g)
+-
+-# Now run
+-
+-export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"./hack/libs":"./hack"
+-
+-case "$1" in
+- -g | --gdb)
+- shift
+- echo "set environment LD_PRELOAD=./hack/libdfhack.so" > gdbcmd.tmp
+- echo "set environment MALLOC_PERTURB_=45" >> gdbcmd.tmp
+- gdb $DF_GDB_OPTS -x gdbcmd.tmp ./libs/Dwarf_Fortress "$@"
+- rm gdbcmd.tmp
+- ret=$?
+- ;;
+- -h | --helgrind)
+- shift
+- LD_PRELOAD=./hack/libdfhack.so setarch i386 -R valgrind $DF_HELGRIND_OPTS --tool=helgrind --log-file=helgrind.log ./libs/Dwarf_Fortress "$@"
+- ret=$?
+- ;;
+- -v | --valgrind)
+- shift
+- LD_PRELOAD=./hack/libdfhack.so setarch i386 -R valgrind $DF_VALGRIND_OPTS --log-file=valgrind.log ./libs/Dwarf_Fortress "$@"
+- ret=$?
+- ;;
+- -c | --callgrind)
+- shift
+- LD_PRELOAD=./hack/libdfhack.so setarch i386 -R valgrind $DF_CALLGRIND_OPTS --tool=callgrind --separate-threads=yes --dump-instr=yes --instr-atstart=no --log-file=callgrind.log ./libs/Dwarf_Fortress "$@"
+- ret=$?
+- ;;
+- *)
+- setarch i386 -R env LD_PRELOAD=./hack/libdfhack.so ./libs/Dwarf_Fortress "$@"
+- ret=$?
+- ;;
+-esac
+-
+-# Restore previous terminal settings
+-stty "$old_tty_settings"
+-echo -e "\n"
+-
+-if [ -n "$DF_POST_CMD" ]; then
+- eval $DF_POST_CMD
+-fi
+-
+-exit $ret
+diff --git a/package/linux/dfhack-run b/package/linux/dfhack-run
+deleted file mode 100755
+index 55001cf..0000000
+--- a/package/linux/dfhack-run
++++ /dev/null
+@@ -1,8 +0,0 @@
+-#!/bin/sh
+-
+-DF_DIR=$(dirname "$0")
+-cd "${DF_DIR}"
+-
+-export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"./hack/libs":"./hack"
+-
+-exec hack/dfhack-run "$@"
+diff --git a/package/linux/dfhack-run.in b/package/linux/dfhack-run.in
+new file mode 100755
+index 0000000..8dc3ea7
+--- /dev/null
++++ b/package/linux/dfhack-run.in
+@@ -0,0 +1,8 @@
++#!/bin/sh
++
++DF_DIR=$(dirname "$0")
++cd "${DF_DIR}"
++
++export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"@DFHACK_LIBRARY_DESTINATION@"/libs:"@DFHACK_LIBRARY_DESTINATION@"
++
++exec "@DFHACK_LIBRARY_DESTINATION@"/dfhack-run "$@"
+diff --git a/package/linux/dfhack.in b/package/linux/dfhack.in
+new file mode 100755
+index 0000000..7b32e1a
+--- /dev/null
++++ b/package/linux/dfhack.in
+@@ -0,0 +1,79 @@
++#!/bin/sh
++
++# NOTE: This is dfhack's modification of the normal invocation script,
++# changed to properly set LD_PRELOAD so as to run DFHACK.
++#
++# You can run DF under gdb by passing -g or --gdb as the first argument.
++#
++# If the file ".dfhackrc" exists in the DF directory or your home directory
++# it will be sourced by this script, to let you set environmental variables.
++# If it exists in both places it will first source the one in your home
++# directory, then the on in the game directory.
++#
++# Shell variables .dfhackrc can set to affect this script:
++# DF_GDB_OPTS: Options to pass to gdb, if it's being run
++# DF_VALGRIND_OPTS: Options to pass to valgrind, if it's being run
++# DF_HELGRIND_OPTS: Options to pass to helgrind, if it's being run
++# DF_POST_CMD: Shell command to be run at very end of script
++
++DF_DIR=$(dirname "$0")
++cd "${DF_DIR}"
++export SDL_DISABLE_LOCK_KEYS=1 # Work around for bug in Debian/Ubuntu SDL patch.
++#export SDL_VIDEO_CENTERED=1 # Centre the screen. Messes up resizing.
++
++# User config files
++RC=".dfhackrc"
++
++if [ -r "$HOME/$RC" ]; then
++ . $HOME/$RC
++fi
++if [ -r "./$RC" ]; then
++ . "./$RC"
++fi
++
++# Save current terminal settings
++old_tty_settings=$(stty -g)
++
++# Now run
++
++export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"@DFHACK_LIBRARY_DESTINATION@"/libs:"@DFHACK_LIBRARY_DESTINATION@"
++
++case "$1" in
++ -g | --gdb)
++ shift
++ echo "set environment LD_PRELOAD=@DFHACK_LIBRARY_DESTINATION@/libdfhack.so" > gdbcmd.tmp
++ echo "set environment MALLOC_PERTURB_=45" >> gdbcmd.tmp
++ gdb $DF_GDB_OPTS -x gdbcmd.tmp "@DF_EXECUTABLE@" "$@"
++ rm gdbcmd.tmp
++ ret=$?
++ ;;
++ -h | --helgrind)
++ shift
++ LD_PRELOAD="@DFHACK_LIBRARY_DESTINATION@"/libdfhack.so setarch i386 -R valgrind $DF_HELGRIND_OPTS --tool=helgrind --log-file=helgrind.log "@DF_EXECUTABLE@" "$@"
++ ret=$?
++ ;;
++ -v | --valgrind)
++ shift
++ LD_PRELOAD="@DFHACK_LIBRARY_DESTINATION@"/libdfhack.so setarch i386 -R valgrind $DF_VALGRIND_OPTS --log-file=valgrind.log "@DF_EXECUTABLE@" "$@"
++ ret=$?
++ ;;
++ -c | --callgrind)
++ shift
++ LD_PRELOAD="@DFHACK_LIBRARY_DESTINATION@"/libdfhack.so setarch i386 -R valgrind $DF_CALLGRIND_OPTS --tool=callgrind --separate-threads=yes --dump-instr=yes --instr-atstart=no --log-file=callgrind.log "@DF_EXECUTABLE@" "$@"
++ ret=$?
++ ;;
++ *)
++ setarch i386 -R env LD_PRELOAD="@DFHACK_LIBRARY_DESTINATION@"/libdfhack.so "@DF_EXECUTABLE@" "$@"
++ ret=$?
++ ;;
++esac
++
++# Restore previous terminal settings
++stty "$old_tty_settings"
++echo -e "\n"
++
++if [ -n "$DF_POST_CMD" ]; then
++ eval $DF_POST_CMD
++fi
++
++exit $ret
diff --git a/games-util/dfhack/files/dfhack-9999/series b/games-util/dfhack/files/dfhack-9999/series
index 1a08fe19..d1dc79d4 100644
--- a/games-util/dfhack/files/dfhack-9999/series
+++ b/games-util/dfhack/files/dfhack-9999/series
@@ -5,3 +5,4 @@
04-compile-time-configurable.patch
05-compile-time-configurable-0.patch
06-compile-time-configurable-1.patch
+07-startup-scripts-configurable.patch