# $NetBSD: Makefile.sparc,v 1.96 2018/09/22 12:24:03 rin Exp $
# Makefile for NetBSD
#
# This makefile is constructed from a machine description:
# config machineid
# Most changes should be made in the machine description
# /sys/arch/sparc/conf/``machineid''
# after which you should do
# config machineid
# Machine generic makefile changes should be made in
# /sys/arch/sparc/conf/Makefile.sparc
# after which config should be rerun for all machines of that type.
#
# To specify debugging, add the config line: makeoptions DEBUG="-g"
# A better way is to specify -g only for a few files.
#
# makeoptions DEBUGLIST="uvm* trap if_*"
MACHINE_ARCH= sparc
USETOOLS?= no
NEED_OWN_INSTALL_TARGET?=no
include <bsd.own.mk>
##
## (1) port identification
##
SPARC= $S/arch/sparc
GENASSYM_CONF= ${SPARC}/sparc/genassym.cf
##
## (2) compile settings
##
# work around GCC (egcs-2.91.66) bug which is liable
# to use FPU registers as temporaries:
CFLAGS+= ${${ACTIVE_CC} == "gcc":? -mno-fpu :}
CFLAGS+= -Wa,-Av8
CFLAGS+= ${${ACTIVE_CC} == "clang":? -Qunused-arguments :}
AFLAGS+= -x assembler-with-cpp
AFLAGS+= -Wa,-Av8
AFLAGS+= ${${ACTIVE_CC} == "clang":? -Qunused-arguments :}
COPTS.kern_timeout.c += -Wno-stack-protector
##
## (3) libkern and compat
##
OPT_MODULAR= %MODULAR%
##
## (4) local objects, compile rules, and dependencies
##
MD_OBJS= locore.o
MD_CFILES=
MD_SFILES= ${SPARC}/sparc/locore.s