###############################################################################
####
#### MAKEFILE
####
#### Copyright 2011 Stanislas Selle, Telecom Paristech
####
####
###############################################################################

###############################################################################
## Files and Path

PLUGINDIR = /usr/lib/mozilla/plugins/
INSTALL_INCLUDEDIR = /usr/local/include/hbbtvbrowserplugin/
INSTALL_LIBDIR = /usr/local/lib/
INSTALL_PKGDIR = /usr/lib/pkgconfig/

PKGFILE = hbbtvbrowserplugin.pc

MAINTARGET = bin/libhbbtvbrowserplugin.so

OBJ = 	obj/hbbtvbrowserplugin.o\
		obj/hbbtvbrowserpluginapi.o\
		obj/oipfapplicationmanager.o\
		obj/applicationclass.o\
		obj/applicationprivatedataclass.o\
		obj/oipfconfiguration.o\
		obj/configurationclass.o\
		obj/oipfdownloadmanager.o\
		obj/oipfdownloadtrigger.o\
		obj/downloadclass.o\
		obj/downloadcollectionclass.o\
		obj/drmcontrolinfocollectionclass.o\
		obj/drmcontrolinformationclass.o\
		obj/videobroadcast.o\
		obj/keysetclass.o

EXPORTHEADERS = src/hbbtvbrowserpluginapi.h

#TESTURL = file:///home/selle/ressources/HbbTVapps/TPT/app1/index.html
TESTURL = http://aquila.enst.fr:8080/subwebsite/hbbtvtest/test0003/index.php
TESTLOG = /tmp/test-err.txt
###############################################################################
## Programs

COMPILER	= cc
DELETER		= rm -f
BROWSERTEST	= firefox


###############################################################################
## Options, Flags and LinkS

CFLAGS = -Wall -DXP_UNIX=1 -DMOZ_X11=1 -fPIC -g

INCLUDEFLAGS = -Isrc/
LIBRARYFLAGS =

FROMPKG =	webkit-1.0 libxul

PKGFLAGS = `pkg-config --cflags $(FROMPKG) `
PKGLIBS = `pkg-config --libs $(FROMPKG) `

INCLUDEFLAGS += $(PKGFLAGS)
LIBRARYFLAGS += $(PKGLIBS)

###############################################################################
## Rules

all : $(MAINTARGET)

$(MAINTARGET) : $(OBJ)
	@$(COMPILER) $(CFLAGS) $(LIBRARYFLAGS) -shared $(OBJ) -o $(MAINTARGET)
	@echo "Compiling $(MAINTARGET)"

obj/%.o: src/%.c src/%.h
	@$(COMPILER) $(CFLAGS) -c $< $(INCLUDEFLAGS) -o $@
	@echo "Compiling $<"

test : all
	$(BROWSERTEST) $(TESTURL)  2> $(TESTLOG); cat $(TESTLOG)

install : all
	cp $(MAINTARGET) $(PLUGINDIR)
	@if test -d $(INSTALL_INCLUDEDIR);\
		then echo "==> $(INSTALL_INCLUDEDIR) existing already" ; \
	else mkdir $(INSTALL_INCLUDEDIR); fi;
	cp $(EXPORTHEADERS) $(INSTALL_INCLUDEDIR)
	cp $(PKGFILE) $(INSTALL_PKGDIR)

clean :
	$(DELETER) $(MAINTARGET)
	$(DELETER) $(OBJ)

###############################################################################
###############################################################################
