11.111Slukem# $NetBSD: Makefile.sun3,v 1.111 2023/06/03 08:52:57 lukem Exp $ 21.23Scgd 31.24Sgwr# Makefile for NetBSD 41.1Sglass# 51.1Sglass# This makefile is constructed from a machine description: 61.1Sglass# config machineid 71.1Sglass# Most changes should be made in the machine description 81.35Sgwr# /sys/arch/sun3/conf/``machineid'' 91.1Sglass# after which you should do 101.38Smycroft# config machineid 111.1Sglass# Machine generic makefile changes should be made in 121.35Sgwr# /sys/arch/sun3/conf/Makefile.sun3 131.1Sglass# after which config should be rerun for all machines of that type. 141.92Satatat# 151.92Satatat# To specify debugging, add the config line: makeoptions DEBUG="-g" 161.92Satatat# A better way is to specify -g only for a few files. 171.92Satatat# 181.92Satatat# makeoptions DEBUGLIST="uvm* trap if_*" 191.1Sglass 201.88SthorpejMACHINE_ARCH=m68k 211.89SjmcUSETOOLS?= no 221.92SatatatNEED_OWN_INSTALL_TARGET?=no 231.89Sjmc.include <bsd.own.mk> 241.88Sthorpej 251.92Satatat## 261.92Satatat## (1) port identification 271.92Satatat## 281.92SatatatSUN3= $S/arch/sun3 291.98SchristosGENASSYM_CONF= ${SUN3}/${MACHTYPE}/genassym.cf 301.92Satatat 311.92Satatat## 321.92Satatat## (2) compile settings 331.92Satatat## 341.94SthorpejCPPFLAGS+= -Dsun3 351.102SmrgCFLAGS+= ${CMACHFLAGS} -fno-defer-pop 361.102SmrgCFLAGS+= -msoft-float 371.101SjoergAFLAGS+= -x assembler-with-cpp 381.111SlukemCOPTS.sunmon.c+=${CC_WNO_ADDRESS_OF_PACKED_MEMBER} ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :} 391.92Satatat 401.92Satatat## 411.92Satatat## (3) libkern and compat 421.92Satatat## 431.106SmrgOPT_MODULAR= %MODULAR% 441.1Sglass 451.92Satatat## 461.92Satatat## (4) local objects, compile rules, and dependencies 471.92Satatat## 481.92SatatatMD_OBJS= locore.o 491.92SatatatMD_CFILES= 501.92SatatatMD_SFILES= ${SUN3}/${MACHTYPE}/locore.s 511.32Schristos 521.92Satatatlocore.o: ${SUN3}/${MACHTYPE}/locore.s 531.92Satatat ${NORMAL_S} 541.1Sglass 551.105Smrg.include "$S/arch/m68k/conf/Makefile.kern.m68k.inc" 561.105Smrg 571.92Satatat## 581.92Satatat## (5) link settings 591.92Satatat## 601.92Satatat.if ${MACHTYPE} == "sun3x" 611.92SatatatTEXTADDR?= F8004000 621.11Sderaadt.else 631.92SatatatTEXTADDR?= 0E004000 641.11Sderaadt.endif 651.92SatatatLINKFORMAT= -N 661.1Sglass 671.92Satatat## 681.92Satatat## (6) port specific target dependencies 691.92Satatat## 701.79Stron 711.45Sgwr# For cross-compilation, the "gcc -M" mkdep script is convenient, 721.45Sgwr# but that does not correctly make rules from *.s files. The 731.59Sgwr# easiest work-around is to just list those dependencies here. 741.59Sgwrlocore.o: assym.h m68k/asm.h m68k/trap.h 751.59Sgwrcopy.o: assym.h m68k/asm.h $S/sys/errno.h 761.59Sgwrbcopy.o: assym.h m68k/asm.h 771.59Sgwrcopypage.o: assym.h m68k/asm.h 781.100Sjoerglock_stubs.o: assym.h 791.1Sglass 801.91Slukem# depend on CPU configuration 811.38Smycroftdb_machdep.o dvma.o machdep.o pmap.o sun3_startup.o vm_machdep.o: Makefile 821.64Sgwr 831.64Sgwr# depends on DDB, etc. 841.64Sgwrstub.o: Makefile 851.1Sglass 861.92Satatat## 871.92Satatat## (7) misc settings 881.92Satatat## 891.92Satatat 901.92Satatat## 911.92Satatat## (8) config(8) generated machinery 921.92Satatat## 931.92Satatat%INCLUDES 941.92Satatat 951.92Satatat%OBJS 961.92Satatat 971.92Satatat%CFILES 981.47Smycroft 991.92Satatat%SFILES 1001.82Shubertf 1011.92Satatat%LOAD 1021.1Sglass 1031.1Sglass%RULES 1041.92Satatat 1051.92Satatat## 1061.92Satatat## (9) port independent kernel machinery 1071.92Satatat## 1081.92Satatat.include "$S/conf/Makefile.kern.inc" 1091.97Sthorpej 1101.97Sthorpej## 1111.97Sthorpej## (10) Appending make options. 1121.97Sthorpej## 1131.97Sthorpej%MAKEOPTIONSAPPEND 114