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

478 Коммитов

Автор SHA1 Сообщение Дата
usa cd72ed32cc * win32/win32.c: remove unused functions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-27 14:52:00 +00:00
usa 1aa54c6db6 * include/ruby/win32.h, win32/Makefile.sub, win32/configure.bat,
win32/mkexports.rb, win32/setup.mak, win32/win32.c: import
	  x64-mswin64 port.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-27 11:47:53 +00:00
nobu 8782d3d977 * win32/Makefile.sub (config.status): rubyhdrdir was missing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 06:43:12 +00:00
nobu c389b3bb63 * Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
* ext/extmk.rb (parse_args): add also topdir to mflags.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 05:47:12 +00:00
nobu 2b592580bf * include/ruby: moved public headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00
usa 250a29cc6b * {win32,wince}/Makefile.sub: add lex.c rule.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-08 03:49:07 +00:00
nobu 82159c813b * win32/win32.c (rb_w32_opendir): removed duplicated code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-29 03:30:14 +00:00
nobu d15b7d0509 * win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
numbers.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-29 01:53:14 +00:00
usa 216dcd80ff * win32/win32.c (init_stdhandle): stderr should be without buffering,
but mswin32 use buffering when stderr is not connected to tty.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-15 06:01:33 +00:00
usa fb853dc2c2 * win32/win32.c (NtInitialize, exit_handler): add initializing and
cleanup of critical section object for select.

	* win32/win32.c (do_select): block reentrance.

	* win32/win32.c (rb_w32_select): 0 sec polling of socket. this is
	  workaround because winsock cannot do select at same socket at the
	  same time by two or more threads.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-25 06:28:20 +00:00
usa 314734add8 * win32/win32.[ch] (rb_w32_enter_critical, rb_w32_leave_critical): no
need to reject reentrance. removed.

	* rubysig.h (RUBY_CRITICAL): follow above changes.

	* rubysig.h (TRAP_BEG, TRAP_END): no need to save errno.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-11 07:37:02 +00:00
usa 20e961458e * win32/win32.c (rb_w32_fclose, rb_w32_close): need to save errno
before calling original fclose()/close().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-10 08:02:38 +00:00
usa 1486959550 * thread.c (do_select): use ubf_select() as UBF on windows.
* win32/win32.c (do_select): shouldn't call catch_interrupt() here.
	  fixed: [ruby-dev:30674], reported by wanabe.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-09 09:29:45 +00:00
usa 528e8517b8 * win32/win32.c (rb_w32_cmdvector): fixed buffer size. reported by
wanabe [ruby-dev:30672]

	* win32/win32.c (init_env, insert, rb_w32_get_environ): use strdup
	  instead of malloc + strlcpy. suggested by nobu [ruby-dev:30673]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-30 02:50:58 +00:00
usa 240f1279aa * win32/win32.c (init_env, insert, cmdglob, rb_w32_cmdvector,
rb_w32_opendir, rb_w32_readdir, rb_w32_strerror, rb_w32_stati64,
	  rb_w32_get_environ): use strlcpy() and strlcat().

	* win32/win32.c (rb_w32_opendir): use realloc() instead of xrealloc().

	* win32/win32.c (rb_w32_closedir): check NULL before free pointers.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-23 02:30:53 +00:00
usa 0ce0d4a596 * win32/Makefile.sub (LIBS): remove an unnecessary library.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-22 04:32:55 +00:00
usa 7240868424 * missing/{strlcat,strlcpy}.c, missing.h: new functions.
* LEGAL: add copyright notice about above files.

* configure.in: check whether strlcat and strlcpy are exist or not.

