#!/usr/bin/make -f

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS = -O0
endif

# Support multiple makes at once
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NJOBS := -j $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
endif

# Architecture/system specific configuration
DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)

TARGET_LINUX_LIST := alpha-linux-user arm-linux-user armeb-linux-user \
	cris-linux-user i386-linux-user m68k-linux-user mips-linux-user \
	mipsel-linux-user ppc-linux-user ppc64-linux-user \
	ppc64abi32-linux-user sh4-linux-user sh4eb-linux-user sparc-linux-user \
	sparc64-linux-user sparc32plus-linux-user x86_64-linux-user
ifneq (,$(DEB_BUILD_FLAVOURS))
TARGET_LINUX_LIST := $(filter %-linux-user,$(DEB_BUILD_FLAVOURS))
endif

BINARY_ARCH_PKGS := qemu-i386
ifneq (,$(filter alpha-linux-user,$(TARGET_LINUX_LIST)))
BINARY_ARCH_PKGS += qemu-user
endif

conf_arch :=
ifeq ($(DEB_HOST_ARCH_CPU),i386)
       conf_arch += --cpu=i386
endif
ifeq ($(DEB_HOST_ARCH_CPU),sparc)
       conf_arch += --cpu=sparc
endif

config-host.mak: configure
	dh_testdir
	CFLAGS="$(CFLAGS)" ./configure \
		--prefix=/usr \
		--target-list="$(TARGET_LINUX_LIST)" \
		--disable-sdl \
		--disable-system \
		--disable-blobs \
		$(conf_arch)

build: config-host.mak build-stamp
build-stamp:
	dh_testdir
	$(MAKE) $(NJOBS)
	touch $@

clean:
	dh_testdir
	[ ! -f config-host.mak ] || $(MAKE) distclean
	dh_clean

binary-indep: build
	dh_testdir
	dh_prep -i
	dh_install -i
	dh_installdocs -i
	dh_installexamples -i
	dh_installman -i
	dh_installinfo -i
	dh_installchangelogs -i
	dh_link -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_shlibdeps -i
	dh_gencontrol_substvars -i
	dh_md5sums -i
	dh_builddeb -i

BINARY_ARCH_DH_ARGS := $(foreach p,$(BINARY_ARCH_PKGS),-p$(p))

binary-arch: build
	dh_testdir
	dh_prep -a
	dh_installdirs -a
	dh_install $(BINARY_ARCH_DH_ARGS)
	dh_installdebconf -a
	dh_installdocs -a
	dh_installexamples -a
	dh_installman -a
	dh_installinfo -a
	dh_installchangelogs -a
	dh_link -a
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol_substvars $(BINARY_ARCH_DH_ARGS)
	dh_md5sums -a
	dh_builddeb $(BINARY_ARCH_DH_ARGS)

binary: binary-indep binary-arch

.PHONY: build clean binary-indep binary-arch binary
