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

274 Коммитов

Автор SHA1 Сообщение Дата
nobu eb40d20e30 probes.h: select by suffix rules
* Makefile.in, common.mk, configure.in, win32/Makefile.sub (probes.h):
  select generating with dtrace or copying dummy file by suffix rules.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 15:22:37 +00:00
nobu 1d9d1a8f56 Makefile.in: fix typo
* Makefile.in (yes-dtrace-probes.h): fix typo.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 12:32:48 +00:00
naruse 6e0375e3e2 * Makefile.in (no-dtrace-probes.h): dmyprobes.h is in srcdir.
* common.mk (dmyprobes.h): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 10:03:07 +00:00
nobu df4e0dd52d Makefile.in: split probes.h commands
* Makefile.in (probes.h): split build commands for dtrace-available
  and unavailable platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 08:57:17 +00:00
nobu e516438581 Makefile.in: move probes.h to all-incs
* Makefile.in (incs): probes.h is a platform dependent file, so it
  cannot be a part of prereq target.  move it to all-incs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 08:56:49 +00:00
nobu 620a2b6c65 Makefile.in: probes.h
* Makefile.in, win32/Makefile.sub (probes.h): fix copying dmyprobes.h
  path when outplace-build.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-16 06:42:38 +00:00
mrkn 3dd13a1c07 * Makefile.in (probes.h): create from probes.d
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 15:56:23 +00:00
naruse db31b3dad5 * common.mk (dmyprobes.h): always create for make dist.
* Makefile.in (probes.h): create or copy dmyprobes.h

