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

401 Коммитов

Автор SHA1 Сообщение Дата
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
nobu a7de375504 * Makefile.in (lex.c): show commands if Q is not set.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-17 09:32:44 +00:00
nobu 223c0b48a1 * common.mk (showflags, help): emit messages at once.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29775 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-13 07:38:01 +00:00
nobu fe2295ea75 * common.mk (showflags, help): use caret to quote leading spaces on Windows.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-12 11:52:45 +00:00
nobu fd7c0279f8 * Makefile.in, common.mk, cygwin/GNUmakefile.in, enc/depend,
ext/ripper/depend, lib/mkmf.rb, win32/Makefile.sub: caddle up.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-12 11:51:42 +00:00
nobu 6c5115379d * cygwin/GNUmakefile.in: shorten messages.
* Makefile.in (install-cross, ext/extinit.o): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 13:03:42 +00:00
nobu f2f7a7740a * common.mk: hide long command lines by default. verbose-mode is
turned on by V=1 as before.
  http://jarp.does.notwork.org/diary/200605b.html#200605121

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 12:46:23 +00:00
nobu 18bd7f8c84 * configure.in (SYMBOL_PREFIX): separate from EXPORT_PREFIX.
* win32/mkexports.rb (Exports#each_export): use SYMBOL_PREFIX.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 11:45:32 +00:00
nobu 767d70841a * Makefile.in (ASFLAGS): needs INCFLAGS.
* configure.in (rb_cv_dynamic_alloca): check if extra source for
  dynamic size alloca.

* missing/x86_64-chkstk.s (___chkstk): necessary for alloca of
  amd64-mingw32msvc-gcc on Ubutu.

* thread_win32.c (ruby_alloca_chkstk): check stack overflow

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-26 09:09:45 +00:00
nobu 749ad16aa7 * common.mk (pkgconfig-data): moved from Makefile.in.
* tool/rbinstall.rb: install pc file only if non-empty.
  [ruby-core:32901] #3983

* win32/Makefile.sub (ruby_pc): create pc file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-26 03:47:15 +00:00
nobu 4d9a6ab181 * Makefile.in (pkgconfig-data): create pkg-config metadata file.
* tool/rbinstall.rb: install pkg-config metadata file.

* template/ruby.pc.in: template of pkg-config metadata file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-25 15:29:32 +00:00
nobu 835a5edf52 * Makefile.in (CPP): already used in .c.i rule.
* cygwin/GNUmakefile.in (DLLWRAP, WINDRES): add --driver-name and
  --preprocessor options explicitly.  [ruby-core:32776]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-16 01:55:01 +00:00
naruse c51e356c68 * Makefile.in (clean-rdoc): Don't use \ in variable expantion.
BSD make treats it as an escape character.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-03 21:42:23 +00:00
nobu feacd3c2e0 * Makefile.in (install-cross): target to install cross-compiling
stuff.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-24 16:34:56 +00:00
yugui 4a028d2c7e * common.mk (clean): removes all documents on cleaning.o
(CAPIOUT): new variable.
  (clean-capi, distclean-capi, realclean-capi): new targets

* Makefile.in (clean-capi, distclean-capi, realclean-capi): ditto.

* win32/Makefile.sub (clean-capi, distclean-capi, realclean-capi): 
  ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-19 13:10:25 +00:00
nobu 966532cc40 * Makefile.in, win32/Makefile.sub (test-rubyspec-precheck): split
from test-rubyspec.

* common.mk (test-rubyspec): moved from Makefile.in.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-16 03:29:08 +00:00
nobu b4ba3ba641 * Makefile.in (clean-ext): fixed directories to be removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-06 09:56:22 +00:00
naruse 2b071787d2 * Makefile.in: ignore error from RMDIRS.
* enc/depend: ditto.

* lib/mkmf.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-06 08:40:27 +00:00
nobu 53b6ab6a04 * Makefile.in (MINIRUBY): get rid of appending spaces for each
reconfigure.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-27 10:03:23 +00:00
nobu 6abe539cfc * configure.in (RMDIR): use --ignore-fail-on-non-empty if possible.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-21 21:26:56 +00:00
nobu a3de9759e0 * Makefile.in ({,dist-,real-}clean-ext): should also omit
semicolon when omitting "in WORDS" of FOR-statement.

* tool/rmdirs: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-11 08:01:59 +00:00
nobu 9d3d606907 * Makefile.in ({,dist-,real-}clean-ext): omission of "in WORDS" of
FOR-statement is not allowed in /bin/sh on Solaris.  fore-ported
  r28609 from 1.9.2.

* tool/rmdirs: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-11 06:36:21 +00:00
nobu a1a529e603 * Makefile.in (clean-enc): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-15 00:09:26 +00:00
nobu 1d408c933a * Makefile.in, common.mk (clean-ext, clean-enc): clean up cleaning
targets.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-14 17:32:03 +00:00
nobu 0757fe1242 * Makefile.in (RUBY_PROGRAM_VERSION): added
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-24 07:27:50 +00:00
nobu 2ff26f2220 * template/fake.rb.in: hooks for extconf.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-06 02:21:40 +00:00
knu 4685b6d9c8 * Makefile.in (DOXYGEN): Define a missing variable DOXYGEN. Build
has been failing when doxygen(1) is found by configure but the
  variable is not defined by the system and make(1) does not allow
  an empty command. ("@$(DOXYGEN)" was the cause)



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-26 11:19:22 +00:00
nobu cce8bbb794 * Makefile.in ({dist,real}clean-ext): fix for removing ext
directories.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-22 08:38:10 +00:00
nobu bd5e925cc4 * Makefile.in (miniruby): link $(NORMALMAINOBJ).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-18 12:24:28 +00:00
nobu 9a5b57f61f * Makefile.in (config.status): setup MINIRUBY environment for
cross-compiling.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-11 22:09:25 +00:00
nobu a39e9e0745 * Makefile.in (config.status): ommit cached results.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-19 07:43:35 +00:00
nobu 1b26041724 * Makefile.in (clean-ext): allow glob patterns.
* ext/extmk.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-19 05:29:18 +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
nobu e9af789d35 * configure.in, Makefile.in, win32/Makefile.sub (XRUBY): runnable
ruby without current libraries.

* common.mk (rdoc): use XRUBY.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-22 22:32:39 +00:00
akr 391e5df571 add comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-13 11:43:01 +00:00
nobu 66150a89a6 * configure.in, Makefile.in (LIBRUBY_SO), common.mk (ruby.imp),
win32/mkexports.rb (each_export): exclude _threadptr_ functions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-10 09:19:05 +00:00
kanemoto ea229a855f * Makefile.in (miniruby): suppress duplication warning on AIX.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-27 16:32:53 +00:00
yugui 0ed8771a44 * Makefile.in(test-rubyspec): explicitly executes run subcommand of
mspec.

* spec/README: typo fix

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-26 13:42:56 +00:00
nobu 92fd1940fe * Makefile.in, win32/Makefile.sub (INSNS): depend on tools.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-21 19:43:43 +00:00
nobu 99b41f3858 * configure.in (CAPITARGET): enable iff doxygen is available.
* configure.in (INSTALLDOC): enable if rdoc or doxygen are enabled.

* common.mk (docs): target to make documents.

* Makefile.in, win32/Makefile.sub (install-{all,nodoc}): trigger
  by $(INSTALLDOC) from install.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-16 07:20:19 +00:00
ko1 cea5aeb795 * Makefile.in, common.mk: move a id.h generation rule.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-06 20:22:18 +00:00
naruse 6cd8f907cf * Makefile.in (enc/unicode/name2ctype.kwd):
remove rules to generate name2ctype.kwd from
  UnicodeData.txt and Scripts.txt.
  if you want to generate, use tool/enc-unicode.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-26 17:08:34 +00:00
naruse f1eff95745 Update Oniguruma's UnicodeData to 5.1.
* tool/enc-unicode.rb: added for generate name2ctype.kwd.
  contributed by Run Paint Run Run [ruby-core:24775]
  use like following:
    ruby19 tool/enc-unicode.rb enc/unicode/UnicodeData.txt \
      enc/unicode/Scripts.txt > enc/unicode/name2ctype.kwd

* enc/unicode.c (CodeRanges): move definitions to name2ctype.h.

* enc/unicode/name2ctype.h.blt, enc/unicode/name2ctype.kwd,
  enc/unicode/name2ctype.src: updated to v5.1.

* enc/unicode/UnicodeData.txt, enc/unicode/Scripts.txt: added v5.1.

* Makefile.in: add rule to generate name2ctype.kwd from
  UnicodeData.txt and Scripts.txt.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-25 16:15:38 +00:00
nobu 7734d17849 * Makefile.in (enc/unicode/name2ctype.h): explicitly ignores the
result of diff and turns -e option off, because *BSD make passes
  it by default.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-25 03:22:30 +00:00
nobu b55c4210ef * Makefile.in (enc/unicode/name2ctype.h): explicitly ignores the
result of diff.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-25 02:42:55 +00:00
naruse 0570b9969b * Makefile.in: use CP and MV macros.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-22 04:17:38 +00:00
nobu a7b920686a * enc/unicode/name2ctype.h: split from enc/unicode.c and made a
perfect hash.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-21 08:01:09 +00:00
nobu 24c783e95e * configure.in, Makefile.in (MAKEDIRS): used MKDIR_P instead of
as_mkdir_p.  [ruby-dev:39063]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-13 07:20:16 +00:00
nobu ce34147cf4 * configure.in, Makefile.in (TEST_RUNNABLE): tests are not
runnable if cross-compiling.

* common.mk (btest*, test*): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-20 02:13:00 +00:00
nobu a5488474c2 * Makefile.in, win32/Makefile.sub (RMALL): need for distclean-rdoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-09 01:58:51 +00:00
yugui 8875ffc412 * configure.in ($ridir): new configuration. [ruby-core:23520].
c.f. [ruby-core:23519].

  (--with-ridir): new configure option.

* tool/instruby.rb (:doc, :rdoc): uses $ridir instead of
  a fixed path.

* lib/rdoc/ri/paths.rb: follows $ridir.

* Makefile.in: removes RIDATADIR which is no longer used.

* bcc32/Makefile.sub: generates the 'ridir' entry for RbConfig.
  removes RIDATADIR which is no longer used.

* win32/Makefile.sub: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23 16:07:46 +00:00
nobu 15fabcb2db * Makefile.in, configure.in, win32/Makefile.sub (RUBY_BASE_NAME):
program base name.  [ruby-dev:38241]

* configure.in (--with-soname): base name of shared library.
  [ruby-dev:38290]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-08 01:14:14 +00:00
nobu d9921b1de6 * common.mk (info): shows configured names.
* configure.in (Makefile): works even if RUBY_INSTALL_NAME
  contains macro.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-07 04:35:24 +00:00
nobu 3e845f19e0 * Makefile.in (.c.i): use CPP instead of CC, since gcc -E can't
work with multiple -arch options.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-01 06:12:23 +00:00
nobu 40819d4599 * Makefile.in, common.mk, win32/Makefile.sub: added preprocessing rules.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-16 00:29:00 +00:00
nobu 28398e91f1 * common.mk (.y.c): use SRC_FILE which contains slashes instead of
backslashes.  [ruby-core:22891]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-15 00:17:21 +00:00
nobu 849c996270 * Makefile.in (update-mspec): split from update-rubyspec.
* win32/Makefile.sub (update-{rubyspec,mspec}): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 09:46:52 +00:00
nobu 2a413f97a4 * configure.in, Makefile.in, win32/Makefile.sub (CHDIR): cd using
phisical directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 09:37:31 +00:00
nobu 6e000d8854 * Makefile.in, win32/Makefile.sub (INSNS): moved variable
definition before rule.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 05:28:42 +00:00
nobu 11075c9332 * win32/Makefile.sub (make_insns_rules): rule to make rules for insns.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-05 02:52:21 +00:00
nobu 25d66aebcc * common.mk (INSNS, newline.c, miniprelude.c, prelude.c),
(node_name.inc, known_errors.inc): unified from Makefile.in and
  win32/Makefile.sub.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-26 09:36:13 +00:00
nobu 9632241261 * common.mk (main): split from exts and makes main program after
building exts with miniruby, to get rid of overwriting running
  program.  [ruby-core:22339]

* Makefile.in, win32/Makefile.sub (RUNCMD, MKMAIN_CMD): macros to
  run script file.

* ext/extmk.rb (parse_args): added --command-output option which
  creates script file to make main program.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-24 10:01:08 +00:00
nobu ff9bfed83d * common.mk (ripper.c): exec can't work on Windows.
* ext/ripper/depend (.SUFFIXES): nmake doesn't have .y by default.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-24 08:58:10 +00:00
nobu 11abc445dd * Makefile.in (id.h): overwrites unconditinally.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-24 08:54:50 +00:00
nobu 510f34d615 * Makefile.in (configure): unset PWD to use symlink to building
directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-22 04:03:16 +00:00
nobu 70946fb3ea * Makefile.in (up): cd doesn't need LC_TIME, VCS needs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-22 03:56:37 +00:00
nobu 7c76900458 * template/fake.rb.in: extracted from Makefile.in.
* configure.in (fake.rb): prefixed with $(arch)-.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-19 06:47:13 +00:00
nobu 5610e5dc70 * configure.in (--with-arch): added new option to support
universal binary.  replaced --enable-fat-binary option which
  didn't work actually.

* configure.in (RUBY_FUNC_ATTRIBUTE): added conditional test.

* configure.in (ac_cv_type_getgroups): decalared because getgroups()
  fills rest of the buffer with garbages on Rosetta.

* configure.in (alloca): defines only for powerpc, but always
  create empty object to suppress ld warning.

* configure.in (LIBRUBY_DLDFLAGS): set compatibility version with
  TEENY.

* configure.in (CFLAGS, LDFLAGS): separates ARCH_FLAG.

* configure.in (arch): renamed to "universal" from "fat".

* Makefile.in (ARCH_FLAG): added.

* include/ruby/defines.h (WORDS_BIGENDIAN): uses
  AC_APPLE_UNIVERSAL_BUILD.

* missing/alloca.c (alloca): defines only if C_ALLOCA is defined.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-07 09:02:50 +00:00
nobu 136f31b098 * Makefile.in (id.h): updates from parse.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-04 10:10:44 +00:00
nobu 42e0d76c25 * common.mk (Doxyfile): moved from Makefile.in.
* template/Doxyfile.tmpl: split from Doxyfile.in.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-02 23:10:28 +00:00
nobu aada62da2b * Makefile.in (distclean): hides removing Doxyfile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-27 22:02:51 +00:00
nobu 0834056aec * common.mk (clean-extout): removes extout directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-25 02:23:47 +00:00
nobu 97de7d1081 * Makefile.in, win32/Makefile.sub (RMDIRS): remove directory and
parents.

* Makefile.in, win32/Makefile.sub (distclean-rdoc): added to remove
  temprary rdoc.

* Makefile.in, win32/Makefile.sub (distclean): removes extout
  directory.

* Makefile.in, win32/Makefile.sub (clean-ext): skips non-existent
  directories.

* common.mk (clean, distclean): cleans rdoc.

* configure.in (RMDIRS, RMALL): added to clean extout.

* lib/fileutils.rb (FileUtils#rmdir): added :parents option.

* lib/mkmf.rb (create_makefile): cleans installed files at clean
  instead of distclean.

* lib/mkmf.rb (create_makefile): added clean-so and clean-rb.

* lib/mkmf.rb (def init_mkmf): added DISTCLEANDIRS.

* lib/un.rb (rmdir): added -p option.

* tool/rmdirs, win32/rmdirs.bat: removes directory and the parents.

* win32/rm.bat: added -r option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-25 02:06:29 +00:00
nobu 2d03f7274f * Makefile.in (miniruby): renames and then removes, to get rid of
EPERM on cygwin and mingw.

* Makefile.in ($(LIBRUBY_SO)): use wildcard option of objcopy.

* configure.in (DLDFLAGS): do not export all symbols.

* cygwin/GNUmakefile.in (RUBYDEF): rejects symbols prefixex with
  Init_.

* win32/mkexports.rb (Exports::Mingw): includes all symbols except for
  prefixed with Init_ as well as mswin32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-20 06:32:36 +00:00
yugui fe011304e7 * configure.in (VCSUP): fixed the cases for git-svn or git.
* win32/Makefile.sub (VCSUP): ditto.

* Makefile.in (up): `cd' is necessary for git and git-svn.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-17 10:40:51 +00:00
nobu 72aa4a8c46 * configure.in (Makefile): set VCS and VCSUP.
* Makefile.in, win32/Makefile.sub (up): split from common.mk.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-16 08:33:02 +00:00
usa 9282f9f9d4 * common.mk, Makefile.in, win32/Makefile.sub (INSNS): move the macro
definition from common.mk to {Makefile.in,win32/Makefile.sub}.
	  [ruby-dev:37678]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-03 13:26:11 +00:00
usa 0d1e85ee4b * common.mk, Makefile.in, win32/Makefile.sub ($(INSNS), node_name.inc,
known_errors.inc, miniprelude.c, newline.c): move rules from common.mk
	  to {Makefile.in,win32/Makefile.sub) for nmake.
	  [ruby-core:20993]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-02 18:03:05 +00:00
yugui 8d8d36c15c * spec/default.mspec: fix for builddir != srcdir
* Makefile.in: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-01 13:30:25 +00:00
nobu fd855a082b * Makefile.in (distclean-ext, realclean-ext): use EXTS as default.
* win32/Makefile.sub (distclean-ext, realclean-ext): try to remove ext
  directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-31 22:16:51 +00:00
yugui 2be0eea2e8 * spec/README: follows the change of directory structure in rubyspec.
* spec/default.mspec: ditto. Also follows change of mspec command.

* Makefile.in: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-31 10:38:39 +00:00
yugui 25c96543cc * Makefile.in (distclean-local): removes Doxyfile and
run.gdb at distclean'ing.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-29 09:26:50 +00:00
yugui 69b2c8cc44 * Makefile.in (ext-clean): ext-clean always fails.
* ext/dl/ripper/extconf.rb: adds y.output into the clean list.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-29 05:51:31 +00:00
nobu b8e79f34a2 * configure.in (Makefile): removes GNU make specific files on
distclean.

* Makefile.in (distclean-ext): removes extension directories.

* lib/mkmf.rb (try_do): removes conftest.dSYM


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-24 04:45:34 +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 a2a5343033 * Makefile.in (LIBRUBY_SO): localizes non-public symbols.
* configure.in (OBJDUMP, OBJCOPY): for dealing with binary files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-07 14:17:36 +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
akr 2c78899641 * configure.in (BUILTIN_TRANSSRCS): defined.
(BUILTIN_TRANSOBJS): defined.

* enc/Makefile.in (BUILTIN_TRANSES): defined.

* enc/make_encmake.rb (BUILTIN_TRANSES): defined.

* enc/depend: don't generate rules for builtin transcoders.

* common.mk (COMMONOBJS): add BUILTIN_TRANSOBJS.
  (enc.mk): pass BUILTIN_TRANSOBJS.
  (newline.c): new rule.
  (newline.$(OBJEXT)): new ru.e
  (srcs): newline.c added.

* Makefile.in (BUILTIN_TRANSSRCS): defined.
  (BUILTIN_TRANSOBJS): defined.

* transcode.c (Init_transcode): call Init_newline.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-24 15:58:43 +00:00
nobu a91845f5b3 * configure.in (gnumake): check for GNU make.
* Makefile.in (uncommon.mk): includes filtered common.mk.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14 03:01:42 +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 3ba7984ef4 * common.mk (extconf): use MAKEDIRS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-10 02:03:01 +00:00
nobu 2ce5ff1ac1 * Makefile.in, common.mk, {bcc,win}32/Makefile.sub (clean-ext): do not
use miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 07:28:56 +00:00
yugui e370754189 Improved compatibility for mspec.
* Makefile.in (update-rubyspec): renamed the rubyspec directory
  "spec". Changed directory structure.

* Makefile.in (test-rubyspec): ditto.

* spec/README: described the structure of "spec" directory.

* spec/default.mspec: configured for Matz's Ruby Implementation.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-04 11:44:41 +00:00
yugui f1af3aed01 Merged r16430(akr), r16431(akr), r16433(akr), r16469(nobu), and
r17874(akr) from ruby_1_8.

* Makefile.in (update-rubyspec): added

* Makefile.in (test-rubyspec): added

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-01 14:27:21 +00:00
nobu f0816c0dff * Makefile.in (SET_LC_MESSAGES): LC_MESSAGES must be C.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-02 22:06:05 +00:00
nobu ccaed588cc * Makefile.in, configure.in (warnflags): defaulted to -Wall
-Wno-parentheses with gcc.  [ruby-dev:34810]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-31 06:58:11 +00:00
nobu 6a734c810c * common.mk (prelude.c): simply depends on PREP. [ruby-dev:34877]
* enc/make_encdb.rb, enc/trans/make_transdb.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-30 03:18:45 +00:00
nobu 23c2cf545c * Makefile.in (MKPREP): appended $(RBCONFIG).
* common.mk (enc.mk, prelude.c): not depend on $(RBCONFIG) on mswin32
  to get of compiling twice each time.

* win32/Makefile.sub (prelude.c): not depend on $(PREP).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-28 08:41:52 +00:00
nobu 0d3d7c3a1c * Makefile.in (MKPREP), common.mk, win32/Makefile.sub (prelude.c): get
rid of depending PREP with nmake.

* common.mk (encs): depends on libruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-27 10:12:46 +00:00
nobu f3ad9bf9b3 * configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
[ruby-core:16642]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 07:41:23 +00:00
nobu b0c77fe85b * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
(MINIOBJS, ARCHMINIOBJS): separated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 03:56:07 +00:00
nobu 59a1754a64 * common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
intermediate files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-24 14:29:51 +00:00
nobu 6d91bf3b0c * common.mk (revision.h): extracts revision number with ``svn info''.
* common.mk (up): target to update from the repository.

* Makefile.in, {win,bcc}32/Makefile.sub (IFCHANGE): tool to update a
  file if changed.

* tool/ifchange: for unixen.

* win32/ifchange.bat: some fix


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-25 09:27:30 +00:00
naruse ed540e8bdf * encoding.c, Makefile.in, include/ruby/oniguruma.h,
enc/Makefile.in: fix rules for UTF-{16,32}{BE,LE}.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-08 13:35:24 +00:00
usa b9127221e5 * common.mk, Makefile.in, */Makefile.sub (distclean-local): move
removing rule of ext/ripper/y.output from common.mk to Makefiles
	  that depend on platforms.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-07 06:53:39 +00:00
nobu 8d292a08df * Makefile.in, configure.in, lib/mkmf.rb, */Makefile.sub: specify
compiled output file name explicitly.

* enc/Makefile.in, enc/depend: now makes compiler to put generated
  files under directories corresnponding to the each source.
  enc/trans supported.

* enc/make_encmake.rb: evaluates depend file before Makefile.in so
  that the former can influence to CONFIG.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-24 03:49:56 +00:00
nobu 9cbc37f505 * Makefile.in (RUNRUBY): added RUNRUBYOPT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 03:21:27 +00:00
nobu f2bd108d8d * configure.in (enc/Makefile): add external encoding objects list.
* common.mk (BUILTIN_ENCOBJS): renamed from ENCOBJS.

* Makefile.in (BUILTIN_ENCOBJS): substitued by autoconf.

* enc/Makefile.in: new file to compile external encoding sources.

* encoding.c (rb_enc_find_index): auto-load external encoding objects
  as "ext/ENCODING_NAME".  [ruby-dev:32606]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-15 09:56:59 +00:00
nobu 7554dd1346 * Makefile.in, */Makefile.sub (CP, MV): added.
* common.mk (.y.c): not discard the old target until successfully
  created.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-11 07:19:28 +00:00
akr e81b38e378 * common.mk, Makefile.in: rename prelude.c to miniprelude.c.
rename ext_prelude.c to prelude.c

* win32/Makefile.sub: ditto.

* bcc32/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-14 05:06:36 +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 9829e14432 * lex.c.blt: moved from lex.c.
* lex.c.src: copied from keywords.  This is the source of lex.c.blt.

* Makefile.in (lex.c): use lex.c.blt if keywords is same as lex.c.src.

* win32/Makefile.sub (lex.c): re-introduce copy rule.

* bcc32/Makefile.sub (lex.c): ditto.

* wince/Makefile.sub (lex.c): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-13 06:29:49 +00:00
akr 2c42aa4364 * Makefile.in, common.mk: add prelude.o to MINIOBJS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 08:15:10 +00:00
akr c840239cc8 * Makefile.in, common.mk: add ext_prelude.o to OBJS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 07:49:36 +00:00
akr a48fd5df21 * configure.in (MINIDLNOBJS): removed.
(MINIOBJS): set to dln.o if dmydln.o is not used.

* Makefile.in (miniruby): use MINIOBJS instead of MINIDLNOBJS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 05:04:24 +00:00
akr e8f7398ce9 rename DLNOBJS to MINIDLNOBJS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 03:18:49 +00:00
akr 6f9dbb1636 * configure.in (DLNOBJS): defined.
* Makefile.in (miniruby): use DLNOBJS and COMMONOBJS instead of
  MINIOBJS and OBJS to avoid linking both dmydln.o and dln.o.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 01:31:11 +00:00
akr 24b62f0ee8 revert previous commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 12:15:50 +00:00
akr f13082c95d * Makefile.in (miniruby): use $(LIBRUBY_A) with prelude.$(OBJEXT).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 11:55:09 +00:00
akr 200c3aaa25 * Makefile.in (lex.c): simplified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 10:41:35 +00:00
akr ae7a85f549 copy $(srcdir)/lex.c if gperf failed and $@ is not exist.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 10:33:33 +00:00
akr 7687666c45 report how lex.c handled.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 10:21:30 +00:00
akr efd8303bc3 touch lex.c only if lex.c exists.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 09:32:30 +00:00
akr f0a827f087 * Makefile.in (lex.c): touch lex.c if gperf failed.
Although this may cause non-updated lex.c,
  svn co may generate keywords newer than lex.c especially on
  a file system which can record fractional mtime such as XFS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 09:27:05 +00:00
akr c5335ee110 * lex.c: renamed from lex.c.blt.
* Makefile.in (lex.c): use find command to check mtime.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-11 07:56:30 +00:00
akr c585a9eba1 * configure.in, common.mk, Makefile.in: don't generate
libminiruby-static.a.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 14:18:03 +00:00
akr 7315b449f3 * common.mk, Makefile.in: generate libminiruby-static.a
which contains prelude.o for miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 10:50:58 +00:00
akr 00e55418ce * common.mk (EXPLOBJS): create new variable for ext_prelude.o.
* Makefile.in(h: use EXPLOBJS.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-10 10:22:38 +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 72483cdcca * Makefile.in, */Makefile.sub (VPATH): add enc directory.
* common.mk (ENCOBJS): encoding objects.

* enc: directory for encodings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-10 21:35:45 +00:00
nobu d095fc2445 * Makefile.in (ext/extinit.o): use $(OUTFLAG) as well as other
objects.  [ruby-Bugs-14228]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13515 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-25 23:36:48 +00:00
akr cd67b62289 * Makefile.in: use --output-file for gperf to not leave lex.c.tmp.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 06:26:24 +00:00
nobu c389b3bb63 * Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
* ext/extmk.rb (parse_args): add also topdir to mflags.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 05:47:12 +00:00
nobu 2b592580bf * include/ruby: moved public headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00
akr c571d4702e * lex.c.blt: moved from lex.c.
* Makefile.in: use lex.c.blt if gperf is not available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-08 02:56:12 +00:00
nobu f9b349adb5 * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
specific thread model.

* compile.h, regint.h, vm.h, array.c: removed unnecessary #include.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-28 01:33:57 +00:00
nobu fddaf76b67 * Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-02 18:23:07 +00:00
usa b696420526 * Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
setup.mak}: add --with-baseruby configure option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-23 06:41:22 +00:00
nobu 24f3250be1 * Makefile.in, common.mk (NULLCMD): moved for platforms that empty
command does not run.  fixed: [ruby-dev:29994]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-06 14:57:07 +00:00
nobu 491a7ee7a6 * Makefile.in (miniruby): add XLDFLAGS.
* configure.in (aix): use -bE option for miniruby.  [ruby-dev:29698]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-30 14:41:43 +00:00
nobu b004fa2428 * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
LIBRUBY_SO unless need to be removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-01 15:00:45 +00:00
nobu f06362a4f9 * Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
use instruby.rb to install extensions instead of ext/extmk.rb.

* instruby.rb: store installed list into the file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-16 07:06:57 +00:00
nobu f594f850a4 * Makefile.in, win32/Makefile.sub (MINIRUBY): append MINIRUBYOPT.
* mkconfig.rb, ext/extmk.rb, lib/mkmf.rb, win32/mkexports.rb: suppress
  warnings with $VERBOSE.

* win32/resource.rb: only file which has more than one icon is DLL.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-08 19:48:22 +00:00
matz d09827ad50 * configure.in: add support for as and ASFLAGS. [ruby-dev:29138]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-26 13:28:17 +00:00
nobu 439600afbd * Makefile.in, mkconfig.rb: catch-up for latest autoconf.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-25 14:03:10 +00:00
nobu 47084e129c * Makefile.in (XCFLAGS): separated as well as win32/Makefile.sub.
* main.c (always_gc): dllimport is required for VC to import a DLL
  symbol.  fixed: [ruby-dev:28051]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-19 14:31:09 +00:00
nobu bf203228cf * Makefile.in (OUTFLAG): keep trailing spaces. [ruby-dev:27666]
* mkconfig.rb: substitution refereces added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-10 23:22:03 +00:00
nobu f6892cba23 * Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not load
extension libraries.

* bignum.c (bignew_1, bigadd): K&R style argument actually can't be
  defined as char.

* missing/vsnprintf.c: ANSI compiler supports const keyword.

* ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h
  but no 64bit integer.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-06 23:23:04 +00:00
nobu a51e80459c * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated
macro definitions.

* bcc32/Makefile.sub: LIBRUBY_SO should use DLDOBJS, not EXTOBJS.

* {win32,wince}/Makefile.sub: separate config.h for compiler versions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-03 15:27:13 +00:00
nobu 032248d337 * parse.y: remove static variables. [ruby-dev:26530]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-13 13:44:21 +00:00
nobu 5c6e644196 * Makefile.in, common.mk: miniruby depens on MINIOBJS.
* dmydln.c (dln_load): dummy function to raise LoadError.

* cygwin/GNUmakefile.in, {bcc32,win32,wince}/Makefile.sub: miniruby
  can't load extensions on Windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-20 14:25:34 +00:00
nobu 420a708098 * Makefile.in, configure.in: made EXTOUT configurable.
* ext/extmk.rb (extmake), lib/mkmf.rb: keep topdir as relative style.

* lib/mkmf.rb: make extensions in depth order.  [ruby-dev:25522]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-31 15:19:27 +00:00
eban 3bd61a71a0 * Makefile.in (.y.c): simplify the rule.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-06 10:42:49 +00:00
matz 3e9e2bd4ed * eval.c (rb_eval): NODE_XSTR should pass copy of literal string.
* array.c (rb_ary_update): a[n,m]=nil no longer works as element
  deletion.

* enum.c (enum_sort_by): protect continuation jump in.
  [ruby-dev:24642]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-30 06:56:18 +00:00
nobu 43db576e61 * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG
doesn't work for object files on VC.

* */Makefile.sub (config.h): need SIZEOF_TIME_T now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-07 01:43:27 +00:00
nobu 52a67fe60d * Makefile.in, */Makefile.sub, common.mk (clean-local, distclean-local):
separate files under directories due to directory separator.

* */Makefile.sub (MKFILES): common.mk and */Makefile.sub should not be
  removed.

* win32/Makefile.sub, wince/Makefile.sub: $* cannot appear in explicit
  rules.

* cygwin/GNUmakefile.in: some mingw stuffs were missed.

* lib/mkmf.rb (create_makefile): Borland make wrongly removes braces
  from command lines.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-23 05:32:01 +00:00
nobu 71f46f0724 * Makefile.in, */Makefile.sub, common.mk: extract common portions.
* Makefile.in, cygwin/GNUmakefile.in, */Makefile.sub (RBCONFIG):
  separated time stamp file for rbconfig.rb.

* configure.in: append common.mk to Makefile.

* mkconfig.rb: keep mtime of rbconfig.rb if unchanged.

* win32/rm.bat: remove multiple files.

* wince/mkconfig_wce.rb: use fake.rb instead.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-21 23:21:31 +00:00
ksaito e51bf1c605 * Makefile.in: replaced regex.c entry with Oniguruma files.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-08 16:22:56 +00:00
eban 81096d395c * Makefile.in (lex.c): use $? instead of $<.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-07 07:28:10 +00:00
nobu d6ad092f0e * Makefile.in: miniruby is not needed for cross compile.
* configure.in (PREP): miniruby for native compile.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-04 13:31:45 +00:00
nobu d65d5e7661 * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: terminate options.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-22 05:44:35 +00:00
nobu 883857d842 * ext/extmk.rb: use optparse instead of getopts.
* Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-22 03:58:44 +00:00
usa d255aa7b69 * string.c (rb_str_match): raise TypeError when both arguments are
strings. [ruby-dev:22851]

* string.c (rb_str_match2): removed.

* Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
  wince/Makefile.sub (string.c): now not depend on version.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-10 05:36:34 +00:00
nobu ff9c34b3f4 * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub, configure.in,
runruby.rb: run rdoc, test and so on with compiled extension
  libraries.  [ruby-dev:22688]

* ext/extmk.rb, lib/mkmf.rb: make extension libraries in separated
  directory, similar to the actual directory structure.

* lib/fileutils.rb (FileUtils.copy_file): use the mode of the original
  file to create new file.

* lib/rdoc/ri/ri_paths.rb (RI::Paths::SYSDIR): get rid of unexpected
  influence by envirionment variable.

* bcc32/configure.bat, win32/configure.bat: add install-doc options.

* win32/win32.c, win32/win32.h (rb_w32_fstat): fix Borland C runtime
  bug which returns wrong mode.  [ruby-dev:22846]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-09 08:48:55 +00:00
matz 51e6d9061d * misc/ruby-mode.el: better support for general delimited
strings.  [ruby-dev:22695]

* lib/weakref.rb (WeakRef::initialize): set up @__id before
  calling "super".

* lib/delegate.rb (Delegator::initialize): preserve
  singleton_method_added method [ruby-dev:22685]

* lib/delegate.rb (Delegator::initialize): use Kernel::raise
  instead of mere raise.  [ruby-dev:22681]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-27 06:05:04 +00:00
eban 50fe8ab6aa * configure.in (RDOCTARGET): new macro. if you want to install
rdoc documentation, you need to run configure with
  --enable-install-doc.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-08 14:58:57 +00:00
dave 1b31d09edd Add RDoc to build. Add --ri-system to RDoc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-05 21:48:16 +00:00
matz e78cb14774 * lib/cgi.rb (CGI::QueryExtension::Value::[]): should work like
String#[] if more than one arguments are specified.

* lib/delegate.rb: avoid using common instance name as "@obj".

* lib/cgi.rb (CGI::QueryExtension::Value): Value is no longer
  subclass of String, but DelegateClass(String).

* ext/curses/extconf.rb: restore function check for init_color.
  [ruby-list:38905]

* Makefile.in: need to specify $(MAINLIBS) for the miniruby
  generation rule.

* configure.in: better FreeBSD -lc_r support.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-17 06:38:18 +00:00
nobu e3bab670fc * Makefile.in (lex.c): try gperf first, and copy from the source
directory if failed.  [ruby-dev:22123]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-03 04:28:14 +00:00
eban 8eb63567d8 * Makefile.in: add ARCH_FLAG to DLDFLAGS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-30 14:20:35 +00:00
eban b0ffbc31e8 * Makefile.in: add ARCH_FLAG to CFLAGS.
* Makefile.in: add @CPPFLAGS@ to CPPFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-30 13:41:25 +00:00
matz 6212cfb9c5 * gc.c (Init_stack): stack region is far smaller than usual if
pthread is used.

* marshal.c (w_extended): singleton methods should not be checked
  when dumping via marshal_dump() or _dump(). [ruby-talk:85909]

* file.c (getcwdofdrv): avoid using getcwd() directly, use
  my_getcwd() instead.

* merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
  <sunshine@sunshineco.com>.  [ruby-core:01596]

* marshal.c (w_object): LINK check earlier than anything else,
  i.e. do not dump TYPE_IVAR for already dumped objects.
  (ruby-bugs PR#1220)

* eval.c (rb_eval): call "inherited" only when a new class is
  generated; not on reopening.

* eval.c (eval): prepend error position in evaluating string to

* configure.in: revived NextStep, OpenStep, and Rhapsody ports which
  had become unbuildable; enhanced --enable-fat-binary option so that
  it accepts a list of desired architectures (rather than assuming a
  fixed list), or defaults to a platform-appropriate list if user does
  not provide an explicit list; made the default list of architectures
  for MAB (fat binary) more comprehensive; now uses -fno-common even
  when building the interpreter (in addition to using it for
  extensions), thus allowing the interpreter to be embedded into a
  plugin module of an external project (in addition to allowing
  embedding directly into an application); added checks for
  <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
  ensures that -I/usr/local/include is employed when extensions'
  extconf.rb scripts invoke have_header() since extension checks on
  NextStep and OpenStep will fail without it if the desired resource
  resides in the /usr/local tree; fixed formatting of --help message.

* Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
  invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
  (see configure's --enable-fat-binary option); added rule for new
  missing/getcwd.c.

* defines.h: fixed endian handling during MAB build (see configure's
  --enable-fat-binary option) to ensure that all portions of the
  project see the correct WORDS_BIGENDIAN value (some extension modules
  were getting the wrong endian setting); added missing constants
  GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
  and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
  define in NeXT section.

* dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
  NextStep since, on some installations, this value always resolves
  uselessly to zero.

* dln.c: added error reporting to NextStep extension loader since the
  previous behavior of failing silently was not useful; now ensures
  that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
  for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
  on Rhapsody since this header lacks multiple-include protection,
  which resulted in "redefinition" compilation errors.

* main.c: also create hard reference to objc_msgSend() on NeXT
  platforms (in addition to Apple platforms).

* lib/mkmf.rb: now exports XCFLAGS from configure script to extension
  makefiles so that extensions can be built MAB (see configure's
  --enable-fat-binary option); also utilize XCFLAGS in cc_command()
  (but not cpp_command() because MAB flags are incompatible with
  direct invocation of `cpp').

* ext/curses/extconf.rb: now additionally checks for presence of these
  curses functions which are not present on NextStep or Openstep:
  bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
  setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
  wscrl(), wsetscrreg()

* ext/curses/curses.c: added appropriate #ifdef's for additional set of
  curses functions now checked by extconf.rb; fixed curses_bkgd() and
  window_bkgd() to correctly return boolean result rather than numeric
  result; fixed window_getbkgd() to correctly signal an error by
  returning nil rather than -1.

* ext/etc/etc.c: setup_passwd() and setup_group() now check for null
  pointers before invoking rb_tainted_str_new2() upon fields extracted
  from `struct passwd' and `struct group' since null pointers in some
  fields are common on NextStep/OpenStep (especially so for the
  `pw_comment' field) and rb_tainted_str_new2() throws an exception
  when it receives a null pointer.

* ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup().

* ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
  gethostbyaddr(), and gethostbyname() from (const char*) to non-const
  (char*) for older platforms such as NextStep and OpenStep.

* ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup(); include
  <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
  argument of gethostbyaddr() and getservbyname() from (const char*) to
  non-const (char*) for older platforms.

* ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-22 04:00:03 +00:00
usa 81160e93c9 * string.c: add #include "version.h". this file still depends on it.
* Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
  wince/Makefile.sub: add version.h dependency to string.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-05 02:15:27 +00:00