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

310 Коммитов

Автор SHA1 Сообщение Дата
nobu a9934cb098 * common.mk (miniruby$(EXEEXT)): $(PREP) isn't always same as
miniruby, and tests, debug, etc have no meaning when
  cross-compiling.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 11:32:40 +00:00
ryan c6e2c05b20 Fixed dependencies on miniruby
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 09:41:05 +00:00
usa 8ec04b569e * common.mk (encs): need to pass miniruby path for windows.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-11 00:27:36 +00:00
akr 5265458754 * common.mk (test-knownbug): give $(OPTS) for bootstraptest/runner.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-09 15:11:38 +00:00
ko1 e2958af0b7 * test_knownbug.rb -> KNOWNBUGS.rb: renamed.
* common.mk: apply above change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-09 12:15:53 +00:00
ko1 fe54190f68 * bootstraptest/test_knownbug.rb -> ./test_knownbug.rb: moved.
* common.mk: add a rule "test-knownbug".



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-09 12:10:43 +00:00
nobu 6a734c810c * common.mk (prelude.c): simply depends on PREP. [ruby-dev:34877]
* enc/make_encdb.rb, enc/trans/make_transdb.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-30 03:18:45 +00:00
nobu 23c2cf545c * Makefile.in (MKPREP): appended $(RBCONFIG).
* common.mk (enc.mk, prelude.c): not depend on $(RBCONFIG) on mswin32
  to get of compiling twice each time.

* win32/Makefile.sub (prelude.c): not depend on $(PREP).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-28 08:41:52 +00:00
nobu 0d3d7c3a1c * Makefile.in (MKPREP), common.mk, win32/Makefile.sub (prelude.c): get
rid of depending PREP with nmake.

* common.mk (encs): depends on libruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-27 10:12:46 +00:00
ko1 59c061235f * eval_method.c: renamed from vm_method.c. "vm_method.c" is included
by "vm.c".
* vm_eval.c: added.  Some codes are moved from "eval.c"
* common.mk: fix for above changes.
* compile.c: make a vm_eval(0)
* eval.c, eval_error.c, eval_intern.h, eval_jump.c, proc.c, vm.c,
  id.c, id.h, vm_core.h, vm_dump.c, vm_evalbody.c, vm_insnhelper.c,
  blockinlining.c: fix for above changes.  and do some refactoring.
  this changes improve rb_yield() performance.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-24 17:50:17 +00:00
matz 44cd8e457b * regparse.c (PINC): use optimized enclen() instead of
ONIGENC_MBC_ENC_LEN().

* regparse.c (PFETCH): ditto.

* regparse.c (PFETCH): small optimization.

* regexec.c (slow_search): single byte encoding optimization.

* regenc.h (enclen): avoid calling function when encoding's
  min_len == max_len.

* re.c (rb_reg_regsub): rb_enc_ascget() optimization for single
  byte encoding.

* re.c (rb_reg_search): avoid allocating new re_registers if we
  already have MatchData.

* re.c (match_init_copy): avoid unnecessary onig_region_free()
  before onig_region_copy. 

* encoding.c (rb_enc_get_index): remove implicit enc_capable check
  each time.

* encoding.c (rb_enc_set_index): ditto.

* encoding.c (enc_compatible_p): small refactoring.

* include/ruby/encoding.h (rb_enc_dummy_p): inline
  rb_enc_dummy_p() and export related code.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-19 08:25:03 +00:00
nobu bdfe8eab49 * common.mk (RUBYOPT): affected BASERUBY too. [ruby-talk:301514]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-12 03:32:12 +00:00
nobu 121ae83741 * configure.in (MINIRUBY): should not include extension library path.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-11 08:57:40 +00:00
nobu b745b792e6 * common.mk, ext/extmk.rb, lib/mkmf.rb: use absolute path for RUBYOPT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 08:44:15 +00:00
nobu 279b358d00 * common.mk, ext/extmk.rb, lib/mkmf.rb: removed RUBYOPT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 08:29:24 +00:00
nobu f3ad9bf9b3 * configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
[ruby-core:16642]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 07:41:23 +00:00
nobu 7dc26509c6 * common.mk (prelude.c): depends on enc/prelude.rb.
* enc/prelude.rb: fixed initial library names.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-08 01:30:31 +00:00
nobu 1369cfd16e * encoding.c (enc_init_db): moved to enc/encdb.c.
* transcode.c (init_transcoder_table): moved to enc/trans/transdb.c.

