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

534 Коммитов

Автор SHA1 Сообщение Дата
nobu 3ef72aebef * lib/mkmf.rb (create_makefile, install_files): honor srcprefix
argument if given.  [ruby-dev:40449]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-21 12:20:21 +00:00
nobu 896d768290 * lib/mkmf.rb (create_makefile): use puts instead of print.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-29 03:22:55 +00:00
nobu a0248a2ba1 * lib/mkmf.rb (try_do): log no source when no developement env.
* lib/mkmf.rb (create_makefile): srcprefix always needs $(srcdir).

* lib/mkmf.rb (create_makefile): yield configuration if a block is
  given.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-29 02:09:51 +00:00
nobu bb6e6903ca * ext/iconv/iconv.c (iconv_convert): suppress a warning.
* lib/mkmf.rb (check_signedness): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-17 05:23:25 +00:00
nobu 37db97c0e1 * lib/mkmf.rb (have_header, create_header): use String#tr_cpp.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-17 05:18:03 +00:00
nobu 01629be729 * lib/mkmf.rb (configuration): needs ARCH_FLAG.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-09 19:41:22 +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 7b5ea0ec2f * configure.in, win32/Makefile.sub (EXECUTABLE_EXTS): moved from
dln.c:dln_find_1().

* lib/mkmf.rb (def find_executable0): use EXECUTABLE_EXTS, not
  only EXEEXT.  [ruby-core:26821]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-30 07:54:26 +00:00
nobu 32acedd286 * lib/mkmf.rb (create_header): split the line by tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-06 08:13:47 +00:00
nobu 80464f8f2a * lib/mkmf.rb (rm_f, rm_rf): FileUtils.rm can take an array.
[ruby-dev:39345]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-17 21:36:53 +00:00
nobu 9312426c1e * lib/mkmf.rb (create_header): open in binmode.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-17 21:34:24 +00:00
nobu 3a224dbf45 * lib/mkmf.rb (create_makefile): fix for parallel execution.
[ruby-core:25509]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-10 14:00:47 +00:00
nobu 7e97b9af80 * lib/mkmf.rb (rm_f, rm_rf): pass the last hash through if exists.
[ruby-dev:39153]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-21 16:29:33 +00:00
nobu c6ada1e7e0 * lib/mkmf.rb (check_sizeof): added optional compiler option
argument.  [ruby-core:24785]

* lib/mkmf.rb (create_makefile): suppressed shadowing outer local
  variable warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-06 04:00:38 +00:00
