# Configurable stuff

COMPILER=gcc
LIBTOOL=./libtool
DEFS = -DHAVE_LIBPNG -DHAVE_LIBFREETYPE
INCLUDES = -I. -I/weblib/local/include -I/weblib/local/include/freetype2
CFLAGS = -g -O -O3
LIBS = -lz -lpng -lfreetype -lm
LDFLAGS = -L/weblib/local/lib
prefix = /weblib/local
libdir = $(prefix)/lib
incdir = $(prefix)/include
bindir = $(prefix)/bin

### NO CONFIGURATION NEEDED FROM THIS POINT ON ###

# PROGRAMS #
INSTALL = /usr/bin/install -c
RM = rm -f

# COMMANDS #
LTCOMPILE = $(LIBTOOL) --mode=compile $(COMPILER) $(DEFS) $(INCLUDES) $(CFLAGS)
LINK = $(LIBTOOL) --mode=link $(COMPILER) $(DEFS) $(CFLAGS) $(LDFLAGS) $(LIBS) -o $@
CC = gcc $(DEFS) $(INCLUDES) $(CFLAGS)

# FLAGS AND VERSION #
MAJOR_VERSION = 2
MINOR_VERSION = 0
TINY_VERSION = 1
VERSION=2.0.1
LT_LDFLAGS = -version-info $(MAJOR_VERSION):$(TINY_VERSION):$(MINOR_VERSION)


### END OF VARIABLES ###


LIBSOURCES = gd.c gd_gd.c gd_gd2.c gd_io.c gd_io_dp.c \
		gd_io_file.c gd_ss.c gd_io_ss.c gd_png.c gd_jpeg.c gdxpm.c \
		gdfontt.c gdfonts.c gdfontmb.c gdfontl.c gdfontg.c \
		gdtables.c gdft.c gdcache.c gdkanji.c wbmp.c \
		gd_wbmp.c gdhelpers.c gd_topal.c


LIBOBJS = gd.lo gd_gd.lo gd_gd2.lo gd_io.lo gd_io_dp.lo \
		gd_io_file.lo gd_ss.lo gd_io_ss.lo gd_png.lo gd_jpeg.lo gdxpm.lo \
		gdfontt.lo gdfonts.lo gdfontmb.lo gdfontl.lo gdfontg.lo \
		gdtables.lo gdft.lo gdcache.lo gdkanji.lo wbmp.lo \
		gd_wbmp.lo gdhelpers.lo gd_topal.lo 

BIN_PROGRAMS = pngtogd pngtogd2 gdtopng gd2topng gd2copypal gdparttopng webpng

TEST_PROGRAMS = gdtest gddemo gd2time gdtestft testac

PROGRAMS = $(BIN_PROGRAMS) $(TEST_PROGRAMS)

.SUFFIXES: .c .lo .o

.c.lo:
	$(LTCOMPILE) -c $<

.c.o:
	$(CC) -c $<

all: libgd.la $(BIN_PROGRAMS)

libgd.la: $(LIBOBJS)
	$(LINK) -rpath $(libdir) $(LT_LDFLAGS) $(LIBOBJS)

test: $(TEST_PROGRAMS)

clean:
	-rm -f *.o *.lo *.a *.so *.la
	-rm -rf .libs
	@list='$(PROGRAMS)'; for p in $$list; do \
		echo " $(LIBTOOL) --mode=clean $$p; " ; \
		$(LIBTOOL) --mode=clean $$p; \
	done

install: libgd.la $(BIN_PROGRAMS)
	if test -f libgd.la; then \
		echo "$(LIBTOOL) --mode=install $(INSTALL) libgd.la $(libdir)/libgd.la"; \
		$(LIBTOOL) --mode=install $(INSTALL) libgd.la $(libdir)/libgd.la; \
	else :; fi;
	@list='$(BIN_PROGRAMS)'; for p in $$list; do \
		if test -f $$p; then \
			echo "$(LIBTOOL) --mode=install $(INSTALL) $$p $(bindir)/$$p "; \
			$(LIBTOOL) --mode=install $(INSTALL) $$p $(bindir)/$$p ;\
		else :; fi; \
	done
	sh ./install-item 644 gd.h $(incdir)/gd.h
	sh ./install-item 644 gdcache.h $(incdir)/gdcache.h
	sh ./install-item 644 gd_io.h $(incdir)/gd_io.h
	sh ./install-item 644 gdfontg.h $(incdir)/gdfontg.h
	sh ./install-item 644 gdfontl.h $(incdir)/gdfontl.h
	sh ./install-item 644 gdfontmb.h $(incdir)/gdfontmb.h
	sh ./install-item 644 gdfonts.h $(incdir)/gdfonts.h
	sh ./install-item 644 gdfontt.h $(incdir)/gdfontt.h

uninstall:
	$(LIBTOOL) --mode=uninstall $(RM) $(libdir)/libgd.la
	@list='$(PROGRAMS)'; for p in $$list; do \
		echo " $(LIBTOOL) --mode=uninstall $(RM) $(bindir)/$$p " ; \
		$(LIBTOOL) --mode=uninstall $(RM) $(bindir)/$$p; \
	done

gddemo: gddemo.o
	@$(RM) gddemo
	$(LINK) gddemo.o ./libgd.la

testac: testac.o
	@$(RM) testac
	$(LINK) testac.o ./libgd.la

pngtogd: pngtogd.o
	@$(RM) pngtogd
	$(LINK) pngtogd.o ./libgd.la

webpng: webpng.o
	@$(RM) webpng
	$(LINK) webpng.o ./libgd.la

pngtogd2: pngtogd2.o
	@$(RM) pngtogd2
	$(LINK) pngtogd2.o ./libgd.la

gdtopng: gdtopng.o
	@$(RM) gdtopng
	$(LINK) gdtopng.o ./libgd.la

gd2topng: gd2topng.o
	@$(RM) gd2topng
	$(LINK) gd2topng.o ./libgd.la

gd2copypal: gd2copypal.o
	@$(RM) gd2copypal
	$(LINK) gd2copypal.o ./libgd.la

gdparttopng: gdparttopng.o
	@$(RM) gdparttopng
	$(LINK) gdparttopng.o ./libgd.la

gdtest: gdtest.o
	@$(RM) gdtest
	$(LINK) gdtest.o ./libgd.la

gd2time: gd2time.o
	@$(RM) gd2time
	$(LINK) gd2time.o ./libgd.la

gdtestft: gdtestft.o
	@$(RM) gdtestft
	$(LINK) gdtestft.o ./libgd.la
