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

722 Коммитов

Автор SHA1 Сообщение Дата
akr b1028f7a6c * common.mk: encdb.h and transdb.h depends on $(PREP).
So prebuild files for them in tarball are useless.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-25 21:09:34 +00:00
akr a08d6c5bd8 * common.mk (prereq): Don't depends on prelude.c and golf_prelude.c.
Since they depend on $(PREP) which is miniruby, they are rebuilt
  after miniruby is built, even if tarball contains them.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-25 15:55:34 +00:00
akr 7df1831bae * template/prelude.c.tmpl: Don't expand RbConfig::Config[...].
It is not used now.

* common.mk: prelude.c and golf_prelude.c doesn't depend on rbconfig.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-25 15:22:01 +00:00
nobu 913ed016c1 common.mk: remove old gems
* common.mk (update-gems): remove old version gems after
  successfully downloaded.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-25 04:37:58 +00:00
nobu d551e813ca common.mk: keep verconf.h if unchanged
* common.mk (verconf.h): update only when changed to reduce
  unnecessary recompiling loadpath.c.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-22 07:10:20 +00:00
nobu 4ecdc8f545 common.mk: use PWD with nmake
* common.mk (ext/ripper/ripper.c): move MAKEDIR to Makefile.sub.

* win32/Makefile.sub (PWD): set to $(MAKEDIR), nmake built-in macro.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-21 15:58:35 +00:00
naruse 31f9c8c09e * common.mk (ext/ripper/ripper.c): revert about srcdir and top_srcdir.
* common.mk (ext/ripper/ripper.c): use $(PWD) for Unix,
  $(MAKEDIR) for Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-21 10:34:55 +00:00
akr 6ca202fcee Update dependency.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-21 03:04:44 +00:00
nobu 72de767e9b common.mk: fix dependencies
* common.mk (ext/ripper/ripper.c): fix dependencies for the case
  to make ripper.y and id.h under the build directory.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-21 00:10:25 +00:00
naruse c2bd5491f2 * common.mk (ext/ripper/ripper.c): id.h in VPATH may exist in the build
directory.

* common.mk (ext/ripper/ripper.c): $(RM) was not defined.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-20 23:45:44 +00:00
nobu 3a2d2af0f7 common.mk: fix build error
* common.mk (ext/ripper/ripper.c): VPATH is always ../.. from
  ext/ripper.

* ext/ripper/depend (.y.c): VPATH is not needed for an
  intermediate file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-19 15:19:33 +00:00
nobu 4daa0fce20 common.mk: ims=nil option
* common.mk (update-gems): use ims=nil option.

* tool/downloader.rb (Downloader.download): show the message if no
  need to download in verbose mode.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-19 15:06:04 +00:00
naruse a77e25ecd8 * common.mk (ext/json/parser/parser.c): don't touch parse.c,
ruby repo is a downstream.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-19 12:12:22 +00:00
naruse 85c464c540 * common.mk (ext/ripper/ripper.c): use $(PWD) to get
<build-directory>/ext/ripper.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-19 11:38:46 +00:00
naruse 926b9e05f1 * common.mk (ext/ripper/ripper.c): pass build directory as VPATH.
* ext/ripper/depend (.y.c): use VPATH for y.tab.c.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-19 09:00:33 +00:00
usa 4a447965b5 * common.mk: revert r48486 because it breaks mswin build. start over.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-18 22:17:53 +00:00
nobu 0f6015c4fb common.mk: remove srcdir prefix
* common.mk (PRELUDE_SCRIPTS): since tool/generic_erb.rb searches
  files in VPATH, srcdir prefix is not needed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-18 20:28:46 +00:00
akr 20fe728a24 Dependencies updated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-18 15:28:08 +00:00
akr 30a5ce7345 * common.mk (CCAN_LIST_INCLUDES): Unused variable removed.
(ENCODING_H_INCLUDES): Ditto.
  (PROBES_H_INCLUDES): Ditto.
  (VM_CORE_H_INCLUDES): Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-16 04:12:38 +00:00