* win32/Makefile.sub: only do copy dmyprobes.h.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 07:49:09 +00:00
naruse d8aaa43074 * Makefile.in (.SUFFIX): .SUFFIX is needed here for .d.h on bsd make.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 06:38:08 +00:00
usa aec93c2283 * common.mk Makefile.in win32/Makefile.sub (.d.h): it's not common.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 06:35:30 +00:00
naruse f82d652f35 Fix dtrace commit r37631, it is [Feature #2565]
* configure.in: disable dtrace because it doesn't work on FreeBSD.

* common.mk (clean-local): rm probes.h.

* common.mk (parse.o): depend $(PROBES_H_INCLUDES).

* common.mk (.d.h): moved from Makefile.in and use BASERUBY.

* tool/gen_dummy_probes.rb: reimplemented with ruby because sed is not
  available on Windows Microsoft VC++ environment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 06:13:39 +00:00
tenderlove 4c740bae97 * probes.d: add DTrace probe declarations. [ruby-core:27448]
* array.c (empty_ary_alloc, ary_new): added array create DTrace probe.

* compile.c (rb_insns_name): allowing DTrace probes to access
  instruction sequence name.

* Makefile.in: translate probes.d file to appropriate header file.

* common.mk: declare dependencies on the DTrace header.

* configure.in: add a test for existence of DTrace.

* eval.c (setup_exception): add a probe for when an exception is
  raised.

* gc.c: Add DTrace probes for mark begin and end, and sweep begin and
  end.

* hash.c (empty_hash_alloc): Add a probe for hash allocation.

* insns.def: Add probes for function entry and return.

* internal.h: function declaration for compile.c change.

* load.c (rb_f_load): add probes for `load` entry and exit, require
  entry and exit, and wrapping search_required for load path search.

* object.c (rb_obj_alloc): added a probe for general object creation.

* parse.y (yycompile0): added a probe around parse and compile phase.

* string.c (empty_str_alloc, str_new): DTrace probes for string
  allocation.

* test/dtrace/*: tests for DTrace probes.

* vm.c (vm_invoke_proc): add probes for function return on exception
  raise, hash create, and instruction sequence execution.

* vm_core.h: add probe declarations for function entry and exit.

* vm_dump.c: add probes header file.

* vm_eval.c (vm_call0_cfunc, vm_call0_cfunc_with_frame): add probe on
  function entry and return.

* vm_exec.c: expose instruction number to instruction name function.

* vm_insnshelper.c: add function entry and exit probes for cfunc
  methods.

* vm_insnhelper.h: vm usage information is always collected, so
  uncomment the functions.

12 19:14:50 2012  Akinori MUSHA  <knu@iDaemons.org>

* configure.in (isinf, isnan): isinf() and isnan() are macros on
  DragonFly which cannot be found by AC_REPLACE_FUNCS().  This
  workaround enforces the fact that they exist on DragonFly.

12 15:59:38 2012  Shugo Maeda  <shugo@ruby-lang.org>

* vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo),
  vm_insnhelper.c (vm_search_method): revert r37616 because it's too
  slow.  [ruby-dev:46477]

* test/ruby/test_refinement.rb (test_inline_method_cache): skip
  the test until the bug is fixed efficiently.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-12 21:52:12 +00:00
nobu 7cc6bfa329 common.mk: gdb-ruby
* Makefile.in (RUNRUBY_COMMAND): split from RUNRUBY.

* common.mk (gdb-ruby): use runruby.rb to set up library path.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37093 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-05 07:28:32 +00:00
nobu 4a906510a2 configure.in: strict warnflags
* configure.in (strict_warnflags): separate strict flags from
  warnflags only for core.  [ruby-dev:46105]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-15 23:58:04 +00:00
nobu 9e1b74ff5b incs: timestamp file
* Makefile.in, common.mk (incs): replace real header with the
  timestamp file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-17 06:36:53 +00:00
nobu 3fceaf10ab make runnable
* common.mk (runnable): make symbolic links to run in build directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-03 02:16:08 +00:00
naruse 06d483006c * Makefile.in: don't remove macros. now name2ctype uses macros.
* tool/enc-unicode.rb: add comment why it uses Hash#index.

* enc/unicode/{name2ctype.kwd,name2ctype.src,name2ctype.h.blt}:
  update to follow the current name2ctype.h.
  FYI current Unicode version is 6.1.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 17:54:14 +00:00
nobu 0c7dab5df9 Makefile.in: warnflags
* Makefile.in (.c.i): add warnflags to make the result consistent with
  compilation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-13 08:50:42 +00:00
nobu a906a9d9be Bug #6462: EXTSOLIBS
* Makefile.in (LIBRUBY_SO): link EXTSOLIBS too.
* ext/extmk.rb (mf.macro): use EXTSOLIBS instead of SOLIBS to get rid
  of discard libraries needed by default.  [Bug #6462]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-20 03:25:14 +00:00
nobu 0e60b2c6a3 static-linked-ext: into libruby
* Makefile.in, common.mk (PROGRAM): no extension libraries.
* common.mk (build-ext): pass macros for libruby.so.
* ext/extmk.rb (command_output): link extension libraries and encoding
  libraries into libruby.so, not ruby executable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 02:37:21 +00:00
nobu 0a6700fec2 use LIBEXT
* Makefile.in (LIBEXT): add macro.
* configure.in (ENCOBJS, EXTOBJS): use LIBEXT, not hardcoded suffix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 02:35:37 +00:00
nobu 2278902a76 fix typo
* Makefile.in (LIBRUBY_A): fix typo.  re-applying r35242.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 02:34:37 +00:00
yugui 76bc2d1ed7 Imports Ruby's port to NativeClient (a.k.a NaCl).
Patch by Google Inc. [ruby-core:45073].

* configure.in (RUBY_NACL): New M4 func to configure variables for
  NaCl.
  (RUBY_NACL_CHECK_PEPPER_TYPES): New M4 func to check the old names
  of Pepper interface types.
  (BTESTRUBY): New variable to specify which ruby should be run on
  "make btest". NaCl can run the built binary by sel_ldr, but it need
  rbconfig.rb. So this variable is distinguished from $MINIRUBY.
  
* thread_pthread.c: Disabled some features on NaCl.

* io.c: ditto.

* process.c: ditto.

* signal.c: ditto.

* file.c: ditto.

* missing/flock.c: ditto.

* nacl/pepper_main.c: An example implementation of Pepper application
  that embeds Ruby.

* nacl/example.html: An example of web page that uses the Pepper
  application.

* nacl/nacl-config.rb: Detects variants of NaCl SDK.

* nacl/GNUmakefile.in: Makefile template for NaCl specific build
  process.

* nacl/package.rb: script for packaging a NaCl-Ruby embedding
  application. 

* nacl/reate_nmf.rb: Wrapper script of create_nmf.py

* dln.c (dln_load): Added a hack to call on NaCl.

* util.c (ruby_getcwd): Path to the current directort is not available
  on NaCl.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-17 02:48:59 +00:00
yugui 3fa3f9abb9 Supports static linking of extensions and encodings again.
Fixes --with-static-linked-ext.

Patch by Google Inc. [ruby-core:45073].

* Makefile.in (ENCOBJS, EXTOBJS): New variables to specify static
  linked libraries. Also reintroduces extinit.o, introduces encinit.o
  introduces encinit.o

* common.mk: Builds static libraries rather than shared objects if
  specified.

* configure.in (LD): new substitution. 
  Avoids PIE if s

* enc/depend: Supports static linked libraries
  (libencs, libenc, libtrans): New target.

* enc/encinit.c.erb: new template to generate the initialization of
  statically linked encodings.

* enc/make_encmake.rb (--module): new flag to specify whether static
  or dynamic.

* transcode_data.h (TRANS_INIT): New macro to get rid of the name
  collision of encoding initializers and transcoder initializers.

* ext/extmk.rb: Fixes the behavior on $extstatic is true.

* lib/mkmf.rb (clean-static): new target to clean up static linked
  libraries.

* ruby.c (process_options): New initializes statically linked
  encodings here.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-16 05:39:06 +00:00
nobu 0be8f81921 codesign
* Makefile.in (PROGRAM), configure.in (POSTLINK): sign built program
  using RUBY_CODESIGN identity.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-07 04:41:02 +00:00
nobu c327407bdc distclean verconf.h
* Makefile.in, win32/Makefile.sub (distclean-local): another generated
  header.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-03 16:57:51 +00:00
nobu 0a706449d1 * Makefile.in (reconfig, config.status): not depend on
$(srcdir)/version.h to get rid of daily reconfiguration.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-17 04:55:14 +00:00
kazu 7b8bdf575b * Makefile.in ($(LIBRUBY_A)): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-06 05:28:10 +00:00
nobu ddc7bcd60e * win32/Makefile.sub (newline.c, miniprelude.c): search from source
directory, not depending on VPATH.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-26 05:08:55 +00:00
kazu 2cab78a9ff remove a trailing space [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-16 15:30:01 +00:00
nobu 8a8936cbd0 re-configure
* Makefile.in (reconfig, config.status): re-configure for version numbers.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 01:59:50 +00:00
nobu 23008fcc2e define PLATFORM_DIR if needed
* Makefile.in, configure.in (PLATFORM_DIR): define if needed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-29 04:07:06 +00:00
nobu afa7b27e8b clean-platform
* Makefile.in, win32/Makefile.sub (clean-platform): use macro instead
  hardcoded path names.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-29 04:07:03 +00:00
shirosaki 4b1e9f0c47 * Makefile.in (PLATFORM_DIR): add a variable for `win32` directory.
* Makefile.in (clean-platform): add new target.
  It cleans `win32` directory.

* common.mk (clean): add a dependency for `win32` directory.
* common.mk (distclean): ditto.
* common.mk (distclean-platform): add new target.
  It cleans `win32` directory.
* common.mk ($(PLATFORM_D)): add new target to make `win32` directory.
* common.mk (win32/win32.$(OBJEXT)): move win32.o into `win32`
  directory.
* common.mk (win32/file.$(OBJEXT)): add new target for win32/file.c.

* configure.in: move win32.o into `win32` directory and add
  win32/file.o to MISSING.

* file.c (file_load_ok, rb_file_load_ok): replace static
  file_load_ok() with public rb_file_load_ok().
  It's to link Windows implementation in win32/file.c.
* file.c (rb_find_file_ext_safe): ditto.
* file.c (rb_find_file_safe): ditto.

* win32/file.c (rb_file_load_ok): new file. Add Windows specific
  optimized implementation of rb_file_load_ok(). We created a
  separated file to avoid too many #ifdef macro which is unreadable.

* win32/Makefile.sub (PLATFORM_DIR): add a variable for `win32`
  directory.
* win32/Makefile.sub (MISSING): move win32.obj into `win32`
  directory and add win32/file.obj to MISSING.
* win32/Makefile.sub (MAKEDIRS): replace MINIRUBY with BASERUBY.
  It's because miniruby doesn't exist when making `win32` directory.
* win32/Makefile.sub (clean-platform): add new target to clean `win32`
  directory.
* win32/Makefile.sub ({$(srcdir)}.c{}.obj): make it not match
  win32/file.c to build properly.
* win32/Makefile.sub (win32/win32.$(OBJEXT)): move win32.obj into
 `win32` directory.

  Patch created with Luis Lavena.
  [ruby-core:42480] [Feature #5999]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-28 15:51:25 +00:00
usa 3fbc62445e * common.mk,Makefile.in,win32/Makefile.sub (ECHO1): move platform
specific hack from common.mk to Makefile.in (and win32/Makefile.sub).
  [Bug #5711]

* lib/mkmf.rb: we can generate Makefile as we like.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-14 11:02:00 +00:00
nobu 53df70d92b * Makefile.in (CFLAGS): append ARCH_FLAG.
* configure.in (ARCH_FLAG): exclude from CFLAGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 22:17:34 +00:00
nobu 41f756eaf3 * Makefile.in (DLDFLAGS): also needs -fstack-protector.
[Bug#5676]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-27 09:54:12 +00:00
kosaki 0996ae361a * Makefile.in (EXTLDFLAGS): export it.
* configure.in: add --no-undefined if --enable-shared is specified.
  Gentoo enabled this option long time. Also, export EXTLDFALGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-25 01:41:59 +00:00
nobu f6a635a919 * Makefile.in (enc/unicode/name2ctype.h): remove duplicated
ifdefs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-19 19:01:49 +00:00
nobu 1f86c08fdf * Makefile.in (LIBRUBY_A): check if generated linked library is
valid for extconf.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-16 09:13:56 +00:00
nagachika 1cd56023d3 * Makefile.in (INSNS): change command line option -Ks to -Ku for
generate *.inc. because insns.def encoding has been changed SJIS to
  UTF-8. if $BASERUBY is 1.9, -Ks cause an error. [Feature #5128]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-05 10:36:24 +00:00
yugui 05ec839244 Forward-ports r32776 from branches/ruby_1_9_3 to trunk.
--
* common.mk (node_name.inc): Use $(Q) for consistency.

* Makefile.in (INSNS): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-31 14:17:37 +00:00
yugui 53d3b13233 Forwardports r32772 and r32773 from branches/ruby_1_9_3 to trunk.
* common.mk (ECHO1): ":" in a make variable replacement cause a syntax
  error with /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.

* configure.in (NULLCMD): new check.

* Makefile.in (NULLCMD): Reflects checking in configure.

* win32/Makefile.sub (NULLCMD): new assignment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-31 11:31:55 +00:00
nobu dd2dfc71e7 * common.mk (RUN_OPT): disable gems.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-08 23:39:42 +00:00
nobu b43b6cf71f * common.mk (sudo-precheck): true command is not standard on
Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-08 02:39:15 +00:00
nobu 020dc4ba60 * configure.in (rubygems): add --disable-rubygems option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-11 03:03:26 +00:00
kazu 584a099fca * Makefile.in: remove unnecessary semicolons.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-30 18:03:13 +00:00
kosaki 78f6130528 * Makefile.in: Check V=1 argument if run "make clean" or similar.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-30 11:18:12 +00:00
kosaki 918a712cf8 * Makefile.in: Kill ugly line continuation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-30 11:06:18 +00:00
nobu 9be87b1eb6 * Makefile.in (reconfig): force reconfigure with previous options.
* common.mk (showconfig): show configure flags, like as
  `config.status --config' generated by recent autoconf.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-17 22:37:48 +00:00