summaryrefslogtreecommitdiff
path: root/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild
AgeCommit message (Collapse)Author
2023-09-05dev-qt/qtwebengine: refactor qt6 ebuild, various fixes incl. muslIonen Wolkens
Essentially a rewrite, so only have a not exhaustive summary of changes rather than split commits. Bugs addressed: * respect *FLAGS wrt bug #652172 (fwics should be no issues left) * hopefully fixed musl/libcxx (tested with llvm-musl) wrt bug #876520 (not planning to review Qt5's myself, so no changes on that end) IUSE changes: * enable alsa by default, finding that you have no audio options only after building is not great and alsa is cheap * enable widgets by default, needed by both falkon and qutebrowser * add custom-cflags, if going to use *FLAGS then should strip-flags like chromium's ebuild * add opengl, unfortunately littered in QT_CONFIG(opengl) and need qtbase[opengl=] to avoid ABI/automagic issues * add vulkan, has its own feature so should only need qtbase[vulkan?] * add qml similarly to other packages Misc: * support EXTRA_GN like qtwebengine:5 and chromium (Gentoo-specific) * build dir went from >9GB to ~6.3GB by dropping -g1 * drop estack+extglob, setting extglob is technically not needed for use in bash [[ ]] tests which is-flagq does * drop INCLUDEPATH, tried to sed qmake files but this is using cmake * respect NINJA env var to allow samu (NINJA_PATH was a no-op) * use get_NINJAOPTS for NINJAFLAGS and ignore environment (NINJAOPTS is the var to set for this, while NINJAFLAGS is a private qtwebengine var, ninja does not actually use this directly) * drop icu's bundling check for simplicity (and consistency with other system libraries), bug #630834 prompted adding this but does not seem so fragile anymore (plus iwdevtools would report lib misuse, albeit not headers) * switch to bundled re2 to be spared headaches (see github PR#32281) * optfeature on chrome-binary-plugins for widevine support * cleanup/reduce QT_FEATURE and old comments * fix designer automagic * various dependencies adjustments, wrt re2c that is only needed if we build ninja * do not redefine _FORTIFY_SOURCE (use gentoo's defaults), upstream actually switched to =3 in chromium-118 (albeit only for ChromeOS) and "hopefully" is fine for this older version (tests pass at least) Also moved patches to a tarball (like qt5). It is simple small patches mostly adjusting macros rather than add actual code, but was beginning to add up. Considered reducing RAM requirements a little bit (generally *seems* not so bad), but there is rather bad spikes and I do not think it can be considered safe unless we assume everyone is not using RAM for anything else. Plus usage will likely keep growing with versions. Bug: https://bugs.gentoo.org/652172 Bug: https://bugs.gentoo.org/876520 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-05dev-qt/qtwebengine: automate chromium version warning (qt6)Ionen Wolkens
Just an unnecessary disparity between ebuilds to maintain, plus would typically be inaccurate in live ebuilds (albeit check may make live version fail on a whim if format changes, but kept fatal or else issues will be easy to miss on bumps). Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-05dev-qt/qtwebengine: do not install gn (qt6)Ionen Wolkens
qtwebengine handling of gn does not allow to use CBUILD toolchain, and only when cross-compiling it will look for system's. Also does not respect *FLAGS as upstream intentially commented these out because someone did a bug report with overzealous flags (QTBUG-64759). And, unfortunately, qtwebengine's is modified and so dev-util/gn may not work as expected with it (plus will need CMakeLists modifications to be found). Bare that, two possible options would be: 1. dev-qt/qtwebengine-gn or so to BDEPEND on and build cleanly 2. fix the mess that is the modified gen.py, and use BUILD_ variables For now at least skip installing it as it'll just cause conflicts if we want to do this later and is not really useful unless want to do something like BDEPEND="cross? ( dev-qt/qtwebengine )". Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-05dev-qt/qtwebengine: prefixify widevine search path (qt6)Ionen Wolkens
Allows dropping a workaround in qutebrowser. And yes, wrt -w, the line we are changing literally has "Gentoo" in an upstream comment. Also move qt6-build_src_prepare up given modifying files before patches tend to be messy. No revbump given use case is rather uncommon. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-05dev-qt/qtwebengine: make pkgcheck happier (qt6)Ionen Wolkens
ebuild needs more real refactoring (will do in a separate revbump), but at least address pkgcheck's warnings in this one wrt src_unpack (which triggers indirect git-r3 usage), not quite sure what the debug check was doing (repeated) there, and (currently) no patchset to unpack so can just drop the whole thing. For patchsets this may be better handled in qt6-build given it is the one inheriting git-r3. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-05dev-qt/qtwebengine: various adjustments for tests (qt6)Ionen Wolkens
* use -j1 (similarly to when I tried to use python-xdist on qutebrowser which uses qtwebengine, parallel tests don't seem to work so well here either) * skip tests that need network * skip cert test, not looked too closely but likely missing something or (maybe) expirations are causing issues * export various variables to stop it from using the system's qtwebengine (otherwise fails if not installed) Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-05dev-qt/*: streamline style a bit across qt6 ebuildsIonen Wolkens
Misc minor adjustments / sorting, but more commonly: * use same RDEPEND + DEPEND ordering everywhere, bit of both order is used all across and sometime inverted in Qt5's so let's match skel.ebuild to avoid confusion * use explicit :6 slots, not necessary with =PV but this is more about normalizing usage when multiple slots exist (plus *cough* qa-vdb won't complaint anymore) Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
2023-09-05dev-qt/*: import qt6 live ebuilds from ::qtIonen Wolkens
As-is, no changes in this commit which is mostly the same as the current in-tree ebuilds. Maintaining these in two different repos feels like just a hassle (to me), and would rather have everything in one place so I can change live and release ebuilds simultaneously as needed, plus not have to sync metadata or eclass changes either (plus chiitoo has ::gentoo commit access now). May move packages if I happen to work on them, albeit I have no intention to really touch Qt5 or LXQt (anyone working on these are free to the same if they want, or keep current workflow). Signed-off-by: Ionen Wolkens <ionen@gentoo.org>