From c02b2f0d630bddde61a858dd4740517c65c64c15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Nogueira?= Date: Tue, 11 May 2021 02:35:57 -0300 Subject: [PATCH] libreoffice: update to 7.1.3.2, adopt. - remove comment about missing dependencies: they are either not used by the current configuration (krb5 with system postgresql or nasm with system libjpeg) or were made to be used in this update (poppler) - use system fontforge to build opens___.ttf - use system ucpp as preprocessor - use system python3-lxml in the build process - use system poppler and libxml2 - remove outdated libtommath from distfiles - use vsed everywhere (and remove outdated stuff) - be explicit about bundling fonts - use make_build_target instead of make_build_args (more semantically correct) - patch so build can run in CI --- .../patches/0011-liborcus-unittest.patch | 13 --- .../libreoffice/patches/fix-vlc-backend.patch | 20 ++++ srcpkgs/libreoffice/template | 95 ++++++++----------- 3 files changed, 62 insertions(+), 66 deletions(-) delete mode 100644 srcpkgs/libreoffice/patches/0011-liborcus-unittest.patch create mode 100644 srcpkgs/libreoffice/patches/fix-vlc-backend.patch diff --git a/srcpkgs/libreoffice/patches/0011-liborcus-unittest.patch b/srcpkgs/libreoffice/patches/0011-liborcus-unittest.patch deleted file mode 100644 index d398fdc0a374..000000000000 --- a/srcpkgs/libreoffice/patches/0011-liborcus-unittest.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- sc/qa/unit/subsequent_filters-test.cxx 2018-02-22 18:45:41.000000000 +0100 -+++ sc/qa/unit/subsequent_filters-test.cxx 2018-03-02 11:24:08.616015560 +0100 -@@ -2395,7 +2395,9 @@ - CPPUNIT_ASSERT_MESSAGE("Style Name1 : Doesn't have Attribute background, but it should have.", - pStyleSheet->GetItemSet().HasItem(ATTR_BACKGROUND, &pItem)); - const SvxBrushItem* pBackground = static_cast(pItem); -- CPPUNIT_ASSERT_EQUAL(Color(254, 255, 204), pBackground->GetColor()); -+ /* This test fails with liborcus >= 0.13.3 -+ * CPPUNIT_ASSERT_EQUAL(Color(254, 255, 204), pBackground->GetColor()); -+ */ - - CPPUNIT_ASSERT_MESSAGE("Style Name1 : Doesn't have Attribute border, but it should have.", - pStyleSheet->GetItemSet().HasItem(ATTR_BORDER, &pItem)); diff --git a/srcpkgs/libreoffice/patches/fix-vlc-backend.patch b/srcpkgs/libreoffice/patches/fix-vlc-backend.patch new file mode 100644 index 000000000000..eabf413b86db --- /dev/null +++ b/srcpkgs/libreoffice/patches/fix-vlc-backend.patch @@ -0,0 +1,20 @@ + vcl: fix build with vlc backend enabled + + avmedia/source/vlc/vlcplayer.cxx tries to access the aWindow member + directly, which leads to a compilation failure, since it's private. + +diff --git include/vcl/sysdata.hxx include/vcl/sysdata.hxx +index 63b7c810de3d..0cd0e037c823 100644 +--- include/vcl/sysdata.hxx ++++ include/vcl/sysdata.hxx +@@ -73,9 +73,8 @@ struct VCL_DLLPUBLIC SystemEnvData + // however, the GTK3 vclplug wants to store pointers in here! + sal_IntPtr aShellWindow; // the window of the frame's shell + Platform platform; // the windowing system in use +-private: +- sal_uIntPtr aWindow; // the window of the object + public: ++ sal_uIntPtr aWindow; // the window of the object + + void SetWindowHandle(sal_uIntPtr nWindow) + { diff --git a/srcpkgs/libreoffice/template b/srcpkgs/libreoffice/template index d10c5e457a9d..f08066f12966 100644 --- a/srcpkgs/libreoffice/template +++ b/srcpkgs/libreoffice/template @@ -1,17 +1,14 @@ # Template file for 'libreoffice' pkgname=libreoffice -version=7.1.0.3 -revision=2 +version=7.1.3.2 +revision=1 build_style=meta -make_build_args="build-nocheck" +make_build_target="build-nocheck" nocross="Several dependencies are nocross=yes" -# -# XXX: mit-krb5-devel nasm hamcrest iwyu ogl-math poppler -# Missing, required libraries are downloaded and built internally -# hostmakedepends="automake flex git gperf hyphen icu libtool openldap which gettext xz - perl-Archive-Zip pkg-config qt5-qmake sane ucpp unzip wget zip python3-setuptools" + perl-Archive-Zip pkg-config qt5-qmake sane ucpp unzip wget zip python3-setuptools + fontforge python3-lxml" makedepends="CoinMP-devel apr-devel avahi-libs-devel clucene-devel frameworkintegration-devel glyphy-devel gpgmepp-devel gst-plugins-base1-devel gtk+-devel gtk+3-devel hunspell-devel hyphen-devel libXt-devel libabw-devel @@ -23,7 +20,7 @@ makedepends="CoinMP-devel apr-devel avahi-libs-devel clucene-devel libwps-devel lpsolve-devel mdds mythes-devel neon-devel nss-devel postgresql-libs-devel python3-devel qt5-devel redland-devel sane-devel telepathy-glib-devel unixodbc-devel vigra-devel vlc-devel libcppunit-devel - qrcodegen-devel xmlsec1-devel" + qrcodegen-devel xmlsec1-devel poppler-cpp-devel libxml2-devel" depends="libreoffice-common>=${version}_${revision}" depends+=" libreoffice-base>=${version}_${revision}" depends+=" libreoffice-calc>=${version}_${revision}" @@ -44,12 +41,12 @@ depends+=" libreoffice-i18n-it>=${version}_${revision}" depends+=" libreoffice-i18n-pl>=${version}_${revision}" depends+=" libreoffice-i18n-pt>=${version}_${revision}" short_desc="Productivity suite" -maintainer="Orphaned " +maintainer="Érico Nogueira " license="GPL-3.0-or-later" homepage="https://www.libreoffice.org/" # Source, dictionary, help and translations -_baseurl="https://download.documentfoundation.org/${pkgname}/src/${version%.*}" +_baseurl="https://download.documentfoundation.org/libreoffice/src/${version%.*}" _addurl="https://dev-www.libreoffice.org/src" _exturl="https://dev-www.libreoffice.org/extern" @@ -62,8 +59,7 @@ distfiles=" ${_baseurl}/${pkgname}-translations-${version}.tar.xz ${_addurl}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip ${_addurl}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip - ${_addurl}/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz - ${_addurl}/language-subtag-registry-2017-08-15.tar.bz2 + ${_addurl}/language-subtag-registry-2019-04-03.tar.bz2 ${_addurl}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip ${_addurl}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip ${_addurl}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip @@ -72,10 +68,9 @@ distfiles=" ${_addurl}/libstaroffice-0.0.7.tar.xz ${_addurl}/libzmf-0.0.2.tar.xz ${_addurl}/pdfium-4306.tar.bz2 - ${_addurl}/poppler-21.01.0.tar.xz ${_addurl}/bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip ${_exturl}/8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar - ${_exturl}/odfvalidator-0.9.0-RC2-SNAPSHOT-jar-with-dependencies-2726ab578664434a545f8379a01a9faffac0ae73.jar + ${_exturl}/odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies-971c54fd38a968f5860014b44301872706f9e540.jar ${_exturl}/185d60944ea767075d27247c3162b3bc-unowinreg.dll ${_addurl}/commons-logging-1.2-src.tar.gz ${_addurl}/dtoa-20180411.tgz @@ -90,11 +85,9 @@ distfiles=" ${_addurl}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip ${_addurl}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip ${_addurl}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - ${_addurl}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip ${_addurl}/7239a4430efd4d0189c4f24df67f08e5-mysql-connector-c++-1.1.4.tar.gz ${_addurl}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip ${_addurl}/skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz - ${_addurl}/ltm-1.0.zip ${_addurl}/368f114c078f94214a308a74c7e991bc-crosextrafonts-20130214.tar.gz ${_addurl}/c74b7223abe75949b4af367942d96c7a-crosextrafonts-carlito-20130920.tar.gz ${_addurl}/33e1e61fab06a547851ed308b4ffef42-dejavu-fonts-ttf-2.37.zip @@ -111,20 +104,17 @@ distfiles=" ${_addurl}/libre-hebrew-1.0.tar.gz ${_addurl}/alef-1.001.tar.gz ${_addurl}/ttf-kacst_2.01+mry.tar.gz - ${_exturl}/f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf - ${_addurl}/lxml-4.1.1.tgz ${_addurl}/Amiri-0.111.zip ${_addurl}/ReemKufi-0.7.zip ${_addurl}/Scheherazade-2.100.zip " -checksum="9ed0833f349da3f7b27f54fa24da388dc6a84079935322b305a7a2171e48f3e6 - 2d260ec3b24d577719706f56f83a3aa8839ee9c95d4b30b40ec2d7fc6a323afc - 698ae21765ae1e2df8bbc3b448fe88437055402708f6afe3ed6f746491887acf - b17e0d7c61de80526d22c11c63596c4d56aaa2b1ad0f14d29e0abdd8b3efcc54 +checksum="35af7fd104b253704f770a205f835aee0e82ccc889ebf0949a89d9b3276229bf + 66dc5fd4253f6b956b8fdde0d741ef7d85f12647db235642eb74f3d0a44d404e + e0f14b4db1585506761ad2ceeb43850cb594f2ec8a20fc9ca7bcb95e77408935 + 86138935d274d46d27e4ce92a72d759e7d4491d7b227be952e05735ba5c9b327 1fb458d6aab06932693cc8a9b6e4e70944ee1ff052fa63606e3131df34e21753 75823776fb51a9c526af904f1503a7afaaab900fba83eda64f8a41073724c870 - 983941d31ee8d366085cadf28db75eb1f5cb03ba1e5853b98f12f7f51c63b776 - d6a97fc8da5ae54d867e7f1b65ffb51e816cadd11714e45fc23ee0abf81a51ab + a1d7fb901764bb8f251d4f686cdf565764f9987d0fb5d9315d54a7366a84822d d30b13f4ba2e3b6a2d4f020c0dee0a9fb9fc6fbcc2d561f36b78da4bf3802370 1b5b24f7bc543c0362b667692f78db8bab4ed6dafc6172f104d0bd3757d8a133 233f66e8d25c5dd971716d4200203a612a407649686ef3b52075d04b4c9df0dd @@ -133,10 +123,9 @@ checksum="9ed0833f349da3f7b27f54fa24da388dc6a84079935322b305a7a2171e48f3e6 f94fb0ad8216f97127bedef163a45886b43c62deac5e5b0f5e628e234220c8db 27051a30cb057fdb5d5de65a1f165c7153dc76e27fe62251cbb86639eb2caf22 eca406d47ac7e2a84dcc86f93c08f96e591d409589e881477fa75e488e4851d8 - 016dde34e5f868ea98a32ca99b643325a9682281500942b7113f4ec88d20e2f3 d0312c360efe04dd048b3311fe375ff36f1993b4c2e3cb58c81062990532904a f2443f27561af52324eee03a1892d9f569adc8db9e7bca55614898bc2a13a770 - d55495ab3a86544650587de2a72180ddf8bfc6376d14ddfa923992dbc86a06e0 + 984f2a479df79e27e7b01a5815ac53ae64e07746b882262d8a64566494515504 eafde646a7dbe46d20c291685b0beac2382174d78d66ee990e229a1bf6e6cec6 49665da5a60d033e6dff40fe0a7f9173e886ae859ce6096c1afe34c48b677c81 0082d0684f7db6f62361b76c4b7faba19e0c7ce5cb8e36c4b65fea8281e711b4 @@ -151,11 +140,9 @@ checksum="9ed0833f349da3f7b27f54fa24da388dc6a84079935322b305a7a2171e48f3e6 3d853b19b1d94a6efa69e7af90f7f2b09ecf302913bee3da796c15ecfebcfac8 abe2c57ac12ba45d83563b02e240fa95d973376de2f720aab8fe11f2e621c095 05640a1f6805b2b2d7e2cb9c50db9a5cb084e3c52ab1a71ce015239b4a1d4343 - 7d2797fe9f79a77009721e3f14fa4a1dec17a6d706bdc93f85f1f01d124fab66 a25f14dad39e93a2f9cdf09166ee53981f7212dce829e4208e07a522963a8585 085f2112c51fa8c1783fac12fbd452650596415121348393bb51f0f7e85a9045 f293656a15342a53bb407b932fc907c6894178a162f09728bd383e24d84b1301 - 083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304f7281f8f7347483 c48d1c2fd613c9c06c959c34da7b8388059e2408d2bb19845dc3ed35f76e4d09 4bd12b6cbc321c1cf16da76e2c585c925ce956a08067ae6f6c64eff6ccfdaf5a 7576310b219e04159d35ff61dd4a4ec4cdba4f35c00e002a136f00e96a908b0a @@ -172,8 +159,6 @@ checksum="9ed0833f349da3f7b27f54fa24da388dc6a84079935322b305a7a2171e48f3e6 f596257c1db706ce35795b18d7f66a4db99d427725f20e9384914b534142579a b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52 dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56 - f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140 - 940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e 1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166 f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f 251c8817ceb87d9b661ce1d5b49e732a0116add10abc046be4b8ba5196e149b5" @@ -183,21 +168,18 @@ skip_extraction=" ${pkgname}-translations-${version}.tar.xz 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip - 0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz - language-subtag-registry-2017-08-15.tar.bz2 + language-subtag-registry-2019-04-03.tar.bz2 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip b63e6340a02ff1cacfeadb2c42286161-JLanguageTool-1.7.0.tar.bz2 - Firebird-3.0.0.32483-0.tar.bz2 box2d-2.3.1.tar.gz libstaroffice-0.0.7.tar.xz libzmf-0.0.2.tar.xz pdfium-4306.tar.bz2 - poppler-21.01.0.tar.xz bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip 8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar - odfvalidator-0.9.0-RC2-SNAPSHOT-jar-with-dependencies-2726ab578664434a545f8379a01a9faffac0ae73.jar + odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies-971c54fd38a968f5860014b44301872706f9e540.jar 185d60944ea767075d27247c3162b3bc-unowinreg.dll commons-logging-1.2-src.tar.gz dtoa-20180411.tgz @@ -212,11 +194,9 @@ skip_extraction=" 97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip 8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip 7239a4430efd4d0189c4f24df67f08e5-mysql-connector-c++-1.1.4.tar.gz 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip skia-m88-59bafeeaa7de9eb753e3778c414e01dcf013dcd8.tar.xz - ltm-1.0.zip 368f114c078f94214a308a74c7e991bc-crosextrafonts-20130214.tar.gz c74b7223abe75949b4af367942d96c7a-crosextrafonts-carlito-20130920.tar.gz 33e1e61fab06a547851ed308b4ffef42-dejavu-fonts-ttf-2.37.zip @@ -233,8 +213,6 @@ skip_extraction=" libre-hebrew-1.0.tar.gz alef-1.001.tar.gz ttf-kacst_2.01+mry.tar.gz - f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf - lxml-4.1.1.tgz Amiri-0.111.zip ReemKufi-0.7.zip Scheherazade-2.100.zip @@ -245,7 +223,7 @@ build_options="java" desc_option_java="Enable Java support" if [ "$XBPS_CHECK_PKGS" ]; then - make_build_args="build" + make_build_target="build" fi case "$XBPS_TARGET_MACHINE" in @@ -427,10 +405,8 @@ post_fetch() { done } -do_configure() { - local opts - - sed -i bin/distro-install-desktop-integration \ +post_patch() { + vsed -i bin/distro-install-desktop-integration \ -e "/gzip -f/d" \ -e "s|.1.gz|.1|g" chmod +x bin/unpack-sources @@ -441,17 +417,25 @@ do_configure() { case "$XBPS_TARGET_MACHINE" in i686*) # Don't run broken tests - sed -i "/CppunitTest_sw_ooxmlexport9/d" sw/Module_sw.mk - sed -i "/CPPUNIT_TEST(testTdf111798);/d" sd/qa/unit/export-tests-ooxml2.cxx + vsed -i "/CppunitTest_sw_ooxmlexport9/d" sw/Module_sw.mk + vsed -i "/CPPUNIT_TEST(testTdf111798);/d" sd/qa/unit/export-tests-ooxml2.cxx ;; esac + if [ "$XBPS_BUILD_ENVIRONMENT" = void-packages-ci ]; then + vsed -i "s/bootstrap: check-if-root compilerplugins/bootstrap: compilerplugins/" Makefile.in + fi +} + +do_configure() { + local opts + # Separate autogen.sh and configure because we need # to patch configure for musl support NOCONFIGURE=1 ./autogen.sh # Add linux-musl* as host OS to lines containing linux-gnu* - sed -i configure -e 's;linux-gnu\*;linux-gnu*|linux-musl*;g' + vsed -i configure -e 's;linux-gnu\*;linux-gnu*|linux-musl*;g' # standard options opts="--prefix=/usr" @@ -486,6 +470,8 @@ do_configure() { # opts+=" --enable-ext-languagetool" ;; esac + # Includes many fonts we don't package individually + opts+=" --with-fonts=yes" # skia sucks if [ "$XBPS_TARGET_ENDIAN" = "be" ]; then @@ -495,14 +481,13 @@ do_configure() { if [ "$build_option_java" ]; then opts+=" --with-java" opts+=" --with-jdk-home=/usr/lib/jvm/openjdk11" + # also disables hamcrest opts+=" --without-junit" else opts+=" --without-java" fi opts+=" --with-tls=nss" - # fails to build with system poppler opts+=" --without-system-box2d" - opts+=" --without-system-poppler" opts+=" --without-system-libzmf" opts+=" --without-system-libstaroffice" opts+=" --without-system-libtommath" @@ -512,6 +497,10 @@ do_configure() { # opts+=" --without-system-glm" opts+=" --with-myspell-dicts" opts+=" --with-system-icu-for-build=yes" + # use system utilities + opts+=" --enable-build-opensymbol" + opts+=" --with-system-ucpp=yes" + # finish configuring build opts+=" --with-external-dict-dir=${XBPS_CROSS_BASE}/usr/share/hunspell" opts+=" --with-external-hyph-dir=${XBPS_CROSS_BASE}/usr/share/hyphen" opts+=" --with-external-thes-dir=${XBPS_CROSS_BASE}/usr/share/mythes" @@ -519,12 +508,12 @@ do_configure() { ./configure ${opts} --with-lang="${_languages}" - # Disable slowchecks target - sed -i Makefile -e "/gb_Top_MODULE_CHECK_TARGETS /s/ slowchecks//" + # Disable slowcheck target + vsed -i Makefile -e "/gb_Top_MODULE_CHECK_TARGETS /s/ slowcheck//" } do_build() { - make ${makejobs} ${make_build_args} + make ${makejobs} ${make_build_target} make ${makejobs} -C libreofficekit # on some platforms (32-bit ppc at least), this single file has