1# $NetBSD: Makefile.amd64,v 1.30 2011/01/12 23:12:11 joerg 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/amd64/conf/``machineid'' 9# after which you should do 10# config machineid 11# Machine generic makefile changes should be made in 12# /sys/arch/amd64/conf/Makefile.amd64 13# after which config should be rerun for all machines of that type. 14# 15# To specify debugging, add the config line: makeoptions DEBUG="-g" 16# A better way is to specify -g only for a few files. 17# 18# makeoptions DEBUGLIST="uvm* trap if_*" 19 20MACHINE_ARCH=x86_64 21USETOOLS?= no 22NEED_OWN_INSTALL_TARGET?=no 23.include <bsd.own.mk> 24 25USE_SSP?= yes 26 27## 28## (1) port identification 29## 30AMD64= $S/arch/amd64 31GENASSYM_CONF= ${AMD64}/amd64/genassym.cf 32 33## 34## (2) compile settings 35## 36DEFCOPTS= -O2 37CPPFLAGS+= -Damd64 -Dx86_64 38CFLAGS+= -mcmodel=kernel 39CFLAGS+= -mno-red-zone 40AFLAGS+= -x assembler-with-cpp 41 42## 43## (3) libkern and compat 44## 45KERN_AS= obj 46 47## 48## (4) local objects, compile rules, and dependencies 49## 50MD_OBJS= locore.o vector.o copy.o spl.o 51MD_CFILES= 52MD_SFILES= ${AMD64}/amd64/locore.S ${AMD64}/amd64/vector.S \ 53 ${AMD64}/amd64/copy.S ${AMD64}/amd64/spl.S 54 55locore.o: ${AMD64}/amd64/locore.S assym.h 56 ${NORMAL_S} 57 58vector.o: ${AMD64}/amd64/vector.S assym.h 59 ${NORMAL_S} 60 61copy.o: ${AMD64}/amd64/copy.S assym.h 62 ${NORMAL_S} 63 64spl.o: ${AMD64}/amd64/spl.S assym.h 65 ${NORMAL_S} 66 67## 68## (5) link settings 69## 70TEXTADDR?= 0xffffffff80100000 71EXTRA_LINKFLAGS= -z max-page-size=0x100000 72LINKFLAGS_NORMAL= -X 73KERN_LDSCRIPT?= kern.ldscript 74LINKFORMAT= -T ${AMD64}/conf/${KERN_LDSCRIPT} 75 76## 77## (6) port specific target dependencies 78## 79 80# depend on CPU configuration 81locore.o machdep.o: Makefile 82 83acpi_wakeup_low.o amd64func.o busfunc.o cpufunc.o cpu_in_cksum.o: assym.h 84linux_support.o linux32_sigcode.o lock_stubs.o mptramp.o: assym.h 85netbsd32_sigcode.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## Include rules for ACPI wakecode 107.include "$S/arch/x86/acpi/Makefile.wakecode.inc" 108 109## 110## (9) port independent kernel machinery 111## 112.include "$S/conf/Makefile.kern.inc" 113 114## 115## (10) Appending make options. 116## 117%MAKEOPTIONSAPPEND 118