Commit graph

796 commits

Author SHA1 Message Date
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
nobu
0243b1d29c * win32/Makefile.sub (clean-ext): condition of EXTS was inverted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-25 03:03:00 +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
usa
9e83ce20b1 * revert previous revision. it's already out-of-date.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-22 07:13:40 +00:00
usa
a3e8d63a75 * include/ruby/win32.h, win32/win32.c (rb_w32_is_valid_fd): new function
to validate fd.

	* io.c (rb_io_initialize): check fd with above function.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-22 06:55:20 +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
usa
75412a4322 * win32/Makefile.sub (up): tell nmake that need to run command via
shell.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-16 09:53:17 +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
c68fdad473 * win32/Makefile.sub ($(INSNS), node_name.inc, known_errors.inc,
miniprelude.c, newline.c): if dependencies is newer than targets or
	  targets don't exist, try to create targets with BASERUBY. no need to
	  detect errors there because the absence of BASERUBY is not abnormal.
	  after the try, if the targets still don't exist, copy them from
	  $(srcdir).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-16 03:38:58 +00:00
usa
f1e87dd9ac * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX): must define as string.
if not, cause compile error in using PRI?VALUE.

	* win32/Makefile.sub (config.h): add SIZEOF_INTPTR_T and
	  SIZEOF_UINTPTR_T for SIZEOF_VALUE.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-16 03:18:09 +00:00
usa
a9cd6cc0a1 * win32/Makefile.sub ($(INSNS), node_name.inc, known_errors.inc,
miniprelude.c, newline.c): shoudn't copy when $(srcdir) != ".", too.
	  (this is a workaround.  we need more strict check.)

	* win32/Makefile.sub ($(INSNS)): shound't remove BASERUBY.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-15 15:23:59 +00:00
usa
ec033198bf * win32/Makefile.sub (COMPILERFLAG): for enc/trans/gb18030.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-15 04:14:18 +00:00
nobu
ece0628ebe * configure.in, win32/Makefile.sub (MISSING): added langinfo on mingw
and mswin.

* encoding.c (rb_locale_charmap): use environments on mingw and mswin.

* missing/langinfo.c (nl_langinfo_codeset): MS-Windows Japanese
  environment uses Windows-31J derived from Shift_JIS, not EUC-JP.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-15 04:10:16 +00:00
usa
9e99ce3831 * win32/Makefile.sub ($(INSNS), node_name.inc, known_errors.inc,
miniprelude.c, newline.c): copy only when $(srcdir) != pwd.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-15 03:11:42 +00:00
nobu
2717a2eb6e * win32/win32.c (rb_w32_aspawn): should not escape with carret
unless using cmd.exe.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-14 04:19:28 +00:00
usa
50258b19fd * include/ruby/intern.h, thread.c, win32/Makefile.sub (rb_fdset_t,
rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr, rb_fd_isset,
	  rb_fd_select, rb_fd_ptr, rb_fd_max, HAVE_RB_FD_INIT): new type,
	  functions, and macros for Windows.

	* win32/win32.c (extract_fd, rb_w32_select): use rb_fdset_t to expand
	  fd_array if needed.  [ruby-core:19946]

	* win32/win32.c (copy_fd): new funcion for rb_w32_select().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-13 07:52:22 +00:00
nobu
dea3ad3cba * win32/win32.c (internal_cmd_match): extracted from
is_internal_cmd.

* win32/win32.c (argv_size, join_argv): escapes redirection, pipe
  and carret punctuations with carrets.

* win32/win32.c (rb_w32_aspawn): ditto, and redirections and pipe
  have no meanings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-12 17:21:45 +00:00
nobu
729b4a813b * win32/win32.c (open_dir_handle): extracted from rb_w32_opendir.
* win32/win32.c (winnt_stat): gets rid of strange behavior of
  GetFileAttributes().  [ruby-core:21269]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-12 07:45:31 +00:00
