CROSS=
CC=$(CROSS)gcc
INCL= -I./libgurl
CFLGS= -Wall -g
CFLAGS= $(INCL) $(CFLGS) #-DGU_DEBUG
L_SOCKET=
LIBI= -L./libgurl -lgurl $(L_SOCKET)

OBJS= config.o config_glob.o config_scan.o scan.o Base64.o \
	  http.o log.o uri.o graburl.o

default:
	@echo "Usage: make <target>, where <target> is:"
	@echo "  graburl        Generic, using gcc"
	@echo "  linux          Linux/i386"
	@echo "  linux68        Linux/m68k"
	@echo "  cross68        Linux/m68k crosscompiled under linux i386"
	@echo "  amiga          AmigaOS using gcc"
	@echo "  solaris	Solaris"

linux:
	@make CFLGS="-Wall -g -O2" graburl

linux68:
	@make CFLGS="-Wall -g -O2 -DNO_HTONS" graburl

cross68:
	@make CROSS="m68k-linux-" CFLGS="-Wall -g -O2 -DNO_HTONS" graburl

amiga:
	@make CFLGS="-Wall -O2 -DNO_HTONS -pipe" graburl

solaris:
	@make CFLGS="-Wall -g -DBSD_COMP" L_SOCKET="-lsocket -lnsl" graburl

graburl: libgurl/libgurl.a $(OBJS)
	$(CC) $(LDFLAGS) $(OBJS) $(LIBI) -o graburl

graburl.o: graburl.c config.h log.h

config.o: config.c config.h macros.h license.h

config_glob.o: config_glob.c config.h

config_scan.o: config_scan.c macros.h config_scan.h

scan.o: scan.c scan.h config.h config_scan.h graburl.h uri.h log.h macros.h

http.o: http.c http.h log.h graburl.h config.h macros.h

uri.o: uri.c macros.h config.h log.h uri.h

Base64.o: Base64.c Base64.h

libgurl/libgurl.a:
	@cd libgurl; make CFLAGS="$(CFLGS)" CROSS="$(CROSS)"

clean: cleanexec cleannoexec

cleanexec:
	-rm -f graburl

cleannoexec:
	-rm -f *.o core
	@cd libgurl; make clean

cleanbak:
	-rm -f *~ libgurl/*~
