1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

599 commits

Author SHA1 Message Date
nobu
c95d5b250d common.mk, win32/Makefile.sub: refix sizez.c for nmake
* common.mk (sizes.c): revert r42854 and r42883.

* win32/Makefile.sub (sizes.c): rule for outplace build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-08 03:54:41 +00:00
nobu
2b44bbf697 common.mk: in-place build
* common.mk (sizes.c): try to fix for in-place build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-07 22:03:17 +00:00
glass
e334bb2ce5 * common.mk: use RUNRUBY instead of MINIRUBY because MINIRUBY can't
require extension libraries. The patch is from nobu
  (Nobuyoshi Nakada).

* ext/thread/extconf.rb: for build ext/thread/thread.c.

* include/ruby/intern.h: ditto.

* thread.c: ditto.

* lib/thread.rb: removed and replaced by ext/thread/thread.c.

* ext/thread/thread.c: Queue, SizedQueue and ConditionVariable
  implementations in C. This patch is based on patches from panaggio
  (Ricardo Panaggio) and funny_falcon (Yura Sokolov) and  ko1
  (Koichi Sasada). [ruby-core:31513] [Feature ]

* test/thread/test_queue.rb (test_queue_thread_raise): add a test for
  ensuring that killed thread should be removed from waiting threads.
  It is based on a code by ko1 (Koichi Sasada). [ruby-core:45950]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-06 15:15:07 +00:00
nobu
64455007e6 common.mk: sizes.c for nmake
* common.mk (sizes.c): needs VPATH to outplace build with nmake.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-06 05:23:25 +00:00
nobu
21d7cd3988 sizes.c.tmpl: autogenerate
* template/sizes.c.tmpl: generate automatically by extracting
  RUBY_CHECK_SIZEOF from configure.in.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-26 03:37:15 +00:00
nobu
8fba9bbc4b common.mk: install arch
* common.mk (do-install-arch): install architecture dependent files
  all, including libraries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-08 15:15:44 +00:00
naruse
a9a4da925c * common.mk (mini): portable target to build miniruby
* common.mk (bisect): run git-bisect with miniruby

* common.mk (bisect-ruby): run git-bisect with ruby

* tool/bisect.sh: script for git-bisect

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-08 05:54:08 +00:00
nobu
8d564597fa win32.c: conversion to WCHAR
* win32/win32.c (rb_w32_write_console): use MultiByteToWideChar() for
  the last step of conversion to WCHAR, to get rid of warnings from
  rb_enc_find() in miniruby.  [ruby-dev:47584] [Bug ]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-05 08:38:39 +00:00
nobu
9f06167a26 sizes.c: RbConfig::SIZEOF
* sizes.c (Init_sizes): define RbConfig::SIZEOF.  [Feature ]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 13:55:29 +00:00
naruse
2998934ccb Change repository of rubyspec from original to nurse's
Because RubySpec often include tests which fails on CRuby even if
RubySpec is a test suite which verifies whether an implementation is
compatible with CRuby or not. Moreover recent mspec can't ignore specs
guarded with ruby_bug. It breaks running RubySpec with Ruby 1.8 because
those guards is used to avoid specs which cause stuck or crash.
Therefore we gave up tracking original and dicided to fork.

https://github.com/nurse/rubyspec

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 07:31:10 +00:00
ko1
bd058912da * thread_native.h: added.
Move native thread related lines from vm_core.h.
  And declare several functions "rb_nativethread_lock_*",
  manipulate locking.
* common.mk: add thread_native.h.
* thread.c: add functions "rb_nativethread_lock_*".
* thraed.c, thread_[pthread,win32].[ch]: rename rb_thread_lock_t
  to rb_nativethread_lock_t to make it clear that this lock is for
  native thraeds, not for ruby threads.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-23 09:53:14 +00:00
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 ]
* 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 ]


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 ]



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 ]

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