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

681 Коммитов

Автор SHA1 Сообщение Дата
nobu cba32dcaa6 * ext/dl/cfunc.c (rb_dlcfunc_call): adjust format. [ruby-dev:31222]
* ext/digest/digest.c (rb_digest_instance_update,
  rb_digest_instance_finish, rb_digest_instance_reset,
  rb_digest_instance_block_length): %s in rb_raise() expects char*.
  [ruby-dev:31222]

* ext/openssl/ossl.h: include ossl_pkcs5.h.  [ruby-dev:31231]

* ext/openssl/ossl_pkcs5.h: new file for PKCS5.  [ruby-dev:31231]

* ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
  instead of rb_raise().  [ruby-dev:31222]

* ext/sdbm/_sdbm.c: DOSISH platforms need io.h.  [ruby-dev:31232]

* ext/syck/syck.h: include stdlib.h for malloc() and free().
  [ruby-dev:31232]

* ext/syck/syck.h (syck_parser_set_input_type): prototype added.
  [ruby-dev:31231]

* win32/win32.c: include mbstring.h for _mbspbrk().  [ruby-dev:31232]

* include/ruby/win32.h (rb_w32_getcwd): prototype added.
  [ruby-dev:31232]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-15 13:24:39 +00:00
nobu 9dbaa0a9a9 * win32/win32.c (CreateChild): enclose command line except for
command.com which can not handle quotes.  [ruby-talk:258939]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-13 06:02:18 +00:00
ko1 480c602bdc * win32/Makefile.sub: define FUNC_FASTCALL macro.
* vm.h: fix to use FUNC_FASTCALL macro.
  TODO: add FUNC_FASTCALL macro by configure.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-28 13:31:08 +00:00
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
usa e67d73e0f3 * win32/win32.c (socketpair_internal): need to call open_ifs_socket()
to create sockets instead of winsock's socket().
  fixed: [yarv-dev:581]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-18 02:07:28 +00:00
nobu a51e80459c * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated
macro definitions.

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

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-03 15:27:13 +00:00
usa ce8d9b4a0d * configure.in, {bcc32,win32,wince}/Makefile.sub (HAVE_SNPRINTF,
HAVE_VSNPRINTF): use win32/win32.c's implementation instead of
  missing/vsnprintf.c's.

* win32/win32.[ch] (rb_w32_snprintf, rb_w32_vsnprintf): reverted.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-03 01:21:20 +00:00
usa 528f4c66dd * win32/win32.[ch]: (rb_w32_vsnprintf, rb_w32_snprintf): removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-25 14:50:12 +00:00
nobu 9b4ddc1a01 * {bcc32,win32,wince}/Makefile.sub: moved CPPFLAGS only for ruby
source to XCFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-25 12:31:21 +00:00
nobu a6df88f00b * common.mk: Borland MAKE doesn't look for file names which have paths
from VPATH.  fixed: [ruby-dev:26604]

* ruby.h (NORETURN, DEPRECATED): moved just after config.h.

* {win32,wince}/Makefile.sub: vsnprintf() is in missing now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-25 12:29:37 +00:00
nobu 6524f34a26 * sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,
using missing/vsnprintf.c.  [ruby-dev:26580]

*  missing/vsnprintf.c: made the output changeable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-23 01:02:18 +00:00
ocean c6a782c14e * win32/win32.[hc]: constified socket functions. [ruby-dev:26553]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-16 06:59:05 +00:00
ocean 3345d742e7 reordered just for diffing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-14 09:58:13 +00:00
ocean 59970fde60 * win32/win32.c (rb_w32_strerror): should return correct message
for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]

* win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
  (bcc32) [ruby-dev:26533]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-14 09:33:52 +00:00
ocean 80b0773d33 * win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
if file or directory already exists. (bcc32)

* win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
  if it is not directory. (bcc32, win32)

* win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
  FILE_ATTRIBUTE_READONLY flag on function failure.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-13 10:40:06 +00:00
nobu 682d1bb068 * win32/win32.c (StartSockets): iSockOpt is no longer used.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-08 10:55:29 +00:00
usa 2e0680f221 * win32/win32.c (open_ifs_socket): new function.
* win32/win32.c (StartSockets, rb_w32_socket): use open_ifs_socket()
  instead of socket().
  all changes are derived from [ruby-core:5388].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-06 02:20:58 +00:00
usa 00e35b4f19 * missing/erf.c: need to include some headers for some platforms.
* win32/win32.c (copysign, scalb): define for compatibility with
  other platforms. [ruby-dev:26430]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-01 06:52:37 +00:00
usa b03649bc2a * ext/dbm/dbm.c (fdbm_closed): new method DBM#closed?
* ext/gdbm/gdbm.c (fgdbm_closed): new method GDBM#closed?

* ext/sdbm/init.c (fsdbm_closed): new method SDBM#closed?

* test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb, test/sdbm/test_sdbm.rb
  (teardown): close all db objects before deleting data files.

* win32/win32.{ch} (unlink): hook runtime function to change
  file attribute before unlinking.
  merge from 1.8, see [ruby-dev:26360]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-20 08:17:53 +00:00
usa 34075ed209 * win32/Makefile.sub ($(PROGRAM)): add dependency on $(LIBRUBY_SO).
[experimental]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-23 06:10:32 +00:00
usa a70902a5c9 * win32/win32.c (NtInitialize): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-18 05:10:09 +00:00
nobu b272844547 * dir.c (glob_helper): get rid of using String. [ruby-dev:26180]
* eval.c (ruby_options), win32/win32.c (NtInitialize): move argument
  intialization back.  [ruby-dev:26180]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-18 02:08:00 +00:00
usa 0a6a371abf * win32/win32.c (unixtime_to_filetime): use localtime() instaed of
gmtime() when using FileLocalTimeToFileTime().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-17 02:52:43 +00:00
nobu a3c29ec51a * win32/win32.h, {bcc32,win32,wince}/Makefile.sub: moved rb_[ugp]id_t
to get rid of redefinition warnings on mingw.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-16 13:22:09 +00:00
ocean 208f2f27ca * win32/win32.{h,c}: define rb_{p,g,u}id_t.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-15 18:36:56 +00:00
nobu c23d3e4640 * win32/win32.c (unixtime_to_filetime): deal with DST.
[ruby-talk:141817]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-15 00:57:49 +00:00
nobu 642ddf7201 * configure.in: Check for the availability of pid_t, gid_t and uid_t and
remove AC_TYPE_UID_T.  fixed: [ruby-core:04745]

* defines.h: Remove pid_t typedef.

