mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
155 lines
4.5 KiB
Makefile
155 lines
4.5 KiB
Makefile
#***************************************************************************
|
|
# _ _ ____ _
|
|
# Project ___| | | | _ \| |
|
|
# / __| | | | |_) | |
|
|
# | (__| |_| | _ <| |___
|
|
# \___|\___/|_| \_\_____|
|
|
#
|
|
# Copyright (C) 2000, Jaepil Kim, <pit@paradise.net.nz>.
|
|
# Copyright (C) 2001 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
#
|
|
# This software is licensed as described in the file COPYING, which
|
|
# you should have received as part of this distribution. The terms
|
|
# are also available at https://curl.haxx.se/docs/copyright.html.
|
|
#
|
|
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
|
# copies of the Software, and permit persons to whom the Software is
|
|
# furnished to do so, under the terms of the COPYING file.
|
|
#
|
|
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
# KIND, either express or implied.
|
|
#
|
|
#***************************************************************************
|
|
|
|
############################################################
|
|
#
|
|
# Makefile.b32 - Borland's C++ Compiler 5.X
|
|
#
|
|
# 'BCCDIR' has to be set up to point to the base directory
|
|
# of the compiler, i.e. SET BCCDIR = c:\Borland\BCC55
|
|
#
|
|
############################################################
|
|
|
|
!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.8
|
|
!endif
|
|
|
|
# Edit the path below to point to the base of your OpenSSL package.
|
|
!ifndef OPENSSL_PATH
|
|
OPENSSL_PATH = ..\..\openssl-1.0.2a
|
|
!endif
|
|
|
|
# Set program's name
|
|
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
|
|
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
|
|
LDFLAGS = -q -lq -lap
|
|
|
|
SRCDIRS = .;..\lib
|
|
OBJDIR = .\BCC_objs
|
|
INCDIRS = -I.;..\include;..\lib
|
|
LINKLIB = $(BCCDIR)\lib\cw32mt.lib $(BCCDIR)\lib\ws2_32.lib
|
|
DEFINES = -DNDEBUG -DWIN32
|
|
|
|
!ifdef DYNAMIC
|
|
LIBCURL_LIB = ..\lib\libcurl_imp.lib
|
|
!else
|
|
LIBCURL_LIB = ..\lib\libcurl.lib
|
|
DEFINES = $(DEFINES) -DCURL_STATICLIB
|
|
!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_OPENSSL
|
|
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)
|
|
.path.int = $(OBJDIR)
|
|
|
|
# Makefile.inc provides the CSOURCES and HHEADERS defines
|
|
!include Makefile.inc
|
|
|
|
CSOURCES = $(CURL_CFILES) $(CURLX_CFILES:../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:
|
|
@-$(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)
|
|
@-$(RM) curl.tds
|
|
|
|
$(OBJDIR):
|
|
@-$(RMDIR) $(OBJDIR)
|
|
@-$(MKDIR) $(OBJDIR)
|
|
|
|
!ifdef WITH_ZLIB
|
|
tool_hugehelp: ..\docs\MANUAL ..\docs\curl.1 mkhelp.pl
|
|
groff -Tascii -man -P -c ../docs/curl.1 > tool_hugehelp.tmp
|
|
perl -w mkhelp.pl -c ../docs/MANUAL < tool_hugehelp.tmp > tool_hugehelp.c
|
|
@-$(RM) tool_hugehelp.tmp
|
|
!else
|
|
tool_hugehelp:
|
|
if exist ..\GIT-INFO $(COPY) tool_hugehelp.c.cvs tool_hugehelp.c
|
|
!endif
|
|
|
|
$(PROGNAME): $(OBJECTS) $(LIBCURL_LIB) $(LINKLIB)
|
|
@-$(RM) $(PROGNAME)
|
|
$(LD) $(LDFLAGS) -e$@ @&&!
|
|
$(**: = ^
|
|
)
|
|
!
|
|
|
|
|
|
# End of Makefile.b32
|