1 1.12.2.2 jdolecek # $NetBSD: Makefile.sh3,v 1.12.2.2 2002/03/16 15:59:34 jdolecek Exp $ 2 1.1 itojun 3 1.1 itojun # Makefile for NetBSD 4 1.1 itojun # 5 1.1 itojun # This makefile is constructed from a machine description: 6 1.1 itojun # config machineid 7 1.1 itojun # Most changes should be made in the machine description 8 1.1 itojun # /sys/arch/sh3/conf/``machineid'' 9 1.1 itojun # after which you should do 10 1.1 itojun # config machineid 11 1.1 itojun # Machine generic makefile changes should be made in 12 1.1 itojun # /sys/arch/sh3/conf/Makefile.sh3 13 1.1 itojun # after which config should be rerun for all machines of that type. 14 1.12.2.1 thorpej # 15 1.12.2.1 thorpej # To specify debugging, add the config line: makeoptions DEBUG="-g" 16 1.12.2.1 thorpej # A better way is to specify -g only for a few files. 17 1.12.2.1 thorpej # 18 1.12.2.1 thorpej # makeoptions DEBUGLIST="uvm* trap if_*" 19 1.1 itojun 20 1.12.2.1 thorpej USETOOLS?= no 21 1.12.2.1 thorpej NEED_OWN_INSTALL_TARGET?=no 22 1.1 itojun .include <bsd.own.mk> 23 1.1 itojun 24 1.12.2.1 thorpej ## 25 1.12.2.1 thorpej ## (1) port identification 26 1.12.2.1 thorpej ## 27 1.12.2.1 thorpej THISSH3= $S/arch/${MACHINE} 28 1.12.2.1 thorpej SH3= $S/arch/sh3 29 1.12.2.2 jdolecek GENASSYM= ${SH3}/sh3/genassym.cf 30 1.12.2.1 thorpej .-include "${THISSH3}/conf/Makefile.${MACHINE}.inc" 31 1.12.2.1 thorpej 32 1.12.2.1 thorpej ## 33 1.12.2.1 thorpej ## (2) compile settings 34 1.12.2.1 thorpej ## 35 1.12.2.1 thorpej CPPFLAGS+= -D${MACHINE} 36 1.12.2.1 thorpej CWARNFLAGS+= -Wno-parentheses 37 1.12.2.1 thorpej AFLAGS+= -x assembler-with-cpp -traditional-cpp 38 1.9 itojun # pkgsrc/cross/sh* dies with -O2, use -O1 for now 39 1.12.2.1 thorpej COPTS?= -O1 40 1.1 itojun 41 1.12.2.1 thorpej ## 42 1.12.2.1 thorpej ## (3) libkern and compat 43 1.12.2.1 thorpej ## 44 1.12.2.1 thorpej 45 1.12.2.1 thorpej ## 46 1.12.2.1 thorpej ## (4) local objects, compile rules, and dependencies 47 1.12.2.1 thorpej ## 48 1.12.2.1 thorpej MD_OBJS= locore.o 49 1.12.2.1 thorpej MD_CFILES= 50 1.12.2.2 jdolecek MD_SFILES= ${THISSH3}/${MACHINE}/locore.S 51 1.8 itojun 52 1.12.2.2 jdolecek locore.o: ${THISSH3}/${MACHINE}/locore.S assym.h 53 1.12.2.1 thorpej ${NORMAL_S} 54 1.1 itojun 55 1.12.2.1 thorpej # XXX compile ffs_inode.c always with -O0 to avoid egcs-1.1.2 bug. 56 1.12.2.1 thorpej #ffs_inode.o: $S/ufs/ffs/ffs_inode.c 57 1.12.2.1 thorpej # ${CC} ${CFLAGS} -O0 ${CPPFLAGS} ${PROF} -c $< 58 1.1 itojun 59 1.12.2.1 thorpej ## 60 1.12.2.1 thorpej ## (5) link settings 61 1.12.2.1 thorpej ## 62 1.12.2.1 thorpej # LINKFORMAT possibly set by individual sh3 port 63 1.12.2.1 thorpej # LDSCRIPTBASE comes from the kernel's config 64 1.12.2.1 thorpej LINKFORMAT?= -T ${THISSH3}/conf/${LDSCRIPTBASE} 65 1.12.2.1 thorpej 66 1.12.2.1 thorpej ## 67 1.12.2.1 thorpej ## (6) port specific target dependencies 68 1.12.2.1 thorpej ## 69 1.1 itojun 70 1.12.2.1 thorpej # depend on CPU configuration 71 1.12.2.1 thorpej locore.o machdep.o: Makefile 72 1.12.2.1 thorpej 73 1.12.2.1 thorpej ## 74 1.12.2.1 thorpej ## (7) misc settings 75 1.12.2.1 thorpej ## 76 1.12.2.1 thorpej 77 1.12.2.1 thorpej ## 78 1.12.2.1 thorpej ## (8) config(8) generated machinery 79 1.12.2.1 thorpej ## 80 1.12.2.1 thorpej %INCLUDES 81 1.1 itojun 82 1.1 itojun %OBJS 83 1.1 itojun 84 1.1 itojun %CFILES 85 1.1 itojun 86 1.1 itojun %SFILES 87 1.1 itojun 88 1.1 itojun %LOAD 89 1.1 itojun 90 1.1 itojun %RULES 91 1.12.2.1 thorpej 92 1.12.2.1 thorpej ## 93 1.12.2.1 thorpej ## (9) port independent kernel machinery 94 1.12.2.1 thorpej ## 95 1.12.2.1 thorpej .include "$S/conf/Makefile.kern.inc" 96