diff options
author | William Hubbs <williamh@gentoo.org> | 2021-01-11 12:54:37 -0600 |
---|---|---|
committer | William Hubbs <williamh@gentoo.org> | 2021-01-11 12:56:27 -0600 |
commit | e3cc29cc79d4e94d0144c3ebc4d8cf00d4ee2e70 (patch) | |
tree | e6dfe5716f2f777761173415f94ef9fd86b08ac9 /eclass/meson.eclass | |
parent | media-libs/gmmlib: added USE flag for user CFLAGS (diff) | |
download | gentoo-e3cc29cc79d4e94d0144c3ebc4d8cf00d4ee2e70.tar.gz gentoo-e3cc29cc79d4e94d0144c3ebc4d8cf00d4ee2e70.tar.bz2 gentoo-e3cc29cc79d4e94d0144c3ebc4d8cf00d4ee2e70.zip |
meson.eclass: fix machine files
Several options we were setting in the [properties] section of the
machine files have been moved to the [built-in options] section in
meson 0.56.
Closes: https://bugs.gentoo.org/738710
Signed-off-by: William Hubbs <williamh@gentoo.org>
Diffstat (limited to 'eclass/meson.eclass')
-rw-r--r-- | eclass/meson.eclass | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/eclass/meson.eclass b/eclass/meson.eclass index 67b7ca831fd2..7e17c3bd6543 100644 --- a/eclass/meson.eclass +++ b/eclass/meson.eclass @@ -120,7 +120,7 @@ _meson_env_array() { # @FUNCTION: _meson_get_machine_info # @USAGE: <tuple> -# @RETURN: system/cpu_family/cpu variables +# @RETURN: system/cpu_family/cpu/builtin_options variables # @INTERNAL # @DESCRIPTION: # Translate toolchain tuple into machine values for meson. @@ -146,6 +146,17 @@ _meson_get_machine_info() { # This may require adjustment based on CFLAGS cpu=${tuple%%-*} + + local ver_opt + case "${EAPI}" in + 6) ver_opt=--host-route ;; + *) ver_opt=-b ;; + esac + if has_version "${ver_opt}" '<dev-util/meson-0.56.0'; then + builtin_options="[properties]" + else + builtin_options="[built-in options]" + fi } # @FUNCTION: _meson_create_cross_file @@ -155,7 +166,7 @@ _meson_get_machine_info() { # Creates a cross file. meson uses this to define settings for # cross-compilers. This function is called from meson_src_configure. _meson_create_cross_file() { - local system cpu_family cpu + local system cpu_family cpu builtin_options _meson_get_machine_info "${CHOST}" local fn=${T}/meson.${CHOST}.${ABI}.ini @@ -174,7 +185,7 @@ _meson_create_cross_file() { strip = $(_meson_env_array "$(tc-getSTRIP)") windres = $(_meson_env_array "$(tc-getRC)") - [properties] + ${builtin_options} c_args = $(_meson_env_array "${CFLAGS} ${CPPFLAGS}") c_link_args = $(_meson_env_array "${CFLAGS} ${LDFLAGS}") cpp_args = $(_meson_env_array "${CXXFLAGS} ${CPPFLAGS}") @@ -206,11 +217,10 @@ _meson_create_cross_file() { # Creates a native file. meson uses this to define settings for # native compilers. This function is called from meson_src_configure. _meson_create_native_file() { - local system cpu_family cpu + local system cpu_family cpu builtin_options _meson_get_machine_info "${CBUILD}" local fn=${T}/meson.${CBUILD}.${ABI}.ini - cat > "${fn}" <<-EOF [binaries] ar = $(_meson_env_array "$(tc-getBUILD_AR)") @@ -225,7 +235,7 @@ _meson_create_native_file() { strip = $(_meson_env_array "$(tc-getBUILD_STRIP)") windres = $(_meson_env_array "$(tc-getBUILD_PROG RC windres)") - [properties] + ${builtin_options} c_args = $(_meson_env_array "${BUILD_CFLAGS} ${BUILD_CPPFLAGS}") c_link_args = $(_meson_env_array "${BUILD_CFLAGS} ${BUILD_LDFLAGS}") cpp_args = $(_meson_env_array "${BUILD_CXXFLAGS} ${BUILD_CPPFLAGS}") |