#!/usr/bin/make -f

export DEB_BUILD_MAINT_OPTIONS = hardening=+all

SHELL := sh -e

%:
	dh ${@}

override_dh_auto_build:
	dh_auto_build -- CFLAGS="$(CFLAGS) $(CPPFLAGS)"

	$(MAKE) -C doc doc

	# gfxboot-examples
	mkdir -p build/examples
	cp -a themes/example* build/examples

	for _THEME in $$(cd build/examples && ls); \
	do \
		$(MAKE) -C build/examples/$${_THEME}; \
	done

	# gfxboot-themes
	mkdir -p build
	cp -a themes build/themes
	rm -rf build/themes/example*

	$(MAKE) -C build/themes/openSUSE/help-install
	$(MAKE) -C build/themes/openSUSE

	for _THEME in $$(cd build/themes && ls); \
	do \
		if [ "$${_THEME}" != "openSUSE" ]; \
		then \
			$(MAKE) -C build/themes/$${_THEME}; \
		fi; \
	done

override_dh_auto_clean:
	dh_auto_clean

	$(MAKE) -C doc clean

	rm -rf build

override_dh_auto_install:
	dh_auto_install

	install -D -m 0644 doc/gfxboot.8 debian/gfxboot/usr/share/man/man1/gfxboot.1

	# Correcting program location
	mv debian/tmp/usr/sbin debian/tmp/usr/bin
	sed -i -e 's|^.TH GFXBOOT 8|.TH GFXBOOT 1|' debian/gfxboot/usr/share/man/man1/gfxboot.1

	# Removing useless files
	rm -rf debian/tmp/etc

	# gfxboot-examples
	for _THEME in $$(cd build/examples && ls); \
	do \
		install -D -m 0644 build/examples/$${_THEME}/bootlogo debian/gfxboot-examples/etc/bootsplash/$${_THEME}/cdrom/bootlogo; \
		/usr/share/gfxboot/bin/unpack_bootlogo debian/gfxboot-examples/etc/bootsplash/$${_THEME}/cdrom; \
		mkdir -p debian/gfxboot-examples/usr/share/gfxboot/themes/$${_THEME}; \
		cp -a themes/$${_THEME}/* debian/gfxboot-examples/usr/share/gfxboot/themes/$${_THEME}; \
	done

	# gfxboot-themes
	mkdir -p debian/gfxboot-themes-opensuse/usr/share/gfxboot/themes
	cp -a themes/openSUSE debian/gfxboot-themes-opensuse/usr/share/gfxboot/themes

	for _THEME in $$(cd build/themes && ls); \
	do \
		if [ "$${_THEME}" != "openSUSE" ]; \
		then \
			_PACKAGE="gfxboot-themes-`echo $${_THEME} | tr [A-Z] [a-z]`"; \
			mkdir -p debian/$${_PACKAGE}/usr/share/gfxboot/themes; \
			cp -a themes/openSUSE debian/$${_PACKAGE}/usr/share/gfxboot/themes/$${_THEME}; \
			cd themes/$${_THEME}; \
			find . | cpio -dmpu --no-preserve-owner ../../debian/$${_PACKAGE}/usr/share/gfxboot/themes/$${_THEME}; \
			cd -; \
			rm -f debian/$${_PACKAGE}/usr/share/gfxboot/themes/$${_THEME}/Makefile; \
			cp -a themes/openSUSE/Makefile debian/$${_PACKAGE}/usr/share/gfxboot/themes/$${_THEME}/Makefile; \
		fi; \
	done

	for _THEME in $$(cd build/themes && ls); \
	do \
		_PACKAGE="gfxboot-themes-`echo $${_THEME} | tr [A-Z] [a-z]`"; \
		install -D -m 0644 build/themes/$${_THEME}/bootlogo debian/$${_PACKAGE}/etc/bootsplash/themes/$${_THEME}/cdrom/bootlogo; \
		/usr/share/gfxboot/bin/unpack_bootlogo debian/$${_PACKAGE}/etc/bootsplash/themes/$${_THEME}/cdrom; \
		mkdir -p debian/$${_PACKAGE}/etc/bootsplash/themes/$${_THEME}/bootloader; \
		cp -a build/themes/$${_THEME}/message build/themes/$${_THEME}/help-boot/*.hlp build/themes/$${_THEME}/po/*.tr debian/$${_PACKAGE}/etc/bootsplash/themes/$${_THEME}/bootloader; \
	done

override_dh_builddeb:
	dh_builddeb -- -Zxz

override_dh_fixperms:
	dh_fixperms

	find . debian -name "*.xcf" | xargs chmod 0644

override_dh_install:
	dh_install --fail-missing
