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

1233 Коммитов

Автор SHA1 Сообщение Дата
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
shyouhei 0284e64922 * configure.in: enable strict ANSI mode by default in case of GCC,
requested by _ko1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-12 09:41:07 +00:00
naruse f658207fe3 * configure.in: on checking libexecinfo, don't specify /use/local.
On FreeBSD people must specify --with-opt-dir or --with-execinfo-dir.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-11 11:27:08 +00:00
yugui c3f3d77225 Fixes threading on NativeClient.
* thread_pthread.c (timer_thread_sleep): Extracted out a function from
  thread_timer(). Added an alternative implementation for platforms
  that lacks select(2) or pipe(2).
  (rb_thread_create_timer_thread, native_cond_initialize,
  native_cond_destroy): Replaced wrong HAVE_XXX checks.

* configure.in (pthread_attr_init): New check.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-10 12:51:37 +00:00
yugui c541ff3223 * configure.in (RUBY_NACL): Warns if $PATH does not contain the path
to NativeClient SDK. PATH variable redefinition in GNUmakefile does
  not work for GNU make 3.81.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-10 09:39:17 +00:00
naruse 5c45a1373a * configure.in: NetBSD 6 adds libexecinfo but it only works on amd64.
http://www.mail-archive.com/source-changes-full@netbsd.org/msg38729.html

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-10 05:28:51 +00:00
nobu 1102fd2f3e * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-08 22:44:01 +00:00
nobu e990086711 static-linked-ext: no ext/libext.a
* configure.in: no ext/libext.a, an archive library cannot be made
  from other archive libraries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 06:02:43 +00:00
nobu 0a6700fec2 use LIBEXT
* Makefile.in (LIBEXT): add macro.
* configure.in (ENCOBJS, EXTOBJS): use LIBEXT, not hardcoded suffix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 02:35:37 +00:00
nobu 7788d102c9 fix NaCl support
* configure.in: fix function name to be checked, to initialize
  rb_thread_cond_t properly.
* thread_pthread.c (native_cond_initialize, native_cond_destroy):
  fix macro name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-17 14:04:02 +00:00
yugui 76bc2d1ed7 Imports Ruby's port to NativeClient (a.k.a NaCl).
Patch by Google Inc. [ruby-core:45073].

* configure.in (RUBY_NACL): New M4 func to configure variables for
  NaCl.
  (RUBY_NACL_CHECK_PEPPER_TYPES): New M4 func to check the old names
  of Pepper interface types.
  (BTESTRUBY): New variable to specify which ruby should be run on
  "make btest". NaCl can run the built binary by sel_ldr, but it need
  rbconfig.rb. So this variable is distinguished from $MINIRUBY.
  
* thread_pthread.c: Disabled some features on NaCl.

* io.c: ditto.

* process.c: ditto.

* signal.c: ditto.

* file.c: ditto.

* missing/flock.c: ditto.

* nacl/pepper_main.c: An example implementation of Pepper application
  that embeds Ruby.

* nacl/example.html: An example of web page that uses the Pepper
  application.

* nacl/nacl-config.rb: Detects variants of NaCl SDK.

* nacl/GNUmakefile.in: Makefile template for NaCl specific build
  process.

* nacl/package.rb: script for packaging a NaCl-Ruby embedding
  application. 

* nacl/reate_nmf.rb: Wrapper script of create_nmf.py

* dln.c (dln_load): Added a hack to call on NaCl.

* util.c (ruby_getcwd): Path to the current directort is not available
  on NaCl.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-17 02:48:59 +00:00
nobu b85e3e70ee * configure.in (PIE): fix operator.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-16 09:05:59 +00:00
yugui a2976afa0e configure.in: Fix an unbalanced quote.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-16 06:47:49 +00:00
nobu 4407beaef9 configure.in: use single quotes
* configure.in (LD): enclose with single qoutes but not double quotes
  not to expand command substitution.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-16 06:15:56 +00:00
yugui 3fa3f9abb9 Supports static linking of extensions and encodings again.
Fixes --with-static-linked-ext.

Patch by Google Inc. [ruby-core:45073].

* Makefile.in (ENCOBJS, EXTOBJS): New variables to specify static
  linked libraries. Also reintroduces extinit.o, introduces encinit.o
  introduces encinit.o

* common.mk: Builds static libraries rather than shared objects if
  specified.

* configure.in (LD): new substitution. 
  Avoids PIE if s

* enc/depend: Supports static linked libraries
  (libencs, libenc, libtrans): New target.

* enc/encinit.c.erb: new template to generate the initialization of
  statically linked encodings.

* enc/make_encmake.rb (--module): new flag to specify whether static
  or dynamic.

* transcode_data.h (TRANS_INIT): New macro to get rid of the name
  collision of encoding initializers and transcoder initializers.

* ext/extmk.rb: Fixes the behavior on $extstatic is true.

* lib/mkmf.rb (clean-static): new target to clean up static linked
  libraries.

* ruby.c (process_options): New initializes statically linked
  encodings here.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-16 05:39:06 +00:00
nobu f8599f92e7 configure.in: fix for BSD make
* configure.in (POSTLINK): default to : command to get rid of flag
  only command, since BSD make does not work with it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-08 04:36:04 +00:00