matz fbd58422de * lib/mkmf.rb (#link_command): should dup CONFTEST_C which is
frozen.  ref  [ruby-core:23675].  [ruby-core:23702]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-04 22:15:03 +00:00
nobu 17d88c0333 * lib/mkmf.rb (create_makefile): checks for duplication of source
files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-31 14:28:04 +00:00
takano32 120d1b493b Tue May 26 11:01:41 2009 TAKANO Mitsuhiro (takano32) <tak@no32.tk>
* lib/mkmf.rb: use map! to replace strings in $objs array.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-26 02:10:36 +00:00
takano32 4bc66b71f3 Mon May 25 13:27:32 2009 TAKANO Mitsuhiro (takano32) <tak@no32.tk>
* lib/mkmf.rb: dont use gsub! method for frozen string.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-25 04:32:00 +00:00
nobu 6575009929 * lib/mkmf.rb (SRC_EXT): should be flat.
http://twitter.com/_tad_/status/1825862632

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-17 14:23:17 +00:00
nobu b6ed3dce38 * lib/mkmf.rb (try_link0): removes waste dSYM directories left
when debug and universal-binary are enabled.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-08 10:38:55 +00:00
nobu 9a99663fa9 * lib/mkmf.rb (check_sizeof): fixed wrong recuring result for
intrinsic types.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23369 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-08 10:17:04 +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 94890f6a9e * lib/mkmf.rb (init_mkmf): needs default library path even if
cross compiling.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-21 00:20:25 +00:00
nobu a6fa5855a8 * lib/mkmf.rb (what_type?): fixed typo, and refined for member of
aggregation types.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-08 05:00:07 +00:00
nobu 64be577b53 * lib/mkmf.rb (Logging.postpone): copy postponed output always.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-08 04:57:59 +00:00
nobu 0b05fc5a85 * lib/mkmf.rb (what_type?): fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-08 02:46:28 +00:00
nobu 72c161bb55 * lib/mkmf.rb (create_makefile): support for parallel make. a
patch from Takuto Matsuu at [ruby-dev:38220].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-01 10:46:48 +00:00
nobu 72122dd947 * lib/mkmf.rb (link_command, cc_command, cpp_command): should not
override extout defined in extmk.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-27 18:17:07 +00:00
nobu a8eaf31630 * lib/mkmf.rb (what_type?): checks more restrictively, and
supports universal binary.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-27 03:56:46 +00:00
nobu b7800329d3 * configure.in (RUBY_CHECK_SIZEOF): allows qualified name.
* configure.in (RUBY_REPLACE_TYPE): checks more strictly.

* configure.in (struct stat.st_size, struct stat.st_blocks),
  (struct stat.st_ino): check for size.

* lib/mkmf.rb (check_sizeof): allows qualified name.

* file.c (rb_stat_ino, rb_stat_blocks): check by size.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-19 09:49:51 +00:00
nobu 2e498843b6 * lib/mkmf.rb (CXX_EXT): checks for case-sensitive filesystem with
FNM_SYSCASE rather than build_os.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-14 01:39:15 +00:00
nobu 287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
nobu 2b3a204832 * ext/extmk.rb (extmake), lib/mkmf.rb (create_makefile): $objs and
$srcs are always Array or nil now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-03 07:25:50 +00:00
usa 3540727af5 * win32/Makefile.sub (config.status): use un.rb as cp instead of
cmd.exe's copy command.

	* lib/mkmf.rb (create_makefile): no longer need to convert path
	  separator when copying file.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-25 06:07:10 +00:00
nobu 030eed8f39 * lib/mkmf.rb (create_makefile): added phony targets.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-19 05:22:04 +00:00
nobu fb3fee22ca * lib/mkmf.rb (create_makefile): removes directories in the depth
order.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-19 05:18:27 +00:00
nobu 6784d8fda6 * lib/mkmf.rb (create_makefile): creates target directories before
copying.  [ruby-core:21958]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-19 05:14:30 +00:00
nobu 7c93e56560 * lib/mkmf.rb (have_header): needs dependent headers if trying to
compile.

* ext/socket/extconf.rb: net/if.h depends on other headers.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-07 02:44:07 +00:00
nobu d232a50435 * lib/mkmf.rb (try_header): checks the header depending on
platform.

* lib/mkmf.rb (have_header, find_header): use try_header.

* win32/Makefile.sub (try_header): uses try_compile to get rid of
  slow -E option of VC.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-27 02:09:47 +00:00
nobu c938de20cd * common.mk (distclean-enc, realclean-enc): do not call clean of
enc.mk twice or more.

* enc/depend (cleanobjs): added deffile.

* lib/mkmf.rb (create_makefile): removes deffile at clean instead
  of distclean.

* win32/Makefile.sub (miniruby, LIBRUBY_SO): removes lib and exp
  files.

* win32/Makefile.sub (clean, distclean): have moved to common.mk.

* win32/rmdirs.bat: omits `not empty' message.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-27 02:03:54 +00:00
matz a0947ecd75 * lib/mkmf.rb (create_makefile): should point correct path to
ruby.h and defines.h.   [ruby-core:21570]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-26 18:27:58 +00:00
nobu cdaadbd903 * lib/mkmf.rb (create_makefile):fixed the variables order because
converter proc refers the separator.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-25 02:50:24 +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 b9170351da * lib/mkmf.rb (configuration): tools under the top source
directory are not installed, so unusable outside extmk.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-23 23:21:16 +00:00
nobu 834e7488af * lib/mkmf.rb (configuration): leaves PATH_SEPARATOR unchanged.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-23 06:11:39 +00:00
nobu 389157d8cf * lib/mkmf.rb (mkintpath): new function which converts native path
to format acceptable in Makefile.

* lib/mkmf.rb (configuration): convers srcdir, topdir and hdrdir.
  a patch by Alexey Borzenkov <snaury AT gmail.com> at
  [ruby-core:21448].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-23 05:56:01 +00:00
nobu 1c374fef37 * lib/mkmf.rb (try_func): got rid of c-mode confusion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-23 05:34:49 +00:00
nobu 6708c103dc * lib/mkmf.rb (create_makefile): removes installed files under
extout at distclean.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-22 09:12:49 +00:00
nobu a7999ab13c * ext/extmk.rb (extmake): does not use both of makefile.rb and
extconf.rb at the same time.

* lib/mkmf.rb (DLLIB): depends on Makefile.  [ruby-core:21096]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-04 02:11:33 +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
nobu b6807f8356 * lib/mkmf.rb (create_tmpsrc): get rid of side effects.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-22 16:24:58 +00:00
nobu 3c276224fc * lib/mkmf.rb (CLEANINGS): uses escaped form tabs to preventing the
confusion.  [ruby-talk:317345]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-11 01:20:20 +00:00
nobu 8e39257025 * lib/mkmf.rb ($config_h): now always defines for old libraries.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-05 14:34:37 +00:00
yugui 8dd118c0db * djgpp/GNUmakefile.in: removed. Ruby no longer supports djgpp.
* djgpp/README.djgpp: ditto.

* djgpp/config.hin: ditto.

* djgpp/config.sed: ditto.

* djgpp/configure.bat: ditto.

* djgpp/mkver.sed: ditto.

* ext/Setup.dj: ditto.

* dln.c: removed djgpp supports.

* file.c: ditto.

* gc.c: ditto.

* io.c: ditto.

* process.c: ditto.

* ruby.c: ditto.

* signal.c: ditto.

* util.c: ditto.

* vm_core.h: ditto.

* lib/fileutils.rb: ditto.

* lib/mkmf.rb: ditto.

* ext/socket/socket.c: ditto.

* test/fileutils/test_fileutils.rb: ditto.

* test/ruby/test_env.rb: ditto.

* test/ruby/test_path.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04 13:25:12 +00:00
yugui bbbd9c0b7b * x68/_dtos18.c: removed. Ruby no longer supports human68k.
* x68/_round.c: ditto.

* x68/fconvert.c: ditto.

* x68/select.c: ditto.

* ext/Setup.x68: ditto.

* missing/x68.c: ditto.

* dln.c (dln_find_exe_r): removed human68k supports.
  (dln_find_1): ditto.

* lib/mkmf.rb: ditto.

* ext/extmk.rb (Init_ext): ditto.

* ext/socket/socket.c (init_sock): ditto.

* gc.c (GC_MALLOC_LIMIT): ditto.
  (rb_setjmp, rb_jmpbuf): ditto.
  (mark_current_machine_context): ditto.

* include/ruby/defines.h (PATH_ENV): ditto.

* io.c: ditto.

* process.c: ditto.

* ruby.c: ditto.

* test/ruby/test_env.rb: ditto.

* test/ruby/test_path.rb: ditto.

* LEGAL


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04 13:12:13 +00:00
yugui add4d16477 * lib/mkmf.rb (distclean): added RM_RF conftest.dSYM.
Fixes distclean-ext problem on Mac OS X.
  (RM_RF): added.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-01 13:44:54 +00:00
nobu fea2b2538d * lib/mkmf.rb (have_devel?): checks if the compiler works.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 09:22:06 +00:00
nobu 6e37ddcfbd * lib/mkmf.rb (Logging.log_open): opens in binary mode to get rid of
extra CR.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 08:59:09 +00:00
nobu 70b98dd4af * lib/mkmf.rb (try_func, try_var, have_struct_member),
(scalar_ptr_type?, scalar_type?): use MAIN_DOES_NOTHING.

* lib/mkmf.rb (MAIN_DOES_NOTHING): defaults to ordinary main.

* win32/Makefile.sub (config): for MAIN_DOES_NOTHING for wince.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-31 08:52:56 +00:00
nobu 59491ed3b0 * lib/mkmf.rb: not check config.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-17 06:58:41 +00:00
nobu ccdf3f1162 * lib/mkmf.rb (init_mkmf): add include/ruby/backward to $INCFLAGS.
* include/ruby/backward/{st,util}.h: added for backward compatibility.
  [ruby-dev:35811]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-17 06:58:10 +00:00
nobu eab4f19731 * lib/mkmf.rb, {bcc32,win32}/Makefile.sub (CLEANLIBS, CLEANOBJS):
moved clean targets to platfrom makefiles.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 05:16:27 +00:00
naruse 48e21d2051 * eval_intern.h: Add support to Haiku. see [ruby-core:18110]
* include/ruby/defines.h: ditto.

* configure.in: ditto.

* thread_pthread.c: ditto.

* io.c: ditto.

* lib/mkmf.rb: ditto.

* ext/socket/getaddrinfo.c: ditto.

* ext/socket/extconf.rb: ditto.

* ext/socket/socket.c: ditto.

* ext/socket/addrinfo.h: ditto.

* ext/socket/getnameinfo.c: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 20:52:44 +00:00
shyouhei 1b62e5ec37 * lib/mkmf.rb (create_tmpsrc): we need to include COMMON_HEADERS,
namely inclusion of ruby.h, because _GNU_SOURCE is now defined
 	  there (if any) and socket.so requires it on Linux systems.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 12:13:13 +00:00
nobu ce29c17877 * lib/mkmf.rb (configuration): set flags.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-09 12:14:39 +00:00
nobu b745b792e6 * common.mk, ext/extmk.rb, lib/mkmf.rb: use absolute path for RUBYOPT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 08:44:15 +00:00
nobu 279b358d00 * common.mk, ext/extmk.rb, lib/mkmf.rb: removed RUBYOPT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 08:29:24 +00:00
nobu 983aea463f * lib/mkmf.rb: rdoc added. [ruby-Patches-9762]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-07 10:56:13 +00:00
nobu 9d014dc254 * ext/extmk.rb, enc/make_encmake.rb: load current mkmf.rb even if
cross-compiling.

* ext/extmk.rb, enc/make_encmake.rb, lib/mkmf.rb: need to be 1.8
  compatible for cross-compiling.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-26 18:56:00 +00:00
usa f6628871b5 * enc/depend: fix typo.
* lib/mkmf.rb: revert r15443. "\\1#{sep}\\2" is wrong if sep is ended
	  with "\\".



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-13 02:21:25 +00:00
naruse a10ded3ba0 * bootstraptest/runner.rb, bootstraptest/test_method.rb, enc/depend,
instruby.rb, lib/mkmf.rb, lib/test/unit/util/procwrapper.rb,
mkconfig.rb, sample/test.rb, template/vm.inc.tmpl,
test/ruby/test_stringchar.rb: fixes arround String#gsub.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-12 06:28:23 +00:00
nobu f3d18d8c4c * lib/mkmf.rb (xsystem): expand macros like as make.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-08 06:09:23 +00:00
nobu f0cc22e990 * lib/mkmf.rb (INSTALL_DIRS, install_dirs): added BINDIR.
* lib/mkmf.rb (install_files): rejects files matching to
  $NONINSTALLFILES.

* lib/mkmf.rb (init_mkmf): defaults $NONINSTALLFILES to backup and
  temporary filse.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-05 02:14:17 +00:00
usa 5b3b96bb19 * mkmf.rb (create_makefile): sorry, typo. orz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-22 12:00:15 +00:00
usa 8e2f164bd9 * mkmf.rb (create_makefile): typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-22 11:59:47 +00:00
usa 977eac0fe8 * lib/mkmf.rb (create_makefile): need to output sodir rule.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-22 11:58:42 +00:00
usa 385c5ffacc * lib/mkmf.rb (create_makefile): lib files shoudn't depend on install
dir because if the dir is newer than lib files, lib files will be
	  always copied.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-22 10:40:23 +00:00
usa 99a24e9e15 * lib/mkmf.rb (depend_rules): need to convert `/' to `\' for windows
native commands.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-29 21:28:53 +00:00
usa fc9a7983cf * lib/mkmf.rb (create_tmpsrc): retry to create file if Errno::EACCES
occurs. this is a workaround for mswin32.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-26 17:32:22 +00:00
knu c40d4252ce * lib/mkmf.rb (create_makefile): Add a missing dependency on the
target directory for each .rb file.  This will hopefully fix
  parallel make (-jN).  Tested on FreeBSD.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 08:37:13 +00:00
matz df914b2fef lib/mkmf.rb: revert last change
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 05:37:25 +00:00
matz 73b8faf7b9 * lib/mkmf.rb (map_dir): should generate path including $top_srcdir.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-25 05:21: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
usa bc0963a204 * lib/mkmf.rb ($extmk): fixed broken condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 08:39:26 +00:00
usa eff45d2cc8 * lib/mkmf.rb ($extmk): fixed broken condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 08:32:53 +00:00
usa 366b82dde8 * lib/mkmf.rb ($extmk): set true only when under ext/ or tool/.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-22 06:19:11 +00:00
usa fede8b213b * lib/mkmf.rb (depend_rules): suffixes list broken. fixed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 14:49:56 +00:00
nobu acaa4a431e * lib/mkmf.rb (depend_rules): inserts ruby to only headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 16:40:22 +00:00
nobu 6ed9bdd463 * common.mk (encs): added dependencies.
* enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code.

* lib/mkmf.rb (depend_rules): now takes content string, not file name.

* win32/enc-setup.mak: overrides default target.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 16:15:46 +00:00
nobu b2d9f1e9d0 * common.mk (encs): new target to compile external encodings.
* enc/Makefile.in: became a serb template.

* enc/make_encmake.rb: creates enc.mk from enc/Makefile.in using serb.

* lib/mkmf.rb (relative_from): moved from ext/extmk.rb.

* lib/mkmf.rb ($extmk): true if under to top source directory, not
  only ext.

* lib/mkmf.rb (depend_rules): extracted from create_makefile.

* tool/serb.rb (serb): splitted from tool/compile_prelude.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-17 08:47:28 +00:00
nobu 3cce5965da * lib/mkmf.rb (try_var): should fail for functions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-14 02:54:08 +00:00
nobu 49b1513d1e * ext/extmk.rb (extract_makefile): use dldflags instead of DLDFLAGS to
get rid of mixing $LDFLAGS and $ARCH_FLAG.

* lib/mkmf.rb (configuration): ditto.

* lib/mkmf.rb (create_makefile): support for extensions which has no
  shared object.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-28 05:43:17 +00:00
nobu 16dc06014c * lib/mkmf.rb (String#tr_cpp): make preprocessor identifiers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-18 00:09:50 +00:00
akr aa7ce1ece1 * lib/mkmf.rb (have_struct_member): define HAVE_type_member.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-17 20:20:44 +00:00
nobu bbad2d22ea * lib/mkmf.rb (create_makefile): rdoc about srcprefix. a patch from
Daniel Berger <djberg96 AT gmail.com> in [ruby-core:13378].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-12 07:52:31 +00:00
akr 9435853daf * configure.in: --with-vendor-hdrdir implemented.
* lib/mkmf.rb: check --vendor argument.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-03 13:30:59 +00:00
nobu b933a5348b * configure.in (AC_SYS_LARGEFILE): keep results also in command
options, to vail out of mismatch.  [ruby-list:44114]

* mkconfig.rb, lib/mkmf.rb (configuration): add DEFS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-13 19:08:37 +00:00
nobu 18c9e590c3 * lib/mkmf.rb: initialize $top_srcdir always. [ruby-dev:31682]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-30 04:49:27 +00:00
nobu 10084a3e61 * lib/mkmf.rb (try_const, have_const): check for a const is defined.
[ruby-core:04422]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-30 04:13:16 +00:00
nobu f3a1a4a4ba * lib/mkmf.rb (find_type): new method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-02 22:09:08 +00:00
nobu 3322974196 * lib/mkmf.rb (have_type): suppress a warning with -Wall.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-02 21:40:06 +00:00
nobu 899742b269 * lib/mkmf.rb: more verbose message. [ruby-Bugs-12766]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-02 21:17:37 +00:00
nobu 021660e442 * lib/mkmf.rb (create_makefile): make OBJS depend on RUBY_EXTCONF_H
only if extconf.h is created.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-21 08:07:37 +00:00
nobu 90ae4b364b * lib/mkmf.rb (init_mkmf): should remove mkmf.log too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-21 03:06:50 +00:00
nobu b53224b493 * lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
::CONFIG which is an alias of MAKEFILE_CONFIG.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-13 01:10:48 +00:00
akr 38f9878b59 fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-16 13:30:58 +00:00
nobu 13349fd176 * lib/mkmf.rb (Logging.quiet, Logging.message): added quiet flag and
use it.  [ruby-core:10909]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-12 05:52:19 +00:00
nobu 8cc8c9f9a1 * lib/mkmf.rb (find_header): use header names in the message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-12 05:43:06 +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
nobu 80a0e2f753 * ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
load path to get rid of load pre-installed extensions/libraries.
  [ruby-core:11017]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-22 20:48:34 +00:00
nobu 692010a235 * lib/mkmf.rb (libpathflag): not to append RPATHFLAG to current
directory.

* lib/mkmf.rb (init_mkmf): add current directory to default
  library path with highest priority.  [ruby-core:10960]

* lib/mkmf.rb (LINK_SO): LIBPATH to be placed before DLDFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-23 13:08:29 +00:00
usa bcb0b021e3 * lib/mkmf.rb ($DEFLIBPATH): default library paths ($(topdir), etc)
should be the first elements of library paths list.
  reported by KOBAYASHI Yasuhiro [ruby-list:43225]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-28 09:26:07 +00:00
nobu f41d55aec8 * lib/mkmf.rb (create_makefile): make object files depend on
extconf.h even if depend file exists.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-02 17:36:59 +00:00
ko1 a3e1b1ce7e * Merge YARV
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-31 15:02:22 +00:00
nobu d63cf3fa2a * lib/mkmf.rb (create_makefile): remove static library before update,
to get rid of sludge of Borland tlib.exe.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-14 15:20:14 +00:00
eban 03f19e27ed * lib/mkmf.rb: fixed the bug of handling COMMON_MACROS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-20 02:33:49 +00:00
matz f8a90f1c0c * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
character literal (1 char string).

* lib/mkmf.rb: shut up some warnings from tk's extconf.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-12 09:28:28 +00:00
nobu 88d6c083ea * ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
lib/shellwords.rb: get rid of shadowing outer local variable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-09 14:41:24 +00:00
nobu 5f1caf89e4 * lib/mkmf.rb (try_func): revert fallback checking undeclared function.
fixed: [ruby-core:08949]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-29 02:44:37 +00:00
nobu 4f6f0b1066 * lib/mkmf.rb (try_func): check function pointer first and macro next.
* lib/mkmf.rb (have_type): simplified with typedef and sizeof.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-26 16:05:52 +00:00
nobu c7908b19b0 * lib/mkmf.rb (rm_f): get rid of NUL.
* lib/mkmf.rb (init_mkmf): set default $LDFLAGS.  Patch by Michal
  Suchanek <hramrach at centrum.cz>.  [ruby-talk:216256]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-25 13:26:40 +00:00
nobu 8978bfe7f9 * common.mk (pre-install-doc): create data directory before install.
* lib/mkmf.rb (dir_re): fixed typo.

* lib/mkmf.rb (install_dirs): remove extra slash.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-20 14:18:19 +00:00
nobu 4b6a1b7f9c * lib/mkmf.rb (checking_for): improved the messages.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-16 07:22:49 +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
usa 3d1b573946 * ext/extmk.rb (extmake): follow Array#to_s.
* lib/mkmf.rb (create_makefile): ditto.

* win32/resource.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-08 07:38:53 +00:00
matz d1cb9e75d0 * array.c (Init_Array): #to_s to be an alias to #inspect.
[EXPERIMENTAL] [ruby-dev:29520]

* hash.c (Init_Hash): ditto.

* lib/mkmf.rb (create_makefile): replace "print array" by
  "print *array".

* mkconfig.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-07 16:33:08 +00:00
nobu 0dbe495044 * lib/mkmf.rb: get rid of nil.to_s.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-03 06:34:13 +00:00
nobu 079ec46b4b * lib/mkmf.rb (configuration): follow nil.to_s.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31 14:59:43 +00:00
usa 6790891ef0 * ext/Win32API/Win32API.c (Win32API_initialize): use RSTRING_PTR and
RSTRING_LEN.

* ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.

* ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.

* lib/mkmf.rb (create_makefile): follow nil.to_s.

* win32/resource.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31 11:56:42 +00:00
matz e8f43ad081 * object.c (rb_Integer): Integer(nil) should raise TypeError.
[ruby-talk:210205]

* object.c (nil_to_s): no longer returns empty string but "nil".
  [ruby-talk:210205]

* lib/mkmf.rb: avoid COMMON_HEADERS being nil.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-30 09:46:57 +00:00
nobu 74eced22e9 * lib/mkmf.rb: added rdoc by Daniel Berger. [ruby-core:08177]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-17 05:47:50 +00:00
usa c0eb19d91a * lib/mkmf.rb (configuration): typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-25 05:50:45 +00:00
nobu 53f6b89e7e * ext/extmk.rb, lib/mkmf.rb (with_destdir): remove drive letter before
prepending destdir on DOSISH.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-21 03:12:45 +00:00
nobu 624ae68379 * lib/mkmf.rb (create_makefile): prevent substitution of macro
definition.  fixed: http://www.yotabanana.com/lab/20060624.html#p02


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-09 09:07:42 +00:00
nobu c27f8d5b3a * lib/mkmf.rb (try_constant): fix for value 1 at cross compiling.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-09 09:05:47 +00:00
nobu 3e5f70a815 * math.c (log2): may be a macro.
* parse.y (args, block_param, f_args): pass f_post_arg to #params.

* util.c (powersOf10): constified.

* ext/readline/readline.c: include extconf.h first.

* ext/ripper/eventids2.c: removed tLAMBDA_ARG.

* ext/tk/tcltklib.c (lib_fromUTF8_core): removed conflict.

* ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): rb_id2name() is
  defined as const now.

* ext/win32ole/win32ole.c (fole_missing): ditto.

* lib/mkmf.rb (create_makefile): force to create extconf header.

* lib/optparse.rb (order!): use Proc#yield.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-09 23:18:04 +00:00
matz 9b383bd6cf * sprintf.c (rb_str_format): allow %c to print one character
string (e.g. ?x).

* lib/tempfile.rb (Tempfile::make_tmpname): put dot between
  basename and pid.  [ruby-talk:196272]
* parse.y (do_block): remove -> style block.

* parse.y (parser_yylex): remove tLAMBDA_ARG.

* eval.c (rb_call0): binding for the return event hook should have
  consistent scope.  [ruby-core:07928]

* eval.c (proc_invoke): return behavior should depend whether it
  is surrounded by a lambda or a mere block.

* eval.c (formal_assign): handles post splat arguments.

* eval.c (rb_call0): ditto.

* st.c (strhash): use FNV-1a hash.

* parse.y (parser_yylex): removed experimental ';;' terminator.

* eval.c (rb_node_arity): should be aware of post splat arguments.

* eval.c (rb_proc_arity): ditto.

* parse.y (f_args): syntax rule enhanced to support arguments
  after the splat.

* parse.y (block_param): ditto for block parameters.

* parse.y (f_post_arg): mandatory formal arguments after the splat
  argument.

* parse.y (new_args_gen): generate nodes for mandatory formal
  arguments after the splat argument.

* eval.c (rb_eval): dispatch mandatory formal arguments after the
  splat argument.

* parse.y (args): allow more than one splat in the argument list.

* parse.y (method_call): allow aref [] to accept all kind of
  method argument, including assocs, splat, and block argument.

* eval.c (SETUP_ARGS0): prepare block argument as well.

* lib/mathn.rb (Integer): remove Integer#gcd2. [ruby-core:07931]

* eval.c (error_line): print receivers true/false/nil specially.

* eval.c (rb_proc_yield): handles parameters in yield semantics.

* eval.c (nil_yield): gives LocalJumpError to denote no block
  error.

* io.c (rb_io_getc): now takes one-character string.

* string.c (rb_str_hash): use FNV-1a hash from Fowler/Noll/Vo
  hashing algorithm.

* string.c (rb_str_aref): str[0] now returns 1 character string,
  instead of a fixnum.	[Ruby2]

* parse.y (parser_yylex): ?c now returns 1 character string,
  instead of a fixnum.	[Ruby2]

* string.c (rb_str_aset): no longer support fixnum insertion.

* eval.c (umethod_bind): should not update original class.
  [ruby-dev:28636]

* eval.c (ev_const_get): should support constant access from
  within instance_eval().  [ruby-dev:28327]

* time.c (time_timeval): should round for usec floating
  number.  [ruby-core:07896]

* time.c (time_add): ditto.

* dir.c (sys_warning): should not call a vararg function
  rb_sys_warning() indirectly.	[ruby-core:07886]

* numeric.c (flo_divmod): the first element of Float#divmod should
  be an integer. [ruby-dev:28589]

* test/ruby/test_float.rb: add tests for divmod, div, modulo and remainder.

* re.c (rb_reg_initialize): should not allow modifying literal
  regexps.  frozen check moved from rb_reg_initialize_m as well.

* re.c (rb_reg_initialize): should not modify untainted objects in
  safe levels higher than 3.

* re.c (rb_memcmp): type change from char* to const void*.

* dir.c (dir_close): should not close untainted dir stream.

* dir.c (GetDIR): add tainted/frozen check for each dir operation.

* lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_symbol_arg):
  typo fixed.  a patch from Florian Gross <florg at florg.net>.