* ruby.h: Define rb_pid_t, rb_gid_t and rb_uid_t in accordance with
 the available system types.

* process.c: Change instances of pid_t and gid_t to their rb_*
 counterparts.

* ext/pty/pty.c: Change pid_t to rb_pid_t.

* vms/config.h: Define HAVE_{P,G,U}ID_T to 1.

* win32/Makefile.sub: Remove #define for {g,u}id_t.

* win32/win32.c: Change pid_t to rb_pid_t.

* wince/Makefile.sub: Remove #define for {g,u}id_t.

* wince/sys/types.h: Remove definitions of {p,g,u}id_t.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-14 14:57:53 +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 27a9df2a6b * configure.in (RUBY_FUNC_ATTRIBUTE): check for function attribute.
[ruby-dev:26109]

* eval.c, gc.c: moved noinline to configure.in.

* rubyio.h (DEPRECATED): moved to configure.in.

* ruby.h (DEPRECATED, NOINLINE): default definition.

* win{32,ce}/Makefile.sub (config.h): deprecated and noinline for
  __declspec() are available for VC++7 or later.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-30 02:59:44 +00:00
nobu 6329fa50b6 * win32/Makefile.sub (OPTFLAGS): default global optimization to
disabled only for VC++6.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-27 14:43:06 +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
nobu 5c6e644196 * Makefile.in, common.mk: miniruby depens on MINIOBJS.
* dmydln.c (dln_load): dummy function to raise LoadError.

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-20 14:25:34 +00:00
nobu 9031084686 * win32/ifchange.bat: delete testing files.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-20 14:02:15 +00:00
nobu 7f530ef4e1 * {bcc32,win32,wince}/configure.bat, {bcc32,win32,wince}/setup.mak:
add extout option.

* bcc32/setup.mak: make configuration variables overridable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-19 22:28:28 +00:00
nobu f091f36035 * configure.in (mingw32): use actual runtime DLL name as ruby DLL
name and default load path.

* win32/Makefile.sub, win32/setup.mak: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-13 10:25:41 +00:00
nobu b54682b7ea * wince/configure.bat, wince/setup.mak: add prefix, extstatic and
rdoc options.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-02 13:35:02 +00:00
ocean 9919ef7212 * win32/rm.bat: $Id doesn't work on -kb file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-30 15:40:29 +00:00
ocean 4b0f7cecc4 * dir.c (rb_glob): fixed mismatch of argument.
* dir.c (fnmatch): removed unnecessary code. (by string.c 1.219)

* win32/win32.c (NtInitialize): ditto. (by numeric.c 1.117)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-05 09:30:24 +00:00
usa 302b8ff055 * file.c (eaccess): workaround for VC++8 runtime.
* win32/win32.c (ioinfo): VC++8 support.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-04 17:42:55 +00:00
nobu a48c63f36b * {bcc32,win32,wince}/Makefile.sub (config.h): check if affected
when makefiles are modified.

* {bcc32,win32,wince}/Makefile.sub (config.status): add variables
  for tests.

* win32/ifchange.bat: try to update a file only if modified.

* win32/resource.rb: more descriptions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-03 09:38: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 6ef3fe6349 * win32/win32.c (rb_w32_fdopen): suppress warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10 12:18:16 +00:00
usa a32bc08d36 * configure.in, win32/Makefile.sub (LIBS, COMMON_HEADERS): use
winsock2 on mswin32/mingw.

* ext/socket/extconf.rb: ditto.

* win32/win32.c (StartSockets): ditto.

* win32/win32.h: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10 04:55:34 +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 6400a671b8 * win32/win32.c (init_stdhandle): assign standard file handles.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10 03:06:43 +00:00
usa 66d39f93b4 * win32/win32.c (flock_winnt, flock_win95): unlock file even if
LOCK_NB is specified.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-26 01:51:06 +00:00
ocean 160bfa5bef * win32/win32.c (rb_w32_close): didn't close socket handle.
* win32/win32.c (rb_w32_open_osfhandle): bcc32's _open_osfhandle
  never set EMFILE.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-06 11:05:31 +00:00
ocean 09736c1621 * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug.
shift assignment operator '>>=' for __int64 in struct may
  generate collapsed code. [ruby-dev:25342]

* win32/win32.[ch]: failed to compile on bcc32 (and probably wince)
  [ruby-dev:25306]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-05 08:00:50 +00:00
usa f598caf621 * win32/win32.c (rb_w32_fdisset): check whether the handle is valid.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-15 05:32:53 +00:00
usa 2f35e1e146 * win32/win32.c (rb_w32_close): need to reset osfhnd().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-14 08:10:32 +00:00
usa 3f56463129 * win32/win32.c (rb_w32_pipe_exec): need to close original socket
handle.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08 08:38:59 +00:00
usa 87a77c7174 * win32/win32.c (rb_w32_pipe_exec): must close original handle
before exec. fixed: [ruby-dev:25112]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08 04:56:07 +00:00
usa bc4088d768 * win32/win32.c (rb_w32_fclose, rb_w32_close): shutdown socket
before closesocket(). fixed: [ruby-dev:25112]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08 02:54:24 +00:00
usa d5b434088a * win32/win32.c (is_socket): reorder of function definitions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-07 16:36:29 +00:00
usa c3ce319d7d * io.c (pipe_open): win32 bidirectional pipe support.
* win32/win32.[ch] (rb_w32_pipe_exec): ditto.

* win32/win32.[ch] (socketpair): new function. POSIX socketpair
  emulation.

* win32/win32.c (socketpair_internal): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-07 15:47:59 +00:00
usa 571e1361b6 * io.c (dir_s_mkdir): win32 special processing doesn't need any longer.
* win32/win32.[ch] (rb_w32_mkdir): new function. POSIX.1 compatible
  interface.

* win32/win32.[ch] (rb_w32_rmdir): new function.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-07 04:45:46 +00:00
usa 1acf7e6b01 * io.c (is_socket): new function.
* io.c (rb_io_close_read, rb_io_close_write): use is_socket().

* io.c (rb_io_fptr_finalize): need to check fptr->f before calling
  rb_io_fptr_cleanup().

* io.c (pipe_open): win32 pipe support (experimental).

* win32/win32.[ch] (rb_w32_pipe_exec): return file descripters
  instead of FILE structure.

