11.6Sryo# $NetBSD: Makefile,v 1.6 2022/09/25 21:19:20 ryo Exp $ 21.1Smarcus 31.1SmarcusS = ${.CURDIR}/../../../.. 41.1Smarcus 51.6SryoTOOLDIR ?= /usr/pkg/cross-arm-none-eabi 61.6Sryo 71.6SryoCC = ${TOOLDIR}/bin/arm-none-eabi-gcc 81.6SryoOBJCOPY = ${TOOLDIR}/bin/arm-none-eabi-objcopy 91.1Smarcus 101.1SmarcusCFLAGS = -W -Wall -mlittle-endian 111.5SryoCFLAGS += -O3 -mcpu=arm7 121.1SmarcusCFLAGS += -fomit-frame-pointer -funroll-loops -finline-functions 131.1SmarcusCFLAGS += -I${S} 141.1Smarcus 151.1Smarcusall: aica_armcode.h 161.1Smarcus 171.1Smarcusaica_armcode.h: aica_armcode.elf 181.1Smarcus ${OBJCOPY} -O binary aica_armcode.elf aica_armcode.bin 191.2Sitohy echo '/* $$'NetBSD'$$ */' > ${.TARGET}.tmp 201.4Suwe echo 'static uint32_t aica_armcode[] = {' >> ${.TARGET}.tmp 211.1Smarcus hexdump -v -e '" /* %04.4_ax */\t" 1/4 "0x%08x, " "\n"' \ 221.1Smarcus aica_armcode.bin >> ${.TARGET}.tmp 231.1Smarcus echo ' 0 };' >> ${.TARGET}.tmp 241.1Smarcus mv ${.TARGET}.tmp ${.TARGET} 251.1Smarcus 261.1Smarcusaica_armcode.elf: aica_arm_locore.o aica_arm.o 271.1Smarcus ${CC} ${CFLAGS} -Wl,-Ttext,0 -Wl,-T ldscript -nostdlib -e 0 \ 281.1Smarcus -o aica_armcode.elf aica_arm_locore.o aica_arm.o 291.1Smarcus 301.1Smarcusclean: clean-tmp 311.1Smarcus# rm -f aica_armcode.h 321.1Smarcus 331.1Smarcusclean-tmp: 341.1Smarcus rm -f *.o aica_armcode.elf aica_armcode.bin aica_armcode.h.tmp 351.1Smarcus 36