Commit graph

1269 commits

Author SHA1 Message Date
nobu
c30616378e * dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
versions instead.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-27 00:15:31 +00:00
usa
846584710a * win32/win32.c (exit_handler): use st_free_table() to free socklist.
* win32/win32.c (rb_w32_pipe_exec, rb_w32_accept, rb_w32_socket,
	  rb_w32_socketpair): should check and release fd and sockets/handles
	  if an error occurs in rb_w32_open_osfhandle().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-24 07:33:00 +00:00
usa
f92478c0fb * win32/win32.c (overlapped_socket_io): avoid warnings.
* thread_win32.c (ubf_handle): refactoring.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-24 07:05:49 +00:00
usa
ee560dc68f * win32/win32.c (init_func): new function to get API's address which
is often used and not supported on all Windows.

	* win32/win32.c (overlapped_socket_io): shouldn't use overlapped I/O if
	  CancelIo() is not supported.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-22 08:22:32 +00:00
usa
068dd60372 * win32/win32.c (socklist): table for registering socket options
(currently only O_NONBLOCK).

	* win32/win32.c (StartSockets, exit_handler): alloc/free socklist.

	* win32/win32.c (is_socket): use socklist.

	* win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
	  register new socket to socklist.

	* win32/win32.c (rb_w32_close): remove closing socket from socklist.

	* win32/win32.c (fcntl): register socket options.

	* win32/win32.c (overlapped_socket_io): send to/recv from socket with
	  overlapped operation if the socket is not nonblocking mode.
	  [experimental]

	* win32/win32.c (rb_w32_send, rb_w32_sendto, rb_w32_recv,
	  rb_w32_recvfrom): use overlapped_socket_io().

	* win32/win32.c (open_ifs_socket): set overlapped mode. this is the
	  default mode of winsock's socket(), so lacking it is an old bug.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-18 05:59:46 +00:00
usa
e74af2cf41 * win32/Makefile.sub (ruby_version): follow changes in configure.in.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-15 13:34:49 +00:00
usa
25498d24c8 * thread_win32.c (ubf_handle): cancel blocking IO if it can (only
Vista). see [ruby-dev:35446]

	* win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-15 09:14:09 +00:00
usa
a0fe21b362 * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.
* {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12 20:39:02 +00:00
usa
2d46553ffa * win32/Makefile.sub (LIBRUBY_DLDFLAGS): import library which created
with DLL is broken. save import library which created by lib.exe and
	  install it. 
	  fixed the problem mentioned at the postscript of [ruby-dev:35448]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12 14:58:07 +00:00
usa
dde0905830 * win32/win32.c (rb_w32_select): shoudn't pass non-socket handle to
original select().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 16:55:14 +00:00
usa
bf050c3cd6 * win32/setup.rb, win32/Makefile.sub (PLATFORM): use $(PLATFORM)
instead of $(OS) because ENV["OS"] is used in test-all (drb).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 13:10:29 +00:00
usa
4532c0d81e * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
prohibit inheritance of sockets, too. [experimental]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 07:18:29 +00:00
usa
e9db21d9cf * win32/win32.c (CreateChild): the measures for Vista is no longer
unnecessary.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 05:43:03 +00:00
usa
52a3897f4f * win32/win32.c (insert): follow recent changes of globbing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-10 08:22:04 +00:00
usa
d3a0ef8198 * include/ruby/win32.h, win32/win32.c (rb_w32_getppid): now support
getppid() on win32 (but only Win2k or later).

	* process.c (get_ppid): remove win32 special logic.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-24 02:14:00 +00:00
usa
7c936bcbb7 * win32/win32.c (rb_w32_osid, rb_w32_osver, CreateChild): XP is
is different from Vista about pipe handle inheritance.
	  fixed [ruby-core:17367]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21 15:45:16 +00:00
usa
5f2183f6b3 * win32/win32.c (rb_w32_spawn): no longer support P_WAIT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21 08:34:42 +00:00
usa
ad24701cce * win32/win32.c (errmap): add some pipe errors.
* win32/win32.c (rb_w32_write): set errno when CRT's errno is EINVAL
	  for pipe errors.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-18 09:32:03 +00:00
usa
32c63d1f35 * win32/win32.c (poll_child_status): set EINVAL to errno when
GetExitCodeProcess() fails with ERROR_INVALID_HANDLE.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-18 09:10:04 +00:00
usa
62617789ed * win32/win32.c (CreateChild): no need to inherit handles here because
spawn'ed child cannot detect that STDIN is closed.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 08:31:41 +00:00
usa
12cec48616 * win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
* ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
	  freehostent, freeaddrinfo): undef before define because these are
	  macros in some versions of Windows SDK.

	  merged from ruby_1_8.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-06 12:52:30 +00:00