* enc/depend (enc/encdb.o enc/trans/transdb.o): depend on
  corresponding headers.

* common.mk (COMMONOBJS): moved transcode.o from OBJS


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-07 06:51:33 +00:00
usa 9729ba32d0 * common.mk (INSNS): add insns_info.inc.
* common.mk (INSNS): make incs separately for nmake.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 05:44:29 +00:00
nobu 11b6935049 * common.mk (golf_prelude.c): needs .new.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 04:49:20 +00:00
nobu 2c485c409d * common.mk (endb.h, transdb.h, prelude.c): depend on $(PREP) and
check if really changed.  [ruby-core:16102]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 04:20:40 +00:00
nobu b0c77fe85b * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
(MINIOBJS, ARCHMINIOBJS): separated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 03:56:07 +00:00
naruse e58adeae0f * re.c (rb_memsearch_ss): simple shift search.
* re.c (rb_memsearch_qs): quick search.

* re.c (rb_memsearch_qs_utf8): quick search for UTF-8 string.

* re.c (rb_memsearch_qs_utf8_hash): hash functions for above.

* re.c (rb_memsearch): use above functions.

* string.c (rb_str_index): give enc to rb_memsearch.

* include/ruby/intern.h (rb_memsearch): move to encoding.h.

* include/ruby/encoding.h (rb_memsearch): move from intern.h.

* common.mk (PREP): add dependency.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-17 19:04:29 +00:00
naruse 9e202f9398 * common.mk (LIBRUBY_SO): add dependency to $(BUILTIN_ENCOBJS).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-16 08:31:00 +00:00
tadf 6125552c27 both complex and rational are now builtin classes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-16 00:23:43 +00:00
nobu 96240c6d2d * eval_intern.h (rb_thread_raised_set): use generic flags.
* eval.c (rb_longjmp): clear all raised flags.

* eval.c (stack_check): leave clearing flag to rb_longjmp.

* gc.c (rb_memerror): use thread raised flag instead of static flag.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-12 05:47:10 +00:00
nobu 6a76630b3c * common.mk (clean-local): WINMAINOBJ is Windows specific.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-11 03:39:55 +00:00
nobu 59a1754a64 * common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
intermediate files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-24 14:29:51 +00:00
nobu c9c655bf2c * common.mk (INSTRUBY_ARGS): pass mode to install. [ruby-dev:33766]
* instruby.rb (parse_args): added --data-mode and --prog-mode options.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-13 15:49:56 +00:00
naruse e833cd9b3c * common.mk (encdb, transdb): depend on $(PREP).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-10 13:13:30 +00:00
nobu 4873f59aef * common.mk (ext/extmk.rb, instruby.rb): inlined $(MAKE) so that can
be executed even with -n.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-30 23:31:22 +00:00
naruse 1a65f34057 * configure.in, common.mk: fix rule for dmytranscode.o.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-29 10:40:34 +00:00
naruse 74b254e833 * enc/trans/japanese.c (rb_to_Windows_31J): to 'Windows-31J'.
* common.mk: add rules for transdb.h.

* transcode.c (init_transcoder_table): use transdb.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-29 10:05:39 +00:00
naruse 315196bc7a * dmyencoding.c, encoding.c (enc_init_db, NO_ENCDB_H):
miniruby doesn't use encdb.

