Commit Graph

42 Commits (df5184d7515db43e4d039fb30e0371a00c6c2380)

Author SHA1 Message Date
Kelvie Wong e7696b1f03 Allow symlinked dfhack-run
This is useful for symlinking this script somewhere on your $PATH, and
having it work without having to find the correct directory.
2023-01-14 14:00:02 -08:00
lethosor 6a1f046995
Add --sizecheck option to Linux launcher script, update docs 2020-08-08 00:41:04 -04:00
lethosor 9c5e5de999 Disable stty in launchers if stdin is not a terminal 2020-03-26 22:58:43 -04:00
Ben Lubar be6f9a2531
fix typo in be881936f3 2020-02-09 18:12:47 -06:00
Ben Lubar be881936f3
add -x (--exec) flag to run DFHack via the exec builtin
this means the process run by ./dfhack will be Dwarf Fortress itself rather than the wrapper script, but it also means that no cleanup actions can occur.
2020-02-09 18:01:24 -06:00
lethosor 045d8bfd1e Linux launcher: attempt to fall back to a working architecture for setarch
Also include directions if this fails

Closes #1466
2020-01-14 23:56:25 -05:00
Pauli 05dfac28e1 Automatically preload asan runtime library 2018-07-05 17:58:56 +03:00
Pauli cfb646f576 Add gdbserver support to linux dfhack script
It use set envinronment because
* I couldn't get exec-wrapper to work correctly
* Even with shell remote gdb doesn't support spaces in arguments
2018-06-12 20:47:45 +03:00
Pauli 69b42d5ecf Support DF command line arguments with gdb 2018-06-12 20:46:22 +03:00
Pauli bbe70afa2d Add strace support to the linux dfhack script 2018-06-12 20:42:12 +03:00
Daniel Brooks 9e935f67f8 makes dfhack -g work correctly
First, simplifies the quoting of the environment variables. Then sets
startup-with-shell to off so that gdb does not start bash first; if it
starts bash ld will see the LD_PRELOAD and try to load libdfhack.so
into the bash process, which is not what we want.

We could instead use an exec-wrapper, but that would be a slightly
larger change and we don't need any of the convenience features that
using a shell gives us (argument expansion and redirects, basically).
2018-05-19 03:02:44 -07:00
lethosor 4f38260e8c Pass the correct architecture to setarch on Linux
Fixes #1129
2017-08-21 19:34:46 -04:00
lethosor 33ca7638f2 Make DFHack libraries take priority on Linux
Fixes #1008
2016-10-22 13:04:15 -04:00
lethosor a6c10307b0 Reset terminal color on exit 2016-05-14 19:39:10 -04:00
lethosor c15cf5f415 Rename libstdc++ automatically in Linux launcher script 2016-01-18 09:21:31 -05:00
txtsd 07e59139fd Use distro_fixes.sh from LNP if it exists 2015-12-23 00:38:03 +05:30
miffedmap ca6646e963 avoid dangling colon 2015-02-07 23:26:10 +02:00
miffedmap df9633c827 LD_PRELOAD should use colon rather then space as delimiter 2015-02-07 22:27:38 +02:00
miffedmap 5f2d259593 Allow user to include custom libraries in LD_PRELOAD 2015-01-27 04:35:49 +02:00
Lethosor 080c0bc5b2 Revert "Log output of "dfhack" script to dfhack.log" 2014-12-17 17:12:10 -05:00
lethosor 50765dd60f Log output of "dfhack" script to dfhack.log 2014-11-22 10:08:38 -05:00
Eric Wald 1b3e1b8e92 No longer prints -e when DF finishes.
That echo option is a bash-specific extension, unavailable under other shells.
Fortunately, a bare echo with no arguments prints the single newline required here.
2014-09-17 19:29:47 -06:00
Alexander Gavrilov 74429f12d7 Pull the list of libraries to preload into a variable in linux/dfhack.
This is so that the workaround described here can be applied easily:

http://www.bay12games.com/dwarves/mantisbt/view.php?id=2688
2014-04-21 09:33:13 +04:00
Petr Mrázek 658e64c1b2 Fix allegro, stonesense/deplibs is now hack/libs, sync isoworld and stonesense 2013-04-07 20:25:38 +02:00
Petr Mrázek 575b1c45fc Sync isoworld, linux fixes 2013-04-03 01:10:06 +02:00
Petr Mrázek aee15db75f Even better handling of terminal reset on linux 2012-07-12 13:00:01 +02:00
Petr Mrázek 493b059f4c Reset terminal to sane state after exiting on linux - without clearing the scrollback. 2012-07-12 02:51:00 +02:00
jj a59825ff80 linux: remove LD_PRELOAD warning on x86_64 distrib 2012-05-19 13:02:11 +02:00
Alexander Gavrilov 9d6e26fa5f Fix crashing color_ostream::printerr due to vfprintf vs fprintf mixup.
Also enable heap clearing in gdb mode, and fix a few newlines.
2012-03-31 22:26:41 +04:00
Alexander Gavrilov e7851f5abd Improve support for void RPC functions, dfhack-run, etc. 2012-03-15 11:07:43 +04:00
Petr Mrázek 731472a478 Add eggy hooks (linux only for now) 2012-02-28 03:37:56 +01:00
Petr Mrázek 647916e109 Graphic module 2011-12-07 20:37:09 +01:00
Petr Mrázek 780b659210 Zeromq hello world plugin. 2011-11-25 22:14:36 +01:00
Petr Mrázek 0808c9c0ab Add support for stonesense distributed with allegro libs as .so 2011-08-20 13:37:14 +02:00
Petr Mrázek a0f99ef707 Many tweaks to plugins, reorganized the build system and removed more cruft. 2011-08-14 08:42:21 +02:00
Petr Mrázek c423bb6e88 Use 'setarch i386 -R' on linux to be usre that ASLR won't break things. 2011-08-09 20:38:47 +02:00
Petr Mrázek 262a5c9da3 Callgrind in dfhack script, added an option for building stonesense. 2011-07-21 11:29:26 +02:00
Matthew Cline 592a65f9a3 ".dfhackrc" user config file
If the file ".dfhackrc" exists in the user's home directory or in the
game directory it will be sourced, so the user can set environmental
variables like LD_LIBRARY_PATH.  There's also a few shell variables it
can set to alter the behavior of the dfhack script.
2011-07-17 15:50:31 -07:00
Petr Mrázek 459d48d75a Made the linux console super awesome. The dfhack script won't LD_PRELOAD dfhack for gdb. 2011-07-15 15:55:01 +02:00
Petr Mrázek f2b46274ec Fix for a bug in command history queue access. dfhack script can run valgrind. 2011-07-14 08:02:29 +02:00
Matthew Cline fed916bf8d Linux launch script: gdb and terminal reset
1) Giving "-g" or "--gdb" as the first argument to the dfhack script
will launch DF under gdb.

2) "reset -I" is called after DF finishes, to return the terminal to a
sane state in case DF crashed or was killed.
2011-07-12 23:37:49 -07:00
Matthew Cline a30a4a2720 CMake linux: copy LD_PRELOAD script
Copy package/linux/dfhack to the games directory; it's the same as the
normal df script, but sets LD_PRELOAD properly.

Also, CMAkeLists.txt now checks to see that the output directory is set
to the game directory, and fatally fails if it isn't.
2011-07-12 17:25:27 -07:00