1# $NetBSD: Makefile.sh3,v 1.29 2018/09/22 12:24:03 rin Exp $ 2 3# Makefile for NetBSD 4# 5# This makefile is constructed from a machine description: 6# config machineid 7# Most changes should be made in the machine description 8# /sys/arch/<machine>/conf/``machineid'' 9# after which you should do 10# config machineid 11# CPU generic makefile changes should be made in 12# /sys/arch/sh3/conf/Makefile.sh3 13# after which config should be rerun for all machines of that type. 14# 15# To specify debugging, add the config line: makeoptions DEBUG="-g" 16# A better way is to specify -g only for a few files. 17# 18# makeoptions DEBUGLIST="uvm* trap if_*" 19 20USETOOLS?= no 21NEED_OWN_INSTALL_TARGET?=no 22.include <bsd.own.mk> 23 24## 25## (1) port identification 26## 27THISSH3= $S/arch/${MACHINE} 28SH3= $S/arch/sh3 29GENASSYM_CONF= ${SH3}/sh3/genassym.cf 30.-include "${THISSH3}/conf/Makefile.${MACHINE}.inc" 31 32## 33## (2) compile settings 34## 35CPPFLAGS+= -D${MACHINE} 36AFLAGS+= -x assembler-with-cpp 37# -O2 is too -falign-* zealous for low-memory sh3 machines 38COPTS?= -Os -freorder-blocks 39 40## 41## (3) libkern and compat 42## 43OPT_MODULAR= %MODULAR% 44 45## 46## (4) local objects, compile rules, and dependencies 47## 48MD_OBJS= locore.o 49MD_CFILES= 50MD_SFILES= ${THISSH3}/${MACHINE}/locore.S 51 52locore.o: ${THISSH3}/${MACHINE}/locore.S assym.h 53 ${NORMAL_S} 54 55cpu_in_cksum.o exception_vector.o locore_subr.o: assym.h 56 57## 58## (5) link settings 59## 60TEXTADDR?= ${DEFTEXTADDR} 61LINKFLAGS_NORMAL= -X 62 63## 64## (6) port specific target dependencies 65## 66 67# depend on CPU configuration 68locore.o machdep.o: Makefile 69 70## 71## (7) misc settings 72## 73 74## 75## (8) config(8) generated machinery 76## 77%INCLUDES 78 79%OBJS 80 81%CFILES 82 83%SFILES 84 85%LOAD 86 87%RULES 88 89## 90## (9) port independent kernel machinery 91## 92.include "$S/conf/Makefile.kern.inc" 93 94## 95## (10) Appending make options. 96## 97%MAKEOPTIONSAPPEND 98