commit:     57541f65fc3e535af7cc7335b020ab7337eebebd
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 26 23:51:53 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 00:47:25 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=57541f65

app-office/libreoffice: Add IUSE qt6

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/libreoffice-24.2-qtdetect.patch          | 20 ++++++++
 .../libreoffice/libreoffice-24.2.9999.ebuild       | 59 ++++++++++++++++------
 app-office/libreoffice/libreoffice-9999.ebuild     | 59 ++++++++++++++++------
 3 files changed, 106 insertions(+), 32 deletions(-)

diff --git a/app-office/libreoffice/files/libreoffice-24.2-qtdetect.patch 
b/app-office/libreoffice/files/libreoffice-24.2-qtdetect.patch
new file mode 100644
index 000000000000..aec8c6ea71fa
--- /dev/null
+++ b/app-office/libreoffice/files/libreoffice-24.2-qtdetect.patch
@@ -0,0 +1,20 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -13027,7 +13027,7 @@
+ 
+     dnl Check for Meta Object Compiler
+ 
+-    AC_PATH_PROGS( MOC5, [moc-qt5 moc], no, [`dirname 
$qt5_libdir`/bin:$QT5DIR/bin:$PATH])
++    AC_PATH_PROGS( MOC5, [moc-qt5 moc], no, [$QT5DIR/bin])
+     if test "$MOC5" = "no"; then
+         AC_MSG_ERROR([Qt Meta Object Compiler not found.  Please specify
+ the root of your Qt installation by exporting QT5DIR before running 
"configure".])
+@@ -13163,7 +13163,7 @@
+             qt6_libexec_dirs="$qt6_libexec_dirs:$lib_dir/libexec"
+         fi
+     done
+-    AC_PATH_PROGS( MOC6, [moc-qt6 moc], no, [`dirname 
$qt6_libdir`/libexec:$QT6DIR/libexec:$qt6_libexec_dirs:`echo $qt6_libdirs | 
$SED -e 's/ /:/g'`:$PATH])
++    AC_PATH_PROGS( MOC6, [moc-qt6 moc], no, [$QT6DIR/bin:$QT6DIR/libexec])
+     if test "$MOC6" = "no"; then
+         AC_MSG_ERROR([Qt Meta Object Compiler not found.  Please specify
+ the root of your Qt installation by exporting QT6DIR before running 
"configure".])

diff --git a/app-office/libreoffice/libreoffice-24.2.9999.ebuild 
b/app-office/libreoffice/libreoffice-24.2.9999.ebuild
index 5e42fa31a46e..eb5c23c90864 100644
--- a/app-office/libreoffice/libreoffice-24.2.9999.ebuild
+++ b/app-office/libreoffice/libreoffice-24.2.9999.ebuild
@@ -87,7 +87,7 @@ unset ADDONS_SRC
 LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
 
 IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags 
+dbus debug eds firebird
-googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres test 
valgrind vulkan
+googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres qt6 test 
valgrind vulkan
 $(printf 'libreoffice_extensions_%s ' ${LO_EXTS})"
 
 REQUIRED_USE="${PYTHON_REQUIRED_USE}
@@ -204,15 +204,24 @@ COMMON_DEPEND="${PYTHON_DEPS}
                x11-libs/pango
        )
        kde? (
-               dev-qt/qtcore:5
-               dev-qt/qtgui:5
-               dev-qt/qtwidgets:5
-               dev-qt/qtx11extras:5
-               kde-frameworks/kconfig:5
-               kde-frameworks/kcoreaddons:5
-               kde-frameworks/ki18n:5
-               kde-frameworks/kio:5
-               kde-frameworks/kwindowsystem:5
+               !qt6? (
+                       dev-qt/qtcore:5
+                       dev-qt/qtgui:5
+                       dev-qt/qtwidgets:5
+                       dev-qt/qtx11extras:5
+                       kde-frameworks/kconfig:5
+                       kde-frameworks/kcoreaddons:5
+                       kde-frameworks/ki18n:5
+                       kde-frameworks/kio:5
+                       kde-frameworks/kwindowsystem:5
+               )
+               qt6? (
+                       kde-frameworks/kconfig:6
+                       kde-frameworks/kcoreaddons:6
+                       kde-frameworks/ki18n:6
+                       kde-frameworks/kio:6
+                       kde-frameworks/kwindowsystem:6
+               )
        )
        ldap? ( net-nds/openldap:= )
        libreoffice_extensions_scripting-beanshell? ( dev-java/bsh )