nobu
3064bb9f8d * win32/Makefile.sub (miniruby$(EXEEXT)): miniruby cannot be
written by miniruby itself.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03 11:04:18 +00:00
nobu
eaa3ffbae8 * lib/un.rb (wait_writable): wait until target files can be
written actually.

	* win32/Makefile.sub (LDSHARED_0, LINK_SO): get rid of failure of
	  mt.exe.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-02 09:51:30 +00:00
nobu
7c5e3348f7 * suppress warnings on cygwin, mingw and mswin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-01 19:55:25 +00:00
nobu
a9396fd580 * win32/mkexports.rb (Exports#objdump, Exports#each_line): extracted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-28 08:50:41 +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
usa
72eb7e2a41 * win32/mkexports.rb (Exports::Mswin#each_export): speed up.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-28 08:37:37 +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
usa
9416fedc28 * process.c, include/ruby/intern.h (rb_run_exec_options): externed.
* process.c (save_redirect_fd, save_env_i, save_env, run_exec_dup2,
	  run_exec_open, run_exec_pgroup, run_exec_rlimit, rb_run_exec_options):
	  save parent's process environments.
	  !!!remark!!! these are not thread-safe.

	* process.c (rb_spawn_internal): remove calling run_exec_options()
	  because cannot restore after spawn. we'll fix this later.

	* io.c (pipe_open): ditto.

	* test/ruby/test_process.rb (test_execopts_env): upcase environment
	  variable name for case insensitive platforms.

	* win32/win32.c (init_env): set USER environment variable only when
	  USERNAME is available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-12 14:15:32 +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
usa
5bf63ffcaa * {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-01 00:42:06 +00:00
usa
b2acbb2c67 * {bcc,win}32/Makefile.sub (config.h): define ssize_t.
* io.c (copy_stream_body): some platform don't have O_NOCTTY.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-31 09:58:41 +00:00
usa
bc8c8e90d5 * {bcc,win}32/Makefile.sub: follow below changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-14 02:35:24 +00:00
naruse
668af7e99d * configure.in (int8_t, uint8_t, int16_t, uint16_t int32_t,
uint32_t int64_t, uint64_t, int128_t, uint128_t,
  intptr_t, uintptr_t): check if defined.

* win32/Makefile.sub: follow configure.in.

* ext/digest/defs.h: remove checks for uint8_t, uint32_t and uint64_t.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-14 01:47:02 +00:00
usa
cb912bc64d * {bcc,win}32/Makefile.sub (config.h): define uint32_t.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-13 10:58:32 +00:00
nobu
6a76630b3c * common.mk (clean-local): WINMAINOBJ is Windows specific.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-11 03:39:55 +00:00
usa
6aac0579d1 * {bcc32,win32}/Makefile.sub (RUNRUBY): use $(PROGRAM) instead of
ruby$(EXEEXT). 
	  suggested by KIMURA Koichi <kimura.koichi at canon.co.jp>.
	  [ruby-dev:34000]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-06 06:08:37 +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
99b9eaaa68 * win32/win32.c (rb_w32_map_errno): exported.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-20 14:55:21 +00:00
usa
5b461c6996 * win32/resource.rb: made version infos confirm to OS spec.
* {bcc32,win32}/Makefile.sub (*.rc): add dependency.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-16 18:16:21 +00:00
nobu
5b7bdd56ad * {win,bcc}32/Makefile.sub (config.h): added HAVE_FTRUNCATE.
[ruby-dev:33786]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-15 01:27:48 +00:00
nobu
c12b289362 * {bcc32,win32,wince}/Makefile.sub (MISSING): added cbrt.obj.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-10 06:07:31 +00:00
usa
4cd86dbe9f * missing/lgamma_r.c (lgamma_r): some compilers don't permit dividing
by literal 0.0. use const variable instead.

	* {bcc32,win32,wince}/Makefile.sub (MISSING): add lgamma_r.obj and
	  tgamma.obj.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-07 02:14:54 +00:00
usa
ea24d298cf * {bcc32,win32}/Makefile.sub (MINIOBJS): add dmytranscode.$(OBJEXT).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-29 11:18:03 +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
usa
5e0824bcd8 * win32/setup.mak (BASERUBY): nmake cannot execute ruby collectly
if the path of ruby.exe is quoted.

	* win32/setup.mak ($(ARCH)): if a macro is appended by $(APPEND),
	  a space will be inserted on the top of the line.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-18 11:06:12 +00:00
usa
a894055204 * win32/Makefile.sub (MKFILES): add dependecies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-15 09:05:23 +00:00
nobu
9615084012 * win32/setup.mak: strip out empty lines from CPP output.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-15 06:09:30 +00:00
nobu
de556e6281 * {win,bcc}32/setup.mak (-basic-vars-): expand BASERUBY to full path
to get rid of ./ruby.exe.

* win32/enc-setup.mak: workaround for Borland make.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-15 05:57:40 +00:00
usa
4f703c7dad * {bcc32,win32}/Makefile.sub (RUNRUBY): need to set archdir when
invoking ruby.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-15 04:55:28 +00:00