akr f4330f7f6b Revert r48450.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-16 02:06:11 +00:00
akr 2a87fdedb7 * common.mk: Specify dependencies for generated C sources.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-15 15:46:05 +00:00
akr 32dc9e462a * common.mk: parse.o depends on parse.y before parse.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-15 15:08:50 +00:00
akr 6afabcb4aa * common.mk: No need to declare dependencies which
will be detected by inference rules.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-15 14:11:49 +00:00
akr 7cd76ab0c5 * internal.h: Include ruby.h and ruby/encoding.h to be
includable without prior inclusion.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-15 11:49:06 +00:00
akr dd547e1b22 Mark auogenerated part.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-15 11:14:08 +00:00
akr 57682b05e1 * common.mk: Remove comments in Dependency lines.
Notified by usa.

* enc/depend: Ditto.

* ext/**/depend: Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-15 10:28:25 +00:00
akr 8727eb77be * tool/update-deps: Extend to fix dependencies.
* common.mk: Dependencies updated by tool/update-deps.

* enc/depend: Ditto.

* ext/**/depend: Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-15 05:15:49 +00:00
nobu 54af8757b3 internal.h: STATIC_ASSERT
* st.c: include "internal.h" for STATIC_ASSERT.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 02:56:14 +00:00
nobu b65b392e96 tables.rb: add
* lib/unicode_normalize/tables.rb: commit not to download and
  convert Unicode data files every time.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 17:41:53 +00:00
nobu d91b502dec common.mk: relax dependency
* common.mk (lib/unicode_normalize/tables.rb): should depend on
  Unicode data files only when downloading.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 17:41:42 +00:00
nobu 50ad0f58bb * win32/Makefile.sub (prelude.c): search from source directory,
not depending on VPATH, in parallel to r35135.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 10:29:00 +00:00
nobu d24e725009 common.mk: nmake
* common.mk (prelude.c): workaround for nmake.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 09:46:32 +00:00
nobu f760bb4b39 common.mk: preludes
* common.mk (preludes): make prelude.c too.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 09:09:59 +00:00
nobu 8e677dc443 template/prelude.c.tmpl
* template/prelude.c.tmpl: move from tool/compile_prelude.rb and
  expand by generic_erb.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-11 09:09:14 +00:00
nobu 1cede1dab2 reaply r48278
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-06 10:53:04 +00:00
naruse 8d00496911 Revert r48278 "common.mk: update unicode data only if BASERUBY is available"
Moreover its error "make[1]: *** No rule to make target
`lib/unicode_normalize/tables.rb', needed by `srcs-lib'.  Stop." is not
a good error message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-06 05:46:43 +00:00
nobu ef8139db13 common.mk: update unicode data only if BASERUBY is available
* common.mk (lib/unicode_normalize/tables.rb): do nothing unless
  BASERUBY is available.  MINIRUBY cannot load extension libraries,
  so cannot update Unicode data.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-05 05:11:33 +00:00