* win32/win32.[ch] (rb_w32_is_socket): new function.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-06 11:19:27 +00:00
usa 0412ddfd24 * win32/win32.c (CreateChild): push back the last space before next
loop because CharNext() eats it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-29 04:17:05 +00:00
usa fce2bb5ea8 * win32/win32.[ch] (rb_w32_isatty): new function to replace MSVCRT's
isatty because it never sets errno.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-18 11:52:46 +00:00
usa befb362acf * {bcc32,win32,wince}/setup.mak (-epilogue-): fix bug of previous commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-16 08:37:59 +00:00
usa 15de1b79f0 * {bcc32,win32,wince}/setup.mak (-epilogue-): remove config.h and
config.status to force updating them.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-16 07:30:42 +00:00
usa d51f21cee0 * bcc32/README.bcc32, win32/README.win32: need bison instead of
byacc.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-12 08:33:17 +00:00
usa c4ce79084f * eval.c (ruby_options): now we cannot call rb_glob() before
ruby_init(), so call rb_w32_cmdvector() at ruby_options().

* win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and
  export it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-12 06:15:40 +00:00
eban b088595db7 * win32/win32.c (isUNCRoot): should check NUL after '.'.
[ruby-dev:24590]
* win32/win32.c (isUNCRoot): fixed buffer overrun.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-25 09:40:55 +00:00
usa 56173249ef * win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-22 04:05:11 +00:00
usa 0a4e53a5c5 * parse.y: add prototypes for Microsoft compiler.
* ext/ripper/depend (parse.obj): lex.c exists at hdrdir.

