commit 090568f9a8b9b8cfeaa2574f5d153f9b971d4847 Author: Steffen Hau Date: Mon Mar 11 21:53:48 2024 +0100 qt6 does not require qt5 diff --git a/www-client/chromium/chromium-123.0.6312.46.ebuild b/www-client/chromium/chromium-123.0.6312.46.ebuild index 915ecb3..190b384 100644 --- a/www-client/chromium/chromium-123.0.6312.46.ebuild +++ b/www-client/chromium/chromium-123.0.6312.46.ebuild @@ -83,7 +83,6 @@ IUSE+=" qt5 qt6 screencast selinux +system-toolchain vaapi wayland widevine" REQUIRED_USE=" !headless? ( || ( X wayland ) ) pgo? ( X !wayland ) - qt6? ( qt5 ) screencast? ( wayland ) !system-toolchain? ( libcxx ) " @@ -159,7 +158,7 @@ COMMON_DEPEND=" dev-qt/qtcore:5 dev-qt/qtwidgets:5 ) - qt6? ( dev-qt/qtbase:6[gui,widgets] ) + qt6? ( dev-qt/qtbase:6[widgets] ) ) " RDEPEND="${COMMON_DEPEND} @@ -169,7 +168,7 @@ RDEPEND="${COMMON_DEPEND} gui-libs/gtk:4[X?,wayland?] ) qt5? ( dev-qt/qtgui:5[X?,wayland?] ) - qt6? ( dev-qt/qtbase:6[X?,wayland?] ) + qt6? ( dev-qt/qtbase:6[gui,X?,wayland?] ) ) virtual/ttf-fonts selinux? ( sec-policy/selinux-chromium ) @@ -177,6 +176,8 @@ RDEPEND="${COMMON_DEPEND} DEPEND="${COMMON_DEPEND} !headless? ( gtk4? ( gui-libs/gtk:4[X?,wayland?] ) + qt5? ( dev-qt/qtgui:5[X?,wayland?] ) + qt6? ( dev-qt/qtbase:6[gui,X?,wayland?] ) !gtk4? ( x11-libs/gtk+:3[X?,wayland?] ) ) " @@ -397,6 +398,7 @@ src_prepare() { "${FILESDIR}/chromium-109-system-zlib.patch" "${FILESDIR}/chromium-111-InkDropHost-crash.patch" "${FILESDIR}/chromium-117-system-zstd.patch" + "${FILESDIR}/chromium-123-separate-qt56.patch" ) if use system-toolchain; then @@ -1071,6 +1073,7 @@ chromium_configure() { fi myconf_gn+=" use_qt=true" + myconf_gn+=" use_qt5=$(usex qt5 true false)" myconf_gn+=" use_qt6=$(usex qt6 true false)" else myconf_gn+=" use_qt=false" diff --git a/www-client/chromium/files/chromium-123-separate-qt56.patch b/www-client/chromium/files/chromium-123-separate-qt56.patch new file mode 100644 index 0000000..16a62b7 --- /dev/null +++ b/www-client/chromium/files/chromium-123-separate-qt56.patch @@ -0,0 +1,129 @@ +diff -Naur a/chrome/installer/linux/BUILD.gn b/chrome/installer/linux/BUILD.gn +--- a/chrome/installer/linux/BUILD.gn 2024-02-29 20:36:13.789629500 +0100 ++++ b/chrome/installer/linux/BUILD.gn 2024-03-06 14:37:30.637215120 +0100 +@@ -81,10 +81,12 @@ + # Even though this is a shared library, add it to `packaging_files` instead of + # `packaging_files_shlibs` to skip the dependency check. This is intentional + # to prevent a hard dependency on QT for the package. +- packaging_files += [ "$root_out_dir/libqt5_shim.so" ] +-} +-if (use_qt6) { +- packaging_files += [ "$root_out_dir/libqt6_shim.so" ] ++ if (use_qt65 { ++ packaging_files += [ "$root_out_dir/libqt5_shim.so" ] ++ } ++ if (use_qt6) { ++ packaging_files += [ "$root_out_dir/libqt6_shim.so" ] ++ } + } + + action_foreach("calculate_deb_dependencies") { +@@ -209,15 +211,17 @@ + } + + if (use_qt) { +- strip_binary("strip_qt5_shim") { +- binary_input = "$root_out_dir/libqt5_shim.so" +- deps = [ "//ui/qt:qt5_shim" ] ++ if (use_qt5) { ++ strip_binary("strip_qt5_shim") { ++ binary_input = "$root_out_dir/libqt5_shim.so" ++ deps = [ "//ui/qt:qt5_shim" ] ++ } + } +-} +-if (use_qt6) { +- strip_binary("strip_qt6_shim") { +- binary_input = "$root_out_dir/libqt6_shim.so" +- deps = [ "//ui/qt:qt6_shim" ] ++ if (use_qt6) { ++ strip_binary("strip_qt6_shim") { ++ binary_input = "$root_out_dir/libqt6_shim.so" ++ deps = [ "//ui/qt:qt6_shim" ] ++ } + } + } + +@@ -401,16 +405,18 @@ + ] + } + if (use_qt) { +- public_deps += [ +- ":strip_qt5_shim", +- "//ui/qt:qt5_shim", +- ] +- } +- if (use_qt6) { +- public_deps += [ +- ":strip_qt6_shim", +- "//ui/qt:qt6_shim", +- ] ++ if (use_qt5) { ++ public_deps += [ ++ ":strip_qt5_shim", ++ "//ui/qt:qt5_shim", ++ ] ++ } ++ if (use_qt6) { ++ public_deps += [ ++ ":strip_qt6_shim", ++ "//ui/qt:qt6_shim", ++ ] ++ } + } + } + +diff -Naur a/ui/qt/BUILD.gn b/ui/qt/BUILD.gn +--- a/ui/qt/BUILD.gn 2024-02-29 20:36:57.221363300 +0100 ++++ b/ui/qt/BUILD.gn 2024-03-06 14:41:22.236018488 +0100 +@@ -101,10 +101,12 @@ + } + } + } +-qt_shim("qt5_shim") { +- qt_version = "5" +- if (!use_sysroot) { +- moc_qt_path = "$moc_qt5_path" ++if (use_qt5) { ++ qt_shim("qt5_shim") { ++ qt_version = "5" ++ if (!use_sysroot) { ++ moc_qt_path = "$moc_qt5_path" ++ } + } + } + if (use_qt6) { +@@ -122,7 +124,10 @@ + defines = [ "IS_QT_IMPL" ] + ++ data_deps = [] + # qt_shim is in data_deps since we want to load it manually. +- data_deps = [ ":qt5_shim" ] ++ if (use_qt5) { ++ data_deps += [ ":qt5_shim" ] ++ } + if (use_qt6) { + data_deps += [ ":qt6_shim" ] + } +diff -Naur a/ui/qt/qt.gni b/ui/qt/qt.gni +--- a/ui/qt/qt.gni 2024-02-29 20:36:57.221363300 +0100 ++++ b/ui/qt/qt.gni 2024-03-06 14:39:22.991005912 +0100 +@@ -13,7 +13,11 @@ + } + + declare_args() { +- if (!use_sysroot && use_qt) { ++ use_qt5 = use_qt && use_sysroot ++} ++ ++declare_args() { ++ if (!use_sysroot && use_qt5) { + moc_qt5_path = "" + } + } +@@ -29,4 +33,5 @@ + } + + # use_qt6 => use_qt ++assert(!use_qt5 || use_qt) + assert(!use_qt6 || use_qt)