]> git.saurik.com Git - wxWidgets.git/commitdiff
fix DMars compilation to use precompiled headers
authorChris Elliott <biol75@york.ac.uk>
Wed, 18 Jun 2003 12:09:16 +0000 (12:09 +0000)
committerChris Elliott <biol75@york.ac.uk>
Wed, 18 Jun 2003 12:09:16 +0000 (12:09 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

15 files changed:
include/wx/wxprec.h
samples/dialogs/makefile.sc
src/common/dobjcmn.cpp
src/common/imagjpeg.cpp
src/makesc.env
src/msw/app.cpp
src/msw/clipbrd.cpp
src/msw/dib.cpp
src/msw/makefile.sc
src/msw/mdi.cpp
src/msw/ole/dataobj.cpp
src/msw/utils.cpp
src/msw/window.cpp
src/png/pngconf.h
src/zlib/zconf.h

index 4b215bf0dcbb963a4622851778f59d0ccaa77037..76f16b4108be49afcb6adcb687a0bd80cee92098 100644 (file)
@@ -15,7 +15,7 @@
 // check if to use precompiled headers: do it for most Windows compilers unless
 // adding DigitalMars here appears to amke it slower!
 // explicitly disabled by defining NOPCH
-#if ((defined(__BORLANDC__) || defined(__VISUALC__) || defined(__WATCOMC__)) && defined(__WXMSW__)) || defined(__VISAGECPP__) || defined(__MWERKS__) 
+#if ((defined(__BORLANDC__) || defined(__VISUALC__) || defined(__DIGITALMARS__) || defined(__WATCOMC__)) && defined(__WXMSW__)) || defined(__VISAGECPP__) || defined(__MWERKS__) 
     #if !defined(NOPCH)
         #define WX_PRECOMP
     #endif
index c2a167195319cf0ba2c67f61904985ed87afa996..96e44a6ae42955db4c9ed83124a2ab4b76ba1b56 100644 (file)
@@ -1,7 +1,6 @@
-# Symantec C++ makefile 
-WXDIR = ..\..
-EXTRALIBS=
+#Makefile from wxHatch for Symantec/Digital Mars compiler 
+WXDIR=..\..\..\wxWindows.25
 TARGET=dialogs
-OBJECTS = $(TARGET).obj
+OBJECTS = $(TARGET).obj 
+EXTRALIBS =
 include $(WXDIR)\src\makeprog.sc
-
index 6560200b01960f1041292436ad3c019b2c3ab931..658449d91f627f218c062ca3e676724480fbd4dd 100644 (file)
@@ -141,9 +141,7 @@ wxDataObjectComposite::GetPreferredFormat(Direction WXUNUSED(dir)) const
 }
 
 #if defined(__WXMSW__)
-#ifdef __DIGITALMARS__
-extern "C"
-#endif
+
 size_t wxDataObjectComposite::GetBufferOffset( const wxDataFormat& format )
 {
     wxDataObjectSimple *dataObj = GetObject(format);
@@ -154,9 +152,7 @@ size_t wxDataObjectComposite::GetBufferOffset( const wxDataFormat& format )
     return dataObj->GetBufferOffset( format );
 }
 
-#ifdef __DIGITALMARS__
-extern "C"
-#endif
+
 const void* wxDataObjectComposite::GetSizeFromBuffer( const void* buffer,
                                                       size_t* size,
                                                       const wxDataFormat& format )
@@ -169,9 +165,7 @@ const void* wxDataObjectComposite::GetSizeFromBuffer( const void* buffer,
     return dataObj->GetSizeFromBuffer( buffer, size, format );
 }
 
