lethosor
65382473f7
Ruby: stop cpp_new from truncating vtable pointers
...
This fixes a crash in levers.rb, for instance.
2017-06-10 17:22:52 -04:00
lethosor
c3d5663320
Ruby: use Gui module to get selected unit
...
This allows "exterminate it" to work from command-prompt, among other things.
Fixes #1100
2017-06-06 23:34:34 -04:00
lethosor
4dff218976
ruby: fix crash when unloading plugin on Windows
2017-05-09 13:49:07 -04:00
Ben Rosser
f0d4a1f563
Add DOWNLOAD_RUBY option to Ruby plugin cmake, defaulting to ON
...
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.
2017-01-20 17:40:14 -05:00
Kelly Kinkade
439e13643c
better hack to make ruby work on win64
2016-12-13 23:55:20 -06:00
jj
8488b1a953
ruby: use correct raw string length with encodings
2016-12-05 10:29:16 +01:00
lethosor
dd28079f30
Fix ruby.cpp compilation on win64
2016-11-22 22:43:48 -05:00
lethosor
df9b5bca73
Allow ruby plugin to try more than one library path, including libruby.so on Linux
2016-11-17 10:31:48 -05:00
lethosor
8d9b888410
Revert "fixed MD5 hash of win64 ruby lib."
...
Unable to get anything other than 8a856 for the extracted library on my end
This reverts commit fbaf2697cb
.
2016-11-14 14:16:43 -05:00
Japa Illo
fbaf2697cb
fixed MD5 hash of win64 ruby lib.
2016-11-08 15:10:43 +05:30
lethosor
2e6c7a90be
fix whitespace
2016-10-31 01:58:40 -04:00
lethosor
9e97ccbb50
Use system libruby on osx64 (since ruby 1.8 and 2 are supported now)
2016-10-29 19:08:54 -04:00
lethosor
4e7f2b9579
win64 ruby 2
2016-10-29 19:00:28 -04:00
jj
c640006069
ruby: some more updates for x64, fix df_flagarray size
2016-10-28 16:40:14 +02:00
lethosor
d62d263793
ruby: Fix potential onupdate crash when cur_year is missing
2016-10-26 20:55:16 -04:00
lethosor
cf329c7ceb
Ruby: fix Qnil and Qtrue constants with 64-bit Ruby 2.x
...
These have different values on x64 Ruby 2.x (see USE_FLONUM in ruby.h in the
ruby source). This was causing dump_rb_error to crash, since it was walking an
array until it got to Qnil (but thinking Qnil was 4 instead of 8) and trying to
print each element as a string. There were probably more subtle issues with
Qnil and Qtrue being wrong too.
2016-10-26 20:44:35 -04:00
lethosor
defedb351e
Fix raw_vcall crash on Linux/OS X x64
2016-10-26 09:34:14 -04:00
lethosor
3df74de021
Fix rb_dfget_vtable_ptr on x64
...
This was causing rb_dfget_rtti_classname to receive a truncated pointer and
crash
2016-10-21 11:46:53 -04:00
jj
97f29229cd
ruby: fix weird freeze when printing large strings to the console on linux64
2016-10-21 17:00:02 +02:00
jj
f586692ed6
plugins/ruby: update for 64bits
2016-10-21 14:52:26 +02:00
lethosor
2806fe73a9
ruby: Support for loading Ruby 2.x libruby
...
Check for rb_float_new and rb_float_new_in_heap, as documented in #271
2016-10-08 17:01:52 -04:00
lethosor
714ba1a030
Warn if ruby library is missing instead of breaking installation
2016-09-26 18:28:59 -04:00
lethosor
caa6a81669
Add ruby library for linux x64
...
Built by @dseguin: https://github.com/DFHack/dfhack/pull/989
Closes dfhack/dfhack#989
2016-09-26 17:46:50 -04:00
lethosor
7abb82b6d1
Switch to downloading 32-bit libruby on Linux and Windows
2016-09-26 17:36:57 -04:00
lethosor
888a09bed5
Switch to downloading OS X libruby
2016-09-26 17:24:35 -04:00
lethosor
bbaf129adf
Fix ruby codegen for bitfields/enums with long base-type
2016-08-27 15:24:53 -04:00
lethosor
1b11c46a98
ruby.cpp: uint32_t -> uintptr_t
2016-08-10 15:24:07 -04:00
Lethosor
6e741b1a80
Merge pull request #969 from Qartar/win64
...
Minor fixes/updates for Visual Studio 2015 Win64
2016-08-10 15:15:44 -04:00
Carter Bray
5fef2ad075
Add windows container sizes to ruby codegen
2016-08-07 10:11:17 -07:00
lethosor
ddbb1b5bb8
ruby: Update sizes for some types
...
Many are still incomplete on x64, especially on Windows
2016-08-05 17:29:24 -04:00
lethosor
dbd2e71920
Ruby codegen integer improvements
...
- Add uint64_t
- Add special case for long on different platforms
- Require OS and architecture to be specified
NOTE: integer alignment on x64 is probably still incorrect
2016-08-05 17:12:07 -04:00
lethosor
ef569dc5a1
Pass OS and architecture to ruby codegen explicitly
...
- Passing the architecture is needed to determine sizeof(long)
- Passing the OS prevents potential issues when cross-compiling between Windows
and non-Windows (although this is unlikely)
2016-08-05 17:09:25 -04:00
Carter Bray
9da2dcb8a2
Fix raw_vcall on Win64 builds
...
MSVC's call conventions on x64 are the same for normal function calls and
member function calls (with the addition of the implicit 'this'
parameter).
2016-07-31 17:01:57 -07:00
PeridexisErrant
273c22f606
Shorten "ls" help for plugins
...
I think that's all of them.
2016-04-15 16:28:41 +10:00
Ben Lubar
afa1199f98
Add support for grates and bars to Ruby.
...
See also: DFHack@248331a1967d2527a13bcf259f35bffe4dec86b8, DFHack#808
2016-01-31 15:19:58 -06:00
Ben Lubar
197e5ca2d9
update the name of the pressure plate field in ruby
...
https://github.com/DFHack/dfhack/blob/0.42.04-alpha2/library/modules/Buildings.cpp#L365-L371
2016-01-30 08:46:16 -06:00
Ben Lubar
aab5c61923
set well bucket z correctly when allocating it in ruby
...
https://github.com/DFHack/dfhack/blob/0.42.04-alpha2/library/modules/Buildings.cpp#L347-L352
2016-01-29 14:51:32 -06:00
lethosor
786581689f
Move get_dfhack_version() to a separate namespace and add a few other version-related functions
2015-04-02 16:37:58 -04:00
lethosor
6a64525284
Include a ruby library for OS X
...
See #560
2015-02-21 21:53:08 -05:00
lethosor
d7897caec7
Display a more user-friendly error message when the ruby library is not available
2015-02-21 21:50:25 -05:00
lethosor
0f77a1a578
Move DFHack version to a separate (static) library
...
This allows the DFHack version to be changed without recompiling
everything
2015-02-19 12:08:23 -05:00
lethosor
10cfef0553
Fix whitespace issues
2015-02-14 22:53:06 -05:00
Yoann Guillot
889bd06ffc
ruby: fix windows platform detection
2014-11-16 13:00:38 +01:00
Yoann Guillot
8042c5d342
ruby: load arch-specific ruby-autogen
2014-11-14 12:49:08 +01:00
Yoann Guillot
696380e749
ruby: distinguish ruby-autogen.rb name based on architecture
2014-11-14 12:47:42 +01:00
Yoann Guillot
e2229f6a6a
ruby: remove DL_RUBY cmake option
2014-11-14 12:38:24 +01:00
jj
eed684a8df
fix superdwarf
2014-09-26 11:39:05 +02:00
jj
0766538ecd
ruby: add df.print_color(col, string)
2014-09-25 15:53:03 +02:00
jj
1a38c72763
ruby: add stl-fstream to codegen
2014-09-25 13:19:00 +02:00
jj
c894346639
ruby: call RUBY_INIT_STACK
2014-09-19 21:38:22 +02:00