* {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
  use bison.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 11:38:49 +00:00
usa 977eb1bae7 * win32/win32.c (rb_w32_getpid): don't need to use _getpid() on
mswin32 and mingw32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-13 01:50:32 +00:00
ocean 6302bcf022 * bcc32/Makefile.sub: bccwin32 port starts to use RTL dll.
(need to rebuild all) [ruby-dev:24138]

* win32/win32.{h,c}: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-10 10:24:08 +00:00
usa f4d60b5f63 * {bcc32,win32,wince}/Makefile.sub (config.h): add fcntl.
* win32/win32.[ch] (fcntl): ditto.

* win32/win32.c (rb_w32_connect): support nonblocking mode.

* ext/socket/socket.c (wait_connectable, ruby_connect): support
  nonblocking connect on various platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-07 03:52:15 +00:00
nobu e8d486e119 * process.c (rb_proc_exec): strip trailing spaces. [ruby-dev:24143]
* win32/win32.c (CreateChild): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-27 01:14:30 +00:00
usa 66b6366e1c * configure.in, win32/Makefile.sub (LIBS): need to link shell32
library for SH* functions on mswin32 and mingw32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-19 00:24:43 +00:00
nobu c41cefd492 * win32/win32.c (init_env): initialize HOME and USER environment
variables unless set.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-18 02:22:59 +00:00
usa 564538541e * rubyio.h (rb_eof_error): should mark as NORETURN.
* win32/win32.c (make_cmdvector): adjust escaped successive
  double-quote handling.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-12 01:56:25 +00:00
ocean 9d07076bef * win32/win32.{h,c} (rb_w32_{f,fd,fs}open): workaround for bcc32's
{f,fd,fs}open bug. set errno EMFILE and EBADF. [ruby-dev:23963]

* test/drb/drbtest.rb: fix method duplication.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-25 02:25:25 +00:00
usa 2183b23803 * win32/setup.mak: remove RUBY_EXTERN lines when including version.h.
[ruby-talk:104456]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-24 16:59:05 +00:00
usa f43b8e20c0 * win32/win32.c (rb_w32_opendir): should set errno if error occurs
when calling OS API.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-21 00:27:39 +00:00
usa b1469c134c * win32/win32.c: remove unused functions and variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-09 03:47:08 +00:00
usa 8d9587fb81 * */Makefile.sub (distclean-local): should remove $(RBCONFIG).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-22 01:08:23 +00:00
nobu 43db576e61 * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG
doesn't work for object files on VC.

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-07 01:43:27 +00:00
nobu 47f86aae0a * cygwin/GNUmakefile.in (clean-local, distclean-local): remove
work files.

* win32/Makefile.sub (clean-local): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-28 07:25:42 +00:00
nobu ec37ab2efe * version.c (ruby_show_copyright): obtain copyright year from
RUBY_RELEASE_YEAR.

* win32/resource.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-25 12:01:41 +00:00
nobu b47d416046 * win32/resource.rb: default rubyw icon to ruby.ico, and let DLL also
include them.

* win32/resource.rb: include winver.h for older WindowsCE.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-25 10:37:39 +00:00
nobu 3b79d34d99 * common.mk, */Makefile.sub (lib, dll): phony targets.
* configure.in (ruby, miniruby): ditto.

* cygwin/GNUmakefile.in (rubyw): ditto.


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

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

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

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

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


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

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

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

* win32/rm.bat: remove multiple files.

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-21 23:21:31 +00:00
usa f2b4e71013 * ruby.c (opt_W_getter): get rid of warning.
* bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
  fixed dependency.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-10 01:17:12 +00:00
usa 8829aa4995 * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
replaced regex.c entry with Oniguruma files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-09 01:05:12 +00:00
nobu f9da3539ed * Makefile.in, */Makefile.sub, mkconfig.rb: keep rbconfig.rb old if
unchanged.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-04 13:50:48 +00:00
nobu 5aad820604 * io.c (pipe_open): erred program name should be reported by
exceptions, instead of the first argument.

* process.c (rb_spawn): ditto.

* process.c (proc_spawn_v): use first argument as program name.

* win32/win32.c (rb_w32_aspawn): ditto.

* win32/win32.c (CreateChild): search executable file if no program
  name given.

* lib/drb/extservm.rb (invoke_service_command): use Process.spawn.
  [ruby-dev:23103]

* lib/rdoc/ri/ri_display.rb (setup_pager): use IO.popen.
  [ruby-dev:23086], [ruby-dev:23103]

* lib/rdoc/diagram.rb (convert_to_png): ditto.

* lib/rdoc/generators/chm_generator.rb (compile_project): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-02 07:30:35 +00:00
usa 8e89487675 * win32/Makefile.sub (config.h): shouldn't check defined? NORETURN.
[ruby-dev:23100]

* ChangeLog: typo.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-02 03:26:09 +00:00
ocean ed694e74ff * bcc32/setup.mak: configure's default is "--enable-install-doc"
* win32/setup.mak: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-01 10:56:26 +00:00
ocean 8a5dba33b2 * bcc32/Makefile.sub, bcc32/README.bcc32, bcc32/configure.bat,
bcc32/setup.mak: new configure scheme. use ``configure --prefix=dir''
  instead of ``make DESTDIR=dir install''.
  --with-static-linked-ext support on mswin32. [ruby-dev:23034]
  (by Nakada. Thanks.)

* bcc32/setup.mak: "configure --disable-install-doc" is now working.

* win32/setup.mak: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-29 08:22:48 +00:00
nobu 0ff6bcae35 * win32/win32.c (make_cmdvector): adjust successive double-quote
handling.


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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-22 03:58:44 +00:00
nobu d6a70ac44c * io.c (pipe_open): fix typo.
* win32/win32.c (CreateChild): first argument to CreateProcess() must
  have path, not just basename.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-20 03:57:36 +00:00
nobu ea5679c979 * win32/win32.c, win32/win32.h: fixed prototypes.
* win32/win32.c (wait): same as waitpid() with -1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-19 09:08:23 +00:00
usa cab6d2dadd * win32/Makefile.sub (config.status): should create *.pdb on ext/,
not .ext/.

* win32/Makefile.sub (config.status): convert the name of import
  library.

* lib/mkmf.rb (create_makefile): now don't need to remove
  $(TARGET).lib.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-16 09:39:48 +00:00
nobu 03d8c88b87 * configure.in: check functions, fork spawnv.
* io.c (rb_io_s_popen): accept argv not only single command line.

* process.c (rb_proc_exec_n): export.

* process.c (rb_check_argv): check if arguments are safe to invoke.

* process.c (rb_fork): retry to fork.

* process.c (rb_spawn): spawn child process asynchronously.

* process.c (rb_f_system): raise an exception if the command could not
  execute.

* win32/win32.c (rb_w32_argv_size): count necessary size for joined
  arguments.

* win32/win32.c (rb_w32_join_argv): join arguments with quoting.

* win32/win32.c (rb_w32_pipe_exec, rb_w32_spawn, rb_w32_aspawn):
  accept program name adding to command line.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-16 06:45:32 +00:00
nobu 2549889663 * mkconfig.rb: use fileutils.rb instead of ftools.rb.
* bcc32/Makefile.sub, win32/Makefile.sub (config.h): define
  STACK_GROW_DIRECTION.

* bcc32/Makefile.sub (config.h): add newer checks.

* wince/Makefile.sub (config.h): define NEED_IO_SEEK_BETWEEN_RW.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-14 14:59:19 +00:00
usa eca7c7bdf0 * win32/win32.c (link): raise NotImplementedError on Win9X.
contributed by Tietew. [ruby-dev:22713]

* win32/win32.c, win32/win32.h (link): add const.


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

* string.c (rb_str_match2): removed.

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


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

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

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

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

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

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-09 08:48:55 +00:00
eban 181a3a2af5 * configure.in (DLEXT2): removed. Ruby does not treat
".dll" as a extention library anymore.

* bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub (DLEXT2):
  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-29 14:18:42 +00:00
matz 7a987b9bcd * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
[ruby-dev:22761]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-29 08:05:29 +00:00
siena 357d0ffc29 * configure.in: check availability of link(). [ruby-dev:22237]
* file.c (rb_file_s_link): raise an exception when link() is unavailable.
* missing/os2.c (link): removed. File#link isn't supported.
* bcc32/Makefile.sub: define HAVE_LINK to enable link(). [ruby-dev:22241]
* win32/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-21 16:09:40 +00:00
nobu 224021104d * ext/digest/defs.h, win32/win3.c, win32/win32.h, file.c: remove
useless casts for Borland C.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-19 12:28:14 +00:00
usa fe5b6676b1 * ext/extmk.rb, win32/Makefile.sub, win32/configure.bat,
win32/setup.mak: --with-static-linked-ext support on mswin32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-19 04:10:53 +00:00
nobu 482b9c2ce7 * configure.in (LIBPATHFLAG, RPATHFLAG): enclose paths with single
quotes.  [ruby-dev:22564]

* lib/mkmf.rb (libpathflag): do not enclose with quotes always.

* {bcc32,win32,wince}/Makefile.sub (LIBPATHFLAG): quoted.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-10 14:01:50 +00:00
usa 573b35d45e * win32/dir.h, win32/win32.c: fix patch miss.
* win32/Makefile.sub: fix file dependency.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-05 16:01:54 +00:00
matz caaac4db27 * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
[ruby-dev:22486]

* pack.c (pack_unpack): unpack requires big endian offet (OFF16B
  and OFF32B).  The patch is from Minero Aoki in [ruby-dev:22489]

* pack.c (OFF16B): add big-endian offset again.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-05 10:01:54 +00:00
matz 59dbfa3e4c * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
[ruby-dev:22476]

* io.c (argf_eof): ARGF.eof? should not have any side effect.
  [ruby-dev:22469]

* io.c (argf_each_byte): should return self.  [ruby-dev:22465]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-02 16:21:26 +00:00
usa 923b55d35b * instruby.rb: fix install directory if destdir and compile_dir are
not in the same drive.

* ext/extmk.rb: ditto.

* win32/Makefile.sub, win32/README.win32, win32/configure.bat,
  win32/setup.mak: new configure scheme. use ``configure --prefix=dir''
  instead of ``nmake DESTDIR=dir install''.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-28 17:25:31 +00:00
usa d0133e413d * bcc32/Makefile.sub, win32/Makefile.sub (config.h): remove
HAVE_ISINF definition to follow previous commits of missing.h
  and win32/win32.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-22 09:26:24 +00:00
nobu 748b699d1b * configure.in (ac_cv_func_setitimer): moved from defines.h
* defines.h, rubysig.h, signal.c: removed macro handling which
  should be done in configure.

* configure.in (intrinsics.h): check if present.

* ruby.h: include intrinsics.h if available.

* bignum.c, marshal.c: include ieeefp.h if available.

* missing.h (isinf): define as a macro if finite() and isnan()
  are available.  [ruby-core:02032]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-22 08:23:55 +00:00
usa b3b5b5e6b6 * eval.c (stack_extend): ignore inline optimization on VC7.
* win32/Makefile.sub (OS, RT): can override.

* win32/Makefile.sub (LDFLAGS): ditto. shouldn't use pdb:none
  option. based on Tietew's patch [ruby-dev:22289]

* lib/mkmf.rb (create_makefile): should remove deffile if it's
  made by miniruby. based on nobu's patch.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-18 12:48:43 +00:00
eban 79444dbdb9 * win32/win32.h: define execv() using do_aspawn().
* process.c (proc_exec_v): remove #ifdef's which stopped needing.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-10 04:00:07 +00:00
usa d8d81b35a4 * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
(XCFLAGS): re-export $(XCFLAGS).

* bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
  (ARCH_FLAG): export $(ARCH_FLAG) (perhaps empty value).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-01 00:30:37 +00:00
eban 66598727ef win32/win32.c (rb_win32_stat): add "." to buf1 only if it has a drive letter.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-27 09:13:50 +00:00
eban 4539512afc * win32/win32.c (rb_w32_stat): remove _fullpath() for NUL: device.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-27 08:00:23 +00:00
usa 1b6755193b * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
(XCFLAGS): output empty value instead of `-DRUBY_EXPORT'.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-24 05:54:05 +00:00
usa dbd254d4f4 * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
(HAVE_GETCWD): output to config.h.

* bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
  (XCFLAGS): output to config.status.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-22 08:38:07 +00:00
nobu 113423bdff * win32/win32.c (make_cmdvector): process backslashes even if a quote
is not enclosed.


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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-05 02:15:27 +00:00
usa 667bdeb072 * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
remove needless version.h dependency.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-04 14:45:23 +00:00
eban 0dfe20d3d4 * configure.in, lib/mkmf.rb: add RPATHFLAG for NetBSD. [ruby-dev:21791]
* bcc32/Makefile.sub, win32/Makefile.sub, win32/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-31 03:58:21 +00:00
usa 35e098c1b1 * wince/Makefile.sub, win32/Makefile.sub (.y.c): allow white spaces
at the beginning of line to remove by sed. (ruby-bugs-ja PR#580)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-30 16:40:29 +00:00
usa 9292a6254e * win32/win32.c (do_spawn, do_aspawn): should return child's exit
status to parent.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-21 06:23:51 +00:00
usa d820362c50 * win32/win32.c (do_spawn, do_aspawn): should wait child process even
if callded with P_OVERLAY.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-21 06:10:12 +00:00
eban 57606ec408 * MANIFEST: add test/csv/mac.csv.
* win32/Makefile.sub, bcc32/Makefile.sub (test): add phony NUL target.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-16 07:50:00 +00:00
usa 05ea0b76e6 * win32/win32.c (CreateChild): need to quote cmd if RUBYSHELL is set.
* win32/win32.c (CreateChild): fix condition about whether to call
  shell or not.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-05 16:25:55 +00:00
nobu b6367d64f4 * win32/win32.c (isInternalCmd): stupid miss.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-05 15:36:21 +00:00
nobu 01e3a55648 * lib/mkmf.rb (have_library, find_library): configure by library
name.

* win32/win32.c (isInternalCmd): distinguish command.com and
  cmd.exe.

* win32/win32.c (make_cmdvector): a character just after wildcard
  was ignored.  [ruby-core:01518]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4515 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-05 15:00:33 +00:00
usa 92dbabb0a4 * win32/win32.c (map_errno): support winsock error.
* win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
  kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime):
  pass errno to map_errno().

* win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
  rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
  rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
  rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
  rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
  rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
  rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
  rb_w32_fclose, rb_w32_close): use map_errno().

* win32/win32.h: add winsock errors.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-26 20:17:18 +00:00
nobu 8695612caf * marshal.c (w_symbol, w_object): get rid of warnings.
* re.c (rb_memsearch): ditto.

* time.c (time_dump): ditto.

* ext/extmk.rb (extmake): not continue making when extconf.rb
  failed.

* ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.

* ext/openssl/ossl.h: remove version.h dependency.

* ext/openssl/ruby_missing.h: ditto.

* lib/mkmf.rb (pkg_config): use --libs output except with
  only-L for other options.  [ruby-list:38099]

* lib/mkmf.rb (create_makefile): separate rule for static
  library from shared object.

* win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
  define exec_prefix and libdir.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-16 14:58:34 +00:00
usa 381ff05505 * win32/win32.c (rb_w32_utime): never use utime() of C runtime.
[ruby-talk:77782]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-03 17:48:51 +00:00
usa f3999874e4 * win32/win32.c (isInternalCmd): shouldn't return if find end of str.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-01 06:54:28 +00:00
nobu 3404b920d6 * error.c (rb_raise): snprintf() termination moved to
win32/win32.c.

* win32/win32.c (valid_filename, str_grow): unused.

* win32/win32.c (NTLoginName, ChildRecord): make static.

* win32/win32.c (CreateChild): argument check.

* win32/win32.c (kill): should not call CloseHandle() when
  OpenProcess() failed.

* win32/win32.c (rb_w32_vsnprintf, rb_w32_snprintf): ensure buffer
  terminated.  [ruby-talk:69672]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-30 06:10:09 +00:00
usa 49c85058af * ChangeLog: tabify.
* ext/etc/etc.c: add real prototype to getenv().
* win32/win32.h: add arguments to definitions of functions if possible.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-29 03:17:13 +00:00
usa b431230396 * io.c (rb_fdopen): set errno if it's zero on win32 platforms.
* ext/openssl/ossl_ssl.c (TO_SOCKET): define special version when
  _WIN32 is defined. this is ruby's problem, not OpenSSL.

* win32/win32.c: remove some old comments.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-26 12:27:04 +00:00
usa 5b1008a005 * win32/win32.c (make_cmdvector): recognize quote within string.
based on Nobu's patch ([ruby-win32:450]). [ruby-talk:75853]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-18 06:00:24 +00:00
usa 77e941269f * win32/win32.c (rb_w32_opendir): need to set errno. [ruby-talk:73761]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-17 12:30:15 +00:00
usa b1937a53e6 * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
(MISSING): link with missing/erf.c.

* missing.h (erf, erfc): fix prototype.

* missing/erf.c: new. [ruby-list:37753]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 09:38:01 +00:00
eban e617fd0bf8 * win32/win32.c (_CRTIMP): redefine _CRTIMP on MinGW.
* configure.in: remove '-D__USE_CRTIMP' from XCFLAGS on MinGW.
* win32/win32.c (NtMakeCmdVector): handle quotes only if not instring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-29 09:11:18 +00:00
nobu a4d277f554 * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
wince/Makefile.sub: update dependencies.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-21 11:51:56 +00:00
usa 3b68b107e9 * win32/win32.c (kill): set errno after calling raise().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-20 04:32:52 +00:00
usa 277d89447a * win32/win32.c (kill): fix typo and add signal 0 support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-15 00:33:57 +00:00
usa 161e19ded9 * configure.in, bcc32/Makefile.sub, win32/Makefile.sub: define
HAVE_FSYNC.
* win32/win32.h (fsync): define as _commit().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-13 08:59:36 +00:00
nobu 71e0bb92d1 * numeric.c (flo_is_finite_p): use finite() if available.
* win32/win32.h (isinf, isnan): define as macro.
  [ruby-win32:00533]

* bcc32/Makefile.sub, win32/Makefile.sub: no longer use
  missing/isinf.c, missing/isnan.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-04-21 12:26:08 +00:00
eban b7e6fc019c * win32/win32.c (NtInitialize): set the floating-point control word
on bcc32.

* win32/win32.h, bcc32/Makefile.sub: use missing/isinf.c, should not
  use _finite() because it returns 0 if NaN.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-04-20 14:35:41 +00:00
nobu 6e4a83c0a3 * win32/win32.c (rb_w32_stat): check arguments. [ruby-dev:20007]
[ruby-win32:535]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-04-11 10:02:37 +00:00
nobu f3bdfcc416 * configure.in, bcc32/Makefile.sub, win32/Makefile.sub: define
RUBY_EXPORT to export symbols.

* defines.h: use RUBY_EXTERN instead of EXTERN.

* intern.h, re.h, ruby.h, rubysig.h: ditto.

* win32/win32.h: remove EXTERN definition.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-04 14:12:19 +00:00
usa 63f3bb891c * win32/win32.c (map_errno): map OS error to errno. [new]
* win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
	  kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime): use
	  map_errno() instead of using GetLastError() directly.

	* win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
	  rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
	  rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
	  rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
	  rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
	  rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
	  rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
	  rb_w32_fclose, rb_w32_close): map winsock error to errno.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-28 15:01:56 +00:00
nobu 801406cb5d * win32/win32.c (flock): supports larger files, and maps error
code.

* win32/win32.c (rb_w32_asynchronize): returns errno from child
  thread.

* win32/win32.c (rb_w32_fclose, rb_w32_close): ensures unlocked.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-28 13:54:14 +00:00
nobu d019ce0ad1 * win32/win32.c (rb_w32_opendir, rb_w32_utime): need parens.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 05:36:59 +00:00
usa 396f32c98e * win32/win32.c (link): implement with CreateHardLink().
* win32/win32.c, win32/win32.h (rb_w32_utime): enable utime() to
  directory if on NT. [new] (ruby-bugs-ja:PR#393)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 05:17:46 +00:00
knu 78f457a5d5 * instruby.rb, ext/extmk.rb, Makefile.in, win32/Makefile.sub,
bcc32/Makefile.sub: Replace the complicated MFLAGS/MAKEFLAGS
  parser with something plain and comprehensible.  This fixes a
  bug where make flags were wrongly reordered and the resulted
  command line often did not make sense especially when BSD make
  is used with extra arguments given.  Tested with FreeBSD and
  Linux by me and mswin32, bccwin32 and mingw by usa.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-25 18:59:34 +00:00
usa 0243dab598 * win32/win32.c (pipe_exec): remove unnecessary SetStdHandle().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-22 14:21:07 +00:00
usa bc9c12fcbc Update Copyright to 2003, too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-16 11:02:21 +00:00
nobu 99628bf1f0 * configure.in (RUBY_CHECK_IO_NEED): check whether fseek() and
fflush() are needed.

* io.c (flush_before_seek): flush write stream only.

* io.c (rb_io_check_readable): seek instead of flush if the last
  operation was write.

* io.c (rb_io_check_writable): seek instead of flush if the last
  operation was read.

* bcc32/Makefile.sub, win32/Makefile.sub: needs to seek between
  R/W.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 08:05:32 +00:00
usa a8bb4ed577 * process.c (proc_exec_v): follow to proc_spawn_v(). call do_aspawn()
on Win32.

* process.c (rb_proc_exec): call do_spawn() on Win32.

* win32/win32.c, win32/win32.h (do_spawn, do_aspawn): add mode flag.

* process.c (proc_spawn_v, rb_f_system): follow above change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 04:30:27 +00:00
nobu 10c93d6c74 * ruby.c (ruby_init_loadpath): under Windows, get the module
path from an internal address instead of hard coded library
  name.

* cygwin/GNUmakefile.in, bcc32/Makefile.sub,
  win32/Makefile.sub (CPPFLAGS): removed LIBRUBY_SO macro.

* bcc32/Makefile.sub, win32/Makefile.sub (config.h): no longer
  depends on makefiles.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 01:40:24 +00:00
usa b369eea79f * file.c (utimbuf): use utimbuf instead of _utimbuf if defined _WIN32.
* win32/Makefile.sub (LIBS): use oldnames.lib.

* win32/win32.c (rb_w32_getcwd): follow above change.

* win32/win32.h: ditto.

* wince/direct.c, wince/direct.h (getcwd): ditto.

* wince/io.h: ditto.

* wince/string.c, wince/wince.h (stricmp, strnicmp): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 18:17:30 +00:00
usa d80285a9fe * process.c (rb_proc_exec): use same logic as DJGPP on win32 ports.
* process.c (rb_f_system): ditto.

* win32/win32.c, win32/win32.h (do_aspawn): [new]. for arrayed
  arguments.

* win32/win32.c (CreateChild): add new argument for real filename of
  executing process.

* win32/win32.c (NtHasRedirection, pipe_exec): follow above change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 06:26:10 +00:00
usa c471e19f22 * configure.in: set rb_cv_need_io_flush_between_seek=yes.
* win32/Makefile.sub (config.h): define NEED_IO_FLUSH_BETWEE_SEEK.
  (pointed out by moriq [ruby-dev:19299])


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 05:33:29 +00:00
eban 86c90aea36 * Makefile.in, {win32,bcc32}/Makefile.sub: add new target:
what-where, no-install.

* mkconfig.rb: add const: CROSS_COMPILING.

* ext/extmk.rb: no-install support.  add MAKEDIRS macro.

* lib/mkmf.rb: add !ifdef .. !endif for Borland make.

* process.c: improve DJGPP support.  system "ls", "-l".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-31 12:31:12 +00:00
nobu fb0b931709 * ext/extmk.rb: split --make argument contains options, assume
the first word of --make-flags is always options even unless
  preceeded by -, and ignore letter-case of options if nmake.

* instruby.rb: extract -n option also from --make and
  --make-flags.

* bcc32/Makefile.sub, win32/Makefile.sub: not prepend - to
  $(MFLAGS)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-30 10:16:53 +00:00
eban 2672d0cc28 * instruby.rb: remove junk args.
* lib/mkmf.rb (create_makefile): remove a trouble library
  before making a shared library.
* win32/Makefile.sub: invoke instruby.rb with the --make-flags option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3233 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-28 10:32:05 +00:00
eban c40c0f726b * {win32,bcc32}/Makefile.sub: remove `=' from --make-flags options.
nmake quotes args if included `=' in args.
* instruby.rb: use getopts.rb.
* ext/dbm/extconf.rb: substitute ' with ".
* ext/gdbm/gdbm.c: add prototypes to avoid VC++ warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-27 16:13:56 +00:00
nobu 212d3ebfff * bcc32/setup.mak, win32/setup.mak(-prologue-): move srcdir from
CPP input or UNC path will be removed as a comment.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3228 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-27 12:42:06 +00:00
eban 220a9926c5 * ext/extmk.rb (create_makefile): check only `-' option.
* configure.in: cleanups for MinGW. remove -D__NO_ISOCEXT in $CFLAGS.
* win32/win32.h: prototypes for isinf, isnan are not needed on MinGW.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-26 14:59:35 +00:00
usa b90bdc3e25 * win32/setup.mak (-prologue-): moved srcdir macro definition.
[ruby-win32:420].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-26 10:27:57 +00:00
usa 8b79dd5e82 * bcc32/Makefile.sub, win32/Makefile.sub (RUBY_SO_NAME, config.h):
use $(MAJOR) and $(MINOR). based on Nobu's patch. [ruby-win32:413]

* bcc32/setup.mak, win32/setup.mak (-prologue-): define MAJOR, MINOR
  and TEENY from version.h. based on Nobu's patch. [ruby-win32:413]

* win32/Makefile.sub (config.h): add HAVE_FLOAT_H.

* win32/Makefile.sub (parse.obj): depend on win32/win32.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-25 01:49:27 +00:00
uema2 b19e36a214 * configure.in, defines.h, dir.c, dir.h, dln.c, error.c,
eval.c, file.c, hash.c, io.c, main.c, missing.c,
      process.c, ruby.c, rubysig.h, signal.c, st.c, util.c, util.h,
      bcc/Makefile.sub, win32/Makefile.sub, win32/win32.h,
      ext/Win32API/Win32API.c, ext/socket/getaddrinfo.c,
      ext/socket/getnameinfo.c, ext/socket/socket.c,
      ext/tcltklib/stubs.c
      : replace "NT" with "_WIN32", add DOSISH_DRIVE_LETTER
* wince/exe.mak : delete \r at the end of lines.
* wince/mswince-ruby17.def : delete rb_obj_become


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-15 03:18:08 +00:00
matz 90c4dae08f WinCE patch merged
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-02 07:57:17 +00:00
nobu c405dbf692 * win32/win32.c (rb_w32_stat): empty path is invalid, and return
ENOENT rather than EBADF in such case.  [ruby-talk:57177]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3102 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-01 13:47:06 +00:00
nobu 604689628d * configure.in (LIBRUBY_A): append -static. [ruby-dev:18689]
* configure.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): linker
  argument to link static/shared library respectively.