-#ifdef __DIGITALMARS__
-extern "C"
-#endif
+
 void* wxDataObjectComposite::SetSizeInBuffer( void* buffer, size_t size,
                                               const wxDataFormat& format )
 {
index d1588229f99d48703fb982ad7b2161322b21972e..98008589d12fd97f8916b1367e626f388781edd2 100644 (file)
@@ -33,7 +33,7 @@
 //     This causes a conflict with jmorecfg.h header from libjpeg, so we have
 //     to make sure libjpeg won't try to define boolean itself. This is done by
 //     defining HAVE_BOOLEAN.
-#if defined(__WXMSW__) && (defined(__MWERKS__) || (defined(__WATCOMC__) && __WATCOMC__ < 1200))
+#if defined(__WXMSW__) && (defined(__MWERKS__) || defined(__DIGITALMARS__) || (defined(__WATCOMC__) && __WATCOMC__ < 1200))
     #define HAVE_BOOLEAN
     #include <windows.h>
 #endif
index 607d44e0109401206e4e2784bb33b1e12f71f08e..dac29a2404cbfc69de0a58e400b1b016ae808396 100644 (file)
@@ -3,6 +3,7 @@
 SC_SUFFIX=_sc
 
 ####WXDIR = $(WXWIN)
+WXOUTDIR=$(WXDIR)\d_mars
 INCDIR = $(WXDIR)\include
 CONTRIBINCDIR = $(WXDIR)\contrib\include
 MSWINCDIR = $(WXDIR)\include\wx\msw
@@ -27,7 +28,10 @@ RC=rcc
 
 # WIN32 settings
 # -H ... fix to use directory
-CFLAGS = -o -mn -W -H -D__NT__ -DWIN32 -D__WIN32__ -D__WIN95__ -D__WINDOWS__ -D__WXMSW__ -D__SC__ -D__WXDEBUG__ $(EXTRACPPFLAGS)
+##CFLAGS = -o -mn -W -H -D__NT__ -DWIN32 -D__WIN32__ -D__WIN95__ -D__WINDOWS__ -D__WXMSW__ -D__SC__ -D__WXDEBUG__ $(EXTRACPPFLAGS)
+CFLAGS = -mn -D_WINDOWS -6 -a8 -Nc -c -H -HD$(WXOUTDIR) -HO- -DWXMSW -D__WIN32__ -D__WIN95__ -D__WXDEBUG__ $(EXTRACPPFLAGS)
+CPPFLAGS = -cpp -Ae -Ar
+
 LINKER = link
 # possible bug with putting d on any extralibs if we have debug and release versions one day
 LDFLAGS = $(EXTRALDFLAGS)
@@ -35,7 +39,7 @@ LIBS=$(WXLIB) $(EXTRALIBS) $(SUPPORTLIBS) advapi32 comctl32 comdlg32 ctl3d32 gc
 
 
 .$(SRCSUFF).obj:
-       *$(CC) -c $(CFLAGS) $(INCLUDE) $(OPTIONS) $< -o$@
+       *$(CC) -c $(CPPFLAGS) $(CFLAGS) $(INCLUDE) $(OPTIONS) $< -o$@
 
 # -Jm: relaxed type checking only for .C files
 .c.obj:
index d5a953bbcbbf20e9a53d3ff0592599084171af98..0ece73173decd0f7901c08fcb09bbf2111d4e11c 100644 (file)
@@ -151,11 +151,7 @@ HICON wxDEFAULT_MDIPARENTFRAME_ICON = (HICON) NULL;
 
 HBRUSH wxDisableButtonBrush = (HBRUSH) 0;
 
-#ifdef __DIGITALMARS__
-extern "C" LRESULT WXDLLEXPORT APIENTRY wxWndProc(HWND, UINT, WPARAM, LPARAM);
-#else
 LRESULT WXDLLEXPORT APIENTRY wxWndProc(HWND, UINT, WPARAM, LPARAM);
-#endif
 
 // FIXME wxUSE_ON_FATAL_EXCEPTION is only supported for VC++ now because it
 //       needs compiler support for Win32 SEH. Others (especially Borland)
index 875c9f838a9f62a5f8be1ed6aaeffc3d0c5903b9..bfb991866d677280273bb248a9f79863a783915b 100644 (file)
@@ -174,10 +174,6 @@ bool wxIsClipboardFormatAvailable(wxDataFormat dataFormat)
     }
 }
 
-#ifdef __DIGITALMARS__
-extern "C" HGLOBAL wxDIB::ConvertFromBitmap(HBITMAP hbmp);
-#endif
-
 
 bool wxSetClipboardData(wxDataFormat dataFormat,
                         const void *data,
index 31621f273403e8b23595fa92e527ff7bcd359c57..9aa457995aa5eed14c0754a7a2e28ad6dc2c2ef0 100644 (file)
@@ -440,9 +440,6 @@ size_t wxDIB::ConvertFromBitmap(BITMAPINFO *pbi, HBITMAP hbmp)
 }
 
 /* static */
