1# $NetBSD: Makefile.luna68k,v 1.24 2013/03/10 07:18:20 christos 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/luna68k/conf/``machineid'' 9# after which you should do 10# config machineid 11# Machine generic makefile changes should be made in 12# /sys/arch/luna68k/conf/Makefile.luna68k 13# after which config should be rerun for all machines of that type. 14# To specify debugging, add the config line: makeoptions DEBUG="-g" 15# A better way is to specify -g only for a few files. 16# 17# makeoptions DEBUGLIST="uvm* trap if_*" 18 19MACHINE_ARCH=m68k 20USETOOLS?= no 21NEED_OWN_INSTALL_TARGET?=no 22.include <bsd.own.mk> 23 24## 25## (1) port identification 26## 27LUNA68K= $S/arch/luna68k 28GENASSYM_CONF= ${LUNA68K}/luna68k/genassym.cf 29 30## 31## (2) compile settings 32## 33CPPFLAGS+= -Dluna68k 34CFLAGS+= -msoft-float 35AFLAGS+= -x assembler-with-cpp 36 37## 38## (3) libkern and compat 39## 40OPT_MODULAR= %MODULAR% 41.if !empty(OPT_MODULAR) 42KERN_AS= obj 43.else 44KERN_AS= library 45.endif 46 47## 48## (4) local objects, compile rules, and dependencies 49## 50# for the Motorola 68040 Floating Point Software Product 51.include "$S/arch/m68k/fpsp/Makefile.inc" 52 53MD_OBJS= locore.o ${FPSP} 54MD_CFILES= 55MD_SFILES= 56 57locore.o: ${LUNA68K}/luna68k/locore.s assym.h 58 ${NORMAL_S} 59 60## 61## (5) link settings 62## 63LINKFORMAT= -N -T ldscript 64.if (${OBJECT_FMT} == "ELF") 65# Need to convert the kernel from ELF to a.out so that PROM can load it. 66 67SYSTEM_LD_HEAD_EXTRA+=; \ 68 ( cat ${LUNA68K}/conf/kern.ldscript.head ; \ 69 OBJDUMP=${OBJDUMP} ${HOST_SH} $S/conf/mkldscript.sh \ 70 ${SYSTEM_OBJ} ; \ 71 cat ${LUNA68K}/conf/kern.ldscript.tail ) > ldscript 72 73SYSTEM_LD_TAIL_EXTRA+=; \ 74 echo "${ELF2AOUT} $@ $@.aout" ; \ 75 ${ELF2AOUT} $@ $@.aout 76.endif 77 78## 79## (6) port specific target dependencies 80## 81 82# depend on CPU configuration 83machdep.c trap.o: Makefile 84 85copy.o copypage.o lock_stubs.o: assym.h 86 87## 88## (7) misc settings 89## 90 91## 92## (8) config(8) generated machinery 93## 94%INCLUDES 95 96%OBJS 97 98%CFILES 99 100%SFILES 101 102%LOAD 103 104%RULES 105 106## 107## (9) port independent kernel machinery 108## 109.include "$S/conf/Makefile.kern.inc" 110 111## 112## (10) Appending make options. 113## 114%MAKEOPTIONSAPPEND 115