Re: Clang now builds world and kernel, on i386 and amd64

From: Bartosz Stec <admin_at_kkip.pl>
Date: Wed, 22 Sep 2010 18:47:50 +0200
  On 2010-09-22 12:42, René Ladan wrote:
> 2010/9/22 Dimitry Andric<dim_at_freebsd.org>:
>> Hi,
>>
>> As of r212979, you should now be able to build world and kernel on i386
>> and amd64 with clang, without any additional patches!
>>
>> To do so, make sure you have updated your installed world to at least
>> r212904 (which has the most recently imported clang/llvm snapshot), and
>> put the following in /etc/src.conf:
>>
>> .if !defined(CC) || ${CC} == "cc"
>> CC=clang
>> .endif
>> .if !defined(CXX) || ${CXX} == "c++"
>> CXX=clang++
>> .endif
>> # Don't die on warnings
>> NO_WERROR=
>> WERROR=
>>
>
Just tried it. World has been builded without any problems, but stge 
kernel module failed to compile:

===> stge (all)
clang -O2 -pipe -march=athlon-xp -fno-strict-aliasing -D_KERNEL 
-DKLD_MODULE -nostdinc   -DHAVE_KERNEL_OPTION_HEADERS -include 
/usr/obj/usr/src/sys/ATHLON9/opt_global.h -I. -I_at_ -I_at_/contrib/altq 
-fno-common  -I/usr/obj/usr/src/sys/ATHLON9  -mno-mmx -mno-3dnow 
-mno-sse -mno-sse2 -mno-sse3 -ffreestanding -fstack-protector 
-std=iso9899:1999 -fstack-protector -Wall -Wredundant-decls 
-Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes 
-Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign 
-fformat-extensions -c /usr/src/sys/modules/stge/../../dev/stge/if_stge.c
/usr/src/sys/modules/stge/../../dev/stge/if_stge.c:1947:5: error: 
'break' statement not in loop or switch statement
                                 break;
                                 ^
/usr/src/sys/modules/stge/../../dev/stge/if_stge.c:1953:6: error: 
'break' statement not in loop or switch statement
                                         break

-- 
Bartosz Stec
Received on Wed Sep 22 2010 - 14:48:02 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:07 UTC