Newer
Older
#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
#https://manpages.ubuntu.com/manpages/noble/en/man1/dpkg-buildflags.1.html
export DEB_BUILD_MAINT_OPTIONS = hardening=-branch,-fortify qa=-framepointer
TARGETDIR=bb-u-boot-beagleboneai64-mainline
#/opt/u-boot/$(TARGETDIR)/
#ti-linux-firmware
#HEAD: https://git.ti.com/gitweb?p=processor-firmware/ti-linux-firmware.git;a=summary
#TAGS: https://git.ti.com/gitweb?p=processor-firmware/ti-linux-firmware.git;a=tags
#Mirror: https://github.com/beagleboard/ti-linux-firmware
#TILF_REPO="https://github.com/beagleboard/ti-linux-firmware.git"
#Local Mirror
TILF_REPO="https://git.gfnd.rcn-ee.org/TexasInstruments/ti-linux-firmware.git"
#trusted-firmware-a
#HEAD: https://github.com/ARM-software/arm-trusted-firmware
#TAGS: https://github.com/ARM-software/arm-trusted-firmware/tags
#TAGS: https://github.com/ARM-software/arm-trusted-firmware/commits/master/
TFA_TAG=master
#TFA_TAG=lts-v2.10.2
#TFA_REPO="https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git"
#Local Mirror
TFA_REPO="https://git.gfnd.rcn-ee.org/mirror/trusted-firmware-a.git"
TFA_BOARD=generic
#optee_os
#HEAD: https://github.com/OP-TEE/optee_os
#TAGS: https://github.com/OP-TEE/optee_os/tags
#OPTEE_REPO="https://github.com/OP-TEE/optee_os"
#Local Mirror
OPTEE_REPO="https://git.gfnd.rcn-ee.org/mirror/optee_os.git"
OPTEE_PLATFORM=k3-j721e
#U-Boot
UBOOT_CFG_CORTEXR="j721e_beagleboneai64_r5_defconfig"
UBOOT_CFG_CORTEXA="j721e_beagleboneai64_a72_defconfig"
UB_TAG="v2024.10-rc1-BeagleBoneAI64"
UB_REPO="https://github.com/beagleboard/u-boot.git"
UB_TIBOOT=tiboot3-j721e-gp-evm.bin
UB_ITB=sysfw-j721e-gp-evm.itb
override_dh_strip:
# Just disable for now...
override_dh_auto_configure:
mkdir -p ./tmp/pkg/
mkdir -p /opt/u-boot/$(TARGETDIR)/ti-linux-firmware/
mkdir -p ./tmp/ti-linux-firmware/ ; git -c http.sslVerify=false clone -b $(TILF_TAG) $(TILF_REPO) --depth=5 ./tmp/ti-linux-firmware/ ; echo "ti-linux-firmware:" > ./tmp/pkg/build.txt ; git --git-dir ./tmp/ti-linux-firmware/.git rev-parse HEAD >> ./tmp/pkg/build.txt ; rsync -a ./tmp/ti-linux-firmware/* /opt/u-boot/$(TARGETDIR)/ti-linux-firmware/ --delete
mkdir -p ./tmp/trusted-firmware-a/ ; git -c http.sslVerify=false clone -b $(TFA_TAG) $(TFA_REPO) --depth=5 ./tmp/trusted-firmware-a/ ; echo "Trusted Firmware for A:" >> ./tmp/pkg/build.txt ; git --git-dir ./tmp/trusted-firmware-a/.git rev-parse HEAD >> ./tmp/pkg/build.txt
make -C ./tmp/trusted-firmware-a/ -j8 CROSS_COMPILE=aarch64-linux-gnu- CFLAGS= LDFLAGS= ARCH=aarch64 PLAT=k3 TARGET_BOARD=$(TFA_BOARD) SPD=opteed all
cp -v ./tmp/trusted-firmware-a/build/k3/$(TFA_BOARD)/release/bl31.bin ./tmp/pkg/
cp -v ./tmp/trusted-firmware-a/build/k3/$(TFA_BOARD)/release/bl31.bin /opt/u-boot/$(TARGETDIR)/
mkdir -p ./tmp/optee_os/ ; git -c http.sslVerify=false clone -b $(OPTEE_TAG) $(OPTEE_REPO) --depth=5 ./tmp/optee_os/ ; echo "OP-TEE:" >> ./tmp/pkg/build.txt ; git --git-dir ./tmp/optee_os/.git rev-parse HEAD >> ./tmp/pkg/build.txt
make -C ./tmp/optee_os/ -j8 O=../optee CROSS_COMPILE=arm-linux-gnueabihf- CROSS_COMPILE64=aarch64-linux-gnu- CFLAGS= LDFLAGS= PLATFORM=$(OPTEE_PLATFORM) CFG_ARM64_core=y all
cp -v ./tmp/optee/core/tee-pager_v2.bin ./tmp/pkg/
cp -v ./tmp/optee/core/tee-pager_v2.bin /opt/u-boot/$(TARGETDIR)/
mkdir -p ./tmp/u-boot/ ; git -c http.sslVerify=false clone -b $(UB_TAG) $(UB_REPO) --depth=5 ./tmp/u-boot/ ; echo "U-Boot:" >> ./tmp/pkg/build.txt ; git --git-dir ./tmp/u-boot/.git rev-parse HEAD >> ./tmp/pkg/build.txt
make -C ./tmp/u-boot -j1 O=../CORTEXR CROSS_COMPILE=arm-linux-gnueabihf- $(UBOOT_CFG_CORTEXR)
make -C ./tmp/u-boot -j8 O=../CORTEXR CROSS_COMPILE=arm-linux-gnueabihf- BINMAN_INDIRS=/opt/u-boot/$(TARGETDIR)/ti-linux-firmware/
ls -lha ./tmp/CORTEXR/
cp -v ./tmp/CORTEXR/$(UB_TIBOOT) ./tmp/pkg/tiboot3.bin
cp -v ./tmp/CORTEXR/$(UB_ITB) ./tmp/pkg/sysfw.itb
make -C ./tmp/u-boot -j1 O=../CORTEXA CROSS_COMPILE=aarch64-linux-gnu- $(UBOOT_CFG_CORTEXA)
make -C ./tmp/u-boot -j8 O=../CORTEXA CROSS_COMPILE=aarch64-linux-gnu- BL31=/opt/u-boot/$(TARGETDIR)/bl31.bin TEE=/opt/u-boot/$(TARGETDIR)/tee-pager_v2.bin BINMAN_INDIRS=/opt/u-boot/$(TARGETDIR)/ti-linux-firmware/
ls -lha ./tmp/CORTEXA/
cp -v ./tmp/CORTEXA/tispl.bin_unsigned ./tmp/pkg/tispl.bin
cp -v ./tmp/CORTEXA/u-boot.img_unsigned ./tmp/pkg/u-boot.img
%:
dh $@
override_dh_builddeb:
dh_builddeb -- -Zxz