summaryrefslogtreecommitdiff
path: root/wince
diff options
context:
space:
mode:
Diffstat (limited to 'wince')
-rw-r--r--wince/Makefile.sub6
-rw-r--r--wince/configure.bat2
-rw-r--r--wince/mkexports.rb8
-rw-r--r--wince/resource.rb4
-rw-r--r--wince/setup.mak48
5 files changed, 52 insertions, 16 deletions
diff --git a/wince/Makefile.sub b/wince/Makefile.sub
index 9afb0a8..abc86bd 100644
--- a/wince/Makefile.sub
+++ b/wince/Makefile.sub
@@ -109,7 +109,7 @@ CC = $(CC) -nologo
LD = $(CC)
LDSHARED = $(LD) -LD
XCFLAGS =
-LDFLAGS = -link -incremental:yes -pdb:none -MACHINE:$(MACHINE)
+LDFLAGS = -link -incremental:yes -pdb:none -MACHINE:$(MACHINE) -subsystem:$(SUBSYSTEM)
DLDFLAGS = $(LDFLAGS) -dll
XLDFLAGS = -stack:$(STACK)
SOLIBS =
@@ -409,11 +409,11 @@ minirubyce$(EXEEXT): $(OBJS) $(MAINOBJ) $(WINMAINOBJ) dmyext.obj
$(PROGRAM): $(MAINOBJ) $(WINMAINOBJ) $(LIBRUBY_SO) $*.res
$(PURIFY) $(CC) $(MAINOBJ) $(WINMAINOBJ) $*.res \
- -Fe$@ $(LIBRUBYARG) $(LDFLAGS) $(XLDFLAGS) -subsystem:"windowsce,3.0"
+ -Fe$@ $(LIBRUBYARG) $(LDFLAGS) $(XLDFLAGS)
$(WPROGRAM): $(MAINOBJ) $(WINMAINOBJ) $(LIBRUBY_SO) $*.res
$(PURIFY) $(CC) $(MAINOBJ) $(WINMAINOBJ) $*.res \
- -Fe$@ $(LIBRUBYARG) $(LDFLAGS) $(XLDFLAGS) -subsystem:"windowsce,3.0"
+ -Fe$@ $(LIBRUBYARG) $(LDFLAGS) $(XLDFLAGS)
$(LIBRUBY_A): $(OBJS) dmyext.obj
$(AR) $(ARFLAGS)$@ $(OBJS) dmyext.obj
diff --git a/wince/configure.bat b/wince/configure.bat
index 6240a3c..5e7b1b6 100644
--- a/wince/configure.bat
+++ b/wince/configure.bat
@@ -19,6 +19,8 @@ if "%1" == "--program-name" goto :progname
if "%1" == "CC" goto :define
if "%1" == "EMBEDDED_TOOLS_DIR" goto :define
if "%1" == "CE_TOOLS_DIR" goto :define
+if "%1" == "EMBEDDED_TOOLS4_DIR" goto :define
+if "%1" == "CE_TOOLS4_DIR" goto :define
echo>> ~tmp~.mak "%1" \
shift
goto :loop
diff --git a/wince/mkexports.rb b/wince/mkexports.rb
index 4e06eff..2508920 100644
--- a/wince/mkexports.rb
+++ b/wince/mkexports.rb
@@ -7,13 +7,13 @@ IO.foreach("|dumpbin -symbols " + objs.join(' ')) do |l|
next if /^[0-9A-F]+ 0+ UNDEF / =~ l
next unless l.sub!(/.*\sExternal\s+\|\s+/, '')
if ARGV[1]=="sh3"
- if l.sub!(/^_/, '') # _ で始まるならtrue
- next if /@.*@/ =~ l || /@[0-9a-f]{16}$/ =~ l # かつ、@ とか混じったら next
- elsif !l.sub!(/^(\S+) \([^@?\`\']*\)$/, '\1') # _ ではじまっていなくて、@ とか混じっていたらnext
+ if l.sub!(/^_/, '')
+ next if /@.*@/ =~ l || /@[0-9a-f]{16}$/ =~ l
+ elsif !l.sub!(/^(\S+) \([^@?\`\']*\)$/, '\1')
next
end
else
- next if /@.*@/ =~ l || /@[0-9a-f]{16}$/ =~ l # かつ、@ とか混じったら next
+ next if /@.*@/ =~ l || /@[0-9a-f]{16}$/ =~ l
end
SYM[l.strip] = true
end
diff --git a/wince/resource.rb b/wince/resource.rb
index 81e94a8..4b3d1af 100644
--- a/wince/resource.rb
+++ b/wince/resource.rb
@@ -55,9 +55,9 @@ end
f.binmode if /mingw/ =~ RUBY_PLATFORM
f.print <<EOF
-#ifndef __BORLANDC__
#include <windows.h>
-#include <winver.h>
+#if _WIN32_WCE > 400
+ #include <winver.h>
#endif
#{icons}
diff --git a/wince/setup.mak b/wince/setup.mak
index 2d3f04b..49d4309 100644
--- a/wince/setup.mak
+++ b/wince/setup.mak
@@ -9,7 +9,7 @@ srcdir = $(WIN32DIR:/win32=)
!else
srcdir = $(WIN32DIR)/..
!endif
-OS = mswin32
+OS = mswince
RT = msvcrt
INCLUDE = !include
APPEND = echo>>$(MAKEFILE)
@@ -39,6 +39,7 @@ arm-hpcpro-wince: -prologue- -arm- -hpcpro- -epilogue-
sh3-ppc-wince: -prologue- -sh3- -ppc- -epilogue-
sh3-hpcpro-wince: -prologue- -sh3- -hpcpro2- -epilogue-
sh4-hpcpro-wince: -prologue- -sh4- -hpcpro2- -epilogue-
+armv4-.net41-wince: -prologue- -armv4- -.net41- -epilogue-
-prologue-: nul
@type << > $(MAKEFILE)
@@ -86,6 +87,11 @@ $(CPU) = $(PROCESSOR_LEVEL)
@$(APPEND) CC = cl$(@:-=)
-sh3- -sh4-::
@$(APPEND) CC = shcl
+-armv4-::
+ @$(APPEND) CC = clarm
+ @$(APPEND) ARCHFOLDER = armv4
+ @$(APPEND) $(ARCH) = arm
+
-arm-::
@$(APPEND) CECPUDEF = -DARM -D_ARM_
@@ -95,6 +101,9 @@ $(CPU) = $(PROCESSOR_LEVEL)
@$(APPEND) CECPUDEF = -DSHx -DSH3 -D_SH3_
-sh4-::
@$(APPEND) CECPUDEF = -DSHx -DSH4 -D_SH4_
+-armv4-::
+ @$(APPEND) CECPUDEF = -DARM -D_ARM_ -DARMV4
+
-hpc2k-: -hpc2000-
-ppc-: "-MS Pocket PC-"
@@ -121,20 +130,36 @@ RT = $$(OS)
SUBSYSTEM = windowsce
<<
+-mswince4-:
+ @type << >>$(MAKEFILE)
+!ifdef CE_TOOLS4_DIR
+CE_TOOLS4_DIR = $(CE_TOOLS4_DIR)
+!endif
+!ifdef EMBEDDED_TOOLS4_DIR
+EMBEDDED_TOOLS4_DIR = $(EMBEDDED_TOOLS4_DIR)
+!endif
+
+OS = mswince
+RT = $$(OS)
+SUBSYSTEM = windowsce
+<<
+
+
-mswince-3.00 -mswince-2.11: -mswince-
@type << >>$(MAKEFILE)
SUBSYSVERSION = $(@:-mswince-=)
PATH = $$(EMBEDDED_TOOLS_DIR)/common/evc/bin;$$(EMBEDDED_TOOLS_DIR)/EVC/WCE$$(SUBSYSVERSION:.=)/bin
<<
+-mswince-4.10: -mswince4-
+ @type << >>$(MAKEFILE)
+SUBSYSVERSION = $(@:-mswince-=)
+PATH = $$(EMBEDDED_TOOLS4_DIR)/common/evc/bin;$$(EMBEDDED_TOOLS4_DIR)/EVC/WCE$$(SUBSYSVERSION:.=)/bin
+<<
+
-hpc2000- "-MS Pocket PC-": -mswince-3.00
"-MS HPC Pro-" "-MS HPC Pro--": -mswince-2.11
-
-#-hpc2000- -"MS Pocket PC"- "-MS HPC Pro-":
-# @type << >>$(MAKEFILE)
-#INCLUDE = $$(CE_TOOLS_DIR)/wce$$(SUBSYSVERSION:.=)/$(@:-=)/include
-#LIB = $$(CE_TOOLS_DIR)/wce$$(SUBSYSVERSION:.=)/$(@:-=)/lib/$$(PROCESSOR_ARCHITECTURE)
-#<<
+-.net41-: -mswince-4.10
-hpc2000-:
@type << >>$(MAKEFILE)
@@ -155,6 +180,15 @@ INCLUDE = $$(CE_TOOLS_DIR)/wce$$(SUBSYSVERSION:.=)/$(@:-=)/include
LIB = $$(CE_TOOLS_DIR)/wce$$(SUBSYSVERSION:.=)/$(@:-=)/lib
<<
+-.net41-:
+ @type << >>$(MAKEFILE)
+INCLUDE = $$(CE_TOOLS4_DIR)/wce400/STANDARDSDK/include/$$(ARCHFOLDER)
+LIB = $$(CE_TOOLS4_DIR)/wce400/STANDARDSDK/lib/$$(ARCHFOLDER)
+#INCLUDE = $$(CE_TOOLS4_DIR)/wce400/STANDARDSDK/include/$$(PROCESSOR_ARCHITECTURE)
+#LIB = $$(CE_TOOLS4_DIR)/wce400/STANDARDSDK/lib/$$(PROCESSOR_ARCHITECTURE)
+<<
+
+
-epilogue-: nul
@type << >>$(MAKEFILE)
!ifdef RUBY_INSTALL_NAME