#!/usr/bin/make -f

include /usr/share/dpkg/architecture.mk

export DH_ALWAYS_EXCLUDE=.svn

ifeq ($(origin CC),default)
CC = $(DEB_HOST_GNU_TYPE)-gcc
endif
PKG_CONFIG ?= $(DEB_HOST_GNU_TYPE)-pkg-config
LDFLAGS=-Wl,-z,defs -Wl,--as-needed -Wl,--no-undefined
CFLAGS=-std=gnu89 $(shell dpkg-buildflags --get CFLAGS)

config: config-stamp
config-stamp: 
	dh_testdir
	[ ! -d debian/patches ] || $(MAKE) -f /usr/share/quilt/quilt.make patch
	touch $@

build: build-arch build-indep
build-arch: build-stamp
build-indep: build-stamp
build-stamp: config
	dh_testdir
	cd camera/ && \
		$(CC) $(CFLAGS) -g -fPIC -c *.c
	cd camera/ && \
		$(CC) $(LDFLAGS) -g -shared *.o -lv4l2 -ldl -o so.CameraPlugin
	cd scratch/ && \
		$(CC) $(CFLAGS) -g -fPIC -c *.c
	cd scratch/ && \
		$(CC) $(LDFLAGS) -g -shared *.o -lm -o so.ScratchPlugin
	cd unicode/ && \
		$(CC) $(CFLAGS) -g -fPIC -c `$(PKG_CONFIG) --cflags pangocairo` *.c
	cd unicode/ && \
		$(CC) $(LDFLAGS) -g -shared *.o `$(PKG_CONFIG) --libs pangocairo` -lc -o so.UnicodePlugin
	cd wedo/ && \
		$(CC) $(CFLAGS) -g -fPIC -c *.c
	cd wedo/ && \
		$(CC) $(LDFLAGS) -g -shared *.o -o so.WeDoPlugin
	touch $@

clean: 
	dh_testdir
	dh_testroot
	rm -fv build-stamp config-stamp
	rm -fv camera/*.o camera/so.CameraPlugin
	rm -fv scratch/*.o scratch/so.ScratchPlugin
	rm -fv unicode/*.o unicode/so.UnicodePlugin
	rm -fv wedo/*.o wedo/so.WeDoPlugin
	rm -fv App/* Plugins/*
	[ ! -d debian/patches ] || $(MAKE) -f /usr/share/quilt/quilt.make unpatch
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

binary-indep:

binary-arch: install
	dh_testdir
	dh_testroot
	dh_installchangelogs -a
	dh_installdocs -a
	dh_installexamples -a
	dh_install -a
	dh_installman -a
	dh_link -a
	dh_strip -a --dbg-package=squeak-plugins-scratch-dbg
	dh_compress -a
	dh_fixperms -a
#	dh_makeshlibs -a
	[ ! -e /usr/bin/dh_buildinfo ] || dh_buildinfo -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

binary: binary-indep binary-arch

.PHONY: binary binary-arch binary-indep clean
