From d20525351505edbd0bb87faaa101dd42f512ed90 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Tue, 21 Sep 2010 21:41:45 +0000 Subject: [PATCH] When building world with clang, for gnu/lib/libobjc, sys/boot/i386/boot2 and sys/boot/pc98/boot2, do not simply assign 'gcc' to CC, since compile flags are sometimes passed via this variable, for example during the build32 stage on amd64. This caused the 32-bit libobjc build on amd64 to fail. Instead, only replace the first instance of clang (if any, including optional path) with gcc, and leave the arguments alone. Approved-by: rpaulo (mentor) --- gnu/lib/libobjc/Makefile | 4 +--- sys/boot/i386/boot2/Makefile | 4 +--- sys/boot/pc98/boot2/Makefile | 4 +--- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/gnu/lib/libobjc/Makefile b/gnu/lib/libobjc/Makefile index 3513103f2d7c..80d0240356e2 100644 --- a/gnu/lib/libobjc/Makefile +++ b/gnu/lib/libobjc/Makefile @@ -16,9 +16,7 @@ SRCS= archive.c class.c encoding.c gc.c hash.c init.c linking.m misc.c \ selector.c sendmsg.c thr.c thr-objc.c exception.c # XXX: clang cannot compile libobjc yet -.if ${CC:T:Mclang} == "clang" -CC=gcc -.endif +CC:=${CC:C/^(.*\/)?clang$/gcc/1} INCS= encoding.h hash.h objc-api.h objc-decls.h objc-list.h objc.h runtime.h \ sarray.h thr.h typedstream.h NXConstStr.h Object.h Protocol.h diff --git a/sys/boot/i386/boot2/Makefile b/sys/boot/i386/boot2/Makefile index 74aab82de43b..b91a43bccc4e 100644 --- a/sys/boot/i386/boot2/Makefile +++ b/sys/boot/i386/boot2/Makefile @@ -3,9 +3,7 @@ .include # XXX: clang can compile the boot code just fine, but boot2 gets too big -.if ${CC:T:Mclang} == "clang" -CC=gcc -.endif +CC:=${CC:C/^(.*\/)?clang$/gcc/1} FILES= boot boot1 boot2 diff --git a/sys/boot/pc98/boot2/Makefile b/sys/boot/pc98/boot2/Makefile index 5f7355fd7838..dfd8607510c2 100644 --- a/sys/boot/pc98/boot2/Makefile +++ b/sys/boot/pc98/boot2/Makefile @@ -3,9 +3,7 @@ .include # XXX: clang can compile the boot code just fine, but boot2 gets too big -.if ${CC:T:Mclang} == "clang" -CC=gcc -.endif +CC:=${CC:C/^(.*\/)?clang$/gcc/1} FILES= boot boot1 boot2