# Common settings for Borland 32-bit compilation (makefile.b32 files)
!if "$(RM)" == ""
-RM= erase
+RM= del
!endif
+BORLAND_SUFFIX=bc
+DEBUG_SUFFIX=
+
+MAKEFLAGS=FINAL=$(FINAL) WXUSINGDLL=$(WXUSINGDLL) OUTPUTDIR=$(OUTPUTDIR) EXEDIR=$(EXEDIR)
+
WXDIR = $(WXWIN)
-CFG = $(WXDIR)\src\msw\wxw32
+CFG = wxw32
+
+!ifndef OUTPUTDIR
+OBJ_PATH=$(WXDIR)\BORL
+OUTPUTDIR=$(WXDIR)\BORL
+!else
+OBJ_PATH=$(OUTPUTDIR)
+!endif
+!ifndef BCCDIR
BCCDIR=$(MAKEDIR)\..
+!endif
!if "$(BCCDIR)" == "\.."
!error Your Borland compiler does not define MAKEDIR. Pleasedefine the BCCDIR variable in makeb32.env line 10, e.g. BCCDIR=d:\bc4
!endif
-ARCHINCDIR=$(WXDIR)\lib\msw
+ARCHINCDIR=$(WXDIR)\lib\$(BORLAND_SUFFIX)
ARCHSETUPH=$(ARCHINCDIR)\wx\setup.h
#see below for SETUPSRCDIR
-
-# Using a config file isn't compatible across all BC++ versions
-# LNKCFG=$(WXDIR)\src\msw\bclnk32.cfg
+!ifndef WXLIBDIR
WXLIBDIR = $(WXDIR)\lib
-WXLIBDIR2 = $(WXDIR)\contrib\lib
+!endif
+
WXINC = $(WXDIR)\include;$(WXDIR)\contrib\include;$(WXDIR)\src\iodbc;$(WXDIR)\src\regex;
WIN95FLAG = -D__WIN95__ -D__WINDOWS__
RFLAGS = -i$(WXDIR)\include;$(WXDIR)\src
!ifndef DLL
DLL=0
+!else
+DLL=1
+WXMAKINGDLL=1
!endif
# Target WXMAKINGDLL WXUSINGDLL WXBUILDDLL
# options and all the obj files, and note that you must delete the obj files if you
# change the options so that they are compiled using the correct ones.
-!if "$(WXMAKINGDLL)" == "1" || "$(WXUSINGDLL)" == "1"
-WXLIBNAME=wx32
-!else
-WXLIBNAME=wx32
-!endif
+WXLIBNAME=wx25
+
## Use this if you want to use the UNIV controls set rather than the native ones
## make -f makefile.b32 WXUSINGUNIV=1
!if "$(WXUSINGUNIV)" == "1"
USE_UNIV="UNIV"
-CFG=$(CFG)v
-WXLIBNAME=$(WXLIBNAME)v
+BORLAND_SUFFIX=$(BORLAND_SUFFIX)v
ARCHINCDIR=$(ARCHINCDIR)v
SETUPSRCDIR=$(WXDIR)\include\wx\univ
PORT=__WXUNIVERSAL__
SETUPSRCDIR=$(WXDIR)\include\wx\msw
!endif
-#not sure what to do with unicode builds - we need to define something ?
-#!if "$(UNICODE)" == "1"
-#WXLIBNAME=$(WXLIBNAME)u
-#!endif
-
+#unicode builds handled inside setup.h
#a hybrid , does not set __WXDEBUG__ but sets -v (see above)
!if "$(FINAL)" == "hybrid"
-WXLIBNAME=$(WXLIBNAME)h
-CFG=$(CFG)h
+DEBUG_SUFFIX=$(DEBUG_SUFFIX)h
!endif
!if "$(FINAL)" == "0"
-WXLIBNAME=$(WXLIBNAME)d
-CFG=$(CFG)d
+DEBUG_SUFFIX=$(DEBUG_SUFFIX)d
!endif
!if "$(wxUSE_GUI)" == "0"
-WXLIBNAME=$(WXLIBNAME)b
-CFG=$(CFG)b
+BORLAND_SUFFIX=$(BORLAND_SUFFIX)b
CPPFLAGS=-DwxUSE_GUI=0
!endif
!if "$(WXMAKINGDLL)" != "1" && "$(WXUSINGDLL)" != "1"
-WXLIBNAME=$(WXLIBNAME)s
+BORLAND_SUFFIX=$(BORLAND_SUFFIX)s
!endif
!if "$(WXMAKINGDLL)" == "1" || "$(WXUSINGDLL)" == "1"
INCEXT=dll$(INCEXT)
!endif
-!ifndef WXLIBDIR
-WXLIBDIR=$(WXDIR)\lib
-!endif
-
-WXLIB=$(WXLIBDIR)\$(WXLIBNAME).lib
-WXDLL=$(WXLIBDIR)\$(WXLIBNAME).dll
+# final names determined here
+WXLIB=$(WXLIBDIR)\$(WXLIBNAME)_$(BORLAND_SUFFIX)$(DEBUG_SUFFIX).lib
+WXDLL=$(WXLIBDIR)\$(WXLIBNAME)_$(BORLAND_SUFFIX)$(DEBUG_SUFFIX).dll
+LIBTARGET=$(WXLIBDIR)\$(LIBTARGET)_bc$(DEBUG_SUFFIX).lib
+OBJ_PATH=$(OBJ_PATH)_$(BORLAND_SUFFIX)$(DEBUG_SUFFIX)
!if "$(WXMAKINGDLL)" == "1"
DLL_FLAGS= -DWXMAKINGDLL=1 -D_RTLDLL
LINK_FLAGS= /Tpd /c $(EXTRALINKFLAGS)
!endif
-CFG=$(CFG).cfg
+CFG=$(OBJ_PATH)\$(CFG).cfg
CPPFLAGS=$(CPPFLAGS) $(DLL_FLAGS) @$(CFG) $(EXTRACPPFLAGS)
DUMMY=dummy
WAITFLAG = /w
.$(SRCSUFF).obj:
- bcc32 $(CPPFLAGS) -c {$< }
+ bcc32 $(CPPFLAGS) -c -n$(OBJ_PATH) {$< }
.c.obj:
- bcc32 $(CPPFLAGS) -P- -c {$< }
+ bcc32 $(CPPFLAGS) -P- -c -n$(OBJ_PATH) {$< }