#include <wx/stream.h>
-class wxDataInputStream: virtual public wxFilterInputStream {
+class wxDataInputStream: public virtual wxFilterInputStream {
public:
wxDataInputStream(wxInputStream& s);
virtual ~wxDataInputStream();
wxString ReadString();
};
-class wxDataOutputStream: virtual public wxFilterOutputStream {
+class wxDataOutputStream: public virtual wxFilterOutputStream {
public:
wxDataOutputStream(wxOutputStream& s);
virtual ~wxDataOutputStream();
@param szFile and nLine - file name and line number of the ASSERT
szMsg - optional message explaining the reason
*/
- void wxOnAssert(const char *szFile, int nLine, const char *szMsg = (const char *) NULL);
+ void WXDLLEXPORT wxOnAssert(const char *szFile, int nLine, const char *szMsg = (const char *) NULL);
/// generic assert macro
#define wxASSERT(cond) if ( !(cond) ) wxOnAssert(__FILE__, __LINE__)
bool m_file_destroy;
};
-class wxFileInputStream: virtual public wxInputStream,
- virtual public wxFileStreamBase {
+class wxFileInputStream: public virtual wxInputStream,
+ public virtual wxFileStreamBase {
public:
wxFileInputStream(const wxString& fileName);
virtual ~wxFileInputStream();
off_t DoTellInput() const;
};
-class wxFileOutputStream: virtual public wxOutputStream,
- virtual public wxFileStreamBase {
+class wxFileOutputStream: public virtual wxOutputStream,
+ public virtual wxFileStreamBase {
public:
wxFileOutputStream(const wxString& fileName);
virtual ~wxFileOutputStream();
// ----------------------------------------------------------------------------
// global functions
// ----------------------------------------------------------------------------
-WXDLLEXPORT wxLocale* wxGetLocale();
+wxLocale* WXDLLEXPORT wxGetLocale();
// get the translation of the string in the current locale
inline WXDLLEXPORT const char *wxGetTranslation(const char *sz)
int m_iolimit;
};
-class wxMemoryInputStream: virtual public wxMemoryStreamBase, public wxInputStream {
+class wxMemoryInputStream: public virtual wxMemoryStreamBase, public wxInputStream {
public:
wxMemoryInputStream(const char *data, size_t length);
virtual ~wxMemoryInputStream();
off_t m_position_i;
};
-class wxMemoryOutputStream: virtual public wxMemoryStreamBase, public wxOutputStream {
+class wxMemoryOutputStream: public virtual wxMemoryStreamBase, public wxOutputStream {
public:
wxMemoryOutputStream(char *data = NULL, size_t length = 0);
virtual ~wxMemoryOutputStream();
wxStreamBuffer *m_o_streambuf;
};
-class wxStream: virtual public wxInputStream,
- virtual public wxOutputStream
+class wxStream: public virtual wxInputStream,
+ public virtual wxOutputStream
{
public:
wxStream();
// "Filter" streams
// ---------------------------------------------------------------------------
-class WXDLLEXPORT wxFilterInputStream: virtual public wxInputStream {
+class WXDLLEXPORT wxFilterInputStream: public virtual wxInputStream {
public:
wxFilterInputStream();
wxFilterInputStream(wxInputStream& stream);
wxInputStream *m_parent_i_stream;
};
-class WXDLLEXPORT wxFilterOutputStream: virtual public wxOutputStream {
+class WXDLLEXPORT wxFilterOutputStream: public virtual wxOutputStream {
public:
wxFilterOutputStream();
wxFilterOutputStream(wxOutputStream& stream);
};
class WXDLLEXPORT wxFilterStream: public wxStream,
- virtual public wxFilterInputStream,
- virtual public wxFilterOutputStream {
+ public virtual wxFilterInputStream,
+ public virtual wxFilterOutputStream {
public:
wxFilterStream(wxStream& stream);
wxFilterStream();
switch (evt) {
case EVT_PEEK:
case EVT_READ:
- ret = read(m_fd, buffer, nbytes);
+ ret = recv(m_fd, buffer, nbytes,
+ (evt == EVT_PEEK) ? MSG_PEEK : 0);
break;
case EVT_WRITE:
- ret = write(m_fd, buffer, nbytes);
+ ret = send(m_fd, buffer, nbytes, 0);
break;
}
if (ret < 0) {
OPT = -O2
DEBUG_FLAGS = -DUSE_DEFINE
!endif
-CPPFLAGS=$(DEBUG_FLAGS) $(OPT) @$(CFG)
-LIBTARGET= $(WXLIBDIR)\wx32.lib
+!ifndef DLL
+DLL=0
+!endif
+
+# Target WXMAKINGDLL WXUSINGDLL WXBUILDDLL
+# wxWin DLL 1 0 1
+# wxWin STATIC 0 0 0
+# App use wxWin DLL 0 1 0
+# DLL use wxWin DLL 0 1 1
+# DLL use wxWin STATIC 0 0 1
+#
+
+!if "$(WXMAKINGDLL)" == "1"
+DLL_FLAGS= -DWXMAKINGDLL=1 -D_WINDLL
+WXLIB= $(WXLIBDIR)\wx200.lib
+
+!else
+
+LINK_FLAGS= /Tpe /ap /c
+
+!if "$(WXUSINGDLL)" == "1"
+DLL_FLAGS= -DWXUSINGDLL=1
+WXLIB= $(WXLIBDIR)\wx200.lib
+!else
+DLL_FLAGS=
+WXLIB= $(WXLIBDIR)\wx32.lib
+!endif
+
+!endif
+
+!if "$(WXBUILDDLL)" == "1"
+DLL_FLAGS= $(DLL_FLAGS) -D_RTLDLL
+LINK_FLAGS= /Tpd /ap /c
+!endif
+
+CPPFLAGS=$(DLL_FLAGS) @$(CFG)
+
DUMMY=dummy
SRCSUFF = cpp
!endif
WXDIR = $(WXWIN)
+
+# Set all these to 1 if you want to build a dynamic library
+#DLL=1
+#WXMAKINGDLL=1
+#WXBUILDDLL=1
+
!include $(WXDIR)\src\makeb32.env
# Please set these according to the settings in wx_setup.h, so we can include
PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET)
!endif
-LIBTARGET= $(WXLIBDIR)\wx32.lib
+PERIPH_LIBS=$(WXDIR)\lib\zlib.lib $(PERIPH_LIBS)
+PERIPH_TARGET=zlib $(PERIPH_TARGET)
+PERIPH_CLEAN_TARGET=clean_zlib $(PERIPH_CLEAN_TARGET)
+
+!if "$(DLL)" == "0"
DUMMY=dummy
+!else
+DUMMY=dummydll
+LIBS= cw32 import32 ole2w32
+!endif
+
+LIBTARGET=$(WXLIB)
GENDIR=..\generic
COMMDIR=..\common
$(MSWDIR)\memory.obj \
$(MSWDIR)\module.obj \
$(MSWDIR)\object.obj \
- $(MSWDIR)\odbc.obj \
$(MSWDIR)\postscrp.obj \
$(MSWDIR)\prntbase.obj \
$(MSWDIR)\resource.obj \
$(MSWDIR)\mstream.obj \
$(MSWDIR)\zstream.obj \
$(MSWDIR)\datstrm.obj \
+ $(MSWDIR)\sckstrm.obj \
$(MSWDIR)\extended.obj \
- $(MSWDIR)\wincmn.obj
-
+ $(MSWDIR)\wincmn.obj \
+ $(MSWDIR)\objstrm.obj \
+ $(MSWDIR)\dynlib.obj \
+ $(MSWDIR)\tokenzr.obj \
+ $(MSWDIR)\socket.obj \
+ $(MSWDIR)\sckaddr.obj \
+ $(MSWDIR)\protocol.obj \
+ $(MSWDIR)\url.obj \
+ $(MSWDIR)\http.obj \
+ $(MSWDIR)\ftp.obj \
+ $(MSWDIR)\sckfile.obj \
+ $(MSWDIR)\sckipc.obj
+
+# $(MSWDIR)\odbc.obj \
# $(MSWDIR)\matrix.obj \
MSWOBJS = \
$(MSWDIR)\window.obj \
$(MSWDIR)\droptgt.obj \
$(MSWDIR)\dropsrc.obj \
- $(MSWDIR)\dataobj.obj \
$(MSWDIR)\oleutils.obj \
+ $(MSWDIR)\dataobj.obj \
$(MSWDIR)\uuid.obj
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
all: all_libs all_execs
+!if "$(DLL)" == "0"
+
$(LIBTARGET): $(DUMMY).obj $(OBJECTS) $(BASEOBJECTS)
- erase $(LIBTARGET)
+ erase $(LIBTARGET)
tlib $(LIBTARGET) /P512 @&&!
-+$(OBJECTS:.obj =.obj -+) -+$(BASEOBJECTS:.obj =.obj -+) -+$(PERIPH_LIBS:.lib =.lib -+)
!
+!else
+
+$(LIBTARGET): $(DUMMY).obj $(OBJECTS) $(BASEOBJECTS)
+ erase $(LIBTARGET)
+ erase $(WXLIBDIR)\wx.dll
+ tlink32 $(LINK_FLAGS) /v @&&!
+c0d32.obj $(OBJECTS)
+$(WXLIBDIR)\wx
+nul
+$(PERIPH_LIBS) $(LIBS)
+wxb32
+!
+ implib -c $(LIBTARGET) $(WXLIBDIR)\wx.dll
+
+!endif
+
dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
dummydll.obj: dummydll.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
$(MSWDIR)\dynarray.obj: $(COMMDIR)\dynarray.$(SRCSUFF)
+$(MSWDIR)\dynlib.obj: $(COMMDIR)\dynlib.$(SRCSUFF)
+
$(MSWDIR)\event.obj: $(COMMDIR)\event.$(SRCSUFF)
$(MSWDIR)\file.obj: $(COMMDIR)\file.$(SRCSUFF)
$(MSWDIR)\datstrm.obj: $(COMMDIR)\datstrm.$(SRCSUFF)
+$(MSWDIR)\sckstrm.obj: $(COMMDIR)\sckstrm.$(SRCSUFF)
+
$(MSWDIR)\mstream.obj: $(COMMDIR)\mstream.$(SRCSUFF)
$(MSWDIR)\zstream.obj: $(COMMDIR)\zstream.$(SRCSUFF)
$(MSWDIR)\stream.obj: $(COMMDIR)\stream.$(SRCSUFF)
+$(MSWDIR)\objstrm.obj: $(COMMDIR)\objstrm.$(SRCSUFF)
+
$(MSWDIR)\wincmn.obj: $(COMMDIR)\wincmn.$(SRCSUFF)
$(MSWDIR)\extended.obj: $(COMMDIR)\extended.c
+$(MSWDIR)\tokenzr.obj: $(COMMDIR)\tokenzr.$(SRCSUFF)
+
+$(MSWDIR)\socket.obj: $(COMMDIR)\socket.$(SRCSUFF)
+
+$(MSWDIR)\sckaddr.obj: $(COMMDIR)\sckaddr.$(SRCSUFF)
+
+$(MSWDIR)\protocol.obj: $(COMMDIR)\protocol.$(SRCSUFF)
+
+$(MSWDIR)\url.obj: $(COMMDIR)\url.$(SRCSUFF)
+
+$(MSWDIR)\http.obj: $(COMMDIR)\http.$(SRCSUFF)
+
+$(MSWDIR)\ftp.obj: $(COMMDIR)\ftp.$(SRCSUFF)
+
+$(MSWDIR)\sckfile.obj: $(COMMDIR)\sckfile.$(SRCSUFF)
+
+$(MSWDIR)\sckipc.obj: $(COMMDIR)\sckipc.$(SRCSUFF)
+
########################################################
# Generic objects (not always compiled, depending on
# whether platforms have native implementations)
make -f makefile.b32 -DCFG=$(CFG) -DFINAL=$(FINAL) -DWXWIN=$(WXDIR) -DDEBUG=$(DEBUG)
cd $(WXDIR)\src\msw
+zlib: $(CFG)
+ cd $(WXDIR)\src\zlib
+ make -f makefile.b32 lib
+ cd $(WXDIR)\src\msw
+
+clean_zlib:
+ cd $(WXDIR)\src\zlib
+ make -f makefile.b32 clean
+ cd $(WXDIR)\src\msw
+
$(CFG): makefile.b32
copy &&!
-H=$(WXDIR)\src\msw\wx32.csm
#include <wx/setup.h>
-#if USE_DRAG_AND_DROP
#include <wx/log.h>
return FALSE;
}
+#if USE_DRAG_AND_DROP
+
// ----------------------------------------------------------------------------
// Debug support
// ----------------------------------------------------------------------------
return(instanceID);
#endif
}
+
+long wxExecute(char **argv, bool sync, wxProcess *handler)
+{
+ wxString command = "";
+
+ while (*argv != NULL) {
+ command += *argv;
+ command += ' ';
+ argv++;
+ }
+ command.RemoveLast();
+ return wxExecute(command, sync, handler);
+}
--- /dev/null
+LIBRARY WX
+
+DESCRIPTION 'wxWindows DLL'
+
+CODE EXECUTEREAD MOVEABLE LOADONCALL
+DATA READWRITE
+
+
+