summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2017-07-29 12:48:51 -0700
committerKhem Raj <raj.khem@gmail.com>2017-07-30 07:16:20 -0700
commitcaf39e95fedcd346cf3a72db260e35fcb4ee343d (patch)
tree87524183c4a98d3ab34d872c3c1d1e1c00ede3fb
parenta099b0da53fd6b11c6732b391f16620327756cb8 (diff)
downloadmeta-clang-caf39e95fedcd346cf3a72db260e35fcb4ee343d.tar.gz
recipes: Use ninja generator on top of cmake
ninja is in OE-Core now Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--recipes-devtools/clang/clang_git.bb11
-rw-r--r--recipes-devtools/clang/compiler-rt_git.bb12
-rw-r--r--recipes-devtools/clang/libcxx_git.bb11
-rw-r--r--recipes-devtools/clang/libcxxabi_git.bb11
-rw-r--r--recipes-devtools/clang/lld_git.bb12
-rw-r--r--recipes-devtools/clang/lldb_git.bb16
-rw-r--r--recipes-devtools/clang/llvm-libunwind_git.bb11
-rw-r--r--recipes-devtools/clang/openmp_git.bb12
8 files changed, 79 insertions, 17 deletions
diff --git a/recipes-devtools/clang/clang_git.bb b/recipes-devtools/clang/clang_git.bb
index 0b1aa49..e0e9c21 100644
--- a/recipes-devtools/clang/clang_git.bb
+++ b/recipes-devtools/clang/clang_git.bb
@@ -72,6 +72,7 @@ EXTRA_OECMAKE="-DLLVM_ENABLE_RTTI=True \
72 -DCMAKE_SYSTEM_NAME=Linux \ 72 -DCMAKE_SYSTEM_NAME=Linux \
73 -DCMAKE_BUILD_TYPE=Release \ 73 -DCMAKE_BUILD_TYPE=Release \
74 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \ 74 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \
75 -G Ninja \
75" 76"
76 77
77EXTRA_OECMAKE_append_class-native = "\ 78EXTRA_OECMAKE_append_class-native = "\
@@ -94,13 +95,21 @@ EXTRA_OECMAKE_append_class-target = "\
94" 95"
95EXTRA_OEMAKE += "REQUIRES_RTTI=1 VERBOSE=1" 96EXTRA_OEMAKE += "REQUIRES_RTTI=1 VERBOSE=1"
96 97
97DEPENDS = "zlib libffi libxml2" 98DEPENDS = "zlib libffi libxml2 ninja-native"
98DEPENDS_remove_class-nativesdk = "nativesdk-binutils nativesdk-compiler-rt nativesdk-libcxx nativesdk-llvm-unwind" 99DEPENDS_remove_class-nativesdk = "nativesdk-binutils nativesdk-compiler-rt nativesdk-libcxx nativesdk-llvm-unwind"
99DEPENDS_append_class-nativesdk = " clang-native virtual/${TARGET_PREFIX}binutils-crosssdk virtual/${TARGET_PREFIX}gcc-crosssdk virtual/${TARGET_PREFIX}g++-crosssdk" 100DEPENDS_append_class-nativesdk = " clang-native virtual/${TARGET_PREFIX}binutils-crosssdk virtual/${TARGET_PREFIX}gcc-crosssdk virtual/${TARGET_PREFIX}g++-crosssdk"
100DEPENDS_append_class-target = " clang-cross-${TARGET_ARCH} ${@bb.utils.contains('TOOLCHAIN', 'gcc', 'virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++', '', d)}" 101DEPENDS_append_class-target = " clang-cross-${TARGET_ARCH} ${@bb.utils.contains('TOOLCHAIN', 'gcc', 'virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++', '', d)}"
101 102
102RRECOMMENDS_${PN} = "binutils" 103RRECOMMENDS_${PN} = "binutils"
103 104
105do_compile() {
106 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE}
107}
108
109do_install() {
110 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install
111}
112
104do_install_append_class-native () { 113do_install_append_class-native () {
105 install -Dm 0755 ${B}/bin/clang-tblgen ${D}${bindir}/clang-tblgen 114 install -Dm 0755 ${B}/bin/clang-tblgen ${D}${bindir}/clang-tblgen
106 for f in `find ${D}${bindir} -executable -type f -not -type l`; do 115 for f in `find ${D}${bindir} -executable -type f -not -type l`; do
diff --git a/recipes-devtools/clang/compiler-rt_git.bb b/recipes-devtools/clang/compiler-rt_git.bb
index 0cfe603..207b8e4 100644
--- a/recipes-devtools/clang/compiler-rt_git.bb
+++ b/recipes-devtools/clang/compiler-rt_git.bb
@@ -30,6 +30,8 @@ BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt"
30BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" 30BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx"
31BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" 31BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind"
32 32
33DEPENDS += "ninja-native"
34
33S = "${WORKDIR}/git" 35S = "${WORKDIR}/git"
34 36
35inherit cmake pkgconfig pythonnative 37inherit cmake pkgconfig pythonnative
@@ -42,6 +44,7 @@ HF[vardepvalue] = "${HF}"
42EXTRA_OECMAKE += "-DCOMPILER_RT_STANDALONE_BUILD=ON \ 44EXTRA_OECMAKE += "-DCOMPILER_RT_STANDALONE_BUILD=ON \
43 -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=${HOST_ARCH}${HF}${HOST_VENDOR}-${HOST_OS} \ 45 -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=${HOST_ARCH}${HF}${HOST_VENDOR}-${HOST_OS} \
44 -DCOMPILER_RT_BUILD_XRAY=OFF \ 46 -DCOMPILER_RT_BUILD_XRAY=OFF \
47 -G Ninja \
45" 48"
46 49
47EXTRA_OECMAKE_append_class-nativesdk = "\ 50EXTRA_OECMAKE_append_class-nativesdk = "\
@@ -51,6 +54,15 @@ EXTRA_OECMAKE_append_class-nativesdk = "\
51 54
52EXTRA_OECMAKE_append_libc-musl = " -DCOMPILER_RT_BUILD_SANITIZERS=OFF -DCOMPILER_RT_BUILD_XRAY=OFF " 55EXTRA_OECMAKE_append_libc-musl = " -DCOMPILER_RT_BUILD_SANITIZERS=OFF -DCOMPILER_RT_BUILD_XRAY=OFF "
53 56
57do_compile() {
58 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE}
59}
60
61do_install() {
62 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install
63}
64
65
54do_install_append () { 66do_install_append () {
55 install -d ${D}${libdir}/clang/${PV}/lib/linux 67 install -d ${D}${libdir}/clang/${PV}/lib/linux
56 if [ -d ${D}${libdir}/linux ]; then 68 if [ -d ${D}${libdir}/linux ]; then
diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb
index 2cbcf62..da0d44c 100644
--- a/recipes-devtools/clang/libcxx_git.bb
+++ b/recipes-devtools/clang/libcxx_git.bb
@@ -12,7 +12,7 @@ require common.inc
12inherit cmake pythonnative 12inherit cmake pythonnative
13PV .= "+git${SRCPV}" 13PV .= "+git${SRCPV}"
14 14
15DEPENDS += "libcxxabi" 15DEPENDS += "libcxxabi ninja-native"
16BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" 16BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx"
17BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" 17BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind"
18BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt" 18BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt"
@@ -41,11 +41,20 @@ EXTRA_OECMAKE += "-DLIBCXX_CXX_ABI=libcxxabi \
41 -DLLVM_PATH=${S} \ 41 -DLLVM_PATH=${S} \
42 -DLIBCXX_ENABLE_SHARED=ON \ 42 -DLIBCXX_ENABLE_SHARED=ON \
43 -DLIBCXX_ENABLE_EXCEPTIONS=ON \ 43 -DLIBCXX_ENABLE_EXCEPTIONS=ON \
44 -G Ninja \
44 ${S}/projects/libcxx \ 45 ${S}/projects/libcxx \
45" 46"
46 47
47EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=True " 48EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=True "
48 49
50do_compile() {
51 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE}
52}
53
54do_install() {
55 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install
56}
57
49ALLOW_EMPTY_${PN} = "1" 58ALLOW_EMPTY_${PN} = "1"
50 59
51BBCLASSEXTEND = "native nativesdk" 60BBCLASSEXTEND = "native nativesdk"
diff --git a/recipes-devtools/clang/libcxxabi_git.bb b/recipes-devtools/clang/libcxxabi_git.bb
index 7ca8ccb..fa10712 100644
--- a/recipes-devtools/clang/libcxxabi_git.bb
+++ b/recipes-devtools/clang/libcxxabi_git.bb
@@ -14,7 +14,7 @@ TOOLCHAIN = "clang"
14inherit cmake 14inherit cmake
15PV .= "+git${SRCPV}" 15PV .= "+git${SRCPV}"
16 16
17DEPENDS += "compiler-rt" 17DEPENDS += "compiler-rt ninja-native"
18BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" 18BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx"
19BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" 19BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind"
20 20
@@ -43,10 +43,19 @@ EXTRA_OECMAKE += "-DLIBCXXABI_LIBCXX_PATH=${S}/projects/libcxx \
43 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \ 43 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \
44 -DCXX_SUPPORTS_CXX11=ON \ 44 -DCXX_SUPPORTS_CXX11=ON \
45 -DLIBCXXABI_ENABLE_SHARED=ON \ 45 -DLIBCXXABI_ENABLE_SHARED=ON \
46 -G Ninja \
46 ${S}/projects/libcxxabi \ 47 ${S}/projects/libcxxabi \
47" 48"
48CXXFLAGS_append_libc-musl = " -D_LIBCPP_HAS_MUSL_LIBC " 49CXXFLAGS_append_libc-musl = " -D_LIBCPP_HAS_MUSL_LIBC "
49 50
51do_compile() {
52 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE}
53}
54
55do_install() {
56 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install
57}
58
50ALLOW_EMPTY_${PN} = "1" 59ALLOW_EMPTY_${PN} = "1"
51 60
52BBCLASSEXTEND = "native nativesdk" 61BBCLASSEXTEND = "native nativesdk"
diff --git a/recipes-devtools/clang/lld_git.bb b/recipes-devtools/clang/lld_git.bb
index b9002a2..2bc2ee2 100644
--- a/recipes-devtools/clang/lld_git.bb
+++ b/recipes-devtools/clang/lld_git.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "http://lld.llvm.org/"
6LICENSE = "MIT | NCSA" 6LICENSE = "MIT | NCSA"
7SECTION = "devel" 7SECTION = "devel"
8 8
9DEPENDS += "clang-native libcxx" 9DEPENDS += "clang-native libcxx ninja-native"
10 10
11require clang.inc 11require clang.inc
12require common.inc 12require common.inc
@@ -32,17 +32,19 @@ S = "${WORKDIR}/git"
32 32
33OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH" 33OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
34EXTRA_OECMAKE = "\ 34EXTRA_OECMAKE = "\
35 -DCMAKE_CROSSCOMPILING=1 \
35 -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ 36 -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
37 -DCMAKE_BUILD_TYPE=Release \
38 -G Ninja \
39 ${S} \
36" 40"
37CXXFLAGS_append_toolchain-clang = " -stdlib=libc++" 41CXXFLAGS_append_toolchain-clang = " -stdlib=libc++"
38 42
39do_compile() { 43do_compile() {
40 cd ${B}/tools/lld 44 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} lld
41 base_do_compile VERBOSE=1
42} 45}
43 46
44do_install() { 47do_install() {
45 cd ${B}/tools/lld 48 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} tools/lld/install
46 oe_runmake 'DESTDIR=${D}' install
47} 49}
48BBCLASSEXTEND = "native nativesdk" 50BBCLASSEXTEND = "native nativesdk"
diff --git a/recipes-devtools/clang/lldb_git.bb b/recipes-devtools/clang/lldb_git.bb
index 364639b..a6a1a9d 100644
--- a/recipes-devtools/clang/lldb_git.bb
+++ b/recipes-devtools/clang/lldb_git.bb
@@ -6,13 +6,13 @@ HOMEPAGE = "http://lldb.llvm.org/"
6LICENSE = "MIT | NCSA" 6LICENSE = "MIT | NCSA"
7SECTION = "devel" 7SECTION = "devel"
8 8
9DEPENDS += "clang-native zlib libxml2" 9DEPENDS += "clang-native zlib libxml2 ninja-native"
10 10
11FILESPATH =. "${FILE_DIRNAME}/clang:" 11FILESPATH =. "${FILE_DIRNAME}/clang:"
12require clang.inc 12require clang.inc
13require common.inc 13require common.inc
14 14
15inherit cmake 15inherit cmake pkgconfig
16PV .= "+git${SRCPV}" 16PV .= "+git${SRCPV}"
17 17
18LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=${LLVMMD5SUM}; \ 18LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=${LLVMMD5SUM}; \
@@ -41,6 +41,7 @@ OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
41 41
42EXTRA_OECMAKE="\ 42EXTRA_OECMAKE="\
43 -DCMAKE_CROSSCOMPILING=1 \ 43 -DCMAKE_CROSSCOMPILING=1 \
44 -DLLVM_ENABLE_CXX11=ON \
44 -DLLVM_BUILD_LLVM_DYLIB=ON \ 45 -DLLVM_BUILD_LLVM_DYLIB=ON \
45 -DBUILD_SHARED_LIBS=OFF \ 46 -DBUILD_SHARED_LIBS=OFF \
46 -DLLVM_BUILD_LLVM_DYLIB=ON \ 47 -DLLVM_BUILD_LLVM_DYLIB=ON \
@@ -51,20 +52,19 @@ EXTRA_OECMAKE="\
51 -DLLVM_ENABLE_TERMINFO=0 \ 52 -DLLVM_ENABLE_TERMINFO=0 \
52 -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ 53 -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
53 -DCLANG_TABLEGEN=${STAGING_BINDIR_NATIVE}/clang-tblgen \ 54 -DCLANG_TABLEGEN=${STAGING_BINDIR_NATIVE}/clang-tblgen \
55 -DCMAKE_BUILD_TYPE=Release \
56 -G Ninja \
57 ${S} \
54 " 58 "
55 59
56EXTRA_OEMAKE = "VERBOSE=1" 60EXTRA_OEMAKE = "VERBOSE=1"
57 61
58LDFLAGS += "-lxml2"
59
60do_compile() { 62do_compile() {
61 cd ${B}/tools/lldb 63 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} lldb
62 oe_runmake VERBOSE=1
63} 64}
64 65
65do_install() { 66do_install() {
66 cd ${B}/tools/lldb 67 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} tools/lldb/install
67 oe_runmake 'DESTDIR=${D}' install
68} 68}
69 69
70INSANE_SKIP_${PN}-dbg = "libdir" 70INSANE_SKIP_${PN}-dbg = "libdir"
diff --git a/recipes-devtools/clang/llvm-libunwind_git.bb b/recipes-devtools/clang/llvm-libunwind_git.bb
index 04a4515..cfbff35 100644
--- a/recipes-devtools/clang/llvm-libunwind_git.bb
+++ b/recipes-devtools/clang/llvm-libunwind_git.bb
@@ -12,7 +12,7 @@ require common.inc
12inherit cmake 12inherit cmake
13PV .= "+git${SRCPV}" 13PV .= "+git${SRCPV}"
14 14
15DEPENDS += "libcxx" 15DEPENDS += "libcxx ninja-native"
16BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" 16BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind"
17BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt" 17BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt"
18PROVIDES += "libunwind" 18PROVIDES += "libunwind"
@@ -48,12 +48,21 @@ EXTRA_OECMAKE += "-DLIBCXXABI_LIBCXX_PATH=${S}/projects/libcxxabi \
48 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \ 48 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \
49 -DLIBUNWIND_ENABLE_SHARED=ON \ 49 -DLIBUNWIND_ENABLE_SHARED=ON \
50 -DUNIX=True \ 50 -DUNIX=True \
51 -G Ninja \
51 ${S}/projects/libunwind \ 52 ${S}/projects/libunwind \
52" 53"
53do_configure_prepend () { 54do_configure_prepend () {
54 (cd ${S}/projects/libunwind/include && ln -sf ../../libcxxabi/include/__cxxabi_config.h) 55 (cd ${S}/projects/libunwind/include && ln -sf ../../libcxxabi/include/__cxxabi_config.h)
55} 56}
56 57
58do_compile() {
59 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE}
60}
61
62do_install() {
63 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install
64}
65
57ALLOW_EMPTY_${PN} = "1" 66ALLOW_EMPTY_${PN} = "1"
58 67
59RPROVIDES_${PN} = "libunwind" 68RPROVIDES_${PN} = "libunwind"
diff --git a/recipes-devtools/clang/openmp_git.bb b/recipes-devtools/clang/openmp_git.bb
index d7e0875..8ca9f32 100644
--- a/recipes-devtools/clang/openmp_git.bb
+++ b/recipes-devtools/clang/openmp_git.bb
@@ -8,6 +8,8 @@ SECTION = "base"
8 8
9require clang.inc 9require clang.inc
10 10
11DEPENDS += "ninja-native"
12
11TOOLCHAIN = "clang" 13TOOLCHAIN = "clang"
12 14
13PV .= "+git${SRCPV}" 15PV .= "+git${SRCPV}"
@@ -28,8 +30,18 @@ S = "${WORKDIR}/git/runtime"
28 30
29inherit cmake pkgconfig perlnative 31inherit cmake pkgconfig perlnative
30 32
33EXTRA_OECMAKE = "-G Ninja"
34
31THUMB_TUNE_CCARGS = "" 35THUMB_TUNE_CCARGS = ""
32 36
37do_compile() {
38 NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE}
39}
40
41do_install() {
42 NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install
43}
44
33FILES_SOLIBSDEV = "" 45FILES_SOLIBSDEV = ""
34FILES_${PN} += "${libdir}/lib*${SOLIBSDEV}" 46FILES_${PN} += "${libdir}/lib*${SOLIBSDEV}"
35INSANE_SKIP_${PN} = "dev-so" 47INSANE_SKIP_${PN} = "dev-so"