@@ -221,6 +230,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
        !mariadb? ( dev-db/mysql-connector-c:= )
        pdfimport? ( >=app-text/poppler-22.06:=[cxx] )
        postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
+       qt6? ( dev-qt/qtbase:6[gui,widgets] )
 "
 # FIXME: cppunit should be moved to test conditional
 #        after everything upstream is under gbuild
@@ -254,7 +264,7 @@ RDEPEND="${COMMON_DEPEND}
        !app-office/libreoffice-bin
        !app-office/libreoffice-bin-debug
        media-fonts/liberation-fonts
-       || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
+       || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools:* )
        java? ( >=virtual/jre-11 )
        kde? ( kde-frameworks/breeze-icons:* )
 "
@@ -297,7 +307,7 @@ PATCHES=(
        # not upstreamable stuff
        "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch"
        "${FILESDIR}/${PN}-6.1-nomancompress.patch"
-       "${FILESDIR}/${PN}-7.2.0.4-qt5detect.patch"
+       "${FILESDIR}/${PN}-24.2-qtdetect.patch"
 )
 
 S="${WORKDIR}/${PN}-${MY_PV}"
@@ -453,7 +463,13 @@ src_configure() {
        export PYTHON_CFLAGS=$(python_get_CFLAGS)
        export PYTHON_LIBS=$(python_get_LIBS)
 
-       use kde && export QT5DIR="$(qt5_get_bindir)/.."
+       if use qt6; then
+               export QT6DIR="$(qt6_get_bindir)/.."
+       else
+               if use kde; then
+                       export QT5DIR="$(qt5_get_bindir)/.."
+               fi
+       fi
 
        local gentoo_buildid="Gentoo official package"
        if [[ -n ${LOCOREGIT_VERSION} ]]; then
@@ -494,7 +510,6 @@ src_configure() {
                --disable-online-update
                --disable-openssl
                --disable-pdfium
-               --disable-qt6
                --with-extra-buildid="${gentoo_buildid}"
                --enable-extension-integration
                --with-external-dict-dir="${EPREFIX}/usr/share/myspell"
@@ -529,8 +544,6 @@ src_configure() {
                $(use_enable firebird firebird-sdbc)
                $(use_enable gstreamer gstreamer-1-0)
                $(use_enable gtk gtk3)
-               $(use_enable kde kf5)
-               $(use_enable kde qt5)
                $(use_enable ldap)
                $(use_enable odk)
                $(use_enable pdfimport)
@@ -545,6 +558,20 @@ src_configure() {
                $(use_with valgrind)
        )
 
+       if use qt6; then
+               myeconfargs+=(
+                       --disable-qt5
+                       $(use_enable qt6 qt6)
+                       $(use_enable kde kf6)
+               )
+       else
+               myeconfargs+=(
+                       --disable-qt6
+                       $(use_enable kde kf5)
+                       $(use_enable kde qt5)
+               )
+       fi
+
        if use eds || use gtk; then
                myeconfargs+=( --enable-dconf --enable-gio )
        else

diff --git a/app-office/libreoffice/libreoffice-9999.ebuild 
b/app-office/libreoffice/libreoffice-9999.ebuild
index 5e42fa31a46e..eb5c23c90864 100644
--- a/app-office/libreoffice/libreoffice-9999.ebuild
+++ b/app-office/libreoffice/libreoffice-9999.ebuild
@@ -87,7 +87,7 @@ unset ADDONS_SRC
 LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
 
 IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags 
+dbus debug eds firebird
-googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres test 
valgrind vulkan
+googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres qt6 test 
valgrind vulkan
 $(printf 'libreoffice_extensions_%s ' ${LO_EXTS})"
 
 REQUIRED_USE="${PYTHON_REQUIRED_USE}
@@ -204,15 +204,24 @@ COMMON_DEPEND="${PYTHON_DEPS}
                x11-libs/pango
        )
        kde? (
-               dev-qt/qtcore:5
-               dev-qt/qtgui:5
-               dev-qt/qtwidgets:5
-               dev-qt/qtx11extras:5
-               kde-frameworks/kconfig:5
-               kde-frameworks/kcoreaddons:5
-               kde-frameworks/ki18n:5
-               kde-frameworks/kio:5
-               kde-frameworks/kwindowsystem:5
+               !qt6? (
+                       dev-qt/qtcore:5
+                       dev-qt/qtgui:5
+                       dev-qt/qtwidgets:5
+                       dev-qt/qtx11extras:5
+                       kde-frameworks/kconfig:5
+                       kde-frameworks/kcoreaddons:5
+                       kde-frameworks/ki18n:5
+                       kde-frameworks/kio:5
+                       kde-frameworks/kwindowsystem:5
+               )
+               qt6? (
+                       kde-frameworks/kconfig:6
+                       kde-frameworks/kcoreaddons:6
+                       kde-frameworks/ki18n:6
+                       kde-frameworks/kio:6
+                       kde-frameworks/kwindowsystem:6
+               )
        )
        ldap? ( net-nds/openldap:= )
        libreoffice_extensions_scripting-beanshell? ( dev-java/bsh )
@@ -221,6 +230,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
        !mariadb? ( dev-db/mysql-connector-c:= )
        pdfimport? ( >=app-text/poppler-22.06:=[cxx] )
        postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
+       qt6? ( dev-qt/qtbase:6[gui,widgets] )
 "
 # FIXME: cppunit should be moved to test conditional
 #        after everything upstream is under gbuild
@@ -254,7 +264,7 @@ RDEPEND="${COMMON_DEPEND}
        !app-office/libreoffice-bin
        !app-office/libreoffice-bin-debug
        media-fonts/liberation-fonts
-       || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
+       || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools:* )
        java? ( >=virtual/jre-11 )
        kde? ( kde-frameworks/breeze-icons:* )
 "
@@ -297,7 +307,7 @@ PATCHES=(
        # not upstreamable stuff
        "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch"
        "${FILESDIR}/${PN}-6.1-nomancompress.patch"
-       "${FILESDIR}/${PN}-7.2.0.4-qt5detect.patch"
+       "${FILESDIR}/${PN}-24.2-qtdetect.patch"
 )
 
 S="${WORKDIR}/${PN}-${MY_PV}"
@@ -453,7 +463,13 @@ src_configure() {
        export PYTHON_CFLAGS=$(python_get_CFLAGS)
        export PYTHON_LIBS=$(python_get_LIBS)
 
-       use kde && export QT5DIR="$(qt5_get_bindir)/.."
+       if use qt6; then
+               export QT6DIR="$(qt6_get_bindir)/.."
+       else
+               if use kde; then
+                       export QT5DIR="$(qt5_get_bindir)/.."
+               fi
+       fi
 
        local gentoo_buildid="Gentoo official package"
        if [[ -n ${LOCOREGIT_VERSION} ]]; then
@@ -494,7 +510,6 @@ src_configure() {
                --disable-online-update
                --disable-openssl
                --disable-pdfium
-               --disable-qt6
                --with-extra-buildid="${gentoo_buildid}"
                --enable-extension-integration
                --with-external-dict-dir="${EPREFIX}/usr/share/myspell"
@@ -529,8 +544,6 @@ src_configure() {
                $(use_enable firebird firebird-sdbc)
                $(use_enable gstreamer gstreamer-1-0)
                $(use_enable gtk gtk3)
-               $(use_enable kde kf5)
-               $(use_enable kde qt5)
                $(use_enable ldap)
                $(use_enable odk)
                $(use_enable pdfimport)
@@ -545,6 +558,20 @@ src_configure() {
                $(use_with valgrind)
        )
 
+       if use qt6; then
+               myeconfargs+=(
+                       --disable-qt5
+                       $(use_enable qt6 qt6)
+                       $(use_enable kde kf6)
+               )
+       else
+               myeconfargs+=(
+                       --disable-qt6
+                       $(use_enable kde kf5)
+                       $(use_enable kde qt5)
+               )
+       fi
+
        if use eds || use gtk; then
                myeconfargs+=( --enable-dconf --enable-gio )
        else

Reply via email to