#!/usr/bin/make -f
# See debhelper(7) (uncomment to enable)
# output every command that modifies files on the build system.
#DH_VERBOSE = 1

# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/default.mk

# main packaging script based on dh7 syntax
%:
	dh $@

override_dh_install:
	dh_install

	mv debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43430-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43430-sdio.raspberrypi,3-model-b.txt

	cp debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt
	cp debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt
	cp debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-compute-module.txt
	cp debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,400.txt
	rm debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43455-sdio.txt

	cp debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43456-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43456-sdio.raspberrypi,4-model-b.txt
	cp debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43456-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43456-sdio.raspberrypi,4-compute-module.txt
	cp debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43456-sdio.txt \
		debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43456-sdio.raspberrypi,400.txt
	rm debian/linux-firmware-raspi2/lib/firmware/brcm/brcmfmac43456-sdio.txt

override_dh_strip:
	# Don't strip anything; it's all pre-built binary blobs and some of
	# it is foreign architecture anyway

BOOTCOMMIT:= 1.20210303
BOOTFILES := \
	LICENCE.broadcom \
	bootcode.bin \
	fixup.dat \
	fixup4.dat \
	fixup4cd.dat \
	fixup4db.dat \
	fixup4x.dat \
	fixup_cd.dat \
	fixup_db.dat \
	fixup_x.dat \
	start.elf \
	start4.elf \
	start4cd.elf \
	start4db.elf \
	start4x.elf \
	start_cd.elf \
	start_db.elf \
	start_x.elf

BTCOMMIT:= e7fd166981ab4bb9a36c2d1500205a078a35714d
BTFILES := \
	BCM43430A1.hcd \
	BCM4345C0.hcd \
	BCM4345C5.hcd \
	BCM43430B0.hcd

WIFICOMMIT:= 83938f78ca2d5a0ffe0c223bb96d72ccc7b71ca5
WIFIFILES := \
	brcmfmac43430-sdio.bin \
	brcmfmac43430-sdio.txt \
	brcmfmac43436-sdio.bin \
	brcmfmac43436-sdio.clm_blob \
	brcmfmac43436-sdio.txt \
	brcmfmac43455-sdio.bin \
	brcmfmac43455-sdio.clm_blob \
	brcmfmac43455-sdio.txt \
	brcmfmac43456-sdio.bin \
	brcmfmac43456-sdio.clm_blob \
	brcmfmac43456-sdio.txt

get-orig-source:
	rm -rf boot bluez nonfree

	set -x; mkdir -p boot; cd boot; $(foreach file,$(BOOTFILES),wget https://github.com/raspberrypi/firmware/raw/$(BOOTCOMMIT)/boot/$(file);)

	set -x; mkdir -p bluez/broadcom; cd bluez/broadcom; $(foreach file,$(BTFILES),wget https://github.com/RPi-Distro/bluez-firmware/raw/$(BTCOMMIT)/broadcom/$(file);)

	set -x; mkdir -p nonfree/brcm/; cd nonfree/brcm; $(foreach file,$(WIFIFILES),wget https://github.com/RPi-Distro/firmware-nonfree/raw/$(WIFICOMMIT)/brcm/$(file);)
	cd nonfree; wget https://github.com/RPi-Distro/firmware-nonfree/raw/$(WIFICOMMIT)/LICENCE.broadcom_bcm43xx
	cd nonfree; wget https://github.com/RPi-Distro/firmware-nonfree/raw/$(WIFICOMMIT)/LICENCE.cypress
	cd nonfree; wget https://github.com/RPi-Distro/firmware-nonfree/raw/$(WIFICOMMIT)/WHENCE

	mkdir $(DEB_SOURCE)-$(DEB_VERSION_UPSTREAM)
	tar -czf ../$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM).orig.tar.gz $(DEB_SOURCE)-$(DEB_VERSION_UPSTREAM)
	tar -czf ../$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM).orig-boot.tar.gz boot/
	tar -czf ../$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM).orig-bluez.tar.gz bluez/
	tar -czf ../$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM).orig-nonfree.tar.gz nonfree/
	rmdir $(DEB_SOURCE)-$(DEB_VERSION_UPSTREAM)