* {bcc32,win32,wince}/Makefile.sub: use above files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-19 08:01:40 +00:00
usa f3cde2b5fb * win32/dir.h, win32/win32.c (rb_w32_opendir, rb_w32_readdir,
rb_w32_closedir): get rid of possible buffer-overflows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-17 23:42:00 +00:00
nobu da3558fddb * parse.y (parser_yylex), win32/win32.c (rb_w32_utime): fixed
indentation broken at YARV merger.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-04 16:36:36 +00:00
nobu f9b349adb5 * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
specific thread model.

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-28 01:33:57 +00:00
ko1 fd6f1f0a71 * win32/Makefile.sub: enable -Zi (debug) option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-25 02:48:19 +00:00
nobu 5b10c170e5 * file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
renamed from OpenFile.

* ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
  ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
  ext/readline/readline.c, ext/socket/socket.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 10:30:50 +00:00
nobu 8ac59769bc * file.c (rb_thread_flock, rb_file_flock): use UBF feature.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 09:45:41 +00:00
nobu c034fce5ce * process.c (rb_waitpid_blocking, rb_waitpid): use UBF feature.
* thread_win32.ci (rb_w32_wait_events_blocking): blocking version.

* win32/win32.c (waitpid): use rb_w32_wait_events_blocking().




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 09:43:40 +00:00
usa 1930f14533 * win32/win32.c (StartSocket): remove unnecessary code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 07:31:11 +00:00
usa bb022bed3a * thread.c (rb_thread_polling): check interrupts here.
* thread_win32.ci (w32_wait_events): rename from w32_wait_event(), and
  now receive multiple event handles.

* win32/win32.c (wait_events, rb_w32_main_context): removed.

* thread_win32.ci (rb_w32_wait_events): new function.

* thread_win32.ci, win32/win32.c (rb_w32_sleep, rb_w32_Sleep): move
  from win32/win32.c to thread_win32.ci, and use w32_wait_events().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-23 09:33:53 +00:00
usa 5834171904 * win32/win32.c (set_pioinfo_extra): simplified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-23 06:07:55 +00:00
nobu 562f256c54 * configure.in (pid_t, uid_t, gid_t): check if defined.
* intern.h, process.c, rubyio.h, ext/etc/etc.c, ext/pty/pty.c: use
  rb_{pid,uid,gid}_t instead of plain int.  [ruby-dev:30376]

* ext/etc/extconf.rb (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM,
  NUM2GIDT): moved to configure.in.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-18 04:13:09 +00:00
usa 691b6fb869 * win32/win32.c (get_pioinfo_extra): new function for VC++8 SP1
workaround. [ruby-core:10259]

* win32/win32.c (NtInitialize): call above function.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-15 11:50:28 +00:00
ko1 bee3de05ad * configure.in: change stack limit to 2MB from 32MB.
* win32/Makefile.sub: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-14 13:13:52 +00:00
ko1 27172b8e6f * intern.h: prepare rb_last_status_get() and rb_last_status_set().
Use these functions instead of rb_last_status ([ruby-dev:30264]).
* process.c: define above functions.
* ext/pty/pty.c: use above functins.
* io.c (pipe_finalize): ditto.
* process.c: ditto.



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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-23 06:41:22 +00:00
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 eb7b81158a * instruby.rb, mkconfig.rb, rubytest.rb, bcc32/mkexports.rb, win32/{resource,mkexports}.rb: set executable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-21 15:38:39 +00:00
nobu 4409259c93 * win32/Makefile.sub (COMPILE_RULES): latter rule has higher priority.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-14 15:07:53 +00:00
nobu 4abaf3a579 * win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
[ruby-core:09572]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11362 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-06 14:58:46 +00:00
nobu 66d43b5fd6 * dir.c (glob_helper): get rid of possible memory leak.
* win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
  rb_w32_get_environ): not to use GC before initialization.
  [ruby-core:09024]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-30 14:23:46 +00:00
