Makefile.sun2 revision 1.26
11.26Smrg# $NetBSD: Makefile.sun2,v 1.26 2020/09/08 00:51:29 mrg Exp $ 21.1Sfredette 31.1Sfredette# Makefile for NetBSD 41.1Sfredette# 51.1Sfredette# This makefile is constructed from a machine description: 61.1Sfredette# config machineid 71.1Sfredette# Most changes should be made in the machine description 81.1Sfredette# /sys/arch/sun2/conf/``machineid'' 91.1Sfredette# after which you should do 101.1Sfredette# config machineid 111.1Sfredette# Machine generic makefile changes should be made in 121.1Sfredette# /sys/arch/sun2/conf/Makefile.sun2 131.1Sfredette# after which config should be rerun for all machines of that type. 141.1Sfredette# 151.11Sfredette# To specify debugging, add the config line: makeoptions DEBUG="-g" 161.11Sfredette# A better way is to specify -g only for a few files. 171.1Sfredette# 181.11Sfredette# makeoptions DEBUGLIST="uvm* trap if_*" 191.1Sfredette 201.14SchsMACHINE_ARCH=m68000 211.7SjmcUSETOOLS?= no 221.11SfredetteNEED_OWN_INSTALL_TARGET?=no 231.7Sjmc.include <bsd.own.mk> 241.6Sthorpej 251.11Sfredette## 261.11Sfredette## (1) port identification 271.11Sfredette## 281.11SfredetteSUN2= $S/arch/sun2 291.17SchristosGENASSYM_CONF= ${SUN2}/sun2/genassym.cf 301.11Sfredette 311.11Sfredette## 321.11Sfredette## (2) compile settings 331.11Sfredette## 341.12SthorpejCPPFLAGS+= -Dsun2 351.11SfredetteCFLAGS+= -msoft-float -fno-defer-pop 361.20SjoergAFLAGS+= -x assembler-with-cpp 371.1Sfredette 381.25Srin# XXX 391.26SmrgCOPTS+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 8:? -fno-omit-frame-pointer :} 401.26SmrgCOPTS.promlib.c+=${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :} 411.25Srin 421.11Sfredette## 431.11Sfredette## (3) libkern and compat 441.11Sfredette## 451.22SmayaOPT_MODULAR= %MODULAR% 461.4Sfredette# XXX lib/libkern/arch/m68k/Makefile.inc needs to know that 471.4Sfredette# XXX our MACHINE_ARCH is m68000, and not m68k. --fredette 481.2SfredetteKERNMISCMAKEFLAGS= MACHINE_ARCH=${MACHINE_ARCH} 491.1Sfredette 501.11Sfredette## 511.11Sfredette## (4) local objects, compile rules, and dependencies 521.11Sfredette## 531.11SfredetteMD_OBJS= locore.o 541.11SfredetteMD_CFILES= 551.11SfredetteMD_SFILES= ${SUN2}/sun2/locore.s 561.1Sfredette 571.11Sfredettelocore.o: ${SUN2}/sun2/locore.s 581.11Sfredette ${NORMAL_S} 591.1Sfredette 601.11Sfredette## 611.11Sfredette## (5) link settings 621.11Sfredette## 631.11SfredetteLINKFORMAT= -N 641.11SfredetteTEXTADDR?= 00006000 651.11Sfredette 661.11Sfredette## 671.11Sfredette## (6) port specific target dependencies 681.11Sfredette## 691.1Sfredette 701.1Sfredette# For cross-compilation, the "gcc -M" mkdep script is convenient, 711.1Sfredette# but that does not correctly make rules from *.s files. The 721.1Sfredette# easiest work-around is to just list those dependencies here. 731.1Sfredettelocore.o: assym.h m68k/asm.h m68k/trap.h 741.1Sfredettecopy.o: assym.h m68k/asm.h $S/sys/errno.h 751.1Sfredettebcopy.o: assym.h m68k/asm.h 761.1Sfredettecopypage.o: assym.h m68k/asm.h 771.19Sjoerglock_stubs.o: assym.h 781.1Sfredette 791.9Slukem# depend on CPU configuration 801.1Sfredettedb_machdep.o dvma.o machdep.o pmap.o sun2_startup.o vm_machdep.o: Makefile 811.1Sfredette 821.1Sfredette# depends on DDB, etc. 831.1Sfredettestub.o: Makefile 841.1Sfredette 851.11Sfredette## 861.11Sfredette## (7) misc settings 871.11Sfredette## 881.11Sfredette 891.11Sfredette## 901.11Sfredette## (8) config(8) generated machinery 911.11Sfredette## 921.11Sfredette%INCLUDES 931.11Sfredette 941.11Sfredette%OBJS 951.11Sfredette 961.11Sfredette%CFILES 971.1Sfredette 981.11Sfredette%SFILES 991.1Sfredette 1001.11Sfredette%LOAD 1011.1Sfredette 1021.1Sfredette%RULES 1031.11Sfredette 1041.11Sfredette## 1051.11Sfredette## (9) port independent kernel machinery 1061.11Sfredette## 1071.11Sfredette.include "$S/conf/Makefile.kern.inc" 1081.16Sthorpej 1091.16Sthorpej## 1101.16Sthorpej## (10) Appending make options. 1111.16Sthorpej## 1121.16Sthorpej%MAKEOPTIONSAPPEND 113