* Makefile.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): added.

* bcc32/Makefile.sub, win32/Makefile.sub: ditto.

* instruby.rb (LIBRUBY_A): install to libdir.

* lib/mkmf.rb (link_command): link static library of ruby, or
  try_run fails unless LIBRUBY_SO is installed.  [ruby-dev:18646]

* eval.c (call_trace_func): toplevel caller was missing.
  [ruby-dev:18754]

* eval.c (proc_to_s): adjust created line number.

* parse.y (primary, do_block, brace_block): adjust line number of
  block to beginning line, instead of the first statement inside
  the block.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-11-14 13:51:19 +00:00
knu cdce29bf0f * Makefile.in, ext/extmk.rb, bcc32/Makefile.sub,
win32/Makefile.sub: Introduce better command line syntax
  (--make/--make-flags/--extstatic) to extmk.rb and instruby.rb.
  Previously such command as 'make -j3 install' with pmake doesn't
  fail.  Formerly extmk.rb was receiving "make -j 3 -j 3" via the
  command line arguments and just ended up recognizing the first
  "3" as destdir. [with help of usa]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-11-03 21:42:14 +00:00
nobu db1c27bb37 * instruby.rb: add dryrun mode.
* ext/extmk.rb (extmake): avoid Borland make's quirk behavior.