-#ifdef __DIGITALMARS__
-extern "C"
-#endif
 HGLOBAL wxDIB::ConvertFromBitmap(HBITMAP hbmp)
 {
     // first calculate the size needed
index 686132b9d62f51b795adc8c4a38bf856fd594f6a..d0baac215cf45169e40d7851410f5bbf840116f1 100644 (file)
@@ -327,13 +327,14 @@ MSWOBJS = $(MSWDIR)\accel.obj \
 # Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
 OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS) 
 
-all: MAKEARCHDIR MAKELIBS $(LIBTARGET) zlib png jpeg tiff regex
+all: MAKEARCHDIR MAKELIBS PCH $(LIBTARGET) zlib png jpeg tiff regex
 
 MAKEARCHDIR:
     @if not exist $(MSWINCDIR)\setup.h copy $(MSWINCDIR)\setup0.h $(MSWINCDIR)\setup.h
     @if not exist $(ARCHINCDIR)\wx\setup.h mkdir $(ARCHINCDIR)
     @if not exist $(ARCHINCDIR)\wx\setup.h mkdir $(ARCHINCDIR)\wx
     @if not exist $(ARCHINCDIR)\wx\setup.h copy $(MSWINCDIR)\setup.h $(ARCHINCDIR)\wx\setup.h
+    @if not exist $(WXOUTDIR)\nul mkdir $(WXOUTDIR)
 
 #build our own copies of missing libraries
 MAKELIBS:
@@ -344,7 +345,7 @@ $(LIBTARGET): $(OBJECTS)
        -del $(LIBTARGET)
        *lib /PAGESIZE:512 $(LIBTARGET) y $(OBJECTS), nul;
 
-clean: clean_msw clean_zlib clean_png clean_jpeg clean_tiff clean_regex
+clean: clean_msw clean_zlib clean_png clean_jpeg clean_tiff clean_regex clean_pch
 
 clean_msw:
        -del $(COMMDIR)\*.obj
@@ -356,6 +357,13 @@ clean_msw:
         -del ole\*.obj
         -del $(LIBTARGET)
 
+PCH: $(INCDIR)\wx\wxprec.h
+        dmc $(CPPFLAGS) $(CFLAGS) $(INCLUDE) -HF$(WXOUTDIR)\wxprec.SYM -o$(WXOUTDIR)\wxprec.PCO $(INCDIR)\wx\wxprec.h
+
+clean_pch:
+        del $(WXOUTDIR)\*.sym
+        del $(WXOUTDIR)\*.PCO
+
 png:   
         make -f $(WXDIR)\src\png\makefile.sc FINAL=$(FINAL)
 
index d87cf8ab65bee44914e0b7a369cb9d6215734a89..a00557187df8b0a61812421a6ab551cb2480ca48 100644 (file)
@@ -68,11 +68,7 @@ extern wxMenu *wxCurrentPopupMenu;
 extern const wxChar *wxMDIFrameClassName;   // from app.cpp
 extern const wxChar *wxMDIChildFrameClassName;
 extern const wxChar *wxMDIChildFrameClassNameNoRedraw;
-#ifdef __DIGITALMARS__
-extern "C" void wxAssociateWinWithHandle(HWND hWnd, wxWindow *win);
-#else
 extern void wxAssociateWinWithHandle(HWND hWnd, wxWindow *win);
-#endif
 extern void wxRemoveHandleAssociation(wxWindow *win);
 
 static HWND invalidHandle = 0;
index 7ecdb81d3bb1ea4953f8a6d4690cfaac06a26f21..b554e126cd9def51095b65c5d85304ab9e6ea964 100644 (file)
@@ -410,19 +410,6 @@ STDMETHODIMP wxIDataObject::GetDataHere(FORMATETC *pformatetc,
     return S_OK;
 }
 
