summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--include/ruby/win32.h6
-rw-r--r--win32/Makefile.sub5
-rw-r--r--win32/setup.mak19
4 files changed, 28 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index a5bcac6e5..f0dfbcfdf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Wed Mar 4 19:35:26 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * include/ruby/win32.h (WIN95): moved to config.h
+
+ * win32/Makefile.sub (config.h): defines WIN95 only if unicows.lib
+ is available.
+
+ * win32/setup.mak (-unicows-): checks if unicows.lib is available.
+
Wed Mar 4 05:19:27 2009 James Edward Gray II <jeg2@ruby-lang.org>
* lib/csv.rb: Some minor documentation fixes from Gregory Brown.
diff --git a/include/ruby/win32.h b/include/ruby/win32.h
index ea5fe6132..6190c73d8 100644
--- a/include/ruby/win32.h
+++ b/include/ruby/win32.h
@@ -89,12 +89,6 @@ typedef unsigned int uintptr_t;
# define mode_t int
#endif
-#ifdef _M_IX86
-# define WIN95 1
-#else
-# undef WIN95
-#endif
-
#ifdef WIN95
extern DWORD rb_w32_osid(void);
#define rb_w32_iswinnt() (rb_w32_osid() == VER_PLATFORM_WIN32_NT)
diff --git a/win32/Makefile.sub b/win32/Makefile.sub
index d469cb124..b79c351db 100644
--- a/win32/Makefile.sub
+++ b/win32/Makefile.sub
@@ -332,6 +332,9 @@ $(CONFIG_H): $(MKFILES) $(srcdir)/win32/Makefile.sub $(win_srcdir)/Makefile.sub
#if _MSC_VER != $(MSC_VER)
#error MSC version unmatch: _MSC_VER: $(MSC_VER) is expected.
#endif
+!if defined(HAVE_UNICOWS) && "$(MACHINE)" == "x86"
+#define WIN95 1
+!endif
#define STDC_HEADERS 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_SYS_STAT_H 1
@@ -483,7 +486,7 @@ $(CONFIG_H): $(MKFILES) $(srcdir)/win32/Makefile.sub $(win_srcdir)/Makefile.sub
#define RUBY_JMP_BUF jmp_buf
#define inline __inline
#define NEED_IO_SEEK_BETWEEN_RW 1
-!if "$(PROCESSOR_ARCHITECTURE)" == "x86" || "$(ARCH)" == "x64" || "$(ARCH)" == "ia64"
+!if "$(MACHINE)" == "x86" || "$(ARCH)" == "x64" || "$(ARCH)" == "ia64"
#define STACK_GROW_DIRECTION -1
!endif
#define CANONICALIZATION_FOR_MATHN 1
diff --git a/win32/setup.mak b/win32/setup.mak
index 39a00e8fa..0ddf401bf 100644
--- a/win32/setup.mak
+++ b/win32/setup.mak
@@ -60,9 +60,9 @@ BASERUBY = $(BASERUBY)
@for %I in (ruby.exe) do @echo BASERUBY = %~s$$PATH:I >> $(MAKEFILE)
!endif
--system-vars-: -runtime-
+-system-vars-: -runtime- -unicows-
--system-vars32-: -osname32- -runtime-
+-system-vars32-: -osname32- -runtime- -unicows-
-system-vars64-: -osname64- -runtime-
@@ -141,6 +141,17 @@ int main(int argc, char **argv)
@.\rtname >>$(MAKEFILE)
@del rtname.*
+-unicows-: nul
+ @echo Checking unicows.lib
+ @$(CC) -MD <<conftest.c unicows.lib user32.lib > nul && echo>>$(MAKEFILE) HAVE_UNICOWS = 1 || rem
+#include <windows.h>
+int main()
+{
+ return GetEnvironmentVariableW(0, 0, 0) == 0;
+}
+<<
+ @del conftest.*
+
-version-: nul
@$(APPEND)
@$(CPP) -I$(srcdir) <<"Creating $(MAKEFILE)" | find "=" >>$(MAKEFILE)
@@ -213,7 +224,7 @@ $(CPU) = $(PROCESSOR_LEVEL)
-epilogue-: nul
!if exist(confargs.c)
@$(APPEND)
- @$(CPP) confargs.c | find "=" >> $(MAKEFILE)
+ @$(CPP) confargs.c 2>&1 | findstr "! =" >> $(MAKEFILE)
@del confargs.c
!endif
@type << >>$(MAKEFILE)
@@ -231,4 +242,4 @@ $(CPU) = $(PROCESSOR_LEVEL)
$(BANG)include $$(srcdir)/win32/Makefile.sub
<<
@$(COMSPEC) /C $(srcdir:/=\)\win32\rm.bat config.h config.status
- @echo type `$(MAKE)' to make ruby.
+ @echo "type `nmake' to make ruby."