Commit graph

788 commits

Author SHA1 Message Date
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