* eval.c (EXEC_EVENT_HOOK): trace_func may remove itself from
  event_hooks.	no guarantee for arbitrary hook deletion.
  [ruby-dev:28632]

* util.c (ruby_strtod): differ addition to minimize error.
  [ruby-dev:28619]

* util.c (ruby_strtod): should not raise ERANGE when the input
  string does not have any digits.  [ruby-dev:28629]

* eval.c (proc_invoke): should restore old ruby_frame->block.
  thanks to ts <decoux at moulon.inra.fr>.  [ruby-core:07833]
  also fix [ruby-dev:28614] as well.

* signal.c (trap): sig should be less then NSIG.  Coverity found
  this bug.  a patch from Kevin Tew <tewk at tewk.com>.
  [ruby-core:07823]

* math.c (math_log2): add new method inspired by
  [ruby-talk:191237].

* math.c (math_log): add optional base argument to Math::log().
  [ruby-talk:191308]

* ext/syck/emitter.c (syck_scan_scalar): avoid accessing
  uninitialized array element.	a patch from Pat Eyler
  <rubypate at gmail.com>.  [ruby-core:07809]

* array.c (rb_ary_fill): initialize local variables first.  a
  patch from Pat Eyler <rubypate at gmail.com>.	 [ruby-core:07810]