* lib/mkmf.rb (link_command): opt is not a makefile macro.

* bcc32/Makefile.sub ($(LIBRUBY_SO) $(LIBRUBY)): EXTOBJS were not
  linked.

* bcc32/Makefile.sub (ext/extinit.obj): missing.

* bcc32/Makefile.sub (TRY_LINK): options have to place before any
  non-option arguments.

* win32/Makefile.sub (TRY_LINK): need -link and -libpath options.

* bcc32/Makefile.sub, win32/Makefile.sub (RANLIB): logical
  operator never work with command.com.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-22 04:19:26 +00:00
nobu e7ce523bb1 * configure.in (XCFLAGS): CFLAGS to comile ruby itself.
* configure.in (LIBEXT): suffix for static libraries.

* configure.in (LIBPATHFLAG): switch template to specify library
  path.

* configure.in (LINK_SO): command to link shared objects.

* configure.in (DEFFILE, ARCHFILE): miscellaneous system dependent
  files.

* configure.in (EXPORT_PREFIX): prefix to exported symbols on
  Windows.

* configure.in (COMMON_LIBS, COMMON_MACROS, COMMON_HEADERS):
  libraries, macros and headers used in common.

* configure.in (RUBYW_INSTALL_NAME, rubyw_install_name): GUI mode
  excutable name.

