##
# Makefile for Unix
#

ROOT = ../..
BIN = ../../../bin
PTC = ${ROOT}/src/Linux/TinyPTC-X11-0.7.3

LINK     = $(CXX)
CXXFLAGS = -g -Wall -pipe -O3 -fPIC -funroll-all-loops -D_LINUX  -I${PTC}
# CXXFLAGS += -DHACK_RGB565
LFLAGS  = -shared -Wl,-soname,libKlimt.so.0 -ltinyptc
LIBS     = -ltinyptc -lm -L${PTC}

OBJECTS = ${ROOT}/src/klBlitter.o \
		  ${ROOT}/src/klEGLSurfaceBuffer.o \
		  ${ROOT}/src/klGlu.o \
		  ${ROOT}/src/klGlut.o \
		  ${ROOT}/src/klImageConverter.o \
		  ${ROOT}/src/klMain.o \
		  ${ROOT}/src/Base/klChunkedMemory.o \
		  ${ROOT}/src/Linux/klEGLSurfacePTC.o

TARGET	= libKlimt.so.0.5.0
TARGET0	= libKlimt.so
TARGET1	= libKlimt.so.0
TARGET2	= libKlimt.so.0.5

all: ptc ${BIN}/$(TARGET)

ptc:
	-cd ${ROOT}/src/Linux/TinyPTC-X11-0.7.3; make

${BIN}/$(TARGET):  $(OBJECTS)
	$(LINK) $(LFLAGS) -o ${BIN}/$(TARGET) $(OBJECTS) $(LIBS)
	-cd ${BIN}; ln -sf $(TARGET) $(TARGET0)
	-cd ${BIN}; ln -sf $(TARGET) $(TARGET1)
	-cd ${BIN}; ln -sf $(TARGET) $(TARGET2)

clean:
	rm -f $(OBJECTS) 
	rm -f ${BIN}/*.so*
	-cd ${ROOT}/src/Linux/TinyPTC-X11-0.7.3; make clean