* ext/syck/yaml2byte.c (syck_yaml2byte_handler): need to free
  type_tag.  a patch from Pat Eyler <rubypate at gmail.com>.
  [ruby-core:07808]

* ext/socket/socket.c (make_hostent_internal): accept ai_family
  check from Sam Roberts <sroberts at uniserve.com>.
  [ruby-core:07691]

* util.c (ruby_strtod): should not cut off 18 digits for no
  reason.  [ruby-core:07796]

* array.c (rb_ary_fill): internalize local variable "beg" to
  pacify Coverity.  [ruby-core:07770]

* pack.c (pack_unpack): now supports CRLF newlines.  a patch from
  <tommy at tmtm.org>.	[ruby-dev:28601]

* applied code clean-up patch from Stefan Huehner
  <stefan at huehner.org>.  [ruby-core:07764]

* lib/jcode.rb (String::tr_s): should have translated non
  squeezing character sequence (i.e. a character) as well.  thanks
  to Hiroshi Ichikawa <gimite at gimite.ddo.jp> [ruby-list:42090]

* ext/socket/socket.c: document update patch from Sam Roberts
  <sroberts at uniserve.com>.  [ruby-core:07701]

* lib/mathn.rb (Integer): need not to remove gcd2.  a patch from
  NARUSE, Yui <naruse at airemix.com>.	[ruby-dev:28570]

