[OE-core] [warrior][PATCH 1/8] meson.bbclass: Remove the MESON_*_ARGS variables

akuster808 akuster808 at gmail.com
Wed Oct 16 20:24:08 UTC 2019



On 10/16/19 9:30 AM, Peter Kjellerstedt wrote:
> From: Peter Kjellerstedt <peter.kjellerstedt at axis.com>
>
> The options in ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} are already passed
> via ${CC}/${CXX} and there is no reason to pass them a second time. Thus
> we can remove MESON_TOOLCHAIN_ARGS. And when it is removed, the other
> MESON_*_ARGS variables revert to the standard CFLAGS, CXXFLAGS and
> LDFLAGS, so just use them directly instead.
the above is not a reason to backport to warrior
> Apart from the obvious improvement with not passing a lot of options
> twice, this also solves a problem where -pie would be passed on the
> command line in a way that it would prevent building any dynamic
> libraries using meson if using a toolchain that is not built with
> --enable-default-pie and if security_flags.inc is used.

but this is.


- armin
>
> Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt at axis.com>
> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> ---
>  meta/classes/meson.bbclass | 15 +++++----------
>  1 file changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass
> index 115d1aedcb..5c0139f02a 100644
> --- a/meta/classes/meson.bbclass
> +++ b/meta/classes/meson.bbclass
> @@ -30,11 +30,6 @@ MESONOPTS = " --prefix ${prefix} \
>                -Dcpp_args='${BUILD_CPPFLAGS} ${BUILD_CXXFLAGS}' \
>                -Dcpp_link_args='${BUILD_LDFLAGS}'"
>  
> -MESON_TOOLCHAIN_ARGS = "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
> -MESON_C_ARGS = "${MESON_TOOLCHAIN_ARGS} ${CFLAGS}"
> -MESON_CPP_ARGS = "${MESON_TOOLCHAIN_ARGS} ${CXXFLAGS}"
> -MESON_LINK_ARGS = "${MESON_TOOLCHAIN_ARGS} ${LDFLAGS}"
> -
>  EXTRA_OEMESON_append = " ${PACKAGECONFIG_CONFARGS}"
>  
>  MESON_CROSS_FILE = ""
> @@ -76,7 +71,7 @@ def meson_endian(prefix, d):
>          bb.fatal("Cannot determine endianism for %s-%s" % (arch, os))
>  
>  addtask write_config before do_configure
> -do_write_config[vardeps] += "MESON_C_ARGS MESON_CPP_ARGS MESON_LINK_ARGS CC CXX LD AR NM STRIP READELF"
> +do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS CXXFLAGS LDFLAGS"
>  do_write_config() {
>      # This needs to be Py to split the args into single-element lists
>      cat >${WORKDIR}/meson.cross <<EOF
> @@ -93,10 +88,10 @@ llvm-config = 'llvm-config8.0.0'
>  
>  [properties]
>  needs_exe_wrapper = true
> -c_args = ${@meson_array('MESON_C_ARGS', d)}
> -c_link_args = ${@meson_array('MESON_LINK_ARGS', d)}
> -cpp_args = ${@meson_array('MESON_CPP_ARGS', d)}
> -cpp_link_args = ${@meson_array('MESON_LINK_ARGS', d)}
> +c_args = ${@meson_array('CFLAGS', d)}
> +c_link_args = ${@meson_array('LDFLAGS', d)}
> +cpp_args = ${@meson_array('CXXFLAGS', d)}
> +cpp_link_args = ${@meson_array('LDFLAGS', d)}
>  gtkdoc_exe_wrapper = '${B}/gtkdoc-qemuwrapper'
>  
>  [host_machine]



More information about the Openembedded-core mailing list