* Makefile.in (CFLAGS): append XCFLAGS.

* Makefile.in (PREP): miscellaneous system dependent files.

* Makefile.in (ruby.imp, ext/extinit.o): moved from ext/extmk.rb.

* Makefile.in (fake.rb): CROSS_COMPILING keeps building platform.

* Makefile.in (MAKEFILES): depend on *.in and config.status.

* Makefile.in (parse.c): replace "y.tab.c" with actual name for
  byacc.

* ext/extmk.rb, lib/mkmf.rb: integrated.

* ext/extmk.rb: propagate MFLAGS.

* ext/extmk.rb (extmake): make dummy Makefile to clean even if no
  Makefile is made.

* lib/mkmf.rb (older): accept multiple file names and Time
  objects.

* lib/mkmf.rb (xsystem): split and qoute.

* lib/mkmf.rb (cpp_include): make include directives.

* lib/mkmf.rb (try_func): try wheather specified function is
  available.

* lib/mkmf.rb (install_files): default to site-install.

* lib/mkmf.rb (checking_for): added.

* lib/mkmf.rb (find_executable0): just find executable file with
  no message.

* lib/mkmf.rb (create_header): output header file is variable.

* lib/mkmf.rb (create_makefile): separate sections.

* lib/mkmf.rb (init_mkmf): initialize global variables.

