From c43e65c9b6e6325777d9a08a201103f14b31d362 Mon Sep 17 00:00:00 2001 From: Bruce Richardson Date: Tue, 8 Jul 2014 00:36:58 +0100 Subject: [PATCH] config: add clang Add compilation support for clang on Linux and FreeBSD. clang is the default compiler on FreeBSD 10. Signed-off-by: Bruce Richardson Tested-by: Zhaochen Zhan [Thomas: update comments] Acked-by: Thomas Monjalon --- config/common_bsdapp | 2 +- config/common_linuxapp | 2 +- config/defconfig_x86_64-native-bsdapp-clang | 41 +++++++++++++++++++ config/defconfig_x86_64-native-linuxapp-clang | 41 +++++++++++++++++++ 4 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 config/defconfig_x86_64-native-bsdapp-clang create mode 100644 config/defconfig_x86_64-native-linuxapp-clang diff --git a/config/common_bsdapp b/config/common_bsdapp index 943dce8f1e..3fbba874d1 100644 --- a/config/common_bsdapp +++ b/config/common_bsdapp @@ -63,7 +63,7 @@ CONFIG_RTE_EXEC_ENV_BSDAPP=y # ## ## The compiler we use. -## Can be gcc or icc. +## Can be gcc, icc or clang. ## #CONFIG_RTE_TOOLCHAIN="gcc" #CONFIG_RTE_TOOLCHAIN_GCC=y diff --git a/config/common_linuxapp b/config/common_linuxapp index 7bf5d80d4e..9047975b59 100644 --- a/config/common_linuxapp +++ b/config/common_linuxapp @@ -63,7 +63,7 @@ CONFIG_RTE_EXEC_ENV_LINUXAPP=y # ## ## The compiler we use. -## Can be gcc or icc. +## Can be gcc, icc or clang. ## #CONFIG_RTE_TOOLCHAIN="gcc" #CONFIG_RTE_TOOLCHAIN_GCC=y diff --git a/config/defconfig_x86_64-native-bsdapp-clang b/config/defconfig_x86_64-native-bsdapp-clang new file mode 100644 index 0000000000..3305cbd8af --- /dev/null +++ b/config/defconfig_x86_64-native-bsdapp-clang @@ -0,0 +1,41 @@ +# BSD LICENSE +# +# Copyright(c) 2010-2014 Intel Corporation. All rights reserved. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +#include "common_bsdapp" + +CONFIG_RTE_MACHINE="native" + +CONFIG_RTE_ARCH="x86_64" +CONFIG_RTE_ARCH_X86_64=y + +CONFIG_RTE_TOOLCHAIN="clang" +CONFIG_RTE_TOOLCHAIN_CLANG=y diff --git a/config/defconfig_x86_64-native-linuxapp-clang b/config/defconfig_x86_64-native-linuxapp-clang new file mode 100644 index 0000000000..bbda08058b --- /dev/null +++ b/config/defconfig_x86_64-native-linuxapp-clang @@ -0,0 +1,41 @@ +# BSD LICENSE +# +# Copyright(c) 2010-2014 Intel Corporation. All rights reserved. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +#include "common_linuxapp" + +CONFIG_RTE_MACHINE="native" + +CONFIG_RTE_ARCH="x86_64" +CONFIG_RTE_ARCH_X86_64=y + +CONFIG_RTE_TOOLCHAIN="clang" +CONFIG_RTE_TOOLCHAIN_CLANG=y -- 2.20.1