summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* ci release: fix a typoHEADmasterSutou Kouhei2023-04-131-1/+1
|
* ci release: add missing tag nameSutou Kouhei2023-04-031-1/+1
|
* Don't use --release flag on Java 8 (#213)Pavel Rosický2023-03-301-1/+7
| | | | | | | | | | | | | | | | | this allows using ``` Rake::JavaExtensionTask.new("name", gemspec) do |ext| ext.release = '8' end ``` on Java 8 (for building the gem), because the flag is available since Java 9, see https://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html this flag is for backward compatibility, so it's safe to just skip it if we can't use it. relates to https://github.com/puma/puma/pull/3109 https://github.com/socketry/nio4r/pull/292
* Fix typo (#212)Jan-Benedikt Jagusch2023-03-271-1/+1
|
* baseextensiontask: provide an API to allow for dynamic sources (#211)James Tucker2023-03-072-1/+12
| | | | | | | | | | | | | | | | | | If a build wishes to generate some of the extension source files then the pattern input is insufficient. Provide a place to stash an additional FileList that will then become a dependency of the compile tasks. Example: ```ruby file 'ext/libfoo/generated.c' do |t| open(t.name, 'w+) { |f| f << '#include <foo.h>' } end Rake::ExtensionTask.new('foo') do |ext| ext.extra_sources << 'generated.c' end ```
* ci: add missing GH_TOKENSutou Kouhei2022-12-161-0/+2
|
* Bump versionSutou Kouhei2022-12-161-1/+1
|
* Add 1.2.1 entryv1.2.1Sutou Kouhei2022-12-161-0/+14
|
* ci: add release workflowSutou Kouhei2022-12-161-0/+23
|
* Add support for RubyGems 3.3.21 or later (#209)Mike Dalessio2022-12-165-28/+137
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since Rubygems 3.3.21, the Gem::Platform name always contains the library version for gnu platforms. So where the rake-compiler config entries previously were: ```yaml --- rbconfig-x86_64-linux-gnu-2.7.0: "/usr/local/rake-compiler/ruby/x86_64-redhat-linux/ruby-2.7.0/lib/ruby/2.7.0/x86_64-linux-gnu/rbconfig.rb" rbconfig-x86_64-linux-2.7.0: "/usr/local/rake-compiler/ruby/x86_64-redhat-linux/ruby-2.7.0/lib/ruby/2.7.0/x86_64-linux-gnu/rbconfig.rb" ``` with later versions of rubygems, it is only ```yaml --- rbconfig-x86_64-linux-gnu-2.7.0: "/usr/local/rake-compiler/ruby/x86_64-redhat-linux/ruby-2.7.0/lib/ruby/2.7.0/x86_64-linux-gnu/rbconfig.rb" ``` This means that the current way of finding a matching runtime, by doing a string comparison on the config keys, is no longer appropriate. This is causing failing builds downstream in `rake-compiler-dock`. This PR: - extracts a new CompilerConfig class to encapsulate the logic - uses `Gem::Platform#=~` to tell if the gem platform matches the runtime platform
* Fix typo (#208)Garen Torikian2022-10-151-1/+1
|
* Bump versionSutou Kouhei2022-04-151-1/+1
|
* Add 1.2.0 entryv1.2.0Sutou Kouhei2022-04-151-0/+6
|
* spec: require yaml explicitlySutou Kouhei2022-04-151-0/+1
|
* Defer requiring yamlSutou Kouhei2022-04-152-6/+1
| | | | | | | Because yaml requires stringio implicitly. If stringio is required, we can't use rake-compiler for stringio. See also: https://github.com/ruby/stringio/pull/21#issuecomment-1082632676
* Bump versionSutou Kouhei2022-01-221-1/+1
|
* Add 1.1.9 entryv1.1.9Sutou Kouhei2022-01-221-0/+7
|
* Support --release option to build JRuby extension for older platforms (#201)Satoshi Tagomori2022-01-222-2/+38
|
* Bump versionSutou Kouhei2022-01-181-1/+1
|
* Add 1.1.8 entryv1.1.8Sutou Kouhei2022-01-181-0/+6
|
* Set correct `required_ruby_version` when some `RUBY_CC_VERSION`s are missing ↵Lars Kanis2022-01-182-6/+6
| | | | | | | (#199) The required_ruby_version was set twice, although one in define_native_tasks is enough. Fixes #198
* Bump versionSutou Kouhei2022-01-041-1/+1
|
* ci: add Ruby 3.1v1.1.7Sutou Kouhei2022-01-041-0/+1
|
* Add 1.1.7 entrySutou Kouhei2022-01-041-0/+6
|
* Reduce duplicated binary(platf)Sutou Kouhei2022-01-041-5/+7
|
* Reduce duplicated File.basename(binary_path)Sutou Kouhei2022-01-041-3/+4
|
* Fix binary paths for staging and clobber (#197)konsolebox2022-01-042-17/+35
|
* Bump versionSutou Kouhei2021-12-121-1/+1
|
* Add 1.1.6 entryv1.1.6Sutou Kouhei2021-12-121-0/+5
|
* Fix extension pathSutou Kouhei2021-12-121-2/+2
|
* Remove needless lib_binary_path and lib_binary_dir_pathSutou Kouhei2021-12-121-5/+2
|
* Accept Symbol as nameSutou Kouhei2021-12-121-2/+2
|
* Bump versionSutou Kouhei2021-12-121-1/+1
|
* Add 1.1.5 entryv1.1.5Sutou Kouhei2021-12-121-0/+6
|
* Fix a regression bugSutou Kouhei2021-12-121-0/+3
| | | | | | | | | | | GitHub: fix GH-196 It's caused when name that includes "/" is specified to Rake::ExtensionTask.new and the default lib_dir is used such as https://github.com/konsolebox/digest-xxhash-ruby . In the case, built binaries are copied to lib/ not lib/XXX/. Reported by konsolebox. Thanks!!!
* Bump versionSutou Kouhei2021-12-111-1/+1
|
* Add 1.1.4 entryv1.1.4Sutou Kouhei2021-12-111-2/+8
|
* Fix a regression bugSutou Kouhei2021-12-111-2/+15
| | | | | | | | | | | GitHub: fix GH-195 It's caused when base Ruby and cross Ruby use different RbConfig::CONFIG["ENABLE_SHARED"]. Gem's extension directory is depend on it. So we should use the same RbConfig::CONFIG["ENABLE_SHARED"] for both base Ruby and cross Ruby. Reported by Mike Dalessio. Thanks!!!
* Bump versionSutou Kouhei2021-12-081-1/+1
|
* Add 1.1.3 entryv1.1.3Sutou Kouhei2021-12-081-0/+6
|
* Ignore target_prefix= to ensure installing lib_dirSutou Kouhei2021-12-081-1/+1
| | | | | | GitHub: fix GH-194 Reported by Andrew Kane. Thanks!!!
* Bump versionSutou Kouhei2021-12-071-1/+1
|
* Add 1.1.2 entryv1.1.2Sutou Kouhei2021-12-071-0/+23
|
* Fix determining of ruby versions in "rake native gem" (#166)Lars Kanis2021-04-091-4/+7
| | | | | | | | | | | | | | | | | | | | "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)
* Use "make install" instead of manually copying extension binary (#191)Lars Kanis2021-04-021-4/+22
| | | | | | 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.
* CI: Add 3.0 (#186)Olle Jonsson2021-01-301-3/+4
|
* History.txt -> History.md, add links & reformat (#174)MSP-Greg2021-01-302-136/+150
|
* Avoid warning: assigned but unused variable - e (#185)Olle Jonsson2021-01-291-1/+1
|
* IronRuby has been a dead project for 10 years (#184)Thomas E Enebo2021-01-261-9/+0
|
* Don't mask out build env vars for cross-ruby (#182)Lars Kanis2020-12-241-2/+1
| | | | | | | 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.