Makefile.luna68k revision 1.23
11.23Stsutsui# $NetBSD: Makefile.luna68k,v 1.23 2011/11/12 13:44:26 tsutsui Exp $ 21.1Snisimura 31.1Snisimura# Makefile for NetBSD 41.1Snisimura# 51.1Snisimura# This makefile is constructed from a machine description: 61.1Snisimura# config machineid 71.1Snisimura# Most changes should be made in the machine description 81.1Snisimura# /sys/arch/luna68k/conf/``machineid'' 91.1Snisimura# after which you should do 101.1Snisimura# config machineid 111.1Snisimura# Machine generic makefile changes should be made in 121.1Snisimura# /sys/arch/luna68k/conf/Makefile.luna68k 131.1Snisimura# after which config should be rerun for all machines of that type. 141.13Satatat# To specify debugging, add the config line: makeoptions DEBUG="-g" 151.13Satatat# A better way is to specify -g only for a few files. 161.13Satatat# 171.13Satatat# makeoptions DEBUGLIST="uvm* trap if_*" 181.10Sthorpej 191.10SthorpejMACHINE_ARCH=m68k 201.11SjmcUSETOOLS?= no 211.13SatatatNEED_OWN_INSTALL_TARGET?=no 221.11Sjmc.include <bsd.own.mk> 231.1Snisimura 241.13Satatat## 251.13Satatat## (1) port identification 261.13Satatat## 271.13SatatatLUNA68K= $S/arch/luna68k 281.17SchristosGENASSYM_CONF= ${LUNA68K}/luna68k/genassym.cf 291.13Satatat 301.13Satatat## 311.13Satatat## (2) compile settings 321.13Satatat## 331.13SatatatCPPFLAGS+= -Dluna68k 341.13SatatatCFLAGS+= -msoft-float 351.20SjoergAFLAGS+= -x assembler-with-cpp 361.13Satatat 371.13Satatat## 381.13Satatat## (3) libkern and compat 391.13Satatat## 401.13Satatat 411.13Satatat## 421.13Satatat## (4) local objects, compile rules, and dependencies 431.13Satatat## 441.13Satatat# for the Motorola 68040 Floating Point Software Product 451.23Stsutsui.include "$S/arch/m68k/fpsp/Makefile.inc" 461.1Snisimura 471.13SatatatMD_OBJS= locore.o ${FPSP} 481.13SatatatMD_CFILES= 491.13SatatatMD_SFILES= 501.1Snisimura 511.13Satatatlocore.o: ${LUNA68K}/luna68k/locore.s assym.h 521.13Satatat ${NORMAL_S} 531.1Snisimura 541.13Satatat## 551.13Satatat## (5) link settings 561.13Satatat## 571.21StsutsuiLINKFORMAT= -N -T ldscript 581.21Stsutsui.if (${OBJECT_FMT} == "ELF") 591.21Stsutsui# Need to convert the kernel from ELF to a.out so that PROM can load it. 601.21Stsutsui 611.21StsutsuiSYSTEM_LD_HEAD_EXTRA+=; \ 621.21Stsutsui ( cat ${LUNA68K}/conf/kern.ldscript.head ; \ 631.22Stsutsui OBJDUMP=${OBJDUMP} ${HOST_SH} $S/conf/mkldscript.sh \ 641.21Stsutsui ${SYSTEM_OBJ} ; \ 651.21Stsutsui cat ${LUNA68K}/conf/kern.ldscript.tail ) > ldscript 661.21Stsutsui 671.21StsutsuiSYSTEM_LD_TAIL_EXTRA+=; \ 681.21Stsutsui echo "${ELF2AOUT} $@ $@.aout" ; \ 691.21Stsutsui ${ELF2AOUT} $@ $@.aout 701.21Stsutsui.endif 711.13Satatat 721.13Satatat## 731.13Satatat## (6) port specific target dependencies 741.13Satatat## 751.1Snisimura 761.13Satatat# depend on CPU configuration 771.13Satatatmachdep.c trap.o: Makefile 781.1Snisimura 791.19Sjoergcopy.o copypage.o lock_stubs.o: assym.h 801.19Sjoerg 811.13Satatat## 821.13Satatat## (7) misc settings 831.13Satatat## 841.13Satatat 851.13Satatat## 861.13Satatat## (8) config(8) generated machinery 871.13Satatat## 881.13Satatat%INCLUDES 891.1Snisimura 901.1Snisimura%OBJS 911.1Snisimura 921.1Snisimura%CFILES 931.1Snisimura 941.1Snisimura%SFILES 951.1Snisimura 961.1Snisimura%LOAD 971.1Snisimura 981.13Satatat%RULES 991.1Snisimura 1001.13Satatat## 1011.13Satatat## (9) port independent kernel machinery 1021.13Satatat## 1031.13Satatat.include "$S/conf/Makefile.kern.inc" 1041.16Sthorpej 1051.16Sthorpej## 1061.16Sthorpej## (10) Appending make options. 1071.16Sthorpej## 1081.16Sthorpej%MAKEOPTIONSAPPEND 109