From bf3befadc1ec345b8b176d2f7bcdeac792e3cdd6 Mon Sep 17 00:00:00 2001 From: Sean Bruno Date: Thu, 30 Apr 2015 00:17:32 +0000 Subject: [PATCH] Fix native-xtools breakage when building a gcc enabled target on a clang enabled host. Build a one-off gperf and put it in the PATH for the rest of the target so the ONE call to gperf by the gcc build picks it up and DTRT. Reviewed by: imp --- Makefile.inc1 | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Makefile.inc1 b/Makefile.inc1 index 039c7e2c583f..a904bfd71257 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1535,7 +1535,22 @@ NXBMAKE= ${NXBENV} ${MAKE} \ MK_CLANG_EXTRAS=no MK_CLANG_FULL=no \ MK_LLDB=no +# native-xtools is the current target for qemu-user cross builds of ports +# via poudriere and the imgact_binmisc kernel module. +# For non-clang enabled targets that are still using the in tree gcc +# we must build a gperf binary for one instance of its Makefiles. On +# clang-enabled systems, the gperf binary is obsolete. native-xtools: .MAKE +.if ${MK_GCC_BOOTSTRAP} != "no" + mkdir -p ${OBJTREE}/gperf_for_gcc/usr/bin + ${_+_}@${ECHODIR} "===> ${_gperf} (obj,depend,all,install)"; \ + cd ${.CURDIR}/${_gperf} && \ + ${NXBMAKE} DIRPRFX=${_gperf}/ obj && \ + ${NXBMAKE} DIRPRFX=${_gperf}/ depend && \ + ${NXBMAKE} DIRPRFX=${_gperf}/ all && \ + ${NXBMAKE} DIRPRFX=${_gperf}/ DESTDIR=${OBJTREE}/gperf_for_gcc install + PATH=${PATH}:${OBJTREE}/gperf_for_gcc/usr/bin +.endif mkdir -p ${OBJTREE}/nxb-bin/bin mkdir -p ${OBJTREE}/nxb-bin/sbin mkdir -p ${OBJTREE}/nxb-bin/usr