Makefile.sparc64 revision 1.44
11.44Satatat# 	$NetBSD: Makefile.sparc64,v 1.44 2001/12/09 05:00:51 atatat Exp $
21.1Seeh
31.1Seeh# Makefile for NetBSD
41.1Seeh#
51.1Seeh# This makefile is constructed from a machine description:
61.1Seeh#	config machineid
71.1Seeh# Most changes should be made in the machine description
81.1Seeh#	/sys/arch/sparc64/conf/``machineid''
91.1Seeh# after which you should do
101.1Seeh#	config machineid
111.1Seeh# Machine generic makefile changes should be made in
121.1Seeh#	/sys/arch/sparc64/conf/Makefile.sparc64
131.1Seeh# after which config should be rerun for all machines of that type.
141.44Satatat#
151.44Satatat# To specify debugging, add the config line: makeoptions DEBUG="-g"
161.44Satatat# A better way is to specify -g only for a few files.
171.44Satatat#
181.44Satatat#	makeoptions DEBUGLIST="uvm* trap if_*"
191.1Seeh
201.41Sthorpej# Default to 32-bit.  Set the MACHINE_ARCH accordingly, using either
211.41Sthorpej# the 32-bit or 64-bit toolchain.
221.41SthorpejLP64?=	no
231.41Sthorpej.if ${LP64} == "yes"
241.40SthorpejMACHINE_ARCH=sparc64
251.41Sthorpej.else
261.41SthorpejMACHINE_ARCH=sparc
271.41Sthorpej.endif
281.42Sjmc
291.42SjmcUSETOOLS?=	no
301.44SatatatNEED_OWN_INSTALL_TARGET?=no
311.39Sthorpej.include <bsd.own.mk>
321.39Sthorpej
331.44Satatat##
341.44Satatat## (1) port identification
351.44Satatat##
361.1SeehSPARC64=	$S/arch/sparc64
371.44SatatatGENASSYM=	${SPARC64}/sparc64/genassym.cf
381.1Seeh
391.44Satatat##
401.44Satatat## (2) compile settings
411.44Satatat##
421.44SatatatCPPFLAGS+=	-Dsparc64
431.40Sthorpej.if ${LP64} == "yes"
441.40SthorpejCPPFLAGS+=	-D_LP64
451.40Sthorpej.endif
461.44SatatatCFLAGS+=	-Wa,-Av9a -mno-fpu
471.30Seeh.if defined(PROF)
481.30Seeh# We need to run the compiler in medlow memory model.
491.40SthorpejCFLAGS+=	-mcmodel=medlow
501.30Seeh.endif
511.44SatatatAFLAGS+=	-x assembler-with-cpp -traditional-cpp -Wa,-Av9a
521.31Seeh
531.44SatatatNOOPT_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -O0 -c $<
541.44Satatat
551.44Satatat##
561.44Satatat## (3) libkern and compat
571.44Satatat##
581.44Satatat# KERN_AS=	obj	# bcopy, bzero, memcpy, memset, etc. are in locore.s
591.44Satatat
601.44Satatat##
611.44Satatat## (4) local objects, compile rules, and dependencies
621.44Satatat##
631.44SatatatMD_OBJS=	locore.o
641.44SatatatMD_CFILES=
651.44SatatatMD_SFILES=	${SPARC64}/sparc64/locore.s
661.31Seeh
671.44Satatatlocore.o: ${SPARC64}/sparc64/locore.s assym.h
681.44Satatat	${NORMAL_S}
691.34Smrg
701.44Satatat##
711.44Satatat## (5) link settings
721.44Satatat##
731.44SatatatTEXTADDR?=	01000000
741.44SatatatDATAADDR?=	01800000
751.44SatatatLINKFORMAT=	-n -T ${SPARC64}/conf/${KERN_LDSCRIPT}
761.40Sthorpej.if ${LP64} == "yes"
771.34SmrgKERN_LDSCRIPT?= kern.ldscript
781.35Smrg.else
791.35SmrgKERN_LDSCRIPT?= kern32.ldscript
801.35Smrg.endif
811.31Seeh
821.44Satatat##
831.44Satatat## (6) port specific target dependencies
841.44Satatat##
851.10Smrg
861.44Satatat# depend on CPU configuration
871.44Satatatbwtwo.o cgsix.o cgthree.o cgtwo.o cons.o dma.o esp.o fb.o if_ie.o: Makefile
881.44Satatatms.c obio.o zs.c autoconf.o clock.o cpu.o disksubr.o locore.o: Makefile
891.44Satatatmachdep.o mem.o openprom.o pmap.o vm_machdep.o: Makefile
901.44Satatat
911.44Satatat##
921.44Satatat## (7) misc settings
931.44Satatat##
941.44Satatat
951.44Satatat##
961.44Satatat## (8) config(8) generated machinery
971.44Satatat##
981.10Smrg%INCLUDES
991.1Seeh
1001.1Seeh%OBJS
1011.1Seeh
1021.1Seeh%CFILES
1031.1Seeh
1041.1Seeh%SFILES
1051.1Seeh
1061.1Seeh%LOAD
1071.2Smrg
1081.44Satatat%RULES
1091.1Seeh
1101.44Satatat##
1111.44Satatat## (9) port independent kernel machinery
1121.44Satatat##
1131.44Satatat.include "$S/conf/Makefile.kern.inc"
114