nobu 0be8f81921 codesign
* Makefile.in (PROGRAM), configure.in (POSTLINK): sign built program
  using RUBY_CODESIGN identity.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-07 04:41:02 +00:00
nobu 0f1181a539 Bug #6370
* configure.in (optflags): fixed typo. [ruby-core:44679][Bug #6370]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-30 20:14:26 +00:00
nobu 7d45d3f84d * configure.in (optflags): disable unsafe optimizations.
[ruby-core:44679][Bug #6370]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-30 20:02:34 +00:00
nobu 860cf7b812 * configure.in (optflags): disable unsafe optimizations.
[ruby-core:44679][Bug #6370]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-30 12:09:09 +00:00
nobu e2b54072b5 * configure.in: disable rubygems not to load rbconfig.rb before
fake.rb.  [ruby-core:44492][Bug #6329]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-23 01:43:35 +00:00
nobu 7cfc4be298 * configure.in (DOT, DOXYGEN): use AC_CHECK_PROGS instead of
AC_CHECK_PROG which needs the third argument.  [ruby-core:44433]
  [Bug #6316]
* configure.in (PKG_CONFIG): fix condition to skip older version
  of pkg-config.  continue in backticks does not affect outside.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-18 13:59:00 +00:00
nobu 561e61a430 * configure.in (RUBY_SO_NAME): expand version numbers in Makefile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-17 04:55:12 +00:00
nobu f2979f3101 * win32/win32.c (gmtime_r, localtime_r): POSIX compliant reentrant
versions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-16 07:22:43 +00:00
nobu 72fffe5cee * configure.in (RUBY_MSVCRT_VERSION): define on mingw too.
* win32/Makefile.sub (config.h): prefix RT_VER with RUBY and make
  more descriptive to get rid of potential conflict.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-16 07:08:27 +00:00
nobu 8b25f42046 * configure.in (NO_RUBY_VENDOR_LIB): fix missing comma.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-16 06:19:46 +00:00
nobu d2e2b309e8 * configure.in (UNREACHABLE): gcc 4.4 eliminates unreachable code
if -O3 is given.
* win32/win32.c (child_result): dropped colon.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-14 03:55:06 +00:00
nobu 9bf9b3ef95 * process.c (obj2uid, obj2gid): allow strings as input user/group id.
[ruby-core:40923][Feature #5610]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-28 07:40:02 +00:00
nobu 61dc4a8dbc * configure.in (verconf.h): separate load path specific stuff from
config.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-27 13:44:25 +00:00
nobu 6d8580fe25 * configure.in (Makefile): get rid of confliction with -j.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-23 00:56:46 +00:00
naruse 4725c9880d Revert "* configure.in (Makefile): get rid of confliction with -j."
This reverts commit r35104 because it breaks build on FreeBSD.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-22 22:52:05 +00:00
nobu 9accaad5c4 * configure.in (Makefile): add missing test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-22 06:04:09 +00:00
nobu cd71db0ad6 * configure.in (Makefile): check with svn info, since svn 1.7 doesn't
have .svn under descendent directories.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-22 05:59:48 +00:00
nobu 11c57111f9 * configure.in (Makefile): get rid of confliction with -j.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35104 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-22 05:59:45 +00:00
nobu 5c9d7c54ab * configure.in (ruby_pc): make configurable. [Bug #6051]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-02 21:57:16 +00:00
nobu 23008fcc2e define PLATFORM_DIR if needed
* Makefile.in, configure.in (PLATFORM_DIR): define if needed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-29 04:07:06 +00:00
shirosaki 4b1e9f0c47 * Makefile.in (PLATFORM_DIR): add a variable for `win32` directory.
* Makefile.in (clean-platform): add new target.
  It cleans `win32` directory.

* common.mk (clean): add a dependency for `win32` directory.
* common.mk (distclean): ditto.
* common.mk (distclean-platform): add new target.
  It cleans `win32` directory.
* common.mk ($(PLATFORM_D)): add new target to make `win32` directory.
* common.mk (win32/win32.$(OBJEXT)): move win32.o into `win32`
  directory.
* common.mk (win32/file.$(OBJEXT)): add new target for win32/file.c.

* configure.in: move win32.o into `win32` directory and add
  win32/file.o to MISSING.

* file.c (file_load_ok, rb_file_load_ok): replace static
  file_load_ok() with public rb_file_load_ok().
  It's to link Windows implementation in win32/file.c.
* file.c (rb_find_file_ext_safe): ditto.
* file.c (rb_find_file_safe): ditto.

* win32/file.c (rb_file_load_ok): new file. Add Windows specific
  optimized implementation of rb_file_load_ok(). We created a
  separated file to avoid too many #ifdef macro which is unreadable.

* win32/Makefile.sub (PLATFORM_DIR): add a variable for `win32`
  directory.
* win32/Makefile.sub (MISSING): move win32.obj into `win32`
  directory and add win32/file.obj to MISSING.
* win32/Makefile.sub (MAKEDIRS): replace MINIRUBY with BASERUBY.
  It's because miniruby doesn't exist when making `win32` directory.
* win32/Makefile.sub (clean-platform): add new target to clean `win32`
  directory.
* win32/Makefile.sub ({$(srcdir)}.c{}.obj): make it not match
  win32/file.c to build properly.
* win32/Makefile.sub (win32/win32.$(OBJEXT)): move win32.obj into
 `win32` directory.

  Patch created with Luis Lavena.
  [ruby-core:42480] [Feature #5999]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-28 15:51:25 +00:00
nobu 1c85a648fe * configure.in (debugflags): check if -ggdb is accepted.
[ruby-core:42875][Bug #6080]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-28 02:44:52 +00:00
nobu d573446841 * configure.in (__builtin_unreachable): check for clang.
[ruby-core:42849]
* include/ruby/ruby.h (UNREACHABLE): fallback definition.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-24 06:49:09 +00:00
naruse a23f06358e * configure.in: allow llvm-gcc because it work fine with r34278.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-22 03:22:08 +00:00
nobu 032d0a4cf7 * configure.in: check if -fstack-protector is really available.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-20 06:50:36 +00:00
nari a42cc41ba1 * configure.in (HEAP_ALIGN_LOG): HEAP_ALIGN_LOG should be page
size in OpenBSD. [ruby-core:42158][Bug #5901]

* gc.c : avoid to redefine.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-31 12:36:50 +00:00
nobu e58d77bdda * configure.in (SPT_TYPE): enable as SPT_REUSEARGV on Darwin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-17 08:18:46 +00:00
nobu eec5d2014f * confiugre.in (setproctitle): removed dupcated checks.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-17 08:10:00 +00:00
naruse 411fa36c73 * configure.in: check posix_memalign(3) and menalign(3).
* gc.c (aligned_malloc): use configure's result instead of
  _POSIX_C_SOURCE and _XOPEN_SOURCE because they can't be used
  to check availability at least on FreeBSD.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-07 15:13:37 +00:00
nagachika 3ba49c9ebb * configure.in: always define CANONICALIZATION_FOR_MATHN.
[ruby-dev:45100] [Bug #5852]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-06 15:52:44 +00:00
luislavena 60b99d05c6 * configure.in: change --with-ntver to --with-winnt-ver to be more
descriptive in the context. [ruby-core:41794]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-24 15:05:33 +00:00
luislavena 3cbf3e207d * configure.in: add --with-ntver option to match win32/configure.bat
functionality. Set 0x0501 as default. [ruby-core:35010]
  [ruby-core:35035]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-24 14:24:32 +00:00
nobu f2747b5782 * configure.in (RUBY_WERROR_FLAG): append all warning flags which
are enabled to compile, so that printf format modifiers properly
  fail.  [ruby-core:41351] [Bug #5679]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-08 03:11:11 +00:00
nobu aecd98a212 * configure.in (rpath): fix typo in the help string. a patch from
Yuji Yamano <yyamano AT kt.rim.or.jp> in [ruby-list:48568].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-07 10:04:26 +00:00
nobu 53df70d92b * Makefile.in (CFLAGS): append ARCH_FLAG.
* configure.in (ARCH_FLAG): exclude from CFLAGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 22:17:34 +00:00
nobu 2748f58dce * configure.in (UNIVERSAL_INTS): include short int. fix for
test/mkmf.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 22:14:30 +00:00
nobu 5fce7630c7 * configure.in (RUBY_TRY_CFLAGS, RUBY_TRY_LDFLAGS): more verbose messages.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 06:43:57 +00:00
nobu 0755d415bb * configure.in: check whether -pie or -Wl,-pie is valid as
LDFLAGS.  [ruby-core:41438] [Bug#5697]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 06:41:27 +00:00
nobu 55cae88340 * configure.in: use $linker_flag for LDFLAGS option which is not
limited to particular platforms.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 06:18:21 +00:00
naruse 9b69817ac0 Revert r33926 "* configure.in: use $linker_flag for LDFLAGS option which is not"
This breaks build process of Linux and FreeBSD.
It may depend the version of gcc.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 04:02:20 +00:00
nobu 6ec1902a2d * configure.in: use $linker_flag for LDFLAGS option which is not
limited to particular platforms.  [ruby-core:41438] [Bug#5697]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 02:30:38 +00:00
nobu b2e137c81e * configure.in (LDFLAGS): -fstack-protector is always needed to
link static library created with it.  [ruby-core:41387]
  [Bug#5686]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-01 01:32:02 +00:00
kosaki 0d0bd1642a * configure.in: add sys/prctl.h test.
* thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) to change
  thread name. It may help to debug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-30 22:17:48 +00:00
kosaki 543820885e * configure.in: added -fno-strict-overflow. it suppress annoying
-Wstrict-overflow warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 12:27:00 +00:00
nobu 9b58c2edf3 * configure.in (stack_protector): disable on mingw. [Bug#5676]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 10:09:11 +00:00
nobu 41f756eaf3 * Makefile.in (DLDFLAGS): also needs -fstack-protector.
[Bug#5676]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 09:54:12 +00:00
nobu c4cd97a563 * configure.in (-fstack-protector): also needed in DLDFLAGS.
[Bug#5676]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 09:25:38 +00:00
nobu 929e69fdca * configure.in: whitespace-cleanup.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 08:26:54 +00:00
nobu a072b2dfd2 * configure.in: whitespace-cleanup.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 08:24:29 +00:00
kosaki a4d38daece * configure.in: add -fstack-protector into XLDFLAGS as well as
XCFLAGS if stack-protector is used.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 07:15:04 +00:00
kosaki ed78271c49 * configure.in: revert r33832 and r33833. [ruby-core:41313] [Bug #5674]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 04:55:27 +00:00
kosaki 0e28532a52 * configure.in: workaround to avoid MacOS X build error.
Maybe autoconf 2.61 is slightly buggy. [ruby-core:41316]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 04:30:44 +00:00
naruse 7d11b9e289 * configure.in (--no-undefined): r33840 breaks FreeBSD and DragonFly
with gcc 4.4 or later. Their environ is in /usr/libexec/ld-elf.so.1,
  so it will be false negative.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-26 22:49:28 +00:00
naruse 01a64885c3 * configure.in (--no-undefined): r33840 breaks FreeBSD with gcc47.
FreeBSD's environ is in /usr/libexec/ld-elf.so.1, so it will be
  false negative.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-26 19:59:13 +00:00
nobu 8b83ea9ef1 * configure.in (--no-undefined): RUBY_TRY_CFLAGS does nothing for
linker flags.  use RUBY_TRY_LDFLAGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-25 20:00:31 +00:00
kosaki 0996ae361a * Makefile.in (EXTLDFLAGS): export it.
* configure.in: add --no-undefined if --enable-shared is specified.
  Gentoo enabled this option long time. Also, export EXTLDFALGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-25 01:41:59 +00:00
kosaki 98975ba9dc * configure.in: turn on PIE if --enable-shared is not specified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-24 23:50:00 +00:00
kosaki b2eae7891b * configure.in: add -fstack-protector. It help to protect us from
stack smashing attack.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-24 23:06:26 +00:00
kosaki d0e615e25f * configure.in: add -D_FORTIFY_SOURCE=2. It provide some compile
time and runtime check for security.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-24 23:04:35 +00:00
kosaki 450c2094be * configure.in: remove [read buffer ptr field in FILE structures] check.
ruby 1.9 or later doesn't use stdio at all.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-24 22:58:00 +00:00
kosaki 746aa6f74b * configure.in: remove [read count field in FILE] check.
ruby 1.9 or later doesn't use stdio at all.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-24 22:54:39 +00:00
kosaki 5817762f2b * configure.in: add -Wall always.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-24 22:49:51 +00:00
ryan 5a94b29c53 Improved error message when using llvm-gcc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-17 22:38:18 +00:00
ngoto fa00b6516c * include/ruby/defines.h (FLUSH_REGISTER_WINDOWS): move sparc asm code
to a separete file sparc.c for preventing inlining optimization.
  Patched by Jurij Smakov. [Bug #5244] [ruby-core:40685]
* sparc.c (rb_sparc_flush_register_windows): ditto.
* configure.in: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-15 04:42:31 +00:00
nobu e120e37577 * configure.in: should not use test -e for portability.
[ruby-core:40841] [Bug #5594]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-09 01:32:25 +00:00
nobu b9a7f8b44c * configure.in: reject llvm-gcc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-01 13:08:30 +00:00
luislavena 0bbb8e8975 * configure.in: check -fno-omit-frame-pointer acceptance and usage
under MinGW. [ruby-core:39957] [Bug #5407]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-30 15:51:33 +00:00
akr e7f8c03818 * configure.in: check pipe2.
* io.c (rb_cloexec_pipe): use pipe2 if available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-30 13:48:35 +00:00
akr cb9f3040d7 * configure.in: check dup3.
* io.c (rb_cloexec_dup2): use dup3 if available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-29 22:48:41 +00:00
nobu c1de566071 * configure.in (RUBY_DEFINE_IF): revert r33534 partially to get
rid of AS_ECHO which is not available in autoconf 2.61.
  [ruby-dev:44702]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-27 09:28:21 +00:00
nobu 1b4e137537 * configure.in (RUBY_FUNC_ATTRIBUTE): unset temporary variable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-27 05:56:24 +00:00
nobu 9598856e86 * configure.in (RUBY_STACK_GROW_DIRECTION): substitute CPU name as
shell variable name.  based on the patch by The Written Word Inc. at
  [ruby-core:40421].  [Bug #5488]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-27 05:55:29 +00:00
nobu 682177e169 * configure.in (pthread_np.h): needs pthread.h to be included
previously on OpenBSD.  a patch by George Koehler <xkernigh AT
  netscape.net> at [ruby-core:39752].  [Bug #5376]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-28 00:14:19 +00:00
kosaki 36a1e76053 * configure.in: remove DJGPP support. It's not longer supported
since ruby 1.9.0.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-26 00:21:54 +00:00
kosaki 20ae79b0c2 * include/ruby/defines.h: remove NextStep, OpenStep, Rhapsody
support. Last activity of their OSs are 7 years ago.
* configure.in: ditto.
* dir.c: ditto.
* ext/tk/extconf.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-26 00:19:03 +00:00
kosaki 6823334c21 * configure.in: remove a code for human68k. it's no longer
supported since r19677.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-26 00:05:45 +00:00
nobu 256f355af5 * configure.in: ignore all warnings from an arbitrary
header in /usr/local/include.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-25 07:45:08 +00:00
nobu 3e0819c66a * configure.in (sizeof_struct_dirent_too_small): check if struct
dirent.d_name is too small.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-03 14:56:26 +00:00
nobu 90a10297d6 * configure.in (RUBY_MINGW32): take tool prefix from CC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-03 14:55:20 +00:00
kosaki 3596d49edf * configure.in: fix a build failure on GNU Hurd.
Patch by Samuel Thibault <sthibault at debian dot org>. Thank you!
  [Bug #5250] [ruby-core:39185]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-30 00:13:56 +00:00
ngoto b28715b2fb * configure.in: use LD_LIBRARY_PATH_64 on 64-bit Solaris.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-21 05:34:51 +00:00
nobu e9930a4b56 * process.c (proc_spawn_v, proc_spawn): should not wait the
spawned process.
* process.c (proc_spawn_v): fix missing argument, and try with
  /bin/sh only if failed with ENOEXEC.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-19 05:25:52 +00:00
mrkn 5852b97e4e * configure.in: defines _DARWIN_UNLIMITED_SELECT if the target_os
is darwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-19 04:20:10 +00:00
kosaki da6eec340e fix r32943. It did break configure.in completely.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-12 04:42:13 +00:00
kosaki 33c7e324e5 * configure.in: Desbribe "no" configure option for site_ruby
and vendor_ruby. Patch by Vit Ondruch. [Bug #5187][ruby-core:38921]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-12 02:42:51 +00:00
kosaki b6c6ce116e * configure.in: add -Wunused-variable to default CFLAGS.
Patch by Eric Wong. [Feature #5157] [ruby-core:38798]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-07 13:43:37 +00:00
ngoto 3fb4569534 * configure.in: when Solaris cc, use $(CC) to link shared libs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-04 11:36:50 +00:00
mrkn 03418c4e5f * configure.in: set CXX variable to the C++ compiler that matches the
C compiler specified by CC variable (e.g. use g++-4.2 for gcc-4.2).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-03 17:49:22 +00:00
yugui 6280ce3b68 Forward-ports r32779 from branches/ruby_1_9_3 to trunk. The original commit
by ktsj.
--
configure.in: fix typos.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-31 14:17:45 +00:00
yugui 53d3b13233 Forwardports r32772 and r32773 from branches/ruby_1_9_3 to trunk.
* common.mk (ECHO1): ":" in a make variable replacement cause a syntax
  error with /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.

* configure.in (NULLCMD): new check.

* Makefile.in (NULLCMD): Reflects checking in configure.

* win32/Makefile.sub (NULLCMD): new assignment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-31 11:31:55 +00:00
naruse 63bbbdb6fb * configure.in (enable_pthread): use -pthread on OpenBSD without
explicit option. patched by Jeremy Evans. [ruby-core:38572]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32730 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-29 07:17:32 +00:00
kosaki 1e52e56037 revert r32647. r32649 is better one.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-23 15:57:21 +00:00
kosaki e39294cac5 * configure.in: changed default optflags to -O0 if the compiler is
llvm-gcc. It prevent ruby crash on OS X 10.7 (Lion).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-23 15:18:32 +00:00
nobu 2915c155e8 * configure.in (RUBY_UNIVERSAL_ARCH): restore arch flag.
Bug #4977


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-16 08:29:21 +00:00
nari c3e0526269 * configure.in: can't subtract void *.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-08 05:39:50 +00:00
nari 17bb77fd77 * gc.c: change water_mark value value that may call
gc_mark(lev <= GC_LEVEL_MAX) in gc_mark().
  In ruby_stack_check(), water_mark is a value that may call some
  C function. Fixes Bug #3781

* configure.in: define GC_MARK_STACKFRAME_WORD that approximate
  size of gc_mark() and gc_mark_children() stackframes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-07 14:59:09 +00:00
kanemoto c6ef31c933 configure.in: Add warnflags for XL/C on AIX during configure
to avoid [Bug #3971]. See [ruby-core:32859]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-30 12:31:53 +00:00
kosaki 0148d41a13 * signal.c: Now, USE_TRAP_SIGMASK depend on HAVE_PTHREAD_SIGMASK.
The code have already depended on pthread_sigmask since r27464.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-28 10:42:25 +00:00
usa ac3a3c05c9 * configure.in, win32/Makefile.sub (RUBY_SO_NAME): add CPU as prefix
of RUBY_SO_NAME on x64/ia64 mswin/mingw.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-16 02:22:27 +00:00
kosaki 3ad44e0aa1 introduce missing/setproctitle.c
* include/ruby/missing.h: add setproctitle() declaration.
* missing/setproctitle.c: added.
* configure.in: add check for missing/setproctitle.c.

* ruby.c (ruby_process_options): add to call compat_init_setproctitle().
* ruby.c (set_arg0): remove all platform specific code. it's
  moved to missing/setproctitle.c.
* ruby.c (origarg): remove len field. It's no longer used.
* ruby.c (get_arglen): removed.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-14 10:49:47 +00:00
kou 4902517f99 * configure.in: limit to "T" type for prefix of external symbols
because x86_64-w64-mingw32-gcc on Debian GNU/Linux generates the
  following symbol:
    0000000068483390 D _GLOBAL__F__conftest_external

  Approved by nobu.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-12 09:31:34 +00:00
kosaki a1cfaf4b1f * thread_pthread.h (rb_thread_cond_t): add clockid field. it's
no longer an alias of pthread_cond_t.
* thread_pthread.c: adapt new rb_thread_cond_t type.
* thread.c (mutex_alloc): ditto.
* thread_win32.c (native_cond_initialize): ditto.
* configure.in: add check for pthread_cond_attr_setclock() and
  clockid_t type.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-06 16:47:38 +00:00
kosaki 4a9883e92f * thread.c (rb_wait_for_single_fd): use ppoll() instead of poll()
if possible. based on a patch from Eric Wong. [ruby-core:36003].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-06 14:58:38 +00:00
kosaki 066eecf53a * configure.in: remove nanosleep check. we no longer use it.
r20124 removed last usage.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-06 14:18:06 +00:00
kosaki 249fe0e742 * thread.c (rb_wait_for_single_fd): new. poll(2) based backend for rb_wait_for_single_fd().
Now only Linux uses it.

The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-04 01:07:03 +00:00
nobu 86ed9661b8 * configure.in (STRIP): use proper toolchain. based on a patch
from Jon Forums at [ruby-core:35909].  fixes #4617

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-04-26 22:42:46 +00:00
nobu fcfc113b04 * include/ruby/win32.h (ftruncate, truncate, ftello, fseeko): non-64
versions on mingw are useless because they use int32_t.  fixes #4564

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-04-26 15:50:09 +00:00
luislavena c2bfeaa244 Evaluate truncate, ftruncate and ftello existence
This corrects mingw-w64 compilation.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-04-11 16:38:10 +00:00
kosaki f4755f214c * configure.in: disable fdatasync again on Mac OS X.
[ruby-core:35493][Bug #4500]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-04-03 12:35:29 +00:00
nobu acd036bcdc * common.mk (configure-ext, build-ext), ext/extmk.rb (extmake):
support paralell-make under ext.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-08 00:33:05 +00:00
nobu 15f0e53a06 * process.c (proc_setgroups): use getgrnam() if getgrnam_r() is
not available.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-08 00:25:40 +00:00
nobu 108eb9c68c * configure.in (RUBY_REPLACE_TYPE): enclose in quotes for multiple
type names.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-08 00:07:19 +00:00
kosaki b1329e3b63 * configure.in: rlim_t use standard RUBY_REPLACE_TYPE mechanism.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-06 14:47:27 +00:00
kosaki 62374161f1 * configure.in: save warnflags. the patch is created by Eric Wong.
[Bug #4465]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-04 12:16:45 +00:00
kosaki 61a4ee9b68 * configure.in: fix and resubmit r30621. [ruby-dev:43203]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-15 10:44:58 +00:00
shyouhei fd569ed7ca * configure.in: revert r30621. That revision introduced mkmf test
failures and it turned out to be OK to revert. [ruby-dev:43203]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-14 12:07:14 +00:00
nobu 020dc4ba60 * configure.in (rubygems): add --disable-rubygems option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-11 03:03:26 +00:00
kosaki 0042bbc1c1 * configure.in (AC_MSG_CHECKING): fixed typo. the patch is
created by Benoit Daloze. Thanks a lot. [Bug #4384][ruby-core:35148]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-08 10:26:42 +00:00
kosaki a9c7af3b6e * configure.in: revert r30725. Now we have proper runtime fallback.
Therefore, no need compile time disabling. (see r30762).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-08 05:03:07 +00:00
kosaki 7fb70b4e0f * configure.in: revert r30698.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-31 12:59:54 +00:00
naruse 33671c826d * configure.in: Mac OS X wrongly reports it has fdatasync(3).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-29 23:03:47 +00:00
kosaki aea93cbed8 * configure.in (--with-valgrind): Fixed r29683. Now this option
is really default on.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 04:05:23 +00:00
kosaki e5971e8c7e We don't only need to change "struct stat.st_size" test, but also
need to change "struct stat.st_blocks" test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 03:12:32 +00:00
kosaki cb1366b48f * configure.in: Add #include<sys/stat.h> when struct stat is
tested. Otherwise, incomplete type dereference error will occur.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 03:07:23 +00:00
kosaki 39473b88a9 * configure.in: redundant variable names made strange conftest
error. Fixed it.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 02:57:21 +00:00
kosaki 92c1dfd9d2 * configure.in: Added mode_t type checking.
* process.c (rb_exec_arg_addopt): Use NUM2MODET() instead
	  NUM2LONG because clang makes compile error by this narrowing
	  conversion.
	* process.c (rb_run_exec_options_err): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 02:00:08 +00:00
nobu 85f8c01a6d * configure.in: should not use -Werror=* flags while conftests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-21 09:15:30 +00:00
luislavena 89bd00d804 * configure.in: Fix incorrectly detected x86_64-w64-mingw32 due
canonalization of target_os. Bug #3889 [ruby-core:32634]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-21 00:18:20 +00:00
kosaki c940b3939a * configure.in: Fix rb_cv_va_args_macro was broken. We are using
-Werror=implicit-function-declaration compile option. therefore
	  we need a function declaration explicitly.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-20 15:38:44 +00:00
kosaki d41d2f26ce * configure.in: Add '#include <stdlib.h>' to
rb_cv_localtime_overflow test too. It's reported by Tomoyuki
	  Chikanaga. Thanks.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-20 14:34:39 +00:00
kosaki 1a3950e294 * configure.in: Add stdlib.h inclusion into rb_cv_negative_time_t
test becuase it's required for exit(3). The patch is
	  created by Tomoyuki Chikanaga. [Bug #4287] [ruby-dev:43060]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-20 03:27:54 +00:00
nobu b794a2bd8c * configure.in (warnflags): add -Werror=implicit-function-declaration
if available.
* lib/mkmf.rb (init_mkmf): ignore warnings in mkmf tests.
* test/mkmf/base.rb (setup, teardown): restore config values.
* test/mkmf/test_flags.rb: split from test_find_executable.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-15 02:57:36 +00:00
usa 377b85f2cb * configure.in, win32/Makefile.sub (RUNRUBY): require path should
include "." because rbconfig.rb is there.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-14 02:37:34 +00:00
yugui 45493bb28a * io.c (Kernel.#syscall): implemented on LP64/LLP64 environments too.
also uses __syscall if available for *BSD on 64bit architecture.
  [ruby-core:34062]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-09 07:39:22 +00:00
nobu 484e94a89c * configure.in (warnflags), lib/mkmf.rb (configuration): turn
warnings into errors only for bundled extensions.
  [ruby-core:33815]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-31 02:46:50 +00:00
nobu 12329a58e1 * configure.in (target_archs): remove temporary objects.
* enc/Makefile.in, enc/depend (clean): remove work directories.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-21 03:45:21 +00:00
kosaki cc9b886691 * io.c (rb_io_advise): New API. IO#advise() allows to tell the
ruby runtime how it expects to use a file handle. This feature
          can be improved a performance some situations.
          Note: This feature is mainly developed by Run Paint Run Run.
          Thank you! [ruby-core:33110] [Ruby 1.9-Feature#4038]

        * io.c (do_io_advise): Helper function.
        * io.c (io_advise_sym_to_const): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-16 15:01:55 +00:00
naruse bd0a9d2fb6 * configure.in: Add -Werror=declaration-after-statement to default
warning flag. If you are using GCC, this flag is useful to
  prevent breaking VC build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-14 02:33:04 +00:00
nobu e806b0fed7 * configure.in, win32/Makefile.sub (WERRORFLAG): flag to treat
warnings as errors.
* lib/mkmf.rb (Logging.postpone): yield log file object.
* lib/mkmf.rb (xsystem): add options, :werror only right now.
* lib/mkmf.rb (with_werror): check as if warnings are errors.
* lib/mkmf.rb (convertible_int): make declaration conflict
  warnings errors not to pass wrong type.  [ruby-dev:42684]
* lib/mkmf.rb (COMMON_MACROS): get rid of conflicts.
* win32/Makefile.sub (WARNFLAGS): make declaration conflict
  warnings errors if possible.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-06 23:00:47 +00:00
nobu 3c36edc0d2 * configure.in: link addr2line only for ELF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-27 06:43:30 +00:00
naruse 086301ac73 * addr2line.c: added to show source filename and line number of
functions in backtrace. [ruby-dev:42625]
  a patch from shinichiro.h <shinichiro.hamaji AT gmail.com>

* addr2line.h: ditto.

* common.mk: add addr2line.$(OBJEXT).

* configure.in: check dl_iterate_phdr.

* vm_dump.c (rb_vm_bugreport): use rb_dump_backtrace_with_lines in
  addr2line.c when the binary is ELF.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-26 03:28:50 +00:00
nobu 756dfe9f40 fix typos.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-25 14:31:36 +00:00
nobu 66d4bdd114 * configure.in (SITE_DIR, VENDOR_DIR),
version.c (ruby_initial_load_paths): exclude directories that
  are configured without them from $LOAD_PATH. [ruby-core:33267]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-22 21:30:54 +00:00
nobu a97c07fb2e * configure.in (rubylibprefix): No ruby, No libprefix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-22 21:30:22 +00:00
naruse 54ba50918e * configure.in: support C level backtrace information on FreeBSD.
When devel/libexecinfo is installed on FreeBSD, now ruby
  can show C level backtrace information.
  http://www.freebsd.org/cgi/cvsweb.cgi/ports/devel/libexecinfo/

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-12 07:54:27 +00:00
nobu a22b9b0945 * configure.in (DOT, DOXYGEN, PKG_CONFIG): tools running on build
platform, no tool prefix.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 16:36:04 +00:00
nobu 54fb9d3ca7 * configure.in: ANSI C-conforming const and volatile are mandatory
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 14:38:36 +00:00
nobu 12f742306e * configure.in (AC_C_CONST, AC_C_INLINE, AC_C_VOLATILE): check
before used in other checks.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 14:32:15 +00:00
nobu 6a256d448d * configure.in (RUBY_CHECK_PRINTF_PREFIX): should not break from
RUBY_WERROR_FLAG, so that ac_c_werror_flag gets restored.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 14:29:42 +00:00
nobu 7ef29a9f5e * configure.in (Makefile): fix duplicated target again.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 12:41:12 +00:00
nobu 41cae1744f * file.c (file_expand_path): use cygwin_conv_path on cygwin 1.7 or
later.
* ruby.c (push_include_cygwin): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 12:24:41 +00:00
nobu fe9f1e8cf8 * include/ruby/ruby.h (PRI_LL_PREFIX): format type specifier for
LONG_LONG may vary on platforms.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 11:49:54 +00:00
nobu 18bd7f8c84 * configure.in (SYMBOL_PREFIX): separate from EXPORT_PREFIX.
* win32/mkexports.rb (Exports#each_export): use SYMBOL_PREFIX.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 11:45:32 +00:00
nobu ef98740d31 * configure.in (AC_FUNC_GETPGRP, AC_FUNC_SETPGRP): no need when
not used.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-09 12:14:58 +00:00
nobu e9c4a44f23 * configure.in (EXPORT_PREFIX): check generic prefix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-09 12:13:06 +00:00
shyouhei 294070d86a * configure.in: support -h for solaris linker when gcc not used
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-08 03:19:14 +00:00
nobu 2cff55dbb3 * configure.in: check only the first symbol to get rid of
duplication.  [ruby-core:33084] #4031

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29712 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-07 22:26:25 +00:00
nobu 958456db0f * configure.in (NM): check on all platforms. #4031
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-07 01:13:33 +00:00
nobu 967e92af87 * configure.in (rb_cv_export_prefix): check for prefixed
underscore of exported symbols

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-05 22:33:18 +00:00
nobu 41a25b855a * configure.in (LIBRUBY_RELATIVE): use rpath token expansion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-05 22:28:45 +00:00
nobu 6d9cd4840d * template/ruby.pc.in (arch, sitearch): reordered.
* configure.in: keep failed file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-05 22:24:06 +00:00
shyouhei eb691b7cf1 * configure.in (--with-valgrind): Now this option is default on.
You can still explicitly disable this feature by specifying
  --without-valgrind.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-04 01:34:35 +00:00
nobu f46689f68f * configure.in (ruby_pc): erase runtime-defined variables and
check if generated pc file is valid.

* template/ruby.pc.in (DEFFILE): need for mingw.

* template/ruby.pc.in (LIBRUBY): fix the order.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-30 05:37:43 +00:00
nobu 767d70841a * Makefile.in (ASFLAGS): needs INCFLAGS.
* configure.in (rb_cv_dynamic_alloca): check if extra source for
  dynamic size alloca.

* missing/x86_64-chkstk.s (___chkstk): necessary for alloca of
  amd64-mingw32msvc-gcc on Ubutu.

* thread_win32.c (ruby_alloca_chkstk): check stack overflow

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-26 09:09:45 +00:00
nobu 7b410abfb8 * configure.in (rb_cv_gcc_atomic_builtins): check for atomic
builtins, all are not available in Apple derivative gcc.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-26 00:13:37 +00:00
nobu 4d9a6ab181 * Makefile.in (pkgconfig-data): create pkg-config metadata file.
* tool/rbinstall.rb: install pkg-config metadata file.

* template/ruby.pc.in: template of pkg-config metadata file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-25 15:29:32 +00:00
nobu a45936d454 * configure.in (dev_t): use RUBY_REPLACE_TYPE.
* file.c (rb_stat_inspect): use PRI_DEVT_PREFIX.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-15 11:30:33 +00:00
naruse 51427700cc * file.c (DEVT2NUM): added. Size of dev_t is depend on the
environment even if POSIX defines dev_t as unsigned integer.
  For example, OpenVMS, 64bit Solaris 9, and NetBSD 6 defines
  dev_t as 64bit unsigned integer.

* file.c (rb_stat_dev): use DEVT2NUM.

* file.c (rb_stat_dev_major): dev_t is not long. major(3)'s return
  value is int.

* file.c (rb_stat_dev_minor): dev_t is not long. minor(3)'s return
  value is int.

* configure.in: check size of dev_t.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-13 23:09:56 +00:00
nobu cea3919ae6 * configure.in (RUBY_CHECK_PRINTF_PREFIX): check for printf format
specifier if possible.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-12 15:03:51 +00:00
nobu 83906099d0 * configure.in (RUBY_MINGW32): canonicalize only on mingw.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-12 01:39:11 +00:00
nobu 3ec721b9c2 * configure.in (RUBY_MINGW32): canonicalize as like mswin version.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-10 01:20:11 +00:00
nobu 0ac2f9513f * configure.in (RSHIFT): quote to get rid of argument expansion
for autoconf 2.68.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-09 07:54:42 +00:00
nobu fc8c4690d5 * configure.in (Makefile): get rid of duplicated ruby target when
already there it was.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-03 10:44:30 +00:00