cmake.bbclass as of oe-core 783fb88 defaults to out-of-tree builds. Use that
functionality directly to clean up the recipe.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Reviewed-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* it fails without it:
| -- Could NOT find Perl (missing: PERL_EXECUTABLE)
| CMake Error at tools/llvm-config/CMakeLists.txt:5 (message):
| Perl required but not found!
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* use split for llvm3.* like we did for llvm2.*
* use PACKAGESPLITFUNCS instead of populate_packages_prepend
* improve regexp in PACKAGES_DYNAMIC
* append ${LLVM_RELEASE} to split package name, otherwise sstate
will complain about multiple recipes trying to install pkgdata
* split also -staticdev and -dbg libs, PN-dbg and PN-staticdev
were huge, let old PN-dbg/PN-staticdev to RDEPEND on splitted
packages
* mesa packages libegl-gallium, libgbm-gallium, mesa-driver-pipe-swrast,
mesa-driver-pipe-vmwgfx, mesa-driver-swrast, mesa-driver-vmwgfx are
now depending only on libllvm3.2-llvm-3.2 (>= 3.2) instead of main
llvm3.2 package, but for llvm-3* it's not big improvement
(installed size wise), because libLLVM-3.2.so was creating 99% of that
size.
* there are still some huge packages:
llvm2.8-dbg is huge because BUILD_SHARED_LIBS is disabled for 2.8
causing all binaries in ${bindir}/.debug to contain big
static libs
llvm2.9 is missing, because it has BUILD_SHARED_LIBS enabled and
unlike 3.* it doesn't build static versions at all unless
explicitly requested
51M llvm-test/llvm3.2/3.2-r0/packages-split/libllvm3.2-llvmselectiondag-staticdev
53M llvm-test/llvm2.8/2.8-r3/packages-split/llvm2.8-dev
54M llvm-test/llvm2.8/2.8-r3/packages-split/libllvm2.8-llvmanalysis-staticdev
55M llvm-test/llvm3.3/3.3-r0/packages-split/libllvm3.3-llvmselectiondag-staticdev
62M llvm-test/llvm3.2/3.2-r0/packages-split/libllvm3.2-llvmanalysis-staticdev
63M llvm-test/llvm3.3/3.3-r0/packages-split/libllvm3.3-llvmanalysis-staticdev
67M llvm-test/llvm2.9/2.9-r3/packages-split/llvm2.9-dbg
90M llvm-test/llvm3.2/3.2-r0/packages-split/llvm3.2-dbg
92M llvm-test/llvm3.3/3.3-r0/packages-split/llvm3.3-dbg
102M llvm-test/llvm2.8/2.8-r3/packages-split/libllvm2.8-llvmcodegen-staticdev
127M llvm-test/llvm3.2/3.2-r0/packages-split/libllvm3.2-llvmcodegen-staticdev
133M llvm-test/llvm3.3/3.3-r0/packages-split/libllvm3.3-llvmcodegen-staticdev
190M llvm-test/llvm3.2/3.2-r0/packages-split/libllvm3.2-llvm-3.2-dbg
207M llvm-test/llvm3.3/3.3-r0/packages-split/libllvm3.3-llvm-3.3-dbg
628M llvm-test/llvm2.8/2.8-r3/packages-split/llvm2.8-dbg
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* there is llvm-config in binconfig/LLVM_RELEASE
* this one was creating conflict between different llvm*-dev versions
installed on target:
./llvm2.9/2.9-r3/packages-split/llvm2.9-dev/usr/bin/llvm2.9/llvm-config
./llvm2.9/2.9-r3/packages-split/llvm2.9-dev/usr/bin/llvm-config
./llvm2.8/2.8-r3/packages-split/llvm2.8-dev/usr/bin/llvm2.8/llvm-config
./llvm2.8/2.8-r3/packages-split/llvm2.8-dev/usr/bin/llvm-config
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* unlike other recipes where we have a rule to keep only one
version, llvm is different so we'll keep .inc files
* llvm.inc is shared by all, llvm[23].inc are separated because
2.* is built with cmake and 3.* with automake
* fix staticdev packaging and move it to shared llvm.inc
FILES_${PN}-static-dev = "${libdir}/${LLVM_DIR}/*.a"
(it's staticdev not static-dev)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>