nobu e329433630 * win32/mkexports.rb, win32/resource.rb: use unique variable names.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-24 15:58:51 +00:00
nobu 450fc7bb57 * win32/win32.c (rb_w32_utime): allow NULL to set the current time.
[ruby-talk:219248]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-18 14:03:43 +00:00
nobu eb2661510d * mkconfig.rb: *OBJS are not needed for extension libraries.
* {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
  missing comma.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-15 23:32:12 +00:00
usa cbefc993ac * {bcc32,win32,wince}/Makefile.sub (config.status): shouldn't use
copy command instead of install. use -run install.


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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-01 15:00:45 +00:00
usa 8af68b08a0 * win32/Makefile.sub (CPP): check predefined value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-26 06:32:09 +00:00
usa a32b61147b * {bcc32,win32,wince}/Makefile.sub (INSTALLED_LIST): need to define
this macro to install.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-20 00:54:45 +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
nobu eba74dc219 * win32/Makefile.sub, win32/configure.bat win32/setup.mak: program
name transform.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-08 00:00:12 +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
nobu edcb8975ac * configure.in, bcc32/Makefile.sub, win32/Makefile.sub, win32/dir.h,
win32/win32.c, win32/win32.h: large file support for win32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-12 06:56:09 +00:00
usa 2982c52892 * win32/win32.c (exit_handler): new function; release winsock and
environment work area.

* win32/win32.c (NTInitialize): setup exit_handler.

* win32/win32.c (StartSockets): use exit_handler.
  exit handler.

* win32/win32.c (rb_w32_getenv): use GetEnvironmentStrings() instead
  of GetEnvironmentVariable(), because the latter cannot distinguish
  wheather a null environment variable exists or not.
  fixed: [ruby-talk:205123]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-31 07:58:34 +00:00
usa 1921fbce45 * win32/win32.c (open_ifs_socket): should not use plain malloc.
* win32/win32.c (rb_w32_opendir): should not use plain realloc.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-18 14:13:07 +00:00
usa 9dc29ddfd7 * win32/Makefile.sub (config.h): define FUNC_STDCALL/FUNC_CDECL.
from [ruby-dev:28970].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-07 05:08:05 +00:00
eban 3ea6bebbad * win32/win32.h: define isascii on MinGW for msvcrt compatibility.
* configure.in: set ac_cv_header_sys_time_h=no on MinGW
  for msvcrt compatibility.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-27 07:21:31 +00:00
usa 2059d39e98 * win32/win32.h (write): not need to define on bcc.
* ChangeLog: fixed typo :)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-11 01:00:10 +00:00
usa da617f7f79 * win32/win32.[ch] (rb_w32_read, rb_w32_write): new functions.
use recv() and send() when fd is socket. fixed: [ruby-dev:28694]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-08 05:01:51 +00:00
usa 301f4076f8 * win32/win32.c (errmap): add some winsock errors.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-07 05:53:46 +00:00
nobu da7472ee99 * win32/win32.c (rb_w32_cmdvector): backslashes inside single-quotes
no longer has special meanings.  fixed: [ruby-list:42311]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-01 10:13:41 +00:00
usa e4602e1d27 * win32/win32.c (rb_w32_getcwd): runtime's getcwd() will not success
if the length of the cwd is longer than MAX_PATH.
  fixed [ruby-list:42335]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-01 07:18:12 +00:00
usa f85ebe0963 * win32/win32.c (rb_w32_getcwd): set errno if not set.
fixed [ruby-list:42346]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-01 02:34:30 +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
ocean be70a6ebec * win32/win32.c (filetime_to_unixtime): should set tm_isdst to -1.
stat() didn't treat daylight saving time property on WinNT.
  [ruby-talk:182100]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-02 04:01:31 +00:00
usa 20f3ea3f6c * win32/win32.c (NtInitialize): need to set a handler for VC++8.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-24 02:19:44 +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
usa f0ab5bdea2 * win32/win32.c (rb_w32_utime): drop read-only attribute before
changing file time.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-14 04:49:01 +00:00
usa 8fe090790d * win32/Makefile.sub (config.h): should define HAVE_LONG_LONG with
VC++8.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-14 04:39:32 +00:00
usa 93ff2adbed * time.c (search_time_t): support non 32bit time_t environments.
* win32/Makefile.sub (config.h): VC++8 have ``long long'' type.

