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

334 Коммитов

Автор SHA1 Сообщение Дата
nobu 6733142c71 * common.mk (parse.h): fake rule.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 14:42:55 +00:00
knu 5068e137d0 * common.mk: regint.h no longer includes vm_core.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 08:30:21 +00:00
knu 5f5b25d234 * common.mk (prelude.c, golf_prelude.c): Using $(COMPILE_PRELUDE)
requires $(RBCONFIG).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 06:15:52 +00:00
knu 8cb7595f7e * common.mk (realclean-local): Remove parse.h as well.
* common.mk: Add missing dependencies regarding vm_core.h, id.h,
  parse.c (parse.h), etc..



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 05:56:33 +00:00
nobu ab0ee1d5e9 * common.mk (parse.c): generates parse.h together.
* id.c, id.h: use constants for parser tokens.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 05:00:26 +00:00
nobu eaa1bcab35 * tool/make-snapshot: fix for clean up.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 04:09:15 +00:00
nobu 13f1418d54 * enc/Makefile.in (.SUFFIXES): renamed to .trans.
* enc/make_encmake.rb: added --encs and --no-encs options.

* enc/depend (TRANSVPATH): fix for nmake.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 05:25:14 +00:00
mame 4d763fb8ee * encoding.c: include util.h. [ruby-dev:35715]
* common.mk: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-10 13:25:34 +00:00
nobu 3ba7984ef4 * common.mk (extconf): use MAKEDIRS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-10 02:03:01 +00:00
naruse a596f3a7e6 * common.mk: encs depend on transdb.h
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-09 12:41:50 +00:00
naruse e6a8cc7e2b * common.mk (enk.mk): give not RUBY but MINIRUBY.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-08 12:10:15 +00:00
nobu b68b9ec698 * common.mk (enc.mk): mkmf.rb requires rbconfig.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-08 07:52:57 +00:00
nobu 2293171034 * common.mk (srcs-enc): renamed from transcodes.
* enc/Makefile.in (make-workdir): creates object directories.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-08 07:44:42 +00:00
nobu 62914a1209 * common.mk (encdb.h): see both $(srcdir)/enc and enc.
* enc/make_encdb.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-08 07:17:27 +00:00
naruse b41a687fe6 * common.mk: see both $(srcdir)/enc/trans and enc/trans.
* enc/trans/make_transdb.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 19:24:47 +00:00
nobu 2ce5ff1ac1 * Makefile.in, common.mk, {bcc,win}32/Makefile.sub (clean-ext): do not
use miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 07:28:56 +00:00
naruse 403d0334c1 * common.mk: mkdir enc/trans before build tables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 20:44:31 +00:00
nobu 8db17b30d6 * common.mk (transdb.h): requires transcoders.
* enc/depend (srcs): target for transcoders.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 05:40:13 +00:00
nobu 0031e09170 * common.mk (transcodes), tool/build-transcode: generates transcode
sources.

* enc/trans/{japanese,korean,single_byte,utf_16_32}.c: to be
  autogenerated now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-05 18:56:42 +00:00
yugui f1af3aed01 Merged r16430(akr), r16431(akr), r16433(akr), r16469(nobu), and
r17874(akr) from ruby_1_8.

* Makefile.in (update-rubyspec): added

* Makefile.in (test-rubyspec): added

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-01 14:27:21 +00:00
nobu db093f2d39 * common.mk (process.o): depends on util.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-10 21:16:28 +00:00
nobu d3b61c079e * common.mk: folded longer rules
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 04:20:49 +00:00
nobu 1971a0c853 * common.mk (RUBY_H_INCLUDES): common headers which are included with
ruby.h together.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-30 14:01:53 +00:00
shyouhei a889f3405f * tool/make-snapshot: do not use sha256sum; use BASERUBY instead
* common.mk (dist): use tool/make-snapshot instead


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-20 16:02:21 +00:00
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