* parse.y (arg): too much NEW_LIST()

* eval.c (SETUP_ARGS0): remove unnecessary access to nd_alen.

* eval.c (rb_eval): use ARGSCAT for NODE_OP_ASGN1.
  [ruby-dev:28585]

* parse.y (arg): use NODE_ARGSCAT for placeholder.

* lib/getoptlong.rb (GetoptLong::get): RDoc update patch from
  mathew <meta at pobox.com>.  [ruby-core:07738]

* variable.c (rb_const_set): raise error when no target klass is
  supplied.  [ruby-dev:28582]

* prec.c (prec_prec_f): documentation patch from
  <gerardo.santana at gmail.com>.  [ruby-core:07689]

* bignum.c (rb_big_pow): second operand may be too big even if
  it's a Fixnum.  [ruby-talk:187984]

* README.EXT: update symbol description.  [ruby-talk:188104]

* COPYING: explicitly note GPLv2.  [ruby-talk:187922]

* parse.y: remove some obsolete syntax rules (unparenthesized
  method calls in argument list).

* eval.c (rb_call0): insecure calling should be checked for non
  NODE_SCOPE method invocations too.

* eval.c (rb_alias): should preserve the current safe level as
  well as method definition.

* process.c (rb_f_sleep): remove RDoc description about SIGALRM
  which is not valid on the current implementation. [ruby-dev:28464]

 Thu Mar 23 21:40:47 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>

