#       $NetBSD: Makefile.x68k,v 1.66 2018/09/22 12:24:04 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/x68k/conf/``machineid''
# after which you should do
#       config machineid
# Machine generic makefile changes should be made in
#       /sys/arch/x68k/conf/Makefile.x68k
# 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=m68k
USETOOLS?=      no
NEED_OWN_INSTALL_TARGET?=no
include <bsd.own.mk>

##
## (1) port identification
##
X68K=           $S/arch/x68k
GENASSYM_CONF=  ${X68K}/x68k/genassym.cf

##
## (2) compile settings
##
CPPFLAGS+=      -Dx68k
AFLAGS+=        -x assembler-with-cpp
CMACHFLAGS?=    -m68020-60 -Wa,-m68030 -Wa,-m68851
CFLAGS+=        ${CMACHFLAGS} -msoft-float

##
## (3) libkern and compat
##
OPT_MODULAR=    %MODULAR%

##
## (4) local objects, compile rules, and dependencies
##
# for the Motorola 68040 Floating Point Software Product
include "$S/arch/m68k/fpsp/Makefile.inc"

# for the Motorola 68060 Software Support Package
include "$S/arch/m68k/060sp/Makefile.inc"

MD_OBJS=        locore.o
MD_LIBS=        ${FPSP}
MD_CFILES=
MD_SFILES=      ${X68K}/x68k/locore.s

locore.o: ${X68K}/x68k/locore.s assym.h Makefile
       ${NORMAL_S}

copy.o copypage.o lock_stubs.o: assym.h

##
## (5) link settings
##
TEXTADDR?=      0
LINKFORMAT=     -n

include "$S/arch/m68k/conf/Makefile.kern.m68k.inc"

##
## (6) port specific target dependencies
##

# depend on root or device configuration
autoconf.o conf.o: Makefile

# depend on maxusers
machdep.o: Makefile

# depend on DEBUG and/or DIAGNOSTIC options
grf.o par.o sram.o: Makefile
intio_dmac.o mfp.o neptune.o opm.o scsirom.o xel.o zs.o bus.o: Makefile
intio.o vm_machdep.o: Makefile

##
## (7) misc settings
##

# XXX work around gcc 4.5 issue
COPTS.machdep.c += -O1

##
## (8) config(8) generated machinery
##
%INCLUDES

%OBJS

%CFILES

%SFILES

%LOAD

%RULES

##
## (9) port independent kernel machinery
##
include "$S/conf/Makefile.kern.inc"

##
## (10) Appending make options.
##
%MAKEOPTIONSAPPEND