* win32/Makefile.sub, bcc32/Makefile.sub (CPP, AR): added.

* bcc32/Makefile.sub (ARCH): fixed to i386.

* win32/Makefile.sub, bcc32/Makefile.sub (miniruby): should not
  link EXTOBJS.

* ext/dl/extconf.rb: use try_cpp to cross compile.

* ext/dl/extconf.rb: not modify files in source directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-21 14:03:46 +00:00
nobu 1de50c518b * win32/win32.c (rb_w32_putc): wrong condition to fill or flush on
bccwin32.  [ruby-win32:408]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-12 14:47:07 +00:00
nobu 31ab445fea * win32/win32.c (rb_w32_fclose, rb_w32_close): use closesocket()
for socket.  [ruby-win32:382]

* win32/win32.c (StartSockets): set NtSocketsInitialized.

* win32/win32.h: prototypes; rb_w32_fclose, rb_w32_close


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-10 21:07:16 +00:00
nobu c691d09dc1 * ext/socket/socket.c (init_sock): no need for special finalizer,
socket descriptor is no longer duplicated in 1.7.
	  [ruby-talk:50732]

	* win32/win32.c, win32/win32.h (rb_w32_fddup, rb_w32_fdclose):
	  delete.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-01 15:26:39 +00:00
nobu 7345d0efd4 * win32/win32.c (rb_w32_open_osfhandle): adjust
rb_w32_open_osfhandle() with _open_osfhandle().

* win32/win32.c (rb_w32_accept, rb_w32_socket): return -1 on
  error.

* win32/win32.h: should use file descriptor instead of SOCKET.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-29 09:31:58 +00:00
usa 62280094cd * win32/win32.c (is_socket, rb_w32_select, rb_w32_accept, rb_w32_bind,
rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
  rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
  rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
  rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
  rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
  rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport):
  need to protect WSAGetLastError() by RUBY_CRITICAL. [ruby-talk:51778]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-28 21:39:57 +00:00
H_Konishi 94e5dc3416 * win32/win32.c (rb_w32_opendir): Corresponds to the unjust path containing ".
(rb_w32_stat) : ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-15 13:02:09 +00:00
eban ce296ec7fc * configure.in (OUTFLAG, CPPOUTFILE): moved from lib/mkmf.rb.
check whether ${CPP} accepts the -o option.
* win32/Makefile.sub (OUTFLAG, CPPOUTFILE): ditto.
* bcc32/Makefile.sub (OUTFLAG, CPPOUTFILE): ditto.
* djgpp/config.sed (OUTFLAG, CPPOUTFILE): ditto.
* lib/mkmf.rb (OUTFLAG, CPPOUTFILE): use CONFIG.
  make easy to understand log.
* mkconfig.rb (val): should not strip.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-15 12:57:21 +00:00
usa d0c6f63804 * win32/win32.c, win32/win32.h (rb_w32_getpid): negate pid under Win9x.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-11 08:50:13 +00:00
usa 0eb196f281 * bcc32/Makefile.sub: remove unnecessary `.dll' from filename of
dll's resource file.

* cygwin/GNUmakefile.in: ditto. [ruby-dev:17103]

* win32/Makefile.sub: ditto. [ruby-dev:17103]

* win32/resource.rb: ditto. [ruby-dev:17103]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-11 02:38:51 +00:00
usa a82da9463f * win32/Makefile.sub (ext): make directory `ext' on compile dir.
[ruby-dev:18255]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-11 00:39:35 +00:00
usa a043f0f6cb * win32/configure.bat: add CR to end of line.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2839 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-11 00:24:07 +00:00
usa a3faa7e2e2 * win32/Makefile.sub (miniruby): shouldn't link $(EXTOBJS).
* win32/Makefile.sub ($(LIBRUBY_A), $(LIBRUBY)): avoid lib.exe's
  warning.

* win32/Makefile.sub: remove unnecessary rules.

* win32/configure.bat, win32/setup.mak, win32/README.win32: enable to
  pass some arguments to configure.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-10 08:24:11 +00:00
eban b3a426e70a * win32/win32.h (S_I?USR): define only if not mingw32.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-09 14:48:21 +00:00
usa d1a4bf7d3a * time.c: prototype; time_free() to avoid VC++ warnings.
* win32/win32.c (rb_w32_stat): remove S_IWGRP and S_IWOTH bits from
  st_mode.

* win32/win32.h (S_I*): define if not defined.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 10:06:40 +00:00
eban 4f26f3b890 * configure.in: modify program_prefix only if specified
--program-prefix.

* configure.in: don't generate ext/extmk.rb.

* Makefile.in: execute directly $(srcdir)/ext/extmk.rb.
  remove -Cext option, "Dir::chdir 'ext'" in ext/extmk.rb.

* {win32,bccwin32}/Makefile.sub: ditto.

* instruby.rb: ditto.

* ext/extmk.rb: renamed from ext/extmk.rb.in.

* lib/mkmf.rb (module Logging): create log files (mkmf.log)
  in each extension module directories.

* ext/extmk.rb: ditto.

* lib/mkmf.rb (macro_defined?): new method.

* ext/.cvsignore: remove extmk.rb.

* ext/*/.cvsignore: add "*.def".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 09:08:15 +00:00
nobu 8790d9b76e * win32/win32.c (kill): negate pid under Win9x.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 08:56:25 +00:00
usa c1454b3acb * win32/win32.h: define SIGINT and SIGKILL if not defined.
* win32/win32.c: remove definition of SIGINT and SIGKILL.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 02:39:29 +00:00
eban fc8f412488 * configure.in: RUBY_SO_NAME is msvcrt-rubyXX on mswin32/mingw32.
* configure.in (sitearch): new var.
* mkconfig.rb, lib/mkmf.rb (sitearch): ditto.
* win32/Makefile.sub, win32/setup.mak (sitearch): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-23 08:18:19 +00:00
H_Konishi 5738d62912 * replace of check EPIPE error(in getc()) rutine on bcc32.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-20 13:03:22 +00:00
eban 7f2348488f * ext/tcltklib/stubs.c (ruby_tcltk_stubs): win32_getenv returns
the same address always, so allocate string by ruby_strdup.

* win32/win32.c: prototype; rb_w32_open_osfhandle().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-30 06:34:27 +00:00