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

1121 Коммитов

Автор SHA1 Сообщение Дата
nobu 7b2c7b620c internal.h: use SIGNEDNESS_OF_TIME_T
* configure.in (RUBY_REPLACE_TYPE): define SIGNEDNESS_OF_type same as
  check_signedness of mkmf.rb.
* internal.h (TIMET_MAX, TIMET_MIN, TIMET_MAX_PLUS_ONE): use
  SIGNEDNESS_OF_TIME_T.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-26 20:15:44 +00:00
nobu 81cb1f6394 compiler version
* common.mk (showflags): show the compiler version.

* configure.in (CC_VERSION): compiler with version option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-22 07:57:09 +00:00
mrkn 357b8c06c3 * configure.in: set ac_cv_prog_cxx if CXX is supplied.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-18 17:15:43 +00:00
mrkn 5ef1525b5e * configure.in: Fix c++ compiler auto-selection not only for
Darwin 11.x, but also the other versions of Darwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-18 16:22:15 +00:00
naruse aa24857f12 * vm_dump.c (backtrace): on darwin use custom backtrace() to trace
beyond _sigtramp. darwin's backtrace can't trace beyond signal
  trampoline with sigaltstack.

* configure.in: check execinfo.h on darwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-18 04:31:59 +00:00
nobu cab124776e mingw build fix
* configure.in: struct timeval is defined in winsock2.h on mingw.

* include/ruby/missing.h: include time.h for time_t, and sys/time.h
  for timeval and timespec.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-16 07:28:32 +00:00
kosaki 798ff850e4 * configure.in: check struct timeval exist or not.
* include/ruby/missing.h (struct timeval): check HAVE_STRUCT_TIMEVAL
  properly. and don't include sys/time.h if struct timeval exist.

* file.c: include sys/time.h explicitly.
* random.c: ditto.
* thread_pthread.c: ditto.
* time.c: ditto.
* ext/date/date_strftime.c: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-16 05:06:47 +00:00
kosaki 2e544471ae * configure.in (_FORTIFY_SOURCE): added a few comments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39771 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-16 05:06:32 +00:00
nobu 844c04f462 configure.in, file.c: RUBY_FUNCTION_NAME_STRING
* configure.in (rb_cv_function_name_string): macro for function name
  string predefined identifier, __func__ in C99, or __FUNCTION__ in
  gcc.
* file.c (rb_sys_fail_path): use RUBY_FUNCTION_NAME_STRING.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-14 07:59:16 +00:00
nobu 120e2219f3 configure.in: fix for old shells
* configure.in (rm, shvar_to_cpp, unexpand_shvar): local is not
  available on old shells.
