##
# Compilers.  You shouldn't really need to change these.
##

CXX = g++
CC = gcc

PERL = /usr/bin/perl

##
# General configuration section.
##

# The name of the resulting binary.  Strongly suggest this remains as 'papaya'
BINARY = papaya

PREFIX = /usr/local
INSTALL = /usr/bin/install -c
PACKAGE = papaya
VERSION = 0.95

GTK_C_FLAGS = -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12  

CFLAGS =  -DUNIX -Wall -Wno-deprecated -I../include/ -DZLIB -I/usr/local/include  -DUSE_GTK_2 -g -O2  $(GTK_C_FLAGS)
C++FLAGS := $(CFLAGS) -fno-rtti -fno-inline

LFLAGS = -lnsl  -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0   -lz -rdynamic -ldl  -L/usr/local/lib

##
# Nothing to edit beyond this point.
##

NETCODE = o/Filter.o o/Telnet.o o/TeloptFilter.o o/FilterHandler.o o/PromptFilter.o o/Socket.o o/Buffer.o o/Connection.o o/Socks.o o/EOLFilter.o o/AutoReconnect.o o/HTTPSocket.o o/SquidSocket.o o/CompressFilter.o o/SocksFive.o
VTCODE = o/VT.o o/GTKTwoVT.o o/ColouredLabel.o

UICODE = o/BaseWindow.o o/prefs_interface.o o/interface.o o/About.o o/Splash.o

GTKCODE = o/MainWindow.o o/menu.o
GTKTWOCODE = o/GTKTwoWindow.o

ENTITYCODE = o/Entity.o o/EntityGroup.o o/AliasEntity.o o/EntityHandler.o o/TriggerEntity.o o/SystemTriggerEntity.o

SRC_FILES = $(wildcard *.cpp *.c)

OBJECTS = $(ENTITYCODE) $(GTKTWOCODE) $(VTCODE) $(NETCODE) $(TURFCODE) $(UICODE) o/Main.o o/callbacks.o o/support.o o/notebook.o o/History.o o/Prefs.o o/preferences.o o/copyover.o o/Plugin.o o/CommandInterpreter.o o/SystemColour.o  o/PluginHandler.o o/Event.o o/Message.o o/PapayaList.o o/MUD.o o/MUDSelector.o o/MUDConnectorList.o o/external_app.o o/dl.o o/FileIO.o o/PluginData.o o/count.o o/Fade.o o/ColourEditor.o o/FontChooser.o o/Browser.o o/calcu.o o/Win32PluginAPIImplementation.o

all: $(BINARY)

$(BINARY): version.h $(OBJECTS) $(SWALLOW)
	$(CCMALLOC) $(CXX) -o $(BINARY) $(OBJECTS) $(LFLAGS)

o/%.o: %.c
	$(CC) $(CFLAGS) -c -o $@ $<

o/%.o: %.cpp
	$(CXX) $(C++FLAGS) -c -o $@ $<

clean:
	@echo Cleaning project for fresh compilation.
	-@rm -f $(OBJECTS) $(BINARY) core *~ doc/*~ o/* .mudclient-copyover config.cache config.log config.status

install:
	-@mkdir -p $(PREFIX)/bin/
	$(INSTALL) -m 0755 papaya $(PREFIX)/bin/

newversion:
	@if [ ! -f .version ]; then \
	echo 1 > .version; \
	else \
	expr 0`cat .version` + 1 > .version; \
	fi

version.h: newversion
	echo '#define CLIENT "Papaya"' > ../include/version.h
	echo '#define VERSION "0.96"' >> ../include/version.h
	echo "#define RELEASE `cat .version`" >> ../include/version.h
	echo '#define AUTHOR "mango@turf.org"' >> ../include/version.h

.depend:
	$(CXX) -MM -I../include -I/usr/local/include $(GTK_C_FLAGS) $(SRC_FILES) > .depend
	$(PERL) -i -p -e 's/([^.]+)\.o/o\/\1.o/g' .depend
	$(PERL) -i -p -e 's/..\/include\/version\.h//g' .depend

include .depend







