From 2e38557f30bcba97a6eaa45e8c6dc0c4357b7bff Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Tue, 14 Jan 2003 09:59:31 +0000 Subject: [PATCH] Applied patch [ 667563 ] Wine: compile fix for using glibc/msvcrt git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- distrib/msw/tardist | 4 ++++ distrib/msw/zipdistinno.bat | 44 +++++++++++++++++++++++++++++-------- src/common/filefn.cpp | 4 ++++ src/makeg95.env | 15 ++++++++----- src/msw/curico.cpp | 4 +++- src/msw/utils.cpp | 4 +++- src/msw/utilsexc.cpp | 4 +++- 7 files changed, 62 insertions(+), 17 deletions(-) diff --git a/distrib/msw/tardist b/distrib/msw/tardist index 1ad806f060..64c3072b12 100644 --- a/distrib/msw/tardist +++ b/distrib/msw/tardist @@ -59,6 +59,10 @@ doinit() cp $WXSRC/docs/mac/readme.txt $WXDEST/readme-mac-${WXVER}.txt cp $WXSRC/docs/mac/install.txt $WXDEST/install-mac-${WXVER}.txt cp $WXSRC/docs/os2/install.txt $WXDEST/install-os2-${WXVER}.txt + + # Make .mo files + cd $WXSRC/locale + make allmo } dospinwxgtk() diff --git a/distrib/msw/zipdistinno.bat b/distrib/msw/zipdistinno.bat index ba67aac004..63f06443ce 100755 --- a/distrib/msw/zipdistinno.bat +++ b/distrib/msw/zipdistinno.bat @@ -4,10 +4,10 @@ rem using Inno Setup + ScriptMaker set src=%wxwin set dest=%src\deliver set webfiles=c:\wx2dev\wxWebSite -set inno=1 +set inno=0 Rem Set this to the required version -set version=2.5.0 +set version=2.4.0 if "%src" == "" goto usage if "%dest" == "" goto usage @@ -156,51 +156,71 @@ zip32 -@ -u %dest\wxWindows-%version%-win.zip < %src\distrib\msw\utils.rsp zip32 -@ -u %dest\wxWindows-%version%-win.zip < %src\distrib\msw\utilmake.rsp zip32 -@ -u %dest\wxWindows-%version%-win.zip < %src\distrib\msw\univ.rsp +echo Re-archiving wxWindows-%version%-win.zip call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-win.zip wxWindows-%version% %dest% -zip32 -d %dest%\wxWindows-%version%-win.zip %dest%/src/gtk/descrip.mms %dest%/src/motif/descrip.mms +echo Removing .mms files +zip32 -d %dest%\wxWindows-%version%-win.zip wxWindows-%version%/src/gtk/descrip.mms wxWindows-%version%/src/motif/descrip.mms +echo Creating %dest\wxWindows-%version%-DocSource.zip zip32 -@ %dest\wxWindows-%version%-DocSource.zip < %src\distrib\msw\docsrc.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-DocSource.zip wxWindows-%version% %dest% +echo Creating %dest\wxWindows-%version%-WinHelp.zip zip32 -@ %dest\wxWindows-%version%-WinHelp.zip < %src\distrib\msw\wx_hlp.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-WinHelp.zip wxWindows-%version% %dest% +echo Creating %dest\wxWindows-%version%-HTML.zip zip32 -@ %dest\wxWindows-%version%-HTML.zip < %src\distrib\msw\wx_html.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-HTML.zip wxWindows-%version% %dest% +echo Creating %dest\wxWindows-%version%-PDF.zip zip32 -@ %dest\wxWindows-%version%-PDF.zip < %src\distrib\msw\wx_pdf.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-PDF.zip wxWindows-%version% %dest% Rem zip32 -@ %dest\wxWindows-%version%-Word.zip < %src\distrib\msw\wx_word.rsp Rem call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-Word.zip wxWindows-%version% %dest% +echo Creating %dest\wxWindows-%version%-HTB.zip zip32 -@ %dest\wxWindows-%version%-HTB.zip < %src\distrib\msw\wx_htb.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-HTB.zip wxWindows-%version% %dest% +echo Creating %dest\wxWindows-%version%-HTMLHelp.zip zip32 -@ %dest\wxWindows-%version%-HTMLHelp.zip < %src\distrib\msw\wx_chm.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-HTMLHelp.zip wxWindows-%version% %dest% +Rem Add Linuxy docs to a separate archive to be transported to Linux for the +Rem Linux-based releases +echo Creating %dest\wxWindows-%version%-LinuxDocs.zip +zip32 -@ %dest\wxWindows-%version%-LinuxDocs.zip < %src\distrib\msw\wx_html.rsp +zip32 -@ -u %dest\wxWindows-%version%-LinuxDocs.zip < %src\distrib\msw\wx_pdf.rsp +zip32 -@ -u %dest\wxWindows-%version%-LinuxDocs.zip < %src\distrib\msw\wx_htb.rsp + Rem PDF/HTML docs that should go into the Windows setup because Rem there are no WinHelp equivalents +echo Creating %dest\wxWindows-%version%-ExtraDoc.zip zip32 -@ %dest\wxWindows-%version%-ExtraDoc.zip < %src\distrib\msw\extradoc.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-ExtraDoc.zip wxWindows-%version% %dest% Rem zip up Univ-specific files +echo Creating %dest\wxWindows-%version%-Univ.zip zip32 -@ %dest\wxWindows-%version%-Univ.zip < %src\distrib\msw\univ.rsp call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-Univ.zip wxWindows-%version% %dest% rem VC++ project files +echo Creating %dest\wxWindows-%version%-VC.zip zip32 -@ %dest\wxWindows-%version%-VC.zip < %src\distrib\msw\vc.rsp -call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-VC.zip wxWindows-%version% %dest% +Rem call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-VC.zip wxWindows-%version% %dest% rem BC++ project files +echo Creating %dest\wxWindows-%version%-BC.zip zip32 -@ %dest\wxWindows-%version%-BC.zip < %src\distrib\msw\bc.rsp -call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-BC.zip wxWindows-%version% %dest% +Rem call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-BC.zip wxWindows-%version% %dest% rem CodeWarrior project files +echo Creating %dest\wxWindows-%version%-CW.zip zip32 -@ %dest\wxWindows-%version%-CW.zip < %src\distrib\msw\cw.rsp -call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-CW.zip wxWindows-%version% %dest% +Rem call %WXWIN%\distrib\msw\rearchive wxWindows-%version%-CW.zip wxWindows-%version% %dest% rem Dialog Editor source and binary Rem erase %dest\dialoged-source.zip @@ -241,11 +261,17 @@ Rem zip32 %dest\tex2rtf-win32-%version%.zip tex2rtf.* cd %dest -rem Unzip the Windows files into 'wxWindows-%version%' +rem Put all archives for transit to Linux in a zip file +echo Creating %dest\wxWindows-%version%-LinuxTransit.zip +erase %dest\wxWindows-%version%-LinuxTransit.zip +zip32 %dest\wxWindows-%version%-LinuxTransit.zip wxWindows-%version%-LinuxDocs.zip wxWindows-%version%-VC.zip wxWindows-%version%-CW-Mac.zip + +echo Unzipping the Windows files into wxWindows-%version% unzip32 -o wxWindows-%version%-win.zip -unzip32 -o wxWindows-%version%-VC.zip -unzip32 -o wxWindows-%version%-BC.zip +unzip32 -o wxWindows-%version%-VC.zip -d wxWindows-%version +unzip32 -o wxWindows-%version%-BC.zip -d wxWindows-%version +unzip32 -o wxWindows-%version%-CW.zip -d wxWindows-%version unzip32 -o wxWindows-%version%-HTMLHelp.zip unzip32 -o wxWindows-%version%-ExtraDoc.zip Rem Need Word file, for Remstar DB classes diff --git a/src/common/filefn.cpp b/src/common/filefn.cpp index b46955c5f9..2d99f34d50 100644 --- a/src/common/filefn.cpp +++ b/src/common/filefn.cpp @@ -1263,7 +1263,11 @@ bool wxMkdir(const wxString& dir, int perm) // assume mkdir() has 2 args on non Windows-OS/2 platforms and on Windows too // for the GNU compiler #if (!(defined(__WXMSW__) || defined(__WXPM__) || defined(__DOS__))) || (defined(__GNUWIN32__) && !defined(__MINGW32__)) || defined(__WINE__) || defined(__WXMICROWIN__) + #ifndef MSVCRT if ( mkdir(wxFNCONV(dirname), perm) != 0 ) + #else + if ( mkdir(wxFNCONV(dirname)) != 0 ) + #endif #elif defined(__WXPM__) if (::DosCreateDir((PSZ)dirname, NULL) != 0) // enhance for EAB's?? #elif defined(__DOS__) diff --git a/src/makeg95.env b/src/makeg95.env index d07503208f..5323dea56f 100644 --- a/src/makeg95.env +++ b/src/makeg95.env @@ -217,7 +217,12 @@ endif OPTIONS = -DSTRICT $(_USE_W32API_HEADER_IF_SUPPORTED) # Add "-mthreads" if you want to have threads under mingw32 -COMMON_THREADFLAGS = +# Add "-mno-cygwin" if you want to link with msvcrt.dll in Cywin and Wine +# Otherwise, you link against the native runtime (cygwin.dll or libc) +# Having the flag in mingw32 does not hurt as you always link against msvcrt.dll +# By default it should be on, to minimize dependencies on Cygwin, and +# have more correct filename behaviour in Wine. +COMMON_FLAGS = -mno-cygwin # -mthreads # Debugging information ifeq ($(FINAL),0) @@ -392,13 +397,13 @@ ALL_CPPFLAGS = $(XINCLUDE) $(INC) $(CPPFLAGS) $(EXTRACPPFLAGS) # C and C++ compiler flags for compatibility with old gcc versions REQUIRED_GCC_FLAGS = $(_STRUCT_RETURN_WORKAROUND) $(_THUNK_WORKAROUND) # C++ compiler flags -ALL_CXXFLAGS = $(COMMON_THREADFLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CXXFLAGS) +ALL_CXXFLAGS = $(COMMON_FLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CXXFLAGS) # C compiler flags -ALL_CFLAGS = $(COMMON_THREADFLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CFLAGS) +ALL_CFLAGS = $(COMMON_FLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CFLAGS) # Linker flags -ALL_LDFLAGS = $(COMMON_THREADFLAGS) $(WINDOWSLDFLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS) +ALL_LDFLAGS = $(COMMON_FLAGS) $(WINDOWSLDFLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS) # under Cygwin, Dlls must not be linked with subsystem=windows -ALL_LDFLAGS_DLL = $(COMMON_THREADFLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS) +ALL_LDFLAGS_DLL = $(COMMON_FLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS) .SUFFIXES: .rc .$(RESSUFF) .$(RSCSUFF) .cpp .cxx .cc .c diff --git a/src/msw/curico.cpp b/src/msw/curico.cpp index 34b895da03..572b231f7f 100644 --- a/src/msw/curico.cpp +++ b/src/msw/curico.cpp @@ -16,7 +16,9 @@ #pragma hdrstop #endif -#include +#ifndef __UNIX__ + #include +#endif #include #if defined(__MWERKS__) diff --git a/src/msw/utils.cpp b/src/msw/utils.cpp index b83e43d9b0..986e6602bf 100644 --- a/src/msw/utils.cpp +++ b/src/msw/utils.cpp @@ -79,7 +79,9 @@ #endif // USE_NET_API #if defined(__WIN32__) && !defined(__WXMICROWIN__) - #include + #ifndef __UNIX__ + #include + #endif #ifndef __GNUWIN32__ #include diff --git a/src/msw/utilsexc.cpp b/src/msw/utilsexc.cpp index 3db9fa1419..b646c56ae2 100644 --- a/src/msw/utilsexc.cpp +++ b/src/msw/utilsexc.cpp @@ -60,7 +60,9 @@ #endif #if defined(__WIN32__) && !defined(__WXMICROWIN__) -#include +#ifndef __UNIX__ + #include +#endif #ifndef __GNUWIN32__ #include -- 2.45.2