| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"rake native gem" without "cross" didn't set the ruby version constraint.
Instead it failed with NoMethodError like so:
/ffi $ rake native gem
no configuration section for specified version of Ruby (rbconfig-i386-mingw32-2.6.3)
no configuration section for specified version of Ruby (rbconfig-x64-mingw32-2.6.3)
install -c build/x86_64-linux/ffi_c/2.6.3/ffi_c.so lib/ffi_c.so
cp build/x86_64-linux/ffi_c/2.6.3/ffi_c.so build/x86_64-linux/stage/lib/ffi_c.so
rake aborted!
NoMethodError: undefined method `split' for nil:NilClass
/home/lars/.rvm/gems/ruby-2.6.3/gems/rake-compiler-1.0.9/lib/rake/extensiontask.rb:515:in `ruby_api_version'
/home/lars/.rvm/gems/ruby-2.6.3/gems/rake-compiler-1.0.9/lib/rake/extensiontask.rb:262:in `block in define_native_tasks'
/home/lars/.rvm/gems/ruby-2.6.3/gems/rake-12.3.3/exe/rake:27:in `<top (required)>'
/home/lars/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `eval'
/home/lars/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `<main>'
Tasks: TOP => native => native:x86_64-linux => native:ffi:x86_64-linux
(See full trace by running task with --trace)
|
|
|
|
|
|
| |
Until now rake-compiler uses "make" to build the extension binary, but doesn't use "make install" to copy it into the lib directory.
This has the downside, that only the extension binary is copied, but no additional files.
In particular files registered per mkmf's $INSTALLFILES mechanism are not respected.
Using "make install" fixes this.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This was introduced in commit a7c113e580c1565000166f9967da82ff2ecdaeaa to avoid interference with host build.
However it prohibits setting important flags for cross-build.
Also don't force 'LDFLAGS=-pipe -s' in configure, which doesn't work with clang targeting MacOS.
It can now be set externally.
|
| |
|
|
|
|
| |
Thanks Travis CI!
|
| |
|
|
|
|
|
|
|
| |
Rubies can be build like so:
rake-compiler cross-ruby VERSION=2.7.0:2.6.0 HOST=x86_64-w64-mingw32:i686-w64-mingw32
This builds the cross product of all ":" separated ruby and host versions.
To force sequential builds add option "-j1".
|
|
|
|
| |
Starting from 3.0.0-preview2, Ruby stopped shipping tar.bz2 archives.
This changes the archive format to tar.gz for better compatibility.
|
| |
|
| |
|
| |
|
|
|
| |
lib/rake/extensiontask.rb:471: warning: instance variable @make not initialized
|
|
|
|
|
|
| |
The .so files of extensions are often manually stripped after compilation per task in a Rakefile.
This is done to reduce gem size and because debug information in release binaries isn't particular useful.
This manual step can be avoided, if the cross ruby version is built with stripping enabled.
Compatibility is ensured, since stripping files a second time doesn't make a difference.
|
|
|
| |
The previous pattern only recognized 32 bit compiler versions.
|
|
|
|
|
| |
ALT_SEPARATOR doesn't exist in Makefile.in since Ruby 1.9.2:
https://github.com/ruby/ruby/commit/7c7690045870396816624bf57775eb29e6a478fd
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
GitHub: fix #163
TODO: We should add an example for command line.
Reported by Kai Kuchenbecker. Thanks!!!
|
| |
|
| |
|
|
|
|
|
|
| |
GitHub: fix #161
Reported by Masaki Hara. Thanks!!!
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Make customizable compiler Xlint option for JRuby native extension
* [CS] restructure and fix indentation of (defaults) spec
* Add specs for lint_option
* [DOC] CHANGELOG: stub changelog entry for the next release
* [DOC] CHANGELOG: Make customizable compiler Xlint option for JRuby native extension
* Use "-Xlint" option for JRuby native extension by default.
`javac -help -X`
> -Xlint Enable recommended warnings
|
|
|
|
|
|
|
|
|
|
|
|
| |
* [DOC] Convert README.rdoc to README.md for table support
* [DOC] Document all existing configuration options in a table
* [DOC] Use "-Xlint" option for JRuby native extension by default.
`javac -help -X`
> -Xlint Enable recommended warnings
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| | |
Fix cross-platform compilation for Java extensions
Patch by Prashant Vithani. Thanks!!!
|
| |
| |
| |
| | |
Add comments explaining each condition.
|
|/
|
|
|
|
|
|
|
|
| |
Using `libdir` provided by `RbConfig` to compile java extension from MRI
breaks as it can't find `jruby.jar` under `lib` directory. Added a check
on file existence if the path is taken from RbConfig and if it doesn't
exist, check for the path which is set in environment JRUBY_HOME to find
correct `jruby.jar`.
Raise the error to abort compilation if `jruby.jar` is not found.
|
| |
|
| |
|
|
|
|
|
|
| |
GitHub: fix #150
Reported by MSP-Greg. Thanks!!!
|
| |
|
| |
|
| |
|
| |
|