Home | History | Annotate | Line # | Download | only in microcode
      1  1.6     ryo #	$NetBSD: Makefile,v 1.6 2022/09/25 21:19:20 ryo Exp $
      2  1.1  marcus 
      3  1.1  marcus S	= ${.CURDIR}/../../../..
      4  1.1  marcus 
      5  1.6     ryo TOOLDIR	?= /usr/pkg/cross-arm-none-eabi
      6  1.6     ryo 
      7  1.6     ryo CC	= ${TOOLDIR}/bin/arm-none-eabi-gcc
      8  1.6     ryo OBJCOPY	= ${TOOLDIR}/bin/arm-none-eabi-objcopy
      9  1.1  marcus 
     10  1.1  marcus CFLAGS	= -W -Wall -mlittle-endian
     11  1.5     ryo CFLAGS	+= -O3 -mcpu=arm7
     12  1.1  marcus CFLAGS	+= -fomit-frame-pointer -funroll-loops -finline-functions
     13  1.1  marcus CFLAGS	+= -I${S}
     14  1.1  marcus 
     15  1.1  marcus all: aica_armcode.h
     16  1.1  marcus 
     17  1.1  marcus aica_armcode.h: aica_armcode.elf
     18  1.1  marcus 	${OBJCOPY} -O binary aica_armcode.elf aica_armcode.bin
     19  1.2   itohy 	echo '/* $$'NetBSD'$$ */' > ${.TARGET}.tmp
     20  1.4     uwe 	echo 'static uint32_t aica_armcode[] = {' >> ${.TARGET}.tmp
     21  1.1  marcus 	hexdump -v -e '" /* %04.4_ax */\t" 1/4 "0x%08x, " "\n"' \
     22  1.1  marcus 		aica_armcode.bin >> ${.TARGET}.tmp
     23  1.1  marcus 	echo '		0 };' >> ${.TARGET}.tmp
     24  1.1  marcus 	mv ${.TARGET}.tmp ${.TARGET}
     25  1.1  marcus 
     26  1.1  marcus aica_armcode.elf: aica_arm_locore.o aica_arm.o
     27  1.1  marcus 	${CC} ${CFLAGS} -Wl,-Ttext,0 -Wl,-T ldscript -nostdlib -e 0 \
     28  1.1  marcus 		-o aica_armcode.elf aica_arm_locore.o aica_arm.o
     29  1.1  marcus 
     30  1.1  marcus clean: clean-tmp
     31  1.1  marcus #	rm -f aica_armcode.h
     32  1.1  marcus 
     33  1.1  marcus clean-tmp:
     34  1.1  marcus 	rm -f *.o aica_armcode.elf aica_armcode.bin aica_armcode.h.tmp
     35  1.1  marcus 
     36