diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-06-14 15:13:45 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-06-14 15:13:45 +0100 |
commit | b9e8f3cc44aed3b6da71c7510c6287bf7bbbc66b (patch) | |
tree | 4b47f3026f10252cff69e7a4346215a4da4f0f1c /eclass/qmake-utils.eclass | |
parent | 3d952d0bfe7b386699eb32d1431deb0c538f044d (diff) |
gentoo auto-resync : 14:06:2023 - 15:13:45
Diffstat (limited to 'eclass/qmake-utils.eclass')
-rw-r--r-- | eclass/qmake-utils.eclass | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/eclass/qmake-utils.eclass b/eclass/qmake-utils.eclass index 88755ab7aa8a..5c5fa8dcb047 100644 --- a/eclass/qmake-utils.eclass +++ b/eclass/qmake-utils.eclass @@ -155,4 +155,63 @@ qt6_get_plugindir() { echo $(qt6_get_libdir)/qt6/plugins } +# @FUNCTION: qt6_get_qmake_args +# @DESCRIPTION: +# Echoes a multi-line string containing arguments to pass to qmake. +qt6_get_qmake_args() { + cat <<-EOF + QMAKE_AR="$(tc-getAR) cqs" + QMAKE_CC="$(tc-getCC)" + QMAKE_LINK_C="$(tc-getCC)" + QMAKE_LINK_C_SHLIB="$(tc-getCC)" + QMAKE_CXX="$(tc-getCXX)" + QMAKE_LINK="$(tc-getCXX)" + QMAKE_LINK_SHLIB="$(tc-getCXX)" + QMAKE_OBJCOPY="$(tc-getOBJCOPY)" + QMAKE_RANLIB= + QMAKE_STRIP= + QMAKE_CFLAGS="${CFLAGS}" + QMAKE_CFLAGS_RELEASE= + QMAKE_CFLAGS_DEBUG= + QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO= + QMAKE_CXXFLAGS="${CXXFLAGS}" + QMAKE_CXXFLAGS_RELEASE= + QMAKE_CXXFLAGS_DEBUG= + QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO= + QMAKE_LFLAGS="${LDFLAGS}" + QMAKE_LFLAGS_RELEASE= + QMAKE_LFLAGS_DEBUG= + QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO= + EOF +} + +# @FUNCTION: eqmake6 +# @USAGE: [arguments for qmake] +# @DESCRIPTION: +# Wrapper for Qt6's qmake. All arguments are passed to qmake. +# +# For recursive build systems, i.e. those based on the subdirs template, +# you should run eqmake6 on the top-level project file only, unless you +# have a valid reason to do otherwise. During the building, qmake will +# be automatically re-invoked with the right arguments on every directory +# specified inside the top-level project file. +eqmake6() { + debug-print-function ${FUNCNAME} "$@" + + ebegin "Running qmake" + + local -a args + mapfile -t args <<<"$(qt6_get_qmake_args)" + # NB: we're passing literal quotes in but qmake doesn't seem to mind + "$(qt6_get_bindir)"/qmake -makefile "${args[@]}" "$@" + + if ! eend $? ; then + echo + eerror "Running qmake has failed! (see above for details)" + eerror "This shouldn't happen - please send a bug report to https://bugs.gentoo.org/" + echo + die "eqmake6 failed" + fi +} + fi |