* configure.in (shvar_to_cpp): escape quotes for old shells.
  [Bug #7959] [Bug #8071]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-13 04:06:47 +00:00
nobu 0230ff7020 configure.in: note to remove a hack
* configure.in (rm): note to remove this hack when AC_PREREQ(2.70) or
  later.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-09 00:17:51 +00:00
nobu d415f2abac configure.in: suppress error messages
* configure.in: suppress error messages, rm: cannot remove
  'conftest.dSYM', from AC_EGREP_CPP with CFLAGS=-g on Darwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-08 05:24:26 +00:00
nobu 0af37bf0c5 configure.in: fix unexpand_shvar
* configure.in (unexpand_shvar): remove guarding quotes at last.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-06 10:22:29 +00:00
nobu 6332415800 GNUmakefile.in: new template
* template/GNUmakefile.in: split from configure.in.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-06 06:30:08 +00:00
eban 9a1d5b04cd * configure.in(AC_DISABLE_OPTION_CHECKING): avoid warning "WARNING: Unrecognized options: --with-PACKAGE".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-28 12:35:56 +00:00
nobu 2e3fc1f064 configure.in: escape double-quotes
* configure.in (unexpand_shvar): escape double-quotes in backquotes in
  double-quotes for some shells.  [Bug #7959]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-27 05:24:01 +00:00
nobu 54c9163f25 configure.in: remove no longer used variable
* configure.in (unexpand_shvar): remove variable which is no longer
  used since r39506.  [Bug #7959]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-27 01:16:08 +00:00
nobu a4ccd46d31 configure.in: non-portable shell behavior
* configure.in (unexpand_shvar): get rid of non-portable shell
  behavior on OpenBSD, so no extra quotes.  [Bug #7959]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-26 06:04:22 +00:00
nobu 5919370363 configure.in: find Setup file automatically
* configure.in (setup): find Setup file from target_os 1. by
  suffix (e.g. Setup.nacl, Setup.atheos), 2. by "platform"
  option (e.g. Setup.nt, Setup.emx), and 3. default Setup.  And
  Setup.dj had been removed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-25 04:12:45 +00:00
knu 6487abea6c Fix ksh/bash-ism.
* configure.in (unexpand_shvar): Use the numeric comparison
  operator instead of '==' which is a ksh extention. [Bug #7941]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-25 02:09:07 +00:00
nobu cc367fb326 configure.in: quite conftest
* configure.in (rb_cv_broken_backtrace): suppress extra output from
  conftest.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-22 00:05:51 +00:00
nobu 74016f1842 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
2013-02-21 03:45:07 +00:00
nobu 739c8ffcee 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
2013-02-21 03:42:25 +00:00
nobu 22b51faf7e 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 00:51:11 +00:00
nobu 52911974f8 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
2013-02-20 09:02:28 +00:00
nobu 67ab6e3d9b 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
2013-02-20 09:01:17 +00:00
naruse 0b261c379b * vm_dump: FreeBSD ports' libexecinfo's backtrace(3) can't trace
beyond signal trampoline, and as described in r38342 it can't
  trace on -O because it see stack frame pointers.
  libunwind unw_backtrace see dwarf information in the binary
  and it works with -O (without frame pointers).

* configure.in: remove r38342's hack and check libunwind.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-18 21:21:02 +00:00
naruse e233ca15e0 * configure.in: check whether backtrace(3) works well or not.
* vm_dump.c: set HAVE_BACKTRACE 0 if BROKEN_BACKTRACE.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-18 21:20:59 +00:00
nobu e8c57cd850 configure.in: unexpand exec_prefix
* configure.in (exec_prefix): unexpand after RUBY_EXEC_PREFIX is set.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-18 01:49:14 +00:00
nobu 46cdc66f84 version.c: move ruby_exec_prefix
* version.c (ruby_exec_prefix): move all path configuration stuffs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-18 01:11:58 +00:00
nobu f8530342f4 configure.in: unexpand_shvar
* configure.in (unexpand_shvar): regularize a shell variable by
  unexpanding shell variables in it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-18 01:09:56 +00:00
naruse c4d4107486 Revert r39289
* "configure.in: unexpand_shvar"
it breaks $LOAD_PATH.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-17 12:46:45 +00:00
nobu c9283b5c5d * configure.in: remove debug print.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-17 09:41:31 +00:00
nobu 17b898e182 configure.in: unexpand_shvar
* configure.in (unexpand_shvar): regularize a shell variable by
  unexpanding shell variables in it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-17 07:57:43 +00:00
knu b38334e2ec Properly reflect --with-opt-dir to LIBRUBY_DLDFLAGS on all platforms.
* configure.in (LIBRUBY_DLDFLAGS): Fix a bug where --with-opt-dir
  options given were not reflected to LIBRUBY_DLDFLAGS on many
  platforms including Linux and other GNU-based systems, NetBSD,
  AIX and BeOS.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 11:52:12 +00:00
nobu bb7e19c8e9 configure.in: don't substitute exec_prefix itself
* configure.in (shvar_to_cpp): do not substitute exec_prefix itself
  with RUBY_EXEC_PREFIX, which cause recursive definition.
  [ruby-core:52296] [Bug #7860]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 04:40:17 +00:00
nobu 62711da253 configure.in: unexpand exec_prefix etc
* configure.in: unexpand arch sitearch and exec_prefix values, so
  directly specified bindir, libdir, rubyprefix, etc can be properly
  substituted.  [ruby-core:52296] [Bug #7860]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 03:45:53 +00:00
akr d6d0e85320 * configure.in, ext/socket/extconf.rb: test netinet/in_systm.h in
ext/socket/extconf.rb instead of configure.in.

  Originally, netinet/in_systm.h is included for NextStep, OpenStep,
  and Rhapsody.  [ruby-core:1596]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 23:46:44 +00:00
akr 899ba99b90 * configure.in: don't test xti.h here.
* ext/socket/extconf.rb: test xti.h here.

  Originally, xti.h is included for IRIX [ruby-core:14447].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 22:59:40 +00:00
knu aeac90e6c5 Fix CFLAGS and CXXFLAGS in RbConfig::CONFIG on FreeBSD and NetBSD/amd64.
* configure.in: Fix a bug introduced in r38342 that the cflagspat
  substitution is messed up by the way CFLAGS and optflags are
  modified, which affected FreeBSD and NetBSD/amd64 when
  configured to use libexecinfo.  This bug resulted in CFLAGS and
  CXXFLAGS in RbConfig::CONFIG having warnflags expanded in them,
  forcing third-party C/C++ extensions to follow what warnflags
  demands, like ANSI/ISO-C90 conformance.  ref [Bug #7101]




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 13:25:28 +00:00
nobu 4e5d0cee76 configure.in: no Werror
* configure.in (warnflags): disable -Werror by default unless
  development.  [ruby-core:52131] [Bug #7830]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-13 08:56:42 +00:00
nobu 9f2e85a33c configure.in: Werror-implicit-function-declaration
* configure.in (warnflags): -Werror-implicit-function-declaration
  haven't been used as-is, but always replaced with -Werror= or -W.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-13 01:34:35 +00:00
akr 17df736379 add ML ref.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-11 16:40:47 +00:00
akr cbacc5d501 * configure.in: enable rb_cv_page_size_log test for MirOS BSD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-11 14:26:01 +00:00
akr c586d820c8 * configure.in: use -pthread on mirbsd*.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-11 11:07:32 +00:00
akr a378fa0d10 * configure.in: add SOLIBS and LIBRUBY_SO definition for mirbsd*.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-11 07:08:41 +00:00
nobu 0d46721033 configure.in: sitearch
* configure.in (rubysitearchprefix): sitearchdir and vendorarchdir
  should use sitearch, not arch.  [ruby-dev:46964] [Bug #7823]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-11 04:17:22 +00:00
akr f882c4c5e0 * configure.in: move OS specific header/function knowledge before
automatic header tests.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-11 03:33:11 +00:00
akr 0a8fc937ca * configure.in: move the test for -march=i486 just after
RUBY_UNIVERSAL_ARCH/RUBY_DEFAULT_ARCH.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-11 02:06:47 +00:00
nobu 817dff033f configure.in: escape
* configure.in (configure_args): escape $ for Makefile.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-09 14:50:03 +00:00
akr c38f3cd906 * configure.in: move header files check to the beginning of
"header and library section".
  test rlim_t with sys/types.h and sys/time.h for MirOS BSD.
  sys/types.h and sys/time.h is gurded by #ifdef and the above move
  is required for this change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-09 13:13:01 +00:00
nobu c4544321cb configure.in: empty version
* configure.in, version.c: prevent duplicated load paths by empty
  version string, it does not work right now.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-09 08:46:02 +00:00
nobu 8a91512692 configure.in: fix help message
* configure.in: fix arch parameters in help message.  [Bug #7804]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-09 08:38:46 +00:00
akr 01e7ec0137 fix the previous commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-08 14:30:10 +00:00
akr 513bfb29ea * configure.in: change CFLAGS temporally to test
ARCH_FLAG="-march=i486".



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39162 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-08 14:26:13 +00:00
akr 89ae338e97 * configure.in: don't define ARCH_FLAG="-march=i486" if it causes
compilation problem.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-08 12:20:27 +00:00
akr 8f5f89452d * configure.in: define linker for shared library on MirOS BSD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-07 13:02:31 +00:00
nobu 834fd50ae2 configure.in: multiarch option
* configure.in (multiarch): add option to move architecture dependent
  directories.  [Feature #6111]
* template/ruby.pc.in: add arch dependent paths.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 08:33:03 +00:00
nobu 67db06ba97 configure.in: arch dependent header directory options
* configure.in (rubyarchhdrdir, sitearchhdrdir, vendorarchhdrdir): add
  options to customize architecture dependent header directories.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 08:32:58 +00:00
nobu 29c214e4a0 configure.in: arch dependent library directory options
* configure.in (rubyarchprefix, sitearchdir, vendorarchdir): add
  options to customize architecture dependent library directories.
* template/ruby.pc.in, tool/mkconfig.rb, tool/rbinstall.rb: use
  configured values.
* tool/mkconfig.rb: expand rubyarchdir to extract prefix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 08:32:53 +00:00
nobu d32b122996 configure.in: RUBY_VERSION_NAME
* configure.in (RUBY_VERSION_NAME), template/ruby.pc.in: add
  substitution and define.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 08:32:48 +00:00
nobu 85aae4c658 configure.in: architecture name
* configure.in, version.c: parametric architecture name for paths.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 08:32:43 +00:00
nobu a8795e3527 configure.in: shvar_to_cpp
* configure.in (shvar_to_cpp): convert sh variable references
  by replacing with string literal forms in cpp.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39104 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 08:32:38 +00:00
nobu 6f9bbca2df configure.in: clang temporary files
* configure.in: clang leaves temporary files when interrupted by
  SIGPIPE if input is not stdin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 09:14:11 +00:00
yugui c9f5a8f3f2 * bootstraptest/test_io.c: add a test for [ruby-dev:46834].
* io.c (rb_cloexec_fcntl_dupfd) Use an emulation with dup(2) when
  fcntl(2) and/or F_DUPFD is unavailable.
  Suggested by akr.

* configure.in (HAVE_FCNTL): NativeClient does not provide fcntl(2).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-06 09:48:00 +00:00
yugui ea9301bd2b * common.mk (yes-btest): btest depends on also $(arch)-fake.rb and
rbconfig.rb on building for NativeClient.

* Makefile.in (fake): Avoid generating $(arch)-fake.rb unless cross
  compiling.

* configure.in (CROSS_COMPILING): New substitution.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-04 09:04:58 +00:00
yugui 6efba755da Fix failures on btest for NativeClient.
* bootstraptest/runner.rb (nacl?): New method to distinguish NaCl
  corss build.

* bootstraptest/test_io.rb: Skip unsupported operations.

* bootstraptest/test_literal.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-03 15:39:15 +00:00
yugui 6837b808cd * configure.in (OBJCOPY): Fixes build error for NativeClient.
Avoid disabling OBJCOPY for NativeClient.

* thread_pthread.c (rb_reserved_fd_p): USE_SLEEPY_TIMER_THREAD is
  always defined.  Fixes compilation error for NativeClient.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-03 05:46:29 +00:00
charliesome c56eee05c6 * configure.in: use 4 argument form of AC_CHECK_HEADERS to force
autoconf to use compiler's result

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-30 03:11:17 +00:00
nobu 2eb92b143a configure.in: AC_CHECK_HEADERS
* configure.in (crt_externs.h): use standard macro AC_CHECK_HEADERS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-29 01:10:41 +00:00
charliesome af35f2a61d * configure.in: check for the whether crt_externs.h is present when compiling
for darwin (this header is missing in the iOS SDK)
* eval_intern.h: check HAVE_CRT_EXTERNS_H before including crt_externs.h, if
  not defined, include missing/crt_externs.h instead
* hash.c: ditto
* missing/setproctitle.c: ditto
* missing/crt_externs.h: declare _NSGetEnviron() function and define environ
  for iOS

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-28 14:23:25 +00:00
kosaki 495f72ed38 * configure.in: enable -fPIE when checking -pie for fixing
OpenBSD build error. Patch by George Koehler. Thank you!
  [Bug #7606] [ruby-core:51082]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-26 03:00:13 +00:00
nobu 2ed40d3b57 * configure.in (NULLCMD): check in loop.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-15 01:39:49 +00:00
nobu 67c599a5d2 * configure.in (GNUmakefile): remove -jN option from submake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-15 01:39:47 +00:00
drbrain 40f89c17e6 * configure.in (HAVE_GCC_ATOMIC_BUILTINS): Set -march=i486 to enable
__sync_val_compare_and_swap.  Patch by KOSAKI Motohiro.
  [ruby-trunk - Bug #7485]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-14 21:18:00 +00:00
naruse 486795d951 * configure.in: add -fno-omit-frame-pointer if libexecinfo is used.
At least on FreeBSD ruby will crash on getting C backtrace
  when it is compiled with other than -O0.

* vm_dump.c: enable backtrace on FreeBSD even if with optimizations.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-12 07:36:32 +00:00
nobu 2b8485bc89 configure.in, mkmf.rb: sign extensions
* configure.in (codesign): check identifier at link time, not
  configure time.

* lib/mkmf.rb (LINK_SO): sign extensions too.  replace empty line with
  default command.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-10 04:18:13 +00:00
naruse 013521e557 * configure.in: fix r37294: run only on i[3-6]86-linux.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 06:45:25 +00:00
ngoto 58b8573081 * configure.in: revert r37911, r37906 and r37904 which break build
with non-gcc and/or non-IA32 compilers, e.g. Solaris Studio,
  Fujitsu C Compiler. [ruby-dev:46646] [Bug #7451]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 06:29:05 +00:00
naruse 13dc0e14fe Refix of r37904
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 23:30:33 +00:00
naruse c8d3536852 fix r37904: it forced i486 though -marh was usually i686
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 18:12:53 +00:00
naruse bb2e9e9e98 * configure.in (opt-dir): don't use non portable flag -E of sed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 18:04:55 +00:00
naruse c41e749c4d * configure.in (ARCH_FLAG): __sync_val_compare_and_swap_4 needs
-march=i486 on at least linux gcc 4.1.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 18:02:31 +00:00
kosaki 5611df706e * process.c (proc_getsid): adds new method for getting session id.
Contributed from fumiyas (Fumiyasu SATOH). Thank you!
  [Feature #6757] [ruby-dev:45977]
* configure.in: adds getsid check.
* test/ruby/test_process.rb (TestProcess#test_setsid): new test
  for the above.
* NEWS: news for the above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-24 02:51:24 +00:00
nobu f6761088a4 configure.in: --disable-dln
* configure.in (--disable-dln): option to disable dynamic linking
  feature.  [ruby-core:37676] [Feature #4946]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-23 15:00:12 +00:00
naruse f495c968c9 * configure.in (RUBY_DTRACE_AVAILABLE): only check dtrace availability.
* configure.in (RUBY_DTRACE_POSTPROCESS): restore.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 12:49:36 +00:00
naruse b1fa559039 Add extra line to prevent syntax error
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 08:47:43 +00:00
naruse da56cb6bf2 * configure.in: fix dtrace didn't work on darwin.
* configure.in (RUBY_DTRACE_AVAILABLE): unify RUBY_DTRACE_POSTPROCESS
  and RUBY_DTRACE_BSD_BROKEN.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 08:35:57 +00:00
naruse bd0931f7b9 * configure.in (--enable-dtrace): always call RUBY_DTRACE_BSD_BROKEN
for portability.
  As the note, FreeBSD 8 has DTrace as the optional
  feature (it is enabled by the build option), but doesn't have USDT.
  FreeBSD 9 has USDT but they are still optional. FreeBSD 10 will
  enable them by default.
  The variable $rb_cv_prog_dtrace_g is "yes" only on FreeBSD 9 with
  optional DTrace or FreeBSD 10. If it is "no", you cannnot know
  whether it doesn't need -G or DTrace is disabled. (by cheking
  error code, you can know)

* configure.in (--enable-dtrace): change help message

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 02:21:17 +00:00
naruse 49c0c51056 Revert "* configure.in (--enable-dtrace): change help message"
This reverts commit 029b59ba53.
When $rb_cv_prog_dtrace_g is yes on FreeBSD even if /usr/bin/dtrace
exists, it means dtrace is disabled on the system.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 01:18:18 +00:00
ngoto 029b59ba53 * configure.in (--enable-dtrace): change help message
* configure.in (--enable-dtrace): remove ineffective "else AS_CASE ..."
  because the variable $rb_cv_prog_dtrace_g is normally "yes" on
  FreeBSD and the AS_CASE is not evaluated on FreeBSD.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 14:12:48 +00:00
nobu 2370556d3d configure.in: no -lelf
* configure.in (LIBS): libelf is need on only FreeBSD.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 07:17:56 +00:00
naruse 24512ba1b4 * configure.in: fix didn't enable_dtrace=yes on auto.
* configure.in: see enable_dtrace for adding libelf on FreeBSD.

* common.mk: VPATH is not needed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 06:11:36 +00:00
naruse f567a1a4d9 * Makefile.in (.SUFFIX): bsdmake needs .SUFFIX is defined before use.
* common.mk: fix path of probes.dmyh.

* configure.in: FreeBSD's USDT requires libelf.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 01:04:53 +00:00
ngoto 1f225be2e5 * configure.in, Makefile.in, common.mk: support DTrace on Solaris 10,
based on r26235 by Yugui. On Solaris 10, low optimization level
  may also be needed, e.g. optflags="-xO1" or "-xO0" with Oracle
  SolarisStudio 12.3 cc.

* configure.in (--enable-dtrace): new option to enable/disable
  DTrace support. By default, trying to enable if dtrace command
  is found on the system. It is disabled when cross compiling.

* configure.in (RUBY_DTRACE_POSTPROCESS): new macro. checks whether
  the dtrace on the system needs postprocessing with "dtrace -G".
  The postprocessing is needed on Solaris 10 and other platforms.

* configure.in (RUBY_DTRACE_BSD_BROKEN): new macro. checks whether
  the dtrace supports USDT.

* configure.in (DTRACE): move after RUBY_DTRACE_POSTPROCESS.

* configure.in (LD): On Solaris, /usr/ccs/bin/ld is preferred.

* configure.in, Makefile.in, common.mk (DTRACE_OBJ): new macro for
  DTrace probe object generated by postprocessing with "dtrace -G".

* Makefile.in, common.mk (probes.$(OBJEXT)): DTrace probe object
  generated by the postprocessing. New file probes.stamp is for
  rebuilding related objects that may be modified by "dtrace -G".

* configure.in, Makefile.in, common.mk (DTRACE_GLOMMED_OBJ): new
  macro for DTrace static library hacks.

* configure.in, Makefile.in (LIBRUBY_A_OBJS): ditto.

* Makefile.in, common.mk (ruby-glommed.$(OBJEXT)): new target with
  rule for DTrace static library hacks.

* common.mk (DTRACE_DEPENDENT_OBJS): objects depended on probes.h.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-18 08:24:24 +00:00
nobu eb40d20e30 probes.h: select by suffix rules
* Makefile.in, common.mk, configure.in, win32/Makefile.sub (probes.h):
  select generating with dtrace or copying dummy file by suffix rules.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 15:22:37 +00:00
nobu df4e0dd52d Makefile.in: split probes.h commands
* Makefile.in (probes.h): split build commands for dtrace-available
  and unavailable platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 08:57:17 +00:00
nobu 1c7f72dac2 configure.in: move after AC_PROG_CC
* configure.in (DTRACE): move after AC_PROG_CC since cross_compiling
  is set in it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 08:30:56 +00:00
nobu 288da355e3 configure.in: cross-compiling fix
* configure.in (DTRACE): ignore non-prefixed version if
  cross-compiling.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 07:24:45 +00:00
naruse f82d652f35 Fix dtrace commit r37631, it is [Feature #2565]
* configure.in: disable dtrace because it doesn't work on FreeBSD.

* common.mk (clean-local): rm probes.h.

* common.mk (parse.o): depend $(PROBES_H_INCLUDES).

* common.mk (.d.h): moved from Makefile.in and use BASERUBY.

* tool/gen_dummy_probes.rb: reimplemented with ruby because sed is not
  available on Windows Microsoft VC++ environment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 06:13:39 +00:00
glass c5b19cf01c * re.c (rb_memsearch_ss): performance improvement by using memmem(3) if
possible. [ruby-dev:45530] [Feature #6311]

* configure.in: check existence of memmem(3) and that it is not broken.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 02:12:40 +00:00
tenderlove 4c740bae97 * probes.d: add DTrace probe declarations. [ruby-core:27448]
* array.c (empty_ary_alloc, ary_new): added array create DTrace probe.

* compile.c (rb_insns_name): allowing DTrace probes to access
  instruction sequence name.

* Makefile.in: translate probes.d file to appropriate header file.

* common.mk: declare dependencies on the DTrace header.

* configure.in: add a test for existence of DTrace.

* eval.c (setup_exception): add a probe for when an exception is
  raised.

* gc.c: Add DTrace probes for mark begin and end, and sweep begin and
  end.

* hash.c (empty_hash_alloc): Add a probe for hash allocation.

* insns.def: Add probes for function entry and return.

* internal.h: function declaration for compile.c change.

* load.c (rb_f_load): add probes for `load` entry and exit, require
  entry and exit, and wrapping search_required for load path search.

* object.c (rb_obj_alloc): added a probe for general object creation.

* parse.y (yycompile0): added a probe around parse and compile phase.

* string.c (empty_str_alloc, str_new): DTrace probes for string
  allocation.

* test/dtrace/*: tests for DTrace probes.

* vm.c (vm_invoke_proc): add probes for function return on exception
  raise, hash create, and instruction sequence execution.

* vm_core.h: add probe declarations for function entry and exit.

* vm_dump.c: add probes header file.

* vm_eval.c (vm_call0_cfunc, vm_call0_cfunc_with_frame): add probe on
  function entry and return.

* vm_exec.c: expose instruction number to instruction name function.

* vm_insnshelper.c: add function entry and exit probes for cfunc
  methods.

* vm_insnhelper.h: vm usage information is always collected, so
  uncomment the functions.

12 19:14:50 2012  Akinori MUSHA  <knu@iDaemons.org>

* configure.in (isinf, isnan): isinf() and isnan() are macros on
  DragonFly which cannot be found by AC_REPLACE_FUNCS().  This
  workaround enforces the fact that they exist on DragonFly.

12 15:59:38 2012  Shugo Maeda  <shugo@ruby-lang.org>

* vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo),
  vm_insnhelper.c (vm_search_method): revert r37616 because it's too
  slow.  [ruby-dev:46477]

* test/ruby/test_refinement.rb (test_inline_method_cache): skip
  the test until the bug is fixed efficiently.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-12 21:52:12 +00:00
knu e34f508775 Fix build on DragonFly where configure fails to detect isinf()/isnan().
* configure.in (isinf, isnan): isinf() and isnan() are macros on
  DragonFly which cannot be found by AC_REPLACE_FUNCS().  This
  workaround enforces the fact that they exist on DragonFly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-12 10:26:28 +00:00
knu 0a741075a3 * configure.in (--with-opt-dir): Avoid nesting of double quotes
inside backquotes, since some traditional shells like PD KSH
  (which OpenBSD's /bin/sh bases on) fails to parse them.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-08 03:09:18 +00:00
nobu 0249395582 configure.in: no visibility option for older GCC
* configure.in (visibility_option): visibility attribute is not
  available before GCC 4, so do not use -fvisibility option in that
  case.  [ruby-core:48147] [Bug #7205]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23 05:06:50 +00:00
nobu 7254573c55 configure.in: multiple opt-dir
* configure.in (opt-dir): allow multiple directories separated by
  $PATH_SEPARATOR as well as dir_config in mkmf.rb. [ruby-core:47868]
  [Bug #7120]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-17 06:33:14 +00:00
nari 8d53a08ed8 * gc.c: Use the non-recursive marking instead of recursion. The
recursion marking of CRuby needs checking stack overflow and the
  fail-safe system, but these systems not good at partial points,
  for example, marking deep tree structures. [ruby-dev:46184]
  [Feature #7095]

* configure.in (GC_MARK_STACKFRAME_WORD): removed. It's used by
  checking stack overflow of marking.

* win32/Makefile.sub (GC_MARK_STACKFRAME_WORD): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03 12:30:21 +00:00
knu 1d695c36b9 * configure.in (--with-opt-dir): Make this also work on DLDFLAGS
so LIBRUBY_SO links fine with libexecinfo installed in a
  non-system directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-30 17:36:09 +00:00
nobu c278c84692 configure.in: warnflags
* configure.in (warnflags): needs to check configuration with strict
  options.  [ruby-dev:46105]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-16 08:41:37 +00:00
nobu 4a906510a2 configure.in: strict warnflags
* configure.in (strict_warnflags): separate strict flags from
  warnflags only for core.  [ruby-dev:46105]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-15 23:58:04 +00:00
nobu 057b1986a4 configure.in: aix warnflags
* configure.in: append -qinfo option not overriding.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-15 23:52:34 +00:00
eregon 429c856e9c * configure.in: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-14 17:29:40 +00:00
nobu d11ef850b2 configure.in: no PIE on Haiku
* configure.in: Don't use PIE on Haiku because loader support is not
  enough.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-13 01:22:13 +00:00
nobu 059f14a6c5 configure.in: unquote
* configure.in (LIBDIR_BASENAME): unquote shell variable.
  [ruby-core:47267] [Bug #6903]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-01 05:03:34 +00:00
nobu 22c81db9d8 configure.in: use configured libdir value
* configure.in (LIBDIR_BASENAME): use configured libdir value to fix
  --enable-load-relative on systems where libdir is not default value,
  overridden in config.site files.  [ruby-core:47267] [Bug #6903]
* ruby.c (ruby_init_loadpath_safe): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-29 06:03:09 +00:00
naruse 4358271106 * configure.in: Fixing Haiku R1/alpha3 build with gcc-4.4.4.
- omit ANSI standard flags to compile socket extension where
    anonymous union is required.
  - remove redundant -be flags.
  by Takashi Toyoshima <toyoshim@gmail.com>
  https://github.com/ruby/ruby/pull/168

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36839 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-28 11:05:23 +00:00
yugui a66b2c6df1 * nacl/GNUmakefile.in (CC, LD, NM, AR, AS, RANLIB, OBJDUMP, OBJCOPY)
Rewrites these variables instead of PATH.
  NaCl port uses a toolchain which is specified by NACL_SDK_ROOT
  environment variable. Originally, NaCl build added the toolchain
  under the NACL_SDK_ROOT to the PATH. But updating PATH doesn't work
  on Mac.
  (RBCONFIG): Replaces configs with the variable updates above.

* configure.in: Thus it is no longer necessary to check $PATH.

Based on a patch by Takashi Toyoshima <toyoshim AT gmail.com>.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-27 01:22:53 +00:00
luislavena 86df08dac6 Improve require/File.expand_path performance on Windows
* configure.in (mingw): add shlwapi to the list of dependency
  libs for Windows.
* win32/Makefile.sub (EXTSOLIBS): ditto.

* internal.h: declare internal functions rb_w32_init_file,
  rb_file_expand_path_internal and rb_file_expand_path_fast.

* file.c (Init_File): invoke Windows initialization rb_w32_init_file

* win32/file.c (rb_file_load_path_internal): new function.
  Windows-specific implementation that replaces file_expand_path.
  [Bug #6836][ruby-core:46996]

* win32/file.c (rb_w32_init_file): new function. Initialize codepage
  cache for faster conversion encodings lookup.

* file.c (file_expand_path): rename to rb_file_expand_path_internal.
  Conditionally exclude from Windows.

* file.c (rb_file_expand_path_fast): new function. delegates to
  rb_file_expand_path_internal without performing a hit to the
  filesystem.

* file.c (file_expand_path_1): use rb_file_expand_path_internal without
  path expansion (used by require).
* file.c (rb_find_file_ext_safe): ditto.
* file.c (rb_find_file_safe): ditto.

* load.c (rb_get_expanded_load_path): use rb_file_expand_path_fast.
* load.c (rb_feature_provided): ditto.

* file.c (rb_file_expand_path): use rb_file_expand_path_internal with
  path expansion.
* file.c (rb_file_absolute_path): ditto.

* test/ruby/test_file_exhaustive.rb: new tests to exercise
  rb_file_expand_path_internal implementation and compliance with
  existing behaviors.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-24 03:44:56 +00:00
naruse f896ad3b49 * configure.in: Fixing Haiku build.
- -lbe is not required for linking
  - stack protector doesn't work for now because of the default gcc's bug
  by Takashi Toyoshima <toyoshim@gmail.com>
  https://github.com/ruby/ruby/pull/167

* signal.c (ruby_signal): haiku doesn't have SIGBUS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-23 02:59:24 +00:00
naruse ea16237c61 * configure.in: use the value of --with-opt-dir on building ruby
itself. [ruby-dev:46064] [Bug #6900]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-23 01:50:12 +00:00
yugui 0d05a79bca * configure.in (ac_cv_func_shutdown): shutdown(2) has a dummy
implementation but has no declaration and does not work in
  NativeClient SDK pepper_20.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-22 01:12:52 +00:00
nobu 2ed9b46b4f configure.in: noral blocks
* configure.in: use noral blocks instead of dnl, so that matching
  parentheses would match.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-21 16:18:10 +00:00
nobu 5eb9453fc3 configure.in: escape #-marks
* configure.in: escape #-marks, so that matching parentheses would
  match.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-21 16:18:05 +00:00
nobu 404cc1ae3f configure.in: no bare case statement
* configure.in (RUBY_CHECK_SIZEOF): use single test instead of split
  bare case statement, so that matching parentheses would match.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-21 16:18:02 +00:00
nobu 50f3d3feb5 configure.in: use real path
* configure.in (MINIRUBY): use real path for include path.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-09 14:46:48 +00:00
naruse e57da6109c * configure.in: use gcc-4.2 prior to clang, gcc, and cc if exist for
the use of Snow Leopard's old clang. see also r36594, r36610, r36611.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-05 04:26:24 +00:00
nobu bea3f0df10 configure.in: use default compilers for non-darwin
* configure.in: use clang prior to gcc only when self-compiling on
  darwin.  search default compilers on other platforms.  [Bug #6816]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-03 10:21:22 +00:00
naruse a713b37640 * configure.in: move RUBY_MINGW32 after AC_PROG_CC.
RUBY_MINGW32 uses AC_TRY_CPP and it sets CC and CPP. [Bug #6816]

* configure.in: don't use AC_PROG_CC in AS_CASE.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-03 08:27:04 +00:00
naruse e07bdafbf4 Revert "* configure.in: move RUBY_MINGW32 after AC_PROG_CC."
This reverts commit r36603.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-03 07:25:55 +00:00
naruse 77ef86feaa * configure.in: move RUBY_MINGW32 after AC_PROG_CC.
RUBY_MINGW32 uses AC_TRY_CPP and it sets CC and CPP. [Bug #6816]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-03 06:21:16 +00:00
naruse 14bf66f252 * configure.in (AC_PROG_CC): AC_PROG_CC tries clang at first on
darwin. [Bug #6816]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-02 04:24:13 +00:00
nobu 48d7aa4ae9 configure.in: deprecate -flat_namespace
* configure.in (DLDFLAGS): on Darwin, deprecate -flat_namespace to get
  rid of huge imported symbols table.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-30 04:11:56 +00:00
nobu a18558140a configure.in: runnable if disable-shared
* configure.in (LIBRUBY_RELATIVE): libruby_so is not made when
  disable-shared, so no absolute path is used for it and executable
  file is runnable anywhere.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-30 04:11:21 +00:00
nobu a8aa1e2127 configure.in: get rid of duplication in CPPFLAGS
* configure.in (RUBY_CPPOUTFILE): get rid of variable conflict so
  CPPFLAGS is not duplicated.  [ruby-core:43097] [Bug #6119]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-27 08:58:15 +00:00
nobu dafab791d5 configure.in: LIBPATH on AIX
* configure.in (LIBPATHENV): LIBPATH is used on AIX, but not
  SHLIB_PATH which was carelessly copied from HP/UX.  suggested by
  Perry Smith at [ruby-core:46397].  [Bug #6728]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-23 05:43:37 +00:00
nobu 6684ade9a3 configure.in: EXTDLDFLAGS
* configure.in (EXTDLDFLAGS): split options for each extension
  libraries, and unused in ruby.pc.  [Bug #6734]
* lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 05:53:23 +00:00
usa 8a02eed723 * configure.in: removed --enable/disable-win95 options. (see r36432)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-10 01:45:22 +00:00
nobu 37c8b68555 mkmf.rb: add TARGET_NAME
* configure.in (DLDFLAGS): use TARGET_ENTRY to specify an entry point
  instead of TARGET which may contain non-identifer characters.
* lib/mkmf.rb (create_makefile): add TARGET_NAME which is the first
  part consists of only word characters.  [ruby-core:46248][Bug #6709]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-09 04:28:40 +00:00
nobu 3fceaf10ab make runnable
* common.mk (runnable): make symbolic links to run in build directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-03 02:16:08 +00:00
kosaki 1ebe152ede * configure.in (for stack end address): remove human68k specific
check. It is no longer supported.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-24 15:42:21 +00:00
nobu d1351e98fd fix CPPOUTFILE
* configure.in (RUBY_CPPOUTFILE): check if output is really sent to
  specified file to tell if -o option works.  [ruby-dev:45742]
  [Bug#6591]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-14 14:00:02 +00:00
nobu b1644bfca9 fix CPPOUTFILE
* configure.in (RUBY_CPPOUTFILE): check if output file is actually
  created.  [ruby-dev:45742] [Bug#6591]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-14 13:49:51 +00:00
naruse e9e603145f * configure.in: revert r36071 and add NetBSD to blacklist of -ansi.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-14 01:16:33 +00:00
naruse 114ae69b45 * configure.in: use -fbuiltin with -ansi -std=iso9899:199409.
This prevents errors introduced by disabling bulitin functions,
  which is the sub-effect of -ansi/-std.
  Now NetBSD can use -ansi -std=iso9899:199409.
  Maybe mingw, cygwin and darwin can also.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 19:57:31 +00:00
nobu a9ff01cdae configure.in: option for darwin
* configure.in: remove -ansi and -std options for lgamma_r() and
  finite().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 13:18:05 +00:00
nobu e985a6841c configure.in: option for cygwin
* configure.in: cygwin does not provide some declarations in strict
  ANSI mode.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 12:46:36 +00:00
nobu 23838b93e8 configure.in: option for cygwin
* configure.in: cygwin needs C99 for some stuff, e.g.,
  pthread_attr_setstacksize, sched_yield.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 08:51:04 +00:00
shyouhei 43bc8f9beb * configure.in: On Windows platforms, system provided headers are
VC++ optimized.  That is, C++ habits are often contaminated into
	  various  headers.  Most  frequent  situation is  the  use of  //
	  comments.  We bypass ANSI  C mode for them.  Otherwise extension
	  libs cannot include those headers.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 06:16:46 +00:00
nobu 6379978d45 configure.in: check iff nacl
* configure.in (RUBY_NACL_CHECK_PEPPER_TYPES): check only on nacl.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 04:09:37 +00:00
shyouhei 0dcc1f0dfe fix typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-12 12:09:16 +00:00