nobu
97826efddd * win32/win32.c (init_env): use user profile folder than personal
folder.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-05 03:52:11 +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
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
nobu
00cb692395 * win32/Makefile.sub (config.h): do not use snprintf/vsnprintf in
msvcrt.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-28 10:11:07 +00:00
usa
39c2cf2c81 * win32/win32.c (rb_w32_argv_size): if an argument is empty, it's size
is 2, not 0, because it will be converted to "".



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-27 11:28:18 +00:00
nobu
7c152e7f08 * win32/win32.c (rb_w32_spawn): deals with quoted commands.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-23 10:51:27 +00:00
usa
12932721dc * win32/win32.c (rb_w32_spawn): support normal commands with arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-23 07:50:57 +00:00
nobu
d9691f6e84 * cygwin/GNUmakefile.in (rubydll.def), win32/mkexports.rb
(Exports#exports): added VERSION.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-22 03:26:22 +00:00
nobu
9f3b77e435 * configure.in (mingw): no longer uses snprintf and vsnprintf of
msvcrt.

* win32/win32.c (rb_w32_vsnprintf, rb_w32_snprintf): removed.

* win32/Makefile.sub (config.h): vsnprintf exists in VC7 or later.

* win32/mkexports.rb (Exports#initialize): aliases
  rb_w32_vsnprintf and rb_w32_snprintf for binary compatibility.

* sprintf.c (rb_str_format): uses snprintf instead of sprintf.

* numeric.c (flo_to_s, rb_num2long, rb_num2ll): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-22 03:05:20 +00:00
nobu
7ac32d7a16 * dln.c (dln_find_1): supplements an extension for executable
files on DOSish platforms.

* io.c (pipe_open): use rb_w32_aspawn() for array form.

* win32/win32.c (rb_w32_pipe_exec): no longer used.

* win32/win32.c (rb_w32_spawn, rb_w32_aspawn): deals with batch
  files and commands with extensions.  [ruby-core:20695]

* win32/win32.c (has_redirection): supports environment variables
  references.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-20 09:28:29 +00:00
usa
5e7b16cd8a * win32/Makefile.sub (config.h): define CANONICALIZATION_FOR_MATHN
to follow r20683.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-15 10:08:48 +00:00
usa
5d65e0982d * win32/win32.c (rb_w32_read, rb_w32_write, rb_w32_isatty): check
whether fd is valid.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-05 09:08:24 +00:00
usa
a9a4435e12 * win32/win32.c (rb_w32_read): ERROR_BROKEN_PIPE is not a real error
at this point.

	* io.c (pipe_open): use rb_w32_spawn() instead of rb_w32_pipe_exec()
	  to use our own redirection scheme.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-04 16:39:03 +00:00
usa
8068f49727 * win32/win32.c (waitpid): fix bug of checking child slot.
* win32/win32.c (FindChildSlotByHandle): new.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-04 14:31:37 +00:00
usa
d544a3d6c7 * win32/win32.c (rb_w32_accept): secure fd before accept because if
error causes in securing, cannot restore the state of accepted
	  socket.
	  fixed [ruby-core:19728]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-11 08:54:07 +00:00
usa
703c1825eb * win32/win32.c (ifs_open_socket): should retry without proto_buffer
if cannot find the suitable protocol. a patch from Heesob Park.
	  fixed [ruby-core:19713]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-10 00:57:49 +00:00
suke
510d2a7d2e win32/Makefile.sub: add RUNRUBYOPT. [ruby-dev:37009]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-02 13:11:16 +00:00
usa
4542baa983 * win32/win32.c (rb_w32_open): shouldn't seek here.
* win32/win32.c (rb_w32_write): write to the end of the file when
	  FAPPEND is specified.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-29 02:01:19 +00:00
usa
746a09406e * win32/win32.c (rb_w32_open): need to seek to the end of the file when
O_APPEND is specified.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-28 15:27:06 +00:00
usa
2f4e4a841d * win32/win32.c (rb_w32_pipe_exec): internal fds should be always
binmode.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-28 10:01:26 +00:00
usa
4189288f2e * win32/Makefile.sub (RUNRUBY): now ruby requires something from
gem_prelude, so need to set library path.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-28 00:20:37 +00:00
nobu
860fad971d * thread.c (blocking_region_{begin,end}): declared as inline.
* util.c (freedtoa): used only when MULTIPLE_THREADS is not defined.

* win32/win32.c (rb_w32_pipe): serial is DWORD.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-26 09:01:23 +00:00
yugui
5660e09f08 * configure.in (sitedir): considers --program-prefix and
--program-suffix.
  (vendordir): ditto.
  (rubyhdrdir): ditto.

* mkconfig.rb (CONFIG["rubylibdir"]): ditto.

* win32/Makefile.sub: ditto.

* instruby.rb (:rdoc): ditto.

* lib/rdoc/ri/paths.rb (RDoc::RI::Paths): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-24 14:05:49 +00:00
nobu
b025ce4678 * common.mk (ID_H_TARGET): phony target to update id.h.
* tool/ifchange, win32/ifchange.bat: --timestamp option added.

* tool/generic_erb.rb: --timestamp, --output and --if-change options
  added.

* template/id.h.tmpl: moved from id.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-17 10:46:23 +00:00
yugui
a8c3540b32 * dln.c: Ruby no longer supports Windows CE.
* eval.c: ditto.

* include/ruby/defines.h: ditto.

* include/ruby/win32.h: ditto.

* ruby.c: ditto.

* strftime.c: ditto.

* win32/Makefile.sub: ditto.

* win32/win32.c: ditto.

* ext/tk/extconf.rb: ditto.

* lib/fileutils.rb: ditto.

* test/fileutils/test_fileutils.rb: ditto.

* wince/*: removed.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04 13:48:20 +00:00
usa
bfdadb885a * win32/{configure.bat,setup.mak,Makefile.sub): add --program-prefix
configure option support.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-03 05:04:57 +00:00
usa
743765cd3b * win32/win32.c (subtruct): check tv_sec. reported by ko1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-23 10:39:21 +00:00
usa
c27baaa090 * win32/win32.c (getppid): typo. [ruby-dev:36202]
* process.c (get_ppid): mention the return value on Windows.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-08 09:17:22 +00:00