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

688 Коммитов

Автор SHA1 Сообщение Дата
eregon f293fa8d63 * common.mk (help): Fix environment variable name and argument.
Actually it can also be a directory or any argument for
  test/unit runner. [Fixes GH-363]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-20 16:08:49 +00:00
zzak d0fd9aa246 * common.mk: Document running a single test [Fixes GH-363]
Patch by Avdi Grimm https://github.com/ruby/ruby/pull/363


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-20 13:46:34 +00:00
nobu 5f2080048e localeinit.c: split
* localeinit.c (rb_locale_charmap, Init_enc_set_filesystem_encoding):
  move from encoding.c.
* miniinit.c (rb_locale_charmap, Init_enc_set_filesystem_encoding):
  define miniruby specific functions only.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-14 17:47:25 +00:00
nobu b64f79c838 win32.c: rb_w32_udln_find_exe_r,
rb_w32_udln_find_file_r
* win32/win32.c (rb_w32_udln_find_exe_r, rb_w32_udln_find_file_r):
  codepage independent versions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-30 01:59:12 +00:00
ko1 99b10ff471 * benchmark/gc: create a directory to store GC related benchmark.
* benchmark/gc/gcbench.rb: moved from tool/gcbench.rb.
* benchmark/gc/hash(1|2).rb: ditto.
* benchmark/gc/rdoc.rb: ditto.
* benchmark/gc/null.rb: added.
* common.mk: fix rule.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 06:18:09 +00:00
ko1 36bc412513 * common.mk: remove dependency from ruby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 05:01:36 +00:00
ko1 fcd5d8fd33 * tool/gcbench.rb: Summary in one line.
* common.mk: separete gcbench-hash to gcbench-hash1 and gcbench-hash2.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 23:15:56 +00:00
ko1 57bb153456 * common.mk: add new rules `gcbench-rdoc', `gcbench-hash'.
* tool/gcbench.rb: separate GC bench framework and process.
* tool/hashbench1.rb, tool/hashbench2.rb: add two types GC bench.
  hashbench1: many temporal objects (GC by newobj)
  hashbench2: hash size becomes bigger and bigger (GC by malloc)
  Two benchs are executed by `gcbench-hash' rule.
* tool/rdocbench.rb: separated.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 22:33:02 +00:00
nobu 3f3a618d3a common.mk: loadpath dependencies
* common.mk (loadpath.o): $LOAD_PATH should not be affected by
  the revision number.

* common.mk (dmyloadpath.o): depends on nothing except for the source
  file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-17 08:08:25 +00:00
nobu 9f60d8421c * Makefile.in (after-update): non-configure platforms don't need
config files.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-14 05:10:15 +00:00
nobu a53cb1a05d update config files
* .travis.yml (before_script): update config files.
* common.mk ($(srcdir)/tool/config.{guess,sub}): use get-config_files.
* tool/config_files.rb: split get-config_files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-14 04:40:32 +00:00
nobu bbe047d4c7 download config files
* common.mk (update-config_files): rule to download config files.
* tool/config.guess, tool/config.sub: remove and download from the
  upstream.
* tool/get-config_files: download config files from GNU.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-14 04:01:54 +00:00
akr 8bc16423cc * random.c: include internal.h.
(mt_state): Use rb_integer_unpack.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-07 21:01:42 +00:00
ko1 e2793a908e * include/ruby/debug.h, vm_trace.c: add rb_postponed_job API.
Postponed jobs are registered with this API. Registered jobs
  are invoked at `ruby-running-safe-point' as soon as possible.
  This timing is completely same as finalizer timing.
  There are two APIs:
* rb_postponed_job_register(flags, func, data): register a
  postponed job with data. flags are reserved.