-#ifdef __DIGITALMARS__
-extern "C"
-size_t wxDataObjectComposite::GetBufferOffset( const wxDataFormat& format );
-
-extern "C"
-const void* wxDataObjectComposite::GetSizeFromBuffer( const void* buffer,
-                                                      size_t* size,
-                                                      const wxDataFormat& format ) ;
-extern "C"
-void* wxDataObjectComposite::SetSizeInBuffer( void* buffer, size_t size,
-                                              const wxDataFormat& format ) ;
-
-#endif
 
 // set data functions
 STDMETHODIMP wxIDataObject::SetData(FORMATETC *pformatetc,
index 0b2827e0e798051b7bff6bc53221b70bb4e11ab0..dc8b9f8c31c5c73c38e3d61430f7620dbab449db 100644 (file)
@@ -1316,11 +1316,7 @@ static HCURSOR gs_wxBusyCursor = 0;     // new, busy cursor
 static HCURSOR gs_wxBusyCursorOld = 0;  // old cursor
 static int gs_wxBusyCursorCount = 0;
 
-#ifdef __DIGITALMARS__
-extern "C" HCURSOR wxGetCurrentBusyCursor()
-#else
 extern HCURSOR wxGetCurrentBusyCursor()
-#endif
 {
     return gs_wxBusyCursor;
 }
index 3dc135954b2a026723b8df4118c1e89afe895567..e1d9ce5965f50b2bcb2c7947dd2fff002a34e48a 100644 (file)
@@ -176,13 +176,8 @@ static bool gs_hasStdCmap = FALSE;
 // ---------------------------------------------------------------------------
 
 // the window proc for all our windows
-#ifdef __DIGITALMARS__
-extern "C" LRESULT WXDLLEXPORT APIENTRY _EXPORT wxWndProc(HWND hWnd, UINT message,
-                                   WPARAM wParam, LPARAM lParam);
-#else
 LRESULT WXDLLEXPORT APIENTRY _EXPORT wxWndProc(HWND hWnd, UINT message,
                                    WPARAM wParam, LPARAM lParam);
-#endif
 
 
 #ifdef  __WXDEBUG__
@@ -190,11 +185,7 @@ LRESULT WXDLLEXPORT APIENTRY _EXPORT wxWndProc(HWND hWnd, UINT message,
 #endif  //__WXDEBUG__
 
 void wxRemoveHandleAssociation(wxWindowMSW *win);
-#ifdef __DIGITALMARS__
-extern "C" void wxAssociateWinWithHandle(HWND hWnd, wxWindowMSW *win);
-#else
 extern void wxAssociateWinWithHandle(HWND hWnd, wxWindowMSW *win);
-#endif
 wxWindow *wxFindWinFromHandle(WXHWND hWnd);
 
 // this magical function is used to translate VK_APPS key presses to right
@@ -1739,11 +1730,7 @@ bool wxWindowMSW::DoPopupMenu(wxMenu *menu, int x, int y)
 long wxWindowMSW::MSWDefWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
 {
     if ( m_oldWndProc )
-#ifdef __DIGITALMARS__
-        return ::CallWindowProc( (FARPROC) m_oldWndProc, GetHwnd(), (UINT) nMsg, (WPARAM) wParam, (LPARAM) lParam);
-#else
         return ::CallWindowProc(CASTWNDPROC m_oldWndProc, GetHwnd(), (UINT) nMsg, (WPARAM) wParam, (LPARAM) lParam);
-#endif
     else
         return ::DefWindowProc(GetHwnd(), nMsg, wParam, lParam);
 }
@@ -3309,9 +3296,6 @@ bool wxWindowMSW::HandleDropFiles(WXWPARAM wParam)
 #endif
 }
 
-#ifdef __DIGITALMARS__
-extern "C" HCURSOR wxGetCurrentBusyCursor();
-#endif
 
 bool wxWindowMSW::HandleSetCursor(WXHWND WXUNUSED(hWnd),
                                   short nHitTest,
index e4fbd8c41ce1f7c0939ce0159f9a80c3736ca797..7b60f45b5bd1626688149b9206ea569541c30165 100644 (file)
  */
 #ifndef MACOS
 #  if (defined(__MWERKS__) && defined(macintosh)) || defined(applec) || \
-      defined(THINK_C) || defined(__SC__) || defined(TARGET_OS_MAC)
+      defined(THINK_C) || (defined(__SC__) && !defined(__DMC__))|| defined(TARGET_OS_MAC)
 #    define MACOS
 #  endif
 #endif
index e656bf28d227c047b318037bf65dd8c04fd75f48..3a1c213a030f9656611d3328aff2594393e18b7b 100644 (file)
@@ -87,7 +87,7 @@
 #endif
 
 /* Some Mac compilers merge all .h files incorrectly: */
-#if defined(__MWERKS__) || defined(applec) ||defined(THINK_C) ||defined(__SC__)
+#if defined(__MWERKS__) || defined(applec) ||defined(THINK_C) ||(defined(__SC__) && !defined(__DMC__))
 #  define NO_DUMMY_DECL
 #endif