configure.in: adjust libdirname

* configure.in (libdirname): adjust library path name which libruby
  files will be installed.  [Bug #7874]
* tool/rbinstall.rb (libdir): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
configure.in: target_os suffix

* configure.in (target_os): do not strip -gnu suffix on Linux if
  --target is given explicitly.  [Bug #7874]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ruby.h: HAVE_RB_SCAN_ARGS_OPTIONAL_HASH

* include/ruby/ruby.h (HAVE_RB_SCAN_ARGS_OPTIONAL_HASH): for
  rb_scan_args() optional hash feature.  [Bug #7861]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
extmk.rb: rename variables

* ext/extmk.rb: rename working variables as more descriptive so no
  shadowing local variable warnings, and remove unused variables.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
extmk.rb: extract SUBMAKEOPTS

* ext/extmk.rb (SUBMAKEOPTS): extract common sub make options.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tool/rbinstall.rb (libdir): fix typo.  [Bug #7874]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
common.mk: uninstall

* common.mk (uninstall): uninstall installed file listed in
  $(INSTALLED_LIST) file.

* tool/rbuninstall.rb: simple uninstallation tool.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
configure.in: libdir_basename for -rpath and -install_name

* configure.in (libdir_basename): also -rpath and -install_name flags
  are affected when libruby directory changes.  [Bug #7874]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 2013-02-21

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
configure.in: expand libdir_basename

* configure.in (libdir_basename): expand with multiarch in configure,
  not to defer the expansion till ruby.pc.in and mkmf.rb.  [Bug #7874]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ruby.c: fix for multiarch library

* ruby.c (ruby_init_loadpath_safe): try two levels upper for stripping
  libdir name.  [Bug #7874]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c (rb_group_member): get rid of NGROUPS dependency.
  [Bug #7886] [ruby-core:52537]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c (eaccess): use access() when not using setuid nor setgid.
  This is minor optimization.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c (access_internal): removed.
* file.c (rb_file_readable_real): use access() instead of
  access_internal().
* file.c (rb_file_writable_real): ditto.
* file.c (rb_file_executable_real): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c (RB_MAX_GROUPS): moved to
* internal.h (RB_MAX_GROUPS): here.

* file.c (rb_group_member): use RB_MAX_GROUPS instead of
  RUBY_GROUP_MAX. They are the same.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c (rb_group_member): added an error check. SUS says,
  getgroups(small_value) may return EINVAL.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* signal.c (sigsegv): avoid to use async signal unsafe functions
  when nested sigsegv is happen.
  [Bug #5014] [ruby-dev:44082]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
signal.c: extract check_stack_overflow

* signal.c (check_stack_overflow): extract duplicated code and get rid
  of declaration-after-statement.  [Bug #5014]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tool/merger.rb: add interaction when only ChangeLog is modified.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Add test for [Backport #7896] [ruby-core:52607]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e