############################################################
# $Id$
#
#  Makefile.b32 - Borland's C++ Compiler 5.X
#
#  'lib' directory
#
#  Requires 'Makefile.b32.resp'
#
#  Written by Jaepil Kim, pit@paradise.net.nz
############################################################

# Setup environment
CXX	   = bcc32
RM	   = del
LIB	   = tlib
TOPDIR	   = ..
CURNTDIR   = .
CXXFLAGS   = -5 -O2 -w-aus -w-ccc -w-csu -w-par -w-pia -w-rch -w-inl -w-ngu -w-pro -tWM
DEFINES    = -DLIBCURL_BIGENDIAN=0 -DNDEBUG -DWIN32 -DCONSOLE -DMBCS
INCDIRS    = -I$(CURNTDIR);$(TOPDIR)/include/

# 'BCCDIR' has to be set up in your c:\autoexec.bat
# i.e. SET BCCDIR = c:\Borland\BCC55
# where c:\Borland\BCC55 is the compiler is installed
LINKLIB	   = $(BCCDIR)/lib/psdk/wsock32.lib
LIBCURLLIB = libcurl.lib

.SUFFIXES: .c

SOURCES	   = \
	base64.c \
	cookie.c \
	transfer.c \
	escape.c \
	formdata.c \
	ftp.c \
	http.c \
        http_chunks.c \
	ldap.c \
	dict.c \
	telnet.c \
	getdate.c \
	getenv.c \
	getpass.c \
	hostip.c \
	if2ip.c \
	mprintf.c \
	netrc.c \
	progress.c \
	sendf.c \
	speedcheck.c \
	ssluse.c \
	timeval.c \
	url.c \
	file.c \
	getinfo.c \
	version.c \
	easy.c \
	strequal.c \
	strtok.c

OBJECTS = $(SOURCES:.c=.obj)

.c.obj:
	$(CXX) -c $(INCDIRS) $(CXXFLAGS) $(DEFINES) $<

all:	$(LIBCURLLIB)

clean:
	-$(RM) $(LIBCURLLIB)
        -$(RM) *.obj

$(LIBCURLLIB):  $(LINKLIB) $(OBJECTS) Makefile.b32.resp
	-$(RM) $(LIBCURLLIB)
	$(LIB) $(LIBCURLLIB) @Makefile.b32.resp


