89fa3b3efb
* Rename the object object directory from 'objs' to 'BCC_obj'. I feel it should be named properly. Ref. Makefile.Watcom where it's called 'WC_Win32.obj'. * Turn off these warnings to keep the build totally silent (with CBuilder-6 that is). -w-inl 8026 Functions X are not expanded inline. -w-pia 8060 Possibly incorrect assignment -w-pin 8061 Initialization is only partially bracketed I'm sure the warnings could be fixed the "proper" way or with some added "#pragma" statements. But that just clutters the sources IMHO. * $(MKDIR) and $(RMDIR) have been replaced with the shell-commands 'md' and 'rd'. When having MingW/Msys programs 'mkdir.exe' and 'rmdir.exe' in $PATH, this confuses Borland's make and the result (the cleaning etc.) would not be as expected. * Added a ".path.int = $(OBJDIR)" to tell make where the $(PREPROCESSED) files are. Why we need the preprocess step in the fist place is beyond me (Yang?). But I'll leave that for now.
130 lines
3.1 KiB
Makefile
130 lines
3.1 KiB
Makefile
############################################################
|
|
#
|
|
# Makefile.b32 - Borland's C++ Compiler 5.X
|
|
#
|
|
# 'lib' directory
|
|
#
|
|
# 'BCCDIR' has to be set up to point to the base directory
|
|
# of the compiler, i.e. SET BCCDIR = c:\Borland\BCC55
|
|
#
|
|
# Initially written by Jaepil Kim, pit@paradise.net.nz
|
|
############################################################
|
|
|
|
!if "$(__MAKE__)" == ""
|
|
!error __MAKE__ not defined. Use Borlands's MAKE to process this makefile.
|
|
!endif
|
|
|
|
# Borland's $(MAKEDIR) expands to the path where make.exe is located,
|
|
# use this feature to define BCCDIR when user has not defined BCCDIR.
|
|
!ifndef BCCDIR
|
|
BCCDIR = $(MAKEDIR)\..
|
|
!endif
|
|
|
|
# Edit the path below to point to the base of your Zlib sources.
|
|
!ifndef ZLIB_PATH
|
|
ZLIB_PATH = ..\..\zlib-1.2.5
|
|
!endif
|
|
|
|
# Edit the path below to point to the base of your OpenSSL package.
|
|
!ifndef OPENSSL_PATH
|
|
OPENSSL_PATH = ..\..\openssl-0.9.8q
|
|
!endif
|
|
|
|
# Set libcurl static lib, dll and import lib
|
|
LIBCURL_LIB = libcurl.lib
|
|
LIBCURL_DLL = libcurl.dll
|
|
LIBCURL_IMPLIB = libcurl_imp.lib
|
|
|
|
# Setup environment
|
|
PP_CMD = cpp32 -q -P-
|
|
CC_CMD = bcc32 -q -c
|
|
LD = bcc32
|
|
RM = del 2>NUL
|
|
MKDIR = md
|
|
RMDIR = rd /q
|
|
LIB = tlib
|
|
IMPLIB = implib
|
|
|
|
CC_FLAGS = -5 -O2 -tWM -w -w-aus -w-ccc -w-dup -w-prc -w-pro -w-rch -w-sig -w-spa -w-inl -w-pia -w-pin -Dinline=__inline
|
|
LIBFLAGS = /C /P32
|
|
LDFLAGS = -q -lq -laa -tWD
|
|
|
|
SRCDIR = .
|
|
OBJDIR = .\BCC_objs
|
|
INCDIRS = -I.;..\include
|
|
LINKLIB = $(BCCDIR)\lib\cw32mt.lib
|
|
DEFINES = -DNDEBUG -DWIN32 -DBUILDING_LIBCURL
|
|
|
|
# By default SSPI support is enabled for BCC
|
|
!ifndef DISABLE_SSPI
|
|
DEFINES = $(DEFINES) -DUSE_WINDOWS_SSPI
|
|
!endif
|
|
|
|
# By default LDAP support is disabled for BCC
|
|
!ifndef WITH_LDAP
|
|
DEFINES = $(DEFINES) -DCURL_DISABLE_LDAP
|
|
!endif
|
|
|
|
# ZLIB support is enabled setting WITH_ZLIB=1
|
|
!ifdef WITH_ZLIB
|
|
DEFINES = $(DEFINES) -DHAVE_LIBZ -DHAVE_ZLIB_H
|
|
INCDIRS = $(INCDIRS);$(ZLIB_PATH)
|
|
LINKLIB = $(LINKLIB) $(ZLIB_PATH)\zlib.lib
|
|
!endif
|
|
|
|
# SSL support is enabled setting WITH_SSL=1
|
|
!ifdef WITH_SSL
|
|
DEFINES = $(DEFINES) -DUSE_SSLEAY
|
|
INCDIRS = $(INCDIRS);$(OPENSSL_PATH)\inc32;$(OPENSSL_PATH)\inc32\openssl
|
|
LINKLIB = $(LINKLIB) $(OPENSSL_PATH)\out32\ssleay32.lib $(OPENSSL_PATH)\out32\libeay32.lib
|
|
!endif
|
|
|
|
.autodepend
|
|
|
|
.path.c = $(SRCDIR)
|
|
.path.obj = $(OBJDIR)
|
|
.path.int = $(OBJDIR)
|
|
|
|
# Makefile.inc provides the CSOURCES and HHEADERS defines
|
|
!include Makefile.inc
|
|
|
|
OBJECTS = $(CSOURCES:.c=.obj)
|
|
PREPROCESSED = $(CSOURCES:.c=.int)
|
|
|
|
.c.obj:
|
|
@-$(RM) $(@R).int
|
|
$(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(<)
|
|
$(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
|
|
|
|
all: $(OBJDIR) $(LIBCURL_LIB) $(LIBCURL_DLL)
|
|
|
|
clean:
|
|
cd $(OBJDIR)
|
|
@-$(RM) $(OBJECTS)
|
|
@-$(RM) $(PREPROCESSED)
|
|
cd ..
|
|
@-$(RMDIR) $(OBJDIR)
|
|
@-$(RM) $(LIBCURL_LIB)
|
|
@-$(RM) $(LIBCURL_IMPLIB)
|
|
@-$(RM) libcurl.tds
|
|
|
|
$(OBJDIR):
|
|
@-$(RMDIR) $(OBJDIR)
|
|
@-$(MKDIR) $(OBJDIR)
|
|
|
|
$(LIBCURL_LIB): $(OBJECTS)
|
|
@-$(RM) $(LIBCURL_LIB)
|
|
$(LIB) $(LIBFLAGS) $@ @&&!
|
|
+$(**: = &^
|
|
+)
|
|
!
|
|
|
|
$(LIBCURL_DLL) $(LIBCURL_IMPLIB): $(OBJECTS) $(LINKLIB)
|
|
@-$(RM) $(LIBCURL_DLL)
|
|
@-$(RM) $(LIBCURL_IMPLIB)
|
|
$(LD) $(LDFLAGS) -e$(LIBCURL_DLL) $**
|
|
$(IMPLIB) $(LIBCURL_IMPLIB) $(LIBCURL_DLL)
|
|
|
|
|
|
# End of Makefile.b32
|