* common.mk: encdb.h use miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-29 08:48:35 +00:00
naruse 419f0da293 * tool/ifchange: remove $temp when unchanged.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-29 08:05:26 +00:00
naruse 65615986ec * common.mk, ext/extmkf.rb: always make encdb.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-29 07:27:09 +00:00
usa ff0147a920 * common.mk ($(srcdir)/revision.h): no need to show ifchange execution
because ifchange echos updated or unchaned.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-28 16:39:01 +00:00
nobu af9a5d5f30 * common.mk (up): force to update revision.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-28 16:26:25 +00:00
nobu d41b36ae5d * common.mk (up): pass MFLAGS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-28 16:06:14 +00:00
nobu d3560b76cf * common.mk (up): use last changed revision.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-28 15:52:16 +00:00
usa 73e3ea958d * common.mk (help): use double quotes for nmake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-28 00:35:48 +00:00
naruse 587167a8cb *common.mk: add description about "make clean".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-27 12:55:18 +00:00
naruse 2ae9745aed *common.mk: add description about "make golf".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-27 12:37:58 +00:00
naruse ce7cdcdd95 * common.mk (help): show major targets.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-27 09:19:00 +00:00
nobu dc05954472 * common.mk (version.$(OBJEXT)): depends on $(srcdir)/revision.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-25 10:38:46 +00:00
nobu 6d91bf3b0c * common.mk (revision.h): extracts revision number with ``svn info''.
* common.mk (up): target to update from the repository.

* Makefile.in, {win,bcc}32/Makefile.sub (IFCHANGE): tool to update a
  file if changed.

* tool/ifchange: for unixen.

