Граф коммитов

144 Коммитов

Автор SHA1 Сообщение Дата
hsbt a943328194 Use stub executables generated by RubyGems istead of original executables.
It resolved the conflict issues when invoking `gem i rdoc` and the binstub
issues with Bundler and Rails.

  [Bug #5060][ruby-core:38257][Fix GH-2023]

  * https://github.com/rubygems/rubygems/pull/2338
  * https://github.com/heroku/heroku-buildpack-ruby/issues/829

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-25 01:20:00 +00:00
nobu a3b92a5d92 rbinstall.rb: do not install rdoc flag files [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-16 00:37:48 +00:00
k0kubun 0fd5f063aa win32/Makefile.sub: generate MJIT header pdb
in the MJIT-header-specific path, not default path like vc140.pdb.

mjit_worker.c: specify the MJIT-header-specific pdb path.

tool/rbinstall.rb: install MJIT header pdb as well.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-11 16:28:04 +00:00
k0kubun 34ade9a4b7 win32/Makefile.sub: install MJIT header and object
to prefix. This is a retry of r64947. So this doesn't still make mswin MJIT
on install directory succeed. One more step required.

tool/rbinstall.rb: This change is needed to install headers correctly since
the extensions are .obj and .pch, not .h


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-11 15:01:56 +00:00
nobu 92b469e7da Install HTML docs if produced
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-02 01:56:43 +00:00
nobu a0ff2a6aaf Expand gemspec path to the real path
`make install` has loaded forwardable.rb twice, from
forwardable.gemspec and prime.gemspec.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-29 07:04:29 +00:00
hsbt 8a9996493a Fixed installation failure with mswin environment.
[ruby-core:88699][Bug #15035]
  This patch was provided by MSP-Greg.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-28 13:42:39 +00:00
knu 6251615c12 Skip colliding filenames in LIBRUBY_ALIASES
This allows user to specify any name in `--with-so-name` that might
cause a name clash with LIBRUBY_ALIASES on the platform.

Without this, for example, configuring with `--with-soname=ruby
--enable-shared` on macOS would end up running `ln -sf libruby.dylib
libruby.dylib` only to fail with the following error in installation:

```
make[2]: stat: libruby.dylib: Too many levels of symbolic links
```

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-06-01 07:13:38 +00:00
nobu ecedebab2c tool: fixed shadowing variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-18 00:40:06 +00:00
nobu 36bc8c0b28 tool: removed unused variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-18 00:38:00 +00:00
nobu 9ce0a84640 rbinstall.rb: fix timing to read stub
* tool/rbinstall.rb ($script_installer.stub): read stub file on
  demand.  as `$cmdtype` is set to "exe" in parse_args, it is not
  set yet when `$script_installer` is defined.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-04-27 01:58:29 +00:00
normal 6c721bd44f tool/rbinstall.rb: allow owner to have write permissions
Denying write permissions to the owner seems wrong.

Oddly, this problem only manifests in the "ruby_2_4" branch when
installing bundled gems (rake and friends).  It does not happen
with "ruby_2_3", or "trunk", so it might be related to RubyGems
changes.

* tool/rbinstall.rb: set umask to 022
  [ruby-core:84420] [Bug #14227]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-05 09:41:21 +00:00
nobu e24e33c134 rbinstall.rb: show categories of default gems
* tool/rbinstall.rb (#install_default_gem): show categories of
  default gems, pure ruby libraries and libraries with extensions.
  [ruby-core:83600] [Bug #14065]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-30 05:45:20 +00:00
nobu 6a16d03365 rbinstall.rb: fix for --cmd-type=cmd
* tool/rbinstall.rb (PROLOG_SCRIPT): fix wrapper code for cmd
  script.  [Bug#13997]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-13 01:26:51 +00:00
nobu e22f35ef2a rbinstall.rb: shell code as comments
* tool/rbinstall.rb (PROLOG_SCRIPT): wrap shell code by
  =begin/=end as comments.  [ruby-core:83202] [Bug#13997]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-12 07:27:16 +00:00
hsbt 5b3d137b1f Fixed broken `bundle gem` command.
This patch is provided by @gyugyu (Yusuke Yagyu)

  * Remove README* entry from no_install that there is no README* files except README.md.tt
  * Rename .travis.yml.tt to travis.yml.tt like gitignore.tt

  [Bug #13975][ruby-dev:50278][fix GH-1710]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-05 08:32:01 +00:00
hsbt 08c1dde4cc fix a label for bundled gems.
"bundle gems" is a wrong name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-08 05:18:18 +00:00
hsbt cd8f990442 Rervert r58304. Because Rubygems have specialized finder for default gems.
We need to list library entries for default gems.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-19 11:50:03 +00:00
nobu e326045afc rbinstall.rb: ignore skipped exts
* tool/rbinstall.rb (default-gems): skip gemspec if corresponding
  Makefile does not exist.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-16 14:54:59 +00:00
nobu 5bca8051af rbinstall.rb: no file list for default gems
* tool/rbinstall.rb (default-gems): no file list is used now.
  all files should be installed as standard libraries.
  [ruby-core:80667] [Bug #13428]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-14 00:45:49 +00:00
nobu 796e995007 rbinstall.rb: purge `git ls-files`
* tool/rbinstall.rb (load_gemspec): purge `git ls-files` generated
  by bundle.  it is not available always everywhere everytime.
  [ruby-dev:50068] [Bug #13423]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-12 08:39:19 +00:00
nobu 7965327d13 Install only files explicitly referenced by bundled gems.
[Bug #13417]
[Fix GH-1580]
Author:    Vít Ondruch <vondruch@redhat.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-11 12:20:21 +00:00
nobu 8913e2946e Spec#files are not used anymore.
[Fix GH-1579]
Author:    Vít Ondruch <vondruch@redhat.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-11 12:20:18 +00:00
nobu 83ea401747 Make .gemspec slimmer.
This is the same code that RubyGems are using:

a1a5ab55cb

[ci skip]
[Fix GH-1578]
Author:    Vít Ondruch <vondruch@redhat.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-10 15:26:49 +00:00
nobu 8ebdec34ae rbinstall.rb: umask hack
* tool/rbinstall.rb (Gem::Installer#install): moved umask hack.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-07 02:49:02 +00:00
nobu fa20fd8469 rbinstall.rb: Gem::Installer lacks dir_mode option
* tool/rbinstall.rb (bundle-gems): Gem::Installer does not support
  directory permission option, set umask to owner writable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-05 23:52:49 +00:00
nobu b9eb70634e rbinstall.rb: rename tags
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-05 23:52:48 +00:00
nobu 604df3e22d tool/rbinstall.rb: add new tags
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-05 16:23:12 +00:00
nobu 00742d2ca5 rbinstall.rb: default umask
* tool/rbinstall.rb: revert r49841 and default umask to just
  prohibit all from writing.  symlink(2) has no argument to set
  permissions but is affected by umask.
  [ruby-dev:49975] [Bug #13194]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-05 16:23:11 +00:00
hsbt 8395d5a7c3 Prepare to make CSV module to default gem.
* lib/csv.gemspec: initial gemspec for csv gem.
  * tool/rbinstall.rb: support gemspec located under lib direcotry like `lib/foo.gemspec`

  [Feature #13177]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-01 09:12:53 +00:00
nobu 1d36a09d81 rbinstall.rb: mimic rubygems wrapper script
* tool/rbinstall.rb (app_script_text): move shell script part
  after comments generated by RubyGems. '#'-lines are comments in
  both of ruby and shell script.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-15 05:50:41 +00:00
nobu 37a8a2a26e rbinstall.rb: do nothing if bin script is same
* tool/rbinstall.rb (check_executable_overwrite): do nothing if
  the existing file equals to the wrapper script to be generated.

* tool/rbinstall.rb (generate_bin_script): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-15 00:45:10 +00:00
nobu c850c4ad37 fix up r57322
* tool/rbinstall.rb: ruby_install_name is used too.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-14 06:13:23 +00:00
nobu bc388526ba fix prolog in gem wrapper scripts
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-13 14:15:00 +00:00
nobu 0f78a6a1b9 rbinstall.rb: LIBRUBY_RELATIVE
* tool/rbinstall.rb: see LIBRUBY_RELATIVE in CONFIG instead of
  reading config.h.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-13 05:58:44 +00:00
nobu 9bd2490785 install-static-library option [ci skip]
* configure.in (install-static-library): add option to enable/
  disable to install static ruby library.  defaulted to "no" if
  enable-shared.  [Feature #12845]
* tool/rbinstall.rb (local-arch-lib): respect the option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-10-17 07:17:07 +00:00
rhe d1dbeebebf rbinstall.rb: don't install gemspec for skipped libraries
* tool/rbinstall.rb (gem): Don't install gemspec if no files will be
  installed for the gem. This happens when the extension library is not
  compiled.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-26 02:50:31 +00:00
nobu 97a016ac8a install extra libraries
* ext/extmk.rb (extract_makefile, extmake, configuration): store
  extra libraries to be installed.
* tool/rbinstall.rb (ext-arch): install extra libraries.
* ext/zlib/extconf.rb: install zlib if built.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-24 13:26:21 +00:00
nobu 19f624541f rbinstall.rb: gem bindir
* tool/rbinstall.rb (gem): use the bindir of each gemspec instead
  of hardcoded 'bin', since rdoc 5.0.0 overrides it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08 08:40:16 +00:00
nobu b08a45521e rbinstall.rb: install just one gemspec [ci skip]
* tool/rbinstall.rb (gem): install gemspec match with the
  directory only.  some gems, (e.g., json) have multiple gemspec
  files.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-05 00:58:23 +00:00
nobu 2f4f44352c rbinstall.rb: install iff expected platforms [ci skip]
* tool/rbinstall.rb (gem): install only gemspecs for expected
  platforms.  e.g., ignore json-java.gemspec in json gem.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-04 06:25:38 +00:00
nobu 162a8fdb7a rbinstall.rb: chdir to gem directory [ci skip]
* tool/rbinstall.rb (gem): load gemspec files under each
  directories, since some gemspecs read files there.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-04 06:15:58 +00:00
nobu c929094b31 rbinstall.rb: prefix with space [ci skip]
* tool/rbinstall.rb (bin): exec via /bin/sh if the prefix contains
  space charaters, because shebang does not support that case in
  general.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-01 06:10:25 +00:00
nobu 7f7aa9d442 extmk.rb: build_complete
* ext/extmk.rb (create_makefile): make gem.build_complete file
  under TARGET_SO_DIR and install it only when the gem build
  succeeded.  [ruby-core:77057] [Bug #12681]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-31 08:39:23 +00:00
nobu a5eab8ccef skip failed gems
* tool/rbinstall.rb: skip gems which failed to build extensions.
  [ruby-dev:49764] [Bug #12683]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-17 17:36:28 +00:00
nobu 9839d82d1e gem extensions
* ext/extmk.rb: build gem extensions into separate directories
* tool/rbinstall.rb: install pre-built gem extension files gem
  extension directories.  [ruby-core:76931] [Bug #12681]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-17 14:14:44 +00:00
normal f8d0bdedf1 tool: add descriptions and fix typos
* tool/asm_parse.rb: add description
* tool/change_maker.rb: ditto
* tool/downloader.rb: ditto
* tool/eval.rb: ditto
* tool/expand-config.rb: ditto
* tool/extlibs.rb: ditto
* tool/fake.rb: ditto
* tool/file2lastrev.rb: ditto
* tool/gem-unpack.rb: ditto
* tool/gen_dummy_probes.rb: ditto
* tool/gen_ruby_tapset.rb: ditto
* tool/generic_erb.rb: ditto
* tool/id2token.rb: ditto
* tool/ifchange: ditto
* tool/insns2vm.rb: ditto
* tool/instruction.rb: ditto
* tool/jisx0208.rb: ditto
* tool/merger.rb: ditto
* tool/mkrunnable.rb: ditto
* tool/node_name.rb: ditto
* tool/parse.rb: ditto
* tool/rbinstall.rb: ditto
* tool/rbuninstall.rb: ditto
* tool/rmdirs: ditto
* tool/runruby.rb: ditto
* tool/strip-rdoc.rb: ditto
* tool/vcs.rb: ditto
* tool/vtlh.rb: ditto
* tool/ytab.sed: ditto
* tool/enc-unicode.rb: fix typo
* tool/mk_call_iseq_optimized.rb: ditto
* tool/update-deps: ditto
  [ruby-core:76215] [Bug #12539]
  by Noah Gibbs <the.codefolio.guy@gmail.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-02 21:01:04 +00:00
nobu 9cedfbcb91 rbinstall.rb: drive letter in without_destdir
* tool/rbinstall.rb (without_destdir): just strip a drive letter
  which is prepended by with_destdir.
  pointed out by @DavidEGrayson.
  https://github.com/ruby/ruby/commit/0e5f9ae#commitcomment-16101763

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-16 00:51:48 +00:00
nobu 0e5f9aeaea rbinstall.rb: drive letter in without_destdir
* tool/rbinstall.rb (without_destdir): compare with the destdir
  after stripping a drive letter, on dosish platforms.
  pointed out by @DavidEGrayson.
  https://github.com/ruby/ruby/commit/d0cf23b#commitcomment-16100407

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-15 17:50:08 +00:00
hsbt 8fef6aa20b * tool/rbinstall.rb: fix wrong permission for gem specification without
zlib runtime. [Bug #11685][ruby-dev:49343]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-16 06:33:17 +00:00