* win32/Makefile.sub (config.h): VC++8's time_t is 64bit value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-14 02:48:08 +00:00
usa f0432871fd * win32/win32.c (LK_ERR): ERROR_NOT_LOCKED is not an error.
In such situation, flock() should return 0.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-04 12:21:55 +00:00
usa dc2732c84f * win32/setup.mak (MAKE): workaround for nmake 8.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-17 02:33:29 +00:00
usa 1aada80f78 * win32/Makefile.sub: invoke .bat via shell. workaround for nmake 8.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-17 02:08:33 +00:00
ocean 65ebb02460 * win32/Makefile.sub (OPTFLAGS): I have experienced trouble on y- flag,
(VisualC++6) so use -O2b2xg- if  $(MSC_VER) < 1400. [ruby-core:7040]

* lib/webrick/httpservlet/filehandler.rb: fixed typo. (Kero van Gelder)
  [ruby-core:7075]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-09 05:27:43 +00:00
ocean 88a3caaafe * win32/win32.c (rb_w32_seekdir): should not segfault even if passed
the location which rb_w32_telldir didn't return. (and should change
  `bits' position) [ruby-core:7035]

* win32/dir.h: ditto. (stores `loc' instead of `bitpos')

* test/ruby/test_dir.rb: added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-01 05:49:01 +00:00
nobu dc94d09ad5 * win32/Makefile.sub: VC++8 support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-30 09:23:15 +00:00
ocean c43a23d49e * win32/win32.c (rb_w32_strerror): remove all CR and LF. (avoid broken
error message on bccwin32 + winsock)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-28 04:24:26 +00:00
nobu 4ef75249df * file.c (test_identical): test if two files are identical.
* file.c (rb_f_test): support DOSISH systems where st_ino is not
  reliable.  fixed: [ruby-core:06672]

* win32.h, win32.c (rb_w32_osid): check the running platform.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-22 16:26:39 +00:00
ocean abcbaa5c6f * win32/win32.c (winnt_stat): set mapped errno instead of ENOENT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-22 09:42:09 +00:00
ocean 886f33e199 * win32/win32.c (rb_w32_stat): Dir.chdir('//server/shared');
p Dir.glob('*') should work on WinNT. (implemented our own
  stat(2) on WinNT) [ruby-list:41552] [ruby-dev:27711]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-22 04:32:39 +00:00
ocean 90382d8aab * win32/setup.mk: findstr doesn't exist on win9x.
fixed: [ruby-dev:27756] (written by nobu)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-21 07:12:57 +00:00
ocean 4c30792103 * win32/win32.h (S_IFIFO): r,w = IO.pipe; r.stat.pipe? now
returns true on VisualC++6.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-18 03:22:26 +00:00
nobu 49775b88e9 * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias
symbols.  [ruby-dev:27532]

* bcc32/mkexports.rb, win32/mkexports.rb: make aliases in DLL.

* win32/win32.c, win32/win32.h: replace symbols only when RUBY_EXPORT
  is defined.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-05 04:43:46 +00:00
nobu 8a2612b335 * configure.in (RUBY_EXTERN): macro to export symbols in shared
library.  [ruby-core:05528]

* defines.h, {bcc32,win32,wince}/Makefile.sub (RUBY_EXTERN): moved to
  configuration pass.

* ext/extmk.rb (extmake): RUBY_EXTERN for static linked extensions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-25 17:00:03 +00:00
usa 0245c7aa16 * ext/dl/depend, ext/dl/extconf.rb, ext/socket/depend,
ext/socket/extconf.rb: shouldn't define DESTCLEANFILES in depend,
  use $distcleanfiles in extconf.rb.

* win32/Makefile.sub (distclean-local): should remove .config.h.time.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-18 02:01:24 +00:00
usa fa31502b80 * mkconfig.rb: fixup configure_args for mswin32 configure.
* win32/configure.bat (srcdir, target): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-17 00:44:54 +00:00
usa 45cab7d104 * win32/configure.bat: remove unnecessary line which prevents
creating Makefile.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-15 15:15:58 +00:00
nobu f76f6155e1 * win32/Makefile.sub (MKFILES): update MKFILES if configure files get
changed.

