Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

build: use external preprocessor cpp32 when building with Borland C

  • Loading branch information...
commit 42f5e8a0f1729b17547acfc6625e58e583811e8d 1 parent c5d9cd5
@yangtse yangtse authored
View
73 lib/Makefile.b32
@@ -4,22 +4,25 @@
#
# 'lib' directory
#
+# 'BCCDIR' has to be set up to point to the base directory
+# of the compiler, i.e. SET BCCDIR = c:\Borland\BCC55
+#
# Written by Jaepil Kim, pit@paradise.net.nz
############################################################
-# Check if BCCDIR is set and guess if not set.
-!ifndef BCCDIR
-BCCDIR = $(MAKEDIR)/..
+# Check if BCCDIR is set.
+!if !$d(BCCDIR)
+!error BCCDIR not defined
!endif
# Edit the path below to point to the base of your Zlib sources.
!ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.5
+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
+OPENSSL_PATH = ..\..\openssl-0.9.8q
!endif
# Set libcurl static lib, dll and import lib
@@ -28,69 +31,83 @@ LIBCURL_DLL = libcurl.dll
LIBCURL_IMPLIB = libcurl_imp.lib
# Setup environment
-CXX = bcc32
+PP_CMD = cpp32 -q -P-
+CC_CMD = bcc32 -q -c
LD = bcc32
-CP = copy 2>NUL
-RM = del /q /f 2>NUL
+RM = del
+MKDIR = mkdir
+RMDIR = rmdir /s /q
LIB = tlib
IMPLIB = implib
-CXXFLAGS = -q -5 -O2 -w-aus -w-ccc -w-csu -w-par -w-pia -w-rch -w-inl -w-ngu -w-pro -tWM
+CC_FLAGS = -5 -O2 -tWM -w -w-aus -w-ccc -w-dup -w-prc -w-pro -w-rch -w-sig -w-spa -Dinline=__inline
LIBFLAGS = /C /P32
LDFLAGS = -q -lq -laa -tWD
-INCDIRS = -I.;../include
-LINKLIB = $(BCCDIR)/lib/cw32mt.lib
-
-DEFINES = -DNDEBUG -DWIN32 -D_CONSOLE -D_MBCS -DBUILDING_LIBCURL
+SRCDIR = .
+OBJDIR = .\objs
+INCDIRS = -I.;..\include
+LINKLIB = $(BCCDIR)\lib\cw32mt.lib
+DEFINES = -DNDEBUG -DWIN32 -DBUILDING_LIBCURL
-# By default we disable LDAP support here since BCC headers are insufficient.
+# By default LDAP support is disabled for BCC
!ifndef WITH_LDAP
DEFINES = $(DEFINES) -DCURL_DISABLE_LDAP
!endif
-# If you build with ZLIB support, set WITH_ZLIB=1
+# 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
+LINKLIB = $(LINKLIB) $(ZLIB_PATH)\zlib.lib
!endif
-# If you build with SSL support, set WITH_SSL=1
+# 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
+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)
+
# Makefile.inc provides the CSOURCES and HHEADERS defines
!include Makefile.inc
OBJECTS = $(CSOURCES:.c=.obj)
.c.obj:
- $(CXX) -c $(INCDIRS) $(CXXFLAGS) $(DEFINES) $<
+ @-$(RM) $(@R).int >NUL 2>&1
+ $(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(<)
+ $(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
-all: $(LIBCURL_LIB) $(LIBCURL_DLL)
+all: $(OBJDIR) $(LIBCURL_LIB) $(LIBCURL_DLL)
clean:
- -$(RM) $(LIBCURL_LIB)
- -$(RM) $(LIBCURL_IMPLIB)
- -$(RM) libcurl.tds
- -$(RM) *.obj
+ @-$(RMDIR) $(OBJDIR) >NUL 2>&1
+ @-$(RM) $(LIBCURL_LIB) >NUL 2>&1
+ @-$(RM) $(LIBCURL_IMPLIB) >NUL 2>&1
+ @-$(RM) libcurl.tds >NUL 2>&1
+
+$(OBJDIR):
+ @-$(RMDIR) $(OBJDIR) >NUL 2>&1
+ @-$(MKDIR) $(OBJDIR)
$(LIBCURL_LIB): $(OBJECTS)
- @-$(RM) $@
+ @-$(RM) $(LIBCURL_LIB) >NUL 2>&1
$(LIB) $(LIBFLAGS) $@ @&&!
+$(**: = &^
+)
!
$(LIBCURL_DLL) $(LIBCURL_IMPLIB): $(OBJECTS) $(LINKLIB)
- @-$(RM) $(LIBCURL_DLL)
- @-$(RM) $(LIBCURL_IMPLIB)
+ @-$(RM) $(LIBCURL_DLL) >NUL 2>&1
+ @-$(RM) $(LIBCURL_IMPLIB) >NUL 2>&1
$(LD) $(LDFLAGS) -e$(LIBCURL_DLL) $**
$(IMPLIB) $(LIBCURL_IMPLIB) $(LIBCURL_DLL)
+
+# End of Makefile.b32
View
2  lib/config-win32.h
@@ -357,7 +357,7 @@
/* ---------------------------------------------------------------- */
/* Define this if you have struct sockaddr_storage */
-#if !(defined(__SALFORDC__) || defined(__BORLANDC__))
+#if !defined(__SALFORDC__) && !defined(__BORLANDC__)
#define HAVE_STRUCT_SOCKADDR_STORAGE 1
#endif
View
75 src/Makefile.b32
@@ -4,88 +4,99 @@
#
# 'src' directory
#
+# 'BCCDIR' has to be set up to point to the base directory
+# of the compiler, i.e. SET BCCDIR = c:\Borland\BCC55
+#
# Written by Jaepil Kim, pit@paradise.net.nz
############################################################
-# Check if BCCDIR is set and guess if not set.
-!ifndef BCCDIR
-BCCDIR = $(MAKEDIR)/..
+# Check if BCCDIR is set.
+!if !$d(BCCDIR)
+!error BCCDIR not defined
!endif
# Edit the path below to point to the base of your Zlib sources.
!ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.5
+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
+OPENSSL_PATH = ..\..\openssl-0.9.8q
!endif
# Set program's name
PROGNAME = curl.exe
# Setup environment
-CXX = bcc32
+PP_CMD = cpp32 -q -P-
+CC_CMD = bcc32 -q -c
LD = bcc32
-CP = copy 2>NUL
-RM = del /q /f 2>NUL
-LIB = tlib
+RM = del
+MKDIR = mkdir
+RMDIR = rmdir /s /q
-CXXFLAGS = -q -5 -O2 -w-aus -w-ccc -w-csu -w-par -w-pia -w-rch -w-inl -w-ngu -w-pro -tWM
+CC_FLAGS = -5 -O2 -tWM -w -w-aus -w-ccc -w-dup -w-prc -w-pro -w-rch -w-sig -w-spa -Dinline=__inline
LDFLAGS = -q -lq -lap
-INCDIRS = -I.;../include;../lib
-LINKLIB = $(BCCDIR)/lib/cw32mt.lib
-
+SRCDIRS = .;..\lib
+OBJDIR = .\objs
+INCDIRS = -I.;..\include;..\lib
+LINKLIB = $(BCCDIR)\lib\cw32mt.lib
DEFINES = -DNDEBUG -DWIN32
!ifdef DYNAMIC
-LIBCURL_LIB = ../lib/libcurl_imp.lib
+LIBCURL_LIB = ..\lib\libcurl_imp.lib
!else
-LIBCURL_LIB = ../lib/libcurl.lib
+LIBCURL_LIB = ..\lib\libcurl.lib
DEFINES = $(DEFINES) -DCURL_STATICLIB
!endif
-# If you build with ZLIB support, set WITH_ZLIB=1
+# 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
+LINKLIB = $(LINKLIB) $(ZLIB_PATH)\zlib.lib
!endif
-# If you build with SSL support, set WITH_SSL=1
+# 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
+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 = $(SRCDIRS)
+.path.obj = $(OBJDIR)
+
# Makefile.inc provides the CSOURCES and HHEADERS defines
-top_srcdir = ..
+!undef top_srcdir
!include Makefile.inc
-CSOURCES = $(CURL_CFILES) $(CURLX_ONES)
+CSOURCES = $(CURL_CFILES) $(CURLX_ONES:/lib/=)
OBJECTS = $(CSOURCES:.c=.obj)
.c.obj:
- $(CXX) -c $(INCDIRS) $(CXXFLAGS) $(DEFINES) $<
+ @-$(RM) $(@R).int >NUL 2>&1
+ $(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(<)
+ $(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
-all: $(PROGNAME)
+all: $(OBJDIR) $(PROGNAME)
clean:
- -$(RM) $(PROGNAME)
- -$(RM) *.obj
- -$(RM) hugehelp.c
+ @-$(RMDIR) $(OBJDIR) >NUL 2>&1
+ @-$(RM) $(PROGNAME) >NUL 2>&1
+ @-$(RM) curl.tds >NUL 2>&1
+
+$(OBJDIR):
+ @-$(RMDIR) $(OBJDIR) >NUL 2>&1
+ @-$(MKDIR) $(OBJDIR)
$(PROGNAME): $(OBJECTS) $(LIBCURL_LIB) $(LINKLIB)
- @-$(RM) $@
+ @-$(RM) $(PROGNAME) >NUL 2>&1
$(LD) $(LDFLAGS) -e$@ $**
-hugehelp.c: hugehelp.c.cvs
- @echo Creating $@
- @$(CP) $** $@
-
+# End of Makefile.b32
View
2  src/config-win32.h
@@ -228,7 +228,7 @@
/* ---------------------------------------------------------------- */
/* Define this if you have struct sockaddr_storage */
-#if !(defined(__SALFORDC__) || defined(__BORLANDC__))
+#if !defined(__SALFORDC__) && !defined(__BORLANDC__)
#define HAVE_STRUCT_SOCKADDR_STORAGE 1
#endif

0 comments on commit 42f5e8a

Please sign in to comment.
Something went wrong with that request. Please try again.