}
foreach $file (sort keys %wxCommon) {
- next if $wxCommon{$file} =~ /\b16\b/;
+ next if $wxCommon{$file} =~ /\b(16|U)\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXCOMMONOBJS"} .= "\$(COMMDIR)\\\$D\\" . $file . " "
!if "$(WXMAKINGDLL)" == "1"
LIBTARGET=$(WXDIR)\lib\$(WXLIBNAME).dll
-DUMMYOBJ=$D\dummydll.obj
!else
LIBTARGET=$(WXLIB)
-DUMMYOBJ=$D\dummy.obj
!endif
# This one overrides the others, to be consistent with the settings in setup.h
HTMLDIR = $(WXDIR)\src\html
JPEGDIR = $(WXDIR)\src\jpeg
TIFFDIR = $(WXDIR)\src\tiff
+REGEXDIR = $(WXDIR)\src\regex
+
{$(GENDIR)}.cpp{$(GENDIR)\$D}.obj:
cl @<<
# Add $(HTMLOBJS) if wanting wxHTML classes
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS)
+ARCHINCDIR=$(WXDIR)\lib\msw$(INCEXT)
+SETUP_H=$(ARCHINCDIR)\wx\setup.h
+
# Normal, static library
-all: setuph dirs $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib jpeg tiff regex $(LIBTARGET)
+all: dirs $(SETUP_H) $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib jpeg tiff regex $(LIBTARGET)
+
+$(ARCHINCDIR)\wx:
+ mkdir $(ARCHINCDIR)
+ mkdir $(ARCHINCDIR)\wx
-setuph:
+$(WXDIR)\include\wx\msw\setup.h:
cd $(WXDIR)\include\wx\msw
if not exist setup.h copy setup0.h setup.h
cd $(WXDIR)\src\msw
-dirs: $(MSWDIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(OLEDIR)\$D $(HTMLDIR)\$D $(JPEGDIR)\$D $(TIFFDIR)\$D
+$(SETUP_H): $(WXDIR)\include\wx\msw\setup.h
+ copy $(WXDIR)\include\wx\msw\setup.h $@
+
+dirs: $(MSWDIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(OLEDIR)\$D $(HTMLDIR)\$D $(JPEGDIR)\$D $(TIFFDIR)\$D $(REGEXDIR)\$D $(ARCHINCDIR)\wx $(WXDIR)\$D
$D:
mkdir $D
$(TIFFDIR)\$D:
mkdir $(TIFFDIR)\$D
+$(REGEXDIR)\$D:
+ mkdir $(REGEXDIR)\$D
+
+$(WXDIR)\$D:
+ mkdir $(WXDIR)\$D
+
+
# wxWindows library as DLL
dll:
- nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME)
+ nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME) UNICODE=$(UNICODE)
cleandll:
- nmake -f makefile.vc clean FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME)
+ nmake -f makefile.vc clean FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME) UNICODE=$(UNICODE)
# wxWindows + app as DLL. Only affects main.cpp.
dllapp:
- nmake -f makefile.vc all FINAL=$(FINAL) DLL=1
+ nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 UNICODE=$(UNICODE)
# wxWindows + app as DLL, for Netscape plugin - remove DllMain.
dllnp:
- nmake -f makefile.vc all NOMAIN=1 FINAL=$(FINAL) DLL=1
+ nmake -f makefile.vc all NOMAIN=1 FINAL=$(FINAL) DLL=1 UNICODE=$(UNICODE)
# Use this to make dummy.obj and generate a PCH.
# You might use the dll target, then the pch target, in order to
### Static library
-$(WXDIR)\lib\$(WXLIBNAME).lib: $D\dummy.obj $(OBJECTS) $(PERIPH_LIBS)
+$(WXDIR)\lib\$(WXLIBNAME).lib: $(DUMMYOBJ) $(OBJECTS) $(PERIPH_LIBS)
-erase $(LIBTARGET)
$(implib) @<<
-out:$@
-machine:$(CPU)
-$(OBJECTS) $D\dummy.obj $(PERIPH_LIBS)
+$(OBJECTS) $(DUMMYOBJ) $(PERIPH_LIBS)
<<
!else
########################################################
# Windows-specific objects
-$D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h
- cl $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /c /Tp dummy.cpp
-
-$D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h
- cl @<<
-$(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /c /Tp dummydll.cpp
-<<
+$(DUMMYOBJ): $(DUMMY).$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(SETUP_H)
+ cl $(CPPFLAGS) $(MAKEPRECOMP) /Fo$(DUMMYOBJ) /c /Tp $(DUMMY).cpp
# Compile certain files with no optimization (some files cause a
# compiler crash for buggy versions of VC++, e.g. 4.0).
$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
copy "$(COMMDIR)"\doslex.c "$(COMMDIR)"\lex_yy.c
-$(OBJECTS): $(WXDIR)/include/wx/setup.h
+$(OBJECTS): $(SETUP_H)
$(COMMDIR)\$D\unzip.obj: $(COMMDIR)\unzip.c
cl @<<
regex:
cd $(WXDIR)\src\regex
- nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG)
+ nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) all
cd $(WXDIR)\src\msw
clean_regex:
-erase *.pdb
-erase *.sbr
-erase $(WXLIBNAME).pch
+ -erase $(WXDIR)\$D\$(PCH)
+ -erase $(WXDIR)\$D\*.pdb
+ -erase $(WXDIR)\$D\*.obj
-erase $(GENDIR)\$D\*.obj
-erase $(GENDIR)\$D\*.pdb
-erase $(GENDIR)\$D\*.sbr
-rmdir $(HTMLDIR)\$(D)
-rmdir $(JPEGDIR)\$(D)
-rmdir $(TIFFDIR)\$(D)
+ -rmdir $(WXDIR)\$D
# Making documents
docs: allhlp allhtml allpdfrtf allhtb allhtmlhelp