* eval.c (method_missing): should support argument splat in
  super.  a bug in combination of super, splat and
  method_missing.  [ruby-talk:185438]

* configure.in: Solaris SunPro compiler -rapth patch from
  <kuwa at labs.fujitsu.com>.  [ruby-dev:28443]

* configure.in: remove enable_rpath=no for Solaris.
  [ruby-dev:28440]

* ext/win32ole/win32ole.c (ole_val2olevariantdata): change behavior
  of converting  OLE Variant object with VT_ARRAY|VT_UI1 and Ruby
  String object.

* ruby.1: a clarification patch from David Lutterkort
  <dlutter at redhat.com>.  [ruby-core:7508]

* lib/rdoc/ri/ri_paths.rb (RI::Paths): adding paths from rubygems
  directories.	a patch from Eric Hodel <drbrain at segment7.net>.
  [ruby-core:07423]

* eval.c (rb_clear_cache_by_class): clearing wrong cache.

* ext/extmk.rb: use :remove_destination to install extension libraries
  to avoid SEGV.  [ruby-dev:28417]

* eval.c (rb_thread_fd_writable): should not re-schedule output
  from KILLED thread (must be error printing).

* array.c (rb_ary_flatten_bang): allow specifying recursion
  level.  [ruby-talk:182170]

* array.c (rb_ary_flatten): ditto.

* gc.c (add_heap): a heap_slots may overflow.  a patch from Stefan
  Weil <weil at mail.berlios.de>.

* eval.c (rb_call): use separate cache for fcall/vcall
  invocation.

* eval.c (rb_eval): NODE_FCALL, NODE_VCALL can call local
  functions.

* eval.c (rb_mod_local): a new method to specify newly added
  visibility "local".

* eval.c (search_method): search for local methods which are
  visible only from the current class.

* class.c (rb_class_local_methods): a method to list local methods.

* object.c (Init_Object): add BasicObject class as a top level
  BlankSlate class.

* ruby.h (SYM2ID): should not cast to signed long.
  [ruby-core:07414]

* class.c (rb_include_module): allow module duplication.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-09 21:20:17 +00:00
nobu 5fc8821161 * lib/mkmf.rb (CLEANINGS): remove extconf.h by distclean if created.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-02 08:16:44 +00:00
nobu 2ad6b5a887 * ext/extmk.rb (extmake): remove extinit files if no statically linked
extensions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-27 02:30:10 +00:00
nobu 3449f576f4 * lib/mkmf.rb (configuration): add $defs unless extconf.h was created.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-26 00:05:23 +00:00
nobu e34b2a73e6 * ruby.h, lib/mkmf.rb (create_header): clear command line options for
macros moved to extconf.h.

* ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and
  EXTSTATIC permanent.

* ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS.

