[PATCH v2 3/5] qt-utils.eclass: Deprecate all qt6_* functions (but ban qt6_get_libdir)
Andreas Sturmlechner <[email protected]> Sat, 11 Jul 2026 11:57:08 +0200
| Newsgroups | gmane.linux.gentoo.devel |
|---|---|
| Message-ID | <[email protected]> |
--nextPartlmONekteTYO8lvi9ncXPlQ Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="utf-8"; protected-headers="v1" From: Andreas Sturmlechner <[email protected]> To: [email protected], [email protected] Date: Sat, 11 Jul 2026 11:57:08 +0200 Message-ID: <[email protected]> In-Reply-To: <[email protected]> References: <[email protected]> MIME-Version: 1.0 Deprecate all legacy qt6_* functions In deprecated qt6_get_bindir(), EPREFIX remains hardcoded For EAPI-9, ban qt6_get_libdir w/o direct replacement; it is too basic Signed-off-by: Andreas Sturmlechner <[email protected]> --- eclass/qt-utils.eclass | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/eclass/qt-utils.eclass b/eclass/qt-utils.eclass index 6ec027db0e7a..ba425a9db777 100644 --- a/eclass/qt-utils.eclass +++ b/eclass/qt-utils.eclass @@ -22,6 +22,34 @@ case ${EAPI} in *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac +# @FUNCTION: _qt_eapi9_banned_deprecated_func +# @INTERNAL +# @DESCRIPTION: +# Banned functions are banned. Deprecated functions are ... +_qt_eapi9_banned_deprecated_func() { + [[ ${EAPI} == 8 ]] && return + + _deprecated_use_instead() { + eqawarn "QA Notice: ${1} is deprecated and will be banned after EAPI 9 -" + eqawarn " use '${2}' instead." + } + + case ${FUNCNAME[1]} in + qt6_get_bindir|qt6_get_libexecdir) + _deprecated_use_instead ${FUNCNAME[1]} "${FUNCNAME[1]/qt6/qt} 6" + [[ ${FUNCNAME[1]} == qt6_get_bindir ]] && + eqawarn " IMPORTANT: qt_get_bindir no longer prepends EPREFIX," && + eqawarn " which likely was wrong to begin with." + ;; + qt6_get_libdir) + die "qt6_get_libdir is banned. 'qt_get_archdatadir 6' serves \$(qt6_get_libdir)/qt6" + ;; + qt6_get_*) + _deprecated_use_instead ${FUNCNAME[1]} "${FUNCNAME[1]/qt6/qt} 6" + ;; + esac +} + # @FUNCTION: _qt_get_check_func_call # @INTERNAL # @DESCRIPTION: @@ -108,45 +136,57 @@ qt_get_qmldir() { } # @FUNCTION: qt6_get_bindir +# @DEPRECATED # @DESCRIPTION: # Echoes the directory where Qt6 binaries are installed. -# EPREFIX is already prepended to the returned path. +# EPREFIX is always prepended to the returned path. qt6_get_bindir() { + _qt_eapi9_banned_deprecated_func echo "${EPREFIX}$(qt_get_bindir 6)" } # @FUNCTION: qt6_get_headerdir +# @DEPRECATED # @DESCRIPTION: # Echoes the directory where Qt6 headers are installed. qt6_get_headerdir() { + _qt_eapi9_banned_deprecated_func qt_get_headerdir 6 } # @FUNCTION: qt6_get_libdir +# @DEPRECATED # @DESCRIPTION: # Echoes the directory where Qt6 libraries are installed. qt6_get_libdir() { + _qt_eapi9_banned_deprecated_func echo "/usr/$(get_libdir)" } # @FUNCTION: qt6_get_libexecdir +# @DEPRECATED # @DESCRIPTION: # Echoes the directory where Qt6 libexec bins are installed. qt6_get_libexecdir() { + _qt_eapi9_banned_deprecated_func qt_get_libexecdir 6 } # @FUNCTION: qt6_get_mkspecsdir +# @DEPRECATED # @DESCRIPTION: # Echoes the directory where Qt6 mkspecs are installed. qt6_get_mkspecsdir() { + _qt_eapi9_banned_deprecated_func qt_get_mkspecsdir 6 } # @FUNCTION: qt6_get_plugindir +# @DEPRECATED # @DESCRIPTION: # Echoes the directory where Qt6 plugins are installed. qt6_get_plugindir() { + _qt_eapi9_banned_deprecated_func qt_get_plugindir 6 } -- 2.55.0 --nextPartlmONekteTYO8lvi9ncXPlQ Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQIvBAABCgCZFiEE34gXUSooizdYNDu3S5FW4z0PgBkFAmpSE3QbFIAAAAAABAAO bWFudTIsMi41KzEuMTIsMiwyXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25z Lm9wZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRERjg4MTc1MTJBMjg4QjM3NTgzNDNC Qjc0QjkxNTZFMzNEMEY4MDE5AAoJEEuRVuM9D4AZINML/0lFI0gBv4bfimtxzXM2 UkiqyyDwGBFEZr+PaKrIRMi6b5eoltBZDvPNvMMB7fetcGPUbYkvI2VcXBlANC5y LV8oK82CthOyz1AWCtE9QPmbTpdAc+VishK28tUfB7WrJLPryykZvxnXZzx0D7R3 8RN9wOFxxmq94NnEu1eV7z2exKwaYkIMc8CEyUme23oxftMrXIHfZu+U6RyC3ViZ n+FYiNmdC6CIbIU2ce8nqc0554RjP1RKIJ8YgaoV+zbcsWeqQadKHkehLZs7QJ6r sZ7TdyhvNxBzExQbr3YhTpkjr6LJ62jhInzaTh796nktCBpYICSesdE5Q5zgEiP7 NV+7eu6FuMGmmVkgo/F7qaqiMpDAx3hoAGbnkHxq5xde4h5EuYIfR5H+gJJ8VK9t EGQb/LdQJsSUKPgl7ftmlScM5BbtNkrJSP0JPF38TUubQUcpQqoLTUsvvvlcCyfA BPy75ndo9M7X6SGOt8wuO2G6Lmx/Hm6ucfvAjeFuxdQqBg== =bqbr -----END PGP SIGNATURE----- --nextPartlmONekteTYO8lvi9ncXPlQ--