#!/usr/bin/make -f

TARGET=i686-w64-mingw32
VERSION=-1.1.0
CABFILE=wine_gecko$(VERSION)-x86.cab

#ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
#NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
#MAKEFLAGS += -j$(NUMJOBS)
#endif

MOZCONFIG_STD=$(CURDIR)/wine/mozconfig
MOZCONFIG_DBG=$(CURDIR)/wine/mozconfig-dbg

export CROSS_COMPILE=1
# for primary build system
export CFLAGS=-I$(CURDIR)/include
export CXXFLAGS=-I$(CURDIR)/include
export LDFLAGS=-L$(CURDIR)/lib
# for secondary build system (in security/)
export OS_CFLAGS=-I$(CURDIR)/include
export OS_DLLFLAGS=-L$(CURDIR)/lib

DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)

# targets for configuring

wine_gecko:
	dh_testdir
	rm -rf wine_gecko
	MOZCONFIG="$(MOZCONFIG_STD)" \
	$(MAKE) -f client.mk configure

wine_gecko-dbg: wine_gecko
	dh_testdir
	rm -rf wine_gecko-dbg
	MOZCONFIG="$(MOZCONFIG_DBG)" \
	$(MAKE) -f client.mk configure

# targets for building

wine_gecko/dist: wine_gecko
	dh_testdir
	MOZCONFIG="$(MOZCONFIG_STD)" \
	$(MAKE) -f client.mk build

wine_gecko-dbg/dist: wine_gecko-dbg
	dh_testdir
	MOZCONFIG="$(MOZCONFIG_DBG)" \
	$(MAKE) -f client.mk build

# targets for cleaning

build-clean:
	dh_testdir
	-$(MAKE) -f client.mk cleansrcdir
	rm -rf wine_gecko wine_gecko-dbg
	rm -f a.out confdefs.h configure js/src/configure \
	 .mozconfig.mk .mozconfig.out security/manager/.nss.checkout
	dh_clean

# standard targets

configure: wine_gecko

build-arch:

build-indep: wine_gecko/dist wine_gecko-dbg/dist

clean: build-clean
	dh_testdir
	rm -rf buildtools include lib
	rm -f js/src/float.h
	find -name "*.pyc" -exec rm {} \;

binary-arch:

binary-indep: build-indep
	dh_testdir
	dh_testroot
	dh_prep -i

	MOZCONFIG="$(MOZCONFIG_STD)" \
	wine/make_package wine_gecko
	mkdir -p debian/libwine-gecko$(VERSION)/usr/share/wine-gecko
	(cd wine_gecko/dist && lcab -r wine_gecko \
	 $(CURDIR)/debian/libwine-gecko$(VERSION)/usr/share/wine-gecko/$(CABFILE))

	MOZCONFIG="$(MOZCONFIG_DBG)" \
	wine/make_package wine_gecko-dbg
	mkdir -p debian/libwine-gecko-dbg$(VERSION)/usr/share/wine-gecko
	(cd wine_gecko-dbg/dist && lcab -r wine_gecko \
	 $(CURDIR)/debian/libwine-gecko-dbg$(VERSION)/usr/share/wine-gecko/$(CABFILE))

	dh_installdocs -i
	dh_installchangelogs -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

binary: binary-indep

patch: wine-mozilla buildtools include

# Upstream source must be repacked for DFSG compliance
get-orig-source:
	uscan --download --destdir . --force-download

.PHONY: configure build build-clean clean install \
 binary-arch binary-indep binary patch get-orig-source