* {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added
  $(INCFLAGS).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-25 23:44:08 +00:00
nobu 0ca603c1bc * mkconfig.rb: merge multiple entries to an entry with multiple lines.
* lib/mkmf.rb: allow a series of commands to link.

* win32/Makefile.sub: embed manifests.

* win32/setup.mak: suffix OS name by runtime version.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-24 16:52:00 +00:00
nobu 18cf07cc7c * lib/mkmf.rb (pkg_config): particular config commands support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-24 15:51:03 +00:00
nobu fbbc511d65 * ext/extmk.rb, lib/mkmf.rb: use BUILD_FILE_SEPARATOR in Makefiles.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-17 15:42:21 +00:00
usa 597cfafb88 * lib/mkmf.rb (create_makefile): support libraries without *.so.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-15 07:55:10 +00:00
akr 04946de81b * mkconfig.rb: generate RbConfig instead of Config.
* instruby.rb, rubytest.rb, runruby.rb, bcc32/Makefile.sub,
  ext/extmk.rb, ext/dl/extconf.rb, ext/iconv/charset_alias.rb,
  lib/mkmf.rb, lib/rdoc/ri/ri_paths.rb,
  lib/webrick/httpservlet/cgihandler.rb,
  test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb,
  test/ruby/envutil.rb, test/soap/calc/test_calc_cgi.rb,
  test/soap/header/test_authheader_cgi.rb, test/soap/ssl/test_ssl.rb,
  win32/mkexports.rb, win32/resource.rb: Use RbConfig instead of
  Config.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-20 08:34:53 +00:00
ocean 258f80c82f * lib/mkmf.rb (create_makefile): Kernel#sub! was removed on HEAD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-05 07:37:38 +00:00
ocean bb4507588c * lib/mkmf.rb (create_makefile): should not change sodir with
dir.gsub!. (bccwin32 failed to install third party exntesions)
  [ruby-dev:27834]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-28 00:22:53 +00:00
nobu d6837060be * ext/extmk.rb, lib/mkmf.rb (with_config): support --with-extension
options.  [ruby-dev:27449]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-22 14:55:07 +00:00
ocean 7f60c0289c * lib/mkmf.rb (create_makefile): Borland make seems not to allow
empty dependency list. If this change is not good, please correct
  it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-20 00:42:43 +00:00
nobu 834bd9db0b * lib/mkmf.rb (create_makefile): get rid of a restriction
of Borland make.  fixed: [ruby-dev:27460]

* ext/ripper/depend: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-19 22:55:51 +00:00
nobu 23ac67ac43 * lib/mkmf.rb (create_makefile): do not create unnecessary empty
directories. fixed: [ruby-dev:27451]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-19 14:58:57 +00:00
nobu 4857e1d300 * lib/mkmf.rb (find_executable0): default path if environment is not
set.  [ruby-dev:27281]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-22 14:37:02 +00:00
nobu c6b5ca0e21 * lib/mkmf.rb (configuration): generalized nmake dependent code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-21 14:31:20 +00:00
nobu 757c6fa4c9 * lib/mkmf.rb (what_type?): guesstimate type.
* ext/etc/etc.c (setup_passwd), ext/etc/extconf.rb: pw_age might be
  char*.  fixed: [ruby-core:05470]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-06 23:35:31 +00:00
nobu 624842f6a0 * lib/mkmf.rb (xsystem, xpopen): no longer expand by Config.
* lib/mkmf.rb (link_command, cc_command, cpp_command): expand
  variables at once, and quote hdrdir.  fixed: [ruby-core:05680]

* lib/mkmf.rb (libpathflag): quote paths.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-30 14:21:18 +00:00
usa 107e177cb8 * lib/mkmf.rb (create_makefile): need to convert path separetor
before invoking install command.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-05 03:43:34 +00:00
nobu d00d9606d1 * lib/mkmf.rb: keep curdir unexpanded.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-12 14:33:10 +00:00
nobu f36783751b * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file.
fixed: [ruby-dev:26294]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-07 09:30:35 +00:00
eban aee4253e70 * lib/mkmf.rb: use the semicolon as the path separator
in the environment of MSYS.  fixed: [ruby-dev:26232]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-27 07:49:06 +00:00
nobu 2c716f2b47 * ext/extmk.rb: keep srcdir unexpanded.
* lib/mkmf.rb (create_makefile): quote topdir and hdrdir if necessary.
  fixed: [ruby-core:04932]

* lib/mkmf.rb (configuration), {bcc32,win32,wince}/Makefile.sub: make
  also INSTALL_PROG and INSTALL_DATA system dependent.
  fixed: [ruby-core:04931]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-13 14:44:59 +00:00
nobu d88a67866c * lib/mkmf.rb (have_var): no libs argument is given.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-07 13:58:26 +00:00
nobu dbbfbc5a21 * configure.in, lib/mkmf.rb, {bcc32,win32,wince}/Makefile.sub: improve
C++ support.  [ruby-dev:26089]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-20 21:45:43 +00:00
nobu 514df9097e * lib/mkmf.rb (create_makefile): support platforms have file separator
other than /.

* {bcc32,win32,wince}/Makefile.sub (BUILD_FILE_SEPARATOR): separator
  of building platform.

* {bcc32,win32,wince}/Makefile.sub (CP, INSTALL): use COPY command.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-20 15:08:36 +00:00
usa 07f61642e4 * lib/mkmf.rb (configuration): shouldn't output hdrdir twice.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-11 06:26:49 +00:00
nobu 06c1a64ebb * ext/extmk.rb (extmake): hdrdir needs to be defined also in
Config::CONFIG.

* lib/mkmf.rb (configuration, create_makefile): get rid of recursive
  macro reference.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-08 11:18:17 +00:00
nobu 9ea857d7ee * ext/extmk.rb (extmake): keep directory names in Makefile as macros.
* lib/mkmf.rb (configuration, create_makefile): ditto.

* lib/mkmf.rb (CXX_EXT): separate C++ extensions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-07 14:59:24 +00:00
nobu df9cf4fc67 * lib/mkmf.rb (create_makefile): ensure library directories get made
before copying libraries there.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-02 14:39:38 +00:00
nobu fb707a7704 * configure.in (CP, INSTALL): get rid of less portable options.
* lib/mkmf.rb (configuration, create_makefile): correct configuration
  variable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-02 13:30:49 +00:00
nobu 0f52655b06 * lib/mkmf.rb (SRC_EXT): exclude just case different suffixes on case
insensitive file system platforms.

* README.EXT, README.EXT.ja (Appendix C): utility functions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-31 13:24:27 +00:00
nobu 15df6bd4f7 * lib/mkmf.rb (macro_defined?): try to compile for an old compiler
which doesn't bail out at #error directive.  [ruby-dev:25818]

* lib/mkmf.rb (check_sizeof): refine logging messages.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-24 14:11:27 +00:00
nobu 25012d5420 * lib/mkmf.rb (mkmf_failed): check if Makefile is created without
create_makefile.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-20 13:51:48 +00:00
nobu 4783944876 * lib/mkmf.rb (create_makefile): allow putting spaces between target
and colon in depend file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-05 03:52:21 +00:00
kou 6b68105ab2 * lib/mkmf.rb (mkmf_failed): fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-22 15:39:40 +00:00
nobu 984f9a0df1 * configure.in, lib/mkmf.rb: use simple commands if available.
* mkconfig.rb: remove autoconf internal variables from rbconfig.rb.

* lib/mkmf.rb (create_makefile): substitute implicit rules in depend
  file.

* {bcc32,win32,wince}/Makefile.sub (COMPILE_RULES, RULE_SUBST):
  include $(topdir) and $(hdrdir) to search path.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-22 14:52:59 +00:00
nobu 74240f58c3 * lib/mkmf.rb (create_makefile): reverted wrongly removed lines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-19 04:31:36 +00:00
nobu 9648e68d88 * ext/extmk.rb (extract_makefile): remove no longer existing installed
files.

* lib/mkmf.rb (install_dirs): return installation directory list.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-19 01:43:58 +00:00
usa 0de2877326 * lib/mkmf.rb (create_makefile): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10 03:58:50 +00:00
nobu 80f4330973 * bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
import32.lib.

* lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to
  rule lines, add search path to implicit rules, and set Borland make
  special macros for search path.

* win32/win32.c, win32/win32.h (read): aboid a BCC runtime bug.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10 03:07:24 +00:00
nobu ef8f1ff3df * lib/mkmf.rb (with_cppflags, with_cflags, with_ldflags): keep flags
modified if the block returned true.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-06 16:23:03 +00:00
nobu 7a07ffe479 * ext/extmk.rb (extract_makefile): extract previously collected
informations from existing Makefile.

* ext/socket/extconf.rb: check if getaddrinfo() works fine only when
  wide-getaddrinfo option is not given.  fixed: [ruby-dev:25422]

* ext/tk/extconf.rb: separate tkutil configuration.

* lib/mkmf.rb ($extmk): check if under ext directory.

* lib/mkmf.rb (Logging.postpone): allow recursive operation.

* lib/mkmf.rb (try_constant): make sure if really a constant, reduce
  the number of times of compile.

* lib/mkmf.rb (have_macro, have_var, byte_order): new functions.

* lib/mkmf.rb (find_library): allow directory list with separators.

* lib/mkmf.rb (arg_config): manage provided configuration options.

* lib/mkmf.rb (dir_config): accept arrays of directory names as
  default values.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-06 14:51:44 +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
nobu 326ebac3db * lib/mkmf.rb (create_makefile): create RUBYARCHDIR also when no extension
is installed.  fixed: [ruby-dev:25215]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-16 14:31:21 +00:00
eban 19f57ce144 * process.c (rb_spawn): support for DJGPP.
* lib/mkmf.rb (VPATH): specify the implicit path separator for DJGPP.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08 11:14:53 +00:00
nobu 740b2d99ce * lib/mkmf.rb (create_makefile): install-rb is needed for statically
linked extensions.  [ruby-dev:24491]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-16 01:56:44 +00:00
matz e77ddaf0d1 * array.c (rb_ary_delete): element comparison might change array
size. [ruby-dev:24273]

* parse.y: make ruby parser reentrant. merge ripper parser to the
  real one.  this change makes ruby require bison.

* file.c (rb_file_truncate): clear stdio buffer before truncating
  the file.  [ruby-dev:24191]

* ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
  which might return singleton class.  [ruby-dev:24202]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 09:24:13 +00:00
nobu 7e28ad63ff * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
* lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
  uniformly.  [ruby-dev:24118]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-20 21:42:21 +00:00
knu db850b21fd * lib/mkmf.rb (init_mkmf): Do not add $(libdir) to $LIBPATH in
extmk mode.

* lib/mkmf.rb (dir_config): Prepend a new library path instead of
  appending so it is tried first.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-13 06:54:01 +00:00
nobu 6f9195ec91 * configure.in, lib/mkmf.rb (LIBPATHFLAG): use double quotes due to
DOSISH compilers.  [ruby-core:03107]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-28 05:58:13 +00:00
nobu 1f16f35849 * lib/mkmf.rb (libpathflag): should not quote here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-26 03:43:26 +00:00
nobu 4cf1e8654d * lib/mkmf.rb (libpathflag, find_header, dir_config): quote directory
names if necessary.  [ruby-talk:104505]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-26 02:07:30 +00:00
nobu fc04396ea3 * lib/mkmf.rb (check_sizeof): define result size. [ruby-core:02911]
* lib/mkmf.rb (create_header): macro name should not include equal
  sign.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-20 08:02:11 +00:00
matz a6a8847190 * numeric.c (flo_eq): alway check if operands are NaN.
[ruby-list:39685]

* lib/cgi/session.rb: use LOCK_SH to read, and a few other
  improvements.  [ruby-core:02328]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-20 04:34:14 +00:00
nobu 41e4c5de36 * lib/mkmf.rb (have_type): do not check pointer to incomplete type,
which always get compiled.
  [ruby-list:39683]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-20 03:22:20 +00:00
nobu 93472ba0ed * lib/mkmf.rb (have_type, check_sizeof): replace unusable characters.
[ruby-talk:99788]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-12 10:59:52 +00:00
nobu 7792d9026a * lib/mkmf.rb: $hdrdir should not contain macros, for backward
compatibility.  [bruby-dev:28]

* lib/mkmf.rb (create_makefile): in the case of extout, just copy
  script files, without comparison.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-23 14:24:51 +00:00
nobu fa7a5d5477 * ext/extmk.rb (extmake): skip uncompiled extensions.
* lib/mkmf.rb (create_makefile): emit no rules for static library if
  $static is nil, e.g., outside of ext/.

* lib/test/unit/ui/console/testrunner.rb (test_started): show test
  name via $0.

* runruby.rb: set environments to use the compiled binary.

* test/runner.rb: do nothing while cross-compiling.

* test/drb/drbtest.rb, test/soap/calc/test_calc_cgi.rb: use envutil to
  know ruby binary.

* test/ruby/envutil.rb: give priority to RUBY environment variable to
  use just compiled binary and libraries.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-08 10:45:21 +00:00
nobu 5c51ccc35c * ext/extmk.rb (extmake): extract necessary variables for static link
from Makefile.

* lib/mkmf.rb (create_makefile): save preload and libpath for next
  compile.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-02 09:00:12 +00:00