1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-16 10:20:30 +00:00

Fix kernel build ${MACHINE} path

$M should be the kernel machine src directory, ${MACHINE}. In most cases
${MACHINE} and ${MACHINE_CPUARCH} are the same, but this is not true for
pc98 and arm64.

It appears we previously set M=${MACHINE_CPUARCH} as a workaround to
accommodate pc98, where MACHINE_CPUARCH is pc98 but it uses
sys/i386/i386/genassym.c.

arm64 relies on this being set correctly, so update $M and add explicit
workarounds for pc98.

Differential Revision:	https://reviews.freebsd.org/D2307
Reviewed by:	andrew, imp
Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Ed Maste 2015-04-16 22:34:10 +00:00
parent dec32474f0
commit 7dd824c370
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=281627
4 changed files with 9 additions and 3 deletions

View File

@ -28,6 +28,9 @@ S= ./@
S= ../../..
.endif
.endif
LDSCRIPT_NAME?= ldscript.${MACHINE_ARCH}
.include "$S/conf/kern.pre.mk"
ASM_CFLAGS.mpboot.s= ${CLANG_NO_IAS34}

View File

@ -26,7 +26,7 @@ KODIR?= /boot/${KERNEL}
LDSCRIPT_NAME?= ldscript.$M
LDSCRIPT?= $S/conf/${LDSCRIPT_NAME}
M= ${MACHINE_CPUARCH}
M= ${MACHINE}
AWK?= awk
CP?= cp

View File

@ -425,10 +425,10 @@ genassym.o: opt_global.h
.endif
assym.s: ${SYSDIR}/kern/genassym.sh
sh ${SYSDIR}/kern/genassym.sh genassym.o > ${.TARGET}
genassym.o: ${SYSDIR}/${MACHINE_CPUARCH}/${MACHINE_CPUARCH}/genassym.c
genassym.o: ${SYSDIR}/${MACHINE}/${MACHINE}/genassym.c
genassym.o: ${SRCS:Mopt_*.h}
${CC} -c ${CFLAGS:N-fno-common} \
${SYSDIR}/${MACHINE_CPUARCH}/${MACHINE_CPUARCH}/genassym.c
${SYSDIR}/${MACHINE}/${MACHINE}/genassym.c
.endif
lint: ${SRCS}

3
sys/pc98/pc98/genassym.c Normal file
View File

@ -0,0 +1,3 @@
/* $FreeBSD$ */
#include "../../i386/i386/genassym.c"