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

297 Коммитов

Автор SHA1 Сообщение Дата
nobu 07e4aa67e1 gmake.mk: multi mspec
* defs/gmake.mk (MSPECOPT): enable multi exec if parallel make.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-26 01:21:57 +00:00
nobu 5242bca205 defs/gmake.mk: update again after comit [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-11 13:24:08 +00:00
nobu 2ebc44656f make commit [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-09 01:06:09 +00:00
nobu 2a20b491f0 great love
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-08 13:52:32 +00:00
nobu 6e0967ec6d fix for cross-compiling
* common.mk (test-rubyspec): add dependency for cross-compiling.

* defs/gmake.mk: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-03-02 04:54:18 +00:00
nobu 532bbd4ebf fix circular dependencies
* defs/gmake.mk (TEST_DEPENDS): remove targets expanded as
  TEST_TARGETS, to get rid of circular dependencies.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-23 04:10:41 +00:00
nobu 2251051177 gmake.mk: mflags without -jN
* defs/gmake.mk (mflags): override the definition in common.mk
  without -jN option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-15 10:51:58 +00:00
nobu c59f2b0382 gmake.mk: test-ruby
* defs/gmake.mk (ORDERED_TEST_TARGETS): add test-ruby target, test
  for ruby core without bundled libraries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-13 15:28:25 +00:00
nobu 44e36c79d2 gmake.mk: tests step
* defs/gmake.mk (TEST_TARGETS): run tests step by step.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-13 05:11:14 +00:00
nobu be92fcabf9 gmake.mk: -n for tests
* defs/gmake.mk (gnumake_recursive): do not invoke tests if -n
  option is given.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-12 23:37:28 +00:00
nobu 2c51dc5053 parse.y: logop
* defs/id.def (predefined): add keywords `and` and `or`.

* parse.y (log_op): unify parser and ripper, and use tokens
  instead of node types and symbols.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-12 08:33:33 +00:00
nobu a062d030eb parse.y: call_uni_op
* defs/id.def (predefined): add keyword `not`.

* parse.y (call_uni_op): unify parser and ripper, and use IDs
  instead of tokens.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-12 04:20:35 +00:00
nobu 92b710e64b MFLAGS for nmake
* common.mk (mflags): pass make flags to sub-makes, for nmake
  which cannot pass them by the environment variable.

* defs/gmake.mk (mflags): filter out -j option for sub-makes.

* template/exts.mk.tmpl (MFLAGS): extract MFLAGS from sub extmk
  files for nmake.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-10 06:12:22 +00:00
nobu 715094c2de parse.y: fix idCOLON2
* defs/id.def: remove idDSTAR and idCOLON3.

* parse.y (tCOLON2): make same as id.h.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-09 07:53:52 +00:00
nobu 0fe47fad55 test/unit.rb: share job slots
* test/lib/test/unit.rb (Test::Unit::Parallel#_run_parallel):
  share job slots with GNU 'make'.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-03 12:52:09 +00:00
nobu 5f69a2e5a4 separated_version.mk: option for linux [ci skip]
* defs/separated_version.mk (RUBY_VERSION_DLDFLAGS): move linux
  specific option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-10-18 06:55:15 +00:00
nobu 3ee370ae9c separated_version.mk [ci skip]
* defs/separated_version.mk: FOR DEVELEPERS ONLY.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-10-18 06:35:38 +00:00
nobu 9b454bfaf3 rubystub
* rubystub.c: generalize win32/stub.c.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-20 02:20:34 +00:00
nobu 9273ab42c0 gmake.mk: test-framework by love
* defs/gmake.mk (sudo-precheck): test the test-framework before
  installation by love.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-26 16:03:51 +00:00
nobu 63e9325781 gmake.mk: love dependency
* defs/gmake.mk (test-almost): depends on install when making
  love.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-26 13:02:34 +00:00
nobu ed6ab036d9 gmake.mk: update timestamp of des_tables.c
* defs/gmake.mk (missing/des_tables.c): always update the
  timestamp unless make_des_table failed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-04 10:58:14 +00:00
nobu a41206a110 gmake.mk: des_tables.c condition
* defs/gmake.mk (missing/des_tables.c): fix cross compiling
  condition.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-04 03:46:06 +00:00
nobu b1b1f3ded2 des_tables.c: generation rule
* defs/gmake.mk (missing/des_tables.c): move the recipe from
  common.mk.  this is less common.

* missing/crypt.c (init_des): if des_tables.c is empty, initialize
  DES tables at runtime.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-04 02:40:04 +00:00
naruse 5d2d4c936d setdynamic is obsoleted
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-27 07:11:06 +00:00
mame 3c7c983300 * compile.c (NODE_CALL): add optimization shortcut for Array#max/min.
Now `[x, y].max` is optimized so that a temporal array object is not
  created in some condition.

* insns.def (opt_newarray_max, opt_newarray_min): added.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-17 12:47:31 +00:00
nobu cb65717b45 parse.y: symbol literals for alias/undef
* defs/keywords (alias, undef): symbol literals are allowed.
* parse.y (parse_percent): should parse symbol literals for alias
  and undef.  [ruby-dev:47681] [Bug #8851]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-16 14:10:27 +00:00
nobu 0201900d76 id.def: $~ and $_
* defs/id.def (predefined): add idLASTLINE and idBACKREF for $~
  and $_ respectively.
* parse.y: use idLASTLINE and idBACKREF instead of rb_intern.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-17 12:42:00 +00:00
hsbt 203e604f46 * common.mk: test-sample was changed to test-basic.
[Feature #11982][ruby-core:72823]
* basictest/runner.rb: ditto. rename from tool/rubytest.rb.
* basictest/test.rb: ditto. rename from sample/test.rb.
* defs/gmake.mk: picked from r53540
* sample/test.rb: backword compatibility for chkbuild.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-16 01:37:47 +00:00
nobu 78d4bc9294 Revert r53539 and r53540
* basictest/test.rb: revert r53539 because it depends on r53537.

* gmake.mk: ditto, revert r53540.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-15 13:08:45 +00:00
nobu 1b19168934 gmake.mk: update order
* defs/gmake.mk (yes-test-basic): update the target name and the
  order of tests.  [Feature #11982]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-15 04:39:35 +00:00
ko1 ba772af0a6 * compile.c (iseq_compile_each): add debug information to NODE_STR
strings as default.
  [Feature #11725]

* insns.def (freezestring): add new instruction to support adding
  debug information for dynamically constracted strings.

* compile.c (iseq_compile_each): support adding debug information
  for NODE_DSTR with freezestring instruction.

* error.c (rb_error_frozen): change the debug information ID name
  id_debug_created_info and this field should have a 2 element array
  containing path and line information.

* defs/id.def: ditto.

* test/ruby/test_rubyoptions.rb: catch up this fix.

* test/ruby/test_iseq.rb: now frozen strings are not same.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-20 23:49:31 +00:00
nobu a01b6453eb Rename DOTQ to ANDDOT
* defs/id.def, parse.y: Switch internal token name to reflect
  current form of safe-call operator.  [Fix GH-1090]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-10 09:42:27 +00:00
nobu 837babd564 change DOTQ
* defs/id.def (token_ops), parse.y (parser_yylex): change DOTQ
  from ".?" to "&.".  [ruby-core:71363] [Feature #11537]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-06 03:39:23 +00:00
nobu 72b785e072 id.def: token_ops
* defs/id.def (token_ops): gather associations between IDs,
  operators, and parser tokens.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-05 04:04:00 +00:00
nobu b907c6e925 keywords: make name singed
* defs/keywords (kwtable::name): turn into singed int, as gperf
  fills invalid slots with -1.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-02 23:08:26 +00:00
nobu 6964c0635f id.def: anonymous IDs
* defs/id.def: enable anonymous IDs not to expose internal IDs for
  frozen-string-literal-debug by Marshal.dump.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-27 14:14:18 +00:00
nobu 2ce7328dea id.def: internal IDs
* defs/id.def: move internal IDs for frozen-string-literal-debug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-27 08:06:58 +00:00
nobu 29a1905c7d common.mk: showflags only once
* common.mk (showflags): do not show flags from recursive make.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-22 14:56:37 +00:00
nobu 24e5e37410 common.mk: separate test-testframework
* common.mk (check): separate test-testframework from test-all
  only when building check.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-09 13:54:43 +00:00
nobu 53672aa9a6 gmake.mk: test order
* common.mk (test-almost): rename target to test other than
  test-frameworks.

* defs/gmake.mk (test-almost): run after test-testframework.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-04 12:35:47 +00:00
nobu 66588679b2 gmake.mk: no docs if test only
* defs/gmake.mk (TEST_DEPENDS): make docs only when checking, but
  not only btest and test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-09-02 02:51:13 +00:00
nobu 26be081f1b Makefile.in: PIC lex.c
* Makefile.in (lex.c): make position independent table.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-07-22 00:37:09 +00:00
hsbt 9829e91d34 * ext/json/json.gemspec, lib/rdoc/rdoc.gemspec: added gemspec directly.
* defs/default_gems, tool/rbinstall.rb: removed default_gems definition.
  it make simple installation for default gems.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-12 09:12:15 +00:00
hsbt 2e4f0af00f * ext/json/*, test/json/*: Reverted r50231. Because it's not works with
cross-compile environment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-12 08:36:37 +00:00
hsbt cfaddc2a32 * ext/json/*, test/json/*, defs/default_gems: Gemify JSON library.
[fix GH-867][Feature #11057]
* test/ruby/test_extlibs.rb: removed json gem from existence extentions.
* gems/bundled_gems: added json gem into bundled gem.
* lib/rdoc/rubygems_hook.rb: ignored no json environment.
* lib/rubygems/test_case.rb, test/rubygems/*: ditto.
* lib/rdoc/test_case.rb, test/rdoc/*: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-11 11:14:36 +00:00
hsbt c4ee0df8ba * lib/rake/*: Gemify rake [fix GH-862][Feature #11025]
* test/rake/*: ditto.
* tool/rbinstall.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-04 12:31:31 +00:00
nobu 819e1756ad gmake.mk: check targets depend on main
* defs/gmake.mk (TEST_DEPENDS): all check targets need the main,
  programs and extensions have been built.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-03 02:57:11 +00:00
nobu 7097e1c8f3 common.mk: exam
* common.mk (exam): renamed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-02 07:06:06 +00:00
nobu 80dd40f48e common.mk: fool
* common.mk (fool): target to check and test rubyspec.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-01 14:30:53 +00:00
nobu 5e977e7f7d gmake.mk: CHECK_TARGETS
* defs/gmake.mk (CHECK_TARGETS): goals depending on test and
  test-all.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-01 08:14:35 +00:00
nobu 5b91f08aaa gmake.mk: showflags
* defs/gmake.mk (showflags): more targets to show flags.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-03-18 08:08:31 +00:00
nobu a747d4a8e4 gmake.mk: fix typo
* defs/gmake.mk: fix typo, remove an extra comma.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-03-13 08:29:26 +00:00
nobu 6014e76a40 gmake.mk: wait showflags
* defs/gmake.mk (showflags): finish before object files start.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-03-12 16:15:07 +00:00
nobu c01aaf60a5 id.def: move IDs for exception
* defs/id.def: add :mesg and :exception and move from other
  sources.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-16 08:33:35 +00:00
nobu ab1576704f id.def: attrset
* defs/id.def: add attrset IDs, which no longer shares serial
  numbers with local name IDs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-14 06:55:05 +00:00
akr ee0a9dfb6a * defs/known_errors.def: More errors for FreeBSD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-09 02:42:02 +00:00
akr f6695a95ea * defs/known_errors.def (EHWPOISON): New errno symbol.
It is defined by glibc-2.16.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-09 00:13:39 +00:00
nobu 5a277b4070 parse.y: optimize IDs in ripper
* parse.y: optimize ripper_intern calls, ::, **, -@, +@, <=>, >=,
  <=, ==, ===, !=, =~, !~, <<, >>, and call.

* parse.y: use initialized IDs, warn and warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-27 06:23:09 +00:00
hsbt 83edc945fa * defs/default_gems: change version definition file of rake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-15 03:43:04 +00:00
nobu 0b4e4b20cb extmk.rb: GNU make -C option
* ext/extmk.rb: use -C option for GNU make instead of shell.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-03 03:38:13 +00:00
nobu 3ff85b795a eval.c: no method calls at stack overflow
* eval.c (setup_exception): get rid of method calls before raising
  stack overflow, not to cause stack overflow again.
* defs/id.def: add IDs for backtraces.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-28 04:58:25 +00:00
nobu c63170c917 gmake.mk: for love
* defs/gmake.mk: add dependencies for love.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-20 04:20:26 +00:00
nobu 3f3c86faaa common.mk: fix dependencies
* common.mk, defs/gmake.mk: fix install and uninstall dependencies
  with parallel make.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-19 14:11:52 +00:00
nobu b16245145b gmake.mk: fix argument
* defs/gmake.mk: fix missing loop variable of `foreach`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 21:50:32 +00:00
nobu 2f0c383d9d gmake.mk: universal assembler rules
* Makefile.in (CFLAGS_NO_ARCH): split from ARCH_FLAG.

* defs/gmake.mk: define assembler rules per architectures for
  universal binaries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 19:32:17 +00:00
nobu b1b88695be gmake.mk: universal cpp rules
* defs/gmake.mk: define preprocessing rules per architectures for
  universal binaries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 19:32:15 +00:00
hsbt eb7df1eaca * defs/default_gems: remvoed mintiest entry.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-24 00:40:53 +00:00
nobu c0dba956d1 id.def: predefine to_i
* defs/id.def: predefine `to_i` as well as `to_int`.

* numeric.c (id_to_i): use predefined `idTo_i`.

* object.c (conv_method_names): add `to_i` ID.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-20 08:28:33 +00:00
nobu 6a2ef9d6c3 id.def: predefine conversion method IDs
* defs/id.def: predefine conversion method name IDs.

* object.c (conv_method_names): consitify with predefined IDs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-20 06:28:52 +00:00
nobu b8c376cb9d defs/gmake.mk: no _FORTIFY_SOURCE unless optimization
* defs/gmake.mk (XCFLAGS): remove _FORTIFY_SOURCE if optimization is
  disabled as it requires compiling with optimization.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-25 01:30:07 +00:00
a_matsuda 06e2b610e5 * defs/opt_operand.def: Fix typo
s/configration/configuration/

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-22 01:11:07 +00:00
charliesome 07ac58747f * compile.c (iseq_compile_each): emit opt_str_freeze if the #freeze
method is called on a static string literal with no arguments.

* defs/id.def (firstline): add freeze so idFreeze is available

* insns.def (opt_str_freeze): add opt_str_freeze instruction which
  pushes a frozen string literal without allocating a new object if
  String#freeze is not overriden

* string.c (Init_String): define String#freeze

* vm.c (vm_init_redefined_flag): define BOP_FREEZE on String class as
  a basic operation

* vm_insnhelper.h: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09 21:17:06 +00:00
knu e1da84266b Set mode for GNU Makefile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 10:19:02 +00:00
nobu 97982e823f id.def: predefined IDs
* defs/id.def: add more predefined IDs used in core.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-02 07:54:17 +00:00
nobu 9644f9b572 proc.c: use predefined IDs
* defs/id.def (predefined): add "idProc".
* proc.c (mnew, mproc, mlambda): use predefined IDs.
* vm.c (Init_VM): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-01 02:38:44 +00:00
nobu 6b7478c4bd gmake.mk: order test-all and test-knownbug
* defs/gmake.mk (test-all, test-ruby): depends on test-knownbug if
  check is given or with test-knownbug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-27 03:42:19 +00:00
nobu aa25b1e740 gmake.mk: no test-knownbug if unnecessary
* defs/gmake.mk (test-all): no needs to depend on test-knownbug
  always.  it is included in TEST_TARGETS if it is given.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-26 21:39:47 +00:00
nobu e4e82e50ab common.mk: reinstall target
* common.mk (reinstall): new target.

* defs/gmake.mk (install, uninstall): can't run parallel.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-07 01:39:10 +00:00
nobu 5c1af05ef5 defs/gmake.mk: serialize test targets.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-06 11:59:23 +00:00
naruse 8654730aa8 * def/id.def: use split(/^/) instead of String#lines to support
Ruby 1.8.5 as BASERUBY.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 22:08:41 +00:00
nobu 94a4bc0ef4 id.h.tmpl: ID2ATTRSET
* template/id.h.tmpl (ID2ATTRSET): compile time constant macro for
  ID_ATTRSET.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 07:38:11 +00:00
nobu 2edcf87c1c id.def: check duplication
* defs/id.def (KeywordError): check duplication.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 07:38:07 +00:00
nobu 298694a2fd id.def: other scope ID
* defs/id.def: support for other scope IDs,
  ID_{INSTANCE,GLOBAL,CONST,CLASS}.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 07:38:03 +00:00
nobu 28ee4c2966 id.c: generate
* common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 17:36:19 +00:00
ko1 d3842de5c9 * vm_opts.h: enable optimization - operand unifications.
Operand unification technique enable to combine
  an instruction and specific operands and make new
  instruction.
* defs/opt_operand.def: add several configuration
  of operand unifications.
* insns.def: use `int' instead to suppress warning.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 04:57:50 +00:00
kou bfd5921e5d * re-added r38053 that is reverted by r38061. Problems by r38053
are resolved by r38096. r38096 removed GEM_SKIP configuration.

  The below is ChangeLog of r38053:

* defs/default_gems: Add base directory column.

* tool/rbinstall.rb:
  - Install .gemspecs of default gem to
    #{GEM_HOME}/specifications/default/.
  - Update files parameter of .gemspecs by relative path from
    library directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 03:35:36 +00:00
usa 5d33dad16c * revert r38053 because it causes too many test failures.
if you've already installed r38053 or later, remove the installed
  lib/ruby/gems/2.0.0 directory and reinstall this revision or later.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 13:00:23 +00:00
kou f807e1b80d * defs/default_gems: Add base directory column.
* tool/rbinstall.rb:
  - Install .gemspecs of default gem to
    #{GEM_HOME}/specifications/default/.
  - Update files parameter of .gemspecs by relative path from
    library directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 10:45:58 +00:00
nobu 5f3a8912f7 * tool/rbinstall.rb (gem): install all gemspecs under lib and ext.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-04 07:08:48 +00:00
tenderlove 55d68f1160 installing psych as a gem
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-03 17:02:44 +00:00
nobu 6466df87a6 * defs/default_gems: separate from tool/rbinstall.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-30 14:19:11 +00:00
yugui 295bc2fe25 removes the dtrace support. reverts r26239, r26238 and r26235.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-05 05:59:23 +00:00
yugui 72b199940d * trace.h: new file. wraps tracing mechanisms.
* defs/dtrace.d: new file. defined a dtrace provider "ruby".

* include/ruby/ruby.h (LIKELY): moved from vm.c.
  (UNLIKELY): ditto.
  (OBJSETUP): probe "object-create".
  (RUBY_EVENT_RESCUE): new event.

* vm_exec.c (DEBUG_ENTER_INSN): embeded a probe insn-entry into it.
  (DEBUG_END_INSN): insn-return.

* vm.c (LIKELY): moved into ruby.h.
  (UNLIKELY): ditto.
  (Init_BareVM): embeded a probe "raise" into it.

* variable.c (rb_class2name_without_alloc): new utility function.

* tool/rbinstall.rb (install?(:ext, :arch, :'ext-arch')): installs 
  dtrace.d if necessary.

* thread_pthread.c (add_signal_thread_list): probe "raise".
  (rb_thread_create_timer_thread): ditto.

* thread.c (rb_thread_schedule_rec): probes "thread-enter" and
  "thread-leave",
  (thread_start_func_2): ditto.
  (thread_cleanup_func): probe "thread-term"

* lib/mkmf.rb: supports dtrace postprocessor on making an extension.

* iseq.c (rb_vm_insn_name): new utility function.
  (rb_vm_insn_len): ditto.

* insns.def (hook): probes "method-etnry", "method-return", "line",
  and "rescue".

* compile.c (iseq_compile_each): adds a trace op for "rescue" probe.

* gc.c (garbage_collect): probes "gc-begin" and "gc-end".
  (obj_free): probe "object-free"
  (garbage_collect_with_gvl): probe "raise"
  (negative_size_allocation_error): ditto.
  (rb_memerror): ditto.

* eval.c (rb_rescue2): probe "rescue"
  (rb_longjmp): probe "raise"

* ext/probe/probe.c: new extension for application defined probes.

* ext/probe/extconf.rb: ditto.

* configure.in (--with-tracing-model): new option to choose a tracing
  mechanism.
  (DTRACE): new substitution. name of dtrace(1).
  (RUBY_TRACING_MODEL): new substitution.
  (DTRACE_OBJ): ditto.
  (MINIDTRACE_OBJ): ditto.
  (GOLFDTRACE_OBJ): ditto.
  (LIBRUBY_DTRACE_OBJ): ditto.
  (RUBY_DTRACE_POSTPROCESS): new macro. checks whether the dtrace on 
  the system needs postprocessing.
  (RUBY_DTRACE_BSD_BROKEN): new macro. checks whether the dtrace
  supports USDT.

* Makefile.in: 
  (DTRACE): new variable. name of dtrace(1).
  (TRACING_MODEL): new variable. name of the chosen tracing mechanism.
  (DTRACE_OBJ): same as the one in configure.in.
  (MINIDTRACE_OBJ): ditto.
  (GOLFDTRACE_OBJ): ditto.
  (LIBRUBY_DTRACE_OBJ): ditto.
  (CPPOUTFILE): new substitution. necessary for generating dtrace.d
  (trace_none.h): new target for TRACING_MODEL=none
  (RUBY_H_INCLUDES): appended a header for tracing.
  (distclean-local): also removes preprocessed version of dtrace.d
  ($(LIBRUBY_A)): needs $(LIBRUBY_DTRACE_OBJ) if dtrace needs 
  postprocessing.
  ($(PROGRAM)): ditto.
  (golf): ditto.
  (miniruby): ditto.
  ($(arch_hdrdir)/ruby/dtrace.d): new target. preprocessed verson 
  of defs/dtrace.d. generated if necessary.
  ($(arch_hdrdir)/ruby/trace_dtrace.h): new target.
  definition of probes.
  ($(LIBRUBY_DTRACE_OBJ)): new target. generated if dtrace needs 
  postprocessing.
  ($(DTRACE_OBJ)): ditto.
  ($(MINIDTRACE_OBJ)): ditto.
  ($(GOLFDTRACE_OBJ)): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-03 15:36:17 +00:00
akr db1564ec1d * defs/known_errors.def: more errors.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-24 11:06:53 +00:00
nobu 78e376a3ee * defs/keywords (reserved_word): made inline function static.
[ruby-core:23210]

* parse.y (rb_reserved_word): ordinary function for ripper.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-16 00:30:16 +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
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