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

338 Коммитов

Автор SHA1 Сообщение Дата
nobu 79ccc677e7 * tool/file2lastrev.rb: unset PWD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-31 21:56:38 +00:00
ko1 8c6a26ab8e * tool/file2lastrev.rb (get_revisions): fix to ignore end of line.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-24 11:19:32 +00:00
usa 81031ebdcc * tool/file2lastrev.rb: shouldn't use single quote in shell's command
line if you want to support Windows.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-23 06:49:39 +00:00
yugui 59641944e9 * tool/file2lastrev.rb: detects vcs directory properly on building
outside of srcdir. [ruby-dev:37555] [ruby-dev:37561]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-23 06:39:48 +00:00
yugui c09e5abeee * Doxyfile.in: new file. Template of a configuration file for
Doxygen.
  Intorduces C-level API reference generation with Doxygen.

* tool/file2lastrev.rb: wrapper script that abstracts subversion
  and git-svn.

* tool/strip-rdoc.rb: filter for preventing doxygen from processing
  rdoc comments.

* configure.in: (Doxyfile): Doxyfile is generated together with
  Makefile.
  (PACKAGE): configuration $(PACKAGE) is necessary for $(docdir).

* instruby.rb: adds a new install target 'capi'

* common.mk (capi): new target that generates C API documents with
  Doxygen.
  (install-capi): new target.
  (pre-install-capi): ditto.
  (do-install-capi): ditto.
  (post-install-capi): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-22 13:19:08 +00:00
nobu aeec60621a * tool/make-snapshot (package): enc.mk in snapshot is dummy and should
not deal with objects.  [ruby-core:20422]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-08 15:54:05 +00:00
nobu 82a0e61e6e * tool/make-snapshot (package): added RM and CP. [ruby-dev:37288]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-06 09:33:20 +00:00
nobu b2a9e7c85a * tool/make-snapshot: binary encoding spec is no longer needed in 1.9.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-06 16:24:32 +00:00
yugui 2e376a1b96 * tool/make-snapshot.rb: merged from ruby_1_9_1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-28 08:21:57 +00:00
nobu b39833e1d7 * tool/make-snapshot: use String#bytesize.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-28 07:13:39 +00:00
yugui fe7ce06150 * configure.in ($MANTYPE): followed ruby.1, which had moved.
* instruby.rb (:man): ditto.

* mdoc2man.rb: fixed for the case Xr with 2 arguments.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-25 17:20:05 +00:00
yugui 89dfcd82f0 * mdoc2man.rb: moved into tools/.
* instruby.rb: followed the change of mdoc2man.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-21 04:19:56 +00:00
nobu 295c75cb7c * tool/generic_erb.rb: sends the result to stdout if no output option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-19 12:19:19 +00:00
nobu de85d6e92e * common.mk (srcs): removed ID_H_TARGET.
* tool/generic_erb.rb: always overwrites if no if-change option.

* template/id.h.tmpl: shows which token differs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-19 12:12:53 +00:00
yugui c2091e37ec * keywords, lex.c.src, opt_insn_unif.def, opt_operand.def: moved rarely changed
input files for code generators into defs/ directory.

* Makefile.in (lex.c): followed keywords and lex.c.src.

* common.mk (parser.o): followed keywords.
  (INSNS): followed opt_*.def

* tools/instruction.rb: followed opt_*.def.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-18 22:30:13 +00:00
duerst 7adbfbb793 * tool/transcode-tblgen.rb: added set_valid_byte_pattern
to reduce coupling between table generation script and
  specific encodings.

* enc/trans/single_byte.trans: using set_valid_byte_pattern


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-18 08:10:57 +00:00
nobu b025ce4678 * common.mk (ID_H_TARGET): phony target to update id.h.
* tool/ifchange, win32/ifchange.bat: --timestamp option added.

* tool/generic_erb.rb: --timestamp, --output and --if-change options
  added.

* template/id.h.tmpl: moved from id.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-17 10:46:23 +00:00
usa 68222eb417 * tool/insns2vm.rb: remove -Kn option in shebang line because it's
inconsistent with -Ks commandline option in common.mk.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-17 01:30:13 +00:00
duerst 48a303c027 * enc/trans/single_byte.trans: added windows-1252
* enc/trans/windows-1252-tbl.rb: new file
  (contributed by Yoshihiro Kambayashi)

* tool/transcode-tblgen.rb: listed windows-1252 as '1byte'