ko1 fbebd502f9 * rewrite method/block parameter fitting logic to optimize
keyword arguments/parameters and a splat argument.
  [Feature #10440] (Details are described in this ticket)
  Most of complex part is moved to vm_args.c.
  Now, ISeq#to_a does not catch up new instruction format.
* vm_core.h: change iseq data structures.
  * introduce rb_call_info_kw_arg_t to represent keyword arguments.
  * add rb_call_info_t::kw_arg.
  * rename rb_iseq_t::arg_post_len to rb_iseq_t::arg_post_num.
  * rename rb_iseq_t::arg_keywords to arg_keyword_num.
  * rename rb_iseq_t::arg_keyword to rb_iseq_t::arg_keyword_bits.
    to represent keyword bitmap parameter index.
    This bitmap parameter shows that which keyword parameters are given
    or not given (0 for given).
    It is refered by `checkkeyword' instruction described bellow.
  * rename rb_iseq_t::arg_keyword_check to rb_iseq_t::arg_keyword_rest
    to represent keyword rest parameter index.
  * add rb_iseq_t::arg_keyword_default_values to represent default
    keyword values.
  * rename VM_CALL_ARGS_SKIP_SETUP to VM_CALL_ARGS_SIMPLE
    to represent
      (ci->flag & (SPLAT|BLOCKARG)) &&
      ci->blockiseq == NULL &&
      ci->kw_arg == NULL.
* vm_insnhelper.c, vm_args.c: rewrite with refactoring.
  * rewrite splat argument code.
  * rewrite keyword arguments/parameters code.
  * merge method and block parameter fitting code into one code base.
* vm.c, vm_eval.c: catch up these changes.
* compile.c (new_callinfo): callinfo requires kw_arg parameter.
* compile.c (compile_array_): check the last argument Hash object or
  not. If Hash object and all keys are Symbol literals, they are
  compiled to keyword arguments.
* insns.def (checkkeyword): add new instruction.
  This instruction check the availability of corresponding keyword.
  For example, a method "def foo k1: 'v1'; end" is cimpiled to the
  following instructions.
    0000 checkkeyword     2, 0  # check k1 is given.
    0003 branchif         9     # if given, jump to address #9
    0005 putstring        "v1"
    0007 setlocal_OP__WC__0 3   # k1 = 'v1'
    0009 trace            8
    0011 putnil
    0012 trace            16
    0014 leave
* insns.def (opt_send_simple): removed and add new instruction
  "opt_send_without_block".
* parse.y (new_args_tail_gen): reorder variables.
  Before this patch, a method "def foo(k1: 1, kr1:, k2: 2, **krest, &b)"
  has parameter variables "k1, kr1, k2, &b, internal_id, krest",
  but this patch reorders to "kr1, k1, k2, internal_id, krest, &b".
  (locate a block variable at last)
* parse.y (vtable_pop): added.
  This function remove latest `n' variables from vtable.
* iseq.c: catch up iseq data changes.
* proc.c: ditto.
* class.c (keyword_error): export as rb_keyword_error().
* common.mk: depend vm_args.c for vm.o.
* hash.c (rb_hash_has_key): export.
* internal.h: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-02 18:02:55 +00:00
nobu 3dce236bf5 common.mk: remove dl from EXT_SRCS
* common.mk (EXT_SRCS): remove dl/callback which has been removed
  at r48217.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 22:23:43 +00:00
nobu aa631f9a7e common.mk: fix Unicode table dependency
* common.mk (.unicode-tables.time): needs Unicode files always,
  and should update after downloading these files.
  [ruby-core:66026] [Bug #10461]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 03:54:45 +00:00
nobu 708eed2090 common.mk: separate updates
* common.mk (UPDATE_LIBRARIES): separate autogenerated library
  script from downloaded data files.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-30 14:58:57 +00:00
naruse 7c1480ecbc * common.mk: fix for the case ALWAYS_UPDATE_UNICODE=no
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-30 09:48:59 +00:00
nobu 39713bd927 common.mk: separate Unicode files directory
* common.mk: download Unicode files into separate directory for the
  version.

* tool/downloader.rb (Downloader::Unicode.download): strip version
  directory.

* tool/downloader.rb (Downloader.download): strip directory name
  if download directory is given.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-30 07:39:51 +00:00
nobu 9b581e0d0b template/unicode_norm_gen.tmpl: from tool/unicode_norm_gen.rb
* template/unicode_norm_gen.tmpl: use generic_erb.rb to update if
  changed and manage timestamp, so that source tree on read-only
  filesystem works.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-25 07:20:15 +00:00
nobu f72c0b5c78 common.mk: timestamp for update-unicode
* common.mk (.update-unicode.time): timestamp not to download same
  files twice at one build.  [Bug #10415]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-23 14:58:29 +00:00
nobu 052c85da96 common.mk: update unicode files every times
* common.mk (update-unicode): invert dependency to run every times.
  [ruby-core:65842] [Bug #10415]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-22 17:33:02 +00:00
nobu 6cf85c1bd2 common.mk: update source tree
* common.mk (after-update): update files under source tree.
  [ruby-core:65840] [Bug #10414]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-22 17:25:35 +00:00
usa 35215a8503 * common.mk (prelude.c): add dependency to LIB_SRCS because
enc/prelude.rb requires lib/unicode_normalize.rb, and it's also
  requires lib/unicode_normalize/tables.rb (=LIB_SRCS).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-22 12:33:36 +00:00
yugui a49be8a8e3 * common.mk (build-ext): avoid trying to build dynamic libraries
if configured --with-static-linked-ext.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-22 12:19:16 +00:00
duerst 0263002e2f common.mk: Fixed grammar in comment [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48093 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-22 11:33:36 +00:00