1 1.1 jmcneill # $NetBSD: Makefile,v 1.1 2025/11/16 20:11:47 jmcneill Exp $ 2 1.1 jmcneill 3 1.1 jmcneill S= ${.CURDIR}/../../../.. 4 1.1 jmcneill POWERPC= ${S}/arch/powerpc 5 1.1 jmcneill 6 1.1 jmcneill PROG?= ppcboot.elf 7 1.1 jmcneill NEWVERSWHAT= "Wii MINI boot" 8 1.1 jmcneill 9 1.1 jmcneill SRCS+= start.S 10 1.1 jmcneill SRCS+= boot.c 11 1.1 jmcneill SRCS+= console.c 12 1.1 jmcneill SRCS+= conf.c 13 1.1 jmcneill SRCS+= devopen.c 14 1.1 jmcneill SRCS+= gecko.c 15 1.1 jmcneill SRCS+= gpio.c 16 1.1 jmcneill SRCS+= miniipc.c 17 1.1 jmcneill SRCS+= sdmmc.c 18 1.1 jmcneill SRCS+= timer.c 19 1.1 jmcneill 20 1.1 jmcneill NOMAN= # defined 21 1.1 jmcneill NOSANITIZER= # defined 22 1.1 jmcneill NORELRO= # defined 23 1.1 jmcneill STRIPFLAG= # nothing 24 1.1 jmcneill 25 1.1 jmcneill LIBCRT0= # nothing 26 1.1 jmcneill LIBCRTI= # nothing 27 1.1 jmcneill LIBCRTBEGIN= # nothing 28 1.1 jmcneill LIBCRTEND= # nothing 29 1.1 jmcneill LIBC= # nothing 30 1.1 jmcneill 31 1.1 jmcneill BINDIR= /usr/mdec 32 1.1 jmcneill BINMODE= 444 33 1.1 jmcneill 34 1.1 jmcneill .include <bsd.own.mk> 35 1.1 jmcneill 36 1.1 jmcneill TEXTADDR= 0x01004000 37 1.1 jmcneill STACKADDR= 0x01100000 38 1.1 jmcneill ENTRY= __start 39 1.1 jmcneill 40 1.1 jmcneill AFLAGS+= -mcpu=750 41 1.1 jmcneill 42 1.1 jmcneill CFLAGS+= -mcpu=750 -msdata=none -mno-strict-align -msoft-float 43 1.1 jmcneill CFLAGS+= -ffreestanding 44 1.1 jmcneill CFLAGS+= -nostdinc 45 1.1 jmcneill CFLAGS+= -Wall -Wmissing-prototypes 46 1.1 jmcneill 47 1.1 jmcneill CPPFLAGS+= -D_STANDALONE 48 1.1 jmcneill CPPFLAGS+= -DSUPPORT_DOSFS 49 1.1 jmcneill CPPFLAGS+= -DLIBSA_FFS_EI 50 1.1 jmcneill CPPFLAGS+= -DLIBSA_DISKLABEL_EI 51 1.1 jmcneill 52 1.1 jmcneill CPPFLAGS+= -DTEXTADDR=${TEXTADDR} 53 1.1 jmcneill CPPFLAGS+= -DSTACKADDR=${STACKADDR} 54 1.1 jmcneill CPPFLAGS+= -DPPC_OEA -DDISTANT_KERNEL -D__wii__ -Devbppc=evbppc 55 1.1 jmcneill CPPFLAGS+= -DCACHE_LINE_SIZE=32 56 1.1 jmcneill CPPFLAGS+= -DEVBPPC_HAS_MBR 57 1.1 jmcneill 58 1.1 jmcneill CPPFLAGS+= -I. -I${.CURDIR} -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. 59 1.1 jmcneill 60 1.1 jmcneill # Follow the suit of Makefile.kern.inc; needed for the lfs64 union 61 1.1 jmcneill # accessors -- they don't actually dereference the resulting pointer, 62 1.1 jmcneill # just use it for type-checking. 63 1.1 jmcneill CWARNFLAGS+= ${CC_WNO_ADDRESS_OF_PACKED_MEMBER} 64 1.1 jmcneill 65 1.1 jmcneill ### find out what to use for libsa 66 1.1 jmcneill SA_AS= library 67 1.1 jmcneill SAMISCMAKEFLAGS+= SA_USE_LOADFILE=yes 68 1.1 jmcneill SAMISCMAKEFLAGS+= SA_USE_CREAD=yes 69 1.1 jmcneill SAMISCMAKEFLAGS+= SA_INCLUDE_NET=no 70 1.1 jmcneill .include "${S}/lib/libsa/Makefile.inc" 71 1.1 jmcneill LIBSA= ${SALIB} 72 1.1 jmcneill 73 1.1 jmcneill ### find out what to use for libkern 74 1.1 jmcneill KERN_AS= library 75 1.1 jmcneill .include "${S}/lib/libkern/Makefile.inc" 76 1.1 jmcneill LIBKERN= ${KERNLIB} 77 1.1 jmcneill 78 1.1 jmcneill ### find out what to use for libz 79 1.1 jmcneill Z_AS= library 80 1.1 jmcneill .include "${S}/lib/libz/Makefile.inc" 81 1.1 jmcneill LIBZ= ${ZLIB} 82 1.1 jmcneill 83 1.1 jmcneill cleandir distclean: .WAIT cleanlibdir 84 1.1 jmcneill 85 1.1 jmcneill cleanlibdir: 86 1.1 jmcneill -rm -rf lib 87 1.1 jmcneill 88 1.1 jmcneill LIBLIST= ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBSA} 89 1.1 jmcneill 90 1.1 jmcneill .include "${S}/conf/newvers_stand.mk" 91 1.1 jmcneill 92 1.1 jmcneill ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 93 1.1 jmcneill ${_MKTARGET_LINK} 94 1.1 jmcneill ${LD} -N -T ${POWERPC}/conf/kern.ldscript \ 95 1.1 jmcneill -Ttext ${TEXTADDR} -e ${ENTRY} -q -X \ 96 1.1 jmcneill -o ${PROG} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 97 1.1 jmcneill 98 1.1 jmcneill release: check_RELEASEDIR 99 1.1 jmcneill ${HOST_INSTALL_FILE} -m ${BINMODE} ${PROG} \ 100 1.1 jmcneill ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/misc 101 1.1 jmcneill 102 1.1 jmcneill .include <bsd.klinks.mk> 103 1.1 jmcneill .include <bsd.prog.mk> 104