Makefile.powerpc revision 1.26
11.26Smatt#	$NetBSD: Makefile.powerpc,v 1.26 2003/02/19 23:55:48 matt Exp $
21.1Sws#
31.1Sws# Makefile for NetBSD
41.1Sws#
51.1Sws# This makefile is constructed from a machine description:
61.1Sws#	config machineid
71.1Sws# Most changes should be made in the machine description
81.1Sws#	/sys/arch/powerpc/conf/``machineid''
91.1Sws# after which you should do
101.1Sws#	config machineid
111.1Sws# Machine generic makefile changes should be made in
121.1Sws#	/sys/arch/powerpc/conf/Makefile.powerpc
131.1Sws# after which config should be rerun for all machines of that type.
141.1Sws#
151.20Satatat# To specify debugging, add the config line: makeoptions DEBUG="-g"
161.20Satatat# A better way is to specify -g only for a few files.
171.1Sws#
181.20Satatat#	makeoptions DEBUGLIST="uvm* trap if_*"
191.18Sthorpej
201.18SthorpejMACHINE_ARCH=powerpc
211.19SjmcUSETOOLS?=	no
221.20SatatatNEED_OWN_INSTALL_TARGET?=no
231.16Sthorpej.include <bsd.own.mk>
241.1Sws
251.20Satatat##
261.20Satatat## (1) port identification
271.20Satatat##
281.17SthorpejTHISPPC=	$S/arch/${MACHINE}
291.14SmattPOWERPC=	$S/arch/powerpc
301.22Smatt.if exists(${THISPPC}/${MACHINE}/genassym.cf)
311.20SatatatGENASSYM=	${THISPPC}/${MACHINE}/genassym.cf
321.22Smatt.else
331.22SmattGENASSYM=	${POWERPC}/${PPCDIR}/genassym.cf
341.22Smatt.endif
351.20Satatat.-include "${THISPPC}/conf/Makefile.${MACHINE}.inc"
361.1Sws
371.20Satatat##
381.20Satatat## (2) compile settings
391.20Satatat##
401.20SatatatCPPFLAGS+=	-D${MACHINE}
411.20SatatatCWARNFLAGS+=	-Wreturn-type
421.20SatatatCFLAGS+=	-msoft-float ${CCPUOPTS}
431.20SatatatAFLAGS+=	${AOPTS}
441.20Satatat
451.20Satatat##
461.20Satatat## (3) libkern and compat
471.20Satatat##
481.26SmattKERN_AS=	obj
491.20Satatat
501.20Satatat##
511.20Satatat## (4) local objects, compile rules, and dependencies
521.20Satatat##
531.24Sscw.if !defined(SYSTEM_FIRST_OBJ)
541.24SscwSYSTEM_FIRST_OBJ= locore.o
551.24Sscw.endif
561.24Sscw.if !defined(SYSTEM_FIRST_SFILE)
571.24SscwSYSTEM_FIRST_SFILE= ${THISPPC}/${MACHINE}/locore.S
581.24Sscw.endif
591.24SscwMD_OBJS=	${SYSTEM_FIRST_OBJ}
601.20SatatatMD_CFILES=
611.24SscwMD_SFILES=	${SYSTEM_FIRST_SFILE}
621.15Ssimonb
631.24Sscw${SYSTEM_FIRST_OBJ}: ${SYSTEM_FIRST_SFILE} assym.h
641.20Satatat	${NORMAL_S}
651.1Sws
661.20Satatat##
671.20Satatat## (5) link settings
681.20Satatat##
691.20SatatatTEXTADDR?=	0x100000
701.20SatatatLINKFORMAT=	-N
711.20SatatatENTRYPOINT=	__start
721.14Smatt
731.25Saugustss.if defined(NEED_SYMTAB)
741.25SaugustssSYSTEM_LD_TAIL_EXTRA=; \
751.25Saugustss		echo ${DBSYM} $@; \
761.25Saugustss		${DBSYM} $@
771.25Saugustss.endif
781.25Saugustss
791.20Satatat.if defined(NEED_SREC)
801.25SaugustssSYSTEM_LD_TAIL_EXTRA+=; \
811.20Satatat		${OBJCOPY} -v -O srec $@ $@.srec
821.23Saugustss.endif
831.23Saugustss
841.23Saugustss.if defined(NEED_BINARY)
851.25SaugustssSYSTEM_LD_TAIL_EXTRA+=; \
861.23Saugustss		${OBJCOPY} -v -O binary $@ $@.bin
871.1Sws.endif
881.1Sws
891.20Satatat##
901.20Satatat## (6) port specific target dependencies
911.20Satatat##
921.1Sws
931.20Satatat# depend on CPU configuration
941.20Satatatlocore.o machdep.o: Makefile
951.1Sws
961.20Satatat##
971.20Satatat## (7) misc settings
981.20Satatat##
991.20Satatat
1001.20Satatat##
1011.20Satatat## (8) config(8) generated machinery
1021.20Satatat##
1031.20Satatat%INCLUDES
1041.1Sws
1051.1Sws%OBJS
1061.1Sws
1071.1Sws%CFILES
1081.1Sws
1091.1Sws%SFILES
1101.1Sws
1111.1Sws%LOAD
1121.1Sws
1131.20Satatat%RULES
1141.1Sws
1151.20Satatat##
1161.20Satatat## (9) port independent kernel machinery
1171.20Satatat##
1181.20Satatat.include "$S/conf/Makefile.kern.inc"
119