Makefile.b32: Borland makefile adjustments. Tested with BCC 5.5.1
This commit is contained in:
parent
6bcacff1a5
commit
2e5b3168d6
@ -52,7 +52,7 @@ LDFLAGS = -q -lq -laa -tWD
|
||||
SRCDIR = .
|
||||
OBJDIR = .\BCC_objs
|
||||
INCDIRS = -I.;..\include
|
||||
LINKLIB = $(BCCDIR)\lib\cw32mt.lib
|
||||
LINKLIB = $(BCCDIR)\lib\cw32mt.lib $(BCCDIR)\lib\ws2_32.lib
|
||||
DEFINES = -DNDEBUG -DWIN32 -DBUILDING_LIBCURL
|
||||
|
||||
# By default SSPI support is enabled for BCC
|
||||
@ -88,8 +88,24 @@ LINKLIB = $(LINKLIB) $(OPENSSL_PATH)\out32\ssleay32.lib $(OPENSSL_PATH)\out32\l
|
||||
# Makefile.inc provides the CSOURCES and HHEADERS defines
|
||||
!include Makefile.inc
|
||||
|
||||
OBJECTS = $(CSOURCES:.c=.obj)
|
||||
PREPROCESSED = $(CSOURCES:.c=.int)
|
||||
# Borland's command line librarian program TLIB version 4.5 is not capable
|
||||
# of building a library when any of its objects contains an hypen in its
|
||||
# name, due to a command line parsing bug. In order to workaround this, we
|
||||
# build source files with hyphens in their name as objects with underscores
|
||||
# using explicit compilation build rules instead of implicit ones.
|
||||
|
||||
NOHYPHEN = $(CSOURCES:-=_)
|
||||
|
||||
OBJECTS = $(NOHYPHEN:.c=.obj)
|
||||
PREPROCESSED = $(NOHYPHEN:.c=.int)
|
||||
|
||||
# Borland's command line compiler (BCC32) version 5.5.1 integrated
|
||||
# preprocessor has a bug which results in silently generating wrong
|
||||
# definitions for libcurl macros such as CURL_OFF_T_C, on the other
|
||||
# hand Borland's command line preprocessor (CPP32) version 5.5.1 does
|
||||
# not have the bug and achieves proper results. In order to avoid the
|
||||
# silent bug we first preprocess source files and later compile the
|
||||
# preprocessed result.
|
||||
|
||||
.c.obj:
|
||||
@-$(RM) $(@R).int
|
||||
@ -98,6 +114,21 @@ PREPROCESSED = $(CSOURCES:.c=.int)
|
||||
|
||||
all: $(OBJDIR) $(LIBCURL_LIB) $(LIBCURL_DLL)
|
||||
|
||||
asyn_ares.obj: asyn-ares.c
|
||||
@-$(RM) $(@R).int
|
||||
$(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(?)
|
||||
$(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
|
||||
|
||||
asyn_thread.obj: asyn-thread.c
|
||||
@-$(RM) $(@R).int
|
||||
$(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(?)
|
||||
$(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
|
||||
|
||||
non_ascii.obj: non-ascii.c
|
||||
@-$(RM) $(@R).int
|
||||
$(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(?)
|
||||
$(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
|
||||
|
||||
clean:
|
||||
cd $(OBJDIR)
|
||||
@-$(RM) $(OBJECTS)
|
||||
@ -122,7 +153,10 @@ $(LIBCURL_LIB): $(OBJECTS)
|
||||
$(LIBCURL_DLL) $(LIBCURL_IMPLIB): $(OBJECTS) $(LINKLIB)
|
||||
@-$(RM) $(LIBCURL_DLL)
|
||||
@-$(RM) $(LIBCURL_IMPLIB)
|
||||
$(LD) $(LDFLAGS) -e$(LIBCURL_DLL) $**
|
||||
$(LD) $(LDFLAGS) -e$(LIBCURL_DLL) @&&!
|
||||
$(**: = ^
|
||||
)
|
||||
!
|
||||
$(IMPLIB) $(LIBCURL_IMPLIB) $(LIBCURL_DLL)
|
||||
|
||||
|
||||
|
@ -34,11 +34,12 @@ OPENSSL_PATH = ..\..\openssl-0.9.8y
|
||||
PROGNAME = curl.exe
|
||||
|
||||
# Setup environment
|
||||
PP_CMD = cpp32 -q -P-
|
||||
CC_CMD = bcc32 -q -c
|
||||
LD = bcc32
|
||||
RM = del 2>NUL
|
||||
MKDIR = md
|
||||
RMDIR = rd /q 2>nul
|
||||
RMDIR = rd /q 2>NUL
|
||||
COPY = $(COMSPEC) /c copy /y
|
||||
|
||||
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
|
||||
@ -47,7 +48,7 @@ LDFLAGS = -q -lq -lap
|
||||
SRCDIRS = .;..\lib
|
||||
OBJDIR = .\BCC_objs
|
||||
INCDIRS = -I.;..\include;..\lib
|
||||
LINKLIB = $(BCCDIR)\lib\cw32mt.lib
|
||||
LINKLIB = $(BCCDIR)\lib\cw32mt.lib $(BCCDIR)\lib\ws2_32.lib
|
||||
DEFINES = -DNDEBUG -DWIN32
|
||||
|
||||
!ifdef DYNAMIC
|
||||
@ -75,21 +76,34 @@ LINKLIB = $(LINKLIB) $(OPENSSL_PATH)\out32\ssleay32.lib $(OPENSSL_PATH)\out32\l
|
||||
|
||||
.path.c = $(SRCDIRS)
|
||||
.path.obj = $(OBJDIR)
|
||||
.path.int = $(OBJDIR)
|
||||
|
||||
# Makefile.inc provides the CSOURCES and HHEADERS defines
|
||||
!include Makefile.inc
|
||||
|
||||
CSOURCES = $(CURL_CFILES) $(CURLX_ONES:../lib/=)
|
||||
OBJECTS = $(CSOURCES:.c=.obj)
|
||||
PREPROCESSED = $(CSOURCES:.c=.int)
|
||||
|
||||
# Borland's command line compiler (BCC32) version 5.5.1 integrated
|
||||
# preprocessor has a bug which results in silently generating wrong
|
||||
# definitions for libcurl macros such as CURL_OFF_T_C, on the other
|
||||
# hand Borland's command line preprocessor (CPP32) version 5.5.1 does
|
||||
# not have the bug and achieves proper results. In order to avoid the
|
||||
# silent bug we first preprocess source files and later compile the
|
||||
# preprocessed result.
|
||||
|
||||
.c.obj:
|
||||
$(CC_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$@ $<
|
||||
@-$(RM) $(@R).int
|
||||
$(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(<)
|
||||
$(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
|
||||
|
||||
all: $(OBJDIR) tool_hugehelp $(PROGNAME)
|
||||
|
||||
clean:
|
||||
cd $(OBJDIR)
|
||||
@-$(RM) $(OBJECTS)
|
||||
@-$(RM) $(PREPROCESSED)
|
||||
cd ..
|
||||
@-$(RMDIR) $(OBJDIR)
|
||||
@-$(RM) $(PROGNAME)
|
||||
@ -106,12 +120,15 @@ tool_hugehelp: ..\docs\MANUAL ..\docs\curl.1 mkhelp.pl
|
||||
@-$(RM) tool_hugehelp.tmp
|
||||
!else
|
||||
tool_hugehelp:
|
||||
$(COPY) tool_hugehelp.c.cvs tool_hugehelp.c
|
||||
if exist ..\GIT-INFO $(COPY) tool_hugehelp.c.cvs tool_hugehelp.c
|
||||
!endif
|
||||
|
||||
$(PROGNAME): $(OBJECTS) $(LIBCURL_LIB) $(LINKLIB)
|
||||
@-$(RM) $(PROGNAME)
|
||||
$(LD) $(LDFLAGS) -e$@ $**
|
||||
$(LD) $(LDFLAGS) -e$@ @&&!
|
||||
$(**: = ^
|
||||
)
|
||||
!
|
||||
|
||||
|
||||
# End of Makefile.b32
|
||||
|
Loading…
x
Reference in New Issue
Block a user