1 1.2 jmcneill # $NetBSD: Makefile,v 1.2 2025/11/22 11:21:46 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.2 jmcneill CFLAGS+= -mcpu=750 43 1.2 jmcneill CFLAGS+= ${${ACTIVE_CC} == "gcc":? -msdata=none :} 44 1.2 jmcneill CFLAGS+= ${${ACTIVE_CC} == "gcc":? -mno-strict-align :} 45 1.2 jmcneill CFLAGS+= -msoft-float 46 1.1 jmcneill CFLAGS+= -ffreestanding 47 1.1 jmcneill CFLAGS+= -nostdinc 48 1.1 jmcneill CFLAGS+= -Wall -Wmissing-prototypes 49 1.1 jmcneill 50 1.1 jmcneill CPPFLAGS+= -D_STANDALONE 51 1.1 jmcneill CPPFLAGS+= -DSUPPORT_DOSFS 52 1.1 jmcneill CPPFLAGS+= -DLIBSA_FFS_EI 53 1.1 jmcneill CPPFLAGS+= -DLIBSA_DISKLABEL_EI 54 1.1 jmcneill 55 1.1 jmcneill CPPFLAGS+= -DTEXTADDR=${TEXTADDR} 56 1.1 jmcneill CPPFLAGS+= -DSTACKADDR=${STACKADDR} 57 1.1 jmcneill CPPFLAGS+= -DPPC_OEA -DDISTANT_KERNEL -D__wii__ -Devbppc=evbppc 58 1.1 jmcneill CPPFLAGS+= -DCACHE_LINE_SIZE=32 59 1.1 jmcneill CPPFLAGS+= -DEVBPPC_HAS_MBR 60 1.1 jmcneill 61 1.1 jmcneill CPPFLAGS+= -I. -I${.CURDIR} -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. 62 1.1 jmcneill 63 1.1 jmcneill # Follow the suit of Makefile.kern.inc; needed for the lfs64 union 64 1.1 jmcneill # accessors -- they don't actually dereference the resulting pointer, 65 1.1 jmcneill # just use it for type-checking. 66 1.1 jmcneill CWARNFLAGS+= ${CC_WNO_ADDRESS_OF_PACKED_MEMBER} 67 1.1 jmcneill 68 1.1 jmcneill ### find out what to use for libsa 69 1.1 jmcneill SA_AS= library 70 1.1 jmcneill SAMISCMAKEFLAGS+= SA_USE_LOADFILE=yes 71 1.1 jmcneill SAMISCMAKEFLAGS+= SA_USE_CREAD=yes 72 1.1 jmcneill SAMISCMAKEFLAGS+= SA_INCLUDE_NET=no 73 1.1 jmcneill .include "${S}/lib/libsa/Makefile.inc" 74 1.1 jmcneill LIBSA= ${SALIB} 75 1.1 jmcneill 76 1.1 jmcneill ### find out what to use for libkern 77 1.1 jmcneill KERN_AS= library 78 1.1 jmcneill .include "${S}/lib/libkern/Makefile.inc" 79 1.1 jmcneill LIBKERN= ${KERNLIB} 80 1.1 jmcneill 81 1.1 jmcneill ### find out what to use for libz 82 1.1 jmcneill Z_AS= library 83 1.1 jmcneill .include "${S}/lib/libz/Makefile.inc" 84 1.1 jmcneill LIBZ= ${ZLIB} 85 1.1 jmcneill 86 1.1 jmcneill cleandir distclean: .WAIT cleanlibdir 87 1.1 jmcneill 88 1.1 jmcneill cleanlibdir: 89 1.1 jmcneill -rm -rf lib 90 1.1 jmcneill 91 1.1 jmcneill LIBLIST= ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBSA} 92 1.1 jmcneill 93 1.1 jmcneill .include "${S}/conf/newvers_stand.mk" 94 1.1 jmcneill 95 1.1 jmcneill ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 96 1.1 jmcneill ${_MKTARGET_LINK} 97 1.1 jmcneill ${LD} -N -T ${POWERPC}/conf/kern.ldscript \ 98 1.1 jmcneill -Ttext ${TEXTADDR} -e ${ENTRY} -q -X \ 99 1.1 jmcneill -o ${PROG} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 100 1.1 jmcneill 101 1.1 jmcneill release: check_RELEASEDIR 102 1.1 jmcneill ${HOST_INSTALL_FILE} -m ${BINMODE} ${PROG} \ 103 1.1 jmcneill ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/misc 104 1.1 jmcneill 105 1.1 jmcneill .include <bsd.klinks.mk> 106 1.1 jmcneill .include <bsd.prog.mk> 107