#
# $VER: LibcURL Makefile for AmigaOS ...
#

# change the follow to where you have the AmiTCP SDK v4.3 includes:

ATCPSDKI=	/GG/netinclude


CC	=	gcc
CFLAGS	=	-I$(ATCPSDKI) -m68020-60 -noixemul -I. -I../include -W -Wall

OBJS = amigaos.c base64.c connect.c content_encoding.c cookie.c dict.c easy.c \
	escape.c file.c formdata.c ftp.c getenv.c getinfo.c hash.c hostip.c   \
	hostip4.c hostsyn.c http.c http_chunks.c http_digest.c		      \
	http_negotiate.c http_ntlm.c if2ip.c inet_ntop.c inet_pton.c krb4.c   \
	ldap.c llist.c md5.c memdebug.c mprintf.c multi.c netrc.c parsedate.c \
	progress.c security.c select.c sendf.c share.c speedcheck.c ssluse.c  \
	strequal.c strtok.c telnet.c timeval.c transfer.c url.c version.c \
	sslgen.c gtls.c

all:	$(OBJS:.c=.o)
	ar cru libcurl.a $(OBJS:.c=.o)
	ranlib libcurl.a

install:
	$(INSTALL) -c ./libcurl.a /lib/libcurl.a