* rb_postponed_job_register_one(flags, func, data): same as
  `rb_postponed_job_register', but only one `func' job is
  registered (skip if `func' is already registered).
  This change is mostly written by Aman Gupta (tmm1).
  https://bugs.ruby-lang.org/issues/8107#note-15
  [Feature #8107]
* gc.c: use postponed job API for finalizer.
* common.mk: add dependency from vm_trace.c to debug.h.
* ext/-test-/postponed_job/extconf.rb, postponed_job.c,
  test/-ext-/postponed_job/test_postponed_job.rb: add a test.
* thread.c: implement postponed API.
* vm_core.h: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-26 21:30:44 +00:00
ko1 6f7c9e2ecb * common.mk (rdoc-bench): add a benchmark rule
using RDoc. Generate all rdoc related files
  (same as `make rdoc') in temporary directory
  and remove them. Excecution time, GC::Profiler
  and results of GC.stat are printed.
* tool/rdocbench.rb: added for `rdoc-bench'.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-21 07:36:34 +00:00
nobu 67f562a417 Makefile.in: loadpath from loadpath.c
* Makefile.in (loadpath): $LOAD_PATH in miniruby is empty by default
  now.

* win32/Makefile.sub (loadpath): separate for quirky cmd.exe syntax.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-16 07:54:04 +00:00
nobu 434f0abd02 verconf.h.in: template for verconf.h
* template/verconf.h.in: generate verconf.h from the template and
  rbconfig.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-16 04:13:40 +00:00
nobu 7b5a819308 common.mk: verconf.h for parallel build
* common.mk (verconf.h): depend on the timestamp file instead of
  rbconfig.rb, for parallel build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-16 04:13:22 +00:00
nobu 0419861590 common.mk: verconf.h dependency
* common.mk (verconf.h): no needs to update always unless rbconfig.rb
  is updated.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40771 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-15 16:50:05 +00:00
nobu fa827c8b5a common.mk, Makefile.sub: fix build failure on mswin
* common.mk (verconf.h): $< cannot be used in explicit rules with
  nmake.
* win32/Makefile.sub (CONFIG_H): create verconf.in instead of
  verconf.h.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-15 16:44:55 +00:00
nobu 5780d88175 * common.mk (verconf.h): fix dependency.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-15 08:09:14 +00:00
nobu b38e3f953c configure.in: shvar_to_cpp in ruby
* configure.in: save configured load path values into verconf.in.
* common.mk (verconf.h): create from verconf.in with shvar_to_cpp.rb.
* tool/shvar_to_cpp.rb: turn shell variables into C macros.
  [Bug #7959]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-15 07:58:28 +00:00
nobu 57531305bc loadpath.c: split
* loadpath.c: split load path staffs from version.c.
* dmyloadpath.c: miniruby has no builtin load paths, so verconf.h is
  not needed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-15 07:56:39 +00:00
nobu d0b7b41e59 * common.mk (yes-test-all): needs sudo-precheck for dtrace.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-03 04:50:15 +00:00
ayumin b5d877e62c * common.mk: remove timestamp in distclean-ext realclean-ext.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-02 15:22:27 +00:00
nobu 97982e823f id.def: predefined IDs
* defs/id.def: add more predefined IDs used in core.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-02 07:54:17 +00:00
naruse 97dae8b0ab * common.mk (clean-ext): remove timestamps.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-17 23:21:13 +00:00
akr 3033b3ae2f * common.mk: pack.o depends on internal.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-12 12:07:27 +00:00
akr 3da834800e * common.mk: version.o depends on $(srcdir)/include/ruby/version.h
instead of {$(VPATH)}version.h to avoid confusion by VPATH between
  top level version.h and include/ruby/version.h for build in-place.
  [ruby-dev:47249] [Bug #8256]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-12 09:42:06 +00:00
akr 96d811efac * common.mk: Add dependencies for include/ruby.h
* tool/update-deps: Use "make -p all miniruby ruby golf" to extract
  deendencies in makefiles.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-11 14:42:33 +00:00
akr 28c8e57ca4 * common.mk: Dependency updated.
* tool/update-deps: Rewritten.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-11 12:03:23 +00:00
naruse c0c86b55a8 * common.mk: partially revert r40183, which breaks building on
other than source directory. (its commit log also says the same
  thing, but such failure is not reproducible on my environment
  and the commit breaks build on my environment)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-11 11:03:21 +00:00
yugui 418b8e121c Fixes a build failure of ext/ripper/ripper.c on building out of place.
* common.mk (id.h, id.c): Always generated in $(srcdir).
(ext/ripper/ripper.c): Passes $(PATH_SEPARATOR) too to the sub make.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08 07:10:18 +00:00
nobu 77ff241fa0 timev.h: move time_t stuffs
* timev.h (TYPEOF_TIMEVAL_TV_SEC, unsigned_time_t): move from time.c.

* thread.c: use definitions in timev.h.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-30 21:08:36 +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
nobu e4e82e50ab common.mk: reinstall target
* common.mk (reinstall): new target.

* defs/gmake.mk (install, uninstall): can't run parallel.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-07 01:39:10 +00:00
nobu 6ff10e76d7 common.mk: clean miniprelude.c
* common.mk (realclean-local): miniprelude.c is made by srcs, so it
  should not removed by distclean but by realclean.  [Bug #6807]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-25 07:47:21 +00:00
nobu e908adc12a common.mk: uninstall
* common.mk (uninstall): uninstall installed file listed in
  $(INSTALLED_LIST) file.

* tool/rbuninstall.rb: simple uninstallation tool.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-20 12:49:43 +00:00
nobu 41dbe74b94 common.mk: no expansion
* common.mk (showconfig): get rid of variable expansion by shell.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-09 15:16:15 +00:00
nobu 385ef8e5c2 mkconfig.rb: no BASERUBY
* tool/mkconfig.rb: BASERUBY is transient at core build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-21 06:41:38 +00:00
nobu c669931941 vpath.rb: hack for msys make
* tool/vpath.rb (VPath#def_options): hack for msys make, which
  converts a command line argument to non-msys command seems like a
  path list automagically.  [Bug #7710] [ruby-core:51489]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-20 13:24:31 +00:00
nobu 750a5d38a6 common.mk: install-gem
* common.mk (install-gem): target to install default gems only.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 02:18:31 +00:00
usa 6e4b187bfe * Makefile.in, common.mk (fake, yes-fake, no-make): these dependecies
are not platform dependent.

* win32/Makefile.sub ($(arch)-fake.rb): workaround.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-07 06:23:15 +00:00
yugui 275a9dcb8c * Makefile.in (RBCONFIG): Moved from common.mk in order to use the
variable in Makefile.in.

* win32/Makefie.sub (RBCONFIG): Ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-04 11:19:19 +00:00
yugui f9d7df33a1 * common.mk (run, parse): Use BTESTRUBY instead of MINIRUBY to handle
cross-compiling cases, e.g. NativeClient.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-04 10:47:06 +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
nobu 2742b6bc43 common.mk: srcs-ext
* common.mk (ext/dl/callback/callback.c): include in srcs-ext for
  snapshot.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-22 16:53:12 +00:00
drbrain 52d4a465a8 * common.mk: Added --pages-dir to rdoc creation. Now doc/ items show
up at top-level.
* .document:  Moved doc/* entries to doc/.document
* doc/.document:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-11 07:57:56 +00:00
naruse 55058e3583 Revert r38301
"* common.mk ($(MINIPRELUDE_C)): -I may break make dist."

This didn't solve the issue.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-11 06:13:41 +00:00
naruse 381b72da12 * common.mk ($(MINIPRELUDE_C)): -I may break make dist.
patched by Vit Ondruch [Bug #7541] [ruby-core:50736]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-11 02:38:20 +00:00
nobu 28ee4c2966 id.c: generate
* common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 17:36:19 +00:00
ko1 38766319e1 * compile.c (iseq_compile_each): joke shouldn't use id.h defined ids.
* id.c (Init_id): ditto.
* common.mk: fix dpendency.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-03 05:14:50 +00:00
ko1 f6f388a5bd * array.c, enum.c, insns.def, io.c, numeric.c, parse.y, process.c,
range.c: use prepared IDs.
  A patch from charliesome (Charlie Somerville).
  [Bug #7495]
* common.mk: add dependency to id.h.
* common.mk: replace ID_H_INCLUDES with id.h.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-02 09:57:47 +00:00
nobu d22ac50ad4 tool/vpath.rb
* tool/generic_erb.rb, tool/id2token.rb: add --path-separator option
  for mingw where make and built ruby live in different world.
* tool/vpath.rb: extract from tool/instruction.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 08:12:29 +00:00
ko1 585ac7f1a2 * include/ruby/debug.h: add rb_debug_inspector_* APIs.
* vm_backtrace.c: ditto.
* common.mk: add dpendency from vm_backtrace.o to
  include/ruby/debug.h.
* proc.c (rb_binding_new_with_cfp): constify.
* vm.c (rb_vm_get_ruby_level_next_cfp): consitify.
* vm_core.h, vm_trace.c: move decls.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 07:05:27 +00:00
drbrain 9694bb8cac * lib/rubygems*: Updated to RubyGems 2.0
* test/rubygems*:  ditto.

* common.mk (prelude):  Updated for RubyGems 2.0 source rearrangement.

* tool/change_maker.rb:  Allow invalid UTF-8 characters in source
  files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 06:52:18 +00:00
drbrain 6d1266a879 * lib/rdoc/*: Added --root option for building documentation outside
the source directory.
* test/rdoc/*:  ditto
* common.mk (rdoc):  Added --root to rdoc rule


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 08:54:03 +00:00
drbrain 585de40a69 * common.mk (rdoc): Set --debug for rdoc generation in case of bugs
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 06:19:06 +00:00
ko1 7b918be3d4 * common.mk: specify label `built-ruby'.
* benchmark/driver.rb: quote path.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-26 09:30:32 +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
usa f317a1562e * common.mk, win32/Makefile.sub (probes.dmyh): now be made in current
(=build) directory if build from the repository.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-22 12:49:59 +00:00
usa 8e8d7bb7fc * common.mk, Makefile.in, win32/Makefile.sub (.dmyh.h): nmake merges
explicit rules for same target, but not merges exlicit rules and
  implicit rules -- always explict rules win.  So, need to add an
  explist rule for probes.h.
  reported by Heesob Park at [Bug #7421] [ruby-core:49839]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-22 09:16:48 +00:00
ko1 cea7600b52 * include/ruby/debug.h: introdudced.
Debugging/profiling features will be located.
* vm_trace.c: expose C-level TracePoint APIs.
  Note that they are experimental.
* vm_trace.c, include/ruby/debug.h: rename `rb_hook_flag_t'
  to `rb_event_hook_flag_t'.
  Macro names `RUBY_HOOK_FLAG_*' are also renamed to
  `RUBY_EVENT_HOOK_FLAG_*'.
* debug.h, vm_debug.h: rename debug.h to vm_debug.h.
* common.mk: ditto.
* debug.c, main.c, vm_core.h: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 12:57:49 +00:00
nobu 3b3d2006c2 common.mk: fix for BSD make
* common.mk (incs): BSD make cannot deal with non-prefixed dependency
  and prefixed target.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 12:01:21 +00:00
ngoto f17aa9b361 * vm_dump.c: not to include probes.h because the code does not depend
on it.
* common.mk (vm_dump.$(OBJEXT)): remove dependency on probes.h


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 12:37:43 +00:00
nobu a824a6187d common.mk: no purelib
* common.mk (RUBYLIB): purelib option in runruby.rb is deprecated
  since r28841, so set to an empty list to get rid of a bogus path in
  child processes, which caused an insecure operation exception in
  test/ruby/test_encoding.rb:test_unsafe.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 07:08:13 +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
usa 3918bbfac4 * Makefile.in, common.mk (probes.h): moved to common.mk and changed to
see $(srcdir).

* common.mk (probes.dmyh): now created it on $(srcdir) always.

* win32/Makefile.sub (.SUFFIXES): removed common suffix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 05:56:38 +00:00
naruse 70927cb204 * common.mk (vm_dump.o): depend probes.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-19 02:06:39 +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 979dff3ee4 * vm_core.h, probes_helper.h (RUBY_DTRACE_FUNC_ENTRY_HOOK,
RUBY_DTRACE_FUNC_RETURN_HOOK): move from vm_core.h to new file
  probes_helper.h for narrowing dependency to probes.h.
* common.mk (VM_CORE_H_INCLUDES): remove dependency to probes.h.
* common.mk (vm.$(OBJEXT)): add dependency to probes_helper.h.
* vm.c, vm_insnhelper.c: include probes_helper.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-18 16:30:10 +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 6379b316bb common.mk: dependencies for proges.dmyh
* common.mk (incs): dist files need probes.dmyh.
* common.mk (probes.dmyh): depends on generator script.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 15:40:30 +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
naruse 6e0375e3e2 * Makefile.in (no-dtrace-probes.h): dmyprobes.h is in srcdir.
* common.mk (dmyprobes.h): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 10:03:07 +00:00
nobu e516438581 Makefile.in: move probes.h to all-incs
* Makefile.in (incs): probes.h is a platform dependent file, so it
  cannot be a part of prereq target.  move it to all-incs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 08:56:49 +00:00
naruse bd5b2cb617 * common.mk (vm_insnhelper.c): this target is useless and causes
ruby always need rebuild.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 08:41:11 +00:00
naruse db31b3dad5 * common.mk (dmyprobes.h): always create for make dist.
* Makefile.in (probes.h): create or copy dmyprobes.h

* win32/Makefile.sub: only do copy dmyprobes.h.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 07:49:09 +00:00
usa aec93c2283 * common.mk Makefile.in win32/Makefile.sub (.d.h): it's not common.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 06:35:30 +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
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
nobu 5a5a86cc52 hash.c: refine error messages
* hash.c (rb_hash_s_create): refine error messages.
* error.c (rb_builtin_class_name): share for above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-11 06:38:17 +00:00
ngoto 05a05cc62b * ruby_atomic.h: renamed from atomic.h to avoid header file name conflict
on Solaris 10. [ruby-dev:46414] [Bug #7287]
* gc.c, signal.c, vm_core.h, common.mk: reflect the rename from atomic.h
  to ruby_atomic.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 16:05:07 +00:00
nobu 525cb66467 siphash
* random.c (rb_memhash): use siphash.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 07:12:00 +00:00
shirosaki 14d59c122f extmk.rb: fix mingw make failure with make -jN
* common.mk (WPROGRAM): need same dependencies as PROGRAM.

* cygwin/GNUmakefile.in (uncommon.mk): move include position
  below WPROGRAM definition to be defined in uncommon.mk.

* ext/extmk.rb (all, static): fix make rubyw.exe failure with make -jN.
  If make of ruby.exe and rubyw.exe run in parallel, link dll and link
  exe run in parallel, which causes link failure on mingw. To fix this,
  we make ruby.exe and rubyw.exe in one make process.
  [ruby-core:48007] [Bug #7165]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-17 12:20:57 +00:00
nobu 7cc6bfa329 common.mk: gdb-ruby
* Makefile.in (RUNRUBY_COMMAND): split from RUNRUBY.

* common.mk (gdb-ruby): use runruby.rb to set up library path.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37093 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-05 07:28:32 +00:00
nobu 5809d668bc common.mk: partial revert r36867
* common.mk: revert r36867 partially, to use files in the source
  directory when out-of-place build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-05 05:29:46 +00:00
nobu ca1c6093d6 common.mk: broken nmake
* common.mk: VPATH in dependencies works.  [Bug #6956]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31 08:44:02 +00:00
nobu 926552f583 common.mk: broken nmake
* common.mk: remove VPATH from rules for generated files, because
  nmake does not work.  [Bug #6956]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31 06:35:21 +00:00
nobu 470c941ce5 id.h: independent from parse.h
* template/id.h.tmpl, tool/id2token.rb: make id.h independent from
  parse.h, and make parse.c dependent on it instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31 05:31:20 +00:00
yugui 10d85333ac * common.mk (vm_trace.o): Added a missing dependency.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-27 06:09:26 +00:00
nobu 4d887d8b71 common.mk: update parse.h
* common.mk (.y.h): update the header unconditionally

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-25 07:20:31 +00:00
nobu bcbc1f722c generic_erb.rb: --vpath option
* tool/generic_erb.rb (vpath.open): move --vpath option from
  template/id.h.tmpl.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-25 07:20:29 +00:00
kazu a7208d2a81 * common.mk: support `make id.h` without `rm .id.h.time` after `rm id.h`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-23 12:05:45 +00:00
usa b2ea5504bc * common.mk (win32/*): macro RUBY_H_INCLUDES is not defined there,
so need to move denendency rules under the definition of it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-23 10:20:37 +00:00
usa bae282bc74 * common.mk (ID_H_TARGET): revert a part of r36724 and r36751. they
break mswin build from clean source.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-23 01:38:14 +00:00
yugui e782fb8eea * common.mk (vm_backtrace.o): Added missing dependencies.
* ext/nkf/depend (nkf.o): ditto.

* ext/ripper/depend (ripper.o) ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-22 01:11:30 +00:00
nobu 3eb71e2221 common.mk: id.h
* common.mk (ID_H_TARGET): timestamp file makes no senses now.  object
  files depending on id.h are always updated after parse.y is touched.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-21 05:00:33 +00:00
kazu 73eda1735f * common.mk: fix failed to make with -j2.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-20 02:46:33 +00:00
nobu cedb0db802 common.mk: fix VPATH
* common.mk (ID_H_TARGET, parse.h): fix VPATH rules with nmake.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-17 14:52:37 +00:00
nobu 9e1b74ff5b incs: timestamp file
* Makefile.in, common.mk (incs): replace real header with the
  timestamp file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-17 06:36:53 +00:00
nobu 42dc1e5ef8 * id.c: move vm_opts.h dependency.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-17 04:12:12 +00:00
nobu a39b94d302 common.mk: -ext- tests
* common.mk (test-ruby): include -ext- tests, which check for core
  API and behavior.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-16 05:33:03 +00:00
nobu e7878d2082 common.mk: ID_H_TARGET
* common.mk (ID_H_TARGET): make timestamp file of id.h so that the
  header will not be remade repetitively.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-15 07:20:12 +00:00
ko1 8eb93103e4 * vm_trace.c: separate trace_func related functions from
thread.c.
* thread.c: ditto.
* common.mk: add vm_trace.o.
* inits.c: call Init_vm_trace().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-15 04:39:10 +00:00
nobu 22e145141b common.mk: id.h dependency
* common.mk (.y.h): split from .y.c rule to manage dependency on
  parse.h.  [ruby-core:46741] [Bug #6789]
* common.mk (id.h): keep old file unless changed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-08 13:45:41 +00:00
nagachika 8800a83f85 * common.mk: add a dependency. [ruby-core:46741] [Bug #6789]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-29 16:31:15 +00:00
nobu c51a826764 rb_thread_call_without_gvl
* include/ruby/thread.h: new header file for thread stuff.
* thread.c (rb_thread_call_without_gvl): export.  [Feature#4328]
  returns void* instead of VALUE.  [Feature #5543]
* thread.c (rb_thread_blocking_region): deprecate.  [ruby-core:46295]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-10 13:57:11 +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
yugui 5e06b53953 * common.mk: Add missing dependencies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-22 12:05:11 +00:00
nobu e6424f805b * removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-09 21:36:05 +00:00
nobu 60d5e14b92 installation dependencies
* common.mk (do-install-{all,nodoc,arch}): fix installation
  dependencies so build exts also.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-05 13:08:47 +00:00
ko1 b57c81ae3e * common.mk: fix to build vm_backtrace.c only itself (vm_backtrace.c
is no longer included from vm.c).  I hope this separation reduce
  compile time of vm.c.
* internal.h: ditto.
* vm.c, vm_core.h, vm_dump.c, vm_eval.c: ditto.
* vm_eval.c: some functions (callee, etc) moved to vm_backtrace.c.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-02 15:59:37 +00:00
ko1 681d73a923 * vm_backtrace.c: added. Separate backtrace related functions to
this file.
* vm.c, common.mk: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-02 15:23:37 +00:00
nobu a8f87d6d8d common test options
* common.mk (btest, test-sample, test-knownbugs, test-all, test-ruby):
  pass common options by TESTOPTS.

* tool/rubytest.rb: pass ARGV from make to sample/test.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35839 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-30 01:24:05 +00:00
nobu 1cb2f96158 common.mk: fix dependencies.
* common.mk (do-install-*): fix dependencies.  based on the patch by
  nagachika at [ruby-dev:45683].  [Bug #6506]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-28 04:35:36 +00:00
nobu a906a9d9be Bug #6462: EXTSOLIBS
* Makefile.in (LIBRUBY_SO): link EXTSOLIBS too.
* ext/extmk.rb (mf.macro): use EXTSOLIBS instead of SOLIBS to get rid
  of discard libraries needed by default.  [Bug #6462]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-20 03:25:14 +00:00
nobu 0e60b2c6a3 static-linked-ext: into libruby
* Makefile.in, common.mk (PROGRAM): no extension libraries.
* common.mk (build-ext): pass macros for libruby.so.
* ext/extmk.rb (command_output): link extension libraries and encoding
  libraries into libruby.so, not ruby executable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 02:37:21 +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
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
ko1 e6bd1496a8 * common.mk: "$(Q)-..." doesn't work on nmake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-01 06:49:00 +00:00
ko1 458c30e57d * common.mk: replace '@' prefix to '$(Q)' to control build
process outputs.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-01 06:37:24 +00:00
nobu 902084a60a * common.mk (REVISION_H): create temporary file in cwd so that it
works if srcdir is not writable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-17 13:35:40 +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 ddc7bcd60e * win32/Makefile.sub (newline.c, miniprelude.c): search from source
directory, not depending on VPATH.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-26 05:08:55 +00:00
nobu e160610200 * enumerator.c (enumerator_each, generator_each): pass arguments to
the block with yielder.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-08 15:26:01 +00:00
nobu 8d07e0870f * common.mk (clean-ext, distclean-ext, realclean-ext): remove exts.mk too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-02 07:37:58 +00:00
nobu 27fbcb8e78 doc/capi
* common.mk (doc/capi): use macros.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-01 06:44:37 +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 9167535c50 * common.mk (check, test-all): no exntension builds before test-all,
but check.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-25 07:58:14 +00:00
naruse 9e4ddb8f18 Revert "* common.mk (test-all): shut up nonsense skipping messages."
This reverts commit r34734.
Use -q on your environment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-22 09:06:40 +00:00
nobu e093cfae7a * common.mk (test-all): shut up nonsense skipping messages.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-22 06:47:09 +00:00
nobu 1aa4e11d16 * common.mk (test-all, test-ruby): more dependencies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-22 01:18:09 +00:00
nobu 68262a2048 * common.mk (btest, btest-ruby, test-sample test-knownbugs)
(test-all, test-ruby): depend on prog.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-17 02:50:22 +00:00
nobu 0c5cfb68c8 * common.mk (test-ruby): pass TESTS for options.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-27 07:35:13 +00:00
nobu fb37a14aa2 * common.mk (LIBRUBY_A): depends on main.o since r33774.
[ruby-core:41786] [Bug #5796]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-26 08:01:18 +00:00
kazu b32f79e0db * common.mk: add "check succeeded" message.
* README, README.ja: follow above change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-22 21:06:23 +00:00
usa 2e683de901 * common.mk (newline.c, miniprelude.c): revert r33949 because the change
broke mswin build, and the changer said no reason about the change.
  [ruby-dev:45016] [Bug #5783]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-21 09:30:26 +00:00
drbrain 8010126721 * README.ja: Update redmine.ruby-lang.org to bugs.ruby-lang.org
* README:  ditto
* common.mk:  ditto
* ext/bigdecimal/README:  ditto
* man/erb.1:  ditto
* man/irb.1:  ditto
* man/ri.1:  ditto
* man/ruby.1:  ditto
* man/ruby.1:  ditto
* sparc.c:  ditto
* tool/install-sh:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-19 21:07:09 +00:00
usa 3fbc62445e * common.mk,Makefile.in,win32/Makefile.sub (ECHO1): move platform
specific hack from common.mk to Makefile.in (and win32/Makefile.sub).
  [Bug #5711]

* lib/mkmf.rb: we can generate Makefile as we like.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-14 11:02:00 +00:00
nobu 0e4b86b5b9 * common.mk (newline.c, miniprelude.c): use VPATH.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-05 08:13:28 +00:00
yugui 0f7e05a0a2 * common.mk (INSTRUBY_ARGS): added --mantype to apply mdoc2man.rb
to man pages.  Fixes #5598. 
  (do-install-nodoc, do-install-local, do-install-man,
  dont-install-nodoc, dont-install-local, dont-install-man):
  No longer needs --mantype.

  Reported by Rainer Orth <ro AT cebitec.uni-bielefeld.de>,
  patch by George Koehler <xkernigh AT netscape.net>.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-28 15:14:14 +00:00
yugui 05ec839244 Forward-ports r32776 from branches/ruby_1_9_3 to trunk.
--
* common.mk (node_name.inc): Use $(Q) for consistency.

* Makefile.in (INSNS): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-31 14:17:37 +00:00
yugui f037909aed Forward-ports r32775 from branches/ruby_1_9_3 to trunk.
--
* common.mk (ECHO1): nmake does not allow parenthesis in make variable
  replacement.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-31 14:17:31 +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
nobu dd2dfc71e7 * common.mk (RUN_OPT): disable gems.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-08 23:39:42 +00:00
nobu b0f8bda2da * common.mk: add dependencies for EXT_SRCS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-08 07:39:07 +00:00
nobu b43b6cf71f * common.mk (sudo-precheck): true command is not standard on
Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-08 02:39:15 +00:00
akr 5ed8c08aa0 * eval.c, hash.c, load.c, proc.c, range.c, thread.c, time.c: don't
declare internal functions.

* internal.h, vm_core.h: declare internal functions.

* array.c: include internal.h.

* common.mk: update dependency for array.o.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-18 08:26:19 +00:00
akr 3b59f6c562 forgot to commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32161 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-18 02:32:44 +00:00