* win32/configure.bat, win32/setup.mak (configure_args): store
  arguments to configure files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-14 14:10:08 +00:00
usa b367743e92 * win32/win32.c (ioctl): should set errno.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-14 13:09:11 +00:00
usa 1110e7123c * win32/win32.c (do_select, rb_w32_select): brush up.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-01 14:57:06 +00:00
ocean fb5dd968ec * win32/win32.c (rb_w32_select): documented problem.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17 21:44:24 +00:00
ocean f2107f2ec1 * win32/win32.c (rb_w32_select): fixed deadlock bug.
because select(2) modifies its fd_set arguments, it must be
  restored sometimes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17 12:20:07 +00:00
ocean f0bcbbef67 * win32/win32.c (rb_w32_select): I hope performance problem was
solved.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17 05:22:33 +00:00
ocean aa21055faf * win32/win32.c (rb_w32_select): console support is back.
but still has performance problem because I loosely took 1 second
  for wait time. I'll fix it later. (The reason I drastically changed
  the code is that I wanted to implement the fileset management as
  single function, and I was worried that if pipe or console
  was always available, socket may not be processed any time)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17 04:53:26 +00:00
ocean 846b1c35e5 * win32/win32.c (rb_w32_select): select for socket didn't work.
this caused deadlock in drb test. this happened because GetFileType
  for socket handle returns FILE_TYPE_PIPE. Of course, it's not a
  pipe. So socket handle didn't reach winsock's select function.

* win32/win32.c (rb_w32_select): read for pipe still kept brocking
  even if writer handle was closed.

    r,w = IO.pipe

    Thread.new {
      sleep 3; puts "------- 1"
      w.puts("foo")
      sleep 3; puts "------- 2"
      w.puts("boo")
      sleep 3; puts "------- 3"
      w.close
    }

    until r.eof? # should break by w.close but didn't.
      puts r.gets
    end

* win32/win32.c (rb_w32_select): temprary reverted console support
  but it'll be back soon.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17 02:42:59 +00:00
nobu 5a2f770fb1 * dir.c (rb_push_glob): fix delimiter bug. fixed: [ruby-dev:27105]
* dir.c (dir_s_aref, dir_s_glob): allow multiple patterns.
  [ruby-dev:27110]

* win32/win32.c (cmdglob): enable brace expansion.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-16 13:46:05 +00:00
usa 7c5eaf70a3 * win32/win32.c (rb_w32_pipe_exec): remove unnecessary CloseHandle().
* win32/win32.c (extract_console_fd, peek_console): new functions.

* win32/win32.c (rb_w32_select): check consoles by polling them.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-15 02:03:43 +00:00
usa e2472dafa0 * win32/win32.c (collect_file_fd): rename from extract_file_fd.
* win32/win32.c (extract_pipe_fd, peek_pipe): new functions.

* win32/win32.c (rb_w32_select): check pipes by polling them.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-14 14:30:37 +00:00
nobu 9d2b69a273 * dir.c (ruby_glob): glob function not using ruby exception system.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-14 13:41:02 +00:00
ocean bf102e8a35 * win32/win32.[hc] (rb_w32_argv_size, ...): reverted my latest change
to avoid incompatible pointer warning. (mingw32)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-12 11:40:40 +00:00
ocean 8955a2d930 * win32/win32.[hc] (rb_w32_utime): constified.
* win32/win32.h (rb_w32_stat): added prototype.

* win32/win32.[hc] (rb_w32_argv_size,rb_w32_join_argv,rb_w32_aspawn):
  changed `char *const *' to `const char *const *'. (constify string)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-07 00:37:53 +00:00
usa 7706418a4e * win32/Makefile.sub (OPTFLAGS): default global optimization to
disabled for all VC++ versions.  fixed: [ruby-dev:26897]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-31 05:43:51 +00:00