* test/ruby/test_transcode.rb: added test_windows_1252
  (contributed by Yoshihiro Kambayashi)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-14 04:37:10 +00:00
nobu a2ae773503 * common.mk (dist): nothing is need to run BASERUBY.
* tool/make-snapshot: new option -archname.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-26 09:40:04 +00:00
yugui 16c95b42ce * error.c (Init_syserr): moved to the template.
(errno_missing): removed. fixed [ruby-dev:35958].

* defs/knwon_errors.def: added. extracted from Init_syserr.

* templates/known_errors.inc.tmpl: added. Template for Init_syserr.
  c.f. [ruby-dev:35958].

* tools/generic_erb.rb: added. general purpose mapper which maps
  data+template into source code.

* common.mk (error.$(OBJEXT), incs, known_errors.inc):
  Fixed dependencies.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-26 08:18:49 +00:00
akr 6eb3843b17 * transcode_data.h (STR1_LENGTH): defined.
(makeSTR1LEN): defined.

* tool/transcode-tblgen.rb: use makeSTR1LEN.  generate STR1 for 4 to
  259 bytes.

* transcode.c (rb_transcoding): new field: output_index.
  (transcode_restartable0): use STR1_LENGTH.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-15 15:42:30 +00:00
mame a4a3c85558 * tool/compile_prelude.rb: print "<internal:prelude>" instead of
"prelude.rb" on stack trace.  [ruby-dev:36129]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-10 14:07:13 +00:00
akr 06d8db19cb * tool/transcode-tblgen.rb (StrSet#hash): cache hash value.
(ActionMap#hash): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-09 16:59:53 +00:00
akr 6270ad5b7f * include/ruby/encoding.h (rb_econv_asciicompat_encoding): renamed
from rb_econv_stateless_encoding to apply stateless ASCII
  incompatible encodings such as UTF-16BE.

* io.c (make_writeconv): use rb_econv_asciicompat_encoding.

* transcode_data.h (rb_transcoder_asciicompat_type_t): renamed from
  rb_transcoder_stateful_type_t.
  (rb_transcoder): use rb_transcoder_asciicompat_type_t.

* transcode.c: follow the type change.
  (asciicompat_encoding_i): renamed from stateless_encoding_i.
  (rb_econv_asciicompat_encoding): renamed from
  rb_econv_stateless_encoding.
  (econv_s_asciicompat_encoding): method renamed.

* tool/transcode-tblgen.rb: follow the type change.

* enc/trans/utf_16_32.trans: follow the type change.
  rb_from_UTF_16BE to UTF-8 is asciicompat_decoder.
  rb_from_UTF_16LE to UTF-8 is asciicompat_decoder.
  rb_from_UTF_32BE to UTF-8 is asciicompat_decoder.
  rb_from_UTF_32LE to UTF-8 is asciicompat_decoder.
  UTF-8 to rb_to_UTF_16BE is asciicompat_encoder.
  UTF-8 to rb_to_UTF_16LE is asciicompat_encoder.
  UTF-8 to rb_to_UTF_32BE is asciicompat_encoder.
  UTF-8 to rb_to_UTF_32LE is asciicompat_encoder.

* enc/trans/newline.trans: follow the type change.  universal newline
  decoder is asciicompat_converter.

* enc/trans/escape.trans: follow the type change.

* enc/trans/iso2022.trans: ditto.

* enc/trans/japanese.trans: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-08 14:33:17 +00:00
akr 1625494feb * tool/transcode-tblgen.rb (ArrayCode): less string substitutions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-08 09:16:45 +00:00
akr 08c3dd54bf * tool/transcode-tblgen.rb (transcode_tblgen): log message refined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-07 16:11:40 +00:00
akr faa1387484 * enc/trans/escape.trans: use transcode_tblgen.
* tool/transcode-tblgen.rb: generate an empty line after str1.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-07 10:46:30 +00:00
akr eee75cc1a6 * tool/transcode-tblgen.rb (ActionMap#str_name): new method to
generate a name base on string content.
  (ActionMap#gen_str): extracted from generate_info and use str_name.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-07 10:17:52 +00:00
akr dcdc7579c5 * tool/transcode-tblgen.rb (ActionMap#generate_info): use a memo to
avoid duplication for STR1.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-07 09:30:54 +00:00
akr c0bec2fae1 * transcode_data.h (STR1): defined for a string up to 255 bytes.
(STR1_BYTEINDEX): defined.
  (makeSTR1): defined.

* tool/transcode-tblgen.rb: generate STR1.

* transcode.c (transcode_restartable0): interpret STR1.

* enc/trans/escape.trans (fun_so_escape_xml_chref): removed.  STR1 is
  used instead.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-07 09:13:16 +00:00
akr 78543725eb * tool/transcode-tblgen.rb: o4 is usable only if the first byte is
f0-f7.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-07 08:30:32 +00:00
akr fb9c53dea5 * tool/transcode-tblgen.rb (StrSet.parse): accept upper case
hexadecimal digits.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-05 21:24:42 +00:00
nobu 783541e0a4 * tool/transcode-tblgen.rb (citrus_decode_mapsrc): support older 1.8.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-04 01:43:50 +00:00
akr f6441bf61c * transcode_data.h (rb_transcoding): remove stateful field.
add state field.
  (TRANSCODING_STATE): defined.
  (rb_transcoder): add fields: state_size, state_init_func,
  state_fini_func.
  change rb_transcoding* argument to void*.

* transcode.c (transcode_restartable0): use TRANSCODING_STATE for
  first arguments of transcoder functions.
  (rb_transcoding_open_by_transcoder): initialize state field.
  (rb_transcoding_close): finalize state field.

* tool/transcode-tblgen.rb: provide state size/init/fini.

* enc/trans/newline.trans (universal_newline_init): defined.
  (fun_so_universal_newline): take void* as a state pointer.
  (rb_universal_newline): provide state size/init/fini.
  (rb_crlf_newline): ditto.
  (rb_cr_newline): ditto.

* enc/trans/iso2022.trans (iso2022jp_init): defined.
  (fun_si_iso2022jp_to_eucjp): take void* as a state pointer.
  (fun_so_iso2022jp_to_eucjp): ditto.
  (fun_so_eucjp_to_iso2022jp): ditto.
  (iso2022jp_reset_sequence_size): ditto.
  (finish_eucjp_to_iso2022jp): ditto.
  (rb_ISO_2022_JP_to_EUC_JP): provide state size/init/fini.
  (rb_EUC_JP_to_ISO_2022_JP): ditto.

* enc/trans/utf_16_32.trans (fun_so_from_utf_16be): take void* as a
  state pointer.
  (fun_so_to_utf_16be): ditto.
  (fun_so_from_utf_16le): ditto.
  (fun_so_to_utf_16le): ditto.
  (fun_so_from_utf_32be): ditto.
  (fun_so_to_utf_32be): ditto.
  (fun_so_from_utf_32le): ditto.
  (fun_so_to_utf_32le): ditto.
  (rb_from_UTF_16BE): provide state size/init/fini.
  (rb_to_UTF_16BE): ditto.
  (rb_from_UTF_16LE): ditto.
  (rb_to_UTF_16LE): ditto.
  (rb_from_UTF_32BE): ditto.
  (rb_to_UTF_32BE): ditto.
  (rb_from_UTF_32LE): ditto.
  (rb_to_UTF_32LE): ditto.

* enc/trans/japanese.trans (fun_so_eucjp2sjis): take void* as a state
  pointer.
  (fun_so_sjis2eucjp): ditto.
  (rb_eucjp2sjis): provide state size/init/fini.
  (rb_sjis2eucjp): provide state size/init/fini.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-03 14:12:06 +00:00
akr 6378201f8b * transcode_data.h (WORDINDEX_SHIFT_BITS): defined.
(WORDINDEX2INFO): defined.
  (INFO2WORDINDEX): defined.

* tool/transcode-tblgen.rb: use WORDINDEX2INFO.

* transcode.c: use INFO2WORDINDEX.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19093 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-03 12:35:29 +00:00
akr 4277473d5b * transcode_data.h (rb_transcoder): new field: byte_array_length and
word_array_length.

* tool/transcode-tblgen.rb (transcode_generated_code): generate
  byte_array_length and word_array_length.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-03 11:48:17 +00:00
akr 9233dc9bf4 * tool/transcode-tblgen.rb (ArrayCode): new class.
(ActionMap#gen_array_code): moved to ArrayCode.
  (ActionMap#numelt_array_code): ditto.
  (ActionMap#array_code_insert_at_last): ditto.
  (TRANSCODE_GENERATED_BYTES_CODE): use ArrayCode.
  (TRANSCODE_GENERATED_WORDS_CODE): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-03 11:36:04 +00:00
akr 8108417c5e * tool/transcode-tblgen.rb (ActionMap#gen_array_code): extracted from
generate_lookup_node.
  (ActionMap#numelt_array_code): ditto.
  (ActionMap#array_code_insert_at_last): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-03 11:07:16 +00:00
akr 41e1933fd8 * transcode_data.h (base_element): removed.
(BYTE_LOOKUP): removed.
  (BYTE_LOOKUP_BASE): don't cast.
  (BYTE_LOOKUP_INFO): ditto.
  (PType): unsigned int, instead of uintptr_t.
  (rb_transcoding): change type of next_field, conv_tree_start and
  word_array.

* tool/transcode-tblgen.rb: generate word_array as array of unsigned
  int.

* transcode.c (transcode_restartable0): follow the above type change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-02 13:26:02 +00:00
akr 39f172f9d7 * tool/transcode-tblgen.rb: add prefix for byte_array and word_array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-02 12:22:56 +00:00
akr 5727e9c980 * tool/transcode-tblgen.rb: comment removed in generated code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 18:26:58 +00:00
akr c5759bfb5b * tool/transcode-tblgen.rb: define TRANSCODE_TABLE_INFO in generated
code.  use it in rb_transcoder.

* enc/trans/newline.trans: use TRANSCODE_TABLE_INFO.

* enc/trans/iso2022.trans: ditto.

* enc/trans/utf_16_32.trans: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 18:18:50 +00:00
akr 6058eeaf03 * tool/transcode-tblgen.rb: record infos and BYTE_LOOKUPs as index of
word_array to avoid relocation.

* transcode.c (transcode_restartable0): add word_array to get infos
  and BYTE_LOOKUPs.

* transcode_data.h (BYTE_LOOKUP_INFO): change return type to
  uintptr_t.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 18:06:28 +00:00
akr 3b090adf7c * tool/transcode-tblgen.rb: don't need to cast offsets array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 17:49:13 +00:00
akr 7908180df1 * tool/transcode-tblgen.rb: record offsets array as index of
byte_array to avoid relocation.

* transcode.c (transcode_restartable0): add byte_array to get offsets
  array.

* transcode_data.h (BYTE_LOOKUP_BASE): change return type to
  uintptr_t.
  (rb_transcoder): add fields: byte_array, word_array and word_size.

* enc/trans/newline.trans: follow rb_transcoder change.

* enc/trans/iso2022.trans: ditto.

* enc/trans/utf_16_32.trans: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 17:40:32 +00:00
akr 6c835ee50a * tool/transcode-tblgen.rb: make infos arrays and BYTE_LOOKUPs into
single array.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 17:06:07 +00:00
akr 752e053a1d * transcode_data.h (BYTE_LOOKUP): change to uintptr_t array.
(BYTE_LOOKUP_BASE): follow the type change.
  (BYTE_LOOKUP_INFO): ditto.
  (PType): ditto.
  (rb_transcoding): ditto.

* tool/transcode-tblgen.rb: follow the type change.

* transcode.c: ditto.

* enc/trans/newline.trans: ditto.

* enc/trans/iso2022.trans: ditto.

* enc/trans/utf_16_32.trans: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 16:22:49 +00:00
akr edf1d608c7 * tool/transcode-tblgen.rb: gather infos arrays and BYTE_LOOKUPs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 14:16:30 +00:00
akr 339dfc32a7 * tool/transcode-tblgen.rb: make offsets arrays into single array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 13:21:06 +00:00
akr 03ec9b1aac * tool/transcode-tblgen.rb: gather offsets array at top.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 12:52:58 +00:00
akr 9f8cf6559a * tool/transcode-tblgen.rb: ValidEncoding['eucJP-ms'] defined.
"\xA2\xAF".encode("utf-8", "eucJP-ms") should raise
  Encoding::ConversionUndefined, not Encoding::InvalidByteSequence.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 10:38:16 +00:00
naruse 7ae5e9c960 * tool/transcode-tblgen.rb (transcode_compile_tree): use the first
mapping when some mappings are given for a character.
  [ruby-dev:36068]

* tool/transcode-tblgen.rb: expandtab.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 05:54:36 +00:00
usa ae80b4fac2 * tool/transcode-tblgen.rb: set ERB source filename for error message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 05:39:48 +00:00
akr 0f81455429 * tool/transcode-tblgen.rb: change "illegal" to "invalid".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 17:49:08 +00:00
akr 8841969485 * tool/transcode-tblgen.rb (transcode_generated_code): defined for
generating table at once.
  (transcode_tblgen): returns an empty string.
  (transcode_generate_node): ditto.

* enc/trans/newline.trans: use transcode_generated_code.

* enc/trans/iso2022.trans: ditto.

* enc/trans/single_byte.trans: ditto.

* enc/trans/utf_16_32.trans: ditto.

* enc/trans/japanese.trans: ditto.

* enc/trans/korean.trans: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 17:35:00 +00:00
akr 6b2efe107f * tool/transcode-tblgen.rb (citrus_decode_mapsrc): print logging
message on STDERR.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 17:10:45 +00:00
naruse 1893e19865 * tool/transcode-tblgen.rb: add table generator from Citrus maps.
* enc/trans/japanese.trans: use Citrus maps.

* enc/trans/CP: add maps from Citrus.

* enc/trans/JIS: ditto.

* test/ruby/test_transcode.rb: Shift_JIS and EUC-JP doesn't support
  IBM extended characters.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 16:23:04 +00:00
yugui 42307bf41f * common.mk (dist): tool/make-snapshot is executable.
* tool/make-snapshot (package): supported release numbers 1.9.0-x.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-25 17:47:57 +00:00
akr a55e167b68 * transcode_data.h (rb_transcoder_stateful_type_t): defined.
(rb_transcoder): add field: stateful_type.

* tool/transcode-tblgen.rb: generate stateful_type field as
  stateless_converter.

* enc/trans/iso2022.trans: follow rb_transcoder change.

* enc/trans/newline.trans: ditto.

* enc/trans/utf_16_32.trans: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-15 23:13:01 +00:00
akr 74a36d5d1f * include/ruby/encoding.h (rb_econv_output): declared.
* transcode_data.h (rb_transcoder): add resetsize_func field.

* enc/trans/iso2022.trans (iso2022jp_reset_sequence_size): defined.
  (rb_EUC_JP_to_ISO_2022_JP): provede resetsize_func.

* tool/transcode-tblgen.rb: set NULL for resetsize_func.

* transcode.c (rb_econv_output): new function for inserting output.
  (output_replacement_character): use rb_econv_output.
  (transcode_loop): check return value of
  output_replacement_character.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14 15:56:39 +00:00
akr be51387d55 * tool/transcode-tblgen.rb: check unexpected actions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14 11:53:47 +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 7caecdbe38 * tool/make-snapshot: try to find exported directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 01:45:35 +00:00
nobu 12096f588f * tool/make-snapshot: fix for enc.mk.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 10:11:11 +00:00
matz 6885f3b708 * tool/transcode-tblgen.rb (#transcode_tblgen): slight message
improvement.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 09:25:19 +00:00
akr 5ade93542f * transcode_data.h (TRANSCODE_ERROR): removed.
* tool/transcode-tblgen.rb: 8bit byte of ASCII-8BIT is a valid
  (but unique to ASCII-8BIT) character.

* transcode.c (rb_eConversionUndefined): new error.
  (rb_eInvalidByteSequence): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 07:20:10 +00:00
akr 94ca2d94de * transcode_data.h (rb_transcoder): add resetstate_func field for
resetting a state of stateful encoding.

* enc/trans/iso2022.trans (rb_EUC_JP_to_ISO_2022_JP): specify
  finish_eucjp_to_iso2022jp for resetstate_func.

* tool/transcode-tblgen.rb: specify NULL for resetstate_func.

* transcode.c (output_replacement_character): call resetstate_func
  before appending the replacement character.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-11 22:44:23 +00:00
akr 2897632f16 * enc/trans/iso2022.trans: renamed from iso2022.erb.c.
* enc/trans/single_byte.trans: ditto.

* enc/trans/utf_16_32.trans: ditto.

* enc/trans/korean.trans: ditto.

* enc/trans/japanese.trans: ditto.

* enc/depend: follow the renaming.

* tool/build-transcode: ditto.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-11 07:39:52 +00:00
akr 30e90a335d * tool/transcode-tblgen.rb: record checksum of
transcode-tblgen.rb itself.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-10 09:10:58 +00:00
nobu e3d9fc76e6 * enc/Makefile.in (make-workdir): use MAKEDIRS.
* enc/depend: makes target directory before compile/link.

* tool/transcode-tblgen.rb: creates target directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-10 02:45:18 +00:00
akr 139234e1a0 * transcode_data.h (rb_transcoding): add fields for restartable
transcoding.
  (rb_transcoder): add max_input field.
  from_unit_length field is renamed to input_unit_length.

* tool/transcode-tblgen.rb: generate max_input field.

* enc/trans/iso2022.erb.c: follow rb_transcoder change.

* enc/trans/utf_16_32.erb.c: ditto.

* transcode.c (PARTIAL_INPUT): new constant.
  (transcode_char_start): new function.
  (transcode_result_t): new type.
  (transcode_restartable): new function.
  (more_output_buffer): new function.
  (transcode_loop): use transcode_restartable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-09 06:02:01 +00:00
akr 2833d9f95d * transcode_data.h (rb_transcoder): from_unit_length field added.
from_utf8 field removed.

* tool/transcode-tblgen.rb: generate offsets range.
  follow rb_transcoder change.

* transcode.c (transcode_loop): don't use from_utf8.
  make invalid region from_unit_length wise.

* enc/trans/iso2022.erb.c: follow rb_transcoder and 
  transcode_generate_node change.

* enc/trans/utf_16_32.erb.c: follow rb_transcoder and
  transcode_generate_node change.
  explicit :invalid map removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-08 15:48:17 +00:00
akr 1504652373 * transcode_data.h (rb_transcoding): new field "stateful".
(rb_transcoder): preprocessor and postprocessor field removed.
  change arguments of func_ii, func_si, func_io and func_so.
  new field "finish_func".

* tool/transcode-tblgen.rb: make FUNii, FUNsi and FUNio
  generatable.

* transcode.c (transcoder_lib_table): removed.
  (transcoder_table): change structure.
  (transcoder_key): removed because the above structure change.
  (make_transcoder_entry): new function.
  (get_transcoder_entry): ditto.
  (rb_register_transcoder): follow the structure change.
  (declare_transcoder): ditto.
  (transcode_search_path): new function for breadth first search to
  find a list of converters.
  (transcode_search_path_i): new function.
  (transcode_dispatch_cb): ditto.
  (transcode_dispatch): use transcode_search_path.
  (transcode_loop): follow the argument change.
  (str_transcode): preprocessor and postprocessor stuff removed.

* enc/trans/iso2022.erb.c: new file.  ISO-2022-JP conversion
  re-implemented.

* enc/trans/japanese.erb.c: ISO-2022-JP stuff removed.

nute(23:52:53)% head -40 ChangeLog
Thu Aug  7 23:43:11 2008  Tanaka Akira  <akr@fsij.org>

* transcode_data.h (rb_transcoding): new field "stateful".
  (rb_transcoder): preprocessor and postprocessor field removed.
  change arguments of func_ii, func_si, func_io and func_so.
  new field "finish_func".

* tool/transcode-tblgen.rb: make FUNii, FUNsi and FUNio
  generatable.

* transcode.c (transcoder_lib_table): removed.
  (transcoder_table): change structure.
  (transcoder_key): removed because the above structure change.
  (make_transcoder_entry): new function.
  (get_transcoder_entry): ditto.
  (rb_register_transcoder): follow the structure change.
  (declare_transcoder): ditto.
  (transcode_search_path): new function for breadth first search to
  find a list of converters.
  (transcode_search_path_i): new function.
  (transcode_dispatch_cb): ditto.
  (transcode_dispatch): use transcode_search_path.
  (transcode_loop): follow the argument change.
  (str_transcode): preprocessor and postprocessor stuff removed.

* enc/trans/iso2022.erb.c: new file.  ISO-2022-JP conversion
  re-implemented.

* enc/trans/japanese.erb.c: ISO-2022-JP stuff removed.

* enc/trans/utf_16_32.erb.c: follow argument change of FUNso.

[ruby-dev:35798]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 14:53:30 +00:00
akr e22b3b773d * tool/transcode-tblgen.rb (transcode_generate_node): code
argument removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 13:42:21 +00:00
akr 5adb247914 * tool/transcode-tblgen.rb: distinguish UNDEF and INVALID.
[ruby-dev:35709]

* transcode.c (transcode_loop): don't need rb_enc_mbclen now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 11:47:14 +00:00
akr 2ec44b3d7f * tool/transcode-tblgen.rb (ActionMap#eql?): use == to compare @map.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-05 23:00:01 +00:00
akr e90dd02529 * tool/transcode-tblgen.rb: show generating tables in verbose mode.
(transcode_generate_node): call ActionMap#generate_node with showing
  table name.

* enc/trans/utf_16_32.erb.c: use transcode_generate_node.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-05 22:47:44 +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
akr f694ec83e8 * tool/build-transcode: new file.
* tool/transcode-tblgen.rb: new file.

* enc/trans/make_transdb.rb: exclude *.erb.c.

* enc/depend: exclude *.erb.c.

* enc/trans/utf_16_32.erb.c: new file.

* enc/trans/single_byte.erb.c: new file.

* enc/trans/japanese.erb.c: new file.

* enc/trans/korean.erb.c: new file.

* enc/trans/iso-8859-2-tbl.rb: new file.

* enc/trans/iso-8859-3-tbl.rb: new file.

* enc/trans/iso-8859-4-tbl.rb: new file.

* enc/trans/iso-8859-5-tbl.rb: new file.

* enc/trans/iso-8859-6-tbl.rb: new file.

* enc/trans/iso-8859-7-tbl.rb: new file.

* enc/trans/iso-8859-8-tbl.rb: new file.

* enc/trans/iso-8859-9-tbl.rb: new file.

* enc/trans/iso-8859-10-tbl.rb: new file.

* enc/trans/iso-8859-11-tbl.rb: new file.

* enc/trans/iso-8859-13-tbl.rb: new file.

* enc/trans/iso-8859-14-tbl.rb: new file.

* enc/trans/iso-8859-15-tbl.rb: new file.

* enc/trans/eucjp-tbl.rb: new file.

* enc/trans/sjis-tbl.rb: new file.

* enc/trans/euckr-tbl.rb: new file.

* enc/trans/utf_16_32.c: regenerated.

* enc/trans/single_byte.c: regenerated.

* enc/trans/japanese.c: regenerated.

* enc/trans/korean.c: regenerated.

[ruby-dev:35730]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-05 12:32:13 +00:00
ko1 a056546f0d * tool/instruction.rb: RubyVM is not module.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 11:46:48 +00:00
ko1 eb33f91cb7 * compile.c, insns.def, vm.c, vm_core.h: remove some insns
(undef, alias, definemethod).
  Call RubyVM::FrozenCore's singleton method instead.
  Add "putiseq" and "putspecialobject" instructions.
* id.c, id.h: add ids for above.
* tool/parse.rb: "VM" no longer exists.  Use RubyVM instead.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 03:05:58 +00:00
nobu 7ae9072fdf * tool/make-snapshot: ported to ruby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21 06:31:18 +00:00
nobu 50d48fcfc8 * tool/make-snapshot: fixed digets.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-20 23:39:45 +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 feb400081b * tool/make-snapshot: fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-20 03:19:38 +00:00
nobu 0a3b487504 * tool/make-snapshot: supported multiple snapshots.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 12:35:35 +00:00
nobu 59432db7f7 * vm_core.h (rb_num_t): moved form vm.h.
* tool/instruction.rb (RubyVM::Instruction#sp_increase_c_expr),
  tool/instruction.rb (RubyVM::VmBodyGenerator#make_header_operands):
  omit unused variables.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-23 03:23:08 +00:00
nobu a06fc80da6 * tool/compile_prelude.rb: allows extra suffix after .c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-06 01:22:21 +00:00
nobu 5c1926ac82 * compile.c (iseq_set_sequence, iseq_insns_unification,
insn_data_to_s_detail): constified.

* iseq.c (insn_operand_intern, ruby_iseq_disasm_insn): ditto.

* template/{insns_info,opt_sc,optunifs}.inc.tmpl: ditto.

* tool/instruction.rb (OptUnifsIncGenerator): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 00:00:48 +00:00
nobu e31eeedb94 * tool/make-snapshot: prefixed r makes $revision always true.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-01 08:45:04 +00:00
matz 22dc58bf97 * tool/make-snapshot: make prereq uses MINIRUBY.
* tool/make-snapshot: allow packaging like 1.9.0-1 by second
  command-line argument.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-01 05:13:28 +00:00
akr ab12f27fb5 * tool/compile_prelude.rb (C_ESC): use octal escape to avoid
"\x09for (;;) ..." to be interpret the first character 0x9f.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-01 02:45:47 +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
nobu 8af627ba4a * tool/ifchange: commit miss.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-25 10:22:32 +00:00
nobu 76e845505a * tool/ytab.sed: skip yydestruct hack unless yymsg exists, for bison
1.8 series.  [ruby-dev:32825]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-28 02:46:06 +00:00
ko1 dccf2b9255 * insns2vm.rb: add encoding option to shbang.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 13:46:55 +00:00
nobu f64fc63cec * tool/make-snapshot: add version number.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 12:44:52 +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 a99c3a6e9d * tool/make-snapshot: argument check, and cleanup exported directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 11:24:50 +00:00
eban 7847c1b860 * tool/make-snapshot: more portable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 11:14:38 +00:00
nobu b2258b6482 * tool/make-snapshot (revision): sed does not support +.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 11:03:28 +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
eban efd4bbde49 * tool/make-snapshot: must create configure and lex.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 18:24:15 +00:00
ko1 835c8d9d48 * tool/compile.rb, getrev.rb, runruby.rb: remove unused tools.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 07:06:03 +00:00
akr 29cbf75cd0 * tool/serb.rb: removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 06:29:43 +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
ko1 c375b2f420 * tool/insns2vm.rb: moved from lib/vm/instruction.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 01:34:09 +00:00
nobu 0fe66f38cc * tool/insns2vm.rb: set property.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 01:26:30 +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
nobu bd79a2eb2d * win32/enc-setup.mak: extracts BUILTIN_ENCOBJS.
* tool/compile_prelude.rb: needs srcdir.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 12:41:27 +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
akr 7d6eb8e68b * tool/compile_prelude.rb: fix TMP_RUBY_PREFIX for relative load path
environment.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 09:07:45 +00:00
akr 790f631301 escape "{" too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 08:33:10 +00:00
akr 479c06d19d * tool/compile_prelude.rb: absolute path may not start with a slash.
pointed by usa.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 08:30:07 +00:00
akr f1bc46f06d * tool/compile_prelude.rb: fix first substitution.
use constant for prefix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 08:08:40 +00:00
akr afb554d90a * tool/compile_prelude.rb: use constant for prefix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 03:32:26 +00:00
akr 3b37c74564 * tool/compile_prelude.rb: use simple template system for source
code generation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 03:26:20 +00:00
matz 4c56aaa162 * tool/compile_prelude.rb (c_esc): need to escape closing brace.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 03:15:37 +00:00
akr af6a9d70b2 * tool/compile_prelude.rb: adjust RbConfig::CONFIG paths relative
to the installation path.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-15 02:54:55 +00:00
ko1 3688c7a1ee * tool/makedocs.rb, template/insnstbl.html: removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-13 22:09:43 +00:00
nobu c4af7f51b7 * tool/ytab.sed: get rid of GNU sed feature. a patch from Laurent
Sansonetti <laurent.sansonetti AT gmail.com> in [ruby-core:13470].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-13 15:15:39 +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 53d2cd2435 add comment for interpreter issue.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 16:33:30 +00:00
akr 7cb1a184c8 don't use 1.9 feature.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 11:22:28 +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
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 2f17991bd1 * tool/compile_prelude.rb: fix to include "vm_core.h".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-24 23:49:19 +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
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
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 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
nobu d942a9a1ee * vm_evalbody.ci, insns.def, vm.c, tool/insns2vm.rb (rb_num_t):
renamed to get rid of name clash.  [ruby-dev:30504]

* yarvcore.c (ruby_thread_init): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-03 09:09:14 +00:00
ko1 42ce75cdff * compile.c, insns.def: remove (get|set)instancevariable2 and add a
operand is_local to (get|set)instancevariable.
* yarvtest/test_class.rb: add a test for class local instance variable.
* parse.y (rb_decompose_ivar2): remove unused variable oid.
* tool/insns2vm.rb: remove needless require.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-06 05:22:17 +00:00
nobu 4102b12e1f * common.mk (*.inc): use VPATH.
* vm_opts.h: renamed from vm_opts.h.base.

* tool/insns2vm.rb: use vm_opts.h in VPATH.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-06 01:03:55 +00:00
matz 24b92a848c * tool/compile.rb: replace YARVCore by VM class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-29 15:11:32 +00:00
matz 024c694c95 * tool/parse.rb: replace YARVCore by VM class.
http://d.hatena.ne.jp/ysano2005/20070128

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-29 05:16:38 +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