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

177 Коммитов

Автор SHA1 Сообщение Дата
nobu aefc34a041 * common.mk (encs, ext/ripper/ripper.c): needs MFLAGS.
* configure.in (STRINGIZE): stringizing macro.

* include/ruby/defines.h (STRINGIZE): fallback.

* tool/make-snapshot: new file.

* version.c (ruby_description, ruby_copyright): string constants for
  -v option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 06:14:50 +00:00
duerst 968eb8beac Fri Dec 21 16:25:25 2007 Martin Duerst <duerst@it.aoyama.ac.jp>
* common.mk, transcode_data_iso_8859.c: renamed to
	  transcode_data_one_byte.c.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 07:24:39 +00:00
nobu 817a4e3c83 * common.mk (enc.mk): depends on $(RBCONFIG) instead of rbconfig.rb.
* encoding.c (Init_Encoding): ISO-8859-1 is no longer a replica.

* regenc.h (OnigEncodingDefine): names of extension and encoding can
  differ.

* enc/Makefile.in: always shared.

* enc/depend (deffile): should not upcase.

* enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: fix for Init.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 02:23:26 +00:00
akr d45cfa45ab * tool/compile_prelude.rb: use erb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 00:27:40 +00:00
ko1 c334a09f7a * common.mk, *.ci: renamed to *.c.
* eval_laod.c: renamed to load.c.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-20 09:29:46 +00:00
nobu dc4d4b3923 * common.mk (enc.mk): depends on rbconfig.rb.
* regenc.h (OnigEncodingDefine): external encoding definition macro.

* enc/Makefile.in: fix for linking.

* enc/depend, enc/make_encmake.rb: fix for Windows.


* enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: renamed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-20 08:07:56 +00:00
matz 8e8c1d02e0 * common.mk (encs): create encoding directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-19 18:00:41 +00:00
nobu 168b9e13ff * common.mk (encs, ext/ripper/ripper.c): other options must come
before MAKEFLAGS in GNU make.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-18 06:44:25 +00:00
nobu 346e9e78f0 * common.mk (encs, ext/ripper/ripper.c): pass MAKEFLAGS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-18 06:17:33 +00:00
nobu c611b6d0cc * configure.in (BUILTIN_ENCS): removed.
* common.mk (enc.mk): pass BUILTIN_ENCS from command line.

* enc/depend: ditto.

* enc/make_encmake.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 17:30:57 +00:00
nobu 6ed9bdd463 * common.mk (encs): added dependencies.
* enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code.

* lib/mkmf.rb (depend_rules): now takes content string, not file name.

* win32/enc-setup.mak: overrides default target.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 16:15:46 +00:00
gotoyuzo 2a0aa84713 * common.mk (miniprelude.c): add -I$(srcdir).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 12:25:26 +00:00
nobu b2d9f1e9d0 * common.mk (encs): new target to compile external encodings.
* enc/Makefile.in: became a serb template.

* enc/make_encmake.rb: creates enc.mk from enc/Makefile.in using serb.

* lib/mkmf.rb (relative_from): moved from ext/extmk.rb.

* lib/mkmf.rb ($extmk): true if under to top source directory, not
  only ext.

* lib/mkmf.rb (depend_rules): extracted from create_makefile.

* tool/serb.rb (serb): splitted from tool/compile_prelude.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 08:47:28 +00:00
nobu f2bd108d8d * configure.in (enc/Makefile): add external encoding objects list.
* common.mk (BUILTIN_ENCOBJS): renamed from ENCOBJS.

* Makefile.in (BUILTIN_ENCOBJS): substitued by autoconf.

* enc/Makefile.in: new file to compile external encoding sources.

* encoding.c (rb_enc_find_index): auto-load external encoding objects
  as "ext/ENCODING_NAME".  [ruby-dev:32606]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-15 09:56:59 +00:00
nobu 8b6cb6994c * common.mk (ruby.imp): fix for circular dependency. a patch from
Yutaka Kanemoto <kinpoco AT gmail.com> in [ruby-dev:32590].

