WXDIR = $(WXWIN)
CFG = $(WXDIR)\src\msw\wxwin32.cfg
+# Using a config file isn't compatible across all BC++ versions
+# LNKCFG=$(WXDIR)\src\msw\bclnk32.cfg
WXLIBDIR = $(WXDIR)\lib
-WXINC = $(WXDIR)\include
-WIN95FLAG = -D__WIN95__
+WXLIBDIR2 = $(WXDIR)\contrib\lib
+WXINC = $(WXDIR)\include;$(WXDIR)\contrib\include;$(WXDIR)\src\iodbc;
+WIN95FLAG = -D__WIN95__ -D__WINDOWS__
+
+# This should be changed to tlink32 if ilink32 is not available.
+# Ilink32 is available on BC++ 5.02 and above, and all
+# versions of C++ Builder.
+!ifndef LINK
+LINK=ilink32
+#LINK=tlink32
+!endif
!ifndef FINAL
FINAL=0
!if "$(FINAL)" == "0"
OPT = -Od
-DEBUG_FLAGS= -v -DDEBUG=1 -D__DEBUG__ -DUSE_DEFINE
+DEBUG_FLAGS= -v -DWXDEBUG=1 -D__WXDEBUG__ -DUSE_DEFINE
!else
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_RTLDLL
+WXLIB= $(WXLIBDIR)\wx231.lib
+
+!else
+
+LINK_FLAGS= /aa /c
+
+!if "$(WXUSINGDLL)" == "1"
+DLL_FLAGS= -DWXUSINGDLL=1 -D_RTLDLL
+WXLIB= $(WXLIBDIR)\wx231.lib
+!else
+DLL_FLAGS=
+WXLIB= $(WXLIBDIR)\wx32.lib
+!endif
+
+!endif
+
+!if "$(WXBUILDDLL)" == "1"
+LINK_FLAGS= /Tpd /c $(EXTRALINKFLAGS)
+!endif
+
+CPPFLAGS=$(DLL_FLAGS) $(EXTRACPPFLAGS) @$(CFG)
+
DUMMY=dummy
SRCSUFF = cpp
OBJSUFF = obj
+WAITFLAG = /w
+
.$(SRCSUFF).obj:
bcc32 $(CPPFLAGS) -c {$< }