* win32/ifchange.bat: some fix


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-25 09:27:30 +00:00
naruse 54a230bf7a * common.mk: use -Ks when read insns.def. [ruby-dev#33185]
* parse.y: fix -e and stdin strings aren't set encoding.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-20 00:15:20 +00:00
nobu 0052259d5e * common.mk (encdb.h): give output file name to make_encdb.rb.
* encoding.c (enc_table): simplified.

* encoding.c (enc_register_at): lazy loading.  [ruby-dev:33013]

* regenc.h (ENC_DUMMY): added.

* enc/make_encdb.rb: now emits macros only.

* enc/iso_2022_jp.h: split from encoding.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-17 14:56:22 +00:00
nobu ad73c8b348 * enc/utf_8.c: renamed as IANA name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-15 08:26:54 +00:00
usa 21365c4476 * common.mk (us_ascii.o): add dependecies. [ruby-dev:33111]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-15 04:45:02 +00:00
nobu 45a5455d7a * common.mk: simplified dummy objects dependencies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-14 16:28:49 +00:00
nobu 2e8965863d * common.mk (OBJS): moved encoding.o from COMMONOBJS.
* common.mk (dmyencoding.o): added.  [ruby-dev:33099]

* configure.in, {win,bcc}32/Makefile.sub (MINIOBJS): added
  dmyencoding.o.

* dmyencoding.c (rb_locale_charmap): returns nil for miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-14 16:19:02 +00:00
naruse 513d0ca7f6 * encoding.c (ENCINDEX_EUC_JP, ENCINDEX_SJIS): removed.
(rb_enc_init): EUC-JP and Shift_JIS are not builtin now.

* enc/Makefile.in: ditto.

* common.mk: ditto.

* ruby.c (proc_options): ditto.

* enc/shift_jis.c, enc/euc_jp.c: fixes for romove from builtin.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-13 02:51:15 +00:00
naruse 80a569906d * encoding.c (rb_enc_init): revert removing SJIS.
* enc/sjis.c: move to enc/shift_jis.c, to make encoding name equal to
  filename for convinience of loading lib.

* enc/shift_jis.c: moved from enc/sjis.c.

* common.mk: follows enc/shift_jis.c.

* enc/Makefile.in: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-13 01:15:32 +00:00
nobu 55fc559845 * common.mk (incs): includes encdb.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-13 00:22:35 +00:00
matz e699dda504 * enc/make_encdb.rb: should work on Ruby 1.8. [ruby-dev:33069]
* common.mk (encdb.h): pass enc dir from outside to make_encdb.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-12 16:55:33 +00:00
naruse 5b9739a832 * enc/make_encdb.rb: added. search enc/*.c and make encoding database.
* regenc.h (ENC_REPLICATE, ENC_ALIAS): added for defining replica
  encoding and encoding alias.

* encoding.c (rb_enc_init): move alias definitions to enc/*.c.
  (rb_enc_find_index): search original of replica and alias when no
  encoding library.
  (rb_enc_name_list, rb_enc_aliases_enc_i, rb_enc_aliases_str_i,
   rb_enc_aliases, Encoding.name_list, Encoding.aliases): added.
  (Init_Encoding): init encdb.

* enc/ascii.c, enc/us_ascii.c, enc/euc_jp.c, enc/sjis.c:
  add replica encoding and encoding alias difinition.

* common.mk (dist-clean-local): add rule for remvoe encdb.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-12 16:03:51 +00:00
usa b9127221e5 * common.mk, Makefile.in, */Makefile.sub (distclean-local): move
removing rule of ext/ripper/y.output from common.mk to Makefiles
	  that depend on platforms.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-07 06:53:39 +00:00
akr 5f237d7903 * encoding.c (rb_isalnum): defined.
(rb_isalpha): ditto.
  (rb_isblank): ditto.
  (rb_iscntrl): ditto.
  (rb_isdigit): ditto.
  (rb_isgraph): ditto.
  (rb_islower): ditto.
  (rb_isprint): ditto.
  (rb_ispunct): ditto.
  (rb_isspace): ditto.
  (rb_isupper): ditto.
  (rb_isxdigit): ditto.
  (rb_tolower): ditto.
  (rb_toupper): ditto.

* include/ruby/ruby.h: don't include include/ruby/encoding.h.
  (rb_isascii): defined.
  (rb_isalnum): declared.
  (rb_isalpha): ditto.
  (rb_isblank): ditto.
  (rb_iscntrl): ditto.
  (rb_isdigit): ditto.
  (rb_isgraph): ditto.
  (rb_islower): ditto.
  (rb_isprint): ditto.
  (rb_ispunct): ditto.
  (rb_isspace): ditto.
  (rb_isupper): ditto.
  (rb_isxdigit): ditto.
  (rb_tolower): ditto.
  (rb_toupper): ditto.
  (ISASCII): simplified.
  (ISPRINT): ditto.
  (ISSPACE): ditto.
  (ISUPPER): ditto.
  (ISLOWER): ditto.
  (ISALNUM): ditto.
  (ISALPHA): ditto.
  (ISDIGIT): ditto.
  (ISXDIGIT): ditto.
  (TOUPPER): ditto.
  (TOLOWER): ditto.

* include/ruby/encoding.h (rb_isascii): removed.
  (rb_isalnum): ditto.
  (rb_isalpha): ditto.
  (rb_isblank): ditto.
  (rb_iscntrl): ditto.
  (rb_isdigit): ditto.
  (rb_isgraph): ditto.
  (rb_islower): ditto.
  (rb_isprint): ditto.
  (rb_ispunct): ditto.
  (rb_isspace): ditto.
  (rb_isupper): ditto.
  (rb_isxdigit): ditto.
  (rb_tolower): ditto.
  (rb_toupper): ditto.

* common.mk: dependency updated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-03 08:44:01 +00:00
akr 506ea448b3 update dependency for alloca.o and dmydln.o.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-03 03:24:21 +00:00
akr 1144b9540e update golf dependency.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-03 03:11:45 +00:00
akr 0352d32f05 * util.c (ruby_strtoul): locale independent strtoul is implemented to
avoid "i".to_i(36) cause 0 under tr_TR locale.
  This is newly implemented, not a copy of missing/strtoul.c.

* include/ruby/ruby.h (ruby_strtoul): declared.
  (STRTOUL): defined to use ruby_strtoul.

* bignum.c, pack.c, ext/socket/socket.c: use STRTOUL.

* configure.in (strtoul): don't check.

* missing/strtoul.c: removed.

* include/ruby/missing.h (strtoul): removed.

* common.mk (strtoul.o): removed.

* LEGAL (missing/strtoul.c): removed.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-02 06:24:27 +00:00
akr 8bebb44d0b * common.mk (strcasecmp.o): removed.
(strncasecmp.o): removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-02 05:02:42 +00:00
akr 27bcfc3dc8 thread_pthread.c -> thread_$(THREAD_MODEL).c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-01 17:31:28 +00:00
akr 5f41f87d2b thread_pthread.h -> thread_$(THREAD_MODEL).h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-01 14:55:35 +00:00
akr bda6512f3e * common.mk: dependency updated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-01 14:17:37 +00:00
nobu 74dd31fadf * trunk/common.mk: not use -I$(srcdir)/lib with $(MINIRUBY) for cross
compiling.

* configure.in, {win,bcc}32/Makefile.sub (MINIRUBY): -I$(srcdir)/lib
  moved.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-30 21:50:40 +00:00
naruse 6c2849dd46 * configure.in: rm largefile.h.
* common.mk: clean golf, conf*, preludes, and so on.

* enc/depend: silent and ignore error for rm.

* enc/Makefile.in: should define prefix and exec_prefix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-30 02:00:59 +00:00
nobu 1b0ba5931d * common.mk (clean, distclean, realclean): should include clean-enc
and others.  [ruby-dev:32887]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-29 12:54:40 +00:00
usa 3bcd7c418b * common.mk (golf_prelude.c): use MINIRUBY instead of BASERUBY because
tool/compile_prelude.rb requires rbconfig.rb.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-27 15:03:14 +00:00
nobu d050e46b8c * common.mk (parse.c): depends on tool/ytab.sed.
* tool/ytab.sed: hack for bison 2.1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 12:26:11 +00:00
nobu 9b0bba0e37 * common.mk (realclean-enc): fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 07:18:44 +00:00
nobu 84d6f71195 * common.mk (clean-enc): clean encoding objects.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 07:15:18 +00:00
nobu 4496da18a8 * trunk/common.mk, goruby.c, golf_prelude.rb: for golfers.
* trunk/main.c (main): hook for embedding applications.

* trunk/tool/compile_prelude.rb: can change initialize function name.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 07:04:30 +00:00
nobu b7db9036be * common.mk (COMMONOBJS): transcode_data_*.c moved under enc/trans.
* transcode_data.h (rb_transcoding, rb_transcoder): prefixed.

* transcode.c (rb_register_transcoder, rb_declare_transcoder): split
  declaration and registration.  [ruby-dev:32704]

* transcode.c (transcode_dispatch): autoload pre-declared transcoder.

* transcode.c (str_transcode): use rb_define_dummy_encoding().

* transcode.c (Init_transcode): initialize transcoder tables.

* enc/trans/single_byte.c, enc/trans/japanese.c: moved from top.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 05:57:04 +00:00
nobu 0beb35a75c * common.mk (node_name.inc, miniprelude.c, prelude.c): nmake cannot
handle target vpath in other than implicit rules.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 08:40:59 +00:00
nobu 8d292a08df * Makefile.in, configure.in, lib/mkmf.rb, */Makefile.sub: specify
compiled output file name explicitly.

* enc/Makefile.in, enc/depend: now makes compiler to put generated
  files under directories corresnponding to the each source.
  enc/trans supported.

* enc/make_encmake.rb: evaluates depend file before Makefile.in so
  that the former can influence to CONFIG.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 03:49:56 +00:00
nobu 67d3013c5a * common.mk: should not pass MAKEFLAGS to recursive make.
+ normal make: MFLAGS are set and command line options and macros
    are all passed silently.
  + GNU make: ditto, and all options and macros in MAKEFLAGS are in
    effect.
  + nmake: MFLAGS is not set and MAKEFLAGS has only options without
    hyphen, no macros exist in any variables.
  + Borland make: ditto, and command line macros cannot override
    macros in makefile, so passing them is vain.

* {bcc32,win{32,ce}}/Makefile.sub (SET_MAKE): set MFLAGS which is not
  set by default, to get rid of chaotic situation of MFLAGS/MAKEFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 02:56:33 +00:00
ko1 f03abbce93 * common.mk: remove additional "-".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-23 18:41:17 +00:00
nobu c892851a25 * common.mk (srcs): new target to generated sources.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 18:22:43 +00:00
nobu c4bdd0f1ef * common.mk (encs, ext/ripper/ripper.c): MAKEFLAGS needs -.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 18:19:14 +00:00
usa d9c407981c * common.mk (version.o): add dependency. [ruby-dev:32680]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 09:21:38 +00:00
duerst 5ad8c5566d Sat Dec 22 15:45:45 2007 Martin Duerst <duerst@it.aoyama.ac.jp>
* transcode_data_one_byte: slightly optimized

	* transcode_data_japanese: new data file for EUC-JP and SHIFT_JIS
	  (not yet optimized; tests to follow; data from
	   http://nkf.sourceforge.jp/ucm/{SJIS|eucJP}-nkf.ucm)

	* common.mk, transcode.c: Adjusted for transcode_data_japanese



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 06:45:55 +00:00
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