The Stonesense install script appears to do strange things which cause DF to
load SDL.framework/Versions/A/SDL instead of SDL.framework/SDL. Once the former
is loaded, loading the latter and calling SDL_WM_* functions from it will fail.
A better solution would be to remove parts of the Stonesense fix-libs-*.sh
script(s) that are causing this, since they don't appear to be needed, or
use dlsym() to find the already-opened library/symbols.
Previously, there was some disagreement over whether event handlers such as
Buildings::updateBuildings() took building pointers or building IDs shoved
into pointers. It turned out to be the latter, which, unfortunately, did not
compile on x64. Passing building IDs isn't possible in all cases, because
building event handlers can be called for recently-deleted buildings too.
Pointers to building IDs do work reliably, though.
Fixes#1003
If DOWNLOAD_RUBY is set to OFF, the build will not attempt to download
a prebuilt libruby.so and not fire a warning that one is not present.
This may be desired if one wants to link dfhack against a newer system
libruby.so, now that dfhack supports ruby 2.x and also supports linking
against system libruby (at least, on Linux), as per the following commit:
df9b5bca73
This also allows the dfhack build to proceed without network access
(once all submodules have been fetched), which at least some Linux
distributions, like Fedora, require.
By default DOWNLOAD_RUBY is set to ON, so this should not change
the behavior of default builds.
I tested that when DOWNLOAD_RUBY is set to OFF, dfhack still launches
and that the Ruby plugin still functions, e.g. by running
```rb_eval puts('Hello world.')``` in the dfhack console.
Merge remote-tracking branch 'PeridexisErrant/remove-broken-plugins'
advtools and misery are still partially broken, but parts of them still work, so
repairing them is possible.
* labormanager: add deconstruct labor for constructed instruments
* labormanager: fix StoreItemInVehicle labor inference
StoreItemInVehicle requires the labor appropriate to the item being
stashed