[oe] [meta-oe][PATCHv2] llvm: Add recipe for llvm-3.7.0.

Martin Jansa martin.jansa at gmail.com
Fri Oct 30 19:51:37 UTC 2015


On Fri, Oct 30, 2015 at 11:13:28AM -0700, Philip Balister wrote:
> From: Philip Balister <philip at opensdr.com>
> 
> This version builds in parallel with the 3.3 recipe. I had to use the
> mesa llvmpipe driver, which required updates to llvm and mesa before it
> worked. With updates, I succesfully used the mesa llvmpipe driver.
> 
>  * Move the licence file checksum to the version specific part of the recipe
>  * License changed for 3.7.0 due to year change and adding related software
>  * llvm source is now compressed with xz not gz.
>  * Disable compiler version check since it checks the host compiler.

I made one more change in master-next already, I've renamed it to 
llvm3.7_3.7.0.bb

I don't know if there will be 3.7.1 release, but I would assume that 3.7
series will be ABI compatible, so users of this won't need to update
DEPENDS when switching from 3.7.0 to 3.7.1 (if that exists).

OK?

> Signed-off-by: Philip Balister <philip at opensdr.com>
> ---
>  meta-oe/recipes-core/llvm/llvm.inc           |  6 +++---
>  meta-oe/recipes-core/llvm/llvm3.3_3.3.bb     |  4 ++++
>  meta-oe/recipes-core/llvm/llvm3.7.0_3.7.0.bb | 24 ++++++++++++++++++++++++
>  3 files changed, 31 insertions(+), 3 deletions(-)
>  create mode 100644 meta-oe/recipes-core/llvm/llvm3.7.0_3.7.0.bb
> 
> diff --git a/meta-oe/recipes-core/llvm/llvm.inc b/meta-oe/recipes-core/llvm/llvm.inc
> index 04c87aa..c9a4ce4 100644
> --- a/meta-oe/recipes-core/llvm/llvm.inc
> +++ b/meta-oe/recipes-core/llvm/llvm.inc
> @@ -23,7 +23,6 @@ HOMEPAGE = "http://llvm.org"
>  # 3-clause BSD-like
>  # University of Illinois/NCSA Open Source License
>  LICENSE = "NCSA"
> -LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=d0a3ef0d3e0e8f5cf59e5ffc273ab1f8"
>  
>  DEPENDS = "libffi libxml2-native llvm-common"
>  
> @@ -32,7 +31,7 @@ inherit perlnative pythonnative autotools
>  LLVM_RELEASE = "${PV}"
>  LLVM_DIR = "llvm${LLVM_RELEASE}"
>  
> -SRC_URI = "http://llvm.org/releases/${PV}/llvm-${PV}.src.tar.gz"
> +SRC_URI = "http://llvm.org/releases/${PV}/llvm-${PV}.src.tar.xz"
>  S = "${WORKDIR}/llvm-${PV}.src"
>  
>  LLVM_BUILD_DIR = "${WORKDIR}/llvm-${PV}.build"
> @@ -46,7 +45,8 @@ EXTRA_OECONF += "--disable-assertions \
>                   --enable-libffi \
>                   --enable-optimized \
>                   --enable-shared \
> -                 --enable-targets=host-only"
> +                 --enable-targets=host-only \
> +                 --disable-compiler-version-checks"
>  EXTRA_OEMAKE += "REQUIRES_RTTI=1 VERBOSE=1"
>  
>  do_configure_prepend() {
> diff --git a/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb b/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb
> index 60a2221..f1562f6 100644
> --- a/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb
> +++ b/meta-oe/recipes-core/llvm/llvm3.3_3.3.bb
> @@ -1,8 +1,12 @@
>  require llvm.inc
>  
> +LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=d0a3ef0d3e0e8f5cf59e5ffc273ab1f8"
> +
>  DEPENDS += "zlib"
>  EXTRA_OECONF += "--enable-zlib"
>  
> +# Overwrite SRC_URI from include file since older llvm uses .gz compression
> +SRC_URI = "http://llvm.org/releases/${PV}/llvm-${PV}.src.tar.gz"
>  SRC_URI += "file://Remove-error-output-from-configure-if-CFLAGS-is-set-.patch"
>  
>  SRC_URI_append_libc-uclibc = " file://arm_fenv_uclibc.patch "
> diff --git a/meta-oe/recipes-core/llvm/llvm3.7.0_3.7.0.bb b/meta-oe/recipes-core/llvm/llvm3.7.0_3.7.0.bb
> new file mode 100644
> index 0000000..813b185
> --- /dev/null
> +++ b/meta-oe/recipes-core/llvm/llvm3.7.0_3.7.0.bb
> @@ -0,0 +1,24 @@
> +require llvm.inc
> +
> +LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=4c0bc17c954e99fd547528d938832bfa"
> +
> +DEPENDS += "zlib"
> +EXTRA_OECONF += "--enable-zlib"
> +
> +SRC_URI_append_libc-uclibc = " file://arm_fenv_uclibc.patch "
> +
> +SRC_URI[md5sum] = "b98b9495e5655a672d6cb83e1a180f8e"
> +SRC_URI[sha256sum] = "ab45895f9dcdad1e140a3a79fd709f64b05ad7364e308c0e582c5b02e9cc3153"
> +
> +PACKAGECONFIG ??= ""
> +PACKAGECONFIG[r600] = "--enable-experimental-targets=R600,,,"
> +
> +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
> +
> +# Fails to build with thumb-1 (qemuarm)
> +# | {standard input}: Assembler messages:
> +# | {standard input}:22: Error: selected processor does not support Thumb mode `stmdb sp!,{r0,r1,r2,r3,lr}'
> +# | {standard input}:31: Error: lo register required -- `ldmia sp!,{r0,r1,r2,r3,lr}'
> +# | {standard input}:32: Error: lo register required -- `ldr pc,[sp],#4'
> +# | make[3]: *** [/home/jenkins/oe/world/shr-core/tmp-glibc/work/armv5te-oe-linux-gnueabi/llvm3.3/3.3-r0/llvm-3.3.build/lib/Target/ARM/Release/ARMJITInfo.o] Error 1
> +ARM_INSTRUCTION_SET = "arm"
> -- 
> 1.9.3
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20151030/f53d73ee/attachment-0002.sig>


More information about the Openembedded-devel mailing list