* regint.h, st.c, ext/json/ext/generator/generator.c: suppress
  warnings on AIX.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-14 04:47:57 +00:00
nobu 7554dd1346 * Makefile.in, */Makefile.sub (CP, MV): added.
* common.mk (.y.c): not discard the old target until successfully
  created.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-11 07:19:28 +00:00
matz 7ded13f54b * transcode.c: new file to provide encoding conversion features.
code contributed by Martin Duerst.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-10 05:01:47 +00:00
akr 0d8ac93f58 * include/ruby/io.h (rb_io_t): add tied_io_for_writing member.
* io.c: use tied_io_for_writing for duplex popen.

* gc.c: mark tied_io_for_writing.

* common.mk: gc.o depends io.h.

  [ruby-dev:32205]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-20 03:16:53 +00:00
nobu dc6e570665 * common.mk (prereq): added auto generated sources. [ruby-dev:32280]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 05:29:58 +00:00
akr e81b38e378 * common.mk, Makefile.in: rename prelude.c to miniprelude.c.
rename ext_prelude.c to prelude.c

* win32/Makefile.sub: ditto.

* bcc32/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-14 05:06:36 +00:00
nobu 499fef3e53 * common.mk (parse.c): dependency also needs vpath.
* common.mk (node_name.inc, prelude.c): VPATH in nmake does not
  work for targets of explicit rules.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-13 17:50:33 +00:00
nobu d5a3389886 * common.mk (parse.c), ext/ripper/depend (ripper.c): process after
bison with sed.  [ruby-dev:32204]

* ruby.c (proc_options): use yydebug in cmdline_options.

* ruby.c (process_options): set yydebug flag of parser.

* parse.y (yydebug): moved into struct parser_params.

* parse.y (rb_parser_get_yydebug, rb_parser_set_yydebug): parser
  generic methods.

* */Makefile.sub (parse.c): moved to common.mk.

* tool/ytab.sed: comment out yydebug definition, and substitute
  yyerror with parser_yyerror.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-13 12:41:41 +00:00
akr 2c42aa4364 * Makefile.in, common.mk: add prelude.o to MINIOBJS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 08:15:10 +00:00
akr c840239cc8 * Makefile.in, common.mk: add ext_prelude.o to OBJS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 07:49:36 +00:00
akr 900da8992d refine dependencies of miniruby$(EXEEXT).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 12:44:01 +00:00
akr c585a9eba1 * configure.in, common.mk, Makefile.in: don't generate
libminiruby-static.a.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 14:18:03 +00:00
akr 7315b449f3 * common.mk, Makefile.in: generate libminiruby-static.a
which contains prelude.o for miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 10:50:58 +00:00
akr 00e55418ce * common.mk (EXPLOBJS): create new variable for ext_prelude.o.
* Makefile.in(h: use EXPLOBJS.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 10:22:38 +00:00
akr 040ffb5d79 * gem_prelude.rb: new file for gem libraries. currently empty.
* common.mk: generate ext_prelude.c by prelude.rb and gem_prelude.rb.
  ruby (not miniruby) is linked with ext_prelude.o instead of prelude.o. 
* inits.c (rb_call_inits): don't call Init_prelude.

* ruby.c: support --disable-gems option.
  (ruby_init_gems): new function to define Gem::Enable and
  invoke Init_prelude.
  (process_options): call ruby_init_gems just after
  ruby_init_loadpath.

* tool/compile_prelude.rb: support multiple files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 09:22:59 +00:00
usa a95d19bf59 * common.mk (prereq): update the path of prelude.c.
* common.mk (prelude.c): rollback a part of r13675, because it is not
	  documented and causes build error.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-31 17:16:00 +00:00
nobu 62354319cd * numeric.c (int_chr): take an optional encoding parameter.
[ruby-core:12816]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-26 08:38:14 +00:00
nobu 72483cdcca * Makefile.in, */Makefile.sub (VPATH): add enc directory.
* common.mk (ENCOBJS): encoding objects.

* enc: directory for encodings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-10 21:35:45 +00:00
nobu 8ef1027a09 * common.mk (ruby.o): using encoding.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-28 23:50:36 +00:00
ko1 87375866a6 * benchmark/driver.rb: added.
* common.mk: fix to use above driver.
* benchmark/prepare_so_count_words.rb: added.
* benchmark/bm_so_count_words.rb: fix benchmark process.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-27 06:46:31 +00:00
ko1 a22a489cde * common.mk: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-06 15:59:29 +00:00
nobu 1acdd51cf9 * common.mk (vm.o): depends on st.h too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-03 06:37:11 +00:00
usa 70f5d818f8 * regenc.h: check RUBY_EXTERN before including config.h and defines.h
* common.mk: update header dependency.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-30 10:42:09 +00:00
ko1 6244e502cc * thread.c: fix Mutex to be interruptable lock.
* thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
  prepare native_cond_*() which are based on pthread_cond_*() spec.
* prelude.rb: fix Mutex#synchronize method.
* vm_core.h, include/ruby/intern.h: change unblock function interface
  (to pass some user data).
* file.c, process.c: ditto.
* benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
* benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
  with contension.
* benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
* test/ruby/test_thread.rb: add a test.
* common.mk: fix benchmark options.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-27 16:48:14 +00:00
matz a25fbe3b3e * encoding.c: provide basic features for M17N.
* parse.y: encoding aware parsing.

* parse.y (pragma_encoding): encoding specification pragma.

* parse.y (rb_intern3): encoding specified symbols.

* string.c (rb_str_length): length based on characters.  
  for older behavior, bytesize method added.

* string.c (rb_str_index_m): index based on characters.  rindex as
  well.

* string.c (succ_char): encoding aware succeeding string.

* string.c (rb_str_reverse): reverse based on characters.

* string.c (rb_str_inspect): encoding aware string description.

* string.c (rb_str_upcase_bang): encoding aware case conversion.
  downcase, capitalize, swapcase as well.

* string.c (rb_str_tr_bang): tr based on characters.  delete,
  squeeze, tr_s, count as well.

* string.c (rb_str_split_m): split based on characters.

* string.c (rb_str_each_line): encoding aware each_line.

* string.c (rb_str_each_char): added.  iteration based on
  characters.

* string.c (rb_str_strip_bang): encoding aware whitespace
  stripping.  lstrip, rstrip as well.

* string.c (rb_str_justify): encoding aware justifying (ljust,
  rjust, center).

* string.c (str_encoding): get encoding attribute from a string. 

* re.c (rb_reg_initialize): encoding aware regular expression

* sprintf.c (rb_str_format): formatting (i.e. length count) based
  on characters.

* io.c (rb_io_getc): getc to return one-character string.
  for older behavior, getbyte method added.

* ext/stringio/stringio.c (strio_getc): ditto.

* io.c (rb_io_ungetc): allow pushing arbitrary string at the
  current reading point.

* ext/stringio/stringio.c (strio_ungetc): ditto.

* ext/strscan/strscan.c: encoding support.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25 03:29:39 +00:00
nobu cfaf3d9a1a * common.mk (prelude.o): depends on vm_core.h now.
* common.mk (prelude.c): depends on tool/compile_prelude.rb too.

* common.mk (prereq): updates all auto-generated sources.

* tool/compile_prelude.rb: separated dynamic and static portions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25 01:20:30 +00:00
ko1 6bf7d3d8c0 * prelude.rb: added. run this script on startup.
* tool/compile_prelude.rb: compile prelude.rb to C string.
  (prelude.rb -> prelude.c)
* common.mk: fix to build with prelude.c.
* inits.c (rb_call_inits): ditto.
* thread.c (Init_Thread): move definition of Mutex#synchronize
  to prelude.rb.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-24 15:26:28 +00:00
ko1 9cdeae9dad * common.mk: change test order (test -> btest).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-14 10:53:06 +00:00
nobu 9644a2c02c * common.mk (btest-miniruby, test-sample): split the test target
so that -k option works.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-08 02:02:45 +00:00
nobu 8063c2b2e3 * common.mk (node_name.inc): use $? instead of $< for nmake.
[ruby-dev:31356]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-07 04:28:34 +00:00
nobu a9ba30ee86 * common.mk (node_name.inc): auto-generate node name list.
* iseq.c (ruby_node_name): ditto.

* tool/node_name.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-06 04:09:56 +00:00
nobu ee8f40b5a6 * common.mk (INSNS): not chdir to srcdir.
* lib/vm/instruction.rb (RubyVM::SourceCodeGenerator): --destdir
  option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-06 04:00:09 +00:00
nobu 2840fa6b65 * common.mk: inverted rules order.
* thread_win32.ci (w32_create_thread): bcc does not have
  _beginthreadex().

* bcc32/Makefile.sub: headers have moved.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-21 08:48:29 +00:00
ko1 6b6bf4dd48 * blockinlining.c: remove "yarv" prefix.
* array.c, numeric.c: ditto.
* insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
* yarvcore.c: removed.
* yarvcore.h: renamed to core.h.
* cont.c, debug.c, error.c, process.c, signal.c : ditto.
* ext/probeprofiler/probeprofiler.c: ditto.
* id.c, id.h: added.
* inits.c: ditto.
* compile.c: rename internal functions.
* compile.h: fix debug flag.
* eval.c, object.c, vm.c: remove ruby_top_self.
  use rb_vm_top_self() instead.
* eval_intern.h, eval_load: ditto.
* gc.c: rename yarv_machine_stack_mark() to
  rb_gc_mark_machine_stack().
* insnhelper.h: remove unused macros.
* iseq.c: add iseq_compile() to create iseq object
  from source string.
* proc.c: rename a internal function.
* template/insns.inc.tmpl: remove YARV prefix.
* thread.c:
* vm.c (rb_iseq_eval): added.
* vm.c: move some functions from yarvcore.c.
* vm_dump.c: fix to remove compiler warning.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-12 04:25:46 +00:00
ko1 616f4d3385 * bootstraptest/runner.rb: fix load path.
* common.mk: fix "test" rule to run with "btest".
* rubytest.rb, sample/test.rb: fix to show tests progress.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-06 09:23:53 +00:00
ko1 ca9b486294 * tool/insns2vm.rb, lib/vm/instruction.rb: move process body
to lib/vm/instruction.rb.
* common.mk: fix aotc rule.
  experimental. bin/ruby2cext is not added yet.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-29 05:52:18 +00:00
ko1 fd58a0836f * common.mk (run.gdb): fix to load $(srcdir)/.gdbinit
* vm.c (rb_vm_set_finish_env): add a cast.
* vm.h: support __fastcall for MSVC.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-27 20:03:53 +00:00
ko1 6bd0345627 * eval_*.h: rename to eval_*.ci.
* common.mk: ditto.
* eval_error.ci: remove ruby_set_current_source().
* error.c, eval.c, ruby.c: ditto.
* eval_safe.c, proc.c: remove unused macros.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24 19:23:24 +00:00
ko1 7980e653e5 * call_cfunc.ci: removed.
* insnhelper.ci: added. this function includes all functions that
  vm insns need.
* common.mk: ditto.
* insnhelper.h, vm.h, vm.c: move some declaration.
* gc.h: remove GC_CHECK() macro because GC.stress is more useful.
* compile.c, iseq.c, vm_dump: ditto.
* gc.h, thread.c: move a prototype decalaration.
* debug.c, debug.h: rename some functions.
* compile.h: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24 17:19:22 +00:00
ko1 62deb7dbbd * insn_send.ci: removed.
* common.mk: ditto.
* vm.c (vm_call_bmethod), isnsn.def: added.  fix to use this
  function instead of using goto.
* vm.c (vm_call_bmethod): renamed from th_invoke_bmethod().
* vm.c (vm_method_missing): renamed from eval_methdo_missing().
* vm_evalbody.ci: remove tmp_* variables.
* insnhelper.h: add some macros.
* insns.def: forbid zsuper from method defined by define_method().
* test/ruby/test_super.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12601 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24 13:05:51 +00:00
ko1 904b9e5d54 * vm_macro.def: removed.
* insn_send.ci: added.  this file includes send instruction body.
* common.mk: ditto.
* insns.def: ditto.
* tool/insns2vm.rb: ditto.
* vm.c: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24 11:02:40 +00:00
ko1 3aa45744ab * bootstraptest/runner.rb: set default directory to
'/tmp/bootstraptest.tmpwd' and add --dir option.
  fix to output driver and target information.
* common.mk: fix to run btest on BASERUBY and
  add OPTS to pass option ("make btest OPTS=...").



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24 06:52:59 +00:00
nobu a96b6f0604 * common.mk (realclean): separate local and ext.
* ext/extmk.rb: not remove unrelated directories.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-15 13:31:54 +00:00
nobu 2b592580bf * include/ruby: moved public headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00
ko1 7c4ff2d332 * cont.c: support callcc which everyone love.
incomplete. please give me bug reports.
* common.mk, inits.c, thread.c: ditto.
* yarvcore.c: export thread_mark().
* yarvcore.h: disable value cache option.
* eval_intern.h: set th_get_ruby_level_cfp to inline.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-23 22:52:19 +00:00
matz d086dfc513 * common.mk: add a rule for regsyntax.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-23 06:38:46 +00:00
matz 6ee2e54239 * oniguruma.h: updated to Oniguruma 5.7.0.
* regsyntax.c, unicode.c: new files along with Oniguruma 5.x.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-23 01:32:08 +00:00
nobu 140fb1bae3 * common.mk (clear-installed-list): separated from install-prereq.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-13 00:24:58 +00:00
nobu f9b349adb5 * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
specific thread model.

* compile.h, regint.h, vm.h, array.c: removed unnecessary #include.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-28 01:33:57 +00:00
shyouhei e38fd64fcd * mkconfig.rb (RbConfig): add CONFIG['PATCHLEVEL']
* common.mk: new target dist

* distruby.rb: new file



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-27 15:12:18 +00:00
usa 006f72e920 * common.mk (error.c, process.c): depend on yarvcore.h and rubysig.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-27 11:37:54 +00:00
ko1 e98f7e1eaa * common.mk: change "gdb" rule. You can debug miniruby with
$(srcdir)/test.rb on gdb by this rule (type "make gdb").
  If you write break points to "breakpoints.gdb" on $srcdir,
  gdb runs with this file.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-25 15:58:27 +00:00
aamine f42150744c * common.mk: new target "btest", to run bootstraptests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 10:39:30 +00:00
ko1 287aa3324a * common.mk: change vm_macro.def -> vm_macro.inc rule.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 01:41:46 +00:00
nobu d274cf524a * common.mk: targets which depend on yarvcore.h now depend on
rubysig.h too.

* yarvcore.h (rb_vm_t): use rb_atomic_t instead of int.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-10 08:47:05 +00:00
ko1 93b2cfbc4a * common.mk: fix to use RUNRUBY instead of BASERUBY if possible.
* common.mk ($(INSNS) rule): remove $(PROGRAM) first.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-08 08:18:29 +00:00
ko1 9c574383a4 * blockinlining.c, error.c, eval.c, eval_error.h, eval_intern.h,
eval_jump.h, eval_load.c, eval_safe.h, gc.c, proc.c, signal.c,
  thread.c, thread_pthread.ci, thread_win32.ci, vm.c, vm.h,
  vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
  fix typo (rb_thead_t -> rb_thread_t).

* eval_intern.h: remove unused definitions.

* common.mk: fix around vm_opts.h path
  and remove harmful argument passed to insns2vm.rb.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-08 06:37:46 +00:00
ko1 44aef0b53f * this commit is a result of refactoring. only renaming functions,
moving definitions place, add/remove prototypes, deleting
  unused variables and removing yarv.h.
  This commit doesn't change any behavior of ruby/vm.
* yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h).
* error.c, eval_intern.h: include yarvcore.h instead yarv.h
* rename some functions:
  * debug.[ch]: debug_*() -> ruby_debug_*()
  * iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm()
  * iseq.c: node_name() -> ruby_node_name()
  * vm.c: yarv_check_redefinition_opt_method() ->
    rb_vm_check_redefinition_opt_method()
* some refactoring with checking -Wall.
* array.c: remove rb_ary_ptr() (unused) and remove unused
  local variables.
* object.c: add a prototype of rb_mod_module_exec().
* eval_intern.h (ruby_cref): set it inline.
* eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal().
* parse.y: add a prototype of rb_parse_in_eval() (in eval.c).
* process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c).
* thread.c: remove raw_gets() function (unused) and fix some format
  mismatch (format mismatchs have remained yet. this is todo).
* thread.c (rb_thread_wait_fd_rw): fix typo on label name.
* thread_pthread.ci: comment out codes with USE_THREAD_CACHE.
* vm.c (rb_svar, rb_backref_get, rb_backref_get,
  rb_lastline_get, rb_lastline_set) : moved from yarvcore.c.
* vm.c (yarv_init_redefined_flag): add a prototype and rename
  yarv_opt_method_table to vm_opt_method_table.
* vm.c (rb_thread_eval): moved from yarvcore.c.
* yarvcore.c: remove unused global variables and fix to use nsdr().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-07 01:25:05 +00:00
ko1 46cceb5a74 * complement last commit.
* common.mk (*.inc): use VPATH.
* vm_opts.h: renamed from vm_opts.h.base.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-06 02:06:07 +00:00
ko1 025cfde57d * eval_thread.c, common.mk: remove eval_thread.c.
* yarvcore.c: rename cYarvThread to rb_cThread.
* gc.c: remove YARV_* prefix.
* gc.h: add an include guard and prototype of rb_gc_set_stack_end().
* inits.c: fix to ANSI prototype style and reorder Init_*().
* io.c (pipe_finalize): TODO: comment out last_status.
* process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of
  rb_last_status and make last_status_get() to access $?.
* yarvcore.c (vm_mark): mark yarv_vm_t#last_status.
* ruby.h: add declarations of rb_cISeq and rb_cVM.
* thread.c: move eval_thread.c codes to thread.c and remove yarv_*
  function prefix.
* thread.c (thread_start_func_2): use yarv_thread_t#first_func if
  it is not null.
* vm.c: fix copyright year.
* yarvcore.c (Init_vm): rename to Init_VM().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-05 12:21:01 +00:00
matz 71364da03f * insns.def (setclassvariable): remove unnecessary operand.
* compile.c (iseq_compile_each): ditto.

* common.mk (insns_info.inc): add dependency for insns_info.inc.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11629 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-04 19:15:38 +00:00
nobu e22d0bf723 * common.mk (runruby, benchmark, benchmark-each, tbench): use
PROGRAM for the file to be built.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-02 18:35:40 +00:00
nobu fddaf76b67 * Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-02 18:23:07 +00:00
matz 6cee897b59 * common.mk (bin): add more dependency. a patch from Tadashi
Saito <shiba at mail2.accsnet.ne.jp>.  [ruby-dev:30245]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-02 14:41:50 +00:00
matz aeec0f8445 * common.mk (compile.$(OBJEXT)): add config.h to vm.c and
compile.c.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-02 09:39:20 +00:00
usa b696420526 * Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
setup.mak}: add --with-baseruby configure option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-23 06:41:22 +00:00
ko1 dbee678630 * some refactoring around yarvcore and proc.
* eval_proc.c: renamed to proc.c.
* common.mk: ditto.
* yarvcore.h, yarvcore.c: rename or remove some global variables
  removed: mYarvCore, mYarvInsns
  renamed: cYarvISeq -> rb_cISeq,
           cYarvProc -> rb_cProc, cYarvBinding -> rb_cBinding
  ::YarvCore module is removed and ::YarvCore::VM class becomes ::VM.
  And change/remove some functions which added with YARV.
* compile.c: ditto.
* eval.c: ditto.
* iseq.c: ditto.
* vm.c: ditto.
* inits.c: rename Init_yarvcore to Init_vm.
* yarvcore.c, proc.c: move some functions and initialization
  from yarvcore.c to proc.c.
* intern.h, proc.c: add global function rb_binding_new(void).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-17 08:48:52 +00:00
ko1 5078c85782 * common.mk: fix ruby script path.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-16 08:50:13 +00:00
ko1 4e4eec7016 * common.mk: add a "compare" rule and fix MATZRUBY variable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-07 09:36:30 +00:00
ko1 52296cdee1 * common.mk : add PHONY dependency to some rules
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-06 04:44:56 +00:00
ko1 384cfd3871 * benchmark/run.rb : change option format
* common.mk : ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-05 18:54:33 +00:00
ko1 d22d3b5a7a * benchmark/bm_app_pentomino.rb : use Array#dup instead of
Array#clone
* benchmark/bmx_temp.rb : removed
* benchmark/run.rb : use run.rb instead of run_rite.rb
* common.mk : ditto
* benchmark/run_rite.rb : removed
* common.mk : use $(srcdir)/test.rb to run a test program
with "make run"
* benchmark/bmx_temp.rb : removed and
set svn:ignore (bmx_*.rb) to benchmark/
* test.rb : set svn:ignore



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-05 13:52:16 +00:00
ko1 716b91a5f7 * common.mk : add .SUFFIXES rule
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-05 11:22:25 +00:00
ko1 3e5b3dac1f * common.mk : rename yarv-test-[all/each] to compare-test[/-each].
purpose of "compare-test" rule is to compare ruby (trunk) and
matzruby (branches/matzruby) binary in miniruby level.  MATZRUBY
parameter means an path to miniruby of matzruby binary.  to do this
comparison test, you should build matzruby branch.
* yarvtest/yarvtest.rb : fix to use command line option as
command names to be compared.
* yarvtest/runner.rb : remove a debug output.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-04 11:30:37 +00:00
ko1 31d815aacf * common.mk : fix to use test.rb script in build directory.
($(srcdir)/test.rb -> test.rb)



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-04 10:15:20 +00:00
ko1 a7028afec0 * yarv_version.h : removed.
* common.mk : remove yarv_version.h from rules
* yarvcore.h (Init_yarvcore) : remove useless constants



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-04 08:27:19 +00:00
ko1 26608663cd * common.mk : restore changes
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-04 04:44:48 +00:00
ko1 a3e1b1ce7e * Merge YARV
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-31 15:02:22 +00:00
nobu 24f3250be1 * Makefile.in, common.mk (NULLCMD): moved for platforms that empty
command does not run.  fixed: [ruby-dev:29994]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-06 14:57:07 +00:00
nobu 40fc1a8025 * common.mk (NULLCMD): dummy command.
* bcc32/Makefile.sub (post-install-*): Borland make cannot ignore
  command-less double-colon rules.  [ruby-dev:29676]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-19 23:44:00 +00:00
nobu eb2661510d * mkconfig.rb: *OBJS are not needed for extension libraries.
* {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
  missing comma.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-15 23:32:12 +00:00
nobu 5cfcbb2aca * common.mk (test-all): separate directory where running test cases
from source tree.

* lib/test/unit/autorunner.rb (options): added --basedir, --workdir
  and --load-path options.

* lib/test/unit/collector/dir.rb (recursive_collect, collect_file):
  base directory support.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-01 16:25:37 +00:00
nobu b004fa2428 * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
LIBRUBY_SO unless need to be removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-01 15:00:45 +00:00
nobu e8454ae776 * common.mk (no-install): not install rdoc actually.
* common.mk (install-doc, no-install-doc): use instruby.rb.

* instruby.rb: rdoc installation.

* ext/extmk.rb: expand ruby executable names.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-21 13:58:33 +00:00
nobu 8978bfe7f9 * common.mk (pre-install-doc): create data directory before install.
* lib/mkmf.rb (dir_re): fixed typo.

* lib/mkmf.rb (install_dirs): remove extra slash.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-20 14:18:19 +00:00
nobu 8114a2edb0 * common.mk (install-doc): reverted.
* instruby.rb: stores file name list without destdir prefix.

* lib/rdoc/generators/ri_generator.rb: do not chdir twice.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-17 08:43:19 +00:00