From 118f7b8a9eca4db1631f58fdfe0ca39046714e3a Mon Sep 17 00:00:00 2001 From: Rene Engelhard Date: Wed, 23 Apr 2025 19:20:04 +0200 Subject: [PATCH] Import libreoffice_25.2.2-3.debian.tar.xz [dgit import tarball libreoffice 4:25.2.2-3 libreoffice_25.2.2-3.debian.tar.xz] --- debian/README | 83 + debian/README.Debian | 307 ++ debian/README.Debian-source | 103 + debian/README.qa | 59 + debian/branding/progress.conf | 1 + debian/bug-presubj | 61 + debian/changelog | Bin 0 -> 717243 bytes debian/control | Bin 0 -> 248842 bytes debian/control.cil.in | 56 + debian/control.evolution.in | 19 + debian/control.firebird.in | 13 + debian/control.fonts.in | 13 + debian/control.gtk3.in | 63 + debian/control.gtk4.in | 18 + debian/control.help.in | 18 + debian/control.in | 1082 ++++ debian/control.kf5.in | 17 + debian/control.kf6.in | 16 + debian/control.lang.in | 30 + debian/control.librelogo.in | 23 + debian/control.lokit.in | 12 + debian/control.mediawiki.in | 18 + debian/control.nlpsolver.in | 15 + debian/control.plasma.in | 13 + debian/control.postgresql.in | 18 + debian/control.qt5.in | 17 + debian/control.qt6.in | 15 + debian/control.reportbuilder.in | 74 + debian/control.sdk.in | 70 + debian/control.test-packages.in | 18 + debian/control.ure.in | 180 + debian/copyright | 394 ++ debian/liblibreoffice-java.lintian-overrides | 5 + debian/liblibreoffice-java.poms | 32 + debian/liblibreofficekitgtk.links | 1 + debian/libofficebean-java.poms | 28 + debian/libreoffice-base-drivers.NEWS | 14 + ...libreoffice-base-drivers.lintian-overrides | 2 + debian/libreoffice-base-nogui.bug-control | 2 + debian/libreoffice-base-nogui.mime | 11 + debian/libreoffice-base-nogui.preinst.in | 15 + debian/libreoffice-base.NEWS | 14 + debian/libreoffice-base.bug-control | 2 + debian/libreoffice-base.lintian-overrides | 3 + debian/libreoffice-base.manpages | 1 + debian/libreoffice-base.mime | 11 + debian/libreoffice-base.preinst.in | 31 + .../libreoffice-calc-nogui.lintian-overrides | 1 + debian/libreoffice-calc-nogui.mime | 37 + debian/libreoffice-calc-nogui.preinst.in | 15 + debian/libreoffice-calc.bug-control | 1 + debian/libreoffice-calc.config.in | 10 + debian/libreoffice-calc.lintian-overrides | 2 + debian/libreoffice-calc.manpages | 2 + debian/libreoffice-calc.mime | 37 + debian/libreoffice-calc.postinst.in | 11 + debian/libreoffice-calc.preinst.in | 15 + debian/libreoffice-calc.templates | 10 + debian/libreoffice-common.docs | 1 + debian/libreoffice-common.links.in | 37 + debian/libreoffice-common.lintian-overrides | 2 + debian/libreoffice-common.maintscript | 1 + debian/libreoffice-common.manpages | 4 + debian/libreoffice-common.postinst.in | 29 + debian/libreoffice-common.postrm.in | 26 + debian/libreoffice-common.preinst.in | 24 + debian/libreoffice-common.triggers.in | 2 + debian/libreoffice-common.ucf | 1 + debian/libreoffice-core-nogui.bug-control | 1 + debian/libreoffice-core-nogui.bug-script.in | 16 + debian/libreoffice-core.NEWS | 13 + debian/libreoffice-core.bug-control | 2 + debian/libreoffice-core.bug-script.in | 20 + debian/libreoffice-core.postrm.in | 13 + debian/libreoffice-dev-doc.links | 1 + debian/libreoffice-draw-nogui.bug-control | 1 + debian/libreoffice-draw-nogui.mime | 13 + debian/libreoffice-draw-nogui.preinst.in | 19 + debian/libreoffice-draw.bug-control | 1 + debian/libreoffice-draw.lintian-overrides | 1 + debian/libreoffice-draw.manpages | 1 + debian/libreoffice-draw.mime | 13 + debian/libreoffice-draw.preinst.in | 19 + debian/libreoffice-evolution.bug-control | 1 + debian/libreoffice-evolution.preinst.in | 15 + debian/libreoffice-gnome.preinst.in | 15 + debian/libreoffice-help-common.links | 3 + debian/libreoffice-help.lintian-overrides.in | 15 + debian/libreoffice-impress-nogui.bug-control | 1 + debian/libreoffice-impress-nogui.mime | 25 + debian/libreoffice-impress-nogui.preinst.in | 15 + debian/libreoffice-impress.bug-control | 1 + debian/libreoffice-impress.bug-script.in | 3 + debian/libreoffice-impress.lintian-overrides | 1 + debian/libreoffice-impress.manpages | 1 + debian/libreoffice-impress.mime | 25 + debian/libreoffice-impress.preinst.in | 19 + debian/libreoffice-l10n.preinst.in | 38 + debian/libreoffice-librelogo.preinst.in | 15 + debian/libreoffice-math-nogui.bug-control | 1 + debian/libreoffice-math-nogui.mime | 14 + debian/libreoffice-math-nogui.preinst.in | 15 + debian/libreoffice-math.bug-control | 1 + debian/libreoffice-math.lintian-overrides | 1 + debian/libreoffice-math.manpages | 1 + debian/libreoffice-math.mime | 14 + debian/libreoffice-math.preinst.in | 15 + debian/libreoffice-nlpsolver.bug-control | 1 + debian/libreoffice-nlpsolver.bug-script.in | 2 + .../libreoffice-nlpsolver.lintian-overrides | 3 + debian/libreoffice-report-builder.bug-control | 1 + debian/libreoffice-report-builder.preinst.in | 15 + ...eoffice-script-provider-python.bug-control | 1 + debian/libreoffice-sdbc-firebird.NEWS | 21 + .../libreoffice-sdbc-firebird.bug-script.in | 10 + ...ibreoffice-sdbc-firebird.lintian-overrides | 2 + debian/libreoffice-sdbc-firebird.preinst.in | 15 + debian/libreoffice-sdbc-hsqldb.preinst.in | 15 + debian/libreoffice-sdbc-mysql.preinst.in | 15 + debian/libreoffice-sdbc-postgresql.preinst.in | 15 + debian/libreoffice-wiki-publisher.bug-control | 1 + .../libreoffice-wiki-publisher.bug-script.in | 2 + ...breoffice-wiki-publisher.lintian-overrides | 2 + debian/libreoffice-writer-nogui.bug-control | 1 + debian/libreoffice-writer-nogui.mime | 37 + debian/libreoffice-writer-nogui.preinst.in | 15 + debian/libreoffice-writer.bug-control | 1 + debian/libreoffice-writer.lintian-overrides | 1 + debian/libreoffice-writer.manpages | 3 + debian/libreoffice-writer.mime | 37 + debian/libreoffice-writer.preinst.in | 15 + debian/libreoffice.bug-control | 2 + debian/libreofficekit-dev.docs | 1 + debian/libreofficekit-dev.links | 1 + debian/libuno-cppu3t64.lintian-overrides | 2 + debian/libuno-cppu3t64.symbols | 11 + ...buno-cppuhelpergcc3-3t64.lintian-overrides | 3 + debian/libuno-cppuhelpergcc3-3t64.symbols | 18 + ...o-purpenvhelpergcc3-3t64.lintian-overrides | 2 + debian/libuno-purpenvhelpergcc3-3t64.symbols | 7 + debian/libuno-sal3t64.lintian-overrides | 2 + debian/libuno-sal3t64.symbols | 42 + ...ibuno-salhelpergcc3-3t64.lintian-overrides | 2 + debian/libuno-salhelpergcc3-3t64.symbols | 9 + debian/libunoloader-java.poms | 28 + debian/patches/adapt-for-new-carlito.diff | 74 + debian/patches/add-access2base-doc.diff | Bin 0 -> 1274762 bytes .../patches/apparmor-allow-java.security.diff | 14 + debian/patches/apparmor-cleanups.diff | 35 + debian/patches/apparmor-complain.diff | 26 + debian/patches/apparmor-gnupg-tofu.diff | 28 + debian/patches/apparmor-mesa.diff | 10 + debian/patches/apparmor-opencl.diff | 20 + debian/patches/apparmor-updates.diff | 21 + .../patches/appstream-ignore-startcenter.diff | 10 + debian/patches/arm-fp-mode.diff | 15 + .../patches/build-against-shared-lpsolve.diff | 27 + debian/patches/cppunit-optional.diff | 213 + debian/patches/debian-debug.diff | 47 + .../debian-hardened-buildflags-CPPFLAGS.diff | 37 + ...ldflags-no-LO-fstack-protector-strong.diff | 32 + debian/patches/debian-opt.diff | 26 + debian/patches/disable-flaky-tests.diff | 154 + ...java-in-odk-build-examples-on-zero-vm.diff | 58 + ...sable-shortcuts_tab_navigation-uitest.diff | 34 + ...able-tdf163105-tests-due-to-old-amiri.diff | 197 + .../disable-uitest-xmlsecurity-gpg.diff | 17 + .../patches/disable-unused-test-programs.diff | 70 + debian/patches/disableClassPathURLCheck.diff | 10 + ...not-abort-on-NON_APPLICATION_FONT_USE.diff | 14 + debian/patches/do-not-hide-test-output.diff | 99 + debian/patches/dont-touch-urd.diff | 80 + debian/patches/fix-32bits-test-build.diff | 134 + debian/patches/fix-flaky-bridgetest.diff | 38 + debian/patches/fix-internal-hsqldb-build.diff | 45 + debian/patches/fix-system-lpsolve-build.diff | 31 + debian/patches/help-msg-add-package-info.diff | 13 + debian/patches/hide-math-desktop-file.patch | 15 + debian/patches/install-fixes.diff | 166 + debian/patches/javadoc-optional.diff | 151 + debian/patches/jdbc-driver-classpaths.diff | 35 + .../patches/jdk-minimal-and-zero-paths.diff | 61 + debian/patches/jurt-soffice-location.diff | 20 + debian/patches/lo-xlate-lang-add-tl.diff | 12 + .../make-package-modules-not-suck.diff | 210 + debian/patches/mediwiki-oor-replace.diff | 51 + .../patches/mention-java-common-package.diff | 35 + .../moreIconsDialog-accesses-internet.diff | 21 + debian/patches/no-opencl-per-default.diff | 26 + debian/patches/no-packagekit-per-default.diff | 21 + debian/patches/pdfium-ports.diff | 42 + .../qt-avmedia-handle-null-media-player.diff | 81 + .../patches/reportdesign-mention-package.diff | 13 + ...ffdf1b2872b4bcac657f7bcf63f19c261a5c6.diff | 43 + ...c452e5e6b7acad6932df7d1cd2f0950d47f33.diff | 43 + .../patches/search-usr-share-for-images.diff | 137 + debian/patches/sensible-lomua.diff | 50 + debian/patches/series | 56 + debian/patches/splits-adapt-registry.diff | 168 + debian/patches/system-colamd.diff | 181 + .../system-officeotron-and-odfvalidator.diff | 16 + ...se-mariadb-java-instead-of-mysql-java.diff | 59 + .../we-dont-have-the-needed-fonts.diff | 170 + debian/po/POTFILES.in | 2 + debian/po/ar.po | 47 + debian/po/ca.po | 49 + debian/po/cs.po | 47 + debian/po/de.po | 45 + debian/po/es.po | 50 + debian/po/fr.po | 46 + debian/po/gl.po | 49 + debian/po/nl.po | 50 + debian/po/pt.po | 50 + debian/po/pt_BR.po | 48 + debian/po/templates.pot | 41 + debian/python3-access2base.links | 1 + debian/python3-uno.NEWS | 11 + debian/python3-uno.lintian-overrides | 5 + debian/python3-uno.preinst.in | 19 + debian/rules | 4776 +++++++++++++++++ debian/scripts/fix_component_tarballs.sh | 36 + debian/scripts/get_libebook_dep.sh | 33 + debian/scripts/gid2pkgdirs.sh | 177 + debian/scripts/joinctrl.py | 66 + debian/scripts/locale-gen | 32 + debian/scripts/move-if-change | 32 + debian/scripts/stat_pos.sh | 32 + debian/shell-lib-extensions.sh | 12 + debian/shell-lib-lool.sh | 5 + debian/shlibs.override.icu | 5 + debian/shlibs.override.libc | 1 + debian/shlibs.override.libetonyek | 1 + debian/shlibs.override.liblangtag | 1 + debian/shlibs.override.libmwaw | 1 + debian/shlibs.override.libodfgen | 1 + debian/shlibs.override.librevenge | 1 + debian/shlibs.override.libstaroffice | 1 + debian/shlibs.override.libvisio | 1 + debian/shlibs.override.libwpd | 1 + debian/shlibs.override.libwpg | 1 + debian/shlibs.override.libwps | 1 + debian/shlibs.override.orcus | 2 + debian/soffice.sh | 21 + debian/source/format | 1 + debian/source/include-binaries | 8 + debian/source/lintian-overrides | 30 + .../debian-presentation-background.xcf | Bin 0 -> 2202921 bytes debian/templates/debian-presentation.otp | Bin 0 -> 726796 bytes debian/templates/soffice-template.desktop.in | 8 + debian/tests/access2base-import | 4 + debian/tests/control | 157 + debian/tests/control.in | 138 + debian/tests/control.junit.in | 5 + debian/tests/control.mysql.in | 8 + debian/tests/cppunit-connectivity-mysql | 123 + debian/tests/cppunit-subsequentcheck | 61 + debian/tests/fake-build-tests | 153 + debian/tests/junit-subsequentcheck | 64 + debian/tests/odk-build-examples | 50 + debian/tests/odk-build-examples-java | 56 + debian/tests/patches/cppunit-standalone.diff | 15 + debian/tests/patches/disable-db-tests.diff | 130 + .../junit-subsequentcheck-standalone.diff | 139 + .../odk-build-examples-standalone.diff | 50 + .../smoketest-disable-extension-tests.diff | 117 + .../tests/patches/smoketest-standalone.diff | 17 + .../tests/patches/testtools-standalone.diff | 214 + debian/tests/patches/uicheck-standalone.diff | 69 + debian/tests/pyuno-import | 8 + debian/tests/scriptforge-import | 4 + debian/tests/slowcheck | 53 + debian/tests/smoketest | 56 + debian/tests/test-extension | 40 + debian/tests/test-extension-shared | 34 + debian/tests/testtools-bridgetest-with-java | 57 + .../tests/testtools-bridgetest-without-java | 57 + debian/tests/uicheck-cui | 63 + debian/tests/uicheck-sc | 63 + debian/tests/uicheck-sd | 63 + debian/tests/uicheck-sfx2 | 63 + debian/tests/uicheck-svx | 63 + debian/tests/uicheck-sw | 63 + debian/tests/uicheck-uitest | 63 + debian/tests/uicheck-writerperfect | 63 + debian/tests/uicheck-xmlsecurity | 66 + debian/tests/unitcheck | 64 + debian/tests/uno-import | 4 + debian/upstream/metadata | 7 + debian/upstream/signing-key.asc | 66 + debian/ure-java.bug-script.in | 16 + debian/ure-java.lintian-overrides | 1 + debian/vars.alpha | 3 + debian/vars.amd64 | 3 + debian/vars.arm | 3 + debian/vars.arm64 | 3 + debian/vars.armel | 3 + debian/vars.armhf | 3 + debian/vars.hppa | 3 + debian/vars.i386 | 3 + debian/vars.ia64 | 3 + debian/vars.kfreebsd-amd64 | 3 + debian/vars.kfreebsd-i386 | 3 + debian/vars.loong64 | 3 + debian/vars.m68k | 3 + debian/vars.mips | 3 + debian/vars.mips64 | 3 + debian/vars.mips64el | 3 + debian/vars.mipsel | 3 + debian/vars.powerpc | 3 + debian/vars.powerpcspe | 3 + debian/vars.ppc64 | 3 + debian/vars.ppc64el | 3 + debian/vars.riscv64 | 3 + debian/vars.s390x | 3 + debian/vars.sparc | 3 + debian/vars.sparc64 | 3 + debian/watch | 40 + debian/xmerge-javadoc.in | 7 + ...3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz | Bin 0 -> 769268 bytes tarballs/Java-WebSocket-1.6.0.tar.gz | Bin 0 -> 190202 bytes ...59eafb2677d7ff386a023bc40-xsltml_2.1.2.zip | Bin 0 -> 23150 bytes tarballs/dtoa-20180411.tgz | Bin 0 -> 48893 bytes tarballs/pdfium-6764.tar.bz2 | Bin 0 -> 11121305 bytes ...59d5df2fa9794b277f0959ed8a92552bf4c.tar.xz | Bin 0 -> 14368844 bytes 324 files changed, 16104 insertions(+) create mode 100644 debian/README create mode 100644 debian/README.Debian create mode 100644 debian/README.Debian-source create mode 100644 debian/README.qa create mode 100644 debian/branding/progress.conf create mode 100644 debian/bug-presubj create mode 100644 debian/changelog create mode 100644 debian/control create mode 100644 debian/control.cil.in create mode 100644 debian/control.evolution.in create mode 100644 debian/control.firebird.in create mode 100644 debian/control.fonts.in create mode 100644 debian/control.gtk3.in create mode 100644 debian/control.gtk4.in create mode 100644 debian/control.help.in create mode 100644 debian/control.in create mode 100644 debian/control.kf5.in create mode 100644 debian/control.kf6.in create mode 100644 debian/control.lang.in create mode 100644 debian/control.librelogo.in create mode 100644 debian/control.lokit.in create mode 100644 debian/control.mediawiki.in create mode 100644 debian/control.nlpsolver.in create mode 100644 debian/control.plasma.in create mode 100644 debian/control.postgresql.in create mode 100644 debian/control.qt5.in create mode 100644 debian/control.qt6.in create mode 100644 debian/control.reportbuilder.in create mode 100644 debian/control.sdk.in create mode 100644 debian/control.test-packages.in create mode 100644 debian/control.ure.in create mode 100644 debian/copyright create mode 100644 debian/liblibreoffice-java.lintian-overrides create mode 100644 debian/liblibreoffice-java.poms create mode 100644 debian/liblibreofficekitgtk.links create mode 100644 debian/libofficebean-java.poms create mode 100644 debian/libreoffice-base-drivers.NEWS create mode 100644 debian/libreoffice-base-drivers.lintian-overrides create mode 100644 debian/libreoffice-base-nogui.bug-control create mode 100644 debian/libreoffice-base-nogui.mime create mode 100644 debian/libreoffice-base-nogui.preinst.in create mode 100644 debian/libreoffice-base.NEWS create mode 100644 debian/libreoffice-base.bug-control create mode 100644 debian/libreoffice-base.lintian-overrides create mode 100644 debian/libreoffice-base.manpages create mode 100644 debian/libreoffice-base.mime create mode 100644 debian/libreoffice-base.preinst.in create mode 100644 debian/libreoffice-calc-nogui.lintian-overrides create mode 100644 debian/libreoffice-calc-nogui.mime create mode 100644 debian/libreoffice-calc-nogui.preinst.in create mode 100644 debian/libreoffice-calc.bug-control create mode 100644 debian/libreoffice-calc.config.in create mode 100644 debian/libreoffice-calc.lintian-overrides create mode 100644 debian/libreoffice-calc.manpages create mode 100644 debian/libreoffice-calc.mime create mode 100644 debian/libreoffice-calc.postinst.in create mode 100644 debian/libreoffice-calc.preinst.in create mode 100644 debian/libreoffice-calc.templates create mode 100644 debian/libreoffice-common.docs create mode 100644 debian/libreoffice-common.links.in create mode 100644 debian/libreoffice-common.lintian-overrides create mode 100644 debian/libreoffice-common.maintscript create mode 100644 debian/libreoffice-common.manpages create mode 100644 debian/libreoffice-common.postinst.in create mode 100644 debian/libreoffice-common.postrm.in create mode 100644 debian/libreoffice-common.preinst.in create mode 100644 debian/libreoffice-common.triggers.in create mode 100644 debian/libreoffice-common.ucf create mode 100644 debian/libreoffice-core-nogui.bug-control create mode 100755 debian/libreoffice-core-nogui.bug-script.in create mode 100644 debian/libreoffice-core.NEWS create mode 100644 debian/libreoffice-core.bug-control create mode 100755 debian/libreoffice-core.bug-script.in create mode 100755 debian/libreoffice-core.postrm.in create mode 100644 debian/libreoffice-dev-doc.links create mode 100644 debian/libreoffice-draw-nogui.bug-control create mode 100644 debian/libreoffice-draw-nogui.mime create mode 100644 debian/libreoffice-draw-nogui.preinst.in create mode 100644 debian/libreoffice-draw.bug-control create mode 100644 debian/libreoffice-draw.lintian-overrides create mode 100644 debian/libreoffice-draw.manpages create mode 100644 debian/libreoffice-draw.mime create mode 100644 debian/libreoffice-draw.preinst.in create mode 100644 debian/libreoffice-evolution.bug-control create mode 100644 debian/libreoffice-evolution.preinst.in create mode 100644 debian/libreoffice-gnome.preinst.in create mode 100644 debian/libreoffice-help-common.links create mode 100644 debian/libreoffice-help.lintian-overrides.in create mode 100644 debian/libreoffice-impress-nogui.bug-control create mode 100644 debian/libreoffice-impress-nogui.mime create mode 100644 debian/libreoffice-impress-nogui.preinst.in create mode 100644 debian/libreoffice-impress.bug-control create mode 100644 debian/libreoffice-impress.bug-script.in create mode 100644 debian/libreoffice-impress.lintian-overrides create mode 100644 debian/libreoffice-impress.manpages create mode 100644 debian/libreoffice-impress.mime create mode 100644 debian/libreoffice-impress.preinst.in create mode 100644 debian/libreoffice-l10n.preinst.in create mode 100644 debian/libreoffice-librelogo.preinst.in create mode 100644 debian/libreoffice-math-nogui.bug-control create mode 100644 debian/libreoffice-math-nogui.mime create mode 100644 debian/libreoffice-math-nogui.preinst.in create mode 100644 debian/libreoffice-math.bug-control create mode 100644 debian/libreoffice-math.lintian-overrides create mode 100644 debian/libreoffice-math.manpages create mode 100644 debian/libreoffice-math.mime create mode 100644 debian/libreoffice-math.preinst.in create mode 100644 debian/libreoffice-nlpsolver.bug-control create mode 100755 debian/libreoffice-nlpsolver.bug-script.in create mode 100644 debian/libreoffice-nlpsolver.lintian-overrides create mode 100644 debian/libreoffice-report-builder.bug-control create mode 100644 debian/libreoffice-report-builder.preinst.in create mode 100644 debian/libreoffice-script-provider-python.bug-control create mode 100644 debian/libreoffice-sdbc-firebird.NEWS create mode 100644 debian/libreoffice-sdbc-firebird.bug-script.in create mode 100644 debian/libreoffice-sdbc-firebird.lintian-overrides create mode 100644 debian/libreoffice-sdbc-firebird.preinst.in create mode 100644 debian/libreoffice-sdbc-hsqldb.preinst.in create mode 100644 debian/libreoffice-sdbc-mysql.preinst.in create mode 100644 debian/libreoffice-sdbc-postgresql.preinst.in create mode 100644 debian/libreoffice-wiki-publisher.bug-control create mode 100755 debian/libreoffice-wiki-publisher.bug-script.in create mode 100644 debian/libreoffice-wiki-publisher.lintian-overrides create mode 100644 debian/libreoffice-writer-nogui.bug-control create mode 100644 debian/libreoffice-writer-nogui.mime create mode 100644 debian/libreoffice-writer-nogui.preinst.in create mode 100644 debian/libreoffice-writer.bug-control create mode 100644 debian/libreoffice-writer.lintian-overrides create mode 100644 debian/libreoffice-writer.manpages create mode 100644 debian/libreoffice-writer.mime create mode 100644 debian/libreoffice-writer.preinst.in create mode 100644 debian/libreoffice.bug-control create mode 100644 debian/libreofficekit-dev.docs create mode 100644 debian/libreofficekit-dev.links create mode 100644 debian/libuno-cppu3t64.lintian-overrides create mode 100644 debian/libuno-cppu3t64.symbols create mode 100644 debian/libuno-cppuhelpergcc3-3t64.lintian-overrides create mode 100644 debian/libuno-cppuhelpergcc3-3t64.symbols create mode 100644 debian/libuno-purpenvhelpergcc3-3t64.lintian-overrides create mode 100644 debian/libuno-purpenvhelpergcc3-3t64.symbols create mode 100644 debian/libuno-sal3t64.lintian-overrides create mode 100644 debian/libuno-sal3t64.symbols create mode 100644 debian/libuno-salhelpergcc3-3t64.lintian-overrides create mode 100644 debian/libuno-salhelpergcc3-3t64.symbols create mode 100644 debian/libunoloader-java.poms create mode 100644 debian/patches/adapt-for-new-carlito.diff create mode 100644 debian/patches/add-access2base-doc.diff create mode 100644 debian/patches/apparmor-allow-java.security.diff create mode 100644 debian/patches/apparmor-cleanups.diff create mode 100644 debian/patches/apparmor-complain.diff create mode 100644 debian/patches/apparmor-gnupg-tofu.diff create mode 100644 debian/patches/apparmor-mesa.diff create mode 100644 debian/patches/apparmor-opencl.diff create mode 100644 debian/patches/apparmor-updates.diff create mode 100644 debian/patches/appstream-ignore-startcenter.diff create mode 100644 debian/patches/arm-fp-mode.diff create mode 100644 debian/patches/build-against-shared-lpsolve.diff create mode 100644 debian/patches/cppunit-optional.diff create mode 100644 debian/patches/debian-debug.diff create mode 100644 debian/patches/debian-hardened-buildflags-CPPFLAGS.diff create mode 100644 debian/patches/debian-hardened-buildflags-no-LO-fstack-protector-strong.diff create mode 100644 debian/patches/debian-opt.diff create mode 100644 debian/patches/disable-flaky-tests.diff create mode 100644 debian/patches/disable-java-in-odk-build-examples-on-zero-vm.diff create mode 100644 debian/patches/disable-shortcuts_tab_navigation-uitest.diff create mode 100644 debian/patches/disable-tdf163105-tests-due-to-old-amiri.diff create mode 100644 debian/patches/disable-uitest-xmlsecurity-gpg.diff create mode 100644 debian/patches/disable-unused-test-programs.diff create mode 100644 debian/patches/disableClassPathURLCheck.diff create mode 100644 debian/patches/do-not-abort-on-NON_APPLICATION_FONT_USE.diff create mode 100644 debian/patches/do-not-hide-test-output.diff create mode 100644 debian/patches/dont-touch-urd.diff create mode 100644 debian/patches/fix-32bits-test-build.diff create mode 100644 debian/patches/fix-flaky-bridgetest.diff create mode 100644 debian/patches/fix-internal-hsqldb-build.diff create mode 100644 debian/patches/fix-system-lpsolve-build.diff create mode 100644 debian/patches/help-msg-add-package-info.diff create mode 100644 debian/patches/hide-math-desktop-file.patch create mode 100644 debian/patches/install-fixes.diff create mode 100644 debian/patches/javadoc-optional.diff create mode 100644 debian/patches/jdbc-driver-classpaths.diff create mode 100644 debian/patches/jdk-minimal-and-zero-paths.diff create mode 100644 debian/patches/jurt-soffice-location.diff create mode 100644 debian/patches/lo-xlate-lang-add-tl.diff create mode 100644 debian/patches/make-package-modules-not-suck.diff create mode 100644 debian/patches/mediwiki-oor-replace.diff create mode 100644 debian/patches/mention-java-common-package.diff create mode 100644 debian/patches/moreIconsDialog-accesses-internet.diff create mode 100644 debian/patches/no-opencl-per-default.diff create mode 100644 debian/patches/no-packagekit-per-default.diff create mode 100644 debian/patches/pdfium-ports.diff create mode 100644 debian/patches/qt-avmedia-handle-null-media-player.diff create mode 100644 debian/patches/reportdesign-mention-package.diff create mode 100644 debian/patches/revert-67cffdf1b2872b4bcac657f7bcf63f19c261a5c6.diff create mode 100644 debian/patches/revert-858c452e5e6b7acad6932df7d1cd2f0950d47f33.diff create mode 100644 debian/patches/search-usr-share-for-images.diff create mode 100644 debian/patches/sensible-lomua.diff create mode 100644 debian/patches/series create mode 100644 debian/patches/splits-adapt-registry.diff create mode 100644 debian/patches/system-colamd.diff create mode 100644 debian/patches/system-officeotron-and-odfvalidator.diff create mode 100644 debian/patches/use-mariadb-java-instead-of-mysql-java.diff create mode 100644 debian/patches/we-dont-have-the-needed-fonts.diff create mode 100644 debian/po/POTFILES.in create mode 100644 debian/po/ar.po create mode 100644 debian/po/ca.po create mode 100644 debian/po/cs.po create mode 100644 debian/po/de.po create mode 100644 debian/po/es.po create mode 100644 debian/po/fr.po create mode 100644 debian/po/gl.po create mode 100644 debian/po/nl.po create mode 100644 debian/po/pt.po create mode 100644 debian/po/pt_BR.po create mode 100644 debian/po/templates.pot create mode 100644 debian/python3-access2base.links create mode 100644 debian/python3-uno.NEWS create mode 100644 debian/python3-uno.lintian-overrides create mode 100644 debian/python3-uno.preinst.in create mode 100755 debian/rules create mode 100755 debian/scripts/fix_component_tarballs.sh create mode 100755 debian/scripts/get_libebook_dep.sh create mode 100755 debian/scripts/gid2pkgdirs.sh create mode 100755 debian/scripts/joinctrl.py create mode 100755 debian/scripts/locale-gen create mode 100755 debian/scripts/move-if-change create mode 100755 debian/scripts/stat_pos.sh create mode 100644 debian/shell-lib-extensions.sh create mode 100644 debian/shell-lib-lool.sh create mode 100644 debian/shlibs.override.icu create mode 100644 debian/shlibs.override.libc create mode 100644 debian/shlibs.override.libetonyek create mode 100644 debian/shlibs.override.liblangtag create mode 100644 debian/shlibs.override.libmwaw create mode 100644 debian/shlibs.override.libodfgen create mode 100644 debian/shlibs.override.librevenge create mode 100644 debian/shlibs.override.libstaroffice create mode 100644 debian/shlibs.override.libvisio create mode 100644 debian/shlibs.override.libwpd create mode 100644 debian/shlibs.override.libwpg create mode 100644 debian/shlibs.override.libwps create mode 100644 debian/shlibs.override.orcus create mode 100644 debian/soffice.sh create mode 100644 debian/source/format create mode 100644 debian/source/include-binaries create mode 100644 debian/source/lintian-overrides create mode 100644 debian/templates/debian-presentation-background.xcf create mode 100644 debian/templates/debian-presentation.otp create mode 100644 debian/templates/soffice-template.desktop.in create mode 100755 debian/tests/access2base-import create mode 100644 debian/tests/control create mode 100644 debian/tests/control.in create mode 100644 debian/tests/control.junit.in create mode 100644 debian/tests/control.mysql.in create mode 100755 debian/tests/cppunit-connectivity-mysql create mode 100755 debian/tests/cppunit-subsequentcheck create mode 100755 debian/tests/fake-build-tests create mode 100755 debian/tests/junit-subsequentcheck create mode 100755 debian/tests/odk-build-examples create mode 100755 debian/tests/odk-build-examples-java create mode 100644 debian/tests/patches/cppunit-standalone.diff create mode 100644 debian/tests/patches/disable-db-tests.diff create mode 100644 debian/tests/patches/junit-subsequentcheck-standalone.diff create mode 100644 debian/tests/patches/odk-build-examples-standalone.diff create mode 100644 debian/tests/patches/smoketest-disable-extension-tests.diff create mode 100644 debian/tests/patches/smoketest-standalone.diff create mode 100644 debian/tests/patches/testtools-standalone.diff create mode 100644 debian/tests/patches/uicheck-standalone.diff create mode 100755 debian/tests/pyuno-import create mode 100755 debian/tests/scriptforge-import create mode 100755 debian/tests/slowcheck create mode 100755 debian/tests/smoketest create mode 100755 debian/tests/test-extension create mode 100755 debian/tests/test-extension-shared create mode 100755 debian/tests/testtools-bridgetest-with-java create mode 100755 debian/tests/testtools-bridgetest-without-java create mode 100755 debian/tests/uicheck-cui create mode 100755 debian/tests/uicheck-sc create mode 100755 debian/tests/uicheck-sd create mode 100755 debian/tests/uicheck-sfx2 create mode 100755 debian/tests/uicheck-svx create mode 100755 debian/tests/uicheck-sw create mode 100755 debian/tests/uicheck-uitest create mode 100755 debian/tests/uicheck-writerperfect create mode 100755 debian/tests/uicheck-xmlsecurity create mode 100755 debian/tests/unitcheck create mode 100755 debian/tests/uno-import create mode 100644 debian/upstream/metadata create mode 100644 debian/upstream/signing-key.asc create mode 100644 debian/ure-java.bug-script.in create mode 100644 debian/ure-java.lintian-overrides create mode 100644 debian/vars.alpha create mode 100644 debian/vars.amd64 create mode 100644 debian/vars.arm create mode 100644 debian/vars.arm64 create mode 100644 debian/vars.armel create mode 100644 debian/vars.armhf create mode 100644 debian/vars.hppa create mode 100644 debian/vars.i386 create mode 100644 debian/vars.ia64 create mode 100644 debian/vars.kfreebsd-amd64 create mode 100644 debian/vars.kfreebsd-i386 create mode 100644 debian/vars.loong64 create mode 100644 debian/vars.m68k create mode 100644 debian/vars.mips create mode 100644 debian/vars.mips64 create mode 100644 debian/vars.mips64el create mode 100644 debian/vars.mipsel create mode 100644 debian/vars.powerpc create mode 100644 debian/vars.powerpcspe create mode 100644 debian/vars.ppc64 create mode 100644 debian/vars.ppc64el create mode 100644 debian/vars.riscv64 create mode 100644 debian/vars.s390x create mode 100644 debian/vars.sparc create mode 100644 debian/vars.sparc64 create mode 100644 debian/watch create mode 100644 debian/xmerge-javadoc.in create mode 100644 tarballs/26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz create mode 100644 tarballs/Java-WebSocket-1.6.0.tar.gz create mode 100644 tarballs/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip create mode 100644 tarballs/dtoa-20180411.tgz create mode 100644 tarballs/pdfium-6764.tar.bz2 create mode 100644 tarballs/skia-m130-3c64459d5df2fa9794b277f0959ed8a92552bf4c.tar.xz diff --git a/debian/README b/debian/README new file mode 100644 index 00000000000..01e7967e51a --- /dev/null +++ b/debian/README @@ -0,0 +1,83 @@ +LibreOffice build system +------------------------ + +Building the packages from source +================================= +Overview: + apt-get source libreoffice + apt-get build-dep libreoffice (to install build dependencies) + cd + debuild + +Changing the build behaviour with DEB_BUILD_OPTIONS +--------------------------------------------------- +These options are supported: + + debug - build with FULL debug symbols. Default is just to build + with SMALL ones since the deb otherwise gets too big + ((>400M, ca. 1GB I-S)) + + ccache - enable the use of ccache during the build. This is highly + recommended if you plan on building the package more than + once, or doing any development on the packages. Be aware + that you need EXTRAPACKAGES="ccache" in /etc/pbuilderrc + when trying to build libreoffice with ccache in + $DEB_BUILD_OPTIONS under pbuilder (this has no effect + on speed, hough because the cache does not persist in + pbuilder) + + parallel= + - enable n projects to be built in parallel. + The log output can get a little confusing, and some projects + may fail still. You need to remove config.status if you + change this value after interrupting a build. + + lang= + - Build only the specified language + + nocheck + - disable run of tests when enabled in rules + + +The targets that are built during the package build +--------------------------------------------------- + +- targets run during the package build - + +unpack - Does prerequisites for the build: packing, unpacking etc. + +build - as the name says + +install - Copy files from debian/tmp/pkg into the correct locations + for the final package layout in debian/libreoffice* + where we need to do that here because it affects arch-dep + and arch-indep stuff and therefore cannot be done in + install-arch / install-indep. + +install-arch - installs arch-dependent stuff into the arch-dep. packages +install-indep - " "-independent " " " "-indep. packages + +langpackgs - Installs the language packgs +helppkgs - Installs the help packages + +maintscripts - Generates the maintainer scripts + +get-orig-source - gets original source tarballs and unpacks them + GIT_BASEURL can be set to a local mirror + GIT_BRANCH is the branch to clone from the repos + GIT_TAG is tag that should be packed + GIT_BRANCH and GIT_TAG can both be master + +Building the package from git master +==================================== +To do a build from git master, do: + mkdir libreoffice-git + cd libreoffice-git + git clone https://salsa.debian.org/libreoffice-team/libreoffice/libreoffice.git debian + ./debian/rules unpack GIT_BRANCH=master GIT_TAG=master SOURCE_TARBALLS=n + dpkg-buildpackage + +Build system file layout +======================== +debian/scripts: + Directory containing various debian-specific build-related scripts. diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 00000000000..c27c3d5c605 --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,307 @@ + Readme for libreoffice package for Debian + -------------------------------------------- + +Contents +======== +Introduction +Quick start +Printer setup + Native CUPS support + Non-CUPS systems +Language support + Spellcheck dictionaries, Hyphenation patterns and Thesauri + Help packages +Display and crashing problems + X server crashes +Font problems + Why are the menu fonts smaller than in older versions? + Changing the default user interface font typeface for non-KDE/Gnome desktops +Disabling the splash screen +AppArmor problems +More information about LibreOffice in Debian + + +Introduction +============ +Welcome to the LibreOffice packages for the Debian distribution. These +packages are of the release of LibreOffice with the following +modifications: + + * Packaged as libreoffice-core (architecture-dependent core files), + libreoffice-common (architecture-independent common files), + libreoffice-{calc,writer,draw,impress,base} (the LibreOffice modules) + libreoffice-l10n- and libreoffice-help- and + other subpackages (-filters-* for lesser used filters, -gtk/-gnome/-kde, + ttf-opensymbol for the OpenSymbol font, ...). + + * Integration with other Debian packages: + - Global desktop integration for all users for KDE and Gnome desktops. + Menu entries for all window managers that support the Debian 'menu' + package. + + * Some extra features not yet present in official releases: + - Many of the patches included in the Ximian edition + + * Extra documentation - this README and man pages. + + +Quick start +=========== + +To start using LibreOffice, execute the command + + libreoffice + +as the user which you wish to start LibreOffice as. This will create the +necessary user files in ~/.libreoffice/3 for you. Alternatively, you +can start LibreOffice from the menus, if you have the menu package +installed/use KDE or GNOME. + +Printing +======== + +Printing on CUPS systems +------------------------ +The Debian packages include native CUPS support from version 1.1.1-3. This +is standard in all OpenOffice.org versions since 2.0. +When LibreOffice detects a CUPS system, it will download printer settings for +all CUPS queues, and these can be set from within the printer properties dialog. + +If you wish to add additional filters or print commands, you can add them +using 'spadmin'. Note that the 'Add a printer' option is disabled - you +should add printers using your favourite CUPS frontend. + +When creating a new document, LibreOffice will use the default paper size of +your default CUPS printer queue. If your new documents have the wrong paper +size, please check the configuration of your printer. + +Non-CUPS systems (lpr, lprng, SAL_DISABLE_CUPS=1) +--------------------------------- +There is a tool supplied with LibreOffice for setting up printers. You can +execute this with the command + + /usr/lib/openoffice/program/spadmin + +To change the page size and other default settings on non-CUPS systems, +modify /etc/openoffice/psprint.conf. The settings are documented in there. + +Language support +================ +You can get foreign language support by installing the +libreoffice-l10n- package for your language. You will also need the +'locales' (or belocs-locales-data for some locales, alternatively locales-all +if you want all locales) package installed. +The user interface language is selected according to your locale(1) settings. + +To change the user interface language for all users, run + + dpkg-reconfigure locales + +[ This is not needed when you install locales-all ] + +To change the language for just one user, you must arrange for the LC_MESSAGES +or LANG environment variable to be set. You can list all available locales +with the command 'locale -a'. +For example, to run LibreOffice in German from the command line: + + LANG=de_DE libreoffice + +Spellcheck dictionaries, Hyphenation patterns and Thesauri +---------------------------------------------------------- +Currently, there are dictionaries available for Afrikaans, Arabic, Armenian, +Bulgarian, Catalan, Croatian, Czech, Danish, Dutch, English (AUS/GB/US), +Esperanto, Estonian, Farsi, Finnish, French, Galician, German (DE/CH/AT), +Greek, Hebrew, Hungarian, Irish (Gaeilge), Italian, Kurdish, Latvian, +Lithuanian, Manx Gaelic, Norwegian Bokmal, Norwegian Nynorsk, Polish, +Portuguese, Portuguese (Brazilian), Russian, Scots Gaelic, Slovak, Slovenian, +Spanish, Swahili, Swedish, Thai, Ukrainian and Uzbek. +Dictionaries are packaged as myspell- (or, for newer ones improved +for hunspell hunspell-). + +Currently, there are thesauri available for Czech, English (AUS/GB/US), +German (DE/CH), Italian, Polish and Slovak. +Thesauri are packaged as mythes- + +Currently, there are hyphenation patterns available for English (USA), +Croatian, Estonian, German, Hungarian, Italian, Polish, Slovenian and +Lithuanian. +Hyphenation patterns are packaged as hyphen-. + +Help packages +------------- +Currently, there are localized help packages available for +Bulgarian, Chinese, Czech, Danish, Dutch, English (GB), English (USA), +Estonian, French, Galician, German, Hungarian, Italian, Japanese, Khmer, +Macedonian, Polish, Portuguese (Brazil), Russian, Slovakian, Slovenian and +Spanish and Swedish. +They are packaged as libreoffice-help-. + +Problems +================================ + +Here are some problems that have been reported with this version. If you do +not see your problem here, please check for open bug reports: + + http://bugs.debian.org/debian-openoffice@lists.debian.org + +1. If you are using NFS mounted file systems, you should make sure that locking +is functioning: + + 'Make sure NFS lockd/statd is running on the client, or mount the NFS export + with the 'nolock' option. + + If /usr gets mounted from an initrd, check 'ps' output once the system is + fully booted to ensure that you see a [lockd] kernel process, or an + 'rpc.lockd' / 'rpc.statd' userspace process. + + If not, just issue your mount command again (no need to even -o remount it + seems!) and run /etc/init.d/nfs-common restart.' (Thanks to Gavin Hamill) + + See this mailing list thread for more information: + http://lists.debian.org/debian-openoffice/2004/debian-openoffice-200402/msg00223.html + +X server crash with Matrox cards +-------------------------------- +If your X server is using the mga driver, you may find that your X server +crashes. You can work around this problem by adding this line to the mga +Device section: + + Option "XaaNoScreenToScreenColorExpandFill" + +There is a bug already open against xserver-xfree86 for this problem. Thanks +to Philip Armstrong for this information. + +LibreOffice crash with nVidia cards +-------------------------------------- +It seems that LibreOffice can trigger some obscure bugs in the X server +drivers for Nvidia cards too, especially if you have more than one processor. +Try updating your drivers to the latest version. + +Moreover LibreOffice may hang and takes X with it when RenderAccel +is enabled when using the proprietary nVidia Drivers. Disabling this option +helps then. + +Font problems +============= + +Why are the menu fonts smaller than in older versions? +------------------------------------------------------ +This is caused by a change in the way LibreOfffice interprets your X server DPI +setting. +This setting, when correctly configured, means that software can display text +at its true size on the display. + +The official OpenOffice.org version assumes that anyone who has their X server +configured with a DPI of less than 96 has not actually configured it at all, +and sets it back to 96. Unfortunately, this has the side effect that +displays with a lower DPI setting, such as some LCD laptop displays, cannot +display the page at its true size. + +So you can fix this by correctly setting the DPI for your X server. Gnome +users will find that it is set to 96 DPI by default; others may need to edit +their X server configuration. + +The best way to get the correct DPI setting is to add a 'DisplaySize' entry to +the Monitor section. From the XF86Config-4 man page: + + DisplaySize width height + This optional entry gives the width and height, in millimetres, of the + picture area of the monitor. If given this is used to calculate the + horizontal and vertical pitch (DPI) of the screen. + +If you set this value correctly, X will calculate and use the correct DPI +setting, even if you use several different display resolutions. + +From Nikita V. Youshchenko : + +- Many display manager configurations pass the option "-dpi 100" to the X + server by default, overriding any autodetected DPI. This has to be removed + for DisplaySize to work. The file that you need to edit varies depending on + the way your X server is started: + xdm: /etc/X11/xdm/Xservers + kdm: /etc/kde3/kdm/Xservers + gdm: /etc/gdm/gdm.conf + startx: /etc/X11/xinit/xserverrc + +- Gnome's gconf overrides the autodetected DPI, by setting Xft.dpi to a value + entered in configuration dialog, 96 by default. I don't know what is + the clean fix for this. Perhaps it should be fixed on the Gnome side. + +From Juergen Kreileder :> + +- Note that with most recent graphics cards and monitors XFree86 is able to + get the monitor size (and thus the correct dpi value) through ddc. + (**) NVIDIA(0): Validated modes for display device DFP-0: + (**) NVIDIA(0): Default mode "1600x1200": 189.0 MHz, 87.5 kHz, 70.0 Hz + (II) NVIDIA(0): Virtual screen size determined to be 1600 x 1200 + (--) NVIDIA(0): Display dimensions: (410, 310) mm + (--) NVIDIA(0): DPI set to (99, 98) + (That's with the proprietary NVIDIA drivers but other XFree86 drivers have + that support too.) + +If you use KDE or Gnome, LibreOffice will use the same font face and size as +your desktop environment. If you use another window manager, you can either +let it pick a default font itself, or change the font to be used (see next +section), or set the OOO_FORCE_DESKTOP environment variable to +kde (for kde3)/kde4 or gnome, to use KDE or Gnome settings respectively. + +Changing the default user interface font typeface for non-KDE/Gnome desktops +---------------------------------------------------------------------------- +If you do not want to use KDE or Gnome settings and want to change font sizes +within LibreOffice, you can configure the user interface font as follows: + +- Font size - + +You can change the font scaling using the user interface: + + Tools Menu -> Options -> View -> Scale + +- Font typeface - + +You can change the default font typeface by replacing it with a different font +installed on your system. This can be done using the font replacement function. +Choose Tools - Options - LibreOffice - Font Replacement to access this +function. + +To change the font of the LibreOffice user interface, you have to replace +the default font "Andale Sans UI" with another font and mark the "always" +setting for this replacement. "Andale Sans UI" is not selectable and has to be +typed in. The replacement font has to be a font which supports the requested +locale ( e.g for Korean language the replacement font has to be a font +including Korean characters). + +Refer to the LibreOffice Help for a detailed explanation of the font +replacement dialog. + +Disabling the splash screen +=========================== +If you don't like the splash screen staying in front of other windows while +LibreOffice is loading, you can disable it by editing +/etc/openoffice/sofficerc. Change Logo=1 to Logo=0. + +AppArmor problems +================= + +LibreOffice in Debian ships with AppArmor profiles: + + /etc/apparmor.d/usr.lib.libreoffice.* + +To debug issues with these AppArmor profiles, see: + + https://wiki.debian.org/AppArmor/Debug + +If you are using custom settings such as a custom env:UserInstallation +directory, you may need to adjust them to match your local setup. +In this example, you would need to add your custom +env:UserInstallation to @{libo_user_dirs} in the +usr.lib.libreoffice.program.soffice.bin profile. + +More information about LibreOffice in Debian +=============================================== +Please read the official README.gz (in the same directory as this file), too. + +If you have questions, either post to our the mailing list: + + http://lists.debian.org/debian-openoffice + +The Debian LibreOffice team diff --git a/debian/README.Debian-source b/debian/README.Debian-source new file mode 100644 index 00000000000..5bc3f546099 --- /dev/null +++ b/debian/README.Debian-source @@ -0,0 +1,103 @@ +Package directory modes +======================= +The packages can be built directly from a set of git checkouts (vcs mode), +or from a set of release tarballs (tarball mode). + +Vcs mode is useful if you want to work on libreoffice during the development +cycle. You can check out the latest sources and track them while you make +changes. + +Tarball mode is used to prepare packages of official libreoffice releases +from the tarballs created by upstream. + +Source package creation steps for tarball mode +============================================== +The .orig.tar.gz consists of the (separate) source tarballs available +from The Document Foundation from +http://download.documentfoundation.org/libreoffice/src/ + +or base on an old version and add/remove the files manually and/or symlink +to the old version if this didn't change - see git diff of download.lst. This +is even better given we probably want to add only needed stuff there, and not +all tarballs (most of those we don't use) + +See the "Format: 3.0 (quilt)" section dpkg-source(1) for more details. + +Package directory layout - vcs mode +=================================== + +In vcs mode we are working directly from checkouts of the libreoffice sources. + +We pull in sources to these places: + + "top" directory - checkout of LO's "core" repo + debian - git packaging repository from pkg-openoffice project on alioth + helpcontent2 - checkout of LO's "help" repo (git submodule) + translations - checkout of LO's "translations" repo (git submodule) + tarballs - see above in tarball mode + +$ git clone git://gerrit.libreoffice.org/core +$ cd core +$ git submodule init + +(maybe remove dictionaries again, see .git/config, we don't need it here.) + +./g pull -r (git pull -r, but also does the necessary steps for the submodules) + +For tarballs/, see above + +Build profiles +============== + +Except the "common" build profiles + - nodoc + - nocheck + - nopython + - nojava + - nogir +this source package also has + - an own one which controls whether opens___.ttf of fonts-opensymbol is rebuilt + (which needs fontforge-nox | fontforge) (pkg.libreoffice.opensymbolbuild, default on arch + inde builds) or not. + If this is disabled you must provide opens___.ttf itself since the upstream build will fail + wiithout it being present. The canonical way (which is what upstream does per default actually) + is to put https://dev-www.libreoffice.org/extern/f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf + into tarballs/. It will be picked up from there. + - Then we get a fonts-opensymbol Build-Depends-Arch to make arch-dep builds use the + rebuilt font. In case this makes problem this can be built still by + debuild (-b) -Ppkg.libreoffice.opensymbolbuild + diff --git a/debian/README.qa b/debian/README.qa new file mode 100644 index 00000000000..3da75a9fea6 --- /dev/null +++ b/debian/README.qa @@ -0,0 +1,59 @@ +LibreOffice QA Tools + +smoketest +========= + +smoketest executes a set of macros that create a minimal document in +each of LibreOffice's applications, tests cut&paste and +saving/loading in various formats. + +Invoke it as oosmoketest. + +This program manipulates the LibreOffice user configuration, USE IT +WITH A DEDICATED USER ACCOUNT if you value your settings. + +qadevOOo +======== + +qadevOOo is a framework for executing tests for the LibreOffice +API. It is documented at +http://qa.openoffice.org/qadevOOo_doc/user-guide.html + +Predefined properties files exist in /usr/lib/openoffice/qadevOOo. + +Invoke it like e.g: + + ootestapi -ini /usr/lib/openoffice/qadevOOo/java.props -o sd.SdMasterPage + +That properties files specify AppExecutionCommand, i.e. an office will +be started if necessary. Some tests, however seem to work better if +the office was started manually, as written in the user guide. + + /usr/lib/openoffice/program/soffice "-accept=socket,host=localhost,port=8100;urp;" + +Use this invocation and not ooffice to prevent interference with the +quickstarter code. + +testtool +======== + +testtool is a framework for executing tests by automating actions in +LibreOffice's user interface. It is documented at +http://qa.openoffice.org/qatesttool/index.html + +Test scripts for testtool are available in the +libreoffice-qa-ui-tests package. + +Start it as ootesttool. + +If you're starting it for the first time, create a profile in +Extras->Settings where you specify the location of test scripts and +output path for log files. The default values point to the scripts +from the libreoffice-qa-ui-tests package, so simply giving a name +to the profile and pressing the "New" button is enough. + +Then open a test script and press F5 to start the test. + +Some test scripts may change your LibreOffice user +configuration. USE IT WITH A DEDICATED USER ACCOUNT if you value your +settings. diff --git a/debian/branding/progress.conf b/debian/branding/progress.conf new file mode 100644 index 00000000000..59ff72ce41d --- /dev/null +++ b/debian/branding/progress.conf @@ -0,0 +1 @@ +PROGRESSBARCOLOR=215,7,81 diff --git a/debian/bug-presubj b/debian/bug-presubj new file mode 100644 index 00000000000..b0b6cfc7c29 --- /dev/null +++ b/debian/bug-presubj @@ -0,0 +1,61 @@ +Reporting a bug against LibreOffice +-------------------------------------- +I) Make sure it's a LibreOffice bug after all: #398923 and its friends for + example are not. + Set the Version: header right. If you found a bug in a specific version, + set that as version:, even if you in the meanwhile upgraded. If you are on + an up-to-date version and tried old versions and they have the bug, too, set + the Version: header to the earliest version you found it in (of course, if + versions inbetween don't have the bug use the version in which it reappeared + and sustained to the current version) + +II) Check on the BTS (http://bugs.debian.org/src:libreoffice) whether the + bug already is reported. Do *NOT* report a new one then. For judging whether + it's already reported, read *ALL* the bugs, think, try and use common sense. + +III) If you have crashes with a document, try another one. If only that or + similar docs causes problems please attach THIS (or a similar type one + causing it). Otherwise, don't file a bug, we can't look at it anyway. + +IV) Please attach more info if possible (see + https://wiki.documentfoundation.org/QA/BugReport/Debug_Information#GNU.2FLinux). + Install libreoffice-*-dbgsym or libreoffice-dbg before doing this (and maybe + the packages it Recommends and/or -dbgsym/-dbg of the libraries LO depends + on). + Please note that those *-dbgsym packages are not in the main archive; you + need to add the debug archive for that. + See https://wiki.debian.org/AutomaticDebugPackages + Please also read /usr/share/doc/libreoffice-common/README.gz for common + problems ("Problems During Program Startup") + If you have NFS/Samba/... file locking problems (i.e. files opened + read-only when they should be read-write), also see the "File Locking" + section in above file. + +V) If the bug is also in the version you can get from www.libreoffice.org, file + it there (see https://wiki.documentfoundation.org/QA/BugReport) in the first + place. If you really think this also should be a bug in the Debian BTS + (because it's (release-)critical or otherwise important) please file a bug + there too *BUT* note the TDF bug number in the bug or mark it forwarded + yourself if you can. Especially this is for feature requests. + If you tested other LibreOffice packages and the bug is (not) in version + foo from bar, mention that, too. + +VI) Only report bugs on completely up-to-date systems. Don't file bugs on a + obsolete version and neither on sid/testing systems really old. Nor on + backports, see https://backports.debian.org/Instructions/#index6h2. If bugs + got fixed in sid, it doesn't make sense to file them anymore. (Exception + is security bugs or really critical bugs which should be get fixed in + stable.) When you think a dependency is missing/wrong/too lax please be + *sure* that this is the case before reporting it. Most times it isn't. + Use common sense and the bug severities for judging here. When you think + you have an up-to-date system, check whether you really have one. + (And do a dist-upgrade, try to reproduce the bug again). + Also don't report bugs on broken mix systems unless you are sure about the + dependencies/conflicts (see above). + +VII) Please give as much info as possible (installed LibreOffice packages, installed + extensions, "special" configs, additions, changes, whatever). Better too + much than too less. (See #396225 for example which was caused by an + unsupportable, non-free extension) + +Thanks. diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000000000000000000000000000000000000..bcb1df066768b7ef18bfae25691f2d991f1aa995 GIT binary patch literal 717243 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�vB#pRgSE;*}|3spc`iJ*j~5kHdt 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�{vIZYn|N23DCBK9V7d?{ z_MF?hHm;HMd)}=ga><@0xokOcH@(Xa%UigXEjzo88CA!e!7~XCtRB%(<(qakQYAKa znV{w(hXhQ<9TMdNmud|fSA%-t>b3qxU4X_eB8r`2r&xx^@=BC91Zia;j0F~w%89mA zWkkhn!;mUR6cRZ0UYoi%8uwb3#LNvsTV3gD$MxoD>Zytzp~f43cr%@C#(19_dP#cN5{Z5)hu zl?=-2DQG<_w(e*A3)=t2)21A!xu{mv_V;)X;Ha#W;{unt$Kj5hjyOSb#bTA|D6<{} zYG3o}#3?i%kAKHRERob3UTpmnF*PzO{* zITI#g zk2AnsNL^s*nN1&&7T}+b%ZbCnbi9T{s-wS=qcp1mvT3@&8AJ3DVb!clF*~ z^ekr2e~C6D`Phv_+i}Th9s+4d5N2hITmZ@Hidney{zmLoY|u8H^j`hj{h(}xjU;q$ zqykvPOHWvTgW}<4&njOVL0GXx3#W1aG1qOF!r(XoxC<0+14X*#vY!y|nhc~k419Vw ztkJPOnbUBsrVi(tKL)5#*v_r`5;k)iFj`Ux_y}o|ilq_|Km2btyP81PNA&jL(?a*v z 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

  • +dw~{8pxRA=6V2-sv*!_oeOcAaY&H{#SUE<< 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�Xu-QR!P;6)fwfVr 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 G@Bah*Q3>Aw literal 0 HcmV?d00001 diff --git a/debian/control.cil.in b/debian/control.cil.in new file mode 100644 index 00000000000..1d1fa14d846 --- /dev/null +++ b/debian/control.cil.in @@ -0,0 +1,56 @@ +# FIXME: until there is a better naming for this... +Package: ure-dotnet +Section: cli-mono +Architecture: %OOO_CLI_ARCHS% +Depends: ${cli:Depends}, ${misc:Depends} +Description: LibreOffice bindings for CLI -- bridge + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the .NET <-> UNO bridge. + +# split out from the above +Package: libuno-net-basetypes-cil +Section: cli-mono +Architecture: all +Depends: ${cli:Depends}, ${misc:Depends} +Description: LibreOffice bindings for CLI -- base types + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains net_uretypes.dll, a CLI library which provides classes + and interfaces for components and client programs. It contains basic types. + +Package: libuno-net-uretypes-cil +Section: cli-mono +Architecture: all +Depends: ${cli:Depends}, ${misc:Depends} +Description: LibreOffice bindings for CLI -- URE type library + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains net_uretypes.dll, a CLI library which provides classes + and interfaces for components and client programs. It contains the URE types. + +Package: libuno-net-oootypes-cil +Section: cli-mono +Architecture: all +Depends: ${cli:Depends}, ${misc:Depends} +Description: LibreOffice bindings for CLI -- LibreOffice type library + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains net_oootypes.dll, a CLI library which provides classes + and interfaces for components and client programs. It contains the LibreOffice + types. + +# nuget stuff +Package: libreoffice-dev-dotnet +Section: cli-mono +Architecture: %OOO_CLI_ARCHS% +Depends: ${cli:Depends}, ${misc:Depends} +Description: office productivity suite -- SDK -- .NET nuget package + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the nuget package for .NET (LibreOffice.Bindings) diff --git a/debian/control.evolution.in b/debian/control.evolution.in new file mode 100644 index 00000000000..d9c7c8a0b69 --- /dev/null +++ b/debian/control.evolution.in @@ -0,0 +1,19 @@ +Package: libreoffice-evolution +Architecture: %OOO_BASE_ARCHS% +Section: gnome +Depends: libreoffice-base, + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-core (= ${binary:Version}), + ${libebook-dep}, + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-common (= 4:24.2.1-3) +Recommends: evolution +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Description: office productivity suite -- Evolution addressbook support + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package allows LibreOffice to access Evolution address books. + You need to install evolution separately. + diff --git a/debian/control.firebird.in b/debian/control.firebird.in new file mode 100644 index 00000000000..a44af1e07da --- /dev/null +++ b/debian/control.firebird.in @@ -0,0 +1,13 @@ +Package: libreoffice-sdbc-firebird +Depends: libreoffice-core-nogui | libreoffice-core, ${shlibs:Depends}, ${misc:Depends}, ${firebird-engine-depends} +Architecture: %OOO_FIREBIRD_ARCHS% +Section: database +Enhances: libreoffice-base-drivers +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Description: (embedded) Firebird SDBC driver for LibreOffice + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + The Firebird SDBC Driver allows one to use the Firebird (embedded) database + from LibreOffice without any wrapper layer such as ODBC or JDBC. + diff --git a/debian/control.fonts.in b/debian/control.fonts.in new file mode 100644 index 00000000000..f52165d404c --- /dev/null +++ b/debian/control.fonts.in @@ -0,0 +1,13 @@ +Package: fonts-opensymbol +Section: fonts +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends} +Recommends: fontconfig +Replaces: ttf-opensymbol +Provides: ttf-opensymbol +Description: OpenSymbol TrueType font + This package contains the OpenSymbol TrueType font included in + LibreOffice. This font contains symbols (like fonts as Wingdings(tm)), + bullets (needed for bullets in LibreOffice) and non-latin character + diff --git a/debian/control.gtk3.in b/debian/control.gtk3.in new file mode 100644 index 00000000000..f86aec21121 --- /dev/null +++ b/debian/control.gtk3.in @@ -0,0 +1,63 @@ +Package: libreoffice-gtk3 +Architecture: %OOO_ARCHS% +Depends: libreoffice-core (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Suggests: libreofficekit-data +Recommends: gstreamer1.0-gtk3 +Section: gnome +Enhances: libreoffice +Description: office productivity suite -- GTK+ 3 integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the GTK+ plugin for drawing LibreOffices widgets + with GTK+ 3 and GTK+/GNOMEish print dialog when running under GNOME. + +Package: gir1.2-lokdocview-0.1 +Architecture: %OOO_ARCHS% +Section: introspection +Build-Profiles: +Depends: ${gir:Depends}, ${misc:Depends}, liblibreofficekitgtk (= ${binary:Version}) +Description: GTK+ 3 widget wrapping LibreOffice functionality - introspection + LOKDocView is the GTK+ 3 widget that wraps the libreoffice functionality and + exposes a simple API for applications to use this widget. + . + This package contains the Introspection data. + +Package: libreofficekit-dev-gtk +Section: libdevel +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${gir:Depends}, gir1.2-lokdocview-0.1 (= ${binary:Version}), libreofficekit-dev, libgtk-3-dev, liblibreofficekitgtk +Replaces: gir1.2-lokdocview-0.1 (<< 1:5.4.0~rc1), libreofficekit-dev (<< 4:25.2~) +Provides: ${gir:Provides} +Description: LibreOfficeKit -- Gtk header and introspection development + LibreOfficeKit can be used for accessing LibreOffice functionality through + C/C++, without any need to use UNO. + . + This package contains the header needed for using LibreOfficeKit with Gtk + and for developing stuff using introspection. + +Package: liblibreofficekitgtk +Section: gnome +Architecture: %OOO_ARCHS% +Depends: ${shlibs:Depends}, ${misc:Depends}, libreofficekit-data +Replaces: libreoffice-gtk3 (<< 1:5.2.0~) +Breaks: libreoffice-gtk3 (<< 1:5.2.0~) +Recommends: libreoffice-gtk3 +Description: GTK+ 3 widget wrapping LibreOffice functionality + This package contains a (basic) GTK+ document viewer widget (used + by e.g. LOKDocView) + +Package: libreofficekit-data +Architecture: all +Section: web +Depends: ${misc:Depends} +Recommends: gir1.2-lokdocview-0.1 +Description: common data for LOKDocView + LOKDocView is the GTK+ 3 widget that wraps the libreoffice functionality and + exposes a simple API for applications to use this widget. + . + This package contains architecture-independent data (e.g. the selection + handlers). + diff --git a/debian/control.gtk4.in b/debian/control.gtk4.in new file mode 100644 index 00000000000..2838b83826d --- /dev/null +++ b/debian/control.gtk4.in @@ -0,0 +1,18 @@ +Package: libreoffice-gtk4 +Architecture: %OOO_ARCHS% +Depends: libreoffice-core (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Suggests: libreofficekit-data +Replaces: libreoffice-core (<< 4:7.6.0~rc2) +Section: gnome +Enhances: libreoffice +Description: office productivity suite -- GTK 4 integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the GTK plugin for drawing LibreOffices widgets + with GTK 4 and GTK/GNOMEish print dialog. + . + You need to enable it manually by export SAL_USE_VCLPLUGIN=gtk4. + diff --git a/debian/control.help.in b/debian/control.help.in new file mode 100644 index 00000000000..40163e9338a --- /dev/null +++ b/debian/control.help.in @@ -0,0 +1,18 @@ +Package: libreoffice-help-@LCODE@ +Architecture: all +Section: doc +Recommends: libreoffice-core (>> ${base-version}), + ${help-recommends} +Depends: libreoffice-l10n-@LCODE@, + libreoffice-common (>= 1:6.1.0~), + ${help-depends}, + ${misc:Depends} +Provides: libreoffice-help (= ${help-l10n-virtual-version}) +Replaces: libreoffice-help-common (<< 1:6.4.1~rc1) +Description: office productivity suite -- @LNAME@ help + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the help of LibreOffice in + @LNAME@. + diff --git a/debian/control.in b/debian/control.in new file mode 100644 index 00000000000..0da5a2fee5b --- /dev/null +++ b/debian/control.in @@ -0,0 +1,1082 @@ +Source: libreoffice +Section: editors +Priority: optional +Maintainer: Debian LibreOffice Maintainers +Uploaders: Rene Engelhard , Chris Halls +Build-Depends: %BUILD_DEPS%, +Build-Depends-Arch: %BUILD_DEPS_ARCH% +Build-Depends-Indep: %BUILD_DEPS_INDEP% +Build-Conflicts: nvidia-glx-dev, + nvidia-glx-legacy-dev, + amd-libopencl1, + nvidia-libopencl1 +Standards-Version: 4.0.1 +Rules-Requires-Root: no +Vcs-Git: https://salsa.debian.org/libreoffice-team/libreoffice/libreoffice.git +Vcs-Browser: https://salsa.debian.org/libreoffice-team/libreoffice/libreoffice +Bugs: @BUGS@ +Homepage: http://www.libreoffice.org + +Package: libreoffice +Architecture: %OOO_ARCHS% +Section: metapackages +Depends: libreoffice-base%OOO_NO_BASE_ARCHS%, + libreoffice-calc, + libreoffice-core (= ${binary:Version}), + libreoffice-draw, + libreoffice-impress, + libreoffice-math, + libreoffice-report-builder-bin%OOO_NO_REPORTBUILDER_ARCHS%, + libreoffice-writer, + ${misc:Depends}, + ${pyuno-depends} +Recommends: ${java-common-depends}, + fonts-sil-gentium-basic, + fonts-crosextra-caladea, + fonts-crosextra-carlito, + fonts-dejavu, + ${liberation-fonts-recommends}, + fonts-linuxlibertine, + fonts-noto-core, + fonts-noto-extra, + fonts-noto-mono, + fonts-noto-ui-core, + libreoffice-script-provider-bsh, + libreoffice-script-provider-js, + libreoffice-script-provider-python, + libreoffice-nlpsolver, + libreoffice-report-builder%OOO_NO_REPORTBUILDER_ARCHS%, + libreoffice-wiki-publisher, + libreoffice-sdbc-mysql, + libreoffice-sdbc-postgresql +Suggests: cups-bsd, + ghostscript, + hunspell-dictionary, + hyphen-hyphenation-patterns, + firefox-esr | thunderbird | firefox, + imagemagick | graphicsmagick-imagemagick-compat, + libgl1, + libreoffice-grammarcheck, + libreoffice-help (= ${help-l10n-virtual-version}), + libreoffice-l10n (= ${help-l10n-virtual-version}), + ${libsane-suggests}, + libxrender1, + myspell-dictionary, + mythes-thesaurus, + openclipart-libreoffice, + pstoedit, + unixodbc, + gnupg, + gpa, + ${gstreamer-plugins-suggests}, + ${java-runtime-depends}, + ${ooo-officebean-dep}, + libreoffice-librelogo, + %LO-DESKTOP-INTEGRATION% +Conflicts: libreoffice-dev (<= 1:5.0.3~rc1-2), libreoffice-dev-doc (<= 1:5.0.3~rc1-2) +Description: office productivity suite (metapackage) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This metapackage installs all components of libreoffice: + * libreoffice-writer: Word processor + * libreoffice-calc: Spreadsheet + * libreoffice-impress: Presentation + * libreoffice-draw: Drawing + * libreoffice-base: Database + * libreoffice-math: Equation editor + It also recommends additional packages (e.g. fonts) in order to match an + upstream LibreOffice install as closely as possible. + . + You can extend the functionality of LibreOffice by installing these + packages: + * hunspell-*/myspell-*: Hunspell/Myspell dictionaries + for use with LibreOffice + * libreoffice-l10n-*: UI interface translation + * libreoffice-help-*: User help + * mythes-*: Thesauri for the use with LibreOffice + * hyphen-*: Hyphenation patterns for LibreOffice + * libreoffice-gtk(2|3): Gtk UI Plugin, GNOME File Picker support + * libreoffice-gnome: GIO backend + * unixodbc: ODBC database support + * cups-bsd: Allows LibreOffice to detect your CUPS printer queues + automatically + * libsane: Use your sane-supported scanner with LibreOffice + * libxrender1: Speed up display by using Xrender library + * libgl1: OpenGL support + * openclipart-libreoffice: Open Clip Art Gallery with LibreOffice index + files + * firefox-esr | thunderbird | firefox: + Mozilla profile with Certificates needed for XML Security... + * openjdk-11-jre | openjdk-8-jre | java8-runtime: + Java Runtime Environment for use with LibreOffice + * pstoedit / imagemagick / ghostscript: helper tools for EPS + * gstreamer0.10-plugins-*: GStreamer plugins for use with LibreOffices + media backend + * libpaper-utils: papersize detection support via paperconf + +Package: libreoffice-nogui +Architecture: %OOO_NOGUI_ARCHS% +Section: metapackages +Depends: libreoffice-base-nogui%OOO_NO_BASE_ARCHS%, + libreoffice-calc-nogui, + libreoffice-core-nogui (= ${binary:Version}), + libreoffice-draw-nogui, + libreoffice-impress-nogui, + libreoffice-math-nogui, + libreoffice-report-builder-bin-nogui%OOO_NO_REPORTBUILDER_ARCHS%, + libreoffice-writer-nogui, + ${misc:Depends}, + ${pyuno-depends} +Recommends: ${java-common-depends}, + libreoffice-script-provider-bsh, + libreoffice-script-provider-js, + libreoffice-script-provider-python, + libreoffice-sdbc-mysql, + libreoffice-sdbc-postgresql +Suggests: ghostscript, + hunspell-dictionary, + hyphen-hyphenation-patterns, + imagemagick | graphicsmagick-imagemagick-compat, + libreoffice-grammarcheck, + myspell-dictionary, + mythes-thesaurus, + pstoedit, + unixodbc, + gnupg, + gpa, + ${java-runtime-depends} +Description: office productivity suite (metapackage, no GUI) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This metapackage installs all components of libreoffice: + * libreoffice-writer: Word processor + * libreoffice-calc: Spreadsheet + * libreoffice-impress: Presentation + * libreoffice-draw: Drawing + * libreoffice-base: Database + * libreoffice-math: Equation editor + . + WITHOUT GUI SUPPORT. + . + This package is intended mostly for scripting needs. + +Package: libreoffice-l10n-za +Section: metapackages +Architecture: all +Depends: libreoffice-l10n-af, + libreoffice-l10n-en-za, + libreoffice-l10n-nr, + libreoffice-l10n-nso, + libreoffice-l10n-ss, + libreoffice-l10n-st, + libreoffice-l10n-tn, + libreoffice-l10n-ts, + libreoffice-l10n-ve, + libreoffice-l10n-xh, + libreoffice-l10n-zu, + ${misc:Depends} +Description: office productivity suite -- South African language packages + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package is a metapackage installing l10n packages for all 11 South + African languages. + +Package: libreoffice-l10n-in +Section: metapackages +Architecture: all +Depends: libreoffice-l10n-as, + libreoffice-l10n-bn, + libreoffice-l10n-gu, + libreoffice-l10n-hi, + libreoffice-l10n-kn, + libreoffice-l10n-ml, + libreoffice-l10n-mr, + libreoffice-l10n-ne, + libreoffice-l10n-or, + libreoffice-l10n-pa-in, + libreoffice-l10n-ta, + libreoffice-l10n-te, + ${misc:Depends} +Recommends: fonts-indic +Description: office productivity suite -- Indic language packages + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package is a metapackage installing l10n packages for all available + indic languages. + +Package: libreoffice-core +Architecture: %OOO_ARCHS% +Depends: fontconfig, + fonts-opensymbol (>= 2:102.12), + libreoffice-common (>> ${base-version}), + libreoffice-gtk3 [alpha ia64] | libreoffice-gtk4 [alpha ia64] | libreoffice-qt5 [alpha ia64] | libreoffice-kf5 [alpha ia64] | libreoffice-qt6 [alpha ia64], + ure (>= 1:7.4.0~), + uno-libs-private (>= 4:7.5.0~), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: libpaper-utils, ${gstreamer-plugins-suggests} +Breaks: libreoffice-base (<< ${binary:Version}), + libreoffice-calc (<< ${binary:Version}), + libreoffice-dev (<< ${binary:Version}), + libreoffice-draw (<< ${binary:Version}), + libreoffice-evolution (<< ${binary:Version}), + libreoffice-gnome (<< ${binary:Version}), + libreoffice-gtk2 (<< ${binary:Version}), + libreoffice-gtk3 (<< ${binary:Version}), + libreoffice-impress (<< ${binary:Version}), + libreoffice-qt5 (<< ${binary:Version}), + libreoffice-kde4 (<< ${binary:Version}), + libreoffice-kde5 (<< ${binary:Version}), + libreoffice-kf5 (<< ${binary:Version}), + libreoffice-officebean (<< ${binary:Version}), + libreoffice-writer (<< ${binary:Version}), + browser-plugin-libreoffice, + libreoffice-pdfimport (<< 1:5.4~), + libreoffice-common (<< 1:5.4.1), + libreoffice-avmedia-backend-gstreamer (<< ${binary:Version}) +Conflicts: libreoffice-filter-binfilter, libreoffice-avmedia-backend-vlc, libreoffice-mysql-connector (<< 1:6.2.0~), libreoffice-core-nogui +# for trixie, copied from libreoffice-common, see #985297 (here for the other way round) + , + libreoffice-base (<< 4:25.2.1~rc1-3~), + libreoffice-calc (<< 4:25.2.1~rc1-3~), + libreoffice-draw (<< 4:25.2.1~rc1-3~), + libreoffice-impress (<< 4:25.2.1~rc1-3~), + libreoffice-math (<< 4:25.2.1~rc1-3~), + libreoffice-report-builder (<< 4:25.2.1~rc1-3~), + libreoffice-writer (<< 4:25.2.1~rc1-3~), +Replaces: libreoffice-pdfimport (<< 1:5.4~), libreoffice-common (<< 1:6.3.0~rc1~), libreoffice-avmedia-backend-gstreamer, libreoffice-core-nogui +Description: office productivity suite -- arch-dependent files + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the architecture-dependent core files of + LibreOffice. See the libreoffice package for more information. + +Package: libreoffice-core-nogui +Architecture: %OOO_NOGUI_ARCHS% +Depends: fontconfig, + fonts-opensymbol (>= 2:102.12), + libreoffice-common (>> ${base-version}), + ure (>= 1:7.4.0~), + uno-libs-private (>= 4:7.5.0~), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: libpaper-utils +Breaks: libreoffice-base (<< ${binary:Version}), + libreoffice-calc, + libreoffice-dev (<< ${binary:Version}), + libreoffice-draw (<< ${binary:Version}), + libreoffice-evolution (<< ${binary:Version}), + libreoffice-gnome (<< ${binary:Version}), + libreoffice-gtk2, + libreoffice-gtk3, + libreoffice-impress (<< ${binary:Version}), + libreoffice-qt5, + libreoffice-kde4, + libreoffice-kde5, + libreoffice-kf5, + libreoffice-officebean (<< ${binary:Version}), + libreoffice-writer (<< ${binary:Version}), + browser-plugin-libreoffice, + libreoffice-pdfimport (<< 1:5.4~), + libreoffice-common (<< 1:5.4.1), + libreoffice-avmedia-backend-gstreamer (<< ${binary:Version}) +Conflicts: libreoffice-filter-binfilter, libreoffice-avmedia-backend-vlc, libreoffice-mysql-connector (<< 1:6.2.0~), libreoffice-core +Provides: libreoffice-bundled +Replaces: libreoffice-pdfimport (<< 1:5.4~), libreoffice-common (<< 1:6.3.0~rc1~), libreoffice-avmedia-backend-gstreamer, libreoffice-core +Description: office productivity suite -- arch-dependent files (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the architecture-dependent core files of + LibreOffice without GUI support for server-based or commandline usage of + LibreOffice. + +Package: libreoffice-common +Architecture: all +Pre-Depends: ucf +Depends: libreoffice-style-colibre, ure, libreoffice-uiconfig-common (= ${source:Version}), ${numbertext-data-recommends}, ${misc:Depends} +Suggests: libreoffice-style, python3-scriptforge +Recommends: ${pyuno-depends}, ${textcat-data-recommends}, poppler-data, xdg-utils, ${liberation2-font-recommends} | ttf-mscorefonts-installer +Conflicts: openoffice.org-unbundled, + broffice, + libreoffice-filter-mobiledev, + libreoffice-l10n-4.3, + libreoffice-l10n-4.4, + libreoffice-wiki-publisher (<< 1.2.0+LibO5.4.0~rc2), + libreoffice-base (<< 4:25.2.1~rc1-3~), + libreoffice-base-nogui (<< 4:25.2.1~rc1-3~), + libreoffice-calc (<< 4:25.2.1~rc1-3~), + libreoffice-calc-nogui (<< 4:25.2.1~rc1-3~), + libreoffice-draw (<< 4:25.2.1~rc1-3~), + libreoffice-draw-nogui (<< 4:25.2.1~rc1-3~), + libreoffice-evolution (<< 4:25.2.1~rc1-3~), + libreoffice-gnome (<< 4:25.2.1~rc1-3~), + libreoffice-impress (<< 4:25.2.1~rc1-3~), + libreoffice-impress-nogui (<< 4:25.2.1~rc1-3~), + libreoffice-l10n (<< 7.0), + libreoffice-librelogo (<< 4:25.2.1~rc1-3~), + libreoffice-math (<< 4:25.2.1~rc1-3~), + libreoffice-math-nogui (<< 4:25.2.1~rc1-3~), + libreoffice-sdbc-firebird (<< 4:25.2.1~rc1-3~), + libreoffice-sdbc-mysql (<< 4:25.2.1~rc1-3~), + libreoffice-sdbc-postgresql (<< 4:25.2.1~rc1-3~), + python3-uno (<< 1:7.0.0~alpha~), + libreoffice-report-builder (<< 4:25.2.1~rc1-3~), + libreoffice-writer (<< 4:25.2.1~rc1-3~), + libreoffice-writer-nogui (<< 4:25.2.1~rc1-3~) +Provides: libreoffice-l10n-en-us +Breaks: libreoffice-core (<< 4:${oover}~), + libreoffice-core-nogui (<< 4:${oover}~), + libreoffice-core (<< 1:6.4.2~rc1), + libreoffice-help-5.2, + libreoffice-help (<< 5.4), + libreoffice-l10n (<< 7.0), + libreoffice-librelogo (<< 4:25.2.1~rc1-3~), + libreoffice-sdbc-hsqldb (<< 4:25.2.1~rc1-3~), + libreoffice-sdbc-postgresql (<< 4:25.2.1~rc1-3~), + libreoffice-sdbc-mysql (<< 4:25.2.1~rc1-3~), + libreoffice-sdbc-firebird (<< 4:25.2.1~rc1-3~), + libreoffice-report-builder (<< 4:25.2.1~rc1-3~), + libreoffice-evolution (<< 4:25.2.1~rc1-3~), + libreoffice-gnome (<< 4:25.2.1~rc1-3~), + python3-uno (<< 4:25.2.1~rc1-3~), + libreoffice-core (>= 4:${next-oover}~), + libreoffice-core-nogui (>= 4:${next-oover}~), + libreoffice-style-andromeda (<< 4:${oover}~), + libreoffice-style-crystal (<< 4:${oover}~), + libreoffice-style-crystal (>= 4:${next-oover}~), + libreoffice-style-galaxy (<< 4:${oover}~), + libreoffice-style-galaxy (>= 4:${next-oover}~), + libreoffice-style-hicontrast (<< 4:${oover}~), + libreoffice-style-hicontrast (>= 4:${next-oover}~), + libreoffice-style-tango, + libreoffice-writer2latex (<< 1.0.2-9), + libreoffice-writer2xhtml (<< 1.0.2-9), + libreoffice-base (<< 1:6.4.0~beta1-2~), + openclipart-libreoffice (<= 1:0.18+dfsg-17) +Replaces: libreoffice-base (<< 1:6.4.0~beta1-2~), + libreoffice-pdfimport (<< 1:5.4~), + openclipart-libreoffice (<= 1:0.18+dfsg-17) +Description: office productivity suite -- arch-independent files + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the architecture-independent files of + LibreOffice. + +Package: libreoffice-java-common +Architecture: all +Depends: libreoffice-common, ure-java, liblibreoffice-java, libunoloader-java, ${java:Depends}, ${misc:Depends} +Breaks: libunoil-java (<< 1:6.4.0~rc1-6) +Replaces: libunoil-java (<< 1:6.4.0~rc1-6) +Description: office productivity suite -- arch-independent Java support files + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the architecture-independent files of + the Java support for LibreOffice (Java classes, scripts, config snippets). + +Package: libreoffice-help-common +Architecture: all +Depends: libreoffice-common, ${help-common-depends}, ${misc:Depends} +Breaks: libreoffice-common (<< 1:6.1.0~alpha1-1) +Replaces: libreoffice-common (<< 4:24.2.2~rc2) +Description: office productivity suite -- common files for LibreOffice help + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the common files (e.g. language-independent, media) files + for the LibreOffice Help. + +Package: libreoffice-writer +Architecture: %OOO_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-base-core (= ${binary:Version})%OOO_NO_BASE_ARCHS%, + libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-writer (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: libreoffice-math, +Suggests: fonts-crosextra-caladea, + fonts-crosextra-carlito, + libreoffice-base, + ${java-common-depends}, + ${java-runtime-depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~) +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Description: office productivity suite -- word processor + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the wordprocessor component for LibreOffice. + +Package: libreoffice-writer-nogui +Architecture: %OOO_NOGUI_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-base-core (= ${binary:Version})%OOO_NO_BASE_ARCHS%, + libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: libreoffice-math-nogui, +Suggests: fonts-crosextra-caladea, + fonts-crosextra-carlito, + libreoffice-base, + ${java-common-depends}, + ${java-runtime-depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-writer +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Conflicts: libreoffice-writer +Description: office productivity suite -- word processor (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the wordprocessor component for LibreOffice. + +Package: libreoffice-calc +Architecture: %OOO_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-base-core (= ${binary:Version})%OOO_NO_BASE_ARCHS%, + libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-calc (= ${source:Version}), + ${lpsolve-dep}, + ${misc:Depends}, + ${shlibs:Depends} +Suggests: ocl-icd-libopencl1 | mesa-opencl-icd | beignet-opencl-icd +Replaces: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-core (<< 4:25.2.1-3~), libreoffice-core-nogui (<< 4:25.2.1-3~) +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Description: office productivity suite -- spreadsheet + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the spreadsheet component for LibreOffice. + +Package: libreoffice-calc-nogui +Architecture: %OOO_NOGUI_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-base-core (= ${binary:Version})%OOO_NO_BASE_ARCHS%, + libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-calc (= ${source:Version}), + ${lpsolve-dep}, + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-calc, libreoffice-core (<< 4:25.2.1-3~), libreoffice-core-nogui (<< 4:25.2.1-3~) +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Conflicts: libreoffice-calc +Description: office productivity suite -- spreadsheet (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the spreadsheet component for LibreOffice + for use with libreoffice-core-nogui. + +Package: libreoffice-impress +Architecture: %OOO_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-core (= ${binary:Version}), + libreoffice-draw (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-impress (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-ogltrans (<< 1:6.1.4-2~) +Conflicts: libreoffice-ogltrans (<< 1:6.1.4-2~) +Provides: libreoffice-ogltrans +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Description: office productivity suite -- presentation + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the presentation component for LibreOffice. + +Package: libreoffice-impress-nogui +Architecture: %OOO_NOGUI_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-draw-nogui (= ${binary:Version}) | libreoffice-draw (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-impress (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-impress +Conflicts: libreoffice-ogltrans (<< 1:6.1.4-2~), libreoffice-impress +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Description: office productivity suite -- presentation (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the presentation component for LibreOffice. + +Package: libreoffice-draw +Architecture: %OOO_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-draw (= ${source:Version}), libreoffice-uiconfig-impress (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-core (<< 1:6.4.1~rc1-3), libreoffice-impress (<< 4:7.5.4~rc1-1), libreoffice-impress-nogui (<< 4:7.5.4~rc1-1), libreoffice-common (<< 1:6.4.2~rc1~) +Breaks: libreoffice-core (<< 1:6.4.1~rc1-3), libreoffice-impress (<< 4:7.5.3~rc2-2), libreoffice-common (<< 1:6.4.2~rc1~) +Description: office productivity suite -- drawing + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the drawing component for LibreOffice. + +Package: libreoffice-draw-nogui +Architecture: %OOO_NOGUI_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-draw (= ${source:Version}), libreoffice-uiconfig-impress (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-impress (<< 4:7.5.4~rc1-1), libreoffice-impress-nogui (<< 4:7.5.4~rc1-1), libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-draw +Breaks: libreoffice-impress (<< 1:5.2.0-2), libreoffice-common (<< 1:6.4.2~rc1~) +Conflicts: libreoffice-draw +Description: office productivity suite -- drawing (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the drawing component for LibreOffice. + +Package: libreoffice-math +Architecture: %OOO_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: fonts-opensymbol (>= 2:102.11), + libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-math (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~) +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Description: office productivity suite -- equation editor + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the equation editor component for LibreOffice. + +Package: libreoffice-math-nogui +Architecture: %OOO_NOGUI_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: fonts-opensymbol (>= 2:102.11), + libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-math (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-math +Conflicts: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-math +Description: office productivity suite -- equation editor (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the equation editor component for LibreOffice. + +Package: libreoffice-base-core +Architecture: %OOO_BASE_ARCHS% +Depends: libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Suggests: libreoffice-base +Replaces: libreoffice-base-drivers (<< 1:6.1.1~rc1-2) +Description: office productivity suite -- shared library + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains common libraries of LibreOffice Base used by + Base, Writer and Calc. + . + If you need full Base functionality (or actual database drivers), please + install libreoffice-base (and/or libreoffice-base-drivers and/o + libreoffice-sdbc-*). + +Package: libreoffice-base +Architecture: %OOO_BASE_ARCHS% +Section: database +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-base-core (= ${binary:Version}), + libreoffice-base-drivers (= ${binary:Version}), + libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + libreoffice-uiconfig-base (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Suggests: libreoffice-report-builder, + unixodbc, + python3-access2base +Recommends: libreoffice-writer, ${java-common-depends}, ${java-runtime-depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~) +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Description: office productivity suite -- database + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the database component for LibreOffice. + +Package: libreoffice-base-nogui +Architecture: %OOO_NOGUI_ARCHS% +Section: database +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-base-core (= ${binary:Version}), + libreoffice-base-drivers (= ${binary:Version}), + libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + ${misc:Depends}, + ${shlibs:Depends} +Suggests: libreoffice-report-builder, + unixodbc, + python3-uno +Recommends: libreoffice-writer, ${java-common-depends}, ${java-runtime-depends} +Replaces: libreoffice-common (<< 1:6.4.2~rc1~), libreoffice-base +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Conflicts: libreoffice-base +Description: office productivity suite -- database (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the database component for LibreOffice. + +Package: libreoffice-style-breeze +Architecture: all +Enhances: libreoffice-core +Depends: libreoffice-style-colibre, ${misc:Depends} +Suggests: breeze-icon-theme +Provides: libreoffice-style +Recommends: libreoffice-common +Description: office productivity suite -- Breeze symbol style + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the "breeze" symbol style, default style for KDE 5. + +Package: libreoffice-style-colibre +Architecture: all +Enhances: libreoffice-core +Depends: ${misc:Depends} +Provides: libreoffice-style +Recommends: libreoffice-common +Description: office productivity suite -- colibre symbol style + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the "colibre" symbol style - a icon theme + which follow Microsoft(R) Offices color scheme. + +Package: libreoffice-style-sifr +Architecture: all +Enhances: libreoffice-core +Depends: libreoffice-style-breeze, ${misc:Depends} +Provides: libreoffice-style, libreoffice-style-hicontrast +Replaces: libreoffice-style-hicontrast +Conflicts: libreoffice-style-hicontrast +Recommends: libreoffice-common +Description: office productivity suite -- Sifr symbol style + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the "sifr" symbol style (an adaption of the Gnome + symbolic theme), needs to be manually enabled in the LibreOffice option + menu. + +Package: libreoffice-style-elementary +Architecture: all +Depends: libreoffice-style-colibre, ${misc:Depends} +Enhances: libreoffice-core +Provides: libreoffice-style +Recommends: libreoffice-common +Description: office productivity suite -- Elementary symbol style + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the "elementary" symbol style, default style + for GTK+/Gnome. + +Package: libreoffice-style-karasa-jaga +Architecture: all +Depends: ${misc:Depends} +Enhances: libreoffice-core +Provides: libreoffice-style +Recommends: libreoffice-common +Description: office productivity suite -- Karasa Jaga symbol style + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the "karasa_jaga" symbol style. + +Package: libreoffice-style-sukapura +Architecture: all +Depends: ${misc:Depends} +Enhances: libreoffice-core +Provides: libreoffice-style +Recommends: libreoffice-common +Description: office productivity suite -- Sukapura symbol style + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the "sukapura" symbol style. + +Package: libreoffice-gnome +Architecture: %OOO_ARCHS% +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: ${gnome-gtk-recommends}, libreoffice-style-elementary +Suggests: libreoffice-evolution, seahorse +Section: gnome +Enhances: libreoffice +Provides: libreoffice-gtk-gnome +Replaces: libreoffice-gtk (<< 1:5.0.0~rc2-1), libreoffice-gtk3 (<< 1:7.2.0~) +Conflicts: libreoffice-gtk3 (<< 1:7.2.0~) +Description: office productivity suite -- GNOME integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the GIO support. + . + You can extend the functionality of this by installing these packages: + . + * libreoffice-evolution: Evolution addressbook support + * evolution + +Package: python3-uno +Section: python +Architecture: %OOO_ARCHS% +Enhances: libreoffice +Depends: libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-common (>= 1:7.0.0~alpha~), + ${misc:Depends}, + ${python3:Depends}, + ${shlibs:Depends} +# ucf should suffice (needed for preinst usage and is mandated by policy anyway). awk here doesn't please lintian) +# but there is a time64-related upgrade problem which can occur. Go safe. See Ubuntus +# https://bugs.launchpad.net/ubuntu/+source/libreoffice/+bug/2067762 +Pre-Depends: ucf, awk +Conflicts: python-uno +Replaces: libreoffice-core (= 1:4.3.0~beta1-1), libreoffice-common (<< 1:4.4.0~beta2) +Build-Profiles: +Description: Python-UNO bridge + The Python-UNO bridge allows use of the standard LibreOffice API + with the Python scripting language. It additionally allows + others to develop UNO components in Python, thus Python UNO components + may be run within the LibreOffice process and can be called from C++ + or the built in StarBasic scripting language. +Homepage: http://udk.openoffice.org/python/python-bridge.html + +Package: libreoffice-script-provider-python +Architecture: all +Section: python +Depends: libreoffice-common, + libreoffice-core-nogui | libreoffice-core, + ${misc:Depends}, + ${python3:Depends}, + ${pyuno-depends} +Build-Profiles: +Description: Python script support provider for LibreOffice scripting framework + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + The Scripting Framework allows LibreOffice users to write and run macros + in multiple languages including LibreOffice Basic, Python, Java, BeanShell + and JavaScript. These macros can then be assigned to menus, toolbars, + keyboard shortcuts, events and embedded objects. + . + This package contains the script provider to support Python. + +Package: libreoffice-script-provider-bsh +Architecture: all +Section: java +Depends: libreoffice-common, + libreoffice-core-nogui | libreoffice-core, + ${java-common-depends}, + liblibreoffice-java, + ${java:Depends}, + ${java-runtime-depends}, + ${misc:Depends} +Build-Profiles: +Description: BeanShell script support provider for LibreOffice scripting framework + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + The Scripting Framework allows LibreOffice users to write and run macros + in multiple languages including LibreOffice Basic, Python, Java, BeanShell + and JavaScript. These macros can then be assigned to menus, toolbars, + keyboard shortcuts, events and embedded objects. + . + This package contains the script provider to support BeanShell. + +Package: libreoffice-script-provider-js +Architecture: all +Section: web +Depends: libreoffice-common, + libreoffice-core-nogui | libreoffice-core, + ${java-common-depends}, + liblibreoffice-java, + ${java:Depends}, + ${java-runtime-depends}, + ${misc:Depends} +Build-Profiles: +Description: JavaScript script support provider for LibreOffice scripting framework + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + The Scripting Framework allows LibreOffice users to write and run macros + in multiple languages including LibreOffice Basic, Python, Java, BeanShell + and JavaScript. These macros can then be assigned to menus, toolbars, + keyboard shortcuts, events and embedded objects. + . + This package contains the script provider to support JavaScript. + +Package: libreoffice-sdbc-hsqldb +Depends: libreoffice-core-nogui | libreoffice-core, ${java-common-depends}, ${java:Depends}, ${java-runtime-depends}, ${shlibs:Depends}, ${misc:Depends} +Architecture: %OOO_JAVA_ARCHS% +Section: database +Enhances: libreoffice-base-drivers +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Build-Profiles: +Replaces: libreoffice-common (= 4:24.8.5-1) +Description: embedded HSQLDB SDBC driver for LibreOffice + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + The HSQLDB SDBC Driver allows one to use the HSQLDB embedded database from + LibreOffice without any wrapper layer such as ODBC or JDBC. + +Package: libreoffice-sdbc-mysql +Section: database +Architecture: %OOO_BASE_ARCHS% +Depends: libreoffice-core-nogui | libreoffice-core, ${misc:Depends}, ${shlibs:Depends} +Suggests: default-mysql-server | virtual-mysql-server +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Description: MariaDB/MySQL SDBC driver for LibreOffice + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + The MariaDB/MySQL driver allows one to use the MariaDB or MySQL + database from LibreOffice without any wrapper layer such as ODBC or JDBC. + +Package: libreoffice-base-drivers +Depends: libreoffice-core-nogui | libreoffice-core, ${shlibs:Depends}, ${misc:Depends} +Architecture: %OOO_BASE_ARCHS% +Section: database +Suggests: libreoffice-sdbc-postgresql | odbc-postgresql | libpg-java, + libreoffice-sdbc-mysql | libmyodbc | libmariadb-java, + libsqliteodbc | tdsodbc | odbc-mdbtools, + libjtds-java, +Recommends: libreoffice-sdbc-hsqldb [%OOO_JAVA_ARCHS%], ${base-firebird-recommends} +Replaces: libreoffice-base (<< 1:4.3.0-3), libreoffice-core (<< 1:6.2.0~beta1~) +Breaks: libreoffice-base (<< 1:4.3.0-3) +Description: Database connectivity drivers for LibreOffice + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the database connectivity drivers used by LibreOffices + database functionality: + - ODBC + - JDBC + - dBase + - Calc + - Flat files + . + You can extend this by installing: + . + * unixodbc: ODBC database support + * libmyodbc | odbc-postgresql | libsqliteodbc | tdsodbc | odbc-mdbtools: ODBC + drivers for: + - MySQL + - PostgreSQL + - SQLite + - MS SQL / Sybase SQL + - *.mdb (JET / MS Access) + * libmariadb-java | libpg-java | libjtds-java: JDBC Drivers + for: + - MySQL/MariaDB + - PostgreSQL + - MS SQL Server and Sybase + * libreoffice-sdbc-hsqldb: embedded HSQLDB SDBC Driver + * libreoffice-sdbc-firebird: (embedded) Firebird SDBC Driver + * libreoffice-sdbc-postgresql: PostgreSQL SDBC Driver + * libreoffice-sdbc-mysql: MySQL/MariaDB SDBC Driver + +Package: python3-access2base +Section: python +Architecture: all +Homepage: http://www.access2base.com/access2base.html +Depends: libreoffice-common (>= 1:6.4.0~beta1-2~), libreoffice-base, python3-uno, ${python3:Depends}, ${misc:Depends}, libjs-jquery +Replaces: libreoffice-base +Build-Profiles: +Description: interface between Python and the LibreOffice Access2Base library + Access2Base is a LibreOffice/OpenOffice Basic library of macros for + (business or personal) application developers and advanced users. + . + Their syntax and their meaning are directly inspired by MSAccess. + The macros are callable from + - a LibreOffice / OpenOffice Base application, + - any LibreOffice / OpenOffice document wanting to access data + stored in databases. + . + This package contains an interface between Python (user) scripts + and Access2Base. + +Package: python3-scriptforge +Section: python +Architecture: all +Depends: libreoffice-common (>= 1:7.1.0~), python3-uno, ${python3:Depends}, ${misc:Depends} +Replaces: libreoffice-common (<< 4:7.6.0~) +Build-Profiles: +Description: interface between Python and the LibreOffice ScriptForge library + ScriptForge libraries build up an extensible collection of macro scripting + resources for LibreOffice to be invoked from Basic macros or Python scripts. + . + This package contains the public scriptforge python library. + +Package: libofficebean-java +Section: java +Depends: liblibreoffice-java, + ${java-runtime-depends}, + ${java:Depends}, + ${shlibs:Depends}, + ${misc:Depends} +Recommends: libreoffice-core-nogui | libreoffice-core +Architecture: %OOO_JAVA_ARCHS% +Replaces: libreoffice-officebean (<< 1:6.4.0~rc2-1) +Breaks: libreoffice-officebean (<< 1:6.4.0~rc2-1) +Build-Profiles: +Description: generic Java Bean wrapper for LibreOffice components + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the Java library for the LibreOffice Office Bean + for embedding LibreOffice in custom Java applications. + +Package: libreoffice-uiconfig-common +Section: misc +Architecture: all +Depends: ${misc:Depends} +Replaces: libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-common (<< 4:7.6.0~beta1) +Description: UI data ("config") for LibreOffice ("common" set) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + +Package: libreoffice-uiconfig-base +Section: misc +Architecture: all +Depends: ${misc:Depends} +Replaces: libreoffice-base (<< 4:7.6.0~beta1), libreoffice-base-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-base (<< 4:7.6.0~beta1), libreoffice-base-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Description: UI data ("config") for LibreOffice Base + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + +Package: libreoffice-uiconfig-calc +Section: misc +Architecture: all +Depends: ${misc:Depends} +Replaces: libreoffice-calc (<< 4:7.6.0~beta1), libreoffice-calc-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-calc (<< 4:7.6.0~beta1), libreoffice-calc-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Description: UI data ("config") for LibreOffice Calc + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + +Package: libreoffice-uiconfig-draw +Section: misc +Architecture: all +Depends: ${misc:Depends} +Replaces: libreoffice-draw (<< 4:7.6.0~beta1), libreoffice-draw-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-draw (<< 4:7.6.0~beta1), libreoffice-draw-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Description: UI data ("config") for LibreOffice Draw + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + +Package: libreoffice-uiconfig-impress +Section: misc +Architecture: all +Depends: ${misc:Depends} +Replaces: libreoffice-impress (<< 4:7.6.0~rc1), libreoffice-impress-nogui (<< 4:7.6.0~rc1), libreoffice-draw (<< 4:7.6.0~rc1), libreoffice-draw-nogui (<< 4:7.6.0~rc1), libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-impress (<< 4:7.6.0~rc1), libreoffice-impress-nogui (<< 4:7.6.0~rc1), libreoffice-draw (<< 4:7.6.0~rc1), libreoffice-draw-nogui (<< 4:7.6.0~rc1), libreoffice-common (<< 4:7.6.0~beta1) +Description: UI data ("config") for LibreOffice Impress + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + +Package: libreoffice-uiconfig-math +Section: misc +Architecture: all +Depends: ${misc:Depends} +Replaces: libreoffice-math (<< 4:7.6.0~beta1), libreoffice-math-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-math (<< 4:7.6.0~beta1), libreoffice-math-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Description: UI data ("config") for LibreOffice Math + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + +Package: libreoffice-uiconfig-writer +Section: misc +Architecture: all +Depends: ${misc:Depends} +Replaces: libreoffice-writer (<< 4:7.6.0~beta1), libreoffice-writer-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-writer (<< 4:7.6.0~beta1), libreoffice-writer-nogui (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Description: UI data ("config") for LibreOffice Writer + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + + diff --git a/debian/control.kf5.in b/debian/control.kf5.in new file mode 100644 index 00000000000..3eaa5b3702c --- /dev/null +++ b/debian/control.kf5.in @@ -0,0 +1,17 @@ +Package: libreoffice-kf5 +Architecture: %OOO_ARCHS% +Depends: libreoffice-core (= ${binary:Version}), + ${kf5-qt5-depends}, + ${misc:Depends}, + ${shlibs:Depends} +Recommends: ${plasma-iconset-dep} +Replaces: libreoffice-kde (<< 1:6.1.0~alpha1-1) +Section: kde +Enhances: libreoffice +Description: office productivity suite -- KDE Frameworks 5 integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the KF5 plugin for LibreOffice and a KF5-based File + Picker when running under Plasma. + diff --git a/debian/control.kf6.in b/debian/control.kf6.in new file mode 100644 index 00000000000..e92467d43f2 --- /dev/null +++ b/debian/control.kf6.in @@ -0,0 +1,16 @@ +Package: libreoffice-kf6 +Architecture: %OOO_ARCHS% +Depends: libreoffice-core (= ${binary:Version}), + ${kf6-qt6-depends}, + ${misc:Depends}, + ${shlibs:Depends} +Recommends: ${plasma-iconset-dep} +Section: kde +Enhances: libreoffice +Description: office productivity suite -- KDE Frameworks 6 integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the KF6 plugin for LibreOffice and a KF6-based File + Picker when running under Plasma. + diff --git a/debian/control.lang.in b/debian/control.lang.in new file mode 100644 index 00000000000..32ccd1e5f77 --- /dev/null +++ b/debian/control.lang.in @@ -0,0 +1,30 @@ +Package: libreoffice-l10n-@LCODE@ +Section: localization +Architecture: all +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-common (>= 1:7.0.0~alpha~), ${misc:Depends}, @LOCALES_DEPENDS@ +Recommends: libreoffice-core (>> ${base-version}) @FONT_RECOMMENDS@ +Provides: libreoffice-l10n (= ${help-l10n-virtual-version}) +Suggests: hunspell-dictionary-@LCODE@ | myspell-dictionary-@LCODE@ | libreoffice-spellcheck-@LCODE@, + hyphen-@LCODE@ | libreoffice-hyphenation-@LCODE@, + libreoffice-grammarcheck-@LCODE@, + libreoffice-help-@LCODE@, + mythes-@LCODE@ +Description: office productivity suite -- @LNAME@ language package + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the localization of LibreOffice in + @LNAME@. + It contains the user interface, the templates and the autotext features. + (please note that not all this is available for all possible languages). + You can switch user interface language using the locales system. + . + Spelling dictionaries, hyphenation patterns, thesauri and help are not + included in this package. There are some available in separate packages + (myspell-*, hyphen-*, mythes-*, libreoffice-help-*) + . + If you just want to be able to spellcheck etc. in other languages, you can + install extra dictionaries/hyphenation patterns/thesauri independently of + the language packs. + diff --git a/debian/control.librelogo.in b/debian/control.librelogo.in new file mode 100644 index 00000000000..e62c2323336 --- /dev/null +++ b/debian/control.librelogo.in @@ -0,0 +1,23 @@ +Package: libreoffice-librelogo +Section: misc +Architecture: all +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-core, + libreoffice-writer, + libreoffice-script-provider-python, + libreoffice-common (>= 1:7.0.0~alpha), + ${misc:Depends} +Build-Profiles: +Homepage: http://librelogo.org +Description: Logo-like programming language for LibreOffice + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains Librelogo, which is a pyuno-based Logo-like programming + language with interactive vectorgraphics for education and DTP + - basic Logo syntax for back compatibility with educational Logo systems + - interactive vectorgraphics in LibreOffice Writer + - native commands (easily translatable) + - Python data structures (list, tuple, set, dictionary) and other Python + features + diff --git a/debian/control.lokit.in b/debian/control.lokit.in new file mode 100644 index 00000000000..6340450e0b2 --- /dev/null +++ b/debian/control.lokit.in @@ -0,0 +1,12 @@ +Package: libreofficekit-dev +Section: libdevel +Architecture: all +Depends: ${misc:Depends} +Suggests: libreofficekit-dev-gtk +Recommends: libreoffice-core, libreofficekit-data +Description: LibreOfficeKit -- headers + LibreOfficeKit can be used for accessing LibreOffice functionality through + C/C++, without any need to use UNO. + . + This package contains the headers needed for using LibreOfficeKit. + diff --git a/debian/control.mediawiki.in b/debian/control.mediawiki.in new file mode 100644 index 00000000000..55e3c5c89cb --- /dev/null +++ b/debian/control.mediawiki.in @@ -0,0 +1,18 @@ +Package: libreoffice-wiki-publisher +Section: misc +Architecture: all +Depends: libreoffice-core, + liblibreoffice-java, + ${java-common-depends}, + ${java:Depends}, + ${java-runtime-depends}, + ${misc:Depends} +Enhances: libreoffice-writer +Suggests: mediawiki, libreoffice-help-common +Description: LibreOffice extension for working with MediaWiki articles + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains an extension to create/edit/publish MediaWiki + articles with LibreOffice + diff --git a/debian/control.nlpsolver.in b/debian/control.nlpsolver.in new file mode 100644 index 00000000000..9b386d8bc4e --- /dev/null +++ b/debian/control.nlpsolver.in @@ -0,0 +1,15 @@ +Package: libreoffice-nlpsolver +Architecture: all +Depends: ${misc:Depends}, libreoffice-calc, libreoffice-core, liblibreoffice-java, ${java-common-depends}, ${java-runtime-depends} +Suggests: libreoffice-help-common +Section: math +Description: "Solver for Nonlinear Programming" extension for LibreOffice + By default LibreOffice Calc ships with a solver engine for linear + programming only. This allows the optimization of models to a certain degree. + However, if the formulas or constraints become more complex, + nonlinear programming is required. That missing gap is now filled by the + Solver for Nonlinear Programming extension. + . + Currently it incorporates two Evolutionary Algorithms which are able to + handle floating point and integer variables as well as nonlinear constraints. + diff --git a/debian/control.plasma.in b/debian/control.plasma.in new file mode 100644 index 00000000000..0a0e21dfbc9 --- /dev/null +++ b/debian/control.plasma.in @@ -0,0 +1,13 @@ +Package: libreoffice-plasma +Architecture: @PLASMA_ARCHITECTURE@ +Depends: ${misc:Depends}, + ${shlibs:Depends} +Recommends: libreoffice-kf@PLASMA_VERSION@ +Replaces: libreoffice-kde5 (<< 1:6.4.0~) +Description: office productivity suite -- some Plasma integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains some minor Plasma integration (like AppData + and "Create New..." integration) and a KDE/KF@PLASMA_KF_VERSION@ configuration backend. + diff --git a/debian/control.postgresql.in b/debian/control.postgresql.in new file mode 100644 index 00000000000..be1c7988a9e --- /dev/null +++ b/debian/control.postgresql.in @@ -0,0 +1,18 @@ +Package: libreoffice-sdbc-postgresql +Section: misc +Architecture: %OOO_BASE_ARCHS% +Depends: libreoffice-core-nogui | libreoffice-core, + libreoffice-common (>= 1:7.0.0~alpha), + ${misc:Depends}, + ${shlibs:Depends} +Suggests: postgresql (>= 8.4) +Enhances: libreoffice-base-drivers +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Description: PostgreSQL SDBC driver for LibreOffice + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + The PostgreSQL SDBC Driver allows one to use the PostgreSQL database from + LibreOffice without any wrapper layer such as ODBC or JDBC. +Homepage: http://wiki.documentfoundation.org/PostgreSQL-SDBC + diff --git a/debian/control.qt5.in b/debian/control.qt5.in new file mode 100644 index 00000000000..aea9dbebb63 --- /dev/null +++ b/debian/control.qt5.in @@ -0,0 +1,17 @@ +Package: libreoffice-qt5 +Architecture: %OOO_ARCHS% +Depends: libreoffice-core (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: qtgstreamer-plugins-qt5 +Enhances: libreoffice +Description: office productivity suite -- Qt 5 integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the Qt 5 plugin for drawing LibreOffices widgets + with Qt 5 and a Qt File Picker and print dialog. + . + You need to enable it manually by export SAL_USE_VCLPLUGIN=qt5 if you are + not using Plasma. + diff --git a/debian/control.qt6.in b/debian/control.qt6.in new file mode 100644 index 00000000000..2cc784160f0 --- /dev/null +++ b/debian/control.qt6.in @@ -0,0 +1,15 @@ +Package: libreoffice-qt6 +Architecture: %OOO_ARCHS% +Depends: libreoffice-core (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Enhances: libreoffice +Description: office productivity suite -- Qt 6 integration + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the Qt 6 plugin for drawing LibreOffices widgets + with Qt 6 and a Qt File Picker and print dialog. + . + You need to enable it manually by export SAL_USE_VCLPLUGIN=qt6. + diff --git a/debian/control.reportbuilder.in b/debian/control.reportbuilder.in new file mode 100644 index 00000000000..51e790c634a --- /dev/null +++ b/debian/control.reportbuilder.in @@ -0,0 +1,74 @@ +Package: libreoffice-report-builder +Section: misc +Architecture: all +Pre-Depends: ucf, libreoffice-common (>= 4:25.2.1~rc1-3~) +Depends: libreoffice-core | libreoffice-core-nogui, + libreoffice-report-builder-bin (>= ${base-version}), + libreoffice-common (>= 1:7.0.0~alpha), + libreoffice-uiconfig-report-builder (= ${source:Version}), + liblibreoffice-java, + ${java:Depends}, + ${java-common-depends}, + ${misc:Depends}, + ${report-builder-jar-depends} +Provides: libreoffice-reportdesigner +Enhances: libreoffice-base +Breaks: libreoffice-common (<< 1:6.4.2~rc1~) +Replaces: libreoffice-common (<< 1:6.4.2~r~~) +Description: LibreOffice component for building database reports + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the report builder: + "Create with the Sun Report Builder stylish, smart-looking database reports. + The flexible report editor can define group and page headers as well as + group and page footers and even calculation fields are available to + accomplish complex database reports." + +Package: libreoffice-report-builder-bin +Section: misc +Architecture: %OOO_REPORTBUILDER_ARCHS% +Depends: libreoffice-core, + libreoffice-base, + ${misc:Depends}, + ${shlibs:Depends} +Description: LibreOffice component for building database reports -- libraries + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains some architecture-dependent support libraries + (librpt*.so) for the report builder component. + +Package: libreoffice-report-builder-bin-nogui +Section: misc +Architecture: %OOO_REPORTBUILDER_ARCHS% +Depends: libreoffice-core-nogui | libreoffice-core, + libreoffice-base-nogui | libreoffice-base, + ${misc:Depends}, + ${shlibs:Depends} +Conflicts: libreoffice-report-builder-bin +Replaces: libreoffice-report-builder-bin +Description: LibreOffice component for building database reports -- libraries (no GUI variant) + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains some architecture-dependent support libraries + (librpt*.so) for the report builder component. + +Package: libreoffice-uiconfig-report-builder +Section: misc +Architecture: all +Replaces: libreoffice-report-builder (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Breaks: libreoffice-report-builder (<< 4:7.6.0~beta1), libreoffice-common (<< 4:7.6.0~beta1) +Depends: ${misc:Depends} +Description: UI data ("config") for the LibreOffice Report Builder + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains internal "configuration" of various UI components. + It is not meant to be editable. It is just split out for dependencies of + other packages. + . + You will usually not need to install this package manually but it should + just be pulled in by other packages. + diff --git a/debian/control.sdk.in b/debian/control.sdk.in new file mode 100644 index 00000000000..90c994ae2b1 --- /dev/null +++ b/debian/control.sdk.in @@ -0,0 +1,70 @@ +Package: libreoffice-dev +Section: devel +Architecture: %OOO_ARCHS% +Depends: libreoffice-core-nogui (= ${binary:Version}) | libreoffice-core (= ${binary:Version}), + libreoffice-dev-common (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Recommends: g++, ${java-common-depends}, ${java-runtime-depends}, libreofficekit-dev +Suggests: libmythes-dev, libreofficekit-dev-gtk, libreoffice-dev-doc +Replaces: libreoffice-dev-common (<< 1:5.4.1~) +Conflicts: libreoffice-dev-doc (<< 1:5.2.5-2~), libreoffice (<< 1:5.2.5-2~) +Breaks: libreoffice-dev-common (<< 1:5.4.1~) +Description: office productivity suite -- SDK -- architecture-dependent parts + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the (architecture-dependent) files needed to build + plugins/add-ons for LibreOffice (build tools, libraries, arch-dependent + includes, ...). + +Package: libreoffice-dev-gui +Section: devel +Architecture: %OOO_ARCHS% +Depends: libreoffice-core (= ${binary:Version}), + libreoffice-dev (= ${binary:Version}), + libreoffice-dev-common (= ${source:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Replaces: libreoffice-dev (<< 1:7.0.0~) +Breaks: libreoffice-dev (<< 1:7.0.0~) +Description: office productivity suite -- "GUI" development stuff + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the gengal utility which was moved from + libreoffice-dev. + +Package: libreoffice-dev-common +Section: devel +Architecture: all +Depends: ${misc:Depends} +Recommends: python3 +Replaces: libreoffice-dev (<< 4:24.8.0~beta1~) +Breaks: libreoffice-dev (<< 1:5.2.0~) +Conflicts: libreoffice (<< 1:5.2.5-2~) +Description: office productivity suite -- SDK -- architecture-independent parts + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the (architecture-independent) files needed to build + plugins/add-ons for LibreOffice (includes, IDL files, ...) + +Package: libreoffice-dev-doc +Section: doc +Architecture: all +Depends: ${misc:Depends} +Recommends: libreoffice-dev (= ${binary:Version}), + www-browser +Conflicts: openoffice.org-dev-doc, libreoffice-dev (<= 1:5.0.3~rc1-2), libreoffice (<< 1:5.2.5-2~) +Build-Profiles: +Description: office productivity suite -- SDK documentation + LibreOffice is a full-featured office productivity suite that provides + a near drop-in replacement for Microsoft(R) Office. + . + This package contains the documentation of the LibreOffice SDK: + . + * C++/Java API reference + * IDL reference + * C++/Java/Basic examples + diff --git a/debian/control.test-packages.in b/debian/control.test-packages.in new file mode 100644 index 00000000000..4130f6ecb3d --- /dev/null +++ b/debian/control.test-packages.in @@ -0,0 +1,18 @@ +Package: libreoffice-subsequentcheckbase +Section: libs +Architecture: all +Depends: liblibreoffice-java, ${java:Depends}, ${misc:Depends} +Build-Profiles: +Description: LibreOffice java test libraries + Java libraries LibreOffice subsequentchecks integration test suite + +Package: libreoffice-smoketest-data +Section: misc +Depends: ${misc:Depends} +Architecture: all +Build-Profiles: +Replaces: libreoffice-java-common (<< 1:6.4.0~rc1-6) +Breaks: libreoffice-java-common (<< 1:6.4.0~rc1-6) +Description: data files for LibreOffices "smoketest" + Data files for the LibreOffice "smoketest". + diff --git a/debian/control.ure.in b/debian/control.ure.in new file mode 100644 index 00000000000..cbe71020310 --- /dev/null +++ b/debian/control.ure.in @@ -0,0 +1,180 @@ +Package: uno-libs-private +Section: libs +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends} +Replaces: uno-libs3 +Breaks: uno-libs3, libuno-cppuhelpergcc3-3 (<< 4:7.5.0~), libreoffice-core (<< 4:7.5.0~), libreoffice-core-nogui (<< 4:7.5.0~) +Description: LibreOffice UNO runtime environment -- private libraries used by public ones + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + . + This package contains some private UNO/URE libraries which are used by public + ones (e.g. cppu). + +Package: libuno-sal3t64 +Section: libs +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends} +Replaces: ure (<< 5.0.0~rc2-1), uno-libs3, libuno-sal3 +Breaks: libreoffice-core (<< 1:4.3.0~), uno-libs3, libuno-sal3 (<< ${source:Version}) +Provides: ${t64:Provides} +Description: LibreOffice UNO runtime environment -- SAL public library + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + . + This package contains the System Abstraction Layer (SAL) library. + +Package: libuno-salhelpergcc3-3t64 +Section: libs +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends} +Replaces: ure (<< 5.0.0~rc2-1), uno-libs3, libuno-salhelpergcc3-3 +Breaks: libreoffice-core (<< 1:4.3.0~), uno-libs3, libuno-salhelpergcc3-3 (<< ${source:Version}) +Provides: ${t64:Provides} +Description: LibreOffice UNO runtime environment -- SAL helpers for C++ library + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + . + This package contains C++ helpers to make use of sal easier. + +Package: libuno-cppu3t64 +Section: libs +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends} +Replaces: ure (<< 5.0.0~rc2-1), uno-libs3, libuno-cppu3 +Breaks: libreoffice-core (<< 1:4.3.0~), uno-libs3, libuno-cppu3 (<< ${source:Version}) +Provides: ${t64:Provides} +Description: LibreOffice UNO runtime environment -- CPPU public library + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + . + This package contains CPPU, the type definitions/implementations for the core + of UNO. + +Package: libuno-cppuhelpergcc3-3t64 +Section: libs +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends}, uno-libs-private (= ${binary:Version}) +Replaces: ure (<< 5.0.0~rc2-1), uno-libs3, libuno-cppuhelpergcc3-3 +Breaks: libreoffice-core (<< 1:4.3.0~), uno-libs3, libuno-cppuhelpergcc3-3 (<< ${source:Version}) +Provides: ${t64:Provides} +Description: LibreOffice UNO runtime environment -- CPPU helper library + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + . + This package contains the cppuhelper library (helpers for using cppu in C++, + e.g. templates for implementing UNO components, bootstrapping stuff) + +Package: libuno-purpenvhelpergcc3-3t64 +Section: libs +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends} +Replaces: ure (<< 5.0.0~rc2-1), uno-libs3, libuno-purpenvhelpergcc3-3 +Breaks: libreoffice-core (<< 1:4.3.0~), uno-libs3, libuno-purpenvhelpergcc3-3 (<< ${source:Version}) +Provides: ${t64:Provides} +Description: LibreOffice UNO runtime environment -- "purpose environment" helper + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + . + This package contains a library which contains a helper for implementing + so-called "purpose environments". + +Package: ure +Section: libs +Architecture: %OOO_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends}, uno-libs-private (= ${binary:Version}) +Replaces: libreoffice-common (<< 1:4.5.0), libreoffice-core (<< 1:5.3.0~beta1~), libjuh-java (<< 1:6.4.0~rc1-6), libridl-java (<< 1:6.4.0~rc1-6), libunoloader-java (<< 1:6.4.0~rc1-6), libjurt-java (<< 1:6.4.0~rc1-6), ure-java (<< 1:7.1.1~rc2-1) +Breaks: libreoffice-core (<< 1:7.4.0~), libreoffice-core-nogui (<< 1:7.4.0~), libreoffice-common (<< 1:4.5.0), libjuh-java (<< 1:6.4.0~rc1-6), libridl-java (<< 1:6.4.0~rc1-6), libunoloader-java (<< 1:6.4.0~rc1-6), libjurt-java (<< 1:6.4.0~rc1-6), ure-java (<< 1:7.1.1~rc2-1) +Description: LibreOffice UNO runtime environment + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + +Package: ure-java +Section: java +Architecture: %OOO_JAVA_ARCHS% +Depends: ${misc:Depends}, ${shlibs:Depends}, ${java:Depends}, uno-libs-private (= ${binary:Version}), ure (= ${binary:Version}), libunoloader-java +Recommends: liblibreoffice-java, ${java-runtime-depends} +Replaces: ure (<< 4:24.2.0~rc1~) +Breaks: ure (<< 4:24.2.0~rc1~) +Build-Profiles: +Description: LibreOffice UNO runtime environment -- Java support + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + It offers you a flexible, low-overhead component model that is most ideal + for (but not limited to) combining in one application components written in + different computer languages, and developed by different parties. You can use + it to create any kind of application, in whatever application domain you can + imagine. + . + This package contains the Java support in the URE. + +Package: libunoloader-java +Architecture: all +Section: java +Depends: ${java:Depends}, ${misc:Depends} +Replaces: ure (<< 6.4.0~rc1-6) +Breaks: ure (<< 6.4.0~rc1-6) +Build-Profiles: +Description: LibreOffice UNO runtime environment -- (Java) UNO loader + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + This package contains a UNO loader library for Java. + +Package: liblibreoffice-java +Architecture: all +Section: java +Depends: ure-java, libunoloader-java, ${java:Depends}, ${misc:Depends} +Provides: libjuh-java, libridl-java, libjurt-java, libunoil-java +Replaces: libjuh-java (<< 1:7.1.0~), libridl-java (<< 1:7.1.0~), libjurt-java (<< 1:7.1.0~), libunoil-java (<< 1:7.1.0~) +Breaks: libjuh-java (<< 1:7.1.0~), libridl-java (<< 1:7.1.0~), libjurt-java (<< 1:7.1.0~), libunoil-java (<< 1:7.1.0~) +Build-Profiles: +Description: LibreOffice UNO runtime environment -- Java library + The Uno Runtime Environment (URE) is the well-known UNO component model + of LibreOffice, packaged up as an individual product. + . + This package contains the public Java libraries. + diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 00000000000..9b7cb88aa4d --- /dev/null +++ b/debian/copyright @@ -0,0 +1,394 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: LibreOffice +Upstream-Contact: libreoffice@lists.freedesktop.org +Source: http://download.documentfoundation.org/libreoffice/src +# they are already removed when packing the upstream tarballs, but are in git... +#Files-Excluded: schema/*/* + +Files: * +Copyright: Copyright 2000, 2010 Oracle and/or its affiliates. + Copyright (c) 2000, 2010 LibreOffice contributors and/or their affiliates. +License: MPL-2.0 + On Debian systems the full text of the MPL-2.0 can be found in + /usr/share/common-licenses/MPL-2.0. + . + Some files include Apache-2.0 licensed material: + . + # This file incorporates work covered by the following license notice: + # + # Licensed to the Apache Software Foundation (ASF) under one or more + # contributor license agreements. See the NOTICE file distributed + # with this work for additional information regarding copyright + # ownership. The ASF licenses this file to you under the Apache + # License, Version 2.0 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.apache.org/licenses/LICENSE-2.0 . + . + On Debian systems the full text of the Apache-2.0 license can be found in + /usr/share/common-licenses/Apache-2.0. + +Files: extras/source/truetype/symbol/OpenSymbol.sfd +Copyright: (c) 2009 Sun Microsystems Inc. + (c) 2010 Google Corporation + (c) 2011 Julien Nabet + (c) 2011 Olivier Hallot + (c) 2013 Mathias Hasselmann + (c) 2015 Khaled Hosny + (c) 2016 Mike Kaganski +License: MPL-2.0 + On Debian systems the full text of the MPL-2.0 can be found in + /usr/share/common-licenses/MPL-2.0. + . + Some files include Apache-2.0 licensed material: + . + # This file incorporates work covered by the following license notice: + # + # Licensed to the Apache Software Foundation (ASF) under one or more + # contributor license agreements. See the NOTICE file distributed + # with this work for additional information regarding copyright + # ownership. The ASF licenses this file to you under the Apache + # License, Version 2.0 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.apache.org/licenses/LICENSE-2.0 . + . + On Debian systems the full text of the Apache-2.0 license can be found in + /usr/share/common-licenses/Apache-2.0. + +Files: swext/mediawiki/src/filter/odt2mediawiki.xsl +Copyright: Copyright (C) 2007-2013 Bernhard Haumacher (haui@haumacher.de) +License: Apache-2.0 + +Files: sysui/desktop/apparmor/* +Copyright: Copyright (C) 2016 Canonical Ltd. + Copyright (C) 2017 Software in the Public Interest, Inc. +License: MPL-2.0 + +Files: sysui/desktop/appstream-appdata/*.xml +Copyright: Copyright (c) 2013-2019 LibreOffice contributors and/or their affiliates. +License: CC0-1.0 + +Files: msicreator/createmsi.py +Copyright: Copyright 2017-2018 Jussi Pakkanen et al +License: Apache-2.0 + +Files: icon-themes/breeze*/* +Copyright: Copyright 2014 Uri Herrera + Copyright 2015 Andreas Kainz and other contributors +License: GPL-2+ + +Files: icon-themes/sifr*/* +Copyright: Jakub Steiner + Lapo Calamandrei + Hylke Bons + Barbara Muraus + Issa Alkurtass + Norah Abanumay + Copyright 2017-2018 Matthias Freund +License: CC-BY-SA-3.0 + +Files: icon-themes/elementary*/* +Copyright: Copyright 2015 by Simon Steinbeiss , Pasi Lallinaho +License: GPL-3+ + +Files: icon-themes/colibre*/* +Copyright: Copyright 2018 Andreas Kainz +License: CC0-1.0 + +https://github.com/rizmut/libreoffice-style-karasa-jaga/blob/master/COPYING +Files: icon-themes/karasa_jaga/* +Copyright: Copyright (c) 2014 Rizal Muttaqin +License: LGPL-3+ + +Files: icon-themes/sukapura*/* +Copyright: Copyright (c) 2019-2020 Rizal Muttaqin +License: MPL-2.0 + +Files: helpcontent2/help3xsl/normalize.css +Copyright: Copyright © Nicolas Gallagher and Jonathan Neal +License: Expat + +Files: helpcontent2/help3xsl/prism.js +Copyright: Copyright (c) Lea Verou +License: MIT + +Files: helpcontent2/help3xsl/prism.css +Copyright: Copyright (c) Tim Shedor +License: MIT + +Files: debian/* +Copyright: Copyright (C) 2002-2009 Software in the Public Interest, Inc. +License: GPL-2 + +Files: debian/templates/debian-presentation.otp +Copyright: Copyright (C) 2010 Raphaël Hertzog +License: GPL-2+ + +Files: debian/templates/debian-presentation-background.xcf +Copyright: Copyright Alexis Younes "ayo" +License: GPL-2+ + +Files: vcl/qa/cppunit/data/tdf153440.ttf.readme +Copyright: (C) 2023 Khaled Hosny +License: + This is a subset copy of Noto Emoji font licensed under Open Font License and + obtained from: + . + https://fonts.google.com/noto/specimen/Noto+Emoji + . + And subset using hb-subset to contain only the one glyph used in the test: + . + hb-subset static/NotoEmoji-Regular.ttf "🌿 " -o tdf153440.ttf --drop-tables=GSUB,STAT,vhea,vmtx + . + The space is added to the subset as it seems needed to get the font to work on + Windows. (The --drop-tables argument is not necessary be saves a few bytes of + stuff we don’t need.) + . + Open Font License: + . + PREAMBLE + The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership +with others. + . + The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. + . + DEFINITIONS + “Font Software” refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. + . + “Reserved Font Name” refers to any names specified as such after the copyright statement(s). + . + “Original Version” refers to the collection of Font Software components as distributed by the Copyright Holder(s). + . + “Modified Version” refers to any derivative made by adding to, deleting, or substituting – in part or in whole – any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. + . + “Author” refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. + . + PERMISSION & CONDITIONS + Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: + . + 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. + . + 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. + . + 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. + . + 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. + . + 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. + . + TERMINATION + . + This license becomes null and void if any of the above conditions are + not met. + . + DISCLAIMER + . + THE FONT SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT + OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE + COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL + DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM + OTHER DEALINGS IN THE FONT SOFTWARE. + +Files: vcl/qa/cppunit/data/tdf107718.otf +Copyright: (C) 2023 Khaled Hosny +License: + This is a subset copy of Source Han Sans font licensed under Open Font License and + obtained from (the Static Super OTC): + . + https://github.com/adobe-fonts/source-han-sans/releases/tag/2.004R + . + And subset using hb-subset to contain only the one glyph used in the test: + . + hb-subset SourceHanSans.ttc --face-index=25 --unicodes="u4E16,u1109,u1168,u11BC,u302E,uC185,u0020" -o tdf107718.otf + . + Open Font License: + . + PREAMBLE + The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership +with others. + . + The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. + . + DEFINITIONS + “Font Software” refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. + . + “Reserved Font Name” refers to any names specified as such after the copyright statement(s). + . + “Original Version” refers to the collection of Font Software components as distributed by the Copyright Holder(s). + . + “Modified Version” refers to any derivative made by adding to, deleting, or substituting – in part or in whole – any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. + . + “Author” refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. + . + PERMISSION & CONDITIONS + Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: + . + 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. + . + 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. + . + 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. + . + 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. + . + 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. + . + TERMINATION + . + This license becomes null and void if any of the above conditions are + not met. + . + DISCLAIMER + . + THE FONT SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT + OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE + COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL + DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM + OTHER DEALINGS IN THE FONT SOFTWARE. + +Files: tarballs/dtoa* +Copyright: Copyright (c) 1991, 2000, 2001 by Lucent Technologies. +License: Expat + +# https://github.com/google/skia/blob/master/LICENSE +Files: tarballs/skia* +Copyright: Copyright (c) 2011 Google Inc. +License: BSD-3-clause + +Files: tarballs/pdfium* +Copyright: // Copyright 2014-2016 PDFium Authors. + // Original code copyright 2014 Foxit Software Inc. +License: other + // Redistribution and use in source and binary forms, with or without + // modification, are permitted provided that the following conditions are + // met: + // + // * Redistributions of source code must retain the above copyright + // notice, this list of conditions and the following disclaimer. + // * Redistributions in binary form must reproduce the above + // copyright notice, this list of conditions and the following disclaimer + // in the documentation and/or other materials provided with the + // distribution. + // * Neither the name of Google Inc. nor the names of its + // contributors may be used to endorse or promote products derived from + // this software without specific prior written permission. + // + // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Files: tarballs/Java-WebSocket* +Copyright: Copyright (c) 2010-2020 Nathan Rajlich +License: MIT + +Files: debian/patches/add-access2base-doc.diff wizards/source/access2base/access2base.html +Copyright: Copyright (c) Jeremy Ruston 2004-2007 + Copyright (c) UnaMesa Association 2007-2012 +License: other + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + . + Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + . + Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + . + Neither the name of the UnaMesa Association nor the names of its contributors may be + used to endorse or promote products derived from this software without specific + prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS' AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT + SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE. + +Files: helpcontent2/help3xsl/polyfills.js +Copyright: Copyright (c) 2016-present, jszhou +License: MIT + +Files: helpcontent2/help3xsl/polyfills.js +Copyright: Copyright (C) 2015 Larry Davis +License: BSD-2-clause + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + . + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +License: MPL-2.0 + On Debian systems the full text of the MPL-2.0 can be found in + /usr/share/common-licenses/MPL-2.0. + +License: Apache-2.0 + On Debian systems the full text of the Apache-2.0 license can be found in + /usr/share/common-licenses/Apache-2.0. + +License: GPL-2+ + On Debian systems the full text of the GPL-2 can be found in + /usr/share/common-licenses/GPL-2 + +License: GPL-3+ + On Debian systems the full text of the GPL-3 can be found in + /usr/share/common-licenses/GPL-3 + +License: GPL-2 + On Debian systems the full text of the GPL-2 can be found in + /usr/share/common-licenses/GPL-2 + +License: MPL-1.1 + On Debian systems the full text of the MPL-1.1 can be found in + /usr/share/common-licenses/MPL-1.1 + +License: LGPL-2 + On Debian systems the full text of the LGPL-2 can be found in + /usr/share/common-licenses/LGPL-2 + +License: LGPL-3+ + On Debian systems the full text of the LGPL-3 can be found in + /usr/share/common-licenses/LGPL-3 + +License: CC0-1.0 + On Debian systems the full text of the CC0-1.0 license can be found in + /usr/share/common-licenses/CC0-1.0 + + diff --git a/debian/liblibreoffice-java.lintian-overrides b/debian/liblibreoffice-java.lintian-overrides new file mode 100644 index 00000000000..16847714fbf --- /dev/null +++ b/debian/liblibreoffice-java.lintian-overrides @@ -0,0 +1,5 @@ +liblibreoffice-java: codeless-jar [usr/share/java/juh-*.jar] +liblibreoffice-java: codeless-jar [usr/share/java/jurt-*.jar] +liblibreoffice-java: codeless-jar [usr/share/java/ridl-*.jar] +liblibreoffice-java: codeless-jar [usr/share/java/unoil-*.jar] +liblibreoffice-java: classpath-contains-relative-path ../ [usr/share/java/libreoffice-*.jar] diff --git a/debian/liblibreoffice-java.poms b/debian/liblibreoffice-java.poms new file mode 100644 index 00000000000..e73276d03fa --- /dev/null +++ b/debian/liblibreoffice-java.poms @@ -0,0 +1,32 @@ +# List of POM files for the package +# Format of this file is: +# [option]* +# where option can be: +# --ignore: ignore this POM and its artifact if any +# --ignore-pom: don't install the POM. To use on POM files that are created +# temporarily for certain artifacts such as Javadoc jars. [mh_install, mh_installpoms] +# --no-parent: remove the tag from the POM +# --package=: an alternative package to use when installing this POM +# and its artifact +# --has-package-version: to indicate that the original version of the POM is the same as the upstream part +# of the version for the package. +# --keep-elements=: a list of XML elements to keep in the POM +# during a clean operation with mh_cleanpom or mh_installpom +# --artifact=: path to the build artifact associated with this POM, +# it will be installed when using the command mh_install. [mh_install] +# --java-lib: install the jar into /usr/share/java to comply with Debian +# packaging guidelines +# --usj-name=: name to use when installing the library in /usr/share/java +# --usj-version=: version to use when installing the library in /usr/share/java +# --no-usj-versionless: don't install the versionless link in /usr/share/java +# --dest-jar=: the destination for the real jar. +# It will be installed with mh_install. [mh_install] +# --classifier=: Optional, the classifier for the jar. Empty by default. +# --site-xml=: Optional, the location for site.xml if it needs to be installed. +# Empty by default. [mh_install] +# +debian/pom.juh.xml --no-parent --has-package-version +debian/pom.jurt.xml --no-parent --has-package-version +debian/pom.ridl.xml --no-parent --has-package-version +debian/pom.unoil.xml --no-parent --has-package-version +debian/pom.libreoffice.xml --no-parent --has-package-version diff --git a/debian/liblibreofficekitgtk.links b/debian/liblibreofficekitgtk.links new file mode 100644 index 00000000000..c8017de61d1 --- /dev/null +++ b/debian/liblibreofficekitgtk.links @@ -0,0 +1 @@ +usr/lib/libreoffice/program/liblibreofficekitgtk.so usr/lib/liblibreofficekitgtk.so diff --git a/debian/libofficebean-java.poms b/debian/libofficebean-java.poms new file mode 100644 index 00000000000..36e613aa9ae --- /dev/null +++ b/debian/libofficebean-java.poms @@ -0,0 +1,28 @@ +# List of POM files for the package +# Format of this file is: +# [option]* +# where option can be: +# --ignore: ignore this POM and its artifact if any +# --ignore-pom: don't install the POM. To use on POM files that are created +# temporarily for certain artifacts such as Javadoc jars. [mh_install, mh_installpoms] +# --no-parent: remove the tag from the POM +# --package=: an alternative package to use when installing this POM +# and its artifact +# --has-package-version: to indicate that the original version of the POM is the same as the upstream part +# of the version for the package. +# --keep-elements=: a list of XML elements to keep in the POM +# during a clean operation with mh_cleanpom or mh_installpom +# --artifact=: path to the build artifact associated with this POM, +# it will be installed when using the command mh_install. [mh_install] +# --java-lib: install the jar into /usr/share/java to comply with Debian +# packaging guidelines +# --usj-name=: name to use when installing the library in /usr/share/java +# --usj-version=: version to use when installing the library in /usr/share/java +# --no-usj-versionless: don't install the versionless link in /usr/share/java +# --dest-jar=: the destination for the real jar. +# It will be installed with mh_install. [mh_install] +# --classifier=: Optional, the classifier for the jar. Empty by default. +# --site-xml=: Optional, the location for site.xml if it needs to be installed. +# Empty by default. [mh_install] +# +debian/pom.officebean.xml --no-parent --has-package-version diff --git a/debian/libreoffice-base-drivers.NEWS b/debian/libreoffice-base-drivers.NEWS new file mode 100644 index 00000000000..049002ccdae --- /dev/null +++ b/debian/libreoffice-base-drivers.NEWS @@ -0,0 +1,14 @@ +libreoffice (1:6.2.0~beta1-1) unstable; urgency=low + + * The JDBC Driver used for JDBC Access by the LibreOffice MySQL driver + (NOT libreoffice-mysql-connector) contained in this package has been + changed from MySQL to MariaDB (libmysql-java -> libmariadb-java). See + http://bugs.debian.org/913360 and https://bugs.debian.org/912916. + + This also involves changing the classes used in the code, so using + libmysql-java and com.mysql.jdbc.Driver does not work anymore. + + If you want to connect to MySQL or MariaDB databases over JDBC, use + libmariadb-java. + + -- Rene Engelhard Fri, 16 Nov 2018 19:35:22 +0100 diff --git a/debian/libreoffice-base-drivers.lintian-overrides b/debian/libreoffice-base-drivers.lintian-overrides new file mode 100644 index 00000000000..2e33386c3a8 --- /dev/null +++ b/debian/libreoffice-base-drivers.lintian-overrides @@ -0,0 +1,2 @@ +# "aged out" due to debhelpers changelog trimming (see #1021502) +libreoffice-base-drivers: debian-news-entry-has-unknown-version 1:6.2.0~beta1-1 [usr/share/doc/libreoffice-base-drivers/NEWS.Debian.gz:1] diff --git a/debian/libreoffice-base-nogui.bug-control b/debian/libreoffice-base-nogui.bug-control new file mode 100644 index 00000000000..b06c62ee293 --- /dev/null +++ b/debian/libreoffice-base-nogui.bug-control @@ -0,0 +1,2 @@ +report-with: libreoffice-core libreoffice-core-nogui +package-status: unixodbc libmyodbc odbc-postgresql libsqliteodbc tdsodbc mdbtools libmariadb-java libmysql-java libpg-java libsapdbc-java diff --git a/debian/libreoffice-base-nogui.mime b/debian/libreoffice-base-nogui.mime new file mode 100644 index 00000000000..3174fccf851 --- /dev/null +++ b/debian/libreoffice-base-nogui.mime @@ -0,0 +1,11 @@ +### +# shared-mime-info + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.database; soffice --nologo --base %s; edit=soffice --nologo --base %s; print=soffice --nologo --base -p %s; test=test -n "$DISPLAY"; description="OpenDocument Database"; nametemplate=%s.odb; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.base; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Database"; nametemplate=%s.sdb; priority=8 + +# +### diff --git a/debian/libreoffice-base-nogui.preinst.in b/debian/libreoffice-base-nogui.preinst.in new file mode 100644 index 00000000000..c8e563e409d --- /dev/null +++ b/debian/libreoffice-base-nogui.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/base.xcd + ucf --purge /etc/libreoffice/registry/base.xcd + ucfr --force --purge libreoffice-base-nogui /etc/libreoffice/registry/base.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/base.xcd ]; then + rm -f /etc/libreoffice/registry/base.xcd + ucf --purge /etc/libreoffice/registry/base.xcd + ucfr --force --purge libreoffice-base-nogui /etc/libreoffice/registry/base.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-base.NEWS b/debian/libreoffice-base.NEWS new file mode 100644 index 00000000000..b7a30f1a0e0 --- /dev/null +++ b/debian/libreoffice-base.NEWS @@ -0,0 +1,14 @@ +libreoffice (1:4.2.1-1) experimental; urgency=low + + * the database drivers have been split out to a new libreoffice-base-drivers + package. This package depends on most of them, but that explicitly + _does not_ include the HSQLDB SDBC Driver or the new Firebird SDBC Driver + (both for the embedded database) - whose because of their dependencies are + split into extra packages. + . + If you used a "normal" embedded database in your (old) database file you + _must_ install libreoffice-sdbc-hsqldb so that it can "connect" to it. + . + Similar with the new Firebird embedded database in 4.2 and -sdbc-firebird. + + -- Rene Engelhard Fri, 16 Aug 2013 10:21:53 +0200 diff --git a/debian/libreoffice-base.bug-control b/debian/libreoffice-base.bug-control new file mode 100644 index 00000000000..31f42c1f1f7 --- /dev/null +++ b/debian/libreoffice-base.bug-control @@ -0,0 +1,2 @@ +report-with: libreoffice-core +package-status: unixodbc libmyodbc odbc-postgresql libsqliteodbc tdsodbc mdbtools libmariadb-java libmysql-java libpg-java libsapdbc-java diff --git a/debian/libreoffice-base.lintian-overrides b/debian/libreoffice-base.lintian-overrides new file mode 100644 index 00000000000..458c78f837a --- /dev/null +++ b/debian/libreoffice-base.lintian-overrides @@ -0,0 +1,3 @@ +libreoffice-base: desktop-command-not-in-package libreoffice [usr/share/applications/libreoffice-base.desktop] +# "aged out" due to debhelpers changelog trimming (see #1021502) +libreoffice-base: debian-news-entry-has-unknown-version 1:4.2.1-1 [usr/share/doc/libreoffice-base/NEWS.Debian.gz:1] diff --git a/debian/libreoffice-base.manpages b/debian/libreoffice-base.manpages new file mode 100644 index 00000000000..144eec74763 --- /dev/null +++ b/debian/libreoffice-base.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/man/man1/lobase.1.gz diff --git a/debian/libreoffice-base.mime b/debian/libreoffice-base.mime new file mode 100644 index 00000000000..3174fccf851 --- /dev/null +++ b/debian/libreoffice-base.mime @@ -0,0 +1,11 @@ +### +# shared-mime-info + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.database; soffice --nologo --base %s; edit=soffice --nologo --base %s; print=soffice --nologo --base -p %s; test=test -n "$DISPLAY"; description="OpenDocument Database"; nametemplate=%s.odb; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.base; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Database"; nametemplate=%s.sdb; priority=8 + +# +### diff --git a/debian/libreoffice-base.preinst.in b/debian/libreoffice-base.preinst.in new file mode 100644 index 00000000000..3543290c436 --- /dev/null +++ b/debian/libreoffice-base.preinst.in @@ -0,0 +1,31 @@ +#!/bin/sh + +set -e + +#INCLUDE_SHELL_LIB# + +if [ upgrade = "$1" ] || dpkg --compare-versions "$2" lt 1:6.4.0~beta1-2; then + dpkg-divert --remove --no-rename \ + --divert /usr/lib/libreoffice/share/basic/dialog.xlc.noaccess \ + /usr/lib/libreoffice/share/basic/dialog.xlc + dpkg-divert --remove --no-rename \ + --divert /usr/lib/libreoffice/share/basic/script.xlc.noaccess \ + /usr/lib/libreoffice/share/basic/script.xlc + # cleanup + rm -f /usr/lib/libreoffice/share/basic/script.xlc.noaccess + rm -f /usr/lib/libreoffice/share/basic/dialog.xlc.noaccess +fi + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/base.xcd + ucf --purge /etc/libreoffice/registry/base.xcd + ucfr --force --purge libreoffice-base /etc/libreoffice/registry/base.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/base.xcd ]; then + rm -f /etc/libreoffice/registry/base.xcd + ucf --purge /etc/libreoffice/registry/base.xcd + ucfr --force --purge libreoffice-base /etc/libreoffice/registry/base.xcd +fi + +#DEBHELPER# + +exit 0 diff --git a/debian/libreoffice-calc-nogui.lintian-overrides b/debian/libreoffice-calc-nogui.lintian-overrides new file mode 100644 index 00000000000..630bb42ecd4 --- /dev/null +++ b/debian/libreoffice-calc-nogui.lintian-overrides @@ -0,0 +1 @@ +libreoffice-calc-nogui: binary-or-shlib-defines-rpath diff --git a/debian/libreoffice-calc-nogui.mime b/debian/libreoffice-calc-nogui.mime new file mode 100644 index 00000000000..d306e622514 --- /dev/null +++ b/debian/libreoffice-calc-nogui.mime @@ -0,0 +1,37 @@ +### +# shared-mime-info + +# Generic +text/csv; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="CSV Document"; nametemplate=%s.csv; priority=3 +text/spreadsheet; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Spreadsheet Interchange Document"; nametemplate=%s.slk; priority=3 + +# Corel Quattro Pro +application/x-quattropro; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Quattro Pro 6 for Windows Spreadsheet"; nametemplate=%s.wb2; priority=3 + +# dBase dBASE +application/x-dbf; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="xBase Document"; nametemplate=%s.dbf; priority=3 + +# ECMA Office Open XML (Microsoft Office 2007) +application/vnd.ms-excel.sheet.macroEnabled.12; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet with Macros Enabled"; nametemplate=%s.xlsm; priority=3 +application/vnd.ms-excel.template.macroEnabled.12; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet Template with Macros Enabled"; nametemplate=%s.xltm; priority=3 +application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet"; nametemplate=%s.xlsx; priority=3 +application/vnd.openxmlformats-officedocument.spreadsheetml.template; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet Template"; nametemplate=%s.xltx; priority=3 + +# IBM Lotus 1-2-3 +application/vnd.lotus-1-2-3; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Lotus 1-2-3 spreadsheet"; nametemplate=%s.123; priority=3 + +# Microsoft Excel +application/vnd.ms-excel; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Microsoft Excel Document"; nametemplate=%s.xls; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.chart; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; print=soffice --nologo --calc -p %s; test=test -n "$DISPLAY"; description="OpenDocument Chart"; nametemplate=%s.odc; priority=9 +application/vnd.oasis.opendocument.spreadsheet; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; print=soffice --nologo --calc -p %s; test=test -n "$DISPLAY"; description="OpenDocument Spreadsheet"; nametemplate=%s.ods; priority=9 +application/vnd.oasis.opendocument.spreadsheet-template; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; print=soffice --nologo --calc -p %s; test=test -n "$DISPLAY"; description="OpenDocument Spreadsheet Template"; nametemplate=%s.ots; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.calc; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="OpenOffice.org Spreadsheet"; nametemplate=%s.sxc; priority=8 +application/vnd.sun.xml.calc.template; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="OpenOffice.org Spreadsheet Template"; nametemplate=%s.stc; priority=8 + +# +### + diff --git a/debian/libreoffice-calc-nogui.preinst.in b/debian/libreoffice-calc-nogui.preinst.in new file mode 100644 index 00000000000..93c180f2019 --- /dev/null +++ b/debian/libreoffice-calc-nogui.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/calc.xcd + ucf --purge /etc/libreoffice/registry/calc.xcd + ucfr --force --purge libreoffice-calc-nogui /etc/libreoffice/registry/calc.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/calc.xcd ]; then + rm -f /etc/libreoffice/registry/calc.xcd + ucf --purge /etc/libreoffice/registry/calc.xcd + ucfr --force --purge libreoffice-calc-nogui /etc/libreoffice/registry/calc.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-calc.bug-control b/debian/libreoffice-calc.bug-control new file mode 100644 index 00000000000..1ac405f9788 --- /dev/null +++ b/debian/libreoffice-calc.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core diff --git a/debian/libreoffice-calc.config.in b/debian/libreoffice-calc.config.in new file mode 100644 index 00000000000..1815f8e0b92 --- /dev/null +++ b/debian/libreoffice-calc.config.in @@ -0,0 +1,10 @@ +#!/bin/sh -e + +# Source debconf library. +. /usr/share/debconf/confmodule + +if [ "@DEB_HOST_ARCH@" = "riscv64" ]; then + db_input high libreoffice-calc/no_nan_passing_support_warning || true + db_go +fi + diff --git a/debian/libreoffice-calc.lintian-overrides b/debian/libreoffice-calc.lintian-overrides new file mode 100644 index 00000000000..ba31100b779 --- /dev/null +++ b/debian/libreoffice-calc.lintian-overrides @@ -0,0 +1,2 @@ +libreoffice-calc: binary-or-shlib-defines-rpath +libreoffice-calc: desktop-command-not-in-package libreoffice [usr/share/applications/libreoffice-calc.desktop] diff --git a/debian/libreoffice-calc.manpages b/debian/libreoffice-calc.manpages new file mode 100644 index 00000000000..a4b78ee3406 --- /dev/null +++ b/debian/libreoffice-calc.manpages @@ -0,0 +1,2 @@ +debian/tmp/usr/share/man/man1/localc.1.gz + diff --git a/debian/libreoffice-calc.mime b/debian/libreoffice-calc.mime new file mode 100644 index 00000000000..d306e622514 --- /dev/null +++ b/debian/libreoffice-calc.mime @@ -0,0 +1,37 @@ +### +# shared-mime-info + +# Generic +text/csv; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="CSV Document"; nametemplate=%s.csv; priority=3 +text/spreadsheet; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Spreadsheet Interchange Document"; nametemplate=%s.slk; priority=3 + +# Corel Quattro Pro +application/x-quattropro; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Quattro Pro 6 for Windows Spreadsheet"; nametemplate=%s.wb2; priority=3 + +# dBase dBASE +application/x-dbf; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="xBase Document"; nametemplate=%s.dbf; priority=3 + +# ECMA Office Open XML (Microsoft Office 2007) +application/vnd.ms-excel.sheet.macroEnabled.12; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet with Macros Enabled"; nametemplate=%s.xlsm; priority=3 +application/vnd.ms-excel.template.macroEnabled.12; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet Template with Macros Enabled"; nametemplate=%s.xltm; priority=3 +application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet"; nametemplate=%s.xlsx; priority=3 +application/vnd.openxmlformats-officedocument.spreadsheetml.template; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Office Open XML Spreadsheet Template"; nametemplate=%s.xltx; priority=3 + +# IBM Lotus 1-2-3 +application/vnd.lotus-1-2-3; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Lotus 1-2-3 spreadsheet"; nametemplate=%s.123; priority=3 + +# Microsoft Excel +application/vnd.ms-excel; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="Microsoft Excel Document"; nametemplate=%s.xls; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.chart; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; print=soffice --nologo --calc -p %s; test=test -n "$DISPLAY"; description="OpenDocument Chart"; nametemplate=%s.odc; priority=9 +application/vnd.oasis.opendocument.spreadsheet; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; print=soffice --nologo --calc -p %s; test=test -n "$DISPLAY"; description="OpenDocument Spreadsheet"; nametemplate=%s.ods; priority=9 +application/vnd.oasis.opendocument.spreadsheet-template; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; print=soffice --nologo --calc -p %s; test=test -n "$DISPLAY"; description="OpenDocument Spreadsheet Template"; nametemplate=%s.ots; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.calc; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="OpenOffice.org Spreadsheet"; nametemplate=%s.sxc; priority=8 +application/vnd.sun.xml.calc.template; soffice --nologo --calc %s; edit=soffice --nologo --calc %s; test=test -n "$DISPLAY"; description="OpenOffice.org Spreadsheet Template"; nametemplate=%s.stc; priority=8 + +# +### + diff --git a/debian/libreoffice-calc.postinst.in b/debian/libreoffice-calc.postinst.in new file mode 100644 index 00000000000..b94801b0987 --- /dev/null +++ b/debian/libreoffice-calc.postinst.in @@ -0,0 +1,11 @@ +#!/bin/sh -e + +# Source debconf library. +. /usr/share/debconf/confmodule + +if [ "@DEB_HOST_ARCH@" = "riscv64" ]; then + db_get libreoffice-calc/no_nan_passing_support_warning +fi + +#DEBHELPER# + diff --git a/debian/libreoffice-calc.preinst.in b/debian/libreoffice-calc.preinst.in new file mode 100644 index 00000000000..31ca6587484 --- /dev/null +++ b/debian/libreoffice-calc.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/calc.xcd + ucf --purge /etc/libreoffice/registry/calc.xcd + ucfr --force --purge libreoffice-calc /etc/libreoffice/registry/calc.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/calc.xcd ]; then + rm -f /etc/libreoffice/registry/calc.xcd + ucf --purge /etc/libreoffice/registry/calc.xcd + ucfr --force --purge libreoffice-calc /etc/libreoffice/registry/calc.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-calc.templates b/debian/libreoffice-calc.templates new file mode 100644 index 00000000000..f0c8daeb495 --- /dev/null +++ b/debian/libreoffice-calc.templates @@ -0,0 +1,10 @@ +Template: libreoffice-calc/no_nan_passing_support_warning +Type: note +_Description: Architecture doesn't support "NaN passing" + LibreOffice Calc relies on a feature called "NaN passing" which is optional + in the IEEE 754 standard. Your architecture (riscv64) does not support it, though. + . + This package is shipped nevertheless for use cases where this does not matter + but you should be aware that Calc can give you wrong results, especially + with =IFERROR() etc. + diff --git a/debian/libreoffice-common.docs b/debian/libreoffice-common.docs new file mode 100644 index 00000000000..e2675791300 --- /dev/null +++ b/debian/libreoffice-common.docs @@ -0,0 +1 @@ +wizards/source/access2base/access2base.html diff --git a/debian/libreoffice-common.links.in b/debian/libreoffice-common.links.in new file mode 100644 index 00000000000..d4e72dcece7 --- /dev/null +++ b/debian/libreoffice-common.links.in @@ -0,0 +1,37 @@ +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-database.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.database.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-drawing.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.drawing.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-drawing-template.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.drawing-template.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-formula.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.formula.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-master-document.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.master-document.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-presentation.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.presentation.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-presentation-template.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.presentation-template.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-spreadsheet.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.spreadsheet.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-spreadsheet-template.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.spreadsheet-template.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-text.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.text.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-text-template.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.text-template.png +usr/share/icons/hicolor/16x16/mimetypes/libreoffice-oasis-web-template.png usr/share/icons/hicolor/16x16/mimetypes/application-vnd.oasis.opendocument.web-template.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-database.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.database.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-drawing.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.drawing.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-drawing-template.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.drawing-template.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-formula.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.formula.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-master-document.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.master-document.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-presentation.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.presentation.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-presentation-template.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.presentation-template.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-spreadsheet.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.spreadsheet.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-spreadsheet-template.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.spreadsheet-template.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-text.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.text.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-text-template.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.text-template.png +usr/share/icons/hicolor/32x32/mimetypes/libreoffice-oasis-web-template.png usr/share/icons/hicolor/32x32/mimetypes/application-vnd.oasis.opendocument.web-template.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-database.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.database.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-drawing.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.drawing.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-drawing-template.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.drawing-template.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-formula.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.formula.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-master-document.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.master-document.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-presentation.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.presentation.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-presentation-template.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.presentation-template.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-spreadsheet.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.spreadsheet.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-spreadsheet-template.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.spreadsheet-template.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-text.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.text.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-text-template.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.text-template.png +usr/share/icons/hicolor/48x48/mimetypes/libreoffice-oasis-web-template.png usr/share/icons/hicolor/48x48/mimetypes/application-vnd.oasis.opendocument.web-template.png +etc/libreoffice/registry/main.xcd usr/lib/libreoffice/share/registry/main.xcd diff --git a/debian/libreoffice-common.lintian-overrides b/debian/libreoffice-common.lintian-overrides new file mode 100644 index 00000000000..efdaf3d980c --- /dev/null +++ b/debian/libreoffice-common.lintian-overrides @@ -0,0 +1,2 @@ +# this is essentially a breaks with version +libreoffice-common: breaks-without-version libreoffice-help-5.2 diff --git a/debian/libreoffice-common.maintscript b/debian/libreoffice-common.maintscript new file mode 100644 index 00000000000..6f5504712d1 --- /dev/null +++ b/debian/libreoffice-common.maintscript @@ -0,0 +1 @@ +symlink_to_dir /usr/lib/libreoffice/share/registry /etc/libreoffice/registry 4:25.2.1~rc1-3~ libreoffice-common diff --git a/debian/libreoffice-common.manpages b/debian/libreoffice-common.manpages new file mode 100644 index 00000000000..37ce2e86511 --- /dev/null +++ b/debian/libreoffice-common.manpages @@ -0,0 +1,4 @@ +debian/tmp/usr/share/man/man1/libreoffice.1.gz +debian/tmp/usr/share/man/man1/loffice.1.gz +debian/tmp/usr/share/man/man1/unopkg.1.gz +debian/tmp/usr/share/man/man1/lofromtemplate.1.gz diff --git a/debian/libreoffice-common.postinst.in b/debian/libreoffice-common.postinst.in new file mode 100644 index 00000000000..ea024a9432e --- /dev/null +++ b/debian/libreoffice-common.postinst.in @@ -0,0 +1,29 @@ +#!/bin/sh + +set -e + +#INCLUDE_SHELL_LIB# + +if [ "$1" = "triggered" ]; then + for triggername in $2; do + case "$triggername" in + # new "bundled" extensions (since 3.3) + "/@OODIR@/share/extensions") + make_lo_sync_extensions + ;; + "/@OODIR@") + # check also whether /usr/bin/loolwsd-systemplate-setup + # is +x do to not fail when it's gone but + # /var/lib/lool/systemplate is still there (loolwsd + # removed but not purged) + if [ -x /usr/bin/loolwsd-systemplate-setup -a \ + -d /var/lib/lool/systemplate ]; then + update_lool_systemplate + fi + ;; + esac + done +fi + +#DEBHELPER# + diff --git a/debian/libreoffice-common.postrm.in b/debian/libreoffice-common.postrm.in new file mode 100644 index 00000000000..c4471b59176 --- /dev/null +++ b/debian/libreoffice-common.postrm.in @@ -0,0 +1,26 @@ +#!/bin/sh + +set -e + +#INCLUDE_SHELL_LIB# + +case "$1" in + remove|abort-install|abort-upgrade) + rm -rf /`echo @OODIR@ | sed -e s,usr/,var/,g`/share/prereg/bundled + rmdir /`echo @OODIR@ | sed -e s,usr/,var/,g`/share/prereg/ || true + rmdir /`echo @OODIR@ | sed -e s,usr/,var/,g`/share/ || true + # this belongs to -core, but won't work until we have -common stuff removed, too, so try here again + # in adduition to -core + rmdir /`echo @OODIR@ | sed -e s,usr/,var/,g`/program/ || true + rmdir /`echo @OODIR@ | sed -e s,usr/,var/,g` || true + # and try to remove /@OOBRANDDIR@ itself + rmdir /`echo @OODIR@ | sed -e s,usr/,var/,g` || true + ;; + purge) + rm -f /`echo @OODIR@ | sed -e s,usr/,var/,g`/share/config/javasettingsunopkginstall.xml + rmdir /`echo @OODIR@ | sed -e s,usr/,var/,g`/share/config || true + rmdir /`echo @OODIR@ | sed -e s,usr/,var/,g`/share || true + ;; +esac + +#DEBHELPER# diff --git a/debian/libreoffice-common.preinst.in b/debian/libreoffice-common.preinst.in new file mode 100644 index 00000000000..03ed12bdb33 --- /dev/null +++ b/debian/libreoffice-common.preinst.in @@ -0,0 +1,24 @@ +#!/bin/sh + +set -e + +# fix up broken 0 byte file, should be a dir +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt-nl "1:7.4.1~rc1-3"; then + if [ -f /@OODIR@/share/extensions -a ! -s /@OODIR@/share/extensions ]; then + rm /@OODIR@/share/extensions + fi +fi + +#DEBHELPER# + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + for i in pdfimport.xcd xsltfilter.xcd lingucomponent.xcd Langpack-en-US.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-common /etc/libreoffice/registry/$i + done + rm -f /etc/libreoffice/registry/res/fcfg_langpack_en-US.xcd + ucf --purge /etc/libreoffice/registry/res/fcfg_langpack_en-US.xcd + ucfr --force --purge libreoffice-common /etc/libreoffice/registry/res/fcfg_langpack_en-US.xcd +fi + diff --git a/debian/libreoffice-common.triggers.in b/debian/libreoffice-common.triggers.in new file mode 100644 index 00000000000..274301752fe --- /dev/null +++ b/debian/libreoffice-common.triggers.in @@ -0,0 +1,2 @@ +interest-noawait /@OODIR@/share/extensions +interest-noawait /@OODIR@ diff --git a/debian/libreoffice-common.ucf b/debian/libreoffice-common.ucf new file mode 100644 index 00000000000..a471beaf32d --- /dev/null +++ b/debian/libreoffice-common.ucf @@ -0,0 +1 @@ +/usr/lib/libreoffice/share/.registry/main.xcd /etc/libreoffice/registry/main.xcd diff --git a/debian/libreoffice-core-nogui.bug-control b/debian/libreoffice-core-nogui.bug-control new file mode 100644 index 00000000000..7dc225723b8 --- /dev/null +++ b/debian/libreoffice-core-nogui.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-common libreoffice-java-common fonts-opensymbol ure-java diff --git a/debian/libreoffice-core-nogui.bug-script.in b/debian/libreoffice-core-nogui.bug-script.in new file mode 100755 index 00000000000..bba16b11cfc --- /dev/null +++ b/debian/libreoffice-core-nogui.bug-script.in @@ -0,0 +1,16 @@ +#!/bin/sh + +# list all installed extensions. --bundled, --shared and non-shared +/usr/lib/libreoffice/program/unopkg list --bundled >&3 +/usr/lib/libreoffice/program/unopkg list --shared >&3 +/usr/lib/libreoffice/program/unopkg list >&3 + +# experimental stuff enabled? +echo "" >&3 +echo "Experimental features enabled:" >&3 +#_lo_profile_ver=`echo @OOVER@ | cut -d. -f1` +_lo_profile_ver=4 +if [ -d "$HOME/.config/libreoffice/$_lo_profile_ver" ]; then + grep ExperimentalMode $HOME/.config/libreoffice/$_lo_profile_ver/user/registrymodifications.xcu >&3 +fi + diff --git a/debian/libreoffice-core.NEWS b/debian/libreoffice-core.NEWS new file mode 100644 index 00000000000..56dca91df07 --- /dev/null +++ b/debian/libreoffice-core.NEWS @@ -0,0 +1,13 @@ +libreoffice (1:7.4.2~rc1-1) unstable; urgency=low + + * LibreOffice 7.4.0/7.4.1 contained a bug about wrongly remembering the + size of the LibreOffice windows. (Most prominently showing inside KDE). + . + This has been fixed in 7.4.2 but you experience this problem even after + a second start of the new LibreOffice you might either need to reset your + user profile or remove the affecting keys from it manuallly + (ooSetupFactoryWindowAttributes in + ~/.config/libreofficei/4/user/registrymodifications.xcu) + + -- Rene Engelhard Wed, 09 Nov 2022 07:31:23 +0200 + diff --git a/debian/libreoffice-core.bug-control b/debian/libreoffice-core.bug-control new file mode 100644 index 00000000000..389aa4122b7 --- /dev/null +++ b/debian/libreoffice-core.bug-control @@ -0,0 +1,2 @@ +report-with: ure-java libreoffice-common libreoffice-java-common fonts-opensymbol +package-status: libxrender1 libxinerama1 libsane iceweasel firefox icedove iceape-browser pstoedit imagemagick fglrx-driver nvidia-glx nvidia-glx-legacy diff --git a/debian/libreoffice-core.bug-script.in b/debian/libreoffice-core.bug-script.in new file mode 100755 index 00000000000..3ba60de164f --- /dev/null +++ b/debian/libreoffice-core.bug-script.in @@ -0,0 +1,20 @@ +#!/bin/sh + +# list all installed extensions. --bundled, --shared and non-shared +/usr/lib/libreoffice/program/unopkg list --bundled >&3 +/usr/lib/libreoffice/program/unopkg list --shared >&3 +/usr/lib/libreoffice/program/unopkg list >&3 + +# experimental stuff enabled? +echo "" >&3 +echo "Experimental features enabled:" >&3 +#_lo_profile_ver=`echo @OOVER@ | cut -d. -f1` +_lo_profile_ver=4 +if [ -d "$HOME/.config/libreoffice/$_lo_profile_ver" ]; then + grep ExperimentalMode $HOME/.config/libreoffice/$_lo_profile_ver/user/registrymodifications.xcu >&3 +fi + +# installed VCLplugs +echo "" >&3 +echo "Installed VCLplugs:" >&3 +dpkg -l libreoffice-gtk3 libreoffice-gtk4 libreoffice-qt5 libreoffice-kf5 libreoffice-qt6 libreoffice-kf6 >&3 diff --git a/debian/libreoffice-core.postrm.in b/debian/libreoffice-core.postrm.in new file mode 100755 index 00000000000..95ed9cb4f46 --- /dev/null +++ b/debian/libreoffice-core.postrm.in @@ -0,0 +1,13 @@ +#!/bin/sh + +set -e + +#INCLUDE_SHELL_LIB# + +if [ "$1" = "remove" ]; then + rm -rf /var/spool/libreoffice +fi + +#DEBHELPER# + +exit 0 diff --git a/debian/libreoffice-dev-doc.links b/debian/libreoffice-dev-doc.links new file mode 100644 index 00000000000..7e6fd17fba7 --- /dev/null +++ b/debian/libreoffice-dev-doc.links @@ -0,0 +1 @@ +usr/share/doc/libreoffice/sdk/docs usr/share/doc/libreoffice-dev-doc/api diff --git a/debian/libreoffice-draw-nogui.bug-control b/debian/libreoffice-draw-nogui.bug-control new file mode 100644 index 00000000000..f7a2b996bb0 --- /dev/null +++ b/debian/libreoffice-draw-nogui.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core libreoffice-core-nogui diff --git a/debian/libreoffice-draw-nogui.mime b/debian/libreoffice-draw-nogui.mime new file mode 100644 index 00000000000..e0b81d3bfb4 --- /dev/null +++ b/debian/libreoffice-draw-nogui.mime @@ -0,0 +1,13 @@ +### +# shared-mime-info + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.graphics; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; print=soffice --nologo --draw -p %s; test=test -n "$DISPLAY"; description="OpenDocument Drawing"; nametemplate=%s.odg; priority=9 +application/vnd.oasis.opendocument.graphics-template; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; print=soffice --nologo --draw -p %s; test=test -n "$DISPLAY"; description="OpenDocument Drawing Template"; nametemplate=%s.otg; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.draw; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; test=test -n "$DISPLAY"; description="OpenOffice.org Drawing"; nametemplate=%s.sxd; priority=8 +application/vnd.sun.xml.draw.template; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; test=test -n "$DISPLAY"; description="OpenOffice.org Drawing Template"; nametemplate=%s.std; priority=8 + +# +### diff --git a/debian/libreoffice-draw-nogui.preinst.in b/debian/libreoffice-draw-nogui.preinst.in new file mode 100644 index 00000000000..ec4a6f490db --- /dev/null +++ b/debian/libreoffice-draw-nogui.preinst.in @@ -0,0 +1,19 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + for i in draw.xcd graphicfilter.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-draw-nogui /etc/libreoffice/registry/$i + done +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/draw.xcd ]; then + for i in draw.xcd graphicfilter.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-draw-nogui /etc/libreoffice/registry/$i + done +fi + +#DEBHELPER# diff --git a/debian/libreoffice-draw.bug-control b/debian/libreoffice-draw.bug-control new file mode 100644 index 00000000000..1ac405f9788 --- /dev/null +++ b/debian/libreoffice-draw.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core diff --git a/debian/libreoffice-draw.lintian-overrides b/debian/libreoffice-draw.lintian-overrides new file mode 100644 index 00000000000..6e0f4c22b60 --- /dev/null +++ b/debian/libreoffice-draw.lintian-overrides @@ -0,0 +1 @@ +libreoffice-draw: desktop-command-not-in-package libreoffice [usr/share/applications/libreoffice-draw.desktop] diff --git a/debian/libreoffice-draw.manpages b/debian/libreoffice-draw.manpages new file mode 100644 index 00000000000..3267e53d6e2 --- /dev/null +++ b/debian/libreoffice-draw.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/man/man1/lodraw.1.gz diff --git a/debian/libreoffice-draw.mime b/debian/libreoffice-draw.mime new file mode 100644 index 00000000000..e0b81d3bfb4 --- /dev/null +++ b/debian/libreoffice-draw.mime @@ -0,0 +1,13 @@ +### +# shared-mime-info + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.graphics; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; print=soffice --nologo --draw -p %s; test=test -n "$DISPLAY"; description="OpenDocument Drawing"; nametemplate=%s.odg; priority=9 +application/vnd.oasis.opendocument.graphics-template; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; print=soffice --nologo --draw -p %s; test=test -n "$DISPLAY"; description="OpenDocument Drawing Template"; nametemplate=%s.otg; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.draw; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; test=test -n "$DISPLAY"; description="OpenOffice.org Drawing"; nametemplate=%s.sxd; priority=8 +application/vnd.sun.xml.draw.template; soffice --nologo --draw %s; edit=soffice --nologo --draw %s; test=test -n "$DISPLAY"; description="OpenOffice.org Drawing Template"; nametemplate=%s.std; priority=8 + +# +### diff --git a/debian/libreoffice-draw.preinst.in b/debian/libreoffice-draw.preinst.in new file mode 100644 index 00000000000..da5a4b907b0 --- /dev/null +++ b/debian/libreoffice-draw.preinst.in @@ -0,0 +1,19 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + for i in draw.xcd graphicfilter.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-draw /etc/libreoffice/registry/$i + done +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/draw.xcd ]; then + for i in draw.xcd graphicfilter.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-draw /etc/libreoffice/registry/$i + done +fi + +#DEBHELPER# diff --git a/debian/libreoffice-evolution.bug-control b/debian/libreoffice-evolution.bug-control new file mode 100644 index 00000000000..aa427dea40d --- /dev/null +++ b/debian/libreoffice-evolution.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core evolution libreoffice-base diff --git a/debian/libreoffice-evolution.preinst.in b/debian/libreoffice-evolution.preinst.in new file mode 100644 index 00000000000..f9a1cfb0544 --- /dev/null +++ b/debian/libreoffice-evolution.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/evoab.xcd + ucf --purge /etc/libreoffice/registry/evoab.xcd + ucfr --force --purge libreoffice-evolution /etc/libreoffice/registry/evoab.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/evoab.xcd ]; then + rm -f /etc/libreoffice/registry/evoab.xcd + ucf --purge /etc/libreoffice/registry/evoab.xcd + ucfr --force --purge libreoffice-evolution /etc/libreoffice/registry/evoab.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-gnome.preinst.in b/debian/libreoffice-gnome.preinst.in new file mode 100644 index 00000000000..354fb705cdf --- /dev/null +++ b/debian/libreoffice-gnome.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/gnome.xcd + ucf --purge /etc/libreoffice/registry/gnome.xcd + ucfr --force --purge libreoffice-gnome /etc/libreoffice/registry/gnome.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/gnome.xcd ]; then + rm -f /etc/libreoffice/registry/gnome.xcd + ucf --purge /etc/libreoffice/registry/gnome.xcd + ucfr --force --purge libreoffice-gnome /etc/libreoffice/registry/gnome.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-help-common.links b/debian/libreoffice-help-common.links new file mode 100644 index 00000000000..83497a2b252 --- /dev/null +++ b/debian/libreoffice-help-common.links @@ -0,0 +1,3 @@ +/usr/share/javascript/normalize.css/normalize.css usr/share/libreoffice/help/normalize.css +/usr/share/nodejs/prismjs/prism.js usr/share/libreoffice/help/prism.js +/usr/share/nodejs/prismjs/themes/prism-coy.css usr/share/libreoffice/help/prism.css diff --git a/debian/libreoffice-help.lintian-overrides.in b/debian/libreoffice-help.lintian-overrides.in new file mode 100644 index 00000000000..17fde6dd126 --- /dev/null +++ b/debian/libreoffice-help.lintian-overrides.in @@ -0,0 +1,15 @@ +# these are in -help-common. See lintian bug http://bugs.debian.org/897244 +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/media/* +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/help.html +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/idxcaption.xsl +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/fuse.js +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/help.js +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/hid2file.js +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/paginathing.js +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/idxcontent.xsl +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/index.html +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/normalize.css +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/main_transform.xsl +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/help2.js +doc-base-file-references-missing-file libreoffice-help-@LCODE@:8 /usr/share/libreoffice/help/default.css + diff --git a/debian/libreoffice-impress-nogui.bug-control b/debian/libreoffice-impress-nogui.bug-control new file mode 100644 index 00000000000..285e78bf7aa --- /dev/null +++ b/debian/libreoffice-impress-nogui.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core libreoffice-core-nogui libreoffice-draw libreoffice-draw-nogui diff --git a/debian/libreoffice-impress-nogui.mime b/debian/libreoffice-impress-nogui.mime new file mode 100644 index 00000000000..ed8a11fd90b --- /dev/null +++ b/debian/libreoffice-impress-nogui.mime @@ -0,0 +1,25 @@ +### +# shared-mime-info + +# ECMA Office Open XML (Microsoft Office 2007) +application/vnd.ms-powerpoint.presentation.macroEnabled.12; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation with Macros Enabled"; nametemplate=%s.pptm; priority=3 +application/vnd.ms-powerpoint.slideshow.macroEnabled.12; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Slide Show with Macros Enabled"; nametemplate=%s.ppsm; priority=3 +application/vnd.ms-powerpoint.template.macroEnabled.12; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Template with Macros Enabled"; nametemplate=%s.potm; priority=3 +application/vnd.openxmlformats-officedocument.presentationml.presentation; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation"; nametemplate=%s.pptx; priority=3 +application/vnd.openxmlformats-officedocument.presentationml.slideshow; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Slide Show"; nametemplate=%s.ppsx; priority=3 +application/vnd.openxmlformats-officedocument.presentationml.template; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Template"; nametemplate=%s.potx; priority=3 + +# Microsoft PowerPoint +application/vnd.ms-powerpoint; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Microsoft PowerPoint Document"; nametemplate=%s.ppt; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.presentation; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; print=soffice --nologo --impress -p %s; test=test -n "$DISPLAY"; description="OpenDocument Presentation"; nametemplate=%s.odp; priority=9 +application/vnd.oasis.opendocument.presentation-template; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; print=soffice --nologo --impress -p %s; test=test -n "$DISPLAY"; description="OpenDocument Presentation Template"; nametemplate=%s.otp; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.impress; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="OpenOffice.org Presentation"; nametemplate=%s.sxi; priority=8 +application/vnd.sun.xml.impress.template; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="OpenOffice.org Presentation Template"; nametemplate=%s.sti; priority=8 + +# +### + diff --git a/debian/libreoffice-impress-nogui.preinst.in b/debian/libreoffice-impress-nogui.preinst.in new file mode 100644 index 00000000000..78dfdace52e --- /dev/null +++ b/debian/libreoffice-impress-nogui.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/impress.xcd + ucf --purge /etc/libreoffice/registry/impress.xcd + ucfr --force --purge libreoffice-impress-nogui /etc/libreoffice/registry/impress.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/impress.xcd ]; then + rm -f /etc/libreoffice/registry/impress.xcd + ucf --purge /etc/libreoffice/registry/impress.xcd + ucfr --force --purge libreoffice-impress-nogui /etc/libreoffice/registry/impress.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-impress.bug-control b/debian/libreoffice-impress.bug-control new file mode 100644 index 00000000000..e7775baad49 --- /dev/null +++ b/debian/libreoffice-impress.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core libreoffice-draw glx-alternative-nvidia diff --git a/debian/libreoffice-impress.bug-script.in b/debian/libreoffice-impress.bug-script.in new file mode 100644 index 00000000000..f2bd614b771 --- /dev/null +++ b/debian/libreoffice-impress.bug-script.in @@ -0,0 +1,3 @@ +#!/bin/sh + +dpkg -l | grep nvidia >&3 diff --git a/debian/libreoffice-impress.lintian-overrides b/debian/libreoffice-impress.lintian-overrides new file mode 100644 index 00000000000..c251e9069fb --- /dev/null +++ b/debian/libreoffice-impress.lintian-overrides @@ -0,0 +1 @@ +libreoffice-impress: desktop-command-not-in-package libreoffice [usr/share/applications/libreoffice-impress.desktop] diff --git a/debian/libreoffice-impress.manpages b/debian/libreoffice-impress.manpages new file mode 100644 index 00000000000..60ab514ba8f --- /dev/null +++ b/debian/libreoffice-impress.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/man/man1/loimpress.1.gz diff --git a/debian/libreoffice-impress.mime b/debian/libreoffice-impress.mime new file mode 100644 index 00000000000..ed8a11fd90b --- /dev/null +++ b/debian/libreoffice-impress.mime @@ -0,0 +1,25 @@ +### +# shared-mime-info + +# ECMA Office Open XML (Microsoft Office 2007) +application/vnd.ms-powerpoint.presentation.macroEnabled.12; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation with Macros Enabled"; nametemplate=%s.pptm; priority=3 +application/vnd.ms-powerpoint.slideshow.macroEnabled.12; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Slide Show with Macros Enabled"; nametemplate=%s.ppsm; priority=3 +application/vnd.ms-powerpoint.template.macroEnabled.12; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Template with Macros Enabled"; nametemplate=%s.potm; priority=3 +application/vnd.openxmlformats-officedocument.presentationml.presentation; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation"; nametemplate=%s.pptx; priority=3 +application/vnd.openxmlformats-officedocument.presentationml.slideshow; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Slide Show"; nametemplate=%s.ppsx; priority=3 +application/vnd.openxmlformats-officedocument.presentationml.template; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Office Open XML Presentation Template"; nametemplate=%s.potx; priority=3 + +# Microsoft PowerPoint +application/vnd.ms-powerpoint; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="Microsoft PowerPoint Document"; nametemplate=%s.ppt; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.presentation; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; print=soffice --nologo --impress -p %s; test=test -n "$DISPLAY"; description="OpenDocument Presentation"; nametemplate=%s.odp; priority=9 +application/vnd.oasis.opendocument.presentation-template; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; print=soffice --nologo --impress -p %s; test=test -n "$DISPLAY"; description="OpenDocument Presentation Template"; nametemplate=%s.otp; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.impress; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="OpenOffice.org Presentation"; nametemplate=%s.sxi; priority=8 +application/vnd.sun.xml.impress.template; soffice --nologo --impress %s; edit=soffice --nologo --impress %s; test=test -n "$DISPLAY"; description="OpenOffice.org Presentation Template"; nametemplate=%s.sti; priority=8 + +# +### + diff --git a/debian/libreoffice-impress.preinst.in b/debian/libreoffice-impress.preinst.in new file mode 100644 index 00000000000..c89dd7fd280 --- /dev/null +++ b/debian/libreoffice-impress.preinst.in @@ -0,0 +1,19 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + for i in impress.xcd ogltrans.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-impress /etc/libreoffice/registry/$i + done +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/impress.xcd ]; then + for i in impress.xcd ogltrans.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-impress /etc/libreoffice/registry/$i + done +fi + +#DEBHELPER# diff --git a/debian/libreoffice-l10n.preinst.in b/debian/libreoffice-l10n.preinst.in new file mode 100644 index 00000000000..abb26a2fec9 --- /dev/null +++ b/debian/libreoffice-l10n.preinst.in @@ -0,0 +1,38 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + for i in Langpack-@ISO@.xcd ctl_@ISO@.xcd ctlseqcheck_@ISO@.xcd cjk_@ISO@.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-l10n-@PKGISO@ /etc/libreoffice/registry/$i + done + for i in registry_@ISO@.xcd fcfg_langpack_@ISO@.xcd; do + rm -f /etc/libreoffice/registry/res/$i + ucf --purge /etc/libreoffice/registry/res/$i + ucfr --force --purge libreoffice-l10n-@PKGISO@ /etc/libreoffice/registry/res/$i + done +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/Langpack-@ISO@.xcd ]; then + for i in Langpack-@ISO@.xcd ctl_@ISO@.xcd ctlseqcheck_@ISO@.xcd cjk_@ISO@.xcd; do + rm -f /etc/libreoffice/registry/$i + ucf --purge /etc/libreoffice/registry/$i + ucfr --force --purge libreoffice-l10n-@PKGISO@ /etc/libreoffice/registry/$i + done + for i in registry_@ISO@.xcd fcfg_langpack_@ISO@.xcd; do + rm -f /etc/libreoffice/registry/res/$i + ucf --purge /etc/libreoffice/registry/res/$i + ucfr --force --purge libreoffice-l10n-@PKGISO@ /etc/libreoffice/registry/res/$i + done +fi + +# try to clean up +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1-2; then + if [ -d /etc/libreoffice/registry/res/ ]; then + rmdir --ignore-fail-on-non-empty /etc/libreoffice/registry/res + fi +elif [ "$1" = "install" ] && [ -d /etc/libreoffice/registry/res ]; then + rmdir --ignore-fail-on-non-empty /etc/libreoffice/registry/res/ +fi + +#DEBHELPER# diff --git a/debian/libreoffice-librelogo.preinst.in b/debian/libreoffice-librelogo.preinst.in new file mode 100644 index 00000000000..7b159f593bd --- /dev/null +++ b/debian/libreoffice-librelogo.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/librelogo.xcd + ucf --purge /etc/libreoffice/registry/librelogo.xcd + ucfr --force --purge libreoffice-librelogo /etc/libreoffice/registry/librelogo.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/librelogo.xcd ]; then + rm -f /etc/libreoffice/registry/librelogo.xcd + ucf --purge /etc/libreoffice/registry/librelogo.xcd + ucfr --force --purge libreoffice-librelogo /etc/libreoffice/registry/librelogo.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-math-nogui.bug-control b/debian/libreoffice-math-nogui.bug-control new file mode 100644 index 00000000000..f7a2b996bb0 --- /dev/null +++ b/debian/libreoffice-math-nogui.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core libreoffice-core-nogui diff --git a/debian/libreoffice-math-nogui.mime b/debian/libreoffice-math-nogui.mime new file mode 100644 index 00000000000..ea648287795 --- /dev/null +++ b/debian/libreoffice-math-nogui.mime @@ -0,0 +1,14 @@ +### +# shared-mime-info + +# Generic +text/mathml; soffice --nologo --math %s; edit=soffice --nologo --math %s; test=test -n "$DISPLAY"; description="MathML Formula"; nametemplate=%s.mml; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.formula; soffice --nologo --math %s; edit=soffice --nologo --math %s; print=soffice --nologo --math -p %s; test=test -n "$DISPLAY"; description="OpenDocument Formula"; nametemplate=%s.odf; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.math; soffice --nologo --math %s; edit=soffice --nologo --math %s; test=test -n "$DISPLAY"; description="OpenOffice.org Formula"; nametemplate=%s.sxm; priority=8 + +# +### diff --git a/debian/libreoffice-math-nogui.preinst.in b/debian/libreoffice-math-nogui.preinst.in new file mode 100644 index 00000000000..9d961b3906a --- /dev/null +++ b/debian/libreoffice-math-nogui.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/math.xcd + ucf --purge /etc/libreoffice/registry/math.xcd + ucfr --force --purge libreoffice-math-nogui /etc/libreoffice/registry/math.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/math.xcd ]; then + rm -f /etc/libreoffice/registry/math.xcd + ucf --purge /etc/libreoffice/registry/math.xcd + ucfr --force --purge libreoffice-math-nogui /etc/libreoffice/registry/math.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-math.bug-control b/debian/libreoffice-math.bug-control new file mode 100644 index 00000000000..1ac405f9788 --- /dev/null +++ b/debian/libreoffice-math.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core diff --git a/debian/libreoffice-math.lintian-overrides b/debian/libreoffice-math.lintian-overrides new file mode 100644 index 00000000000..4544db776dd --- /dev/null +++ b/debian/libreoffice-math.lintian-overrides @@ -0,0 +1 @@ +libreoffice-math: desktop-command-not-in-package libreoffice [usr/share/applications/libreoffice-math.desktop] diff --git a/debian/libreoffice-math.manpages b/debian/libreoffice-math.manpages new file mode 100644 index 00000000000..6798b1e6b4e --- /dev/null +++ b/debian/libreoffice-math.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/man/man1/lomath.1.gz diff --git a/debian/libreoffice-math.mime b/debian/libreoffice-math.mime new file mode 100644 index 00000000000..ea648287795 --- /dev/null +++ b/debian/libreoffice-math.mime @@ -0,0 +1,14 @@ +### +# shared-mime-info + +# Generic +text/mathml; soffice --nologo --math %s; edit=soffice --nologo --math %s; test=test -n "$DISPLAY"; description="MathML Formula"; nametemplate=%s.mml; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.formula; soffice --nologo --math %s; edit=soffice --nologo --math %s; print=soffice --nologo --math -p %s; test=test -n "$DISPLAY"; description="OpenDocument Formula"; nametemplate=%s.odf; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.math; soffice --nologo --math %s; edit=soffice --nologo --math %s; test=test -n "$DISPLAY"; description="OpenOffice.org Formula"; nametemplate=%s.sxm; priority=8 + +# +### diff --git a/debian/libreoffice-math.preinst.in b/debian/libreoffice-math.preinst.in new file mode 100644 index 00000000000..23f6b0a08d0 --- /dev/null +++ b/debian/libreoffice-math.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/math.xcd + ucf --purge /etc/libreoffice/registry/math.xcd + ucfr --force --purge libreoffice-math /etc/libreoffice/registry/math.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/math.xcd ]; then + rm -f /etc/libreoffice/registry/math.xcd + ucf --purge /etc/libreoffice/registry/math.xcd + ucfr --force --purge libreoffice-math /etc/libreoffice/registry/math.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-nlpsolver.bug-control b/debian/libreoffice-nlpsolver.bug-control new file mode 100644 index 00000000000..6af44785dda --- /dev/null +++ b/debian/libreoffice-nlpsolver.bug-control @@ -0,0 +1 @@ +report-with: ure-java diff --git a/debian/libreoffice-nlpsolver.bug-script.in b/debian/libreoffice-nlpsolver.bug-script.in new file mode 100755 index 00000000000..84085335315 --- /dev/null +++ b/debian/libreoffice-nlpsolver.bug-script.in @@ -0,0 +1,2 @@ +#!/bin/sh +/usr/lib/libreoffice/program/unopkg list --bundled com.sun.star.comp.Calc.NLPSolver >&3 diff --git a/debian/libreoffice-nlpsolver.lintian-overrides b/debian/libreoffice-nlpsolver.lintian-overrides new file mode 100644 index 00000000000..e5e19451244 --- /dev/null +++ b/debian/libreoffice-nlpsolver.lintian-overrides @@ -0,0 +1,3 @@ +libreoffice-nlpsolver: jar-not-in-usr-share [usr/lib/libreoffice/share/extensions/nlpsolver/EvolutionarySolver.jar] +libreoffice-nlpsolver: jar-not-in-usr-share [usr/lib/libreoffice/share/extensions/nlpsolver/help/*/help.jar] +libreoffice-nlpsolver: jar-not-in-usr-share [usr/lib/libreoffice/share/extensions/nlpsolver/nlpsolver.jar] diff --git a/debian/libreoffice-report-builder.bug-control b/debian/libreoffice-report-builder.bug-control new file mode 100644 index 00000000000..3aabaa3187f --- /dev/null +++ b/debian/libreoffice-report-builder.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-base libreoffice-java-common ure-java diff --git a/debian/libreoffice-report-builder.preinst.in b/debian/libreoffice-report-builder.preinst.in new file mode 100644 index 00000000000..61007f0202e --- /dev/null +++ b/debian/libreoffice-report-builder.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/reportbuilder.xcd + ucf --purge /etc/libreoffice/registry/reportbuilder.xcd + ucfr --force --purge libreoffice-report-builder /etc/libreoffice/registry/reportbuilder.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/reportbuilder.xcd ]; then + rm -f /etc/libreoffice/registry/reportbuilder.xcd + ucf --purge /etc/libreoffice/registry/reportbuilder.xcd + ucfr --force --purge libreoffice-report-builder /etc/libreoffice/registry/reportbuilder.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-script-provider-python.bug-control b/debian/libreoffice-script-provider-python.bug-control new file mode 100644 index 00000000000..38da481c1f2 --- /dev/null +++ b/debian/libreoffice-script-provider-python.bug-control @@ -0,0 +1 @@ +report-with: python-uno python3-uno diff --git a/debian/libreoffice-sdbc-firebird.NEWS b/debian/libreoffice-sdbc-firebird.NEWS new file mode 100644 index 00000000000..faee0f2cf41 --- /dev/null +++ b/debian/libreoffice-sdbc-firebird.NEWS @@ -0,0 +1,21 @@ +libreoffice (1:5.3.0~alpha1-1) experimental; urgency=low + + * LibreOffice switched from Firebird 2.5 to Firebird 3. Unfortunately + the format used by the Firebird 2.5 code (fdb - the native on-disk format) + is NOT compatible with the "new" one (the archive format). LibreOffice 5.3 + can NOT read older .odbs having .fdb embedded. + + Some future firebird version might have a way to convert itself/make LO + able to convert but until then you need to convert manually as follows: + + You need the gbak tool from firebird2.5: + https://packages.debian.org/search?searchon=contents&keywords=gbak&mode=exactfilename&suite=oldstable&arch=any + + Then execute: + unzip -d oldFirebird.odb temp; + gbak -b temp/database/firebird.fdb temp/database/firebird.fbk; + rm temp/database/firebird.fdb + zip -FSr oldFirebird.odb temp; + rm -r temp; + + -- Rene Engelhard Mon, 28 Nov 2016 10:27:15 +0200 diff --git a/debian/libreoffice-sdbc-firebird.bug-script.in b/debian/libreoffice-sdbc-firebird.bug-script.in new file mode 100644 index 00000000000..c7d794340e4 --- /dev/null +++ b/debian/libreoffice-sdbc-firebird.bug-script.in @@ -0,0 +1,10 @@ +#!/bin/sh + +# experimental stuff enabled? +echo "" >&3 +echo "Experimental features enabled:" >&3 +#_lo_profile_ver=`echo @OOVER@ | cut -d. -f1` +_lo_profile_ver=4 +if [ -d "$HOME/.config/libreoffice/$_lo_profile_ver" ]; then + grep ExperimentalMode $HOME/.config/libreoffice/$_lo_profile_ver/user/registrymodifications.xcu >&3 +fi diff --git a/debian/libreoffice-sdbc-firebird.lintian-overrides b/debian/libreoffice-sdbc-firebird.lintian-overrides new file mode 100644 index 00000000000..9f2850f6197 --- /dev/null +++ b/debian/libreoffice-sdbc-firebird.lintian-overrides @@ -0,0 +1,2 @@ +# "aged out" due to debhelpers changelog trimming (see #1021502) +libreoffice-sdbc-firebird: debian-news-entry-has-unknown-version 1:5.3.0~alpha1-1 [usr/share/doc/libreoffice-sdbc-firebird/NEWS.Debian.gz:1] diff --git a/debian/libreoffice-sdbc-firebird.preinst.in b/debian/libreoffice-sdbc-firebird.preinst.in new file mode 100644 index 00000000000..ed4278c383d --- /dev/null +++ b/debian/libreoffice-sdbc-firebird.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/firebird_sdbc.xcd + ucf --purge /etc/libreoffice/registry/firebird_sdbc.xcd + ucfr --force --purge libreoffice-sdbc-firebird /etc/libreoffice/registry/firebird_sdbc.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/firebird_sdbc.xcd ]; then + rm -f /etc/libreoffice/registry/firebird_sdbc.xcd + ucf --purge /etc/libreoffice/registry/firebird_sdbc.xcd + ucfr --force --purge libreoffice-sdbc-firebird /etc/libreoffice/registry/firebird_sdbc.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-sdbc-hsqldb.preinst.in b/debian/libreoffice-sdbc-hsqldb.preinst.in new file mode 100644 index 00000000000..7657b453bb9 --- /dev/null +++ b/debian/libreoffice-sdbc-hsqldb.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/hsqldb.xcd + ucf --purge /etc/libreoffice/registry/hsqldb.xcd + ucfr --force --purge libreoffice-sdbc-hsqldb /etc/libreoffice/registry/hsqldb.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/hsqldb.xcd ]; then + rm -f /etc/libreoffice/registry/hsqldb.xcd + ucf --purge /etc/libreoffice/registry/hsqldb.xcd + ucfr --force --purge libreoffice-sdbc-hsqldb /etc/libreoffice/registry/hsqldb.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-sdbc-mysql.preinst.in b/debian/libreoffice-sdbc-mysql.preinst.in new file mode 100644 index 00000000000..00726c2e015 --- /dev/null +++ b/debian/libreoffice-sdbc-mysql.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/mysqlc.xcd + ucf --purge /etc/libreoffice/registry/mysqlc.xcd + ucfr --force --purge libreoffice-sdbc-mysql /etc/libreoffice/registry/mysqlc.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/mysqlc.xcd ]; then + rm -f /etc/libreoffice/registry/mysqlc.xcd + ucf --purge /etc/libreoffice/registry/mysqlc.xcd + ucfr --force --purge libreoffice-sdbc-mysql /etc/libreoffice/registry/mysqlc.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-sdbc-postgresql.preinst.in b/debian/libreoffice-sdbc-postgresql.preinst.in new file mode 100644 index 00000000000..d2021aef38c --- /dev/null +++ b/debian/libreoffice-sdbc-postgresql.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/postgresql.xcd + ucf --purge /etc/libreoffice/registry/postgresql.xcd + ucfr --force --purge libreoffice-sdbc-postgresql /etc/libreoffice/registry/postgresql.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/postgresql.xcd ]; then + rm -f /etc/libreoffice/registry/postgresql.xcd + ucf --purge /etc/libreoffice/registry/postgresql.xcd + ucfr --force --purge libreoffice-sdbc-postgresql /etc/libreoffice/registry/postgresql.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-wiki-publisher.bug-control b/debian/libreoffice-wiki-publisher.bug-control new file mode 100644 index 00000000000..6af44785dda --- /dev/null +++ b/debian/libreoffice-wiki-publisher.bug-control @@ -0,0 +1 @@ +report-with: ure-java diff --git a/debian/libreoffice-wiki-publisher.bug-script.in b/debian/libreoffice-wiki-publisher.bug-script.in new file mode 100755 index 00000000000..9497e5ca079 --- /dev/null +++ b/debian/libreoffice-wiki-publisher.bug-script.in @@ -0,0 +1,2 @@ +#!/bin/sh +/usr/lib/libreoffice/program/unopkg list --bundled com.sun.wiki-publisher >&3 diff --git a/debian/libreoffice-wiki-publisher.lintian-overrides b/debian/libreoffice-wiki-publisher.lintian-overrides new file mode 100644 index 00000000000..0c205530831 --- /dev/null +++ b/debian/libreoffice-wiki-publisher.lintian-overrides @@ -0,0 +1,2 @@ +libreoffice-wiki-publisher: jar-not-in-usr-share [usr/lib/libreoffice/share/extensions/wiki-publisher/help/*/help.jar] +libreoffice-wiki-publisher: jar-not-in-usr-share [usr/lib/libreoffice/share/extensions/wiki-publisher/mediawiki.jar] diff --git a/debian/libreoffice-writer-nogui.bug-control b/debian/libreoffice-writer-nogui.bug-control new file mode 100644 index 00000000000..f7a2b996bb0 --- /dev/null +++ b/debian/libreoffice-writer-nogui.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core libreoffice-core-nogui diff --git a/debian/libreoffice-writer-nogui.mime b/debian/libreoffice-writer-nogui.mime new file mode 100644 index 00000000000..fb38a25029d --- /dev/null +++ b/debian/libreoffice-writer-nogui.mime @@ -0,0 +1,37 @@ +### +# shared-mime-info + +# Generic +application/rtf; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Rich Text Format"; nametemplate=%s.rtf; priority=3 +application/x-extension-txt; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Plain Text Document"; nametemplate=%s.txt; priority=3 +application/x-t602; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="T602 Document"; nametemplate=%s.602; priority=3 + +# Corel WordPerfect +application/vnd.wordperfect; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="WordPerfect Document"; nametemplate=%s.wp; priority=3 + +# ECMA Office Open XML (Microsoft Office 2007) +application/vnd.ms-word.document.macroEnabled.12; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document with Macros Enabled"; nametemplate=%s.docm; priority=3 +application/vnd.ms-word.template.macroEnabled.12; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document Template with Macros Enabled"; nametemplate=%s.dotm; priority=3 +application/vnd.openxmlformats-officedocument.wordprocessingml.document; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document"; nametemplate=%s.docx; priority=3 +application/vnd.openxmlformats-officedocument.wordprocessingml.template; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document Template"; nametemplate=%s.dotx; priority=3 + +# Microsoft Word +application/msword; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Microsoft Word Document"; nametemplate=%s.doc; priority=3 + +# Microsoft Works +application/vnd.ms-works; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Microsoft Works Document"; nametemplate=%s.wps; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.text; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; print=soffice --nologo --writer -p %s; test=test -n "$DISPLAY"; description="OpenDocument Text Document"; nametemplate=%s.odt; priority=9 +application/vnd.oasis.opendocument.text-master; soffice --nologo --global %s; edit=soffice --nologo --writer %s; print=soffice --nologo --writer -p %s; test=test -n "$DISPLAY"; description="OpenDocument Master Document"; nametemplate=%s.odm; priority=9 +application/vnd.oasis.opendocument.text-template; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; print=soffice --nologo --writer -p %s; test=test -n "$DISPLAY"; description="OpenDocument Text Document Template"; nametemplate=%s.ott; priority=9 +application/vnd.oasis.opendocument.text-web; soffice --nologo --web %s; edit=soffice --nologo --web %s; print=soffice --nologo --web -p %s; test=test -n "$DISPLAY"; description="OpenDocument HTML Document Template"; nametemplate=%s.oth; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.writer; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Text Document"; nametemplate=%s.sxw; priority=8 +application/vnd.sun.xml.writer.global; soffice --nologo --global %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Master Document"; nametemplate=%s.sxg; priority=8 +application/vnd.sun.xml.writer.template; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Text Document Template"; nametemplate=%s.stw; priority=8 + +# +### + diff --git a/debian/libreoffice-writer-nogui.preinst.in b/debian/libreoffice-writer-nogui.preinst.in new file mode 100644 index 00000000000..0564641967f --- /dev/null +++ b/debian/libreoffice-writer-nogui.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/writer.xcd + ucf --purge /etc/libreoffice/registry/writer.xcd + ucfr --force --purge libreoffice-writer-nogui /etc/libreoffice/registry/writer.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/writer.xcd ]; then + rm -f /etc/libreoffice/registry/writer.xcd + ucf --purge /etc/libreoffice/registry/writer.xcd + ucfr --force --purge libreoffice-writer-nogui /etc/libreoffice/registry/writer.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice-writer.bug-control b/debian/libreoffice-writer.bug-control new file mode 100644 index 00000000000..1ac405f9788 --- /dev/null +++ b/debian/libreoffice-writer.bug-control @@ -0,0 +1 @@ +report-with: libreoffice-core diff --git a/debian/libreoffice-writer.lintian-overrides b/debian/libreoffice-writer.lintian-overrides new file mode 100644 index 00000000000..df8d66097a2 --- /dev/null +++ b/debian/libreoffice-writer.lintian-overrides @@ -0,0 +1 @@ +libreoffice-writer: desktop-command-not-in-package libreoffice [usr/share/applications/libreoffice-writer.desktop] diff --git a/debian/libreoffice-writer.manpages b/debian/libreoffice-writer.manpages new file mode 100644 index 00000000000..53c4e248a63 --- /dev/null +++ b/debian/libreoffice-writer.manpages @@ -0,0 +1,3 @@ +debian/tmp/usr/share/man/man1/loweb.1.gz +debian/tmp/usr/share/man/man1/lowriter.1.gz + diff --git a/debian/libreoffice-writer.mime b/debian/libreoffice-writer.mime new file mode 100644 index 00000000000..fb38a25029d --- /dev/null +++ b/debian/libreoffice-writer.mime @@ -0,0 +1,37 @@ +### +# shared-mime-info + +# Generic +application/rtf; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Rich Text Format"; nametemplate=%s.rtf; priority=3 +application/x-extension-txt; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Plain Text Document"; nametemplate=%s.txt; priority=3 +application/x-t602; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="T602 Document"; nametemplate=%s.602; priority=3 + +# Corel WordPerfect +application/vnd.wordperfect; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="WordPerfect Document"; nametemplate=%s.wp; priority=3 + +# ECMA Office Open XML (Microsoft Office 2007) +application/vnd.ms-word.document.macroEnabled.12; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document with Macros Enabled"; nametemplate=%s.docm; priority=3 +application/vnd.ms-word.template.macroEnabled.12; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document Template with Macros Enabled"; nametemplate=%s.dotm; priority=3 +application/vnd.openxmlformats-officedocument.wordprocessingml.document; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document"; nametemplate=%s.docx; priority=3 +application/vnd.openxmlformats-officedocument.wordprocessingml.template; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Office Open XML Document Template"; nametemplate=%s.dotx; priority=3 + +# Microsoft Word +application/msword; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Microsoft Word Document"; nametemplate=%s.doc; priority=3 + +# Microsoft Works +application/vnd.ms-works; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; test=test -n "$DISPLAY"; description="Microsoft Works Document"; nametemplate=%s.wps; priority=3 + +# OASIS OpenDocument Format +application/vnd.oasis.opendocument.text; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; print=soffice --nologo --writer -p %s; test=test -n "$DISPLAY"; description="OpenDocument Text Document"; nametemplate=%s.odt; priority=9 +application/vnd.oasis.opendocument.text-master; soffice --nologo --global %s; edit=soffice --nologo --writer %s; print=soffice --nologo --writer -p %s; test=test -n "$DISPLAY"; description="OpenDocument Master Document"; nametemplate=%s.odm; priority=9 +application/vnd.oasis.opendocument.text-template; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; print=soffice --nologo --writer -p %s; test=test -n "$DISPLAY"; description="OpenDocument Text Document Template"; nametemplate=%s.ott; priority=9 +application/vnd.oasis.opendocument.text-web; soffice --nologo --web %s; edit=soffice --nologo --web %s; print=soffice --nologo --web -p %s; test=test -n "$DISPLAY"; description="OpenDocument HTML Document Template"; nametemplate=%s.oth; priority=9 + +# OpenOffice.org 1.0 +application/vnd.sun.xml.writer; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Text Document"; nametemplate=%s.sxw; priority=8 +application/vnd.sun.xml.writer.global; soffice --nologo --global %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Master Document"; nametemplate=%s.sxg; priority=8 +application/vnd.sun.xml.writer.template; soffice --nologo --writer %s; edit=soffice --nologo --writer %s; description="OpenOffice.org Text Document Template"; nametemplate=%s.stw; priority=8 + +# +### + diff --git a/debian/libreoffice-writer.preinst.in b/debian/libreoffice-writer.preinst.in new file mode 100644 index 00000000000..fd5e3504dfb --- /dev/null +++ b/debian/libreoffice-writer.preinst.in @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 4:25.2.1~rc1-3; then + rm -f /etc/libreoffice/registry/writer.xcd + ucf --purge /etc/libreoffice/registry/writer.xcd + ucfr --force --purge libreoffice-writer /etc/libreoffice/registry/writer.xcd +elif [ "$1" = "install" ] && [ -f /etc/libreoffice/registry/writer.xcd ]; then + rm -f /etc/libreoffice/registry/writer.xcd + ucf --purge /etc/libreoffice/registry/writer.xcd + ucfr --force --purge libreoffice-writer /etc/libreoffice/registry/writer.xcd +fi + +#DEBHELPER# diff --git a/debian/libreoffice.bug-control b/debian/libreoffice.bug-control new file mode 100644 index 00000000000..21ad6ad79a4 --- /dev/null +++ b/debian/libreoffice.bug-control @@ -0,0 +1,2 @@ +report-with: libreoffice-core libreoffice-writer libreoffice-calc libreoffice-base libreoffice-draw libreoffice-impress libreoffice-math + diff --git a/debian/libreofficekit-dev.docs b/debian/libreofficekit-dev.docs new file mode 100644 index 00000000000..1dbbe5dc9ee --- /dev/null +++ b/debian/libreofficekit-dev.docs @@ -0,0 +1 @@ +libreofficekit/README.md diff --git a/debian/libreofficekit-dev.links b/debian/libreofficekit-dev.links new file mode 100644 index 00000000000..7be2c38b410 --- /dev/null +++ b/debian/libreofficekit-dev.links @@ -0,0 +1 @@ +usr/include/LibreOfficeKit usr/include/libreoffice/LibreOfficeKit diff --git a/debian/libuno-cppu3t64.lintian-overrides b/debian/libuno-cppu3t64.lintian-overrides new file mode 100644 index 00000000000..ad1c6921043 --- /dev/null +++ b/debian/libuno-cppu3t64.lintian-overrides @@ -0,0 +1,2 @@ +libuno-cppu3t64: symbols-declares-dependency-on-other-package libstdc++6 (>= 4.1.1) (libuno_cppu.so.3) [symbols] +libuno-cppu3t64: package-name-doesnt-match-sonames libuno-cppu3 diff --git a/debian/libuno-cppu3t64.symbols b/debian/libuno-cppu3t64.symbols new file mode 100644 index 00000000000..c745fb96774 --- /dev/null +++ b/debian/libuno-cppu3t64.symbols @@ -0,0 +1,11 @@ +libuno_cppu.so.3 libuno-cppu3t64 #MINVER# +| libuno-cppu3t64 #MINVER#, libstdc++6 (>= 4.1.1) + (symver)UDK_3_0_0 1.4.0 + (symver)UDK_3.1 1.4.0 + (symver)UDK_3.2 1.4.0 + (symver)UDK_3.3 1.4.0 + (symver)GLIBCXX_3.4 3.6 1 + (symver)LIBO_UDK_4.4 4.4.0~alpha +# add new stuff BELOW this line +# and note that the stuff above HAS NO epoch but the +# below HAS diff --git a/debian/libuno-cppuhelpergcc3-3t64.lintian-overrides b/debian/libuno-cppuhelpergcc3-3t64.lintian-overrides new file mode 100644 index 00000000000..3e4ed0e9e9e --- /dev/null +++ b/debian/libuno-cppuhelpergcc3-3t64.lintian-overrides @@ -0,0 +1,3 @@ +libuno-cppuhelpergcc3-3t64: symbols-declares-dependency-on-other-package uno-libs-private (libuno_cppuhelpergcc3.so.3) [symbols] +libuno-cppuhelpergcc3-3t64: symbols-declares-dependency-on-other-package libstdc++6 (>= 4.1.1) (libuno_cppuhelpergcc3.so.3) [symbols] +libuno-cppuhelpergcc3-3t64: package-name-doesnt-match-sonames libuno-cppuhelpergcc3-3 diff --git a/debian/libuno-cppuhelpergcc3-3t64.symbols b/debian/libuno-cppuhelpergcc3-3t64.symbols new file mode 100644 index 00000000000..814f8b3f7a9 --- /dev/null +++ b/debian/libuno-cppuhelpergcc3-3t64.symbols @@ -0,0 +1,18 @@ +libuno_cppuhelpergcc3.so.3 libuno-cppuhelpergcc3-3t64 #MINVER#, uno-libs-private +| libuno-cppuhelpergcc3-3t64 #MINVER#, uno-libs-private, libstdc++6 (>= 4.1.1) + (symver)UDK_3_0_0 1.4.0 + (symver)UDK_3.1 1.4.0 + (symver)UDK_3.2 1.4.0 + (symver)UDK_3.3 1.4.0 + (symver)UDK_3.4 1.4.0 + (symver)UDK_3.5 1.4.0 + (symver)UDK_3.6 1.7.0 + (symver)UDK_3.7 3.4.0 + (symver)UDK_3.8 3.5.0~beta + (symver)GLIBCXX_3.4 3.6 1 + (symver)LIBO_UDK_3.9 4.0.0~alpha + (symver)LIBO_UDK_5.3 5.3.0~alpha +# add new stuff BELOW this line +# and note that the stuff above HAS NO epoch but the +# below HAS + (symver)LIBO_UDK_7.4 1:7.4.0~alpha diff --git a/debian/libuno-purpenvhelpergcc3-3t64.lintian-overrides b/debian/libuno-purpenvhelpergcc3-3t64.lintian-overrides new file mode 100644 index 00000000000..fca2887d132 --- /dev/null +++ b/debian/libuno-purpenvhelpergcc3-3t64.lintian-overrides @@ -0,0 +1,2 @@ +libuno-purpenvhelpergcc3-3t64: symbols-declares-dependency-on-other-package libstdc++6 (>= 4.1.1) (libuno_purpenvhelpergcc3.so.3) [symbols] +libuno-purpenvhelpergcc3-3t64: package-name-doesnt-match-sonames libuno-purpenvhelpergcc3-3 diff --git a/debian/libuno-purpenvhelpergcc3-3t64.symbols b/debian/libuno-purpenvhelpergcc3-3t64.symbols new file mode 100644 index 00000000000..75b85e93e42 --- /dev/null +++ b/debian/libuno-purpenvhelpergcc3-3t64.symbols @@ -0,0 +1,7 @@ +libuno_purpenvhelpergcc3.so.3 libuno-purpenvhelpergcc3-3t64 #MINVER# +| libuno-purpenvhelpergcc3-3t64 #MINVER#, libstdc++6 (>= 4.1.1) + (symver)UDK_3_0_0 1.4.0 + (symver)GLIBCXX_3.4 3.6 1 +# add new stuff BELOW this line +# and note that the stuff above HAS NO epoch but the +# below HAS diff --git a/debian/libuno-sal3t64.lintian-overrides b/debian/libuno-sal3t64.lintian-overrides new file mode 100644 index 00000000000..48f5f465aa9 --- /dev/null +++ b/debian/libuno-sal3t64.lintian-overrides @@ -0,0 +1,2 @@ +libuno-sal3t64: symbols-declares-dependency-on-other-package libstdc++6 (>= 4.1.1) (libuno_sal.so.3) [symbols] +libuno-sal3t64: package-name-doesnt-match-sonames libuno-sal3 diff --git a/debian/libuno-sal3t64.symbols b/debian/libuno-sal3t64.symbols new file mode 100644 index 00000000000..7e174a6f676 --- /dev/null +++ b/debian/libuno-sal3t64.symbols @@ -0,0 +1,42 @@ +libuno_sal.so.3 libuno-sal3t64 #MINVER# +| libuno-sal3t64 #MINVER#, libstdc++6 (>= 4.1.1) + (symver)UDK_3_0_0 1.4.0 + (symver)UDK_3.1 1.4.0 + (symver)UDK_3.2 1.4.0 + (symver)UDK_3.3 1.4.0 + (symver)UDK_3.4 1.4.0 + (symver)UDK_3.5 1.4.0 + (symver)UDK_3.6 1.4.0 + (symver)UDK_3.7 1.4.0 + (symver)UDK_3.8 1.4.0 + (symver)UDK_3.9 1.5.0 + (symver)UDK_3.10 1.6.0 + UDK_3.11@UDK_3.11 1.7.0+LibO3.3.0~beta3 + osl_clearEnvironment@UDK_3.11 1.7.0+LibO3.3.0~beta3 + osl_setEnvironment@UDK_3.11 1.7.0+LibO3.3.0~beta3 + (symver)UDK_3.11 1.8.0 + (symver)PRIVATE_1.0 3.3.0~ + (symver)PRIVATE_1.1 3.3.0~ + (symver)LIBO_UDK_3.5 3.5.0~beta + (symver)PRIVATE_1.2 3.5.0~beta + (symver)PRIVATE_textenc.1 3.6.0~beta + (symver)GLIBCXX_3.4 3.6 1 + (symver)LIBO_UDK_3.6 4.0.0~alpha + (symver)LIBO_UDK_4.0 4.0.0~beta + (symver)LIBO_UDK_4.1 4.1.0~alpha + (symver)LIBO_UDK_4.2 4.2.0~rc1 + (symver)LIBO_UDK_4.3 4.3.0~alpha + (symver)LIBO_UDK_5.0 5.0.0~alpha + (symver)LIBO_UDK_5.1 5.1.0~alpha + (symver)LIBO_UDK_5.2 5.2.0~alpha + (symver)LIBO_UDK_5.3 5.3.0~alpha + (symver)LIBO_UDK_6.2 6.2.0~alpha + (symver)PRIVATE_1.3 5.4.0~alpha + (symver)PRIVATE_1.4 6.0.0~alpha + (symver)PRIVATE_1.5 6.1.0~alpha + (symver)PRIVATE_1.6 6.4.0~beta +# add new stuff BELOW this line +# and note that the stuff above HAS NO epoch but the +# below HAS + (symver)PRIVATE_1.7 1:7.1.0~alpha1 + (symver)PRIVATE_1.8 1:7.3.0~beta1 diff --git a/debian/libuno-salhelpergcc3-3t64.lintian-overrides b/debian/libuno-salhelpergcc3-3t64.lintian-overrides new file mode 100644 index 00000000000..956945a7333 --- /dev/null +++ b/debian/libuno-salhelpergcc3-3t64.lintian-overrides @@ -0,0 +1,2 @@ +libuno-salhelpergcc3-3t64: symbols-declares-dependency-on-other-package libstdc++6 (>= 4.1.1) (libuno_salhelpergcc3.so.3) [symbols] +libuno-salhelpergcc3-3t64: package-name-doesnt-match-sonames libuno-salhelpergcc3-3 diff --git a/debian/libuno-salhelpergcc3-3t64.symbols b/debian/libuno-salhelpergcc3-3t64.symbols new file mode 100644 index 00000000000..f9b9bacff3e --- /dev/null +++ b/debian/libuno-salhelpergcc3-3t64.symbols @@ -0,0 +1,9 @@ +libuno_salhelpergcc3.so.3 libuno-salhelpergcc3-3t64 #MINVER# +| libuno-salhelpergcc3-3t64 #MINVER#, libstdc++6 (>= 4.1.1) + (symver)UDK_3_0_0 1.4.0 + (symver)UDK_3.1 1.4.0 + (symver)LIBO_UDK_3.6 3.6.0~beta + (symver)GLIBCXX_3.4 3.6 1 +# add new stuff BELOW this line +# and note that the stuff above HAS NO epoch but the +# below HAS diff --git a/debian/libunoloader-java.poms b/debian/libunoloader-java.poms new file mode 100644 index 00000000000..e89019b4b1f --- /dev/null +++ b/debian/libunoloader-java.poms @@ -0,0 +1,28 @@ +# List of POM files for the package +# Format of this file is: +# [option]* +# where option can be: +# --ignore: ignore this POM and its artifact if any +# --ignore-pom: don't install the POM. To use on POM files that are created +# temporarily for certain artifacts such as Javadoc jars. [mh_install, mh_installpoms] +# --no-parent: remove the tag from the POM +# --package=: an alternative package to use when installing this POM +# and its artifact +# --has-package-version: to indicate that the original version of the POM is the same as the upstream part +# of the version for the package. +# --keep-elements=: a list of XML elements to keep in the POM +# during a clean operation with mh_cleanpom or mh_installpom +# --artifact=: path to the build artifact associated with this POM, +# it will be installed when using the command mh_install. [mh_install] +# --java-lib: install the jar into /usr/share/java to comply with Debian +# packaging guidelines +# --usj-name=: name to use when installing the library in /usr/share/java +# --usj-version=: version to use when installing the library in /usr/share/java +# --no-usj-versionless: don't install the versionless link in /usr/share/java +# --dest-jar=: the destination for the real jar. +# It will be installed with mh_install. [mh_install] +# --classifier=: Optional, the classifier for the jar. Empty by default. +# --site-xml=: Optional, the location for site.xml if it needs to be installed. +# Empty by default. [mh_install] +# +debian/pom.unoloader.xml --no-parent --has-package-version diff --git a/debian/patches/adapt-for-new-carlito.diff b/debian/patches/adapt-for-new-carlito.diff new file mode 100644 index 00000000000..7bf59391939 --- /dev/null +++ b/debian/patches/adapt-for-new-carlito.diff @@ -0,0 +1,74 @@ +diff --git a/sw/qa/extras/layout/layout3.cxx b/sw/qa/extras/layout/layout3.cxx +index 7f62a3a9d6b8..ec1567a564dc 100644 +--- a/sw/qa/extras/layout/layout3.cxx ++++ b/sw/qa/extras/layout/layout3.cxx +@@ -1043,7 +1043,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, testBtlrCell) + // Without the accompanying fix in place, this test would have failed with 'Expected: 1915; + // Actual : 1756', i.e. the AAA1 text was too close to the left cell border due to an ascent vs + // descent mismatch when calculating the baseline offset of the text portion. +- assertXPath(pXmlDoc, "//textarray[1]", "x", u"1915"); ++ assertXPath(pXmlDoc, "//textarray[1]", "x", u"1911"); + assertXPath(pXmlDoc, "//textarray[1]", "y", u"2707"); + + // Without the accompanying fix in place, this test would have failed with 'Expected: 1979; +diff --git a/sd/qa/unit/import-tests-smartart.cxx b/sd/qa/unit/import-tests-smartart.cxx +index 0a519c117b52..e4b504dcddbd 100644 +--- a/sd/qa/unit/import-tests-smartart.cxx ++++ b/sd/qa/unit/import-tests-smartart.cxx +@@ -1541,7 +1541,7 @@ CPPUNIT_TEST_FIXTURE(SdImportTestSmartArt, testAutofitSync) + // - Actual : 100 + // i.e. the left shape had no scale-down and the right shape was scaled down, even if it was + // requested that their scaling matches. +- CPPUNIT_ASSERT_EQUAL(fSecondScale, fFirstScale); ++//FIXME CPPUNIT_ASSERT_EQUAL(fSecondScale, fFirstScale); + + // Without the accompanying fix in place, this test would have failed with: + // - Expected: 0 (drawing::TextFitToSizeType_NONE) +diff --git a/chart2/qa/extras/chart2import.cxx b/chart2/qa/extras/chart2import.cxx +index c15fda2c3b1c..031ac8a62414 100644 +--- a/chart2/qa/extras/chart2import.cxx ++++ b/chart2/qa/extras/chart2import.cxx +@@ -2056,8 +2056,8 @@ CPPUNIT_TEST_FIXTURE(Chart2ImportTest, testTdf146756) + xmlDocUniquePtr pXmlDoc(xmlParseDoc(reinterpret_cast(aXmlDump.getStr()))); + OString aPath("//XShape[@text='New service request and approval; 18%']"_ostr); + assertXPath(pXmlDoc, aPath, 1); +- // Expected something like 4 lines tall(1697), not 11 lines(3817). +- assertXPath(pXmlDoc, aPath, "sizeY", u"1697"); ++ // Expected something like 4 lines tall(2013), not 11 lines(3817). ++ assertXPath(pXmlDoc, aPath, "sizeY", u"2013"); + // Expected some reasonable maximum text length for the label like 2350, not 881. + sal_Int32 nTextLength = getXPath(pXmlDoc, aPath, "textMaximumFrameWidth").toInt32(); + CPPUNIT_ASSERT_EQUAL(sal_Int32(2350), nTextLength); +diff --git a/chart2/qa/extras/chart2import2.cxx b/chart2/qa/extras/chart2import2.cxx +index dc9a2cddae46..c2bf4f67d986 100644 +--- a/chart2/qa/extras/chart2import2.cxx ++++ b/chart2/qa/extras/chart2import2.cxx +@@ -513,8 +513,8 @@ CPPUNIT_TEST_FIXTURE(Chart2ImportTest2, testTdf133376) + CPPUNIT_ASSERT(xDataPointLabel.is()); + // Check the position of the 3rd data point label, which is out from the pie slice + awt::Point aLabelPosition = xDataPointLabel->getPosition(); +- CPPUNIT_ASSERT_DOUBLES_EQUAL(1624, aLabelPosition.X, 30); +- CPPUNIT_ASSERT_DOUBLES_EQUAL(5635, aLabelPosition.Y, 30); ++ CPPUNIT_ASSERT_DOUBLES_EQUAL(1795, aLabelPosition.X, 30); ++ CPPUNIT_ASSERT_DOUBLES_EQUAL(5569, aLabelPosition.Y, 30); + } + + CPPUNIT_TEST_FIXTURE(Chart2ImportTest2, testTdf134225) +@@ -592,7 +592,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ImportTest2, testTdf136105) + CPPUNIT_ASSERT(xDataPointLabel.is()); + // Check the position of the 1st data point label, which is out from the pie slice + awt::Point aLabelPosition = xDataPointLabel->getPosition(); +- CPPUNIT_ASSERT_DOUBLES_EQUAL(7978, aLabelPosition.X, 500); ++ CPPUNIT_ASSERT_DOUBLES_EQUAL(7457, aLabelPosition.X, 500); + CPPUNIT_ASSERT_DOUBLES_EQUAL(1550, aLabelPosition.Y, 500); + } + } +@@ -653,7 +653,7 @@ CPPUNIT_TEST_FIXTURE(Chart2ImportTest2, testTdf136752) + // Check the position of the 1st data point label, which is out from the pie slice + awt::Point aLabelPosition = xDataPointLabel->getPosition(); + CPPUNIT_ASSERT_DOUBLES_EQUAL(8675, aLabelPosition.X, 500); +- CPPUNIT_ASSERT_DOUBLES_EQUAL(1458, aLabelPosition.Y, 500); ++ CPPUNIT_ASSERT_DOUBLES_EQUAL(952, aLabelPosition.Y, 500); + } + + CPPUNIT_TEST_FIXTURE(Chart2ImportTest2, testTdf137505) diff --git a/debian/patches/add-access2base-doc.diff b/debian/patches/add-access2base-doc.diff new file mode 100644 index 0000000000000000000000000000000000000000..d546e93929d39d058509cb50f3197ba769abf97b GIT binary patch literal 1274762 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%0Dx}~UFJ`OfGaXFF9Vs{qq7K8H@&8c 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
    -}d2WE>ui-7Mhl16D;vd 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

    yHEvYZ6%J#k^xM%2ZDJ2* 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 +Date: Sat, 4 Aug 2018 17:40:05 +0300 +Subject: [PATCH] apparmor: use dri-enumerate abstraction + +Remove backported rule and use new dri-enumerate abstraction instead. +dri-enumerate is available in AppArmor 2.13, which recently migrated +into Debian Buster. + +Change-Id: I64919edc1882f7bc1e65cfb94686464c5350f699 +--- + sysui/desktop/apparmor/program.soffice.bin | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sysui/desktop/apparmor/program.soffice.bin b/sysui/desktop/apparmor/program.soffice.bin +index 2fc7fd6b5735..33ad6f933ef6 100644 +--- a/sysui/desktop/apparmor/program.soffice.bin ++++ b/sysui/desktop/apparmor/program.soffice.bin +@@ -82,6 +82,7 @@ profile libreoffice-soffice INSTDIR-program/soffice.bin { + #include + #include + #include ++ #include + #include + #include + #include +@@ -179,7 +179,6 @@ profile libreoffice-soffice INSTDIR-program/soffice.bin { + #Likely moving to abstractions in the future + owner @{HOME}/.icons/*/cursors/* r, + /etc/fstab r, # Solid::DeviceNotifier::instance() TODO: deny? +- /sys/devices/pci[0-9]*/**/{device,subsystem_device,subsystem_vendor,uevent,vendor} r, # for libdrm + /usr/share/*-fonts/conf.avail/*.conf r, + /usr/share/fonts-config/conf.avail/*.conf r, + /{,var/}run/udev/data/+usb:* r, # Solid::Device::listFromQuery() + diff --git a/debian/patches/apparmor-complain.diff b/debian/patches/apparmor-complain.diff new file mode 100644 index 00000000000..99a2189cf01 --- /dev/null +++ b/debian/patches/apparmor-complain.diff @@ -0,0 +1,26 @@ +diff --git a/sysui/desktop/apparmor/program.oosplash b/sysui/desktop/apparmor/program.oosplash +index fef54b7ee384..9dde31a63615 100644 +--- a/sysui/desktop/apparmor/program.oosplash ++++ b/sysui/desktop/apparmor/program.oosplash +@@ -12,7 +12,7 @@ + + #include + +-profile libreoffice-oosplash INSTDIR-program/oosplash { ++profile libreoffice-oosplash INSTDIR-program/oosplash flags=(complain) { + #include + #include + +diff --git a/sysui/desktop/apparmor/program.soffice.bin b/sysui/desktop/apparmor/program.soffice.bin +index b4baeab8f5ee..7861c9eac9bd 100644 +--- a/sysui/desktop/apparmor/program.soffice.bin ++++ b/sysui/desktop/apparmor/program.soffice.bin +@@ -60,7 +60,7 @@ + + #include + +-profile libreoffice-soffice INSTDIR-program/soffice.bin { ++profile libreoffice-soffice INSTDIR-program/soffice.bin flags=(complain) { + #include + + #include diff --git a/debian/patches/apparmor-gnupg-tofu.diff b/debian/patches/apparmor-gnupg-tofu.diff new file mode 100644 index 00000000000..a2ee52f4048 --- /dev/null +++ b/debian/patches/apparmor-gnupg-tofu.diff @@ -0,0 +1,28 @@ +From: Benjamin Barenblat +Subject: Support tofu+pgp trust model in GnuPG +Bug-Debian: https://bugs.debian.org/955271 +Forwarded: no + +GnuPG supports a trust-on-first-use layer that sits on top of the +standard PGP trust model. If this is enabled, 'gpg --list-keys' needs +write and lock permissions on the TOFU database to return any useful +data. Allow this access through AppArmor. + +--- libreoffice-7.1.2.2/sysui/desktop/apparmor/program.soffice.bin ++++ libreoffice-7.1.2.2/sysui/desktop/apparmor/program.soffice.bin +@@ -2,6 +2,7 @@ + # + # Copyright (C) 2016 Canonical Ltd. + # Copyright (C) 2018 Software in the Public Interest, Inc. ++# Copyright (C) 2021 Google LLC + # + # This Source Code Form is subject to the terms of the Mozilla Public + # License, v. 2.0. If a copy of the MPL was not distributed with this +@@ -215,6 +216,7 @@ profile gpg { + + owner @{HOME}/.gnupg/* r, + owner @{HOME}/.gnupg/random_seed rk, ++ owner @{HOME}/.gnupg/tofu.db rwk, + } + + # probably should become a subprofile like gpg above, but then it doesn't diff --git a/debian/patches/apparmor-mesa.diff b/debian/patches/apparmor-mesa.diff new file mode 100644 index 00000000000..dd6dd20a633 --- /dev/null +++ b/debian/patches/apparmor-mesa.diff @@ -0,0 +1,10 @@ +--- a/sysui/desktop/apparmor/program.soffice.bin-old 2018-11-09 23:04:59.858704214 +0100 ++++ b/sysui/desktop/apparmor/program.soffice.bin 2018-11-09 23:05:28.050949237 +0100 +@@ -87,6 +87,7 @@ + #include + #include + #include ++ #include + #include + #include + #include diff --git a/debian/patches/apparmor-opencl.diff b/debian/patches/apparmor-opencl.diff new file mode 100644 index 00000000000..462f376bca1 --- /dev/null +++ b/debian/patches/apparmor-opencl.diff @@ -0,0 +1,20 @@ +apparmor: Add opencl support + +AppArmor in Debian Buster now has OpenCL abstractions. + +Include OpenCL abstractions to fix OpenCL usage in Calc. +Index: libreoffice-6.1.4/sysui/desktop/apparmor/program.soffice.bin +=================================================================== +--- libreoffice-6.1.4.orig/sysui/desktop/apparmor/program.soffice.bin 2019-01-14 19:29:25.000000000 +0200 ++++ libreoffice-6.1.4/sysui/desktop/apparmor/program.soffice.bin 2019-01-16 18:43:17.051781559 +0200 +@@ -98,6 +98,10 @@ + + #include + ++ #include ++ #include ++ #include ++ + #List directories for file browser + / r, + /**/ r, diff --git a/debian/patches/apparmor-updates.diff b/debian/patches/apparmor-updates.diff new file mode 100644 index 00000000000..54091ec2434 --- /dev/null +++ b/debian/patches/apparmor-updates.diff @@ -0,0 +1,21 @@ +diff --git a/sysui/desktop/apparmor/program.soffice.bin b/sysui/desktop/apparmor/program.soffice.bin +index 42053db2abef..bf48bdb1e44d 100644 +--- a/sysui/desktop/apparmor/program.soffice.bin ++++ b/sysui/desktop/apparmor/program.soffice.bin +@@ -101,7 +101,7 @@ profile libreoffice-soffice INSTDIR-program/soffice.bin { + owner @{libo_user_dirs}/**/ rw, #allow creating directories that we own + owner @{libo_user_dirs}/**~lock.* rw, #lock file support + owner @{libo_user_dirs}/**.@{libreoffice_ext} rwk, #Open files rw with the right exts +- owner @{libo_user_dirs}/{,**/}lu??????????{,?}.tmp rwk, #Temporary file used when saving ++ owner @{libo_user_dirs}/{,**/}lu???????{,?,??,???,????,?????}.tmp rwk, #Temporary file used when saving + owner @{libo_user_dirs}/{,**/}.directory r, #Read directory settings on KDE + + # Settings +@@ -110,6 +110,7 @@ profile libreoffice-soffice INSTDIR-program/soffice.bin { + + /etc/cups/ppd/*.ppd r, + /etc/xml/catalog r, #exporting to .xhtml, for libxml2 ++ /etc/paperspecs r, # used by paperconf + /proc/*/status r, + + owner @{HOME}/.config/libreoffice{,dev}/** rwk, diff --git a/debian/patches/appstream-ignore-startcenter.diff b/debian/patches/appstream-ignore-startcenter.diff new file mode 100644 index 00000000000..d61aa87c713 --- /dev/null +++ b/debian/patches/appstream-ignore-startcenter.diff @@ -0,0 +1,10 @@ +--- a/sysui/desktop/menus/startcenter.desktop ++++ b/sysui/desktop/menus/startcenter.desktop +@@ -31,6 +31,7 @@ StartupNotify=true + X-GIO-NoFuse=true + StartupWMClass=libreoffice-startcenter + X-KDE-Protocols=file,http,webdav,webdavs ++X-AppStream-Ignore=True + + ##Define Actions + Actions=Writer;Calc;Impress;Draw;Base;Math; diff --git a/debian/patches/arm-fp-mode.diff b/debian/patches/arm-fp-mode.diff new file mode 100644 index 00000000000..3047188f56e --- /dev/null +++ b/debian/patches/arm-fp-mode.diff @@ -0,0 +1,15 @@ +Description: Explicitly set fpu mode on armhf +Author: Rico Tzschichholz + +diff --git a/bridges/source/cpp_uno/gcc3_linux_arm/armhelper.S b/bridges/source/cpp_uno/gcc3_linux_arm/armhelper.S +index 4eff3ff0a012..7996b9c5b3f0 100644 +--- a/bridges/source/cpp_uno/gcc3_linux_arm/armhelper.S ++++ b/bridges/source/cpp_uno/gcc3_linux_arm/armhelper.S +@@ -51,6 +51,7 @@ privateSnippetExecutor: + mov r0, ip @ r0 points to functionoffset/vtable + mov r1, sp @ r1 points to this and params + #ifdef __ARM_PCS_VFP ++ .fpu vfpv2 + vpush {d0-d7} @ floating point parameter on stack + #endif + UNWIND .pad #PAD @ throw this data away on exception diff --git a/debian/patches/build-against-shared-lpsolve.diff b/debian/patches/build-against-shared-lpsolve.diff new file mode 100644 index 00000000000..ddd80de1aaa --- /dev/null +++ b/debian/patches/build-against-shared-lpsolve.diff @@ -0,0 +1,27 @@ +diff --git a/configure.ac b/configure.ac +index cdae8b5..49f3ba2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -9468,8 +9468,9 @@ if test "$with_system_lpsolve" = "yes"; then + # some systems need this. Like Ubuntu... + AC_CHECK_LIB(m, floor) + AC_CHECK_LIB(dl, dlopen) ++ AC_CHECK_LIB(colamd, colamd) + AC_CHECK_LIB([lpsolve55], [make_lp], [:], +- [ AC_MSG_ERROR(lpsolve library not found or too old.)], []) ++ [ AC_MSG_ERROR(lpsolve library not found or too old.)], [-L/usr/lib/lp_solve]) + LIBS=$save_LIBS + else + AC_MSG_RESULT([internal]) +diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk +index a4daea7..0dea12d 100644 +--- a/RepositoryExternal.mk ++++ b/RepositoryExternal.mk +@@ -1961,6 +1961,7 @@ ifeq ($(WITH_LPSOLVER),lpsolve) + + define gb_LinkTarget__use_lpsolve + $(call gb_LinkTarget_add_libs,$(1),-llpsolve55) ++$(call gb_LinkTarget_add_ldflags,$(1),-L/usr/lib/lp_solve -Wl$(COMMA)-rpath=/usr/lib/lp_solve) + $(call gb_LinkTarget_add_defs,$(1),\ + -DSYSTEM_LPSOLVE \ + ) diff --git a/debian/patches/cppunit-optional.diff b/debian/patches/cppunit-optional.diff new file mode 100644 index 00000000000..9f61e3e8a6e --- /dev/null +++ b/debian/patches/cppunit-optional.diff @@ -0,0 +1,213 @@ +diff --git a/configure.ac b/configure.ac +index c12fe95a561c..66d327ae8fb8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2047,6 +2047,11 @@ AC_ARG_WITH(bffvalidator, + See https://web.archive.org/web/20200804155745/https://www.microsoft.com/en-us/download/details.aspx?id=26794]), + ,with_bffvalidator=no) + ++libo_FUZZ_ARG_WITH(cppunit, ++ AS_HELP_STRING([--without-cppunit>], ++ [disable building(!) of cppunit stuff also built during make build]), ++,with_cppunit=yes) ++ + libo_FUZZ_ARG_WITH(junit, + AS_HELP_STRING([--with-junit=], + [Specifies the JUnit 4 jar file to use for JUnit-based tests. +@@ -7932,8 +7959,12 @@ dnl =================================================================== + dnl Check for system cppunit + dnl =================================================================== + if test "$_os" != "Android" ; then ++ if test "$with_cppunit" != "no"; then + libo_CHECK_SYSTEM_MODULE([cppunit],[CPPUNIT],[cppunit >= 1.14.0]) ++ ENABLE_CPPUNIT=TRUE ++ fi + fi ++AC_SUBST(ENABLE_CPPUNIT) + + dnl =================================================================== + dnl Check whether freetype is available +diff --git a/config_host.mk.in b/config_host.mk.in +index 8888355642ef..ac8a4b64967e 100644 +--- a/config_host.mk.in ++++ b/config_host.mk.in +@@ -147,6 +147,7 @@ export ENABLE_COINMP=@ENABLE_COINMP@ + SYSTEM_COINMP=@SYSTEM_COINMP@ + export COINMP_CFLAGS=@COINMP_CFLAGS@ + export COINMP_LIBS=@COINMP_LIBS@ ++export ENABLE_CPPUNIT=@ENABLE_CPPUNIT@ + export ENABLE_ATSPI_TESTS=@ENABLE_ATSPI_TESTS@ + export ENABLE_CPDB=@ENABLE_CPDB@ + export ENABLE_CUPS=@ENABLE_CUPS@ +diff --git a/sal/Module_sal.mk b/sal/Module_sal.mk +index fe9523a7a6e2..719edf8c6252 100644 +--- a/sal/Module_sal.mk ++++ b/sal/Module_sal.mk +@@ -10,7 +10,6 @@ + $(eval $(call gb_Module_Module,sal)) + + $(eval $(call gb_Module_add_targets,sal,\ +- $(if $(CROSS_COMPILING),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,Executable_cppunittester)) \ + $(if $(filter $(OS),ANDROID EMSCRIPTEN), \ + Library_lo-bootstrap) \ + Library_sal \ +@@ -33,4 +32,10 @@ $(eval $(call gb_Module_add_check_targets,sal,\ + + endif + ++ifeq ($(ENABLE_CPPUNIT),TRUE) ++$(eval $(call gb_Module_add_check_targets,sal,\ ++ $(if $(CROSS_COMPILING),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,Executable_cppunittester)) \ ++)) ++endif ++ + # vim: set noet sw=4 ts=4: +diff --git a/sdext/Executable_pdf2xml.mk b/sdext/Executable_pdf2xml.mk +index 373f40da36fd..c0401bef9c7a 100644 +--- a/sdext/Executable_pdf2xml.mk ++++ b/sdext/Executable_pdf2xml.mk +@@ -13,10 +13,10 @@ $(eval $(call gb_Executable_use_sdk_api,pdf2xml)) + + $(eval $(call gb_Executable_use_externals,pdf2xml,\ + boost_headers \ +- cppunit \ + zlib \ + )) + ++ + $(eval $(call gb_Executable_set_include,pdf2xml,\ + -I$(SRCDIR)/sdext/source/pdfimport/inc \ + $$(INCLUDE) \ +@@ -29,7 +29,6 @@ $(eval $(call gb_Executable_use_libraries,pdf2xml,\ + cppu \ + drawinglayercore \ + drawinglayer \ +- unotest \ + cppuhelper \ + sal \ + salhelper \ +@@ -38,6 +37,15 @@ $(eval $(call gb_Executable_use_libraries,pdf2xml,\ + i18nutil \ + )) + ++ifeq ($(ENABLE_CPPUNIT),TRUE) ++$(eval $(call gb_Executable_use_externals,pdf2xml,\ ++ cppunit \ ++)) ++$(eval $(call gb_Executable_use_libraries,pdf2xml,\ ++ unotest \ ++)) ++endif ++ + $(eval $(call gb_Executable_use_library_objects,pdf2xml,pdfimport)) + + $(eval $(call gb_Executable_add_exception_objects,pdf2xml,\ +diff --git a/smoketest/Module_smoketest.mk b/smoketest/Module_smoketest.mk +index 217dbfa6543a..fa2d0d489bd7 100644 +--- a/smoketest/Module_smoketest.mk ++++ b/smoketest/Module_smoketest.mk +@@ -13,8 +13,12 @@ $(eval $(call gb_Module_Module,smoketest)) + ifeq ($(CROSS_COMPILING),) + + ifneq (,$(filter DESKTOP,$(BUILD_TYPE))) ++ifeq ($(ENABLE_CPPUNIT),TRUE) + $(eval $(call gb_Module_add_targets,smoketest,\ + Library_smoketest \ ++)) ++endif ++$(eval $(call gb_Module_add_targets,smoketest,\ + Zip_smoketestdoc \ + )) + endif +@@ -26,6 +30,7 @@ $(eval $(call gb_Module_add_targets,smoketest,\ + endif + endif + ++ifeq ($(ENABLE_CPPUNIT),TRUE) + ifneq (MACOSX/TRUE,$(OS)/$(ENABLE_MACOSX_SANDBOX)) + ifneq ($(filter EXTENSIONS,$(BUILD_TYPE)),) + $(eval $(call gb_Module_add_subsequentcheck_targets,smoketest,\ +@@ -33,6 +38,7 @@ $(eval $(call gb_Module_add_subsequentcheck_targets,smoketest,\ + )) + endif + endif ++endif + + endif + +diff --git a/test/Module_test.mk b/test/Module_test.mk +index e1051f16b5a0..d1787cb5789b 100644 +--- a/test/Module_test.mk ++++ b/test/Module_test.mk +@@ -11,6 +11,7 @@ $(eval $(call gb_Module_Module,test)) + + ifneq (,$(filter DESKTOP,$(BUILD_TYPE))) + ++ifeq ($(ENABLE_CPPUNIT),TRUE) + $(eval $(call gb_Module_add_targets,test,\ + Library_test \ + Library_test_setupvcl \ +@@ -18,6 +19,7 @@ $(eval $(call gb_Module_add_targets,test,\ + CppunitTest_test_a11y \ + CppunitTest_test_xpath \ + )) ++endif + + endif + +diff --git a/unotest/Module_unotest.mk b/unotest/Module_unotest.mk +index bdffe8e8ac14..acdd4da6c539 100644 +--- a/unotest/Module_unotest.mk ++++ b/unotest/Module_unotest.mk +@@ -12,12 +12,14 @@ $(eval $(call gb_Module_Module,unotest)) + + ifeq ($(gb_Side),host) + ifneq (,$(filter DESKTOP,$(BUILD_TYPE))) ++ifeq ($(ENABLE_CPPUNIT),TRUE) + $(eval $(call gb_Module_add_targets,unotest,\ + Library_unobootstrapprotector \ + Library_unoexceptionprotector \ + Library_unotest \ + )) + endif ++endif + + ifneq ($(ENABLE_JAVA),) + $(eval $(call gb_Module_add_targets,unotest,\ +diff --git a/testtools/Module_testtools.mk b/testtools/Module_testtools.mk +index a1b84e175b30..08e4aad24c11 100644 +--- a/testtools/Module_testtools.mk ++++ b/testtools/Module_testtools.mk +@@ -11,6 +11,8 @@ $(eval $(call gb_Module_Module,testtools)) + + ifeq ($(CROSS_COMPILING),) + ++ifeq ($(ENABLE_CPPUNIT),TRUE) ++ + $(eval $(call gb_Module_add_targets,testtools,\ + CustomTarget_bridgetest \ + InternalUnoApi_bridgetest \ +@@ -41,4 +43,6 @@ $(eval $(call gb_Module_add_check_targets,testtools,\ + + endif + ++endif ++ + # vim:set noet sw=4 ts=4: +diff --git a/Repository.mk b/Repository.mk +index dbb628f2a6b3..4387e665624e 100644 +--- a/Repository.mk ++++ b/Repository.mk +@@ -799,8 +805,12 @@ endif + + # 'test_unittest' is only package delivering to workdir. + # Other packages could be potentially autoinstalled. ++ifeq ($(ENABLE_CPPUNIT),TRUE) + $(eval $(call gb_Helper_register_packages, \ + test_unittest \ ++)) ++endif ++$(eval $(call gb_Helper_register_packages, \ + $(if $(ENABLE_CLI),cli_basetypes_copy) \ + extras_wordbook \ + instsetoo_native_setup \ diff --git a/debian/patches/debian-debug.diff b/debian/patches/debian-debug.diff new file mode 100644 index 00000000000..a745f3ba51d --- /dev/null +++ b/debian/patches/debian-debug.diff @@ -0,0 +1,47 @@ +diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk +index 9de88a2..9161a4e 100644 +--- a/solenv/gbuild/platform/com_GCC_defs.mk ++++ b/solenv/gbuild/platform/com_GCC_defs.mk +@@ -170,6 +170,8 @@ gb_COMPILERNOOPTFLAGS := -O0 -fstrict-aliasing -fstrict-overflow + ifeq ($(OS),ANDROID) + gb_DEBUGINFO_FLAGS=-glldb + # Clang does not know -ggdb2 or some other options ++else ifeq ($(enable_symbols),SMALL) ++gb_DEBUGINFO_FLAGS=-g1 + else ifeq ($(HAVE_GCC_GGDB2),TRUE) + gb_DEBUGINFO_FLAGS=-ggdb2 + else +diff --git a/configure.ac b/configure.ac +index 2d62af9981a9..b1ad5a970700 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -4056,6 +4056,9 @@ fi + if test "$enable_symbols" = yes; then + ENABLE_SYMBOLS_FOR=all + AC_MSG_RESULT([yes]) ++elif test "$enable_symbols" = "SMALL" -o "$enable_symbols" = "small"; then ++ ENABLE_SYMBOLS_FOR=all ++ AC_MSG_RESULT([yes, small ones]) + elif test "$enable_symbols" = no; then + ENABLE_SYMBOLS_FOR= + AC_MSG_RESULT([no]) +@@ -4064,6 +4067,7 @@ else + ENABLE_SYMBOLS_FOR="$enable_symbols" + AC_MSG_RESULT([for "$enable_symbols"]) + fi ++AC_SUBST(enable_symbols) + AC_SUBST(ENABLE_SYMBOLS_FOR) + + if test -n "$with_android_ndk" -a \( -n "$ENABLE_DEBUG" -o -n "$ENABLE_DBGUTIL" \) -a "$ENABLE_SYMBOLS_FOR" = "all"; then +diff --git a/config_host.mk.in b/config_host.mk.in +index 7df26713a1dd..174c4e50466c 100644 +--- a/config_host.mk.in ++++ b/config_host.mk.in +@@ -208,6 +209,7 @@ export ENABLE_SDREMOTE_BLUETOOTH=@ENABLE_SDREMOTE_BLUETOOTH@ + export ENABLE_SILENT_MSI=@ENABLE_SILENT_MSI@ + export ENABLE_SKIA=@ENABLE_SKIA@ + export ENABLE_SKIA_DEBUG=@ENABLE_SKIA_DEBUG@ ++export enable_symbols=@enable_symbols@ + export ENABLE_SYMBOLS_FOR=@ENABLE_SYMBOLS_FOR@ + export ENABLE_VALGRIND=@ENABLE_VALGRIND@ + export ENABLE_WASM_STRIP_ACCESSIBILITY=@ENABLE_WASM_STRIP_CALC@ diff --git a/debian/patches/debian-hardened-buildflags-CPPFLAGS.diff b/debian/patches/debian-hardened-buildflags-CPPFLAGS.diff new file mode 100644 index 00000000000..26061d63ffd --- /dev/null +++ b/debian/patches/debian-hardened-buildflags-CPPFLAGS.diff @@ -0,0 +1,37 @@ +--- a/configure.ac-old 2012-03-02 21:48:47.000000000 +0000 ++++ b/configure.ac 2012-03-02 21:51:29.000000000 +0000 +@@ -10225,6 +10225,11 @@ else + AC_SUBST(GSTREAMER_1_0_LIBS) + AC_SUBST(ENABLE_GSTREAMER_1_0) + ++if test -x /usr/bin/dpkg-buildflags; then ++ HARDEN_CPPFLAGS=`dpkg-buildflags --get CPPFLAGS 2>/dev/null` ++fi ++AC_SUBST(HARDEN_CPPFLAGS) ++ + ENABLE_OPENGL_TRANSITIONS= + ENABLE_OPENGL_CANVAS= + if test $_os = iOS -o $_os = Android -o "$ENABLE_FUZZERS" = "TRUE"; then +--- a/config_host.mk.in-old 2012-04-06 14:17:55.164239390 +0200 ++++ b/config_host.mk.in 2012-04-06 14:18:55.440239065 +0200 +@@ -76,6 +76,7 @@ + export CPPUNIT_LIBS=$(gb_SPACE)@CPPUNIT_LIBS@ + export CPUNAME=@CPUNAME@ + export CDEFAULTOPT=@CDEFAULTOPT@ ++export HARDEN_CPPFLAGS=@HARDEN_CPPFLAGS@ + export CROSS_COMPILING=@CROSS_COMPILING@ + export CURL=@CURL@ + export CURL_CFLAGS=$(gb_SPACE)@CURL_CFLAGS@ +diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk +index c71cb40..f826d65 100644 +--- a/solenv/gbuild/gbuild.mk ++++ b/solenv/gbuild/gbuild.mk +@@ -259,6 +259,8 @@ gb_GLOBALDEFS += \ + DISABLE_DYNLOADING \ + ) + ++gb_GLOBALDEFS += $(HARDEN_CPPFLAGS) ++ + gb_GLOBALDEFS := $(sort $(gb_GLOBALDEFS)) + + # Common environment variables passed into all gb_*Test classes: diff --git a/debian/patches/debian-hardened-buildflags-no-LO-fstack-protector-strong.diff b/debian/patches/debian-hardened-buildflags-no-LO-fstack-protector-strong.diff new file mode 100644 index 00000000000..c6fb86a0649 --- /dev/null +++ b/debian/patches/debian-hardened-buildflags-no-LO-fstack-protector-strong.diff @@ -0,0 +1,32 @@ +don't hardcode -fstack-protector-strong in configure.ac/gbuild. We get the +hardening flags from dpkg-buildflags anyway. + +diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk +index 712a61df544f..0d50f538ba7b 100644 +--- a/solenv/gbuild/platform/com_GCC_defs.mk ++++ b/solenv/gbuild/platform/com_GCC_defs.mk +@@ -77,7 +77,6 @@ gb_CFLAGS_COMMON := \ + -fno-common \ + -pipe \ + $(if $(ENABLE_HARDENING_FLAGS),$(HARDENING_CFLAGS)) \ +- $(if $(filter EMSCRIPTEN,$(OS)),-fno-stack-protector,-fstack-protector-strong) \ + + gb_CXXFLAGS_COMMON := \ + -Wall \ +@@ -94,7 +93,6 @@ gb_CXXFLAGS_COMMON := \ + -fno-common \ + -pipe \ + $(if $(ENABLE_HARDENING_FLAGS),$(HARDENING_CFLAGS)) \ +- $(if $(filter EMSCRIPTEN,$(OS)),-fno-stack-protector,-fstack-protector-strong) \ + + ifeq ($(HAVE_WDEPRECATED_COPY_DTOR),TRUE) + gb_CXXFLAGS_COMMON += -Wdeprecated-copy-dtor +@@ -136,8 +134,6 @@ endif + gb_VISIBILITY_FLAGS_CXX := -fvisibility-inlines-hidden + gb_CXXFLAGS_COMMON += $(gb_VISIBILITY_FLAGS_CXX) + +-gb_LinkTarget_LDFLAGS += $(if $(filter EMSCRIPTEN,$(OS)),-fno-stack-protector,-fstack-protector-strong) +- + ifneq ($(gb_ENABLE_PCH),) + ifeq ($(COM_IS_CLANG),TRUE) + # Clang by default includes in the PCH timestamps of the files it was diff --git a/debian/patches/debian-opt.diff b/debian/patches/debian-opt.diff new file mode 100644 index 00000000000..f4a52e2887d --- /dev/null +++ b/debian/patches/debian-opt.diff @@ -0,0 +1,26 @@ +diff --git a/configure.ac b/configure.ac +index f06ef8e..91ce612 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -12776,6 +12776,9 @@ fi + fi + AC_SUBST(KEEP_AWAKE_CMD) + ++CDEFAULTOPT=`echo $CFLAGS 2>/dev/null | grep -E -o "\-O[[0-3]]"` ++AC_SUBST(CDEFAULTOPT) ++ + dnl ========================================= + dnl Check for Jom (parallel nmake) + dnl ========================================= +diff --git a/config_host.mk.in b/config_host.mk.in +index 1ec3268..abb45b1 100644 +--- a/config_host.mk.in ++++ b/config_host.mk.in +@@ -69,6 +69,7 @@ export CPP_LIBRARY=@CPP_LIBRARY@ + export CPPUNIT_CFLAGS=$(gb_SPACE)@CPPUNIT_CFLAGS@ + export CPPUNIT_LIBS=$(gb_SPACE)@CPPUNIT_LIBS@ + export CPUNAME=@CPUNAME@ ++export CDEFAULTOPT=@CDEFAULTOPT@ + export CROSS_COMPILING=@CROSS_COMPILING@ + export CURL=@CURL@ + export CURL_CFLAGS=$(gb_SPACE)@CURL_CFLAGS@ diff --git a/debian/patches/disable-flaky-tests.diff b/debian/patches/disable-flaky-tests.diff new file mode 100644 index 00000000000..81e9c6df573 --- /dev/null +++ b/debian/patches/disable-flaky-tests.diff @@ -0,0 +1,154 @@ +14:13 < mst__> _rene_, the toolkit unoapi tests are known to be flaky (in some + system dependent way) e.g. on the Win@6 tinderbox it always + crashes +14:14 < mst__> _rene_, sc.ScAccessible* tests also fail on some systems some of + the time + +diff --git a/toolkit/Module_toolkit.mk b/toolkit/Module_toolkit.mk +index 25db0b6..14e507c 100644 +--- a/toolkit/Module_toolkit.mk ++++ b/toolkit/Module_toolkit.mk +@@ -26,11 +26,11 @@ $(eval $(call gb_Module_add_targets,toolkit,\ + ifneq ($(OOO_JUNIT_JAR),) + $(eval $(call gb_Module_add_subsequentcheck_targets,toolkit,\ + JunitTest_toolkit_complex \ +- JunitTest_toolkit_unoapi_1 \ +- JunitTest_toolkit_unoapi_2 \ +- JunitTest_toolkit_unoapi_3 \ +- JunitTest_toolkit_unoapi_4 \ + )) + endif ++# JunitTest_toolkit_unoapi_1 \ ++# JunitTest_toolkit_unoapi_2 \ ++# JunitTest_toolkit_unoapi_3 \ ++# JunitTest_toolkit_unoapi_4 \ + + # vim: set noet sw=4 ts=4: +diff --git a/sc/qa/unoapi/sc_1.sce b/sc/qa/unoapi/sc_1.sce +index fa1684c..cc8e1a5 100644 +--- a/sc/qa/unoapi/sc_1.sce ++++ b/sc/qa/unoapi/sc_1.sce +@@ -24,10 +24,3 @@ + # i84554 -o sc.AccessibleEditableTextPara_PreviewNote + # i88241 -o sc.AccessibleEditableTextPara_HeaderFooter + -o sc.AccessibleEditableTextPara_PreviewCell +--o sc.ScAccessibleCell +-# i91044 -o sc.ScAccessibleCsvCell +-# i91044 -o sc.ScAccessibleCsvGrid +-# i84641 -o sc.ScAccessibleCsvRuler +-# i88330 -o sc.ScAccessibleDocument +-# i91045 -o sc.ScAccessibleDocumentPagePreview +--o sc.ScAccessiblePageHeader +diff --git a/sc/qa/unoapi/sc_2.sce b/sc/qa/unoapi/sc_2.sce +index dbfc3e1..d235c5d 100644 +--- a/sc/qa/unoapi/sc_2.sce ++++ b/sc/qa/unoapi/sc_2.sce +@@ -15,11 +15,6 @@ + # except in compliance with the License. You may obtain a copy of + # the License at http://www.apache.org/licenses/LICENSE-2.0 . + # +-# fdo#FOO -o sc.ScAccessiblePageHeaderArea +--o sc.ScAccessiblePreviewCell +--o sc.ScAccessiblePreviewHeaderCell +--o sc.ScAccessiblePreviewTable +-# fdo#45337 -o sc.ScAccessibleSpreadsheet + # FIXME_REMOVE_WHEN_RE_BASE_COMPLETE + # -o sc.ScAnnotationShapeObj + -o sc.ScAutoFormatFieldObj + +diff --git a/svx/qa/unoapi/svx.sce b/svx/qa/unoapi/svx.sce +index 1c3925f..a16f001 100644 +--- a/svx/qa/unoapi/svx.sce ++++ b/svx/qa/unoapi/svx.sce +@@ -25,7 +25,7 @@ + #i111216 -o svx.AccessiblePresentationGraphicShape + #i111216 -o svx.AccessiblePresentationOLEShape + #i85539 -o svx.AccessiblePresentationShape +--o svx.AccessibleShape ++#-o svx.AccessibleShape + #i90294 -o svx.GraphicExporter + -o svx.SvxDrawPage + #i85501 -o svx.SvxGraphCtrlAccessibleContext + +19:26 <@x1sc0> _rene_, since that test is using exact dimensions, it seems it + fails on your side probably because the paragraph style is + different. 1. I will change the test to avoid the exact + dimensions. 2. meantime you can skip that test: +https://cgit.freedesktop.org/libreoffice/core/commit/?id=e05f16e6bf36efbaab16dd2ed1427a750ce7cafd +19:26 < IZBot> core - disable UI test that does exact comparison +19:27 < _rene_> mmh, ok, saw that but that was for a different test, so.. :) +19:27 -!- jacobo [~jaragunde@fanzine.igalia.com] has quit [Quit: Leaving.] +19:27 < _rene_> thanks, will do + +diff --git a/uitest/writer_tests/tdf79236.py b/uitest/writer_tests/tdf79236.py +index 8585e48d8c64..704f42c009a1 100644 +--- a/sw/qa/uitest/writer_tests3/tdf79236.py ++++ b/sw/qa/uitest/writer_tests3/tdf79236.py +@@ -8,8 +8,11 @@ from uitest.framework import UITestCase + from uitest.framework import UITestCase + from uitest.uihelper.common import type_text + ++import unittest ++ + class tdf79236(UITestCase): + ++ @unittest.skip("Currently broken") + def test_paragraph(self): + + with self.ui_test.create_doc_in_start_center("writer") as document: + +14:39 < ztamas> _rene_: chart2dump is used to fail because of font size differences, just use a bigger delta or disable it if it + fails for you. +14:40 <@sberg_> noelgrandin, no +14:40 < noelgrandin> sberg_, sure seems that way both in the debugger and in the resulting SAL_WARN output +14:42 < ztamas> _rene_: there were some work on making font rendering consistent on different platforms, but it's not finished + yet, I guess +diff --git a/chart2/Module_chart2.mk b/chart2/Module_chart2.mk +index 37acfdc3730f..7d26342f179f 100644 +--- a/chart2/Module_chart2.mk ++++ b/chart2/Module_chart2.mk +@@ -33,9 +33,9 @@ $(eval $(call gb_Module_add_slowcheck_targets,chart2,\ + CppunitTest_chart2_import2 \ + CppunitTest_chart2_trendcalculators \ +- CppunitTest_chart2_dump \ + CppunitTest_chart2_pivot_chart_test \ + CppunitTest_chart2_geometry \ + CppunitTest_chart2_uichart \ + )) ++# CppunitTest_chart2_dump \ + + ifeq ($(WITH_FONTS), TRUE) +diff --git a/sccomp/qa/unit/solver.cxx b/sccomp/qa/unit/solver.cxx +index 536df7425bb9..f3e37932c79c 100644 +--- a/sccomp/qa/unit/solver.cxx ++++ b/sccomp/qa/unit/solver.cxx +@@ -14,6 +14,16 @@ + #include + #include + ++#ifdef ENABLE_LPSOLVE ++ /* works constantly on some buildds (arm-conova-*) but fails on arm-ubc-*. ++ * On my rpi4 some attempts work, some not. ++ * Disable it on armhf based on flakiness ++ */ ++ #if defined(__arm__) && defined(__ARM_EABI__) && defined(__ARM_PCS_VFP) ++ #undef ENABLE_LPSOLVE ++ #endif ++#endif ++ + using namespace css; + + namespace { +diff --git a/sw/qa/unoapi/sw_1.sce b/sw/qa/unoapi/sw_1.sce +index f55cfaba4a26..fbc24334df3f 100644 +--- a/sw/qa/unoapi/sw_1.sce ++++ b/sw/qa/unoapi/sw_1.sce +@@ -34,7 +34,7 @@ + #i111178 -o sw.SwAccessibleTextFrameView + -o sw.SwAccessibleTextGraphicObject + -o sw.SwXAutoTextEntry +--o sw.SwXAutoTextGroup ++#-o sw.SwXAutoTextGroup + -o sw.SwXCell + -o sw.SwXCellRange + -o sw.SwXChapterNumbering diff --git a/debian/patches/disable-java-in-odk-build-examples-on-zero-vm.diff b/debian/patches/disable-java-in-odk-build-examples-on-zero-vm.diff new file mode 100644 index 00000000000..d8309ba293e --- /dev/null +++ b/debian/patches/disable-java-in-odk-build-examples-on-zero-vm.diff @@ -0,0 +1,58 @@ +diff --git a/config_host.mk.in b/config_host.mk.in +index 6cea6ccf795e..d08fac922239 100644 +--- a/config_host.mk.in ++++ b/config_host.mk.in +@@ -324,6 +324,7 @@ export JAVACFLAGS=@JAVACFLAGS@ + export JAVAIFLAGS=@JAVAIFLAGS@ + export JAVAIFLAGS_FOR_BUILD=@JAVAIFLAGS_FOR_BUILD@ + export JAVAINTERPRETER=@JAVAINTERPRETER@ ++export JAVA_HAS_ZERO_VM=@JAVA_HAS_ZERO_VM@ + export JAVA_HOME=@JAVA_HOME@ + export JAVA_HOME_FOR_BUILD=@JAVA_HOME_FOR_BUILD@ + export JAVA_SOURCE_VER=@JAVA_SOURCE_VER@ +diff --git a/configure.ac b/configure.ac +index 06398bfa99a7..06835ae884c4 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -7826,6 +7826,14 @@ if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then + JAVAIFLAGS=-Xmx64M + # set to limit VM usage for javac + JAVACFLAGS=-J-Xmx128M ++ ++ AC_MSG_CHECKING([whether $JAVAINTERPRETER is using the Zero VM]) ++ if $JAVAINTERPRETER -version 2>&1 | grep -q Zero; then ++ JAVA_HAS_ZERO_VM=y ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_RESULT([no]) ++ fi + fi + else + AC_MSG_ERROR([Java not found. You need at least JDK 8]) +@@ -7841,6 +7849,7 @@ else + JAVAIFLAGS=$JAVAIFLAGS_FOR_BUILD + fi + fi ++AC_SUBST(JAVA_HAS_ZERO_VM) + + dnl =================================================================== + dnl Checks for javac +diff --git a/odk/Module_odk.mk b/odk/Module_odk.mk +index 410f8cf8ef1e..bd05d4bba200 100644 +--- a/odk/Module_odk.mk ++++ b/odk/Module_odk.mk +@@ -60,10 +62,14 @@ $(eval $(call gb_Module_add_check_targets,odk,\ + ifneq ($(filter $(OS),LINUX MACOSX),) + $(eval $(call gb_Module_add_subsequentcheck_targets,odk, \ + CustomTarget_build-examples \ ++)) ++ifneq ($(JAVA_HAS_ZERO_VM),y) ++$(eval $(call gb_Module_add_subsequentcheck_targets,odk, \ + $(if $(ENABLE_JAVA),\ + CustomTarget_build-examples_java \ + ) \ + )) + endif ++endif + + # vim: set noet sw=4 ts=4: diff --git a/debian/patches/disable-shortcuts_tab_navigation-uitest.diff b/debian/patches/disable-shortcuts_tab_navigation-uitest.diff new file mode 100644 index 00000000000..99845b3e89b --- /dev/null +++ b/debian/patches/disable-shortcuts_tab_navigation-uitest.diff @@ -0,0 +1,34 @@ +--- a/cui/qa/uitest/dialogs/shortcuts.py 2024-06-10 16:53:25.647230480 +0200 ++++ /dev/null 2024-06-07 16:44:09.580083050 +0200 +@@ -1,31 +0,0 @@ +-# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- +-# +-# This Source Code Form is subject to the terms of the Mozilla Public +-# License, v. 2.0. If a copy of the MPL was not distributed with this +-# file, You can obtain one at http://mozilla.org/MPL/2.0/. +-# +- +-from uitest.framework import UITestCase +-from uitest.uihelper.common import select_pos +-from libreoffice.uno.propertyvalue import mkPropertyValues +-from uitest.uihelper.common import get_state_as_dict +- +-class Test(UITestCase): +- +- def test_tab_navigation(self): +- with self.ui_test.create_doc_in_start_center("writer"),\ +- self.ui_test.execute_dialog_through_command(".uno:EditStyle") as xDialog: +- xTabs = xDialog.getChild("tabcontrol") +- select_pos(xTabs, "0") +- +- for i in range(16): +- self.assertEqual(get_state_as_dict(xTabs)["CurrPagePos"], str(i)) +- xTabs.executeAction("TYPE", mkPropertyValues({"KEYCODE":"CTRL+PAGEDOWN"})) +- +- for i in reversed(range(16)): +- self.assertEqual(get_state_as_dict(xTabs)["CurrPagePos"], str(i)) +- xTabs.executeAction("TYPE", mkPropertyValues({"KEYCODE":"CTRL+PAGEUP"})) +- +- +- +-# vim: set shiftwidth=4 softtabstop=4 expandtab: diff --git a/debian/patches/disable-tdf163105-tests-due-to-old-amiri.diff b/debian/patches/disable-tdf163105-tests-due-to-old-amiri.diff new file mode 100644 index 00000000000..38c76778156 --- /dev/null +++ b/debian/patches/disable-tdf163105-tests-due-to-old-amiri.diff @@ -0,0 +1,197 @@ +diff --git a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx +index 75e9b7a602cf..421c2680dd7b 100644 +--- a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx ++++ b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx +@@ -5708,99 +5713,99 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf163105SwKashidaSpaceExpansion) + CPPUNIT_ASSERT_GREATER(150.0, aRect.at(2).getWidth()); + } + +-// tdf#163105 - Writer should use font information when choosing kashida positions +-CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf163105Writer) +-{ +- saveAsPDF(u"tdf163105-writer.fodt"); +- +- auto pPdfDocument = parsePDFExport(); +- CPPUNIT_ASSERT_EQUAL(1, pPdfDocument->getPageCount()); +- +- auto pPdfPage = pPdfDocument->openPage(/*nIndex*/ 0); +- CPPUNIT_ASSERT(pPdfPage); +- auto pTextPage = pPdfPage->getTextPage(); +- CPPUNIT_ASSERT(pTextPage); +- +- int nPageObjectCount = pPdfPage->getObjectCount(); +- +- // The fix allows kashida justification in this document. +- // Without the fix, this will be 1. +- CPPUNIT_ASSERT_EQUAL(5, nPageObjectCount); +- +- std::vector aText; +- std::vector aRect; +- +- int nTextObjectCount = 0; +- for (int i = 0; i < nPageObjectCount; ++i) +- { +- auto pPageObject = pPdfPage->getObject(i); +- CPPUNIT_ASSERT_MESSAGE("no object", pPageObject != nullptr); +- if (pPageObject->getType() == vcl::pdf::PDFPageObjectType::Text) +- { +- aText.push_back(pPageObject->getText(pTextPage)); +- aRect.push_back(pPageObject->getBounds()); +- ++nTextObjectCount; +- } +- } +- +- CPPUNIT_ASSERT_EQUAL(5, nTextObjectCount); +- +- CPPUNIT_ASSERT_EQUAL(u"ارسی"_ustr, aText.at(0).trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(1).trim()); +- CPPUNIT_ASSERT_EQUAL(u"تن ف"_ustr, aText.at(2).trim()); // This span is whitespace justified +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(3).trim()); +- CPPUNIT_ASSERT_EQUAL(u"م"_ustr, aText.at(4).trim()); +- +- // Without the fix, this will be greater than X +- CPPUNIT_ASSERT_LESS(170.0, aRect.at(2).getWidth()); +-} +- +-// tdf#163105 - Edit Engine should use font information when choosing kashida positions +-CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf163105Editeng) +-{ +- saveAsPDF(u"tdf163105-editeng.fodt"); +- +- auto pPdfDocument = parsePDFExport(); +- CPPUNIT_ASSERT_EQUAL(1, pPdfDocument->getPageCount()); +- +- auto pPdfPage = pPdfDocument->openPage(/*nIndex*/ 0); +- CPPUNIT_ASSERT(pPdfPage); +- auto pTextPage = pPdfPage->getTextPage(); +- CPPUNIT_ASSERT(pTextPage); +- +- int nPageObjectCount = pPdfPage->getObjectCount(); +- +- // The fix allows kashida justification in this document. +- // Without the fix, this will be 1. +- CPPUNIT_ASSERT_EQUAL(5, nPageObjectCount); +- +- std::vector aText; +- std::vector aRect; +- +- int nTextObjectCount = 0; +- for (int i = 0; i < nPageObjectCount; ++i) +- { +- auto pPageObject = pPdfPage->getObject(i); +- CPPUNIT_ASSERT_MESSAGE("no object", pPageObject != nullptr); +- if (pPageObject->getType() == vcl::pdf::PDFPageObjectType::Text) +- { +- aText.push_back(pPageObject->getText(pTextPage)); +- aRect.push_back(pPageObject->getBounds()); +- ++nTextObjectCount; +- } +- } +- +- CPPUNIT_ASSERT_EQUAL(5, nTextObjectCount); +- +- CPPUNIT_ASSERT_EQUAL(u"ارسی"_ustr, aText.at(0).trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(1).trim()); +- CPPUNIT_ASSERT_EQUAL(u"تن ف"_ustr, aText.at(2).trim()); // This span is whitespace justified +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(3).trim()); +- CPPUNIT_ASSERT_EQUAL(u"م"_ustr, aText.at(4).trim()); +- +- CPPUNIT_ASSERT_LESS(170.0, aRect.at(2).getWidth()); +-} +- ++//// tdf#163105 - Writer should use font information when choosing kashida positions ++//CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf163105Writer) ++//{ ++// saveAsPDF(u"tdf163105-writer.fodt"); ++// ++// auto pPdfDocument = parsePDFExport(); ++// CPPUNIT_ASSERT_EQUAL(1, pPdfDocument->getPageCount()); ++// ++// auto pPdfPage = pPdfDocument->openPage(/*nIndex*/ 0); ++// CPPUNIT_ASSERT(pPdfPage); ++// auto pTextPage = pPdfPage->getTextPage(); ++// CPPUNIT_ASSERT(pTextPage); ++// ++// int nPageObjectCount = pPdfPage->getObjectCount(); ++// ++// // The fix allows kashida justification in this document. ++// // Without the fix, this will be 1. ++// CPPUNIT_ASSERT_EQUAL(5, nPageObjectCount); ++// ++// std::vector aText; ++// std::vector aRect; ++// ++// int nTextObjectCount = 0; ++// for (int i = 0; i < nPageObjectCount; ++i) ++// { ++// auto pPageObject = pPdfPage->getObject(i); ++// CPPUNIT_ASSERT_MESSAGE("no object", pPageObject != nullptr); ++// if (pPageObject->getType() == vcl::pdf::PDFPageObjectType::Text) ++// { ++// aText.push_back(pPageObject->getText(pTextPage)); ++// aRect.push_back(pPageObject->getBounds()); ++// ++nTextObjectCount; ++// } ++// } ++// ++// CPPUNIT_ASSERT_EQUAL(5, nTextObjectCount); ++// ++// CPPUNIT_ASSERT_EQUAL(u"ارسی"_ustr, aText.at(0).trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(1).trim()); ++// CPPUNIT_ASSERT_EQUAL(u"تن ف"_ustr, aText.at(2).trim()); // This span is whitespace justified ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(3).trim()); ++// CPPUNIT_ASSERT_EQUAL(u"م"_ustr, aText.at(4).trim()); ++// ++// // Without the fix, this will be greater than X ++// CPPUNIT_ASSERT_LESS(170.0, aRect.at(2).getWidth()); ++//} ++// ++//// tdf#163105 - Edit Engine should use font information when choosing kashida positions ++//CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf163105Editeng) ++//{ ++// saveAsPDF(u"tdf163105-editeng.fodt"); ++// ++// auto pPdfDocument = parsePDFExport(); ++// CPPUNIT_ASSERT_EQUAL(1, pPdfDocument->getPageCount()); ++// ++// auto pPdfPage = pPdfDocument->openPage(/*nIndex*/ 0); ++// CPPUNIT_ASSERT(pPdfPage); ++// auto pTextPage = pPdfPage->getTextPage(); ++// CPPUNIT_ASSERT(pTextPage); ++// ++// int nPageObjectCount = pPdfPage->getObjectCount(); ++// ++// // The fix allows kashida justification in this document. ++// // Without the fix, this will be 1. ++// CPPUNIT_ASSERT_EQUAL(5, nPageObjectCount); ++// ++// std::vector aText; ++// std::vector aRect; ++// ++// int nTextObjectCount = 0; ++// for (int i = 0; i < nPageObjectCount; ++i) ++// { ++// auto pPageObject = pPdfPage->getObject(i); ++// CPPUNIT_ASSERT_MESSAGE("no object", pPageObject != nullptr); ++// if (pPageObject->getType() == vcl::pdf::PDFPageObjectType::Text) ++// { ++// aText.push_back(pPageObject->getText(pTextPage)); ++// aRect.push_back(pPageObject->getBounds()); ++// ++nTextObjectCount; ++// } ++// } ++// ++// CPPUNIT_ASSERT_EQUAL(5, nTextObjectCount); ++// ++// CPPUNIT_ASSERT_EQUAL(u"ارسی"_ustr, aText.at(0).trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(1).trim()); ++// CPPUNIT_ASSERT_EQUAL(u"تن ف"_ustr, aText.at(2).trim()); // This span is whitespace justified ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText.at(3).trim()); ++// CPPUNIT_ASSERT_EQUAL(u"م"_ustr, aText.at(4).trim()); ++// ++// CPPUNIT_ASSERT_LESS(170.0, aRect.at(2).getWidth()); ++//} ++// + CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf140767SyriacJustification) + { + saveAsPDF(u"tdf140767.odt"); diff --git a/debian/patches/disable-uitest-xmlsecurity-gpg.diff b/debian/patches/disable-uitest-xmlsecurity-gpg.diff new file mode 100644 index 00000000000..2444c8a034f --- /dev/null +++ b/debian/patches/disable-uitest-xmlsecurity-gpg.diff @@ -0,0 +1,17 @@ +diff --git a/xmlsecurity/Module_xmlsecurity.mk b/xmlsecurity/Module_xmlsecurity.mk +index afb1e251586a..12241f6b6520 100644 +--- a/xmlsecurity/Module_xmlsecurity.mk ++++ b/xmlsecurity/Module_xmlsecurity.mk +@@ -48,9 +48,9 @@ $(eval $(call gb_Module_add_screenshot_targets,xmlsecurity,\ + CppunitTest_xmlsecurity_dialogs_test \ + )) + +-$(eval $(call gb_Module_add_uicheck_targets,xmlsecurity,\ +- UITest_xmlsecurity_gpg \ +-)) ++#$(eval $(call gb_Module_add_uicheck_targets,xmlsecurity,\ ++# UITest_xmlsecurity_gpg \ ++#)) + + ifneq (,$(filter DESKTOP,$(BUILD_TYPE))) + ifneq (,$(or $(ENABLE_NSS),$(filter WNT,$(OS)))) diff --git a/debian/patches/disable-unused-test-programs.diff b/debian/patches/disable-unused-test-programs.diff new file mode 100644 index 00000000000..c1402c61565 --- /dev/null +++ b/debian/patches/disable-unused-test-programs.diff @@ -0,0 +1,70 @@ +diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk +index a5e4bf5d68d2..3e9e1bf9fe27 100644 +--- a/vcl/Module_vcl.mk ++++ b/vcl/Module_vcl.mk +@@ -28,28 +28,9 @@ $(eval $(call gb_Module_add_targets,vcl,\ + StaticLibrary_vclmain \ + $(if $(ENABLE_MACOSX_SANDBOX),, \ + $(if $(DISABLE_GUI),, \ +- Executable_ui-previewer)) \ +- $(if $(filter LINUX MACOSX SOLARIS WNT %BSD,$(OS)), \ +- Executable_outdevgrind \ +- $(if $(DISABLE_GUI),, \ +- Executable_vcldemo \ +- Executable_icontest \ +- Executable_visualbackendtest \ +- Executable_mtfdemo ))) \ ++ Executable_ui-previewer))) \ + )) + +-ifeq ($(CROSS_COMPILING)$(DISABLE_DYNLOADING),) +- +-$(eval $(call gb_Module_add_targets,vcl,\ +- $(if $(filter-out ANDROID iOS WNT,$(OS)), \ +- Executable_svdemo \ +- Executable_fftester \ +- Executable_svptest \ +- Executable_svpclient) \ +-)) +- +-endif +- + $(eval $(call gb_Module_add_l10n_targets,vcl,\ + AllLangMoTarget_vcl \ + )) +diff --git a/xmlsecurity/Module_xmlsecurity.mk b/xmlsecurity/Module_xmlsecurity.mk +index d3fafeb7e4ec..87b8c067903e 100644 +--- a/xmlsecurity/Module_xmlsecurity.mk ++++ b/xmlsecurity/Module_xmlsecurity.mk +@@ -45,14 +45,6 @@ $(eval $(call gb_Module_add_screenshot_targets,xmlsecurity,\ + CppunitTest_xmlsecurity_dialogs_test \ + )) + +-ifneq (,$(filter DESKTOP,$(BUILD_TYPE))) +- +-$(eval $(call gb_Module_add_targets,xmlsecurity,\ +- Executable_pdfverify \ +-)) +- +-endif +- + endif + + # vim: set noet sw=4 ts=4: +diff --git a/libreofficekit/Module_libreofficekit.mk b/libreofficekit/Module_libreofficekit.mk +index 351f89a33e48..defe0b14a681 100644 +--- a/libreofficekit/Module_libreofficekit.mk ++++ b/libreofficekit/Module_libreofficekit.mk +@@ -23,12 +23,10 @@ $(eval $(call gb_Module_add_check_targets,libreofficekit, \ + ifneq ($(ENABLE_GTK3),) + $(eval $(call gb_Module_add_targets,libreofficekit,\ + Library_libreofficekitgtk \ +- Executable_gtktiledviewer \ + )) + endif # ($(ENABLE_GTK3),) + + $(eval $(call gb_Module_add_targets,libreofficekit,\ +- Executable_tilebench \ + Package_selectionhandles \ + UIConfig_libreofficekit \ + )) diff --git a/debian/patches/disableClassPathURLCheck.diff b/debian/patches/disableClassPathURLCheck.diff new file mode 100644 index 00000000000..89ae9a1afaa --- /dev/null +++ b/debian/patches/disableClassPathURLCheck.diff @@ -0,0 +1,10 @@ +--- a/configure.ac-old 2020-09-13 14:08:41.553174902 +0200 ++++ b/configure.ac 2020-09-13 14:08:54.365300591 +0200 +@@ -7833,6 +7833,7 @@ + + # set to limit VM usage for JunitTests + JAVAIFLAGS=-Xmx64M ++ JAVAIFLAGS="$JAVAIFLAGS -Djdk.net.URLClassPath.disableClassPathURLCheck=true" + # set to limit VM usage for javac + JAVACFLAGS=-J-Xmx128M + diff --git a/debian/patches/do-not-abort-on-NON_APPLICATION_FONT_USE.diff b/debian/patches/do-not-abort-on-NON_APPLICATION_FONT_USE.diff new file mode 100644 index 00000000000..bcacd737d87 --- /dev/null +++ b/debian/patches/do-not-abort-on-NON_APPLICATION_FONT_USE.diff @@ -0,0 +1,14 @@ +diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk +index b16e3d0e5417..33bdde04b072 100644 +--- a/solenv/gbuild/CppunitTest.mk ++++ b/solenv/gbuild/CppunitTest.mk +@@ -132,9 +132,6 @@ else + $(if $(gb_CppunitTest__vcl_no_svp), \ + $(filter-out SAL_USE_VCLPLUGIN=svp,$(gb_TEST_ENV_VARS)),$(gb_TEST_ENV_VARS)) \ + $(EXTRA_ENV_VARS) \ +- $(if $(filter allow,$(NON_APPLICATION_FONT_USE)),, \ +- $(if $(filter abort,$(NON_APPLICATION_FONT_USE)),SAL_NON_APPLICATION_FONT_USE=abort, \ +- $(if $(filter deny,$(NON_APPLICATION_FONT_USE)),SAL_NON_APPLICATION_FONT_USE=deny))) \ + $(if $(filter gdb,$(gb_CppunitTest_GDBTRACE)),,$(gb_CppunitTest_CPPTESTPRECOMMAND)) \ + $(if $(G_SLICE),G_SLICE=$(G_SLICE)) \ + $(if $(GLIBCXX_FORCE_NEW),GLIBCXX_FORCE_NEW=$(GLIBCXX_FORCE_NEW)) \ diff --git a/debian/patches/do-not-hide-test-output.diff b/debian/patches/do-not-hide-test-output.diff new file mode 100644 index 00000000000..58455fe386a --- /dev/null +++ b/debian/patches/do-not-hide-test-output.diff @@ -0,0 +1,99 @@ +diff --git a/odk/build-examples_common.mk b/odk/build-examples_common.mk +index abcb3a3e2593..35d45ad23413 100644 +--- a/odk/build-examples_common.mk ++++ b/odk/build-examples_common.mk +@@ -49,12 +49,7 @@ else + && printf 'yes\n' | LANGUAGE= LC_ALL=C make -j1 \ + CC="$(CXX) $(gb_CXX03FLAGS)" LINK="$(CXX)" LIB="$(CXX)" \ + $(if $(MACOSX_SHELL_HACK), SHELL="$$$$ODK_BUILD_SHELL", ))) \ +- $(if $(MACOSX_SHELL_HACK),&& rm -f "$$$$ODK_BUILD_SHELL")) \ +- >$(gb_CustomTarget_workdir)/$(1)/log 2>&1 \ +- || (RET=$$$$? \ +- $(if $(MACOSX_SHELL_HACK), && rm -f "$$$$ODK_BUILD_SHELL" , ) \ +- && cat $(gb_CustomTarget_workdir)/$(1)/log \ +- && exit $$$$RET) ++ 2>&1 ) + endif + + $(gb_CustomTarget_workdir)/$(1)/setsdkenv: \ +diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk +index cfca2bbbf570..17c1070dcb12 100644 +--- a/solenv/gbuild/CppunitTest.mk ++++ b/solenv/gbuild/CppunitTest.mk +@@ -159,12 +159,7 @@ else + $(call gb_CppunitTest__make_args) "-env:CPPUNITTESTTARGET=$@" \ + ) \ + $(if $(gb_CppunitTest__interactive),$(if $(gb_CppunitTest_localized),|| exit $$?), \ +- > $@.$(if $(gb_CppunitTest_localized),$$l.)log 2>&1 \ +- || { $(if $(value gb_CppunitTest_postprocess), \ +- RET=$$?; \ +- $(call gb_CppunitTest_postprocess,$(gb_CppunitTest_CPPTESTCOMMAND),$@.core,$$RET) >> $@.$(if $(gb_CppunitTest_localized),$$l.)log 2>&1;) \ +- cat $@.$(if $(gb_CppunitTest_localized),$$l.)log; $(gb_CppunitTest_UNITTESTFAILED) Cppunit $*; \ +- $(if $(gb_CppunitTest_localized),exit $$RET;) } ) \ ++ 2>&1 ) \ + $(if $(gb_CppunitTest_localized),; done)) + $(call gb_Trace_EndRange,$*,CUT) + endif +diff --git a/solenv/gbuild/JunitTest.mk b/solenv/gbuild/JunitTest.mk +index 36f29b50ef28..3ac4603ff6a0 100644 +--- a/solenv/gbuild/JunitTest.mk ++++ b/solenv/gbuild/JunitTest.mk +@@ -44,17 +44,7 @@ else + -classpath "$(T_CP)" \ + $(DEFS) \ + org.junit.runner.JUnitCore \ +- $(CLASSES) > $@.log 2>&1 || \ +- (cat $@.log \ +- && echo "to rerun just this failed test without all others, run:" \ +- && echo && echo " make JunitTest_$*" && echo \ +- && echo "cd into the module dir to run the tests faster" \ +- && echo "Or to do interactive debugging, run two shells with:" \ +- && echo \ +- && echo " make debugrun" \ +- && echo " make gb_JunitTest_DEBUGRUN=T JunitTest_$*" \ +- && echo \ +- && false))) ++ $(CLASSES) 2>&1)) + $(CLEAN_CMD) + $(call gb_Trace_EndRange,$*,JUT) + endif +diff --git a/solenv/gbuild/UITest.mk b/solenv/gbuild/UITest.mk +index 03d30448ef7b..5628e47866f8 100644 +--- a/solenv/gbuild/UITest.mk ++++ b/solenv/gbuild/UITest.mk +@@ -77,16 +77,7 @@ else + --userdir=$(call gb_Helper_make_url,$(dir $(call gb_UITest_get_target,$*))user) \ + --dir=$(strip $(MODULES)) \ + $(gb_UITest_GDBTRACE) \ +- $(if $(gb_UITest__interactive),, \ +- > $@.log 2>&1 \ +- || ($(if $(value gb_CppunitTest_postprocess), \ +- RET=$$?; \ +- $(call gb_CppunitTest_postprocess,$(gb_UITest_EXECUTABLE_GDB),$@.core,$$RET) >> $@.log 2>&1;) \ +- $(if $(filter WNT,$(OS)), \ +- printf '%s: <<<\n' $(dir $(call gb_UITest_get_target,$*))/soffice.out.log; \ +- cat $(dir $(call gb_UITest_get_target,$*))/soffice.out.log; \ +- printf ' >>>\n\n';) \ +- cat $@.log; $(gb_UITest_UNITTESTFAILED) UI $*)))) ++ 2>&1)) + $(call gb_Trace_EndRange,$*,UIT) + endif + +diff --git a/solenv/gbuild/PythonTest.mk b/solenv/gbuild/PythonTest.mk +index bc404d4fb817..f605634d3d07 100644 +--- a/solenv/gbuild/PythonTest.mk ++++ b/solenv/gbuild/PythonTest.mk +@@ -67,12 +67,7 @@ else + $(gb_PythonTest_COMMAND) \ + $(if $(PYTHON_TEST_NAME),$(PYTHON_TEST_NAME),$(MODULES)) \ + ; } \ +- $(if $(gb_CppunitTest__interactive),, \ +- > $@.log 2>&1 \ +- || ($(if $(value gb_CppunitTest_postprocess), \ +- RET=$$?; \ +- $(call gb_CppunitTest_postprocess,$(gb_PythonTest_EXECUTABLE_GDB),$@.core,$$RET) >> $@.log 2>&1;) \ +- cat $@.log; $(gb_PythonTest_UNITTESTFAILED) Python $*))) ++ 2>&1) + $(call gb_Trace_EndRange,$*,PYT) + endif + diff --git a/debian/patches/dont-touch-urd.diff b/debian/patches/dont-touch-urd.diff new file mode 100644 index 00000000000..f19ef5dc217 --- /dev/null +++ b/debian/patches/dont-touch-urd.diff @@ -0,0 +1,80 @@ +18:43 <@_rene_> hmm. /me wonders why after a rm config.status autogen.lastrun + and a re-configure (and make clean for odk/scp2/scripting) LO + master tries to rebuild offapi/udkapi again? +18:44 <@_rene_> this a) takes with cpp instead of ucpp and b) causes all kind + of stuff "down" to be rebuilt.... :( +18:44 <@_rene_> which is extremely bad. +18:44 <@_rene_> if it isn't solvable easily: what to touch to prevent it from + doing that? :-) +18:45 < loirkerbot> LibreOffice (core) mstahl * desktop/source/app/main.c: + desktop: tweak xmlCleanupParser hack: disable on return + from main +18:46 < mst__> _rene_, did you switch between --with-system-ucpp and without? + that should rebuild IDL file... +18:47 <@_rene_> nah, first run is just --disable-help, --disable-scripting etc +18:47 <@_rene_> and the second run does that +18:47 <@_rene_> (first pass to "just" build what is needed for arch-specific + stuff) +18:48 <@_rene_> (and I am not using ucpp at all, but cpp ;)) +18:51 < mst__> _rene_, hmm don't know why that would happen then... you could + try running second make with -d and redirect to a file, but + beware that file will be huge... then grep for "Must + remake.*urd" or something should give you the problem area +18:59 -!- reisi007 [~chatzilla@cpe90-146-226-33.liwest.at] has quit [Quit: + ChatZilla 0.9.89 [Firefox 14.0.1/20120713134347]] +19:00 -!- crossmanith_ [~cr@p3E9EAEF6.dip.t-dialin.net] has joined + #libreoffice-dev +19:00 -!- erAck_away is now known as erAck +19:05 -!- cbosdonnat [~cbosdo@ALyon-651-1-309-127.w90-14.abo.wanadoo.fr] has + quit [Quit: Leaving] +19:07 <@_rene_> mst__: ok, starting a new build, let's see +[...] +10:36 <@_rene_> mst__: nothing interesting there instead of the loads of + touch'es... +10:36 <@_rene_> mst__: butI just removed the touch from the UnoApiTarget and + let's see now :) +10:36 -!- erAck [~erathke@f054050047.adsl.alicedsl.de] has joined + #libreoffice-dev +10:36 -!- mode/#libreoffice-dev [+o erAck] by ChanServ +10:36 <@_rene_> $(call gb_UnoApiPartTarget_get_target,%.urd) : +10:36 <@_rene_> - touch $@ +10:36 <@_rene_> + +[...] +10:38 < mst__> _rene_, there must be something interesting there: preceding the + "Must remake.*urd" line there must be some line that says target + "foo" is "newer" than the .urd and therefor it will be rebuilt +[...] +10:40 <@_rene_> mst__: I didn't see anything there, no ".*urd*muss neu" +10:41 < mst__> _rene_, there must be a message like that immediately preceding + running the touch command +10:41 -!- pepp [~pierre-er@vaf26-6-78-248-2-61.fbx.proxad.net] has joined + #libreoffice-dev +10:42 <@vmiklos> mst__: makes sense. +10:42 -!- matus [~ubuntu@adsl-dyn17.78-98-107.t-com.sk] has joined + #libreoffice-dev +10:42 <@_rene_> as said, there was done. I don't think I oversaw it +10:43 <@_rene_> but can try again later, for now I will just keep removing the + touch. according to the comment this shoudln't do harm +10:43 < mst__> _rene_, removing it will break incremental builds iirc +10:44 <@_rene_> but only if you change idl stuff inbetween +10:44 <@_rene_> which won't happen that often in package builds ;) +10:44 < mst__> _rene_, exactly +10:44 -!- Fridrich [~fridrich@71-99.199-178.cust.bluewin.ch] has joined + #libreoffice-dev +10:44 -!- mode/#libreoffice-dev [+o Fridrich] by ChanServ +10:45 <@_rene_> (when I am out of "use git", only when there's a new + (pre-)release" + +diff --git a/solenv/gbuild/UnoApiTarget.mk b/solenv/gbuild/UnoApiTarget.mk +index 98734ab..b281a84 100644 +--- a/solenv/gbuild/UnoApiTarget.mk ++++ b/solenv/gbuild/UnoApiTarget.mk +@@ -46,7 +46,7 @@ $(dir $(call gb_UnoApiPartTarget_get_target,))%/.dir : + $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) + + $(call gb_UnoApiPartTarget_get_target,%.urd) : +- touch $@ ++ + + # TODO: + # - get idlc switch "-P" (generate .urd into package dir) diff --git a/debian/patches/fix-32bits-test-build.diff b/debian/patches/fix-32bits-test-build.diff new file mode 100644 index 00000000000..8305fe8e611 --- /dev/null +++ b/debian/patches/fix-32bits-test-build.diff @@ -0,0 +1,134 @@ +diff --git a/sd/qa/unit/tiledrendering/tiledrendering.cxx b/sd/qa/unit/tiledrendering/tiledrendering.cxx +index 18b213e99abf..3a26f9493a7f 100644 +--- a/sd/qa/unit/tiledrendering/tiledrendering.cxx ++++ b/sd/qa/unit/tiledrendering/tiledrendering.cxx +@@ -2794,8 +2794,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering) + sal_Int32 nViewWidth = 2000; + sal_Int32 nViewHeight = 2000; + CPPUNIT_ASSERT(pXImpressDocument->createSlideRenderer(0, nViewWidth, nViewHeight, true, true)); +- CPPUNIT_ASSERT_EQUAL(2000, nViewWidth); +- CPPUNIT_ASSERT_EQUAL(1125, nViewHeight); ++ CPPUNIT_ASSERT_EQUAL(2000, static_cast(nViewWidth)); ++ CPPUNIT_ASSERT_EQUAL(1125, static_cast(nViewHeight)); + + const Color aTransparentColor(ColorAlpha, 0x00000000); + +@@ -2873,8 +2873,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_WithFie + sal_Int32 nViewWidth = 2000; + sal_Int32 nViewHeight = 2000; + CPPUNIT_ASSERT(pXImpressDocument->createSlideRenderer(0, nViewWidth, nViewHeight, true, true)); +- CPPUNIT_ASSERT_EQUAL(2000, nViewWidth); +- CPPUNIT_ASSERT_EQUAL(1125, nViewHeight); ++ CPPUNIT_ASSERT_EQUAL(2000, static_cast(nViewWidth)); ++ CPPUNIT_ASSERT_EQUAL(1125, static_cast(nViewHeight)); + + const Color aTransparentColor(ColorAlpha, 0x00000000); + +@@ -2970,8 +2970,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + sal_Int32 nViewWidth = 2000; + sal_Int32 nViewHeight = 2000; + CPPUNIT_ASSERT(pXImpressDocument->createSlideRenderer(0, nViewWidth, nViewHeight, true, true)); +- CPPUNIT_ASSERT_EQUAL(2000, nViewWidth); +- CPPUNIT_ASSERT_EQUAL(1125, nViewHeight); ++ CPPUNIT_ASSERT_EQUAL(2000, static_cast(nViewWidth)); ++ CPPUNIT_ASSERT_EQUAL(1125, static_cast(nViewHeight)); + + { + std::vector pBuffer(nViewWidth * nViewHeight * 4); +@@ -2982,8 +2982,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"Background\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 0") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"hash\"")); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"initVisible\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"hash\""))); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"initVisible\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"content\": { \"type\": \"%IMAGETYPE%\", \"checksum\": \"%IMAGECHECKSUM%\"}") >= 0); + +@@ -2999,8 +2999,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"MasterPage\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 0") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"hash\"")); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"initVisible\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"hash\""))); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"initVisible\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"content\": { \"type\": \"%IMAGETYPE%\", \"checksum\": \"%IMAGECHECKSUM%\"}") >= 0); + +@@ -3016,8 +3016,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"MasterPage\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 1") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"hash\"")); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"initVisible\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"hash\""))); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"initVisible\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"content\": { \"type\": \"%IMAGETYPE%\", \"checksum\": \"%IMAGECHECKSUM%\"}") >= 0); + +@@ -3079,8 +3079,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + sal_Int32 nViewWidth = 2000; + sal_Int32 nViewHeight = 2000; + CPPUNIT_ASSERT(pXImpressDocument->createSlideRenderer(0, nViewWidth, nViewHeight, true, true)); +- CPPUNIT_ASSERT_EQUAL(2000, nViewWidth); +- CPPUNIT_ASSERT_EQUAL(1125, nViewHeight); ++ CPPUNIT_ASSERT_EQUAL(2000, static_cast(nViewWidth)); ++ CPPUNIT_ASSERT_EQUAL(1125, static_cast(nViewHeight)); + + { + std::vector pBuffer(nViewWidth * nViewHeight * 4); +@@ -3091,9 +3091,9 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"Background\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 0") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"hash\"")); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"initVisible\"")); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"bounds\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"hash\""))); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"initVisible\""))); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"bounds\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"content\": { \"type\": \"%IMAGETYPE%\", \"checksum\": \"%IMAGECHECKSUM%\"}") >= 0); + +@@ -3109,7 +3109,7 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"MasterPage\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 0") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"bounds\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"bounds\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + + debugWriteImageToFile(1, pBuffer, nViewWidth, nViewHeight, rJsonMsg.toUtf8().getStr()); +@@ -3124,7 +3124,7 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"MasterPage\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 1") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"bounds\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"bounds\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + + debugWriteImageToFile(2, pBuffer, nViewWidth, nViewHeight, rJsonMsg.toUtf8().getStr()); +@@ -3139,8 +3139,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"DrawPage\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 0") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"initVisible\"")); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"bounds\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"initVisible\""))); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"bounds\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + + debugWriteImageToFile(3, pBuffer, nViewWidth, nViewHeight, rJsonMsg.toUtf8().getStr()); +@@ -3188,8 +3188,8 @@ CPPUNIT_TEST_FIXTURE(SdTiledRenderingTest, testSlideshowLayeredRendering_Animati + + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"group\": \"DrawPage\"") >= 0); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"index\": 3") >= 0); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"initVisible\"")); +- CPPUNIT_ASSERT_EQUAL(-1, rJsonMsg.indexOf(u"\"bounds\"")); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"initVisible\""))); ++ CPPUNIT_ASSERT_EQUAL(-1, static_cast(rJsonMsg.indexOf(u"\"bounds\""))); + CPPUNIT_ASSERT(rJsonMsg.indexOf(u"\"type\": \"bitmap\"") >= 0); + + debugWriteImageToFile(6, pBuffer, nViewWidth, nViewHeight, rJsonMsg.toUtf8().getStr()); diff --git a/debian/patches/fix-flaky-bridgetest.diff b/debian/patches/fix-flaky-bridgetest.diff new file mode 100644 index 00000000000..d113f55d901 --- /dev/null +++ b/debian/patches/fix-flaky-bridgetest.diff @@ -0,0 +1,38 @@ +Description: Add safer float comparisons to bridgetest equals() +Author: Marcus Tomlinson +Bug-Ubuntu: https://launchpad.net/bugs/1832360 + +--- a/testtools/source/bridgetest/bridgetest.cxx ++++ b/testtools/source/bridgetest/bridgetest.cxx +@@ -124,6 +125,9 @@ public: + + static bool equals( const TestElement & rData1, const TestElement & rData2 ) + { ++ const float epsilon_f = 0.00001f; ++ const double epsilon_d = 0.000000000001; ++ + check( rData1.Bool == rData2.Bool, "### bool does not match!" ); + check( rData1.Char == rData2.Char, "### char does not match!" ); + check( rData1.Byte == rData2.Byte, "### byte does not match!" ); +@@ -133,8 +137,8 @@ static bool equals( const TestElement & rData1, const TestElement & rData2 ) + check( rData1.ULong == rData2.ULong, "### unsigned long does not match!" ); + check( rData1.Hyper == rData2.Hyper, "### hyper does not match!" ); + check( rData1.UHyper == rData2.UHyper, "### unsigned hyper does not match!" ); +- check( rData1.Float == rData2.Float, "### float does not match!" ); +- check( rData1.Double == rData2.Double, "### double does not match!" ); ++ check( fabs( rData1.Float - rData2.Float ) < epsilon_f, "### float does not match!" ); ++ check( fabs( rData1.Double - rData2.Double ) < epsilon_d, "### double does not match!" ); + check( rData1.Enum == rData2.Enum, "### enum does not match!" ); + check( rData1.String == rData2.String, "### string does not match!" ); + check( rData1.Byte2 == rData2.Byte2, "### byte2 does not match!" ); +@@ -149,8 +153,8 @@ static bool equals( const TestElement & rData1, const TestElement & rData2 ) + rData1.ULong == rData2.ULong && + rData1.Hyper == rData2.Hyper && + rData1.UHyper == rData2.UHyper && +- rData1.Float == rData2.Float && +- rData1.Double == rData2.Double && ++ fabs( rData1.Float - rData2.Float ) < epsilon_f && ++ fabs( rData1.Double - rData2.Double ) < epsilon_d && + rData1.Enum == rData2.Enum && + rData1.String == rData2.String && + rData1.Byte2 == rData2.Byte2 && diff --git a/debian/patches/fix-internal-hsqldb-build.diff b/debian/patches/fix-internal-hsqldb-build.diff new file mode 100644 index 00000000000..101da5e96d6 --- /dev/null +++ b/debian/patches/fix-internal-hsqldb-build.diff @@ -0,0 +1,45 @@ +diff -urN hsqldb.old/patches/use-system-servlet-api.jar.diff hsqldb/patches/use-system-servlet-api.jar.diff +--- a/external/hsqldb/patches/use-system-servlet-api.jar.diff 1970-01-01 01:00:00.000000000 +0100 ++++ b/external/hsqldb/patches/use-system-servlet-api.jar.diff 2013-03-19 15:09:42.137801521 +0100 +@@ -0,0 +1,29 @@ ++--- misc/hsqldb/build/build.xml +++++ misc/build/hsqldb/build/build.xml ++@@ -356,7 +356,7 @@ ++ optimize="${build.optimize}" ++ > ++ ++- +++ ++ ++ ++ ++@@ -818,7 +818,7 @@ ++ ${src}/org/hsqldb/util/RCData.java, ++ ${src}/org/hsqldb/util/SqlTool.java" ++ destdir="${basedir}/doc/src" ++- classpath="${basedir}/lib/servlet.jar;${basedir}/lib/junit.jar" +++ classpath="/usr/share/java/servlet-api-3.1.jar;${basedir}/lib/junit.jar" ++ author="true" ++ version="false" ++ use="true" ++@@ -839,7 +839,7 @@ ++ .") + #define STR_QUICKSTART_EXIT NC_("STR_QUICKSTART_EXIT", "Exit Quickstarter") + #define STR_QUICKSTART_TIP NC_("STR_QUICKSTART_TIP", "%PRODUCTNAME %PRODUCTVERSION Quickstarter") + #define STR_QUICKSTART_FILEOPEN NC_("STR_QUICKSTART_FILEOPEN", "Open Document...") diff --git a/debian/patches/hide-math-desktop-file.patch b/debian/patches/hide-math-desktop-file.patch new file mode 100644 index 00000000000..56aaa83f268 --- /dev/null +++ b/debian/patches/hide-math-desktop-file.patch @@ -0,0 +1,15 @@ +Description: Hide startcenter and math from the shell +Author: Olivier Tilloy +Bug-Ubuntu: https://launchpad.net/bugs/1696250 +Forwarded: not-needed + +--- a/sysui/desktop/menus/math.desktop ++++ b/sysui/desktop/menus/math.desktop +@@ -33,6 +33,7 @@ Keywords=Equation;OpenDocument Formula;F + InitialPreference=5 + StartupWMClass=libreoffice-math + X-KDE-Protocols=file,http,webdav,webdavs ++NotShowIn=GNOME; + + Actions=NewDocument; + [Desktop Action NewDocument] diff --git a/debian/patches/install-fixes.diff b/debian/patches/install-fixes.diff new file mode 100644 index 00000000000..891bb321c78 --- /dev/null +++ b/debian/patches/install-fixes.diff @@ -0,0 +1,166 @@ +diff --git a/bin/distro-install-file-lists b/bin/distro-install-file-lists +index eaabf9c..c1b1ec6 100755 +--- libreoffice-3.5.0/bin/distro-install-file-lists ++++ libreoffice-3.5.0/bin/distro-install-file-lists +@@ -8,6 +8,8 @@ + exit 1 + fi + ++export OOO_VENDOR=Debian ++ + BUILDDIR=`pwd` + FILELISTSDIR="$BUILDDIR/file-lists" + +@@ -351,152 +351,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then + remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/presets/config/styles.sod + # the British fixes can be removed after the issue #54113 is fixed + remove_duplicity_from_flists common_list.txt lang_en-GB_list.txt $INSTALLDIR/presets/config/standard.sog +- +-else +- +- echo "Creating package directories..." +- +- test -d pkg && rm -r pkg || : +- +- # Create package tree (needed by Debian's dpkg) +- # create_package_directory +- create_package_directory() +- { +- listfile=$1 +- directory="$2" +- perl -nl \ +- -e " if(/^%dir (.*)/) +- {system('mkdir', '-p', '-m', '755', \"$directory\".\$1);} +- else +- {rename('./'.\$_, \"$directory\".\$_);} +- " \ +- $listfile +- } +- +- create_package_directory gid_Module_Root_Ure_Hidden pkg/ure +- +- create_package_directory gid_Module_Root pkg/libreoffice-common +- create_package_directory gid_Module_Root_Brand pkg/libreoffice-common +- create_package_directory gid_Module_Root_Files_Images pkg/libreoffice-common +- create_package_directory gid_Module_Oo_Linguistic pkg/libreoffice-common +- create_package_directory gid_Module_Optional_Xsltfiltersamples pkg/libreoffice-common +- create_package_directory gid_Module_Optional_Grfflt pkg/libreoffice-draw +- create_package_directory gid_Module_Prg_Calc_Bin pkg/libreoffice-calc +- create_package_directory gid_Module_Prg_Math_Bin pkg/libreoffice-math +- create_package_directory gid_Module_Prg_Draw_Bin pkg/libreoffice-draw +- create_package_directory gid_Module_Prg_Wrt_Bin pkg/libreoffice-writer +- create_package_directory gid_Module_Prg_Impress_Bin pkg/libreoffice-impress +- create_package_directory gid_Module_Prg_Base_Bin pkg/libreoffice-base +- create_package_directory gid_Module_Brand_Prg_Calc pkg/libreoffice-calc +- create_package_directory gid_Module_Brand_Prg_Math pkg/libreoffice-math +- create_package_directory gid_Module_Brand_Prg_Draw pkg/libreoffice-draw +- create_package_directory gid_Module_Brand_Prg_Wrt pkg/libreoffice-writer +- create_package_directory gid_Module_Brand_Prg_Impress pkg/libreoffice-impress +- create_package_directory gid_Module_Brand_Prg_Base pkg/libreoffice-base +- create_package_directory gid_Module_Pyuno pkg/python-uno +- create_package_directory gid_Module_Optional_Gnome pkg/libreoffice-gnome +- +- create_package_directory gid_Module_Root_Files_2 pkg/libreoffice-common +- create_package_directory gid_Module_Root_Files_3 pkg/libreoffice-common +- create_package_directory gid_Module_Root_Files_4 pkg/libreoffice-common +- create_package_directory gid_Module_Root_Files_5 pkg/libreoffice-common +- create_package_directory gid_Module_Root_Files_6 pkg/libreoffice-common +- create_package_directory gid_Module_Root_Files_7 pkg/libreoffice-common +- if [ -e gid_Module_Optional_Pymailmerge ]; then +- create_package_directory gid_Module_Optional_Pymailmerge pkg/libreoffice-emailmerge +- else # post m26 +- mkdir -p pkg/libreoffice-emailmerge/$INSTALLDIR/program +- mv pkg/libreoffice-common/$INSTALLDIR/program/mailmerge.py \ +- pkg/libreoffice-emailmerge/$INSTALLDIR/program/mailmerge.py +- fi +- create_package_directory gid_Module_Optional_OGLTrans pkg/libreoffice-ogltrans +- +- create_package_directory gid_Module_Root_SDK pkg/libreoffice-dev +- +- for l in `echo $WITH_LANG_LIST`; do +- for p in Impress Draw Math Calc Base Writer; do +- create_package_directory gid_Module_Langpack_${p}_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l +- done +- create_package_directory gid_Module_Langpack_Basis_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l +- create_package_directory gid_Module_Langpack_Brand_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l +- create_package_directory gid_Module_Langpack_Resource_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l +- create_package_directory gid_Module_Helppack_Help_`echo $l | sed -e s/-/_/g` pkg/libreoffice-help-$l +- +- # some help files are in _Langpack_{Writer,Impress,...}_ +- # move them from -l10n to -help +- if [ "$l" = "en-US" ]; then d=en; else d=$l; fi +- mv pkg/libreoffice-l10n-$l/$INSTALLDIR/help/$d/* \ +- pkg/libreoffice-help-$l/$INSTALLDIR/help/$d && \ +- rmdir pkg/libreoffice-l10n-$l/$INSTALLDIR/help/$d +- done +- +- # move_wrappers [...] +- move_wrappers() +- { +- directory=$1 +- shift +- mkdir -m755 -p "$directory"/usr/bin +- while test -n "$1"; do +- mv usr/*bin/"$1$BINSUFFIX" "$directory"/usr/bin +- shift +- done +- } +- move_wrappers pkg/libreoffice-common soffice unopkg +- if test "$COMPAT_OOWRAPPERS" = "YES" ; then +- move_wrappers pkg/libreoffice-common ooffice oofromtemplate +- move_wrappers pkg/libreoffice-base oobase +- move_wrappers pkg/libreoffice-writer oowriter ooweb +- move_wrappers pkg/libreoffice-calc oocalc +- move_wrappers pkg/libreoffice-impress ooimpress +- move_wrappers pkg/libreoffice-math oomath +- move_wrappers pkg/libreoffice-draw oodraw +- fi +- move_wrappers pkg/libreoffice-common libreoffice lofromtemplate +- move_wrappers pkg/libreoffice-base lobase +- move_wrappers pkg/libreoffice-writer lowriter loweb +- move_wrappers pkg/libreoffice-calc localc +- move_wrappers pkg/libreoffice-impress loimpress +- move_wrappers pkg/libreoffice-math lomath +- move_wrappers pkg/libreoffice-draw lodraw +- +- # Move all libraries, binaries, *.rdb from -common to -core +- for d in $INSTALLDIR/program $INSTALLDIR/program; do \ +- if [ ! -d $DESTDIR/pkg/libreoffice-core/$d ]; then \ +- mkdir -p $DESTDIR/pkg/libreoffice-core/$d; \ +- fi && +- ( cd pkg/libreoffice-common/$d +- find -maxdepth 1 \ +- -regex '\./\(.*\.so.*\|.*\.bin\|pagein\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \ +- -exec mv {} $DESTDIR/pkg/libreoffice-core/$d \; +- ); \ +- done +- +- # install additional ooo-build scripts & misc stuff +- mkdir -p pkg/libreoffice-common/usr/share/man/man1 +- if test "$COMPAT_OOWRAPPERS" = "YES" ; then +- mv usr/share/man/man1/openoffice$BINSUFFIX.1 \ +- pkg/libreoffice-common/usr/share/man/man1 +- fi +- mv usr/share/man/man1/libreoffice$BINSUFFIX.1 \ +- pkg/libreoffice-common/usr/share/man/man1 +- mkdir -p pkg/libreoffice-common/etc/bash_completion.d +- if test "$COMPAT_OOWRAPPERS" = "YES" ; then +- mv etc/bash_completion.d/ooffice$BINSUFFIX.sh \ +- pkg/libreoffice-common/etc/bash_completion.d +- fi +- mv etc/bash_completion.d/libreoffice$BINSUFFIX.sh \ +- pkg/libreoffice-common/etc/bash_completion.d +- mv .$INSTALLDIR/program/java-set-classpath \ +- pkg/libreoffice-common/$INSTALLDIR/program +- if echo $WITH_LANG_LIST | grep -q en-US; then +- for i in forms/resume.ott officorr/project-proposal.ott; do \ +- mkdir -p pkg/libreoffice-common/$INSTALLDIR/share/template/en-US/`dirname $i`; \ +- mv .$INSTALLDIR/share/template/en-US/$i \ +- pkg/libreoffice-common/$INSTALLDIR/share/template/en-US/$i; \ +- done; \ +- fi +- # Warn for any remaining files +- find . -path './pkg' -prune -o -not -name 'gid_Module_*' -not -type d -exec echo "File not packaged: {}" \; + fi + + # mark the config files diff --git a/debian/patches/javadoc-optional.diff b/debian/patches/javadoc-optional.diff new file mode 100644 index 00000000000..9c5eab5985f --- /dev/null +++ b/debian/patches/javadoc-optional.diff @@ -0,0 +1,151 @@ +Gemeinsame Unterverzeichnisse: odk-old/config und odk/config. +Gemeinsame Unterverzeichnisse: odk-old/docs und odk/docs. +Gemeinsame Unterverzeichnisse: odk-old/examples und odk/examples. +diff --git a/odk/Module_odk.mk b/odk/Module_odk.mk +index 693885322115..5fcb39306a0b 100644 +--- a/odk/Module_odk.mk ++++ b/odk/Module_odk.mk +@@ -42,8 +42,10 @@ endif + ifneq ($(ENABLE_JAVA),) + $(eval $(call gb_Module_add_targets,odk,\ + CustomTarget_classes \ +- CustomTarget_javadoc \ +- GeneratedPackage_odk_javadoc \ ++ $(if $(JAVADOC),\ ++ CustomTarget_javadoc \ ++ GeneratedPackage_odk_javadoc \ ++ ) \ + GeneratedPackage_uno_loader_classes \ + )) + endif + +Gemeinsame Unterverzeichnisse: odk-old/pack und odk/pack. +Gemeinsame Unterverzeichnisse: odk-old/qa und odk/qa. +Gemeinsame Unterverzeichnisse: odk-old/settings und odk/settings. +Gemeinsame Unterverzeichnisse: odk-old/source und odk/source. +Gemeinsame Unterverzeichnisse: odk-old/util und odk/util. +--- a/configure.ac-old 2013-05-27 18:32:42.187305241 +0200 ++++ b/configure.ac 2013-05-27 18:44:29.131286710 +0200 +@@ -2057,6 +2057,18 @@ AC_ARG_WITH(doxygen, + --without-doxygen disables generation of ODK C/C++ documentation.]), + ,with_doxygen=yes) + ++AC_ARG_WITH( ++ [javadoc], ++ AS_HELP_STRING( ++ [--with-javadoc], ++ [Specifies the javadoc executable to use when generating ODK Java ++ documentation. --without-javadoc disables generation of ODK Java ++ documentation. Not relevant in the --disable-odk case.]) ++ [ ++ Usage: --with-javadoc= ++ ],, ++ [with_javadoc=yes]) ++ + AC_ARG_WITH(visual-studio, + AS_HELP_STRING([--with-visual-studio=<2019/2022/2022preview>], + [Specify which Visual Studio version to use in case several are +@@ -7872,34 +7872,43 @@ fi + dnl =================================================================== + dnl Checks for javadoc + dnl =================================================================== +-if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then ++if test "$ENABLE_JAVA" != "" -a "$enable_odk" != no -a "$cross_compiling" != "yes"; then + if test -z "$with_jdk_home"; then + AC_PATH_PROG(JAVADOC, $javadoc) + else +- _javadoc_path="$with_jdk_home/bin/$javadoc" +- dnl Check if there is a javadoc at all. +- if test -x "$_javadoc_path"; then +- JAVADOC=$_javadoc_path +- else +- AC_PATH_PROG(JAVADOC, $javadoc) +- fi +- fi +- if test -z "$JAVADOC"; then +- AC_MSG_ERROR([$_javadoc_path not found set with_jdk_home]) +- fi +- if test "$build_os" = "cygwin"; then +- if test x`echo "$JAVADOC" | $GREP -i '\.exe$'` = x; then +- JAVADOC="${JAVADOC}.exe" +- fi +- JAVADOC=`win_short_path_for_make "$JAVADOC"` +- fi ++ if test "$with_javadoc" = "yes"; then ++ _javadoc_path="$with_jdk_home/bin/$javadoc" ++ dnl Check if there is a javadoc at all. ++ if test -x "$_javadoc_path"; then ++ JAVADOC=$_javadoc_path ++ else ++ AC_PATH_PROG(JAVADOC, $javadoc) ++ fi ++ if test -z "$JAVADOC"; then ++ AC_MSG_ERROR([$_javadoc_path not found set with_jdk_home]) ++ fi ++ if test "$build_os" = "cygwin"; then ++ if test x`echo "$JAVADOC" | $GREP -i '\.exe$'` = x; then ++ JAVADOC="${JAVADOC}.exe" ++ fi ++ JAVADOC=`win_short_path_for_make "$JAVADOC"` ++ fi + +- if test `$JAVADOC --version 2>&1 | $GREP -c "gjdoc"` -gt 0; then +- JAVADOCISGJDOC="yes" ++ if test `$JAVADOC --version 2>&1 | $GREP -c "gjdoc"` -gt 0; then ++ JAVADOCISGJDOC="yes" ++ fi ++ else ++ unset JAVADOC ++ fi + fi ++else ++ unset JAVADOC + fi +-AC_SUBST(JAVADOC) + AC_SUBST(JAVADOCISGJDOC) ++if test "$JAVADOCISGJDOC" = "yes"; then ++ unset JAVADOC ++fi ++AC_SUBST(JAVADOC) + + if test "$ENABLE_JAVA" != "" -a \( "$cross_compiling" != "yes" -o -n "$with_jdk_home" \); then + # check if JAVA_HOME was (maybe incorrectly?) set automatically to /usr +diff --git a/odk/CustomTarget_check.mk b/odk/CustomTarget_check.mk +index 74331955be9b..3415b0193cf9 100644 +--- a/odk/CustomTarget_check.mk ++++ b/odk/CustomTarget_check.mk +@@ -36,7 +36,7 @@ $(call gb_CustomTarget_get_workdir,odk/check)/checkbin : \ + $(if $(filter WNT,$(OS)),$(call gb_Package_get_target,odk_config_win)) \ + $(call gb_Package_get_target,odk_docs) \ + $(call gb_Package_get_target,odk_html) \ +- $(if $(ENABLE_JAVA),$(call gb_GeneratedPackage_get_target,odk_javadoc)) \ ++ $(if $(JAVADOC),$(call gb_GeneratedPackage_get_target,odk_javadoc)) \ + $(call gb_Package_get_target,odk_settings) \ + $(call gb_Package_get_target,odk_settings_generated) + ifneq ($(gb_SUPPRESS_TESTS),) +diff --git a/odk/util/check.pl b/odk/util/check.pl +index 899b42c..2c7a780 100644 +--- a/odk/util/check.pl ++++ b/odk/util/check.pl +@@ -188,7 +188,7 @@ if (-d "$SdkDir") { + # improvement required + my $solar_java = $ENV{"ENABLE_JAVA"}; + my $JDK = $ENV{"JDK"}; +- if (defined($solar_java) && $solar_java ne "" && (!defined($JDK) || $JDK ne "gcj")) { ++ if (defined($solar_java) && $solar_java ne "" && $ENV{"JAVADOC"} ne "") { + print "check java docu: "; + if (check_dir("docs/java/ref")) { + if (!check_file("docs/java/ref/index.html")) { +diff --git a/Repository.mk b/Repository.mk +index 5f2654b..471210f 100644 +--- a/Repository.mk ++++ b/Repository.mk +@@ -834,7 +841,7 @@ $(eval $(call gb_Helper_register_packages_for_install,sdk,\ + odk_settings \ + odk_settings_generated \ + $(if $(ENABLE_JAVA), \ +- odk_javadoc \ ++ $(if $(JAVADOC),odk_javadoc) \ + odk_uno_loader_classes \ + ) \ + odk_scripts \ diff --git a/debian/patches/jdbc-driver-classpaths.diff b/debian/patches/jdbc-driver-classpaths.diff new file mode 100644 index 00000000000..8f4a1660e75 --- /dev/null +++ b/debian/patches/jdbc-driver-classpaths.diff @@ -0,0 +1,35 @@ +diff --git a/officecfg/registry/data/org/openoffice/Office/DataAccess.xcu b/officecfg/registry/data/org/openoffice/Office/DataAccess.xcu +index 9be30a2..59c87cb 100644 +--- a/officecfg/registry/data/org/openoffice/Office/DataAccess.xcu ++++ b/officecfg/registry/data/org/openoffice/Office/DataAccess.xcu +@@ -147,6 +147,30 @@ + + + ++ ++ ++ ++ ++ file:///usr/share/java/mariadb-java-client.jar ++ ++ ++ ++ ++ file:///usr/share/java/mysql.jar ++ ++ ++ ++ ++ file:///usr/share/java/posgresql.jar ++ ++ ++ ++ ++ file:///usr/share/java/jtds.jar ++ ++ ++ ++ + + + diff --git a/debian/patches/jdk-minimal-and-zero-paths.diff b/debian/patches/jdk-minimal-and-zero-paths.diff new file mode 100644 index 00000000000..da98be47807 --- /dev/null +++ b/debian/patches/jdk-minimal-and-zero-paths.diff @@ -0,0 +1,61 @@ +From 85aecfe4fa9b28baf4b4b44b80f03d14f91c5eb2 Mon Sep 17 00:00:00 2001 +From: WANG Xuerui +Date: Thu, 22 Aug 2024 14:22:49 +0800 +Subject: [PATCH] sunjre: check all four possible OpenJDK variants for + libjvm.so + +Since OpenJDK 21, the "minimal" and "zero" variants of JVM no longer +reside in the "server" directory in $JAVA_HOME/lib, making the loader +unable to find libjvm.so. This regresses LO builds on platforms with +only those variants of JVM (i.e. without a HotSpot port). + +Example error message is like this: + +> exception occurred: Could not create Java implementation loader at +> ./stoc/source/javaloader/javaloader.cxx:551 + +Fix it by probing all four possible variant directories for libjvm.so. +This is tested on Debian unstable (loong64 port) to fix the packaging. + +Link: https://bugs.openjdk.org/browse/JDK-8273494 +Link: https://github.com/openjdk/jdk/pull/5440 +Link: https://github.com/openjdk/jdk/commit/8fbcc8239a3fc04e56ebbd287c7bb5db731977b7 +Change-Id: I3545f93054d7a3af0181e4c739c82efaaf8aeaed +--- + jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx +index a0f8cbee1f3e..926a0e469935 100644 +--- a/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx ++++ b/jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx +@@ -63,10 +63,15 @@ char const* const* SunInfo::getRuntimePaths(int * size) + "/lib/jli/libjli.dylib" + #elif defined UNX + "/lib/" JFW_PLUGIN_ARCH "/client/libjvm.so", ++ "/lib/" JFW_PLUGIN_ARCH "/minimal/libjvm.so", + "/lib/" JFW_PLUGIN_ARCH "/server/libjvm.so", ++ "/lib/" JFW_PLUGIN_ARCH "/zero/libjvm.so", + "/lib/" JFW_PLUGIN_ARCH "/classic/libjvm.so", + "/lib/" JFW_PLUGIN_ARCH "/jrockit/libjvm.so", +- "/lib/server/libjvm.so" ++ "/lib/client/libjvm.so", ++ "/lib/minimal/libjvm.so", ++ "/lib/server/libjvm.so", ++ "/lib/zero/libjvm.so" + #endif + }; + *size = std::size(ar); +@@ -78,7 +83,9 @@ char const* const* SunInfo::getLibraryPaths(int* size) + #if defined UNX && !defined MACOSX + static char const * ar[] = { + "/lib/" JFW_PLUGIN_ARCH "/client", ++ "/lib/" JFW_PLUGIN_ARCH "/minimal", + "/lib/" JFW_PLUGIN_ARCH "/server", ++ "/lib/" JFW_PLUGIN_ARCH "/zero", + "/lib/" JFW_PLUGIN_ARCH "/native_threads", + ("/lib/" JFW_PLUGIN_ARCH) + }; +-- +2.39.2 + diff --git a/debian/patches/jurt-soffice-location.diff b/debian/patches/jurt-soffice-location.diff new file mode 100644 index 00000000000..aa334d8ea4d --- /dev/null +++ b/debian/patches/jurt-soffice-location.diff @@ -0,0 +1,20 @@ +commit b71107fb12e3c3125e0cb62c5a4f6636a80c6408 +Author: Bjoern Michaelsen +AuthorDate: Tue Jun 7 11:52:37 2011 +0200 +Commit: Bjoern Michaelsen +CommitDate: Tue Jun 7 11:52:37 2011 +0200 + + on debian-based systems, we know where our soffice binary is + +diff --git a/jurt/com/sun/star/lib/util/NativeLibraryLoader.java b/jurt/com/sun/star/lib/util/NativeLibraryLoader.jav +index da22980..36664ca 100644 +--- libreoffice-3.5.0/ridljar/com/sun/star/lib/util/NativeLibraryLoader.java ++++ libreoffice-3.5.0/ridljar/com/sun/star/lib/util/NativeLibraryLoader.java +@@ -111,6 +111,8 @@ public final class NativeLibraryLoader { + } + } + } ++ if (name.equals("soffice")) ++ return new File("/usr/lib/libreoffice/program/soffice"); + return null; + } diff --git a/debian/patches/lo-xlate-lang-add-tl.diff b/debian/patches/lo-xlate-lang-add-tl.diff new file mode 100644 index 00000000000..574f05474fe --- /dev/null +++ b/debian/patches/lo-xlate-lang-add-tl.diff @@ -0,0 +1,12 @@ +diff --git a/bin/lo-xlate-lang b/bin/lo-xlate-lang +index 9b939012e99a..967a188c14e5 100755 +--- a/bin/lo-xlate-lang ++++ b/bin/lo-xlate-lang +@@ -178,6 +178,7 @@ __DATA__ + :gug:guarani + :szl:upper_silesian + :hy:armenian ++:tl:tagalog + 01:en-US:english_american + 03:pt:portuguese + 07:ru:russian diff --git a/debian/patches/make-package-modules-not-suck.diff b/debian/patches/make-package-modules-not-suck.diff new file mode 100644 index 00000000000..4b652354cf5 --- /dev/null +++ b/debian/patches/make-package-modules-not-suck.diff @@ -0,0 +1,210 @@ +diff --git a/scp2/InstallModule_draw.mk b/scp2/InstallModule_draw.mk +index a7c02be..d48edf2 100644 +--- a/scp2/InstallModule_draw.mk ++++ b/scp2/InstallModule_draw.mk +@@ -10,6 +10,7 @@ + $(eval $(call gb_InstallModule_InstallModule,scp2/draw)) + + $(eval $(call gb_InstallModule_use_auto_install_libs,scp2/draw,\ ++ draw \ + draw_brand \ + )) + +diff --git a/scp2/source/draw/module_draw.scp b/scp2/source/draw/module_draw.scp +index 8737579..0913c61 100644 +--- a/scp2/source/draw/module_draw.scp ++++ b/scp2/source/draw/module_draw.scp +@@ -18,6 +18,7 @@ + + #include "macros.inc" + ++#include "AutoInstall/draw" + #include "AutoInstall/draw_brand" + + Module gid_Module_Prg_Draw +@@ -34,7 +35,8 @@ Module gid_Module_Prg_Draw_Bin + Sortkey = "100"; + Default = YES; + Styles = (HIDDEN_ROOT); +- Files = (gid_File_Extra_Urldesktop_Draw,gid_File_Extra_Urlnew_Draw,gid_File_Extra_Urlstart_Draw,gid_File_Extra_Urltasks_Draw, ++ Files = (auto_draw_ALL, ++ gid_File_Extra_Urldesktop_Draw,gid_File_Extra_Urlnew_Draw,gid_File_Extra_Urlstart_Draw,gid_File_Extra_Urltasks_Draw, + gid_File_Share_Registry_Draw_Xcd, + gid_File_Tmp_Userinstall_Draw_Inf); + End +diff --git a/scp2/AutoInstall.mk b/scp2/AutoInstall.mk +index 7d2a347..a15ac52 100644 +--- a/scp2/AutoInstall.mk ++++ b/scp2/AutoInstall.mk +@@ -17,6 +17,7 @@ $(eval $(call gb_AutoInstall_add_module,base_brand,,LIBO_EXECUTABLE,,PACKAGE_FIL + $(eval $(call gb_AutoInstall_add_module,brand,,LIBO_EXECUTABLE,,PACKAGE_FILELIST)) + $(eval $(call gb_AutoInstall_add_module,calc,LIBO_LIB_FILE,,,PACKAGE_FILELIST)) + $(eval $(call gb_AutoInstall_add_module,calc_brand,,LIBO_EXECUTABLE,,PACKAGE_FILELIST)) ++$(eval $(call gb_AutoInstall_add_module,draw,LIBO_LIB_FILE)) + $(eval $(call gb_AutoInstall_add_module,draw_brand,,LIBO_EXECUTABLE,,PACKAGE_FILELIST)) + $(eval $(call gb_AutoInstall_add_module,extensions_bsh,,,LIBO_JAR_FILE)) + $(eval $(call gb_AutoInstall_add_module,extensions_numbertext,,,,PACKAGE_FILELIST)) +diff --git a/Repository.mk b/Repository.mk +index f386b8aa7c05..7c337f23891b 100644 +--- a/Repository.mk ++++ b/Repository.mk +@@ -244,13 +244,29 @@ $(eval $(call gb_Helper_register_executables_for_install,UREBIN,ure,\ + + $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,base, \ + abp \ ++ calc \ ++ dba \ ++ dbahsql \ ++ $(call gb_Helper_optional,DBCONNECTIVITY, \ ++ dbase \ ++ dbaxml) \ + dbp \ + dbu \ ++ $(call gb_Helper_optional,DBCONNECTIVITY,flat) \ ++ $(if $(ENABLE_JAVA),jdbc) \ ++ $(call gb_Helper_optional,DBCONNECTIVITY,mysql_jdbc) \ ++ $(call gb_Helper_optional,MARIADBC,$(call gb_Helper_optional,DBCONNECTIVITY,mysqlc)) \ ++ odbc \ ++)) ++ ++$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,base, \ ++ $(call gb_Helper_optional,DBCONNECTIVITY,dbpool2) \ ++ $(if $(ENABLE_JAVA),hsqldb) \ ++ sdbc2 \ + )) + + $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,calc, \ + analysis \ +- $(call gb_Helper_optional,DBCONNECTIVITY,calc) \ + date \ + pricing \ + sc \ +@@ -265,6 +281,12 @@ $(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,calc, \ + scui \ + )) + ++$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,draw, \ ++ animcore \ ++ sd \ ++ sdd \ ++)) ++ + $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,graphicfilter, \ + svgfilter \ + wpftdraw \ +@@ -272,10 +295,10 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,graphicfilter, \ + )) + + $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,impress, \ +- animcore \ + PresentationMinimizer \ + wpftimpress \ ++ slideshow \ + )) + + $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,onlineupdate, \ + $(if $(ENABLE_ONLINE_UPDATE), \ +@@ -355,11 +378,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ + $(if $(filter $(OS),WNT),,cmdmail) \ + configmgr \ + ctl \ +- dba \ +- dbahsql \ +- $(call gb_Helper_optional,DBCONNECTIVITY, \ +- dbase \ +- dbaxml) \ + dbtools \ + deploymentmisc \ + $(if $(filter-out MACOSX WNT,$(OS)),desktopbe1) \ +@@ -373,7 +391,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ + $(if $(filter WNT,$(OS)),emser) \ + evtatt \ + $(call gb_Helper_optional,DBCONNECTIVITY, \ +- flat \ + file) \ + filterconfig \ + fps_office \ +@@ -412,7 +412,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ + $(call gb_Helper_optionals_or,HELPTOOLS XMLHELP,helplinker) \ + i18npool \ + i18nsearch \ +- $(if $(ENABLE_JAVA),jdbc) \ + $(if $(filter WNT,$(OS)),jumplist) \ + $(if $(ENABLE_LDAP),ldapbe2) \ + $(if $(filter WNT,$(OS)),WinUserInfoBe) \ +@@ -403,10 +419,7 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ + msfilter \ + $(call gb_Helper_optional,SCRIPTING,msforms) \ + mtfrenderer \ +- $(call gb_Helper_optional,DBCONNECTIVITY,mysql_jdbc) \ +- $(call gb_Helper_optional,MARIADBC,$(call gb_Helper_optional,DBCONNECTIVITY,mysqlc)) \ + numbertext \ +- odbc \ + odfflatxml \ + offacc \ + oox \ +@@ -443,10 +443,7 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ + sb \ + $(call gb_Helper_optional,DBCONNECTIVITY,sdbt) \ + scn \ +- sd \ +- sdd \ + sfx \ +- slideshow \ + sot \ + $(if $(or $(DISABLE_GUI),$(ENABLE_WASM_STRIP_SPLASH)),,spl) \ + storagefd \ +@@ -436,7 +445,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ + svt \ + svx \ + svxcore \ +- sw \ + syssh \ + textconversiondlgs \ + textfd \ +@@ -506,12 +501,15 @@ $(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,ooo, \ + $(if $(ENABLE_CUSTOMTARGET_COMPONENTS),components) \ + cui \ + icg \ +- sdui \ + $(if $(ENABLE_GEN),vclplug_gen) \ + $(if $(filter $(OS),WNT),vclplug_win) \ + $(if $(filter $(OS),MACOSX),vclplug_osx) \ + )) + ++$(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,draw, \ ++ sdui \ ++)) ++ + $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,postgresqlsdbc, \ + $(if $(BUILD_POSTGRESQL_SDBC), \ + postgresql-sdbc \ +@@ -529,6 +540,7 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,writer, \ + hwp \ + $(if $(ENABLE_LWP),lwpft) \ + msword \ ++ sw \ + swd \ + t602filter \ + $(call gb_Helper_optional,SCRIPTING,vbaswobj) \ +@@ -622,12 +634,10 @@ $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \ + ) \ + cached1 \ + comphelper \ +- $(call gb_Helper_optional,DBCONNECTIVITY,dbpool2) \ + $(call gb_Helper_optional,BREAKPAD,crashreport) \ + deployment \ + deploymentgui \ + embobj \ +- $(if $(ENABLE_JAVA),hsqldb) \ + i18nutil \ + $(if $(and $(ENABLE_GTK3), $(filter LINUX %BSD SOLARIS,$(OS))), libreofficekitgtk) \ + $(if $(and $(ENABLE_GTKTILEDVIEWER), $(filter WNT,$(OS))), libreofficekitgtk) \ +@@ -636,7 +646,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \ + emboleobj \ + package2 \ + $(call gb_Helper_optional,SCRIPTING,scriptframe) \ +- sdbc2 \ + sofficeapp \ + srtrs1 \ + ucb1 \ diff --git a/debian/patches/mediwiki-oor-replace.diff b/debian/patches/mediwiki-oor-replace.diff new file mode 100644 index 00000000000..ed04c917e35 --- /dev/null +++ b/debian/patches/mediwiki-oor-replace.diff @@ -0,0 +1,51 @@ +diff --git a/swext/mediawiki/src/registry/data/org/openoffice/Office/OptionsDialog.xcu b/swext/mediawiki/src/registry/data/org/openoffice/Office/OptionsDialog.xcu +index 2b35ced08f31..0c96070dd4f0 100644 +--- a/swext/mediawiki/src/registry/data/org/openoffice/Office/OptionsDialog.xcu ++++ b/swext/mediawiki/src/registry/data/org/openoffice/Office/OptionsDialog.xcu +@@ -18,9 +18,9 @@ + --> + + +- ++ + +- ++ + + com.sun.wiki-publisher + +diff --git a/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Filter.xcu b/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Filter.xcu +index 3309b503824c..261e470b253b 100644 +--- a/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Filter.xcu ++++ b/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Filter.xcu +@@ -19,7 +19,7 @@ + + + +- ++ + 0 + MediaWiki + com.sun.star.text.TextDocument +@@ -31,7 +31,7 @@ + + EXPORT ALIEN 3RDPARTYFILTER + +- ++ + 0 + MediaWiki + com.sun.star.text.WebDocument +diff --git a/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Types.xcu b/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Types.xcu +index 15e4f850041a..ce7cd0763b79 100644 +--- a/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Types.xcu ++++ b/swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Types.xcu +@@ -19,7 +19,7 @@ + + + +- ++ + com.sun.star.comp.filters.XMLFilterDetect + + txt diff --git a/debian/patches/mention-java-common-package.diff b/debian/patches/mention-java-common-package.diff new file mode 100644 index 00000000000..f9b5078fd86 --- /dev/null +++ b/debian/patches/mention-java-common-package.diff @@ -0,0 +1,35 @@ +diff --git a/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx b/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx +index 718902caba6f..3c8499b5a42c 100644 +--- a/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx ++++ b/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx +@@ -141,6 +141,9 @@ static bool findAndSelect(JavaInfo ** ppInfo) + if (errcode == JFW_E_NO_JAVA_FOUND) + { + fprintf(stderr,"javaldx: Could not find a Java Runtime Environment!\n"); ++ fprintf(stderr,"Please ensure that a JVM and the package libreoffice-java-common\n"); ++ fprintf(stderr,"is installed.\n"); ++ fprintf(stderr,"If it is already installed then try removing ~/.config/libreoffice/4/user/config/javasettings_Linux_*.xml\n"); + return false; + } + else if (errcode != JFW_E_NONE && errcode != JFW_E_DIRECT_MODE) +diff --git a/include/svtools/strings.hrc b/include/svtools/strings.hrc +index f9dc617f4313..874b0400cbc5 100644 +--- a/include/svtools/strings.hrc ++++ b/include/svtools/strings.hrc +@@ -267,13 +267,13 @@ + #define STR_WARNING_EXTERNAL_LINK_EDIT_DISABLED NC_("STR_ERROR_EXTERNAL_LINK_EDIT_DISABLED", "It is not possible to edit external links. Active content is disabled in the security settings.") + #define STR_SVT_DEFAULT_SERVICE_LABEL NC_("STR_SVT_DEFAULT_SERVICE_LABEL", "$user$'s $service$") + +-#define STR_WARNING_JAVANOTFOUND NC_("STR_WARNING_JAVANOTFOUND", "%PRODUCTNAME requires a Java runtime environment (JRE) to perform this task. Please install a JRE and restart %PRODUCTNAME. %FAQLINK") ++#define STR_WARNING_JAVANOTFOUND NC_("STR_WARNING_JAVANOTFOUND", "%PRODUCTNAME requires a Java runtime environment (JRE) to perform this task. Please install a JRE (and libreoffice-java-common) and restart %PRODUCTNAME. %FAQLINK") + #define STR_WARNING_JAVANOTFOUND_WIN NC_("STR_WARNING_JAVANOTFOUND_WIN", "%PRODUCTNAME requires a %BITNESS-bit Java runtime environment (JRE) to perform this task. Please install a JRE and restart %PRODUCTNAME. %FAQLINK") + #define STR_WARNING_JAVANOTFOUND_MAC NC_("STR_WARNING_JAVANOTFOUND_MAC", "%PRODUCTNAME requires Oracle's Java Development Kit (JDK) on macOS 10.10 or greater to perform this task. Please install them and restart %PRODUCTNAME. %FAQLINK") + #define STR_WARNING_INVALIDJAVASETTINGS_MAC NC_("STR_WARNING_INVALIDJAVASETTINGS_MAC", "The %PRODUCTNAME configuration has been changed. Under %PRODUCTNAME - Preferences - %PRODUCTNAME - Advanced, select the Java runtime environment you want to have used by %PRODUCTNAME.") +-#define STR_WARNING_INVALIDJAVASETTINGS NC_("STR_WARNING_INVALIDJAVASETTINGS", "The %PRODUCTNAME configuration has been changed. Under Tools - Options - %PRODUCTNAME - Advanced, select the Java runtime environment you want to have used by %PRODUCTNAME.") ++#define STR_WARNING_INVALIDJAVASETTINGS NC_("STR_WARNING_INVALIDJAVASETTINGS", "The %PRODUCTNAME configuration has been changed. Under Tools - Options - %PRODUCTNAME - Advanced, select the Java runtime environment you want to have used by %PRODUCTNAME. Maybe you also need to install libreoffice-java-common.") + #define STR_ERROR_JVMCREATIONFAILED_MAC NC_("STR_ERROR_JVMCREATIONFAILED_MAC", "%PRODUCTNAME requires a Java runtime environment (JRE) to perform this task. The selected JRE is defective. Please select another version or install a new JRE and select it under %PRODUCTNAME - Preferences - %PRODUCTNAME - Advanced.") +-#define STR_ERROR_JVMCREATIONFAILED NC_("STR_ERROR_JVMCREATIONFAILED", "%PRODUCTNAME requires a Java runtime environment (JRE) to perform this task. The selected JRE is defective. Please select another version or install a new JRE and select it under Tools - Options - %PRODUCTNAME - Advanced.") ++#define STR_ERROR_JVMCREATIONFAILED NC_("STR_ERROR_JVMCREATIONFAILED", "%PRODUCTNAME requires a Java runtime environment (JRE) to perform this task. The selected JRE is defective. Please select another version or install a new JRE and select it under Tools - Options - %PRODUCTNAME - Advanced or install libreoffice-java-common if not already installed.") + #define STR_WARNING_JAVANOTFOUND_TITLE NC_("STR_WARNING_JAVANOTFOUND_TITLE", "JRE Required") + #define STR_WARNING_INVALIDJAVASETTINGS_TITLE NC_("STR_WARNING_INVALIDJAVASETTINGS_TITLE", "Select JRE") + #define STR_ERROR_JVMCREATIONFAILED_TITLE NC_("STR_ERROR_JVMCREATIONFAILED_TITLE", "JRE is Defective") diff --git a/debian/patches/moreIconsDialog-accesses-internet.diff b/debian/patches/moreIconsDialog-accesses-internet.diff new file mode 100644 index 00000000000..77f9c3f6fc6 --- /dev/null +++ b/debian/patches/moreIconsDialog-accesses-internet.diff @@ -0,0 +1,21 @@ +diff --git a/cui/source/dialogs/AdditionsDialog.cxx b/cui/source/dialogs/AdditionsDialog.cxx +index a8eabf6d369c..676add18204e 100644 +--- a/cui/source/dialogs/AdditionsDialog.cxx ++++ b/cui/source/dialogs/AdditionsDialog.cxx +@@ -277,9 +277,13 @@ SearchAndParseThread::SearchAndParseThread(AdditionsDialog* pDialog, const bool + , m_bExecute(true) + , m_bIsFirstLoading(isFirstLoading) + { +- // if we are running a UITest, e.g. UITest_sw_options then +- // don't attempt to downloading anything +- m_bUITest = o3tl::IsRunningUITest(); ++ if (getenv("AUTOPKGTEST_TMP") != NULL) { ++ m_bUITest = false; // run always in autopkgtest ++ } else { ++ // if we are running a UITest, e.g. UITest_sw_options then ++ // don't attempt to downloading anything ++ m_bUITest = o3tl::IsRunningUITest(); ++ } + } + + SearchAndParseThread::~SearchAndParseThread() {} diff --git a/debian/patches/no-opencl-per-default.diff b/debian/patches/no-opencl-per-default.diff new file mode 100644 index 00000000000..5a5b0853c33 --- /dev/null +++ b/debian/patches/no-opencl-per-default.diff @@ -0,0 +1,26 @@ +From b54cfe9d3d22fdd40f7015bd343df8620c983779 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= +Date: Mon, 27 Mar 2017 11:47:01 +0100 +Subject: [PATCH] Resolves: rhbz#1432468 disable opencl by default + +Change-Id: Ie037fcabdd219f195425979dd721501fb5527573 +--- + officecfg/registry/schema/org/openoffice/Office/Common.xcs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs +index 946bd32..284d694 100644 +--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs ++++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs +@@ -5670,7 +5670,7 @@ + Determines whether OpenCL can be used, when available, to speed up + some operations. + +- true ++ false + + + +-- +2.9.3 + diff --git a/debian/patches/no-packagekit-per-default.diff b/debian/patches/no-packagekit-per-default.diff new file mode 100644 index 00000000000..a496c702169 --- /dev/null +++ b/debian/patches/no-packagekit-per-default.diff @@ -0,0 +1,21 @@ +diff --git a/officecfg/registry/data/org/openoffice/Office/Common.xcu b/officecfg/registry/data/org/openoffice/Office/Common.xcu +index 3d138551b593..9cb9831f3236 100644 +--- a/officecfg/registry/data/org/openoffice/Office/Common.xcu ++++ b/officecfg/registry/data/org/openoffice/Office/Common.xcu +@@ -551,13 +551,13 @@ + + + +- true ++ false + + +- true ++ false + + +- true ++ false + + + diff --git a/debian/patches/pdfium-ports.diff b/debian/patches/pdfium-ports.diff new file mode 100644 index 00000000000..2f450f5e60b --- /dev/null +++ b/debian/patches/pdfium-ports.diff @@ -0,0 +1,42 @@ +--- a/external/pdfium/debian-ports.diff 2024-03-04 21:33:17.133064736 +0100 ++++ b/external/pdfium/debian-ports.diff 2024-03-05 16:52:13.688932548 +0100 +@@ -0,0 +1,28 @@ ++--- build/build_config.h 2024-03-05 16:50:08.624785549 +0100 +++++ build/build_config.h 2024-03-05 16:50:55.616839071 +0100 ++@@ -350,6 +350,25 @@ ++ #define ARCH_CPU_RISCV64 1 ++ #define ARCH_CPU_64_BITS 1 ++ #define ARCH_CPU_LITTLE_ENDIAN 1 +++#elif defined(__sparc__) +++#define ARCH_CPU_BIG_ENDIAN 1 +++#if defined(__arch64__) +++#define ARCH_CPU_64_BITS 1 +++#else +++#define ARCH_CPU_32_BITS 1 +++#endif +++#elif defined(__m68k__) +++#define ARCH_CPU_32_BITS 1 +++#define ARCH_CPU_BIG_ENDIAN 1 +++#elif defined(__hppa__) +++#define ARCH_CPU_32_BITS 1 +++#define ARCH_CPU_BIG_ENDIAN 1 +++#elif defined(__alpha__) +++#define ARCH_CPU_64_BITS 1 +++#define ARCH_CPU_LITTLE_ENDIAN 1 +++#elif defined(__ia64__) +++#define ARCH_CPU_64_BITS 1 +++#define ARCH_CPU_LITTLE_ENDIAN 1 ++ #else ++ #error Please add support for your architecture in build/build_config.h ++ #endif +--- a/external/pdfium/UnpackedTarball_pdfium.mk 2024-03-05 16:54:17.425089179 +0100 ++++ b/external/pdfium/UnpackedTarball_pdfium.mk 2024-03-05 16:54:31.949108078 +0100 +@@ -18,6 +18,8 @@ + + pdfium_patches += system-abseil.diff + ++pdfium_patches += debian-ports.diff ++ + $(eval $(call gb_UnpackedTarball_UnpackedTarball,pdfium)) + + $(eval $(call gb_UnpackedTarball_set_tarball,pdfium,$(PDFIUM_TARBALL))) diff --git a/debian/patches/qt-avmedia-handle-null-media-player.diff b/debian/patches/qt-avmedia-handle-null-media-player.diff new file mode 100644 index 00000000000..399109580c1 --- /dev/null +++ b/debian/patches/qt-avmedia-handle-null-media-player.diff @@ -0,0 +1,81 @@ +From 4cebd9308658f094d4738710e9f8427f0f6f8aea Mon Sep 17 00:00:00 2001 +From: Michael Weghorn +Date: Sat, 22 Mar 2025 16:15:41 -0700 +Subject: tdf#165870 qt avmedia: Handle null media player + +QtPlayer::m_xMediaPlayer can be null, e.g. in a PPTX file +created in PowerPoint that contains an external video link to +Youtube, so handle that case gracefully instead of asserting/crashing. + +Backtrace of assert getting triggered without this change in place: + + 1 __pthread_kill_implementation pthread_kill.c 44 0x7ffff789e95c + 2 __pthread_kill_internal pthread_kill.c 89 0x7ffff789e9ff + 3 __GI_raise raise.c 26 0x7ffff7849cc2 + 4 __GI_abort abort.c 73 0x7ffff78324ac + 5 __assert_fail_base assert.c 118 0x7ffff7832420 + 6 avmedia::qt::QtPlayer::stop QtPlayer.cxx 75 0x7fff980b1675 + 7 avmedia::qt::QtPlayer::disposing QtPlayer.cxx 281 0x7fff980b34f7 + 8 cppu::WeakComponentImplHelperBase::dispose implbase.cxx 104 0x7ffff5b3de60 + 9 cppu::PartialWeakComponentImplHelper::dispose compbase.hxx 90 0x7fff980b0455 + 10 avmedia::qt::QtManager::createPlayer QtManager.cxx 32 0x7fff980afc7e + 11 non-virtual thunk to avmedia::qt::QtManager::createPlayer(rtl::OUString const&) 0x7fff980afdbc + 12 avmedia::priv::MediaWindowImpl::createPlayer mediawindow_impl.cxx 212 0x7ffff0bf0d40 + 13 avmedia::priv::MediaWindowImpl::createPlayer mediawindow_impl.cxx 193 0x7ffff0bf0a7e + 14 avmedia::MediaWindow::createPlayer mediawindow.cxx 364 0x7ffff0be5860 + 15 slideshow::internal::ViewMediaShape::implInitializeMediaPlayer viewmediashape.cxx 391 0x7fff65284f52 + 16 slideshow::internal::ViewMediaShape::implInitialize viewmediashape.cxx 309 0x7fff652839ab + 17 slideshow::internal::ViewMediaShape::startMedia viewmediashape.cxx 107 0x7fff652832b1 + 18 slideshow::internal::(anonymous namespace)::MediaShape::implStartIntrinsicAnimation mediashape.cxx 212 0x7fff6526578e + 19 slideshow::internal::ExternalShapeBase::ExternalShapeBaseListener::enableAnimations externalshapebase.cxx 68 0x7fff65259ccd + [...] + +Change-Id: I6978f27d9b756a0fa8492d06bed57e805ca23a0c +Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183228 +Tested-by: Jenkins +Reviewed-by: Michael Weghorn +(cherry picked from commit b1576ba17a4111f02fc6f8e27c09c78dbd7fd963) +Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183230 +Reviewed-by: Michael Stahl +--- + avmedia/source/qt6/QtPlayer.cxx | 18 ++++++++++++------ + 1 file changed, 12 insertions(+), 6 deletions(-) + +diff --git a/avmedia/source/qt6/QtPlayer.cxx b/avmedia/source/qt6/QtPlayer.cxx +index 23460c92d675..b1d5fbb85370 100644 +--- a/avmedia/source/qt6/QtPlayer.cxx ++++ b/avmedia/source/qt6/QtPlayer.cxx +@@ -72,9 +72,11 @@ void SAL_CALL QtPlayer::stop() + { + osl::MutexGuard aGuard(m_aMutex); + +- assert(m_xMediaPlayer); +- // don't use QMediaPlayer::stop because XPlayer::stop should leave the position unchanged +- m_xMediaPlayer->pause(); ++ if (m_xMediaPlayer) ++ { ++ // don't use QMediaPlayer::stop because XPlayer::stop should leave the position unchanged ++ m_xMediaPlayer->pause(); ++ } + } + + sal_Bool SAL_CALL QtPlayer::isPlaying() +@@ -284,9 +286,13 @@ void SAL_CALL QtPlayer::disposing() + + QtPlayer::~QtPlayer() + { +- // ensure output objects get deleted as QMediaPlayer doesn't take ownership of them +- std::unique_ptr xVideoWidget(m_xMediaPlayer->videoOutput()); +- std::unique_ptr xAudioOutput(m_xMediaPlayer->audioOutput()); ++ if (m_xMediaPlayer) ++ { ++ // ensure output objects get deleted as QMediaPlayer doesn't take ownership of them ++ std::unique_ptr xVideoWidget(m_xMediaPlayer->videoOutput()); ++ std::unique_ptr xAudioOutput(m_xMediaPlayer->audioOutput()); ++ } ++ + m_xMediaPlayer.reset(); + } + +-- +cgit v1.2.3 diff --git a/debian/patches/reportdesign-mention-package.diff b/debian/patches/reportdesign-mention-package.diff new file mode 100644 index 00000000000..f85471bf069 --- /dev/null +++ b/debian/patches/reportdesign-mention-package.diff @@ -0,0 +1,13 @@ +diff --git a/dbaccess/inc/strings.hrc b/dbaccess/inc/strings.hrc +index 47068f43d09e..1f8b9a2331b6 100644 +--- a/dbaccess/inc/strings.hrc ++++ b/dbaccess/inc/strings.hrc +@@ -349,7 +349,7 @@ + #define STR_WARNINGS_DURING_CONNECT NC_("STR_WARNINGS_DURING_CONNECT", "Warnings were encountered while connecting to the data source. Press \"$buttontext$\" to view them.") + #define STR_NAMED_OBJECT_ALREADY_EXISTS NC_("STR_NAMED_OBJECT_ALREADY_EXISTS", "The name '$#$' already exists.\nPlease enter another name." ) + // #i96130# use hard coded name +-#define RID_STR_EXTENSION_NOT_PRESENT NC_("RID_STR_EXTENSION_NOT_PRESENT", "The report, \"$file$\", requires the Report Builder feature.") ++#define RID_STR_EXTENSION_NOT_PRESENT NC_("RID_STR_EXTENSION_NOT_PRESENT", "The report, \"$file$\", requires the Report Builder feature. For this, install the package 'libreoffice-report-builder'.") + + #define STR_COULDNOTCREATE_DRIVERMANAGER NC_("STR_COULDNOTCREATE_DRIVERMANAGER", "Cannot connect to the SDBC driver manager (#servicename#).") + #define STR_NOREGISTEREDDRIVER NC_("STR_NOREGISTEREDDRIVER", "A driver is not registered for the URL #connurl#.") diff --git a/debian/patches/revert-67cffdf1b2872b4bcac657f7bcf63f19c261a5c6.diff b/debian/patches/revert-67cffdf1b2872b4bcac657f7bcf63f19c261a5c6.diff new file mode 100644 index 00000000000..f559727f9a8 --- /dev/null +++ b/debian/patches/revert-67cffdf1b2872b4bcac657f7bcf63f19c261a5c6.diff @@ -0,0 +1,43 @@ +From 041ccc2af2406884f3b1f5efc6bdb51952db5c8c Mon Sep 17 00:00:00 2001 +From: Aron Budea +Date: Mon, 21 Apr 2025 17:23:26 +0930 +Subject: tdf#165917: Revert "tdf#165228 Don't reuse previous path in save + dialog" + +This has been partially resolved in 25.8 by +3fa39a4dadc8e2777185465a6f7c9968c8cf44d1. + +Since that is only a partial fix (see eg. tdf#165392), and was +not backported, let's revert in release versions due to number +of reports. + +This reverts commit 67cffdf1b2872b4bcac657f7bcf63f19c261a5c6. + +Change-Id: I69f230ef1fca77d5636feec0895b9ca81346f4a1 +Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184405 +Tested-by: Jenkins +Tested-by: Gabor Kelemen +Reviewed-by: Aron Budea +(cherry picked from commit 446fe1d1b85ee98a4b8146c921e7eea22ed7e3a5) +Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184503 +Reviewed-by: Christian Lohmaier +Tested-by: Christian Lohmaier +Reviewed-by: Xisco Fauli +--- + sfx2/source/dialog/filedlghelper.cxx | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/sfx2/source/dialog/filedlghelper.cxx b/sfx2/source/dialog/filedlghelper.cxx +index dce3103de3cc..07325adf3085 100644 +--- a/sfx2/source/dialog/filedlghelper.cxx ++++ b/sfx2/source/dialog/filedlghelper.cxx +@@ -1476,7 +1476,6 @@ ErrCode FileDialogHelper_Impl::execute( std::vector& rpURLList, + } + + rpURLList.clear(); +- maPath.clear(); // tdf#147202 This should not survive between calls to execute + + if ( ! mxFileDlg.is() ) + return ERRCODE_ABORT; +-- +cgit v1.2.3 \ No newline at end of file diff --git a/debian/patches/revert-858c452e5e6b7acad6932df7d1cd2f0950d47f33.diff b/debian/patches/revert-858c452e5e6b7acad6932df7d1cd2f0950d47f33.diff new file mode 100644 index 00000000000..9e2e8c62dba --- /dev/null +++ b/debian/patches/revert-858c452e5e6b7acad6932df7d1cd2f0950d47f33.diff @@ -0,0 +1,43 @@ +From 8c30f92794e44288479ada296d6d72540c11467f Mon Sep 17 00:00:00 2001 +From: Justin Luth +Date: Sat, 22 Mar 2025 13:15:10 +0100 +Subject: Revert "tdf#164201 docx convert-to: prefer Word 2010–365 Document, + not 2007" +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This reverts 25.2.0.2 commit 858c452e5e6b7acad6932df7d1cd2f0950d47f33 +on the 25.2 branch only. It is fine to remain on 25.8. + +Reason for revert: There is a follow-up commit in bug 164201 that is necessary for Microsoft to be able to fully read the document. That necessary piece is only in 25.8. Making this seemingly simple change has a lot more implications than expected (primarily by Microsoft not being able to read files created according to their own specs). So I am not comfortable recommending that it be backported to a nearly-stable 25.2. Thus simply revert this optimistically-backported commit. + +The specific problem that lead to the follow-up patch was the loss of create/modified date/time fields (seen only in MS Word). + +The specific problem that lead to this revert is content controls only showing the placeholder text, and not the real text (seen only in MS Word). + +Change-Id: I2e3d0e835282938dff86d80b17b8bb22958a0622 +Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183222 +Reviewed-by: Justin Luth +Tested-by: Jenkins +Reviewed-by: Adolfo Jayme Barrientos +--- + filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu b/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu +index e163be7cafa2..11396057a026 100644 +--- a/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu ++++ b/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu +@@ -20,7 +20,7 @@ + + docx + application/msword +- false ++ true + MS Word 2007 XML + Word 2007 + MSWordDoc +-- +cgit v1.2.3 + diff --git a/debian/patches/search-usr-share-for-images.diff b/debian/patches/search-usr-share-for-images.diff new file mode 100644 index 00000000000..6b91fcc127e --- /dev/null +++ b/debian/patches/search-usr-share-for-images.diff @@ -0,0 +1,137 @@ +diff --git a/vcl/inc/impimagetree.hxx b/vcl/inc/impimagetree.hxx +index 41c4f56..93d80f1 100644 +--- a/vcl/inc/impimagetree.hxx ++++ b/vcl/inc/impimagetree.hxx +@@ -85,6 +85,10 @@ private: + typedef boost::unordered_map< + rtl::OUString, std::pair< bool, BitmapEx >, rtl::OUStringHash > IconCache; + ++ // we want to search zip files (icons) also in /usr/share/ ++ ::rtl::OUString m_datadir; // /usr/share/ ++ ::rtl::OUString m_libdir; // /usr/lib or /usr/lib64 ++ + rtl::OUString m_style; + Zips m_zips; + CheckStyleCache m_checkStyleCache; +@@ -92,6 +96,7 @@ private: + + void setStyle(rtl::OUString const & style ); + ++ void addUrlToZips(const rtl::OUString &url); + void resetZips(); + + bool checkStyleCacheLookup( rtl::OUString const & style, bool &exists ); +diff --git a/vcl/source/gdi/impimagetree.cxx b/vcl/source/gdi/impimagetree.cxx +index 03442fc..cfe6c45 100644 +--- a/vcl/source/gdi/impimagetree.cxx ++++ b/vcl/source/gdi/impimagetree.cxx +@@ -121,7 +121,11 @@ void loadFromStream( + + } + +-ImplImageTree::ImplImageTree() {} ++ImplImageTree::ImplImageTree() ++{ ++ m_datadir = ::rtl::OUString::createFromAscii ( "/usr/share/" ); ++ m_libdir = ::rtl::OUString::createFromAscii ( "/usr/lib/" ); ++} + + ImplImageTree::~ImplImageTree() {} + +@@ -259,6 +263,22 @@ void ImplImageTree::setStyle(rtl::OUString const & style) { + } + } + ++void ImplImageTree::addUrlToZips(const rtl::OUString &url) { ++ if ( url.getLength() == 0 ) ++ return; ++ m_zips.push_back( ++ std::make_pair( ++ url, ++ css::uno::Reference< css::container::XNameAccess >())); ++ sal_Int32 nLibDirPos = url.indexOf( m_libdir ); ++ if ( nLibDirPos >= 0 ) { ++ m_zips.push_back( ++ std::make_pair( ++ url.replaceAt( nLibDirPos, m_libdir.getLength(), m_datadir ), ++ css::uno::Reference< css::container::XNameAccess >())); ++ } ++} ++ + void ImplImageTree::resetZips() { + m_zips.clear(); + { +@@ -284,19 +304,14 @@ void ImplImageTree::resetZips() { + b.appendAscii(RTL_CONSTASCII_STRINGPARAM("_brand.zip")); + bool ok = u.Append(b.makeStringAndClear(), INetURLObject::ENCODE_ALL); + OSL_ASSERT(ok); (void) ok; +- m_zips.push_back( +- std::make_pair( +- u.GetMainURL(INetURLObject::NO_DECODE), +- css::uno::Reference< css::container::XNameAccess >())); ++ addUrlToZips(u.GetMainURL(INetURLObject::NO_DECODE)); + } + { + rtl::OUString url( + RTL_CONSTASCII_USTRINGPARAM( + "$BRAND_BASE_DIR/share/config/images_brand.zip")); + rtl::Bootstrap::expandMacros(url); +- m_zips.push_back( +- std::make_pair( +- url, css::uno::Reference< css::container::XNameAccess >())); ++ addUrlToZips(url); + } + { + rtl::OUString url( +@@ -310,10 +310,7 @@ + b.appendAscii(RTL_CONSTASCII_STRINGPARAM(".zip")); + bool ok = u.Append(b.makeStringAndClear(), INetURLObject::ENCODE_ALL); + OSL_ASSERT(ok); (void) ok; +- m_zips.push_back( +- std::make_pair( +- u.GetMainURL(INetURLObject::NO_DECODE), +- css::uno::Reference< css::container::XNameAccess >())); ++ addUrlToZips(u.GetMainURL(INetURLObject::NO_DECODE)); + } + if ( m_style == "default" ) + { +@@ -321,9 +333,7 @@ void ImplImageTree::resetZips() { + RTL_CONSTASCII_USTRINGPARAM( + "$BRAND_BASE_DIR/share/config/images.zip")); + rtl::Bootstrap::expandMacros(url); +- m_zips.push_back( +- std::make_pair( +- url, css::uno::Reference< css::container::XNameAccess >())); ++ addUrlToZips(url); + } + } + +diff --git a/xmlhelp/source/cxxhelp/provider/provider.cxx b/xmlhelp/source/cxxhelp/provider/provider.cxx +index e55fe5d..848bed7 100644 +--- a/xmlhelp/source/cxxhelp/provider/provider.cxx ++++ b/xmlhelp/source/cxxhelp/provider/provider.cxx +@@ -335,7 +335,7 @@ void ContentProvider::init() + rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( " " )) + + setupextension ); + +- uno::Sequence< rtl::OUString > aImagesZipPaths( 2 ); ++ uno::Sequence< rtl::OUString > aImagesZipPaths( 3 ); + xHierAccess = getHierAccess( sProvider, "org.openoffice.Office.Common" ); + + rtl::OUString aPath( getKey( xHierAccess, "Path/Current/UserConfig" ) ); +@@ -344,6 +344,15 @@ void ContentProvider::init() + + aPath = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("$BRAND_BASE_DIR/share/config")); + rtl::Bootstrap::expandMacros(aPath); ++ aImagesZipPaths[ 2 ] = aPath; ++ ++ // try also /usr/share and even before /usr/lib ++ ::rtl::OUString aDataDir = ::rtl::OUString::createFromAscii ( "/usr/share/" ); ++ ::rtl::OUString aLibDir = ::rtl::OUString::createFromAscii ( "/usr/lib/" ); ++ sal_Int32 nLibDirPos = aPath.indexOf( aLibDir ); ++ ++ if ( nLibDirPos >= 0 ) ++ aPath = aPath.replaceAt( nLibDirPos, aLibDir.getLength(), aDataDir ); + aImagesZipPaths[ 1 ] = aPath; + + uno::Reference< uno::XComponentContext > xContext; diff --git a/debian/patches/sensible-lomua.diff b/debian/patches/sensible-lomua.diff new file mode 100644 index 00000000000..6b98bbc4d6e --- /dev/null +++ b/debian/patches/sensible-lomua.diff @@ -0,0 +1,50 @@ +Index: libreoffice-3.6.2~rc1/officecfg/registry/data/org/openoffice/Office/Common.xcu +=================================================================== +--- libreoffice-3.6.2~rc1.orig/officecfg/registry/data/org/openoffice/Office/Common.xcu 2012-10-07 21:03:17.662850386 -0400 ++++ libreoffice-3.6.2~rc1/officecfg/registry/data/org/openoffice/Office/Common.xcu 2012-10-07 21:03:57.174850591 -0400 +@@ -655,7 +655,7 @@ + + + +- ++ sensible-lomua + + + +Index: libreoffice-3.6.2~rc1/shell/source/unix/misc/senddoc.sh +=================================================================== +--- libreoffice-3.6.2~rc1.orig/shell/source/unix/misc/senddoc.sh 2012-10-07 21:03:17.662850386 -0400 ++++ libreoffice-3.6.2~rc1/shell/source/unix/misc/senddoc.sh 2012-10-07 21:29:13.074858447 -0400 +@@ -59,6 +59,32 @@ + shift + fi + ++case `basename "$MAILER"` in ++ sensible-lomua) ++ if [ -x /usr/bin/xdg-email ] ; then ++ MAILER=/usr/bin/xdg-email ++ elif [ -n "$KDE_FULL_SESSION" -a -x /usr/bin/kde-open ] \ ++ || [ -x /usr/bin/gnome-open ] \ ++ || [ -x /usr/bin/xdg-open ]; then ++ # use an undefined mailer, to trigger the default handling ++ MAILER=undefined ++ elif [ -n "$GNOME_DESKTOP_SESSION_ID" -a -x /usr/bin/evolution ]; then ++ MAILER=/usr/bin/evolution ++ elif [ -n "$KDE_FULL_SESSION" -a -x /usr/bin/kmail ]; then ++ MAILER=/usr/bin/kmail ++ elif [ -x /usr/bin/evolution ]; then ++ # default ++ MAILER=/usr/bin/evolution ++ elif [ -x /usr/bin/icedove ]; then ++ # fallback ++ MAILER=/usr/bin/icedove ++ elif [ -x /usr/bin/thunderbird ]; then ++ # fallback ++ MAILER=/usr/bin/thunderbird ++ fi ++ ;; ++esac ++ + # autodetect mail client from executable name + case $(basename "$MAILER" | sed 's/-.*$//') in + diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 00000000000..d5122168c31 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,56 @@ +debian-opt.diff +jurt-soffice-location.diff +splits-adapt-registry.diff +debian-debug.diff +#fix-system-lpsolve-build.diff +build-against-shared-lpsolve.diff +install-fixes.diff +mention-java-common-package.diff +help-msg-add-package-info.diff +sensible-lomua.diff +reportdesign-mention-package.diff +jdbc-driver-classpaths.diff +#search-usr-share-for-images.diff +make-package-modules-not-suck.diff +mediwiki-oor-replace.diff +debian-hardened-buildflags-CPPFLAGS.diff +debian-hardened-buildflags-no-LO-fstack-protector-strong.diff +disable-flaky-tests.diff +#dont-touch-urd.diff +fix-internal-hsqldb-build.diff +javadoc-optional.diff +no-packagekit-per-default.diff +system-officeotron-and-odfvalidator.diff +cppunit-optional.diff +#disable-unused-test-programs.diff +apparmor-complain.diff +hide-math-desktop-file.patch +appstream-ignore-startcenter.diff +disable-java-in-odk-build-examples-on-zero-vm.diff +do-not-hide-test-output.diff +apparmor-allow-java.security.diff +apparmor-cleanups.diff +apparmor-mesa.diff +disableClassPathURLCheck.diff +use-mariadb-java-instead-of-mysql-java.diff +apparmor-opencl.diff +fix-flaky-bridgetest.diff +add-access2base-doc.diff +disable-shortcuts_tab_navigation-uitest.diff +no-opencl-per-default.diff +apparmor-updates.diff +apparmor-gnupg-tofu.diff +arm-fp-mode.diff +moreIconsDialog-accesses-internet.diff +do-not-abort-on-NON_APPLICATION_FONT_USE.diff +we-dont-have-the-needed-fonts.diff +adapt-for-new-carlito.diff +pdfium-ports.diff +jdk-minimal-and-zero-paths.diff +lo-xlate-lang-add-tl.diff +fix-32bits-test-build.diff +disable-uitest-xmlsecurity-gpg.diff +system-colamd.diff +revert-858c452e5e6b7acad6932df7d1cd2f0950d47f33.diff +qt-avmedia-handle-null-media-player.diff +revert-67cffdf1b2872b4bcac657f7bcf63f19c261a5c6.diff diff --git a/debian/patches/splits-adapt-registry.diff b/debian/patches/splits-adapt-registry.diff new file mode 100644 index 00000000000..e7e674b42e1 --- /dev/null +++ b/debian/patches/splits-adapt-registry.diff @@ -0,0 +1,168 @@ +diff --git a/scp2/source/gnome/file_gnome.scp b/scp2/source/gnome/file_gnome.scp +index c7a13c8..a3f59a6 100644 +--- a/scp2/source/gnome/file_gnome.scp ++++ b/scp2/source/gnome/file_gnome.scp +@@ -25,3 +25,13 @@ File gid_File_Share_Registry_Gnome_Xcd + Name = "gnome.xcd"; + End + #endif ++ ++#ifdef ENABLE_EVOAB2 ++File gid_File_Share_Registry_Evoab_Xcd ++ TXT_FILE_BODY; ++ Styles = (PACKED); ++ Dir = gid_Brand_Dir_Share_Registry; ++ Name = "evoab.xcd"; ++End ++#endif ++ +diff --git a/scp2/source/gnome/module_gnome.scp b/scp2/source/gnome/module_gnome.scp +index 08d9efe..492e274 100644 +--- a/scp2/source/gnome/module_gnome.scp ++++ b/scp2/source/gnome/module_gnome.scp +@@ -31,6 +31,9 @@ Module gid_Module_Optional_Gnome + #if ENABLE_GIO + ,gid_File_Share_Registry_Gnome_Xcd + #endif ++#ifdef ENABLE_EVOAB2 ++ ,gid_File_Share_Registry_Evoab_Xcd ++#endif + ); + End + +diff --git a/scp2/InstallModule_gnome.mk b/scp2/InstallModule_gnome.mk +index c33f4f52d67b..8f06c0273eff 100644 +--- a/scp2/InstallModule_gnome.mk ++++ b/scp2/InstallModule_gnome.mk +@@ -19,4 +19,8 @@ $(eval $(call gb_InstallModule_add_localized_scpfiles,scp2/gnome,\ + scp2/source/gnome/module_gnome \ + )) + ++$(eval $(call gb_InstallModule_define_if_set,scp2/gnome,\ ++ ENABLE_EVOAB2 \ ++)) ++ + # vim: set shiftwidth=4 tabstop=4 noexpandtab: +diff --git a/postprocess/CustomTarget_registry.mk b/postprocess/CustomTarget_registry.mk +index 4be442c49ae4..c5f5c7166fdd 100644 +--- a/postprocess/CustomTarget_registry.mk ++++ b/postprocess/CustomTarget_registry.mk +@@ -453,7 +453,9 @@ postprocess_FILES_calc += \ + postprocess_DRIVERS += calc + + ifeq ($(ENABLE_EVOAB2),TRUE) +-postprocess_FILES_main += \ ++postprocess_XCDS += evoab.xcd ++postprocess_DEPS_evoab := main ++postprocess_FILES_evoab += \ + $(call gb_XcuModuleTarget_get_target,connectivity/registry/evoab2)/org/openoffice/Office/DataAccess/Drivers-evoab2.xcu \ + $(postprocess_MOD)/org/openoffice/Office/DataAccess-evoab2.xcu + postprocess_DRIVERS += evoab +@@ -464,20 +464,27 @@ endif + + ifeq ($(ENABLE_JAVA),TRUE) ++postprocess_XCDS += hsqldb.xcd ++postprocess_DEPS_hsqldb := main ++postprocess_FILES_hsqldb += \ ++ $(call gb_XcuModuleTarget_get_target,connectivity/registry/hsqldb)/org/openoffice/Office/DataAccess/Drivers-hsqldb.xcu + postprocess_FILES_main += \ +- $(call gb_XcuModuleTarget_get_target,connectivity/registry/hsqldb)/org/openoffice/Office/DataAccess/Drivers-hsqldb.xcu \ + $(call gb_XcuModuleTarget_get_target,connectivity/registry/jdbc)/org/openoffice/Office/DataAccess/Drivers-jdbc.xcu \ + $(call gb_XcuModuleTarget_get_target,connectivity/registry/mysql_jdbc)/org/openoffice/Office/DataAccess/Drivers-mysql_jdbc.xcu + postprocess_DRIVERS += hsqldb jdbc mysql_jdbc + endif + + ifeq ($(ENABLE_FIREBIRD_SDBC),TRUE) +-postprocess_FILES_main += \ ++postprocess_XCDS += firebird_sdbc.xcd ++postprocess_DEPS_firebird_sdbc := main ++postprocess_FILES_firebird_sdbc += \ + $(call gb_XcuModuleTarget_get_target,connectivity/registry/firebird)/org/openoffice/Office/DataAccess/Drivers-firebird.xcu + postprocess_DRIVERS += firebird_sdbc + endif + + ifeq ($(ENABLE_MARIADBC),TRUE) +-postprocess_FILES_main += \ ++postprocess_XCDS += mysqlc.xcd ++postprocess_DEPS_mysqlc := main ++postprocess_FILES_mysqlc += \ + $(call gb_XcuModuleTarget_get_target,connectivity/registry/mysqlc)/org/openoffice/Office/DataAccess/Drivers-mysqlc.xcu + postprocess_DRIVERS += mysqlc + endif +diff --git a/scp2/source/base/firebird.scp b/scp2/source/base/firebird.scp +index 61cfff9cc496..0fdb2ffc6e66 100644 +--- a/scp2/source/base/firebird.scp ++++ b/scp2/source/base/firebird.scp +@@ -20,15 +20,27 @@ + + #include "AutoInstall/firebirdsdbc" + +-#if defined( ENABLE_FIREBIRD_SDBC ) && !defined( SYSTEM_FIREBIRD ) ++#if defined( ENABLE_FIREBIRD_SDBC ) ++ ++#if !defined( SYSTEM_FIREBIRD ) + + Module gid_Module_Optional_Firebird + Name = "Firebird"; + Description = "Firebird embedded database"; + PackageInfo = "packinfo_office.txt"; + ParentID = gid_Module_Root_Brand; +- Files = (auto_firebirdsdbc_ALL); ++ Files = (auto_firebirdsdbc_ALL, ++ gid_File_FirebirdSdbc_Xcd); + Styles = (HIDDEN_ROOT); + End + + #endif ++ ++File gid_File_FirebirdSdbc_Xcd ++ TXT_FILE_BODY; ++ Dir = gid_Brand_Dir_Share_Registry; ++ Name = "firebird_sdbc.xcd"; ++ Styles = (PACKED); ++End ++ ++#endif +diff --git a/scp2/InstallModule_base.mk b/scp2/InstallModule_base.mk +index 709d1493e0d8..52318117cd49 100644 +--- a/scp2/InstallModule_base.mk ++++ b/scp2/InstallModule_base.mk +@@ -29,6 +29,7 @@ $(eval $(call gb_InstallModule_add_templates,scp2/base,\ + $(eval $(call gb_InstallModule_add_scpfiles,scp2/base,\ + scp2/source/base/file_base \ + scp2/source/base/firebird \ ++ scp2/source/base/hsqldb \ + )) + + $(eval $(call gb_InstallModule_add_localized_scpfiles,scp2/base,\ +--- a/scp2/source/base/hsqldb.scp 2025-02-15 08:57:11.237759355 +0100 ++++ b/scp2/source/base/hsqldb.scp 2025-02-15 17:45:20.400734156 +0100 +@@ -0,0 +1,28 @@ ++/* ++ * This file is part of the LibreOffice project. ++ * ++ * This Source Code Form is subject to the terms of the Mozilla Public ++ * License, v. 2.0. If a copy of the MPL was not distributed with this ++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. ++ * ++ * This file incorporates work covered by the following license notice: ++ * ++ * Licensed to the Apache Software Foundation (ASF) under one or more ++ * contributor license agreements. See the NOTICE file distributed ++ * with this work for additional information regarding copyright ++ * ownership. The ASF licenses this file to you under the Apache ++ * License, Version 2.0 (the "License"); you may not use this file ++ * except in compliance with the License. You may obtain a copy of ++ * the License at http://www.apache.org/licenses/LICENSE-2.0 . ++ */ ++ ++#include "macros.inc" ++ ++#if defined ENABLE_JAVA ++File gid_File_Hsqldb_Xcd ++ TXT_FILE_BODY; ++ Dir = gid_Brand_Dir_Share_Registry; ++ Name = "hsqldb.xcd"; ++ Styles = (PACKED); ++End ++#endif diff --git a/debian/patches/system-colamd.diff b/debian/patches/system-colamd.diff new file mode 100644 index 00000000000..789c3c4e30b --- /dev/null +++ b/debian/patches/system-colamd.diff @@ -0,0 +1,181 @@ +From ea8cd33bc395497fbbe8a3a98e59fd2fecacfd16 Mon Sep 17 00:00:00 2001 +From: Rene Engelhard +Date: Mon, 3 Mar 2025 21:48:18 +0100 +Subject: [PATCH] implement --with-system-colamd (for internal lpsolve) + +using suitesparse. Tested with both suitesparse 5.12.0 (Debian stable, +without pc) and 7.9.0 (Debian unstable, with .pc) + +Change-Id: I6e0d014455ea2dec111aa3380bd49bd586dfad0a +--- + config_host.mk.in | 3 ++ + configure.ac | 35 +++++++++++++++++- + external/lpsolve/UnpackedTarball_lpsolve.mk | 1 + + external/lpsolve/ccc.static | 13 ++++++- + external/lpsolve/system-colamd.diff | 41 +++++++++++++++++++++ + 5 files changed, 89 insertions(+), 4 deletions(-) + create mode 100644 external/lpsolve/system-colamd.diff + +diff --git a/config_host.mk.in b/config_host.mk.in +index 2ab62f748bd6..35056998e418 100644 +--- a/config_host.mk.in ++++ b/config_host.mk.in +@@ -97,6 +97,8 @@ export CPDB_CFLAGS=@CPDB_CFLAGS@ + export CPDB_LIBS=@CPDB_LIBS@ + export CPPU_ENV=@CPPU_ENV@ + export CPPU_ENV_FOR_BUILD=@CPPU_ENV_FOR_BUILD@ ++export COLAMD_CFLAGS=$(gb_SPACE)@COLAMD_CFLAGS@ ++export COLAMD_LIBS=$(gb_SPACE)@COLAMD_LIBS@ + export CPPUNIT_CFLAGS=$(gb_SPACE)@CPPUNIT_CFLAGS@ + export CPPUNIT_LIBS=$(gb_SPACE)@CPPUNIT_LIBS@ + export CPUNAME=@CPUNAME@ +@@ -656,6 +658,7 @@ SYSTEM_BOX2D=@SYSTEM_BOX2D@ + SYSTEM_BZIP2=@SYSTEM_BZIP2@ + SYSTEM_CAIRO=@SYSTEM_CAIRO@ + SYSTEM_CLUCENE=@SYSTEM_CLUCENE@ ++export SYSTEM_COLAMD=@SYSTEM_COLAMD@ + SYSTEM_CPPUNIT=@SYSTEM_CPPUNIT@ + SYSTEM_CURL=@SYSTEM_CURL@ + SYSTEM_DICTS=@SYSTEM_DICTS@ +diff --git a/configure.ac b/configure.ac +index b4c4cfecf2e2..ab0c24296df6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2678,6 +2678,11 @@ AC_ARG_WITH(system-lpsolve, + [Use lpsolve already on system.]),, + [with_system_lpsolve="$with_system_libs"]) + ++AC_ARG_WITH(system-colamd, ++ AS_HELP_STRING([--with-system-colamd], ++ [Use COLAMD already on system.]),, ++ [with_system_lpsolve="$with_system_libs"]) ++ + AC_ARG_WITH(system-coinmp, + AS_HELP_STRING([--with-system-coinmp], + [Use CoinMP already on system.]),, +@@ -11971,8 +11976,34 @@ if test "$ENABLE_LPSOLVE" = TRUE; then + AC_MSG_RESULT([internal]) + SYSTEM_LPSOLVE= + BUILD_TYPE="$BUILD_TYPE LPSOLVE" +- fi +-fi ++ AC_MSG_CHECKING([which colamd to use]) ++ if test "$with_system_colamd" = "yes"; then ++ AC_MSG_RESULT([external]) ++ SYSTEM_COLAMD=TRUE ++ # This assumes suitesparse, which has ++ # /usr/lib/x86_64-linux-gnu/pkgconfig/COLAMD.pc ++ PKG_CHECK_MODULES([COLAMD], [COLAMD], ++ [], ++ [ ++ # older versions don't. Look in /usr/include/suitesparse ++ COLAMD_CFLAGS=-I/usr/include/suitesparse ++ save_CFLAGS=$CFLAGS ++ CFLAGS="$CFLAGS $COLAMD_CFLAGS" ++ AC_CHECK_HEADER(colamd.h, [], ++ [ AC_MSG_ERROR(colamd.h header not found.)], []) ++ CFLAGS=$save_CFLAGS ++ AC_CHECK_LIB(colamd, colamd) ++ COLAMD_LIBS=-lcolamd ++ ]) ++ else ++ AC_MSG_RESULT([internal]) ++ SYSTEM_COLAMD= ++ fi ++ fi ++fi ++AC_SUBST(SYSTEM_COLAMD) ++AC_SUBST(COLAMD_CFLAGS) ++AC_SUBST(COLAMD_LIBS) + AC_SUBST(SYSTEM_LPSOLVE) + + dnl =================================================================== +diff --git a/external/lpsolve/UnpackedTarball_lpsolve.mk b/external/lpsolve/UnpackedTarball_lpsolve.mk +index bcb885fb9186..c1e6be8e3c09 100644 +--- a/external/lpsolve/UnpackedTarball_lpsolve.mk ++++ b/external/lpsolve/UnpackedTarball_lpsolve.mk +@@ -25,6 +25,7 @@ else + $(eval $(call gb_UnpackedTarball_add_patches,lpsolve,\ + external/lpsolve/lp_solve_5.5.patch \ + external/lpsolve/lpsolve-ubsan.patch.0 \ ++ external/lpsolve/system-colamd.diff \ + )) + + $(eval $(call gb_UnpackedTarball_add_file,lpsolve,lpsolve55/ccc.static,external/lpsolve/ccc.static)) +diff --git a/external/lpsolve/ccc.static b/external/lpsolve/ccc.static +index 6911c4b2c892..c78a9583089a 100644 +--- a/external/lpsolve/ccc.static ++++ b/external/lpsolve/ccc.static +@@ -1,11 +1,20 @@ +-src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c ../colamd/colamd.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c' ++if [ "$SYSTEM_COLAMD" != "TRUE" ]; then ++ colamd_c=../colamd/colamd.c ++fi ++src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c $colamd_c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c' + obj=`echo $src|sed -e 's/\.c/.o/g' -e 's!\([^ ]*/\)*!!g'` + + opts='-O3' + + def= + +-$CC -I.. -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I../shared $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine -c $src ++# FIMXE: Link statically with colamd? ++if test "$SYSTEM_COLAMD" = "TRUE"; then ++ colamd_i=$COLAMD_CFLAGS ++else ++ colamd_i=-I../colamd ++fi ++$CC -I.. -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL $colamd_i -I../shared $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine -c $src + + $AR -r liblpsolve55.a $obj + rm $obj +diff --git a/external/lpsolve/system-colamd.diff b/external/lpsolve/system-colamd.diff +new file mode 100644 +index 000000000000..a872d96ef282 +--- /dev/null ++++ b/external/lpsolve/system-colamd.diff +@@ -0,0 +1,41 @@ ++diff -urN lp_solve_5.5-old/lpsolve55/ccc lp_solve_5.5/lpsolve55/ccc ++--- misc/build/lp_solve_5.5/lpsolve55/ccc 2005-06-11 21:27:18.000000000 +0200 +++++ misc/build/lp_solve_5.5/lpsolve55/ccc 2025-03-02 17:58:19.904235635 +0100 ++@@ -1,4 +1,7 @@ ++-src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c ../colamd/colamd.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c' +++if test "$SYSTEM_COLAMD" != "TRUE"; then +++ colamd_c=../colamd/colamd.c +++fi +++src="../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c $colamd_c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c" ++ ar=$AR ++ c=$CC ++ ranlib=$RANLIB ++@@ -25,17 +28,26 @@ ++ ++ if [ "$OS" = "LINUX" ]; then ++ libs="$libs -ldl" +++ if test "$SYSTEM_COLAMD" = "TRUE"; then +++ libs="$libs $COLAMD_LIBS" +++ fi ++ fi ++ ++ opts='-O3' ++ ++-$c -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src +++if test "$SYSTEM_COLAMD" = "TRUE"; then +++ colamd_i=$COLAMD_CFLAGS +++else +++ colamd_i=-I../colamd +++fi +++ +++$c -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL $colamd_i $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src ++ $ar rv liblpsolve55.$a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` ++ $ranlib liblpsolve55.$a ++ ++ if [ "$so" != "" ] ++ then ++- $c $pic -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src +++ $c $pic -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL $colamd_i -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src ++ $c -shared $ldflags -o ${soprefix}lpsolve55.$so `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` $libs ++ fi ++ +-- +2.47.2 + diff --git a/debian/patches/system-officeotron-and-odfvalidator.diff b/debian/patches/system-officeotron-and-odfvalidator.diff new file mode 100644 index 00000000000..2bb3adf6dce --- /dev/null +++ b/debian/patches/system-officeotron-and-odfvalidator.diff @@ -0,0 +1,16 @@ +diff --git a/bin/odfvalidator.sh.in b/bin/odfvalidator.sh.in +index 56e2f29..9415ef6 100644 +--- a/bin/odfvalidator.sh.in ++++ b/bin/odfvalidator.sh.in +@@ -1,2 +1,2 @@ + #!/usr/bin/env bash +-java -Djavax.xml.validation.SchemaFactory:http://relaxng.org/ns/structure/1.0=org.iso_relax.verifier.jaxp.validation.RELAXNGSchemaFactoryImpl -Dorg.iso_relax.verifier.VerifierFactoryLoader=com.sun.msv.verifier.jarv.FactoryLoaderImpl -jar @TARFILE_LOCATION_NATIVE@/@ODFVALIDATOR_JAR@ "$@" ++java -Djavax.xml.validation.SchemaFactory:http://relaxng.org/ns/structure/1.0=org.iso_relax.verifier.jaxp.validation.RELAXNGSchemaFactoryImpl -Dorg.iso_relax.verifier.VerifierFactoryLoader=com.sun.msv.verifier.jarv.FactoryLoaderImpl -jar /usr/share/java/odfvalidator.jar "$@" +diff --git a/bin/officeotron.sh.in b/bin/officeotron.sh.in +index 7281f1b..6eab5b5 100644 +--- a/bin/officeotron.sh.in ++++ b/bin/officeotron.sh.in +@@ -1,2 +1,2 @@ + #!/usr/bin/env bash +-java -jar @TARFILE_LOCATION_NATIVE@/@OFFICEOTRON_JAR@ "$@" ++java -jar /usr/share/java/officeotron.jar "$@" diff --git a/debian/patches/use-mariadb-java-instead-of-mysql-java.diff b/debian/patches/use-mariadb-java-instead-of-mysql-java.diff new file mode 100644 index 00000000000..dda195524ff --- /dev/null +++ b/debian/patches/use-mariadb-java-instead-of-mysql-java.diff @@ -0,0 +1,59 @@ +>From 1172166889764ae0e77488e5d173f33961b9859b Mon Sep 17 00:00:00 2001 +From: Markus Koschany +Date: Fri, 9 Nov 2018 23:06:15 +0100 +Subject: [PATCH] mariadb + +--- + connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java | 4 ++-- + .../mysql/org/openoffice/Office/DataAccess/Drivers.xcu | 2 +- + connectivity/source/drivers/mysql/YDriver.cxx | 4 ++-- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java b/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java +index 3817add48da6..ace57bd35d98 100644 +--- a/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java ++++ b/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java +@@ -64,7 +64,7 @@ public class JdbcLongVarCharTest extends ComplexTestCase + */ + String url = System.getenv("CONNECTIVITY_TEST_MYSQL_DRIVER_JDBC"); + com.sun.star.beans.PropertyValue prop[] = new PropertyValue[1]; +- prop[0] = new PropertyValue("JavaDriverClass", 0, "com.mysql.jdbc.Driver", PropertyState.DIRECT_VALUE); ++ prop[0] = new PropertyValue("JavaDriverClass", 0, "org.mariadb.jdbc.Driver", PropertyState.DIRECT_VALUE); + + // get the remote office component context + XMultiServiceFactory xServiceManager = param.getMSF(); +diff --git a/connectivity/registry/mysql/org/openoffice/Office/DataAccess/Drivers.xcu b/connectivity/registry/mysql/org/openoffice/Office/DataAccess/Drivers.xcu +index 77988448f..acd8bfdaf 100644 +--- a/connectivity/registry/mysql_jdbc/org/openoffice/Office/DataAccess/Drivers.xcu ++++ b/connectivity/registry/mysql_jdbc/org/openoffice/Office/DataAccess/Drivers.xcu +@@ -33,7 +33,7 @@ + + + +- com.mysql.jdbc.Driver ++ org.mariadb.jdbc.Driver + + + +diff --git a/connectivity/source/drivers/mysql/YDriver.cxx b/connectivity/source/drivers/mysql/YDriver.cxx +index 95094265e..c0ad7802e 100644 +--- a/connectivity/source/drivers/mysql_jdbc/YDriver.cxx ++++ b/connectivity/source/drivers/mysql_jdbc/YDriver.cxx +@@ -54,7 +54,7 @@ namespace + OUString getJavaDriverClass(css::uno::Sequence const& info) + { + return comphelper::NamedValueCollection::getOrDefault(info, u"JavaDriverClass", +- u"com.mysql.jdbc.Driver"_ustr); ++ u"org.mariadb.jdbc.Driver"_ustr); + } + } + +@@ -165,7 +165,7 @@ Sequence lcl_convertProperties(T_DRIVERTYPE _eType, + { + if (!jdc) + { +- aProps.emplace_back("JavaDriverClass", 0, Any(u"com.mysql.jdbc.Driver"_ustr), ++ aProps.emplace_back("JavaDriverClass", 0, Any(u"org.mariadb.jdbc.Driver"_ustr), + PropertyState_DIRECT_VALUE); + } + } diff --git a/debian/patches/we-dont-have-the-needed-fonts.diff b/debian/patches/we-dont-have-the-needed-fonts.diff new file mode 100644 index 00000000000..85d5e5e5e82 --- /dev/null +++ b/debian/patches/we-dont-have-the-needed-fonts.diff @@ -0,0 +1,170 @@ +diff --git a/sw/qa/core/text/text.cxx b/sw/qa/core/text/text.cxx +index a4d4540ab228..46d262f6f0b8 100644 +--- a/sw/qa/core/text/text.cxx ++++ b/sw/qa/core/text/text.cxx +@@ -9,6 +9,8 @@ + + #include + ++#include ++ + #include + + #include +@@ -1363,6 +1365,8 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testParaUpperMarginFlyIntersect) + CPPUNIT_ASSERT_EQUAL(521, nHeight); + } + ++/* needs Source Han Serif SC*/ ++#if HAVE_MORE_FONTS + CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testTdf129810) + { + // Load the document. +@@ -1394,6 +1398,7 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testTdf129810) + } + } + } ++#endif + + CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testScriptinfosurrogatePairs) + { +diff --git a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx +index f9dbb0500934..b1a5806a8c99 100644 +--- a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx ++++ b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx +@@ -5143,68 +5143,73 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf134226) + fnEqualPos(aRect[3], aRect[5]); + } + +-// tdf#71956 - Tests that glyphs can be individually styled +-CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf71956) +-{ +- saveAsPDF(u"tdf71956-styled-diacritics.fodt"); +- std::unique_ptr pPdfDocument = parsePDFExport(); +- +- CPPUNIT_ASSERT_EQUAL(1, pPdfDocument->getPageCount()); +- +- // Get the first page +- std::unique_ptr pPdfPage = pPdfDocument->openPage(/*nIndex*/ 0); +- CPPUNIT_ASSERT(pPdfPage); +- std::unique_ptr pTextPage = pPdfPage->getTextPage(); +- CPPUNIT_ASSERT(pTextPage); +- +- int nPageObjectCount = pPdfPage->getObjectCount(); +- CPPUNIT_ASSERT_EQUAL(12, nPageObjectCount); +- +- std::vector aText; +- std::vector aRect; +- +- int nTextObjectCount = 0; +- for (int i = 0; i < nPageObjectCount; ++i) +- { +- auto pPageObject = pPdfPage->getObject(i); +- CPPUNIT_ASSERT_MESSAGE("no object", pPageObject != nullptr); +- if (pPageObject->getType() == vcl::pdf::PDFPageObjectType::Text) +- { +- aText.push_back(pPageObject->getText(pTextPage)); +- aRect.push_back(pPageObject->getBounds()); +- ++nTextObjectCount; +- } +- } +- +- CPPUNIT_ASSERT_EQUAL(12, nTextObjectCount); +- +- CPPUNIT_ASSERT_EQUAL(u"ه"_ustr, aText[0].trim()); +- CPPUNIT_ASSERT_EQUAL(u"\u0670\u0020\u0644\u0644"_ustr, aText[1].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[2].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[3].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[4].trim()); +- CPPUNIT_ASSERT_EQUAL(u"ل"_ustr, aText[5].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[6].trim()); +- CPPUNIT_ASSERT_EQUAL(u"\u0647"_ustr, aText[7].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[8].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[9].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[10].trim()); +- CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[11].trim()); +- +- // Verify that the corresponding text segments are positioned roughly equally +- auto fnEqualPos +- = [](const basegfx::B2DRectangle& stExpected, const basegfx::B2DRectangle& stFound) { +- CPPUNIT_ASSERT_DOUBLES_EQUAL(stExpected.getMinX(), stFound.getMinX(), /*delta*/ 0.15); +- CPPUNIT_ASSERT_DOUBLES_EQUAL(stExpected.getMaxX(), stFound.getMaxX(), /*delta*/ 0.15); +- }; +- +- fnEqualPos(aRect[0], aRect[11]); +- fnEqualPos(aRect[1], aRect[10]); +- fnEqualPos(aRect[2], aRect[8]); +- fnEqualPos(aRect[3], aRect[9]); +- fnEqualPos(aRect[4], aRect[7]); +- fnEqualPos(aRect[5], aRect[6]); +-} ++/* uses Noto Sans Arabic. ++ * visually looking at this this seems to work ; it seems even when having that one installed ++ * I get it cusive (not being there). In a clean VM I get it but not in the chroot even thoug ++ * fc-list shows it. ++ * Disable it for now.*/ ++//// tdf#71956 - Tests that glyphs can be individually styled ++//CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf71956) ++//{ ++// saveAsPDF(u"tdf71956-styled-diacritics.fodt"); ++// std::unique_ptr pPdfDocument = parsePDFExport(); ++// ++// CPPUNIT_ASSERT_EQUAL(1, pPdfDocument->getPageCount()); ++// ++// // Get the first page ++// std::unique_ptr pPdfPage = pPdfDocument->openPage(/*nIndex*/ 0); ++// CPPUNIT_ASSERT(pPdfPage); ++// std::unique_ptr pTextPage = pPdfPage->getTextPage(); ++// CPPUNIT_ASSERT(pTextPage); ++// ++// int nPageObjectCount = pPdfPage->getObjectCount(); ++// CPPUNIT_ASSERT_EQUAL(12, nPageObjectCount); ++// ++// std::vector aText; ++// std::vector aRect; ++// ++// int nTextObjectCount = 0; ++// for (int i = 0; i < nPageObjectCount; ++i) ++// { ++// auto pPageObject = pPdfPage->getObject(i); ++// CPPUNIT_ASSERT_MESSAGE("no object", pPageObject != nullptr); ++// if (pPageObject->getType() == vcl::pdf::PDFPageObjectType::Text) ++// { ++// aText.push_back(pPageObject->getText(pTextPage)); ++// aRect.push_back(pPageObject->getBounds()); ++// ++nTextObjectCount; ++// } ++// } ++// ++// CPPUNIT_ASSERT_EQUAL(12, nTextObjectCount); ++// ++// CPPUNIT_ASSERT_EQUAL(u"ه"_ustr, aText[0].trim()); ++// CPPUNIT_ASSERT_EQUAL(u"\u0670\u0020\u0644\u0644"_ustr, aText[1].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[2].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[3].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[4].trim()); ++// CPPUNIT_ASSERT_EQUAL(u"ل"_ustr, aText[5].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[6].trim()); ++// CPPUNIT_ASSERT_EQUAL(u"\u0647"_ustr, aText[7].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[8].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[9].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[10].trim()); ++// CPPUNIT_ASSERT_EQUAL(u""_ustr, aText[11].trim()); ++// ++// // Verify that the corresponding text segments are positioned roughly equally ++// auto fnEqualPos ++// = [](const basegfx::B2DRectangle& stExpected, const basegfx::B2DRectangle& stFound) { ++// CPPUNIT_ASSERT_DOUBLES_EQUAL(stExpected.getMinX(), stFound.getMinX(), /*delta*/ 0.15); ++// CPPUNIT_ASSERT_DOUBLES_EQUAL(stExpected.getMaxX(), stFound.getMaxX(), /*delta*/ 0.15); ++// }; ++// ++// fnEqualPos(aRect[0], aRect[11]); ++// fnEqualPos(aRect[1], aRect[10]); ++// fnEqualPos(aRect[2], aRect[8]); ++// fnEqualPos(aRect[3], aRect[9]); ++// fnEqualPos(aRect[4], aRect[7]); ++// fnEqualPos(aRect[5], aRect[6]); ++//} + + // tdf#101686 - Verifies that drawinglayer clears RTL flags while drawing Writer text boxes + CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf101686) diff --git a/debian/po/POTFILES.in b/debian/po/POTFILES.in new file mode 100644 index 00000000000..bb7ce2f16a9 --- /dev/null +++ b/debian/po/POTFILES.in @@ -0,0 +1,2 @@ +[type: gettext/rfc822deb] libreoffice-calc.templates + diff --git a/debian/po/ar.po b/debian/po/ar.po new file mode 100644 index 00000000000..720bd48f24a --- /dev/null +++ b/debian/po/ar.po @@ -0,0 +1,47 @@ +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# Maytham Alsudany , 2025 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-13 11:52+0800\n" +"Last-Translator: Maytham Alsudany \n" +"Language-Team: Arabic \n" +"Language: ar\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.5\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "البنية لا تدعم ميزة \"إعطاء شيء ليس رقمًا\"" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"LibreOffice Calc يعتمد على ميزة تسمى \"إعطاء شيء ليس رقمًا\" التي " +"اختيارية في معيار IEEE 754, لكن بنية نظامك (risv64) لا تدعمه." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"ومع ذلك, هذه الحزمة مصممة حتى هذا الأمر لكن كن على علم بأن Calc سيعطيك " +"نتائج خاطئة احياناً, خاصة مع =IFERROR() وما إلى ذلك." diff --git a/debian/po/ca.po b/debian/po/ca.po new file mode 100644 index 00000000000..6849053fa7c --- /dev/null +++ b/debian/po/ca.po @@ -0,0 +1,49 @@ +# Catalan translation of libreoffice's debconf messages +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# poc senderi , 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-12 22:16+0100\n" +"Last-Translator: poc senderi \n" +"Language-Team: Catalan \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.4.2\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "L'arquitectura no és compatible amb «NaN passing»" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"El LibreOffice Calc es basa en una característica anomenada «NaN " +"passing» que a l'estàndard IEEE 754 és opcional. La vostra arquitectura " +"(riscv64) no ho suporta, però." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Aquest paquet es proporciona, no obstant això, per a casos d'ús en els " +"quals això no importa, però hauríeu de ser conscients que el Calc pot " +"donar resultats erronis, especialment amb «=IFERROR()» etc." diff --git a/debian/po/cs.po b/debian/po/cs.po new file mode 100644 index 00000000000..ae5949bd4fd --- /dev/null +++ b/debian/po/cs.po @@ -0,0 +1,47 @@ +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# Miroslav Kure , 2025 +# +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-13 07:30+0100\n" +"Last-Translator: Miroslav Kure \n" +"Language-Team: Czech \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "Architektura nepodporuje „předávání NaN“" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"LibreOffice Calc spoléhá na vlastnost nazvanou „předávání NaN“, která je ve " +"standardu IEEE 754 volitelná. Vaše architektura (riscv64) ji bohužel " +"nepodporuje." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Tento balík je i přes to dostupný pro případy, kde to nevadí, ale měli " +"byste vědět, že vám Calc může vracet špatné výsledky, obzvláště s " +"funkcemi =IFERROR() apod." \ No newline at end of file diff --git a/debian/po/de.po b/debian/po/de.po new file mode 100644 index 00000000000..f06d87e9fab --- /dev/null +++ b/debian/po/de.po @@ -0,0 +1,45 @@ +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2024-05-13 16:58+0200\n" +"Last-Translator: Rene Engelhard \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "Architektur unterstützt kein »NaN passing«" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"LibreOffice Calc benötigt eine Funktionalität namens \"NaN passing\", welche im " +"IEEE 754-Standard optional ist. Ihre Architektur (riscv64) unterstüzt diese " +"allerdings nicht." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Dieses Paket wird trotzdem für Anwendungsfälle, bei denen dieses kein Problem ist, zur " +"Verfügung gestellt. Bitte seien Sie allerdings vorsichtig; Calc kann falsche " +"Ergebnisse liefern - insbesondere mit =IFERROR() etc." diff --git a/debian/po/es.po b/debian/po/es.po new file mode 100644 index 00000000000..9e6d4b96acd --- /dev/null +++ b/debian/po/es.po @@ -0,0 +1,50 @@ +# Spanish translation of libreoffice calc debconf templates for risc. +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# Translation: Camaleón , 2025. +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-18 18:05+0100\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Last-Translator: Camaleón \n" +"Language-Team: Debian Spanish \n" +"X-Generator: Poedit 2.4.2\n" +"X-Poedit-SourceCharset: UTF-8\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "La arquitectura no admite «NaN passing\"»" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does " +"not support it, though." +msgstr "" +"LibreOffice Calc depende de una característica denominada «NaN " +"passing» que es opcional en la norma IEEE 754. Sin embargo, su " +"arquitectura (riscv64) no lo admite." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does " +"not matter but you should be aware that Calc can give you wrong " +"results, especially with =IFERROR() etc." +msgstr "" +"No obstante, este paquete se suministra para casos de uso en los que " +"esto no es relevante, pero debe tener en cuenta que Calc puede " +"generar resultados erróneos, especialmente con =IFERROR(), etc." diff --git a/debian/po/fr.po b/debian/po/fr.po new file mode 100644 index 00000000000..9713aeb0b7d --- /dev/null +++ b/debian/po/fr.po @@ -0,0 +1,46 @@ +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-13 15:04+0100\n" +"Last-Translator: Jean-Paul Guillonneau \n" +"Language-Team: Debian French Team \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "Architecture ne gérant pas « passage de NaN »" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"Calc de LibreOffice repose sur une fonction appelée « NaN passing » (NaN –" +" Not a Number ») qui est facultative dans la norme IEEE 754. Cependant votre " +"architecture (riscv64) ne la gère pas." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Ce paquet est néanmoins fourni pour les cas où cela n’a aucune importance, " +"mais vous devez être conscient que Calc peut donner des résultats faux, " +"particulièrement avec =IFERROR(), etc." diff --git a/debian/po/gl.po b/debian/po/gl.po new file mode 100644 index 00000000000..2b6e7f78f7c --- /dev/null +++ b/debian/po/gl.po @@ -0,0 +1,49 @@ +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# +# Rene Engelhard , 2024. +# parodper , 2025. +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-16 08:29+0100\n" +"Last-Translator: Pablo \n" +"Language-Team: Galician \n" +"Language: gl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.2.2\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "Esta arquitectura non permite o «paso de NaN»" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"LibreOffice Calc depende dunha capacidade chamada «paso de NaN» [NaN " +"passing], unha parte opcional da norma IEEE 754. Porén, esta " +"arquitectura (riscv64) non a inclúe." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Este paquete inclúese de tódolos xeitos para aqueles casos de uso nos " +"que isto non importe, pero que saiba que Calc pode dar malos " +"resultados, especialmente se emprega =SEÉRROR() ou semellantes." diff --git a/debian/po/nl.po b/debian/po/nl.po new file mode 100644 index 00000000000..6a811d42896 --- /dev/null +++ b/debian/po/nl.po @@ -0,0 +1,50 @@ +# Dutch translation of libreoffice calc debconf templates for risc. +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# Translation: Frans Spiesschaert , 2025. + +# +msgid "" +msgstr "" +"Project-Id-Version: libreoffice_4:25.2.2~rc1-1\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-13 14:04+0100\n" +"Last-Translator: Frans Spiesschaert \n" +"Language-Team: \n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.2.2\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "Architectuur ondersteunt \"NaN passing\" niet" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"LibreOffice Calc is gebaseerd op een functie genaamd \"NaN passeren\" " +"die optioneel is in de IEEE 754 standaard. Uw architectuur (riscv64) " +"ondersteunt deze functie echter niet." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Dit pakket wordt desalniettemin geleverd voor gebruikssituaties waarbij " +"dit niet van belang is. U dient er echter rekening mee te houden dat " +"Calc u onjuiste resultaten kan geven, vooral met =IFERROR() enz." diff --git a/debian/po/pt.po b/debian/po/pt.po new file mode 100644 index 00000000000..9482b3bf19b --- /dev/null +++ b/debian/po/pt.po @@ -0,0 +1,50 @@ +# Translation of libreoffice debconf messages to European Portuguese +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# +# Rene Engelhard , 2024. +# Américo Monteiro , 2025. +msgid "" +msgstr "" +"Project-Id-Version: libreoffice 4:25.2.2\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-12 23:15+0000\n" +"Last-Translator: Américo Monteiro \n" +"Language-Team: Portuguese <>\n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 22.12.3\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "Arquitectura não suporta \"NaN passing\"" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"O LibreOffice Calc confia numa funcionalidade chamada \"NaN passing\" a qual " +"é opcional no standard IEEE 754. Contudo, a sua arquitectura (riscv64) não " +"a suporta." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Não obstante, este pacote é enviado para casos de utilização onde isto " +"não tem importância mas você deve ter atenção que o Calc pode dar-lhe " +"resultados errados, especialmente com =IFERROR() etc." diff --git a/debian/po/pt_BR.po b/debian/po/pt_BR.po new file mode 100644 index 00000000000..77ab60e2023 --- /dev/null +++ b/debian/po/pt_BR.po @@ -0,0 +1,48 @@ +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# Paulo Henrique de Lima Santana (phls) , 2025 +# +msgid "" +msgstr "" +"Project-Id-Version: libreoffice_4:25.2.2~rc1-1\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: 2025-03-12 18:22-0300\n" +"Last-Translator: Paulo Henrique de Lima Santana (phls) \n" +"Language-Team: l10n portuguese \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 3.5\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "A arquitetura não suporta \"NaN passing\"" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" +"O LibreOffice Calc depende de um recurso chamado \"NaN passing\", que é " +"opcional no padrão IEEE 754. No entanto, sua arquitetura (riscv64) não " +"oferece suporte a ele." + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" +"Mesmo assim, este pacote é enviado para casos de uso em que isso não " +"importa, mas você deve estar ciente de que o Calc pode fornecer resultados " +"errados, especialmente com =IFERROR() etc." diff --git a/debian/po/templates.pot b/debian/po/templates.pot new file mode 100644 index 00000000000..535b22ae011 --- /dev/null +++ b/debian/po/templates.pot @@ -0,0 +1,41 @@ +# Copyright (C) 2024 Software in the Public Interest, Inc. +# This file is distributed under the same license as the libreoffice package. +# Rene Engelhard , 2024 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: libreoffice\n" +"Report-Msgid-Bugs-To: libreoffice@packages.debian.org\n" +"POT-Creation-Date: 2024-05-13 17:33+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "Architecture doesn't support \"NaN passing\"" +msgstr "" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"LibreOffice Calc relies on a feature called \"NaN passing\" which is " +"optional in the IEEE 754 standard. Your architecture (riscv64) does not " +"support it, though." +msgstr "" + +#. Type: note +#. Description +#: ../libreoffice-calc.templates:1001 +msgid "" +"This package is shipped nevertheless for use cases where this does not " +"matter but you should be aware that Calc can give you wrong results, " +"especially with =IFERROR() etc." +msgstr "" diff --git a/debian/python3-access2base.links b/debian/python3-access2base.links new file mode 100644 index 00000000000..f76ba1c90f7 --- /dev/null +++ b/debian/python3-access2base.links @@ -0,0 +1 @@ +usr/share/doc/libreoffice-common/access2base.html usr/share/doc/python3-access2base/access2base.html diff --git a/debian/python3-uno.NEWS b/debian/python3-uno.NEWS new file mode 100644 index 00000000000..e731bbcb2b7 --- /dev/null +++ b/debian/python3-uno.NEWS @@ -0,0 +1,11 @@ +libreoffice (1:3.5.2-2) unstable; urgency=low + + * The script provider for python (which was in python3-uno before) has been + split out into libreoffice-script-provider-python as it's the same in both + variants and python3-uno should contain just the module anyway. + + If you relied on python3-uno for the script provider, install the new + package in addition. + + -- Rene Engelhard Sat, 07 Apr 2012 14:30:41 +0200 + diff --git a/debian/python3-uno.lintian-overrides b/debian/python3-uno.lintian-overrides new file mode 100644 index 00000000000..41bb77ccfa2 --- /dev/null +++ b/debian/python3-uno.lintian-overrides @@ -0,0 +1,5 @@ +# "aged out" due to debhelpers changelog trimming (see #1021502) +python3-uno: debian-news-entry-has-unknown-version 1:3.5.2-2 [usr/share/doc/python3-uno/NEWS.Debian.gz:1] +# see comment in control(.in) +python3-uno: virtual-package-depends-without-real-package-depends Pre-Depends: awk +python3-uno: needlessly-depends-on-awk Pre-Depends \ No newline at end of file diff --git a/debian/python3-uno.preinst.in b/debian/python3-uno.preinst.in new file mode 100644 index 00000000000..4cf03bdad89 --- /dev/null +++ b/debian/python3-uno.preinst.in @@ -0,0 +1,19 @@ +#!/bin/sh + +set -e + +# https://cgit.freedesktop.org/libreoffice/core/commit/?id=968166ba4ee96f7c9053c8f4c88ac82381ff7cf4 +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt "4:24.2.0~beta1"; then + echo "Removing obsolete configuration file /etc/libreoffice/registry/pyuno.xcd ..." + # It was unused anyway and thus no need to keep any (noop) adaptions here. But do it this + # way for policy sake... + if [ `ucfq -w /etc/libreoffice/registry/pyuno.xcd | cut -d: -f4` = "Yes" ]; then + mv /etc/libreoffice/registry/pyuno.xcd /etc/libreoffice/registry/pyuno.xcd.dpkg-bak + else + rm -f /etc/libreoffice/registry/pyuno.xcd + fi + ucf --purge /etc/libreoffice/registry/pyuno.xcd + ucfr --purge python3-uno /etc/libreoffice/registry/pyuno.xcd +fi + +#DEBHELPER# diff --git a/debian/rules b/debian/rules new file mode 100755 index 00000000000..41be685bbd3 --- /dev/null +++ b/debian/rules @@ -0,0 +1,4776 @@ +#!/usr/bin/make -f +################################################################################ +# LibreOffice source package rules file +# +# Please see debian/README for detailed documentation about the build system, and +# how to build LibreOffice. +################################################################################ +# Authors: +# Chris Halls +# Rene Engelhard +# Copyright 2002-2023 Software in the Public Interest, Inc. +# Portions Copyright 2010 Canonical Ltd. Author: Matthias Klose +# Portions Copyright 2011-2013 Canonical Ltd. Author: Bjoern Michaelsen +# Licensed under the GNU General Public License, version 2. See the file +# /usr/share/common-licenses/GPL or . +################################################################################ + +vafilt = $(subst $(2)=,,$(filter $(2)=%,$(1))) + +include /usr/share/dpkg/pkg-info.mk +CURDIR ?= $(realpath $(dir $(firstword $(MAKEFILE_LIST)))/..) +BASE_VERSION:=$(shell echo $(DEB_VERSION) | cut -d: -f1):$(DEB_VERSION_UPSTREAM) +BINARY_VERSION=$(DEB_VERSION) +OOVER:=25.2 +HELP_L10N_VIRTUAL_VERSION:=$(OOVER) +ifeq "$(shell echo $(OOVER) | cut -d. -f2)" "2" +# 24.2 + .6 -> 24.8 -> OK +NEXT_OOVER=$(shell echo "$(OOVER) + .6" | bc) +else +# 24.8 + .6 = 25.4 -> wrong (doesn't take into account that the year +# has 12 months)so subtract 2 (so effectively + .4) to get back to February (25.2), +# which is supposed to be the schedule. +NEXT_OOVER=$(shell echo "$(OOVER) + .4" | bc) +endif + +ARCH_INDEP_PACKAGES := $(shell dh_listpackages -i) +ARCH_DEP_PACKAGES := $(shell dh_listpackages -a) +PACKAGES := $(ARCH_INDEP_PACKAGES) $(ARCH_DEP_PACKAGES) + +ifneq (,$(shell pwd | grep autopkgtest)) +AUTOPKGTEST_BUILD=y +$(warning Build for autopkgtest) +endif +AUTOPKGTEST_CPPUNIT_PACKAGES := $(shell dh_listpackages | grep -v help | grep -v l10n | grep -v dev-doc | grep -v "nogui$$") + +include /usr/share/dpkg/architecture.mk +include /usr/share/dpkg/vendor.mk +SHELL:=/bin/bash + +SYSTEM_GCC_VERSION = $(shell gcc --version | sed -n '/^gcc/s/.*\(..\..\)\../\1/p' | cut -d" " -f1 | cut -d. -f1) +SYSTEM_CLANG_VERSION = $(shell clang -v 2>&1 | head -n1 | awk '{ print $$4 }' | cut -d. -f1) + +PKGDIR:=debian/libreoffice +OODIRNAME=libreoffice +OODIR:=usr/lib/$(OODIRNAME) +OOSDKDIR:=$(OODIR)/sdk + +# Figure out who's building this package. +ifneq "$(DEB_VENDOR)" "Debian" +OOO_VENDOR:=The Document Foundation, $(DEB_PARENT_VENDOR) and $(DEB_VENDOR) +else +OOO_VENDOR=The Document Foundation/$(DEB_VENDOR) +endif +export OOO_VENDOR + +# debhelper +export DH_OPTIONS +export DH_ALWAYS_EXCLUDE=CVS:.svn:.bzr:.git +#export DH_VERBOSE=1 +# quilt +export QUILT_PATCHES=debian/patches +export QUILT_OPTIONS="-p1 -F0" + +SOURCE_TREE=. +STAMP_DIR=debian/stampdir +TARFILE_LOCATION=$(CURDIR)/tarballs +export TARFILE_LOCATION +USE_SOURCE_TARBALLS=y +USE_GIT_TARBALLS=n +ifeq "$(USE_GIT_TARBALLS)" "y" +GIT_BASEURL:=git://anongit.freedesktop.org/libreoffice +lo_sources_ver=$(shell grep AC_INIT $(SOURCE_TREE)/configure.ac | grep documentfoundation | cut -d, -f2 | sed -e 's,\[,,' -e 's,\],,') +# NOT in proper libreoffice-3-6 branch +# use ./g checkout -b tag-libreoffice-3.6.2.1 libreoffice-3.6.2.1 +GIT_TAG=libreoffice-$(lo_sources_ver) +GIT_BRANCH=libreoffice-25-2-2 +endif +ifeq "$(USE_SOURCE_TARBALLS)" "y" +lo_sources_ver=$(shell cat $(CURDIR)/sources.ver | cut -d= -f2) +endif + +######### +# Default package configuration +# +# FIXME: Should riscv64 be here at all given it doesn't support NaN payload propagation which LO (at least Calc) needs? +# see https://bugs.documentfoundation.org/show_bug.cgi?id=152943 and https://lists.debian.org/debian-riscv/2024/01/msg00018.html +OOO_ARCHS = alpha amd64 arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 loong64 m68k mips mipsel mips64 mips64el powerpc powerpcspe ppc64 ppc64el riscv64 s390x sparc sparc64 +DEBIAN_MAIN_ARCHITECTURES = amd64 arm64 armel armhf i386 mips64el ppc64el riscv64 s390x +PATCHSET=$(DEB_VENDOR) +BUILD_DEPS=\ + autoconf,\ + automake,\ + bc,\ + bison,\ + bzip2,\ + flex, \ + gperf,\ + libfreetype-dev,\ + libfontconfig-dev,\ + pkgconf,\ + po-debconf,\ + unzip,\ + xsltproc,\ + zip,\ + zlib1g-dev\ + +BUILD_DEPS_INDEP += rdfind, symlinks + +# These are components which can be built from internal copies, or used from the +# distribution. See configure --help for valid values (--with-system-). +SYSTEM_STUFF = dicts + +ENABLE_GUI=y + +ifeq ($(filter nopython,$(DEB_BUILD_PROFILES)),) +ENABLE_PYTHON=y +ifeq "$(ENABLE_PYTHON)" "y" + CONFIGURE_FLAGS += --enable-python=system + ENABLE_SCRIPT_PROVIDER_PYTHON=y + PACKAGE_LIBRELOGO=y +endif +# THIS IS ONLY FOR TESTING. When building against a specified pythonX.Y +# this will work inside OOo but *not* from outside OOo unless the user +# uses pythonX.Y directly (and the dh_pycentral-created dependencies allow +# also the non-working default python then) - see e.g. #587402. Also +# note we are NOT working with python < 2.6 anymore! +PYTHON_VERSION=current +ifeq "$(PYTHON_VERSION)" "current" + PYTHON=python3 + export PYTHON +else + # somehow configure insists on using python3 "for pyuno". The only way to + # override this (afaics) is this... + PYTHON=python$(PYTHON_VERSION) + PYTHON_CFLAGS=$(shell pkg-config --cflags python-$(PYTHON_VERSION)) + PYTHON_LIBS=$(shell pkg-config --libs python-$(PYTHON_VERSION)) + export PYTHON PYTHON_VERSION PYTHON_CFLAGS PYTHON_LIBS +endif +endif +BUILD_ONLY_EN_US=n +ifeq ($(filter nojava,$(DEB_BUILD_PROFILES)),) + include /usr/share/java/java_defaults.mk + ifneq "$(BOOKWORM_BACKPORT)" "y" + ifneq ($(DEB_HOST_ARCH),$(filter-out $(DEB_HOST_ARCH),$(java_unsupported_architectures))) + ENABLE_JAVA=y + endif + else + ENABLE_JAVA=y + endif + ifeq "$(ENABLE_JAVA)" "y" + JDK=default + ifneq "$(JDK)" "default" + JAVA_MAINVER=17 + endif + endif +else + ENABLE_JAVA=n +endif +#JAVAHELPER_MIN_VERSION= +SYSTEM_STUFF += hunspell +SYSTEM_STUFF += altlinuxhyph +SYSTEM_STUFF += boost +BOOST_VERSION=default +# libmdds-dev depends on libboost-dev, which will be removed +# when you install a non-default libboostX.Y-dev +ifeq "$(BOOST_VERSION)" "default" +SYSTEM_STUFF += mdds +endif +USE_EXTERNAL_CXXLIBS=y +SYSTEM_STUFF += mythes +SYSTEM_STUFF += icu +SYSTEM_STUFF += librevenge +SYSTEM_STUFF += libwpd libwpg libwps +SYSTEM_STUFF += libvisio +SYSTEM_STUFF += libcdr +SYSTEM_STUFF += libmspub +SYSTEM_STUFF += libmwaw +SYSTEM_STUFF += libodfgen +SYSTEM_STUFF += libepubgen +SYSTEM_STUFF += libetonyek +SYSTEM_STUFF += libfreehand +# this is libe-book, NOT evolutions libebook (which is +# dlopen()'ed anyway and whose headers we need from the +# system anyways if enabled +SYSTEM_STUFF += libebook +SYSTEM_STUFF += libabw +SYSTEM_STUFF += libpagemaker +SYSTEM_STUFF += libzmf +SYSTEM_STUFF += libstaroffice +SYSTEM_STUFF += libqxp +ENABLE_ZXING=y +SYSTEM_STUFF += zxing +BUILD_CAIROCANVAS=y +SYSTEM_STUFF += cairo +ENABLE_GPGMEPP=y +ifeq "$(ENABLE_GUI)" "y" +BUILD_PLASMA=y +# let's assume we won't ship two plasmas parallel.. +PLASMA_VERSION=6 +PLASMA_KF_VERSION=$(PLASMA_VERSION) +PLASMA_ARCHITECTURE=all +ENABLE_QT5=y +#QT5_MINVER= +ENABLE_KF5=n +ENABLE_QT6=y +ENABLE_QT6_MULTIMEDIA=y +ENABLE_KF6=y +endif +# go sure. if we want plasma, we want kfX, too and if we want that +# one we want qtX, too. +ifeq "$(BUILD_PLASMA)" "y" + ifeq "$(PLASMA_VERSION)" "5" + ENABLE_KF5=y + endif + ifeq "$(PLASMA_VERSION)" "6" + ENABLE_KF6=y + endif +endif +# KF5 depends on Qt5 +ifeq "$(ENABLE_KF5)" "y" + ENABLE_QT5=y + KF5_QT5_DEPENDS := libreoffice-qt5 (= $${binary:Version}) +endif +# KF6 depends on Qt6 +ifeq "$(ENABLE_KF6)" "y" + ENABLE_QT6=y + KF6_QT6_DEPENDS := libreoffice-qt6 (= $${binary:Version}) +endif +# https://www.debian.org/doc/debian-policy/ says this is not defined and must +# be ignored, but dh_strip mentions (and honours) it, so... +ifneq (noautodbgsym,$(findstring noautodbgsym,$(DEB_BUILD_OPTIONS))) +BUILD_DBGSYM_PACKAGES=y +ifeq "$(DEB_HOST_ARCH)" "amd64" +USE_DWZ=y +DWZ_ARGS:=-L 100000000 +endif +endif +SYSTEM_STUFF += xmlsec +SYSTEM_STUFF += zxcvbn + +ifeq ($(filter noinsttest,$(DEB_BUILD_PROFILES)),) + # this changes the packages built/contents of packages (-subsequentcheckbase) + # This is not exactly allowed in https://wiki.debian.org/BuildProfileSpec#Registered_profile_names + # but it doesn't have real practical difference, does it? + ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + BUILD_TEST_PACKAGES=y + endif +endif + +ifneq ($(MAKECMDGOALS),binary-indep) +ENABLE_SYMBOLS=y +SMALL_SYMBOLS=y +endif +ifeq ($(MAKECMDGOALS),binary-indep) +# no need to do a double build... +BUILD_NOGUI_PACKAGES=n +# go sure + ifeq "$(BUILD_TEST_PACKAGES)" "y" + ENABLE_JUNIT4=y + endif +endif + +ifeq "$(ENABLE_JAVA)" "y" + SYSTEM_STUFF += beanshell + SYSTEM_STUFF += rhino + SYSTEM_STUFF += hsqldb +endif +ENABLE_LPSOLVE=y +# disabled. system-lpsolve somehow now causes +#scsolverobj.cxx:119:Assertion +#Test name: sc_apitest::ScSolverSettingsObj::testXSolverSettings +#equality assertion failed +#- Expected: 6981 +#- Actual : 6987 +# +#Failures !!! +#Run: 1 Failure total: 1 Failures: 1 Errors: 0 +#SYSTEM_STUFF += lpsolve +#USE_SHARED_LPSOLVE=y +#LPSOLVE_MIN_VERSION= +ifeq (,$(filter lpsolve, $(SYSTEM_STUFF))) + SYSTEM_STUFF += colamd +endif +ENABLE_COINMP=y +SYSTEM_STUFF += coinmp +USE_DBUS=y +ifeq "$(USE_DBUS)" "y" + ifeq (,$(findstring linux,$(DEB_HOST_ARCH_OS))) + ENABLE_BLUETOOTH=n + else + ENABLE_BLUETOOTH=y + SYSTEM_STUFF += bluez + endif + ENABLE_PACKAGEKIT=n +endif +ENABLE_AVAHI=y +ifeq "$(ENABLE_GUI)" "y" +USE_GSTREAMER=y +endif +ENABLE_CURL=y +ENABLE_WEBDAV=y +ifeq "$(ENABLE_WEBDAV)" "y" + ENABLE_CURL=y +endif +ifeq "$(ENABLE_CURL)" "y" +SYSTEM_STUFF += curl +endif +SYSTEM_STUFF += redland +PACKAGE_SDK=y +ifneq ($(filter nodoc,$(DEB_BUILD_PROFILES)),) +PACKAGE_SDK_DOCS=n +else +PACKAGE_SDK_DOCS=y +endif +PACKAGE_LOKIT=y +# will not work, uses schema/ stripped in the tarballs +ifeq "$(USE_SOURCE_TARBALLS)" "y" +ENABLE_EXPORT_VALIDATION_TESTS=n +endif +#JUNIT_MIN_VER= +PARALLEL_BUILD=y +ENABLE_LDAP=y +SYSTEM_STUFF += openldap +SYSTEM_STUFF += epoxy +ifeq "$(ENABLE_JAVA)" "y" + ENABLE_REPORTBUILDER=y + SYSTEM_STUFF += jfreereport + ENABLE_MEDIAWIKI=y + ENABLE_SCRIPT_PROVIDER_BSH=y + ENABLE_SCRIPT_PROVIDER_JS=y + ENABLE_NLPSOLVER=y +else + ENABLE_REPORTBUILDER=n + ENABLE_MEDIAWIKI=n + ENABLE_SCRIPT_PROVIDER_BSH=n + ENABLE_SCRIPT_PROVIDER_JS=n + ENABLE_NLPSOLVER=n +endif +ENABLE_SDBC_POSTGRESQL=y +ifeq "$(ENABLE_GUI)" "y" +BUILD_GTK3=y + # introspection needs GTK3 + ifeq "$(BUILD_GTK3)" "y" + ifeq ($(filter nogir,$(DEB_BUILD_PROFILES)),) + ENABLE_INTROSPECTION=y + endif + endif +endif +BUILD_GTK4=y +ENABLE_EVO2=y +ENABLE_GIO=y +ENABLE_DCONF=y +ENABLE_RANDR=y +PACKAGE_BASE=y +SYSTEM_STUFF += graphite +SYSTEM_STUFF += harfbuzz +SYSTEM_STUFF += libexttextcat +SYSTEM_STUFF += cppunit +SYSTEM_STUFF += dragonbox +SYSTEM_STUFF += libfixmath +DEFAULT_IMAGE=colibre +IMAGES:=$(DEFAULT_IMAGE) colibre_dark colibre_svg colibre_dark_svg sifr sifr_svg sifr_dark sifr_dark_svg breeze breeze_dark breeze_dark_svg breeze_svg elementary elementary_svg karasa_jaga karasa_jaga_svg sukapura sukapura_svg sukapura_dark sukapura_dark_svg +CONFIGURE_FLAGS_INDEP += --with-theme="$(IMAGES)" +ENABLE_MARIADB=y +ifeq "$(ENABLE_MARIADB)" "y" +# FIXME: the mysql test doesn't get really tested since it is only ran/built +# with CONNECTIVITY_TEST_MYSQL_DRIVER set - and doesn't build on 32bit... The +# test is run in autopkgtest on OOO_CHECK_FATAL_ARCHS (aka 64bit archs!) only for +# now anyway so let's just hack around here for now and disable the build of it +# alltogether when not used and just set CONNECTIVITY_TEST_MYSQL_DRIVER on those +# OOO_CHECK_FATAL_ARCHS + ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),$(OOO_CHECK_FATAL_ARCHS))) +export CONNECTIVITY_TEST_MYSQL_DRIVER=dummy + endif +endif + MYSQL_FLAVOUR=mariadb +# set this also to y for system-mysql.. +SYSTEM_STUFF += mariadb +SYSTEM_STUFF += postgresql +DICT_DIR=/usr/share/hunspell +HYPH_DIR=/usr/share/hyphen +THES_DIR=/usr/share/mythes +ENABLE_LIBCMIS=y +ifeq "$(ENABLE_LIBCMIS)" "y" +SYSTEM_STUFF += libcmis +endif +SYSTEM_STUFF += jpeg +SYSTEM_STUFF += libxml +SYSTEM_STUFF += expat +SYSTEM_STUFF += odbc +SYSTEM_STUFF += sane +ENABLE_PDFIMPORT=y +ENABLE_POPPLER=y +SYSTEM_STUFF += poppler +ENABLE_PDFIUM=y +PACKAGE_GEN=y +ifeq "$(PACKAGE_GEN)" "y" + # keep packaging gen (s390x is a release arch...), just disable skia. In contrast for + # alpha and ia64 (ports-only) where skia also is disabled we set PACKAGE_GEN=n later in + # the architecture specific settings + ifneq (big,$(DEB_HOST_ARCH_ENDIAN)) + ENABLE_SKIA=y + endif +else + ENABLE_SKIA=n +endif +SYSTEM_STUFF += libpng +ENABLE_NSS=y +ifeq "$(ENABLE_NSS)" "y" +SYSTEM_STUFF += nss +endif +ENABLE_HELP=y +ifeq "$(ENABLE_HELP)" "y" + ENABLE_HTML_HELP=y + ENABLE_XMLHELP=y + ifeq "$(ENABLE_HTML_HELP)" "y" + HELP_DEPENDS := libreoffice-help-common (= $${binary:Version}), + HELP_RECOMMENDS := firefox-esr | epiphany-browser | konqueror | chromium | firefox + HELP_COMMON_DEPENDS := node-normalize.css + BUILD_DEPS_INDEP += , node-normalize.css + HELP_COMMON_DEPENDS += , node-prismjs + BUILD_DEPS_INDEP += , node-prismjs + else + HELP_DEPENDS := libreoffice-writer + DEBHELPER_OPTIONS += -Nlibreoffice-help-common + endif + ifeq "$(ENABLE_XMLHELP)" "y" + SYSTEM_STUFF += clucene + endif +endif +SYSTEM_STUFF += lcms2 +SYSTEM_STUFF += liblangtag +SYSTEM_STUFF += orcus +# kfreebsd runs into SIZE_MAX problems, and the rest might +# get OOM (mips(el)...) so enable mergelibs only for 64bit +# archs +ifeq (,$(filter kfreebsd,$(DEB_HOST_ARCH))) + ifeq "$(DEB_HOST_ARCH_BITS)" "64" + ENABLE_MERGELIBS=y + endif +endif +ifeq "$(ENABLE_MERGELIBS)" "y" + ENABLE_LTO=y +else + ENABLE_LTO=n +endif +USE_OPENCL=y +ENABLE_FIREBIRD=y +FIREBIRD_VERSION=$(shell fb_config --version | cut -d. -f1,2) +ifeq "$(ENABLE_FIREBIRD)" "y" + SYSTEM_STUFF += firebird + ifeq (,$(filter firebird, $(SYSTEM_STUFF))) + SYSTEM_STUFF += libatomic-ops + SYSTEM_STUFF += libtommath + endif +endif +ENABLE_EOT=y +ifeq "$(ENABLE_EOT)" "y" +SYSTEM_STUFF += libeot +endif +SYSTEM_STUFF += glm +BUILD_PPC64EL=y +BUILD_ARM64=y +SYSTEM_STUFF += gpgmepp +INSTALL_APPARMOR_PROFILES=y +ENABLE_APPARMOR_PROFILES=y +ifneq "$(AUTOPKGTEST_BUILD)" "y" + CHECK_APPARMOR_PROFILES=true +endif +SYSTEM_STUFF += libnumbertext +SYSTEM_STUFF += box2d +SYSTEM_STUFF += libwebp +SYSTEM_STUFF += libtiff +SYSTEM_STUFF += frozen +SYSTEM_STUFF += argon2 +# we don't have it in the archive. The "new" .net dlls are incomplete +# yet anyway. and what about cli-common-dev and the dh_cli* tools? Will they +# even work here? +ifeq ($(filter nocil,$(DEB_BUILD_PROFILES)),) +ENABLE_DOTNET=n +endif +ENABLE_CUPS=y +ENABLE_CPDB=y + +# override stuff for indep builds to save build dependencies +ifeq ($(MAKECMDGOALS),binary-indep) +ENABLE_EVOAB=n +BUILD_GTK3=n +ENABLE_INTROSPECTION=n +ENABLE_GIO=n +BUILD_GTK4=n +ENABLE_QT5=n +ENABLE_QT6=n +# libgpgmepp-dev depends on Qt, too, see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863149 +ENABLE_GPGMEPP=n +ENABLE_KF5=n +ENABLE_KF6=n +ifneq "$(PLASMA_ARCHITECTURE)" "all" +BUILD_PLASMA=n +endif +ENABLE_MARIADB=n +ENABLE_FIREBIRD=n +ENABLE_SDBC_POSTGRESQL=n +ENABLE_SKIA=n +ENABLE_COINMP=n +ENABLE_LPSOLVE=n +USE_GSTREAMER=n +ENABLE_LDAP=n +ENABLE_PDFIUM=n +USE_DBUS=n +ENABLE_AVAHI=n +endif + +# Default flags to pass to configure +CONFIGURE_FLAGS+= \ + --with-vendor='$(OOO_VENDOR)' \ + --with-extra-buildid='$(DEB_VENDOR) package version: $(BINARY_VERSION)' \ + --prefix=/usr --mandir=/usr/share/man \ + --docdir=/usr/share/doc/libreoffice \ + --libdir=/usr/lib \ + --bindir=/usr/bin \ + --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \ + --disable-online-update \ + --disable-fetch-external \ + --without-fonts \ + --without-myspell-dicts \ + --with-branding=$(CURDIR)/debian/branding \ + --without-coredumpctl + +# don't rebuild the font anywhere, we just really need it in indep builds. +# please put https://dev-www.libreoffice.org/extern/f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf +# into $(SOURCE_TREE)/tarballs if you don't rebuild the font. +BUILD_DEPS_INDEP += , fontforge-nox | fontforge +ifeq ($(filter pkg.libreoffice.noopensymbolbuild,$(DEB_BUILD_PROFILES)),) +ENABLE_OPENSYMBOL_BUILD=y +endif + +# we get a fonts-opensymbol build-dep -b builds (_ARCH also affects -b), too anyway but it's still lesser +# dependencies than fontforge-nox | fontforge... +# But this can get a problem for bootstrapping if we ever needed a newer fonts-opensymbol for +# tests to pass... +# Allow building it nevertheless if wanted +BUILD_DEPS_ARCH += , fonts-opensymbol +ifneq ($(MAKECMDGOALS),build-arch) +ifneq ($(filter pkg.libreoffice.opensymbolbuild,$(DEB_BUILD_PROFILES)),) +ENABLE_OPENSYMBOL_BUILD=y +endif +ifeq "$(ENABLE_OPENSYMBOL_BUILD)" "y" +CONFIGURE_FLAGS_INDEP += --enable-build-opensymbol +endif +endif + +ifeq "$(ENABLE_GUI)" "y" +BUILD_DEPS += ,\ + libgl-dev,\ + libice-dev,\ + libsm-dev,\ + libx11-dev,\ + libx11-xcb-dev, \ + libxaw7-dev,\ + libxext-dev,\ + libxinerama-dev,\ + libxkbfile-dev,\ + libxrender-dev,\ + libxt-dev,\ + libxtst-dev,\ + x11proto-render-dev +endif + +ifeq "$(ENABLE_HELP)" "y" +CONFIGURE_FLAGS_INDEP+= --with-help + ifeq "$(ENABLE_HTML_HELP)" "y" + CONFIGURE_FLAGS_INDEP+= --with-help=html + endif + ifneq "$(ENABLE_XMLHELP)" "y" + CONFIGURE_FLAGS += --disable-xmlhelp + endif +else + CONFIGURE_FLAGS += --without-helppack-integration --without-help +endif + + +ifeq "$(shell echo $(DEB_VERSION_UPSTREAM) | grep -E '(alpha|beta)'; echo $$?)" "1" +CONFIGURE_FLAGS += --enable-release-build +RELEASE_BUILD := y +endif + +ifeq "$(DEB_DISTRIBUTION)" "UNRELEASED" +BUGS=mailto:debian-openoffice@lists.debian.org +endif + +ifneq (terse,$(findstring terse,$(DEB_BUILD_OPTIONS))) +export verbose=t +endif + +############# +# Architecture-specific changes + +# helper to generate no_archs macros (pass name of source macro) +define gen_no_archs + _no_arch_macro = $(subst OOO_,OOO_NO_,$1) + _no_arch_tmp_$1 = $$(foreach _a,$$(filter-out $$(call $1),$(OOO_ARCHS)),!$$(_a)) + $$(_no_arch_macro) = $$(if $$(_no_arch_tmp_$1),$$(_empty) [$$(_no_arch_tmp_$1)]) +endef + +PLATFORMID := $(shell grep PLATFORMID debian/vars.$(DEB_HOST_ARCH) | cut -d"=" -f2) +RTL_OS := $(shell grep RTL_OS debian/vars.$(DEB_HOST_ARCH) | cut -d"=" -f2) +RTL_ARCH := $(shell grep RTL_ARCH debian/vars.$(DEB_HOST_ARCH) | cut -d"=" -f2) + +OOO_64BIT_ARCHS = $(filter alpha amd64 arm64 ia64 kfreebsd-amd64 loong64 mips64 mips64el ppc64 ppc64el riscv64 s390x sparc64, $(OOO_ARCHS)) +$(eval $(call gen_no_archs,OOO_64BIT_ARCHS)) +OOO_32BIT_ARCHS = $(filter-out $(OOO_64BIT_ARCHS),$(OOO_ARCHS)) +$(eval $(call gen_no_archs,OOO_32BIT_ARCHS)) +OOO_BE_ARCHS = $(filter hppa m68k mips mips64 powerpc powerpcspe ppc64 s390 s390x sparc sparc64,$(OOO_ARCHS)) +$(eval $(call gen_no_archs,OOO_BE_ARCHS)) +OOO_LE_ARCHS = $(filter-out $(OOO_BE_ARCHS),$(OOO_ARCHS)) +$(eval $(call gen_no_archs,OOO_LE_ARCHS)) +# ppc64el: see https://git.launchpad.net/~libreoffice/ubuntu/+source/libreoffice/patch/?id=be47aa72aad414537d27f0a18af7d067f1398666 and +# https://github.com/llvm/llvm-project/issues/63214 +OOO_CLANG_SUPPORTED_ARCHS := $(filter-out alpha ia64 ppc64el mipsel mips64el,$(OOO_LE_ARCHS)) +$(eval $(call gen_no_archs,OOO_CLANG_SUPPORTED_ARCHS)) + +# supported upstream (upstream does aarch64 flatpak builds) +OOO_CHECK_ARCHS := amd64 arm64 +$(eval $(call gen_no_archs,OOO_CHECK_ARCHS)) +OOO_JUNIT_ARCHS := amd64 arm64 +$(eval $(call gen_no_archs,OOO_JUNIT_ARCHS)) + +OOO_CHECK_FATAL_ARCHS := amd64 arm64 + +## original idea was without armhf, but since --disable-cve-tests for 32bit archs (see below) +## this now also passes. and the autopkgtests also pass (also the junit ones). +## So let's include armhf in the above +#OOO_CHECK_ARCHS += armhf +##OOO_JUNIT_ARCHS += armhf +#OOO_CHECK_FATAL_ARCHS += armhf + +# if bridgetest and smoketest fail this is surely not working in a way +# we would want in the archive +OOO_SMOKETEST_FATAL_ARCHS := $(OOO_ARCHS) + +# archs where the archive/ci runs autopkgtests +OOO_AUTOPKGTEST_ARCHS := $(OOO_CHECK_ARCHS) armel i386 ppc64el s390x riscv64 + +ifeq (alpha,$(findstring $(DEB_HOST_ARCH),$(OOO_ARCHS))) +PACKAGE_GEN=n +endif +ifeq (ia64,$(findstring $(DEB_HOST_ARCH),$(OOO_ARCHS))) +PACKAGE_GEN=n +endif + +BUILD_TESTS=y +ifeq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + BUILD_TESTS=n +endif + +ifeq "$(DEB_HOST_ARCH_BITS)" "32" + # consistently crash in vcl_filters_test when + # Testing load file:///<>//vcl/qa/cppunit/graphicfilter/data/tiff/fail/CVE-2017-9936-1.tiff: + # CVE-2017-9936 is a memory leak and even a expected failure. + # And we are not supposed to test for others' packages CVEs anyway, especially since this is fixed in libtiff + # in 4.0.8-3(see https://security-tracker.debian.org/tracker/CVE-2017-9936) so ages ago + CONFIGURE_FLAGS += --disable-cve-tests +endif + +RUN_MAKE_CHECK=n +ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),$(OOO_CHECK_ARCHS))) + RUN_MAKE_CHECK=y + endif + ifeq "$(RUN_MAKE_CHECK)" "y" + ifeq "$(ENABLE_JAVA)" "y" + ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),$(OOO_JUNIT_ARCHS))) + ENABLE_JUNIT4=y + endif + endif + # run the atspi tests + ifeq "$(BUILD_GTK3)" "y" + ENABLE_ATSPI_TESTS=y + endif + endif + IGNORE_MAKE_FAILURES=- + TEST_TIMEOUT := timeout --foreground --preserve-status -v -k 250m 200m + ifeq "$(RUN_MAKE_CHECK)" "y" + ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),$(OOO_CHECK_FATAL_ARCHS))) + IGNORE_MAKE_FAILURES:= + TEST_TIMEOUT:= + endif + else + ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),$(OOO_SMOKETEST_FATAL_ARCHS))) + IGNORE_MAKE_FAILURES:= + TEST_TIMEOUT:= + endif + endif +endif +ifeq "$(RUN_MAKE_CHECK)" "y" + BUILD_TESTS=y +else + BUILD_TESTS=n +endif + +# Java... +# upstream says --source=1.8 / --target=1.8 so 1.8 is fine in runtime +JAVA_RUNTIME_BASELINE=8 +JAVA_BRIDGE_BROKEN_ARCHS:=ppc64el s390x armhf +# like this it's more consistent (e.g. with armhf above); it should work, though... +JAVA_BRIDGE_BROKEN_ARCHS += armel +ifeq "$(JDK)" "default" +OOO_JAVA_ARCHS = $(filter-out $(JAVA_BRIDGE_BROKEN_ARCHS),$(filter $(OOO_ARCHS),$(java$(JAVA_RUNTIME_BASELINE)_architectures))) +else +OOO_JAVA_ARCHS = $(OOO_ARCHS) +endif +$(eval $(call gen_no_archs,OOO_JAVA_ARCHS)) + +# CLI +OOO_CLI_ARCHS := amd64 arm64 +$(eval $(call gen_no_archs,OOO_CLI_ARCHS)) + +OOO_ARCH_DEP_EXTENSIONS_ARCHS := $(OOO_ARCHS) +OOO_EXTENSIONS_ARCHS := $(OOO_ARCH_DEP_EXTENSIONS_ARCHS) + +OOO_BASE_ARCHS := $(OOO_ARCHS) +$(eval $(call gen_no_archs,OOO_BASE_ARCHS)) +OOO_REPORTBUILDER_ARCHS := $(OOO_JAVA_ARCHS) +$(eval $(call gen_no_archs,OOO_REPORTBUILDER_ARCHS)) +OOO_FIREBIRD_ARCHS := $(filter-out m68k,$(OOO_BASE_ARCHS)) +$(eval $(call gen_no_archs,OOO_FIREBIRD_ARCHS)) +OOO_NOGUI_ARCHS := $(filter amd64 i386 arm64 armhf s390x ppc64 ppc64el,$(OOO_ARCHS)) +$(eval $(call gen_no_archs,OOO_NOGUI_ARCHS)) +OOO_PDFIUM_ARCHS := $(OOO_ARCHS) +$(eval $(call gen_no_archs,OOO_PDFIUM_ARCHS)) + +ifneq (,$(filter $(DEB_HOST_ARCH),$(OOO_NO_BASE_ARCHS))) + ifneq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),$(OOO_BASE_ARCHS))) + PACKAGE_BASE=n + ENABLE_SDBC_POSTGRESQL=n + ENABLE_EVO2=n + ENABLE_REPORTBUILDER=n + DEBHELPER_OPTIONS += -Nlibreoffice-base libreoffice-base-core -Nlibreoffice-base-drivers + DEBHELPER_OPTIONS += -Nlibreoffice-evolution + DEBHELPER_OPTIONS += -Nlibreoffice-sdbc-postgresql -Nlibreoffice-sdbc-mysql + DEBHELPER_OPTIONS += -Nlibreoffice-sdbc-hsqldb -Nlibreoffice-sdbc-firebird + DEBHELPER_OPTIONS += -Nlibreoffice-report-builder-bin -Nlibreoffice-report-builder + DEBHELPER_OPTIONS += -Npython3-access2base +# CONFIGURE_FLAGS += --disable-database-connectivity + endif +endif + +ifeq (,$(filter $(DEB_HOST_ARCH),$(OOO_EXTENSIONS_ARCHS))) + ENABLE_MEDIAWIKI=n + ENABLE_NLPSOLVER=n + DEBHELPER_OPTIONS += -Nlibreoffice-wiki-publisher -Nlibreoffice-nlpsolver + CONFIGURE_FLAGS += --disable-extension-integration --disable-extensions +endif + +ifeq (,$(filter $(DEB_HOST_ARCH),$(OOO_JAVA_ARCHS))) + ENABLE_JAVA=n + ENABLE_REPORTBUILDER=n + ENABLE_MEDIAWIKI=n + ENABLE_NLPSOLVER=n +endif + +ifneq "$(BUILD_TEST_PACKAGES)" "y" + DEBHELPER_OPTIONS += -Nlibreoffice-subsequentcheckbase -Nlibreoffice-smoketest-data +else + BUILD_DEPS_INDEP += , junit4 $(JUNIT_MIN_VER) +endif + +ifeq "$(ENABLE_GUI)" "y" + ifeq ($(DEB_HOST_ARCH),$(filter $(DEB_HOST_ARCH),$(OOO_NOGUI_ARCHS))) + BUILD_NOGUI_PACKAGES=y + endif +else +CONFIGURE_FLAGS += --disable-gui +DEBHELPER_OPTIONS += -Nlibreoffice-core -Nlibreoffice-calc -Nlibreoffice-writer -Nlibreoffice-draw -Nlibreoffice-report-builder-bin -Nlibreoffice-base -Nlibreoffice-impress -Nlibreoffice-math +endif +ifneq "$(BUILD_NOGUI_PACKAGES)" "y" +DEBHELPER_OPTIONS += -Nlibreoffice-core-nogui -Nlibreoffice-calc-nogui -Nlibreoffice-writer-nogui -Nlibreoffice-draw-nogui -Nlibreoffice-report-builder-bin-nogui -Nlibreoffice-base-nogui -Nlibreoffice-impress-nogui -Nlibreoffice-math-nogui +endif + +# this assumes autopkgtest -B. Without -B it tries to use the built packages +# which would break (nogui being empty, needed l10ns not being there) +ifeq "$(AUTOPKGTEST_BUILD)" "y" +# save build time for languages we do not exactly need. +BUILD_ONLY_EN_US=y +# as above (for binary-indep), no need to do two builds here... +# needs to be here since there is arch-specific rules before +BUILD_NOGUI_PACKAGES=n +# go sure +BUILD_TESTS=y +BUILD_TEST_PACKAGES=y +ENABLE_JUNIT4=y +endif + +############# +# Distro-specific overrides + +# Debian Bookworm +ifeq "$(DEB_DISTRIBUTION)" "bookworm-backports" + BUGS=mailto:debian-backports@lists.debian.org + SYSTEM_STUFF := $(filter-out frozen mdds orcus libcmis,$(SYSTEM_STUFF)) + BOOKWORM_BACKPORT=y + ENABLE_CPDB=n + BUILD_GTK4=n + ENABLE_KF6=n + PLASMA_VERSION=5 +ifneq ($(MAKECMDGOALS),binary-indep) + ENABLE_KF5=y +endif + PLASMA_ARCHITECTURE=%OOO_ARCHS% +endif + +ifeq "$(BOOKWORM_BACKPORT)" "y" + ifneq (,$(shell grep t64 debian/control)) +$(error Revert t64 rename 6f794ba67d113395d7662c2ebf5f67b37eddff09 for bookworm-backports!) + endif +else + BUILD_DEPS += , dpkg-dev (>= 1.22.5) [$(filter-out i386,$(OOO_32BIT_ARCHS))] +endif + +CONFIGURE_FLAGS += $(foreach i, $(SYSTEM_STUFF),--with-system-$(i)) + +CC_PREFIX:=$(shell gcc -dumpmachine)- + +# generally use clang +USE_CLANG=n +# allow clang for skia? +ALLOW_CLANG=y + +CLANG_VERSION=default + +ifneq "$(shell echo $(USE_CLANG)$(ALLOW_CLANG) | grep y)" "" + # /usr/bin/ld: /usr/lib/llvm-11/bin/../lib/LLVMgold.so: error loading plugin: /usr/lib/llvm-11/bin/../lib/LLVMgold.so: cannot open shared object file: No such file or directory + # for mips64el and riscv64 that doesn't exist so disable LTO there... + ifeq "$(ENABLE_LTO)" "y" + ifeq "$(DEB_HOST_ARCH)" "mips64el" + ENABLE_LTO=n + endif + # we apparently also need --disable-split-debug (see below) since according to configure.ac both are + # "Inherently incompatible, since no debug info is created while compiling, GCC complains." + # so make it explicit + ifeq "$(DEB_HOST_ARCH)" "riscv64" + ENABLE_LTO=n + endif + # probably... + ifeq "$(DEB_HOST_ARCH)" "loong64" + ENABLE_LTO=n + endif + # since the llvm-defaults packages pointing to llvm 13(?) it apparently doesn't + # automatically pull in llvm-xx-linker-tools anymore which contains the needed LLVMgold.so + # (see above). + # So build-depend on llvm, too. + # We shouldn't depend on llvm-xx-linker-tools since this probably should be + # version-agnostic when the default changes (unless explicitely specified of course). + ifeq "$(USE_CLANG)" "y" + ifeq "$(CLANG_VERSION)" "default" + BUILD_DEPS += , llvm + else + BUILD_DEPS += , llvm-$(CLANG_VERSION)-linker-tools + endif + else + ifeq "$(ALLOW_CLANG)" "y" + ifeq "$(CLANG_VERSION)" "default" + BUILD_DEPS_ARCH += , llvm$(OOO_NO_CLANG_SUPPORTED_ARCHS) + else + BUILD_DEPS_ARCH += , llvm-$(CLANG_VERSION)-linker-tools$(OOO_NO_CLANG_SUPPORTED_ARCHS) + endif + endif + endif + endif +endif +ifeq "$(USE_DWZ)" "y" + # dwz errors out with + # dwz: debian/libreoffice-core/usr/lib/libreoffice/program/libskialo.so: Unknown debugging section .debug_addr + # since clang 14 + ifeq "$(USE_CLANG)" "y" + USE_DWZ := n + endif + ifeq "$(ENABLE_SKIA)" "y" + ifneq "$(shell echo $(ALLOW_CLANG) | grep y)" "" + ifeq "$(shell dpkg --compare-versions $(SYSTEM_CLANG_VERSION) ge 14 && echo true)" "true" + DH_DWZ_ARGS += -Xskia + endif + endif + endif +endif + +ifeq "$(USE_CLANG)" "y" + ENABLE_COMPILER_PLUGINS=n +endif + +# bridgetest fails when built with gcc 13, works with 12 +# or works with clang, so instead of build-depending on an obsolete +# gcc we take this route +ifneq "$(BOOKWORM_BACKPORT)" "y" +ifeq "$(DEB_HOST_ARCH)" "i386" + USE_CLANG=y +endif + BUILD_DEPS += , clang [i386] +endif +ifneq "$(USE_CLANG)" "y" + ifneq "$(GCC_VERSION)" "" + ifneq "$(SYSTEM_GCC_VERSION)" "$(GCC_VERSION)" + BUILD_DEPS += , gcc-$(GCC_VERSION), g++-$(GCC_VERSION) + CONFIGURE_FLAGS+= \ + CC=$(CC_PREFIX)gcc-$(GCC_VERSION) \ + CXX=$(CC_PREFIX)g++-$(GCC_VERSION) + endif + else + ifneq "$(BOOKWORM_BACKPORT)" "y" + BUILD_DEPS += , gcc (>= 4:12) [!i386], g++ (>= 4:12) [!i386] + else + BUILD_DEPS += , gcc (>= 4:12), g++ (>= 4:12) + endif + endif + # Use -O0 for gcc 10 on armhf to avoid build/test failure with gcc 10 + # https://bugs.launchpad.net/ubuntu/+bug/1891623 + # In Debian this never appeared to be an actual build failure but + # this also helps for the test timeout on armv8 machines/buildds. + # (armv7 "works"). So make it conditional on whether we run checks. + # With g++-10 there also appear SIGSEGVs in/with openjdk-11 and it + # hangs at RunMacros, which also tries to use Java "Macros". + # A --without-java build passes. +ifeq "$(DEB_HOST_ARCH)" "armhf" + ifeq ($(ENABLE_JAVA),y) + ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + ifneq (noopt,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + DEB_BUILD_OPTIONS += noopt + endif + endif + endif +endif + # and also on s390x since it otherwise gets miscompiled. + # Upstream tracked it down to a gcc bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106355 + # but + # 16:37 <@sberg> _rene_, I couldn't reproduce the issue with an -O0 (--enable-dbgutil) build, and can with a -O2 (no --enable-debug etc.) one +ifeq "$(DEB_HOST_ARCH)" "s390x" + ifneq (noopt,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + DEB_BUILD_OPTIONS += noopt + endif +endif +ifeq "$(DEB_HOST_ARCH)" "riscv64" + CONFIGURE_FLAGS += --disable-nan-tests + # see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1039906#26 (fixed) + # and it seems it the payloadNaN test actually passes with -O2 where it's + # unclear whether it actually is on hardware supporting it. Let's keep at + # -O0 for now and be sure it fails before shipping something broken + ifneq (noopt,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + DEB_BUILD_OPTIONS += noopt + endif + # see https://lists.debian.org/debian-riscv/2024/01/msg00018.html + CONFIGURE_FLAGS += --disable-split-debug +endif + # skia build picks up clang if present (for performance reasons, + # at least on Windows...). See the thread starting at + # https://lists.freedesktop.org/archives/libreoffice/2020-April/084929.html + # Make it a explicit build-dependency so we don't have builds + # "randomly" using gcc or clang depending on whether clang is installed + # or not + ifeq "$(ENABLE_SKIA)" "y" + ifeq "$(ALLOW_CLANG)" "y" + ifeq (ccache,$(findstring ccache,$(DEB_BUILD_OPTIONS))) + export CCACHE_CPP2=1 + endif + ifeq "$(CLANG_VERSION)" "default" + export LO_CLANG_CC=clang + export LO_CLANG_CXX=clang++ + BUILD_DEPS_ARCH += , clang$(OOO_NO_CLANG_SUPPORTED_ARCHS) + else + export LO_CLANG_CC=clang-$(CLANG_VERSION) + export LO_CLANG_CXX=clang++-$(CLANG_VERSION) + BUILD_DEPS_ARCH += , clang-$(CLANG_VERSION) [$(OOO_LE_ARCHS)] + endif + endif + endif +else + ifeq "$(CLANG_VERSION)" "default" + BUILD_DEPS += , clang + CONFIGURE_FLAGS+= CC=clang CXX=clang++ + else + BUILD_DEPS += , clang-$(CLANG_VERSION) + CONFIGURE_FLAGS+= CC=clang-$(CLANG_VERSION) CXX=clang++-$(CLANG_VERSION) + endif + ifeq "$(ENABLE_COMPILER_PLUGINS)" "y" + CONFIGURE_FLAGS += --enable-compiler-plugins + CLANGDIR := /usr/lib/llvm-$(shell $(CLANG) --version | head -n 1 | awk '{ print $$3 }' | cut -d. -f1) + ifeq "$(CLANG_VERSION)" "default" + BUILD_DEPS += , clang (>= 1:12.0.1), libclang-dev (>= 1:12.0.1), llvm-dev (>= 1:12.0.1) + else + BUILD_DEPS += , libclang-$(CLANG_VERSION)-dev, llvm-$(CLANG_VERSION)-dev + endif + endif +endif +USE_GOLD=n +ALLOW_GOLD=n +# leaves cruft around after building because it runs update_pch.sh.. +ENABLE_PCH=n + +ifeq "$(PACKAGE_SDK)" "y" + CONFIGURE_FLAGS += --enable-odk + ifeq "$(PACKAGE_SDK_DOCS)" "y" + BUILD_DEPS_INDEP += , doxygen , graphviz + else + CONFIGURE_FLAGS += --without-doxygen --without-javadoc + endif +endif + +ifeq "$(ENABLE_PDFIMPORT)" "y" + ifeq "$(ENABLE_POPPLER)" "y" + BUILD_DEPS += , libpoppler-dev, libpoppler-private-dev, libpoppler-cpp-dev + ifeq "$(RUN_MAKE_CHECK)" "y" + BUILD_DEPS_ARCH += , poppler-data$(OOO_NO_CHECK_ARCHS) + endif + else + CONFIGURE_FLAGS += --disable-poppler + endif + ifeq "$(ENABLE_PDFIUM)" "n" + CONFIGURE_FLAGS += --disable-pdfium + else + SYSTEM_STUFF += abseil + SYSTEM_STUFF += openjpeg + ifneq (,$(filter openjpeg, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libopenjp2-7-dev [$(OOO_PDFIUM_ARCHS)] + endif + ifneq (,$(filter abseil, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libabsl-dev [$(OOO_PDFIUM_ARCHS)] + endif + endif +endif + +ifeq "$(ENABLE_CUPS)" "y" + BUILD_DEPS += , libcups2-dev +else + CONFIGURE_FLAGS += --disable-cups +endif + +ifeq "$(ENABLE_CPDB)" "y" + BUILD_DEPS += , libcpdb-frontend-dev + CONFIGURE_FLAGS += --enable-cpdb +endif + + +ifneq (,$(filter graphite, $(SYSTEM_STUFF))) + BUILD_DEPS += , libgraphite2-dev +endif + +ifneq (,$(filter harfbuzz, $(SYSTEM_STUFF))) + BUILD_DEPS += , libharfbuzz-dev (>= 5.1.0) +endif + +ifneq (,$(filter libexttextcat, $(SYSTEM_STUFF))) + BUILD_DEPS += , libexttextcat-dev + TEXTCAT_DATA_RECOMMENDS := libexttextcat-data +endif + +ifneq "$(ENABLE_LDAP)" "y" + CONFIGURE_FLAGS += --disable-ldap +endif + +ifneq (,$(filter libnumbertext, $(SYSTEM_STUFF))) + BUILD_DEPS += , libnumbertext-dev + ifeq "$(RUN_MAKE_CHECK)" "y" + # https://cgit.freedesktop.org/libreoffice/core/commit/?h=libreoffice-7-3&id=09dfe214a30f58ddcd7a857db8f5eee68d4cef2a + BUILD_DEPS_ARCH += , libnumbertext-data (>= 1.0.11) + endif + NUMBERTEXT_DATA_RECOMMENDS := libnumbertext-data +endif + +ifneq (,$(filter jpeg, $(SYSTEM_STUFF))) + BUILD_DEPS += , libjpeg-dev +endif +ifneq (,$(filter libxml, $(SYSTEM_STUFF))) + BUILD_DEPS += , libxml2-dev, libxml2-utils + BUILD_DEPS += , libxslt1-dev +else + CONFIGURE_FLAGS += --without-system-libxml +endif +ifneq (,$(filter xmlsec, $(SYSTEM_STUFF))) + BUILD_DEPS += , libxmlsec1-dev (>= 1.2.35) + ifneq ($(BOOKWORM_BACKPORT),y) + ifneq (,$(filter $(OOO_CHECK_ARCHS),$(filter-out i386,$(OOO_32BIT_ARCHS)))) + BUILD_DEPS_ARCH += , libxmlsec1-dev (>= 1.2.39-5) [$(filter $(OOO_CHECK_ARCHS),$(filter-out i386,$(OOO_32BIT_ARCHS)))] + endif + endif +endif +ifneq (,$(filter expat, $(SYSTEM_STUFF))) + BUILD_DEPS += , libexpat1-dev +endif +ifneq (,$(filter odbc, $(SYSTEM_STUFF))) + BUILD_DEPS += , unixodbc-dev +endif +ifneq (,$(filter sane, $(SYSTEM_STUFF))) + BUILD_DEPS += , libsane-dev +endif +ifneq (,$(filter libpng, $(SYSTEM_STUFF))) + BUILD_DEPS += , libpng-dev +endif + +# otherwise librdf0-dev (which we also need) is uninstallable... +ifeq ($(BOOKWORM_BACKPORT),y) +CURL_SECTYPE=gnutls +else +# ... from trixie onwards it seems it has an alternative which allows openssl +CURL_SECTYPE=openssl +endif +ifeq "$(ENABLE_CURL)" "y" + ifneq (,$(filter curl, $(SYSTEM_STUFF))) + BUILD_DEPS += , libcurl4-$(CURL_SECTYPE)-dev + endif +else + CONFIGURE_FLAGS += --disable-curl +endif + +ifneq (,$(filter box2d, $(SYSTEM_STUFF))) + BUILD_DEPS += , libbox2d-dev +endif + +ifneq (,$(filter libwebp, $(SYSTEM_STUFF))) + BUILD_DEPS += , libwebp-dev +endif + +ifneq (,$(filter libtiff, $(SYSTEM_STUFF))) + BUILD_DEPS += , libtiff-dev +endif + +ifneq ($(ENABLE_COINMP),y) + CONFIGURE_FLAGS += --disable-coinmp +else + ifneq (,$(filter coinmp, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , coinor-libcoinmp-dev $(COINMP_MINVER), coinor-libcoinutils-dev $(COINUTILS_MINVER) + endif +endif + +ifneq (,$(filter amd64,$(DEB_HOST_ARCH))) + ifneq "$(AUTOPKGTEST_BUILD)" "y" + SMALL_SYMBOLS = n + endif +endif + +# silence long-obsolete warnings. Should probably be in +# upstreams makefiles but I failed to get it actually appear... +ifeq "$(DEB_HOST_ARCH)" "armel" + DEB_CXXFLAGS_MAINT_APPEND = -Wno-psabi +endif +ifeq "$(DEB_HOST_ARCH)" "armhf" + DEB_CXXFLAGS_MAINT_APPEND = -Wno-psabi +endif + +# see https://lists.freedesktop.org/archives/libreoffice/2023-September/090877.html +ifneq (,$(filter ppc64el s390x,$(DEB_HOST_ARCH))) + DEB_CFLAGS_MAINT_APPEND = -ffp-contract=off + DEB_CXXFLAGS_MAINT_APPEND = -ffp-contract=off +endif + +ifneq (,$(filter s390x,$(DEB_HOST_ARCH))) + ifeq (,$(shell gcc -v 2>&1 | grep disable-s390-excess-float-precision)) + DEB_CFLAGS_MAINT_APPEND = -fexcess-precision=fast + # the gcc manpage says + # "-fexcess-precision=standard is not implemented for languages other than C" + # but it works with this and fails without, so probably has some effect after all + DEB_CXXFLAGS_MAINT_APPEND = -fexcess-precision=fast + endif +endif + +ifeq "$(ENABLE_SYMBOLS)" "y" + # Small symbols? + ifeq "$(SMALL_SYMBOLS)" "y" + CONFIGURE_FLAGS += --enable-symbols=SMALL + DEB_CFLAGS_MAINT_STRIP += -g + DEB_CXXFLAGS_MAINT_STRIP += -g + DEB_CFLAGS_MAINT_PREPEND += -g1 + DEB_CXXFLAGS_MAINT_PREPEND += -g1 +export DEB_CFLAGS_MAINT_STRIP DEB_CXXFLAGS_MAINT_STRIP +export DEB_CFLAGS_MAINT_PREPEND DEB_CXXFLAGS_MAINT_PREPEND + else + CONFIGURE_FLAGS += --enable-symbols + endif +else + DEB_CFLAGS_MAINT_STRIP := -g + DEB_CXXFLAGS_MAINT_STRIP := -g +export DEB_CFLAGS_MAINT_STRIP DEB_CXXFLAGS_MAINT_STRIP +endif +export DPKG_EXPORT_BUILDFLAGS=y +include /usr/share/dpkg/buildflags.mk +ifeq (debug,$(findstring debug,$(DEB_BUILD_OPTIONS))) + CONFIGURE_FLAGS += --enable-debug +endif +ifeq (noopt,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CONFIGURE_FLAGS += --disable-optimized +endif + +ifeq "$(ENABLE_PYTHON)" "y" +PYMAJOR:=$(shell $(PYTHON) -c "import sys; print (sys.version_info[0])") +PYMINOR:=$(shell $(PYTHON) -c "import sys; print (sys.version_info[1])") +PYMINORPLUS1:=$(shell $(PYTHON) -c "import sys; print (sys.version_info[1]+1)") +PYTHON_SITE:=$(shell $(PYTHON) -c 'from distutils import sysconfig; print(sysconfig.get_python_lib())') +endif + + BUILD_DEPS += , $(PYTHON) +ifeq "$(ENABLE_PYTHON)" "y" + BUILD_DEPS += , $(PYTHON)-dev + BUILD_DEPS += , $(PYTHON)-setuptools + BUILD_DEPS += , dh-python + ifeq "$(RUN_MAKE_CHECK)" "y" + ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + BUILD_DEPS_ARCH += , $(PYTHON)-lxml$(OOO_NO_CHECK_ARCHS) + else + CONFIGURE_FLAGS += --without-lxml + endif + endif +endif + +ifeq "$(ENABLE_DOTNET)" "y" + #BUILD_DEPS_INDEP += , cli-common-dev [$(OOO_CLI_ARCHS)] + # both for Microsofts and Ubuntus packages + BUILD_DEPS_INDEP += , dotnet-sdk-8.0 [$(OOO_CLI_ARCHS)] +else + CONFIGURE_FLAGS += --without-dotnet +endif + + BUILD_DEPS += , debhelper-compat (= 12) + + ifeq "$(RUN_MAKE_CHECK)" "y" + BUILD_DEPS_ARCH += , locales | locales-all + BUILD_DEPS_ARCH += , gdb$(OOO_NO_CHECK_ARCHS) + BUILD_DEPS_ARCH += , fontconfig [$(OOO_AUTOPKGTEST_ARCHS)] +ifeq ($(BOOKWORM_BACKPORT),y) + BUILD_DEPS_ARCH += , fonts-liberation2 [$(OOO_AUTOPKGTEST_ARCHS)] +else + BUILD_DEPS_ARCH += , fonts-liberation (>= 1:2) [$(OOO_AUTOPKGTEST_ARCHS)] +endif + ifneq "$(BOOKWORM_BACKPORT)" "y" + BUILD_DEPS_ARCH += , fonts-crosextra-carlito (>= 20230309) [$(OOO_AUTOPKGTEST_ARCHS)] + else + BUILD_DEPS_ARCH += , fonts-crosextra-carlito (<< 20230309) [$(OOO_AUTOPKGTEST_ARCHS)] + endif + # porrst.cxx:85:Assertion + #Test name: (anonymous namespace)::testFloattableAnchorHeight::TestBody + #equality assertion failed + #- Expected: 1 + #- Actual : 2 + BUILD_DEPS_ARCH += , fonts-crosextra-caladea [$(OOO_AUTOPKGTEST_ARCHS)] + # https://lists.freedesktop.org/archives/libreoffice/2017-May/077764.html + BUILD_DEPS_ARCH += , fonts-dejavu [$(OOO_AUTOPKGTEST_ARCHS)] + # used in vcl/qa/cppunit/text.cxx:void VclTextTest::testImplLayoutArgs_PrepareFallback_precalculatedglyphs() + ifneq "$(BOOKWORM_BACKPORT)" "y" + BUILD_DEPS_ARCH += , fonts-hosny-amiri (>= 1.000) [$(OOO_AUTOPKGTEST_ARCHS)] + else + BUILD_DEPS_ARCH += , fonts-hosny-amiri [$(OOO_AUTOPKGTEST_ARCHS)] + endif + # sdext/source/pdfimport/test/tests.cxx (the test PDF uses NaskhArabic) and the result of the import is + # checked which fails without the font. Also used in /vcl/qa/cppunit/complextext.cxx (VclComplexTextTest::testCaching()) + BUILD_DEPS_ARCH += , fonts-noto-core [$(OOO_AUTOPKGTEST_ARCHS)] + # in pdfexport2.cxx (testTdf124116TrackUntrack - which uses David CLM) + BUILD_DEPS_ARCH += , culmus [$(OOO_AUTOPKGTEST_ARCHS)] + # FIXME: Linux Libertine G (does fonts-linuxlibertine even contain it?, I don't see the _G files?) + # now is used in test documents. + # now we get a abort if fonts is not found and replaced in layout tests (even though + # https://cgit.freedesktop.org/libreoffice/core/commit/?id=172270a8f04388a8f8062f672f9c3f3144a01a1f suggests that + # it isn't the case in --without-fonts) but... And while we disable that abort via patch having this + # to be sure there is no other failure mode makes sense (as with the other fonts above) + BUILD_DEPS_ARCH += , fonts-linuxlibertine [$(OOO_AUTOPKGTEST_ARCHS)] + # 17:35 <@sberg_> vmiklos, oh, what kind of poor test is that? "warn:sal.osl:3785:2:sal/osl/unx/process.cxx:344: ChildStatusProc : starting 'pstoedit' failed" etc. is what I see in workdir/CppunitTest/filter_eps_test.test.log... + BUILD_DEPS_ARCH += , pstoedit$(OOO_NO_CHECK_ARCHS) + BUILD_DEPS_ARCH += , imagemagick$(OOO_NO_CHECK_ARCHS) + BUILD_DEPS_ARCH += , ghostscript$(OOO_NO_CHECK_ARCHS) + + BUILD_DEPS_ARCH += , hunspell-en-us$(OOO_NO_CHECK_ARCHS) + BUILD_DEPS_ARCH += , hyphen-en-us$(OOO_NO_CHECK_ARCHS) + endif + # we don't run any cppunit check in all builds +# ifneq "$(AUTOPKGTEST_BUILD)" "y" + ifneq (,$(filter cppunit, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libcppunit-dev + # without the deterministic order patch the xmlsecurity_signing test fails. See + # https://cgit.freedesktop.org/libreoffice/core/commit/external/cppunit/order.patch.0?id=2f2246d22e2a8ccbc1dc3e6f5243734a61edf270 + ifeq "$(ENABLE_LTO)" "y" + BUILD_DEPS_ARCH += , libcppunit-dev (>= 1.15.1-4) [$(filter $(OOO_CHECK_ARCHS),$(OOO_ARCHS))] + endif + endif + ifeq ($(MAKECMDGOALS),binary-indep) + CONFIGURE_FLAGS_INDEP += --without-cppunit + endif +# endif + ifeq "$(ENABLE_JUNIT4)" "y" + BUILD_DEPS += , junit4 $(JUNIT_MIN_VER) [$(OOO_JUNIT_ARCHS)] + else + CONFIGURE_FLAGS += --without-junit + endif + ifeq "$(ENABLE_EXPORT_VALIDATION_TESTS)" "y" + BUILD_DEPS += , libofficeotron-java$(OOO_NO_CHECK_ARCHS) , libodfvalidator-java$(OOO_NO_CHECK_ARCHS) + else + CONFIGURE_FLAGS += --without-export-validation + endif +ifneq "$(BUILD_ONLY_EN_US)" "y" + ifeq (lang=,$(findstring lang=,$(DEB_BUILD_OPTIONS))) + ISOS=$(shell echo "$(DEB_BUILD_OPTIONS) " | sed -n 's/^.*lang=\([^\s].*\)\s.*/\1/p' | awk '{ print $$1 }' | sed -e 's/,/ /g') + ifeq "$(ENABLE_HELP)" "n" + HELPISOS= + else + HELPISOS=$(shell echo "$(DEB_BUILD_OPTIONS) " | sed -n 's/^.*lang=\([^\s].*\)\s.*/\1/p' | awk '{ print $$1 }' | sed -e 's/,/ /g') + endif + LANGPACKISOS=$(shell echo "$(DEB_BUILD_OPTIONS) " | sed -n 's/^.*lang=\([^\s].*\)\s.*/\1/p' | awk '{ print $$1 }' | sed -e 's/,/ /g') + else + # Note that the first one here *has to be* en-US. the first one gets + # gid_Module_Root as filelist later and the rest gid_Module_Root.$iso + # but we can't/shouldn't do dynamic switching, so let en-US be the first + # one to that gid_Module_Root always is english and the other langpacks + # have gid_Module_Root.$iso + #ISOS=$(shell $(SOURCE_TREE)/bin/lo-xlate-lang -i all') + ISOS:=en-US af am ar as ast be bg bn bn-IN br bs ca ca-valencia cs cy da de dz el \ + en-GB en-ZA eo es et eu fa fi fr ga gd gl gu gug he hi hr hu hy id is it ja \ + ka kk km kmr-Latn kn ko lt lv mk mn ml mr nb ne nl nn nr nso oc om or \ + pa-IN pl pt pt-BR ro ru rw si sk sl sr sr-Latn ss st sv szl \ + ta te tg th tl tn tr ts ug uk uz ve vi xh zh-CN zh-TW zu + ifeq "$(ENABLE_HELP)" "n" + HELPISOS:= + else + #HELPISOS:=$(shell $(SOURCE_TREE)/bin/lo-xlate-lang -i all') + HELPISOS:=en-US ca ca-valencia cs da de dz el en-GB es et eu fi fr gl hi hu id it \ + ja km ko nl om pl pt pt-BR ru sk sl sv tr vi zh-CN zh-TW + endif + #LANGPACKISOS:=$(shell $(SOURCE_TREE)/bin/lo-xlate-lang -i all') + LANGPACKISOS:=en-US af am ar as ast be bg bn bn-IN br bs ca ca-valencia cs cy da de dz el \ + en-GB en-ZA eo es et eu fa fi fr ga gd gl gu gug he hi hr hu hy id is it ja \ + ka kk km kmr-Latn kn ko lt lv mk mn ml mr nb ne nl nn nr nso oc om or \ + pa-IN pl pt pt-BR ro ru rw si sk sl sr sr-Latn ss st sv szl \ + ta te tg th tl tn tr ts ug uk uz ve vi xh zh-CN zh-TW zu + endif + # only needed if we supported builds without -B, see above + #ifeq "$(AUTOPKGTEST_BUILD)" "y" + # ISOS := en-US he zh-TW + # HELPISOS := en-US zh-TW + # LANGPACKISOS := en-US he zh-TW + #endif +else + ISOS=en-US + ifeq "$(ENABLE_HELP)" "n" + HELPISOS= + else + HELPISOS=en-US + endif + LANGPACKISOS=en-US +endif +BUILD_ISOS = $(ISOS) + +ifneq "$(BUILD_ONLY_EN_US)" "y" + ifneq "$(BUILD_ISOS)" "en-US" + CONFIGURE_FLAGS_LANG += --with-lang="$(BUILD_ISOS)" + CONFIGURE_FLAGS_INDEP += $(CONFIGURE_FLAGS_LANG) + BUILD_DEPS_INDEP += , gettext + endif +endif + +ifeq "$(ENABLE_JAVA)" "y" + ifeq ($(BOOKWORM_BACKPORT),y) + BUILD_DEPS += , java-common + else + BUILD_DEPS += , java-common (>= 0.75) + endif + BUILD_DEPS += , maven-repo-helper$(OOO_NO_JAVA_ARCHS) + ifeq "$(JDK)" "default" + JAVA_HOME=/usr/lib/jvm/default-java + DEFAULT_JDK := $(call java_dependency, default-jdk) + # build-depend on 1.9 (upstream needs it anyway for module-info support) + BUILD_DEPS += , $(shell echo $(DEFAULT_JDK) | sed -e 's/default-jdk/default-jdk (>= 2:1.9)/' | sed -e 's/\]/$(foreach i,$(JAVA_BRIDGE_BROKEN_ARCHS), !$(i))\]/') + endif + ifeq "$(JDK)" "openjdk" + BUILD_DEPS += , openjdk-$(JAVA_MAINVER)-jdk + JAVA_HOME=/usr/lib/jvm/java-$(JAVA_MAINVER)-openjdk-$(DEB_HOST_ARCH) + endif + TEST_JAVA_HOME=$(JAVA_HOME) + ifeq "$(ENABLE_MEDIAWIKI)" "y" + BUILD_DEPS_INDEP += , ant$(OOO_NO_JAVA_ARCHS) , ant-optional$(OOO_NO_JAVA_ARCHS) + else + # report-builder is done in build-arch already + ifneq (,$(filter jfreereport, $(SYSTEM_STUFF))) + BUILD_DEPS += , ant$(OOO_NO_JAVA_ARCHS) + else + BUILD_DEPS_INDEP += , ant$(OOO_NO_JAVA_ARCHS) + endif + endif + JAVA_RUNTIME_DEPENDS = default-jre (>= 2:1.$(JAVA_RUNTIME_BASELINE)) + JAVA_RUNTIME_DEPENDS += | java-runtime (>= $(JAVA_RUNTIME_BASELINE)) | java$(JAVA_RUNTIME_BASELINE)-runtime + # Suns Java "packages" + JAVA_RUNTIME_DEPENDS += | jre +export JAVA_HOME + CONFIGURE_FLAGS += --with-jdk-home=$(JAVA_HOME) + JAVA_COMMON_DEPENDS= , libreoffice-java-common + JAVA_COMMON_DEPENDS_VERSION:= (>= $(BASE_VERSION)~) + ifeq "$(ENABLE_MEDIAWIKI)" "y" + CONFIGURE_FLAGS_INDEP += --enable-ext-wiki-publisher + endif + ifeq "$(ENABLE_REPORTBUILDER)" "y" + # report-builder + ifneq (,$(filter jfreereport, $(SYSTEM_STUFF))) + REPORT_BUILDER_BUILD_DEPS += , libbase-java$(OOO_NO_REPORTBUILDER_ARCHS) , libsac-java$(OOO_NO_REPORTBUILDER_ARCHS) , libxml-java$(OOO_NO_REPORTBUILDER_ARCHS) , libflute-java$(OOO_NO_REPORTBUILDER_ARCHS) , libpentaho-reporting-flow-engine-java$(OOO_NO_REPORTBUILDER_ARCHS) , liblayout-java$(OOO_NO_REPORTBUILDER_ARCHS) , libloader-java$(OOO_NO_REPORTBUILDER_ARCHS) , libformula-java$(OOO_NO_REPORTBUILDER_ARCHS) , librepository-java$(OOO_NO_REPORTBUILDER_ARCHS) , libfonts-java$(OOO_NO_REPORTBUILDER_ARCHS) , libserializer-java$(OOO_NO_REPORTBUILDER_ARCHS) + REPORT_BUILDER_JAR_DEPENDS := , libbase-java, libsac-java, libxml-java, libflute-java, libpentaho-reporting-flow-engine-java, liblayout-java, libloader-java, libformula-java, librepository-java, libfonts-java, libserializer-java + CONFIGURE_FLAGS += --with-libbase-jar=/usr/share/java/libbase.jar --with-libxml-jar=/usr/share/java/libxml.jar --with-flute-jar=/usr/share/java/flute.jar --with-jfreereport-jar=/usr/share/java/flow-engine.jar --with-liblayout-jar=/usr/share/java/liblayout.jar --with-libloader-jar=/usr/share/java/libloader.jar --with-libformula-jar=/usr/share/java/libformula.jar --with-librepository-jar=/usr/share/java/librepository.jar --with-libfonts-jar=/usr/share/java/libfonts.jar --with-libserializer-jar=/usr/share/java/libserializer.jar + endif + BUILD_DEPS += $(REPORT_BUILDER_BUILD_DEPS) + else + CONFIGURE_FLAGS += --disable-report-builder + endif + ifeq "$(ENABLE_NLPSOLVER)" "y" + CONFIGURE_FLAGS_INDEP += --enable-ext-nlpsolver + endif + OOO_OFFICEBEAN_DEP = libofficebean-java + BUILD_DEPS += , javahelper $(JAVAHELPER_MIN_VERSION)$(OOO_NO_JAVA_ARCHS) +else + CONFIGURE_FLAGS += --without-java + DEBHELPER_OPTIONS += -Nlibofficebean-java -Nlibreoffice-java-common -Nlibreoffice-script-provider-bsh -Nlibreoffice-script-provider-js -Nlibreoffice-subsequentcheckbase -Nlibunoloader-java -Nliblibreoffice-java -Nlibreoffice-sdbc-hsqldb -Nure-java +endif + +ifeq "$(ENABLE_JAVA)" "y" + ifeq "$(shell $(JAVA_HOME)/bin/java -version 2>&1 | grep -q Zero && echo true)" "true" + RUN_MAKE_CHECK:=n + ENABLE_JUNIT4=n + endif +endif + +ifeq "$(ENABLE_NSS)" "y" + ifneq (,$(filter nss, $(SYSTEM_STUFF))) + BUILD_DEPS+= , libnss3-dev + BUILD_DEPS+= , libnspr4-dev + else + CONFIGURE_FLAGS += --without-system-nss + endif +else + CONFIGURE_FLAGS += --disable-nss +endif + +ifneq (,$(filter hunspell, $(SYSTEM_STUFF))) + BUILD_DEPS += , libhunspell-dev +endif + CONFIGURE_FLAGS += --with-external-dict-dir=$(DICT_DIR) + +ifneq (,$(filter altlinuxhyph, $(SYSTEM_STUFF))) + BUILD_DEPS += , libhyphen-dev +endif + CONFIGURE_FLAGS += --with-external-hyph-dir=$(HYPH_DIR) + +ifneq (,$(filter boost, $(SYSTEM_STUFF))) + ifneq "$(BOOST_VERSION)" "default" + BUILD_DEPS += , libboost$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-date-time$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-iostreams$(BOOST_VERSION)-dev, libboost-filesystem$(BOOST_VERSION)-dev, libboost-locale$(BOOST_VERSION)-dev + #BUILD_DEPS += , libboost-thread$(BOOST_VERSION)-dev, libboost-program-options$(BOOST_VERSION)-dev + ifeq (,$(filter orcus, $(SYSTEM_STUFF))) + BUILD_DEPS += , libboost-system$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-iostreams$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-program-options$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-filesystem$(BOOST_VERSION)-dev $(BOOST_MINVER) + endif + else + BUILD_DEPS += , libboost-dev $(BOOST_MINVER), libboost-date-time-dev $(BOOST_MINVER), libboost-iostreams-dev $(BOOST_MINVER), libboost-filesystem-dev $(BOOST_MINVER), libboost-locale-dev $(BOOST_MINVER) + #BUILD_DEPS += , libboost-thread-dev, libboost-program-options-dev + ifeq (,$(filter orcus, $(SYSTEM_STUFF))) + BUILD_DEPS += , libboost-system-dev $(BOOST_MINVER), libboost-iostreams-dev $(BOOST_MINVER), libboost-program-options-dev $(BOOST_MINVER), libboost-filesystem-dev $(BOOST_MINVER) + endif + endif + ifeq "$(shell if [ -e /usr/lib/$(DEB_HOST_MULTIARCH)/libboost_date_time.so ]; then echo true; fi)" "true" + CONFIGURE_FLAGS += --with-boost-libdir=/usr/lib/$(DEB_HOST_MULTIARCH) + endif + ifneq (,$(filter dragonbox, $(SYSTEM_STUFF))) + BUILD_DEPS += , libdragonbox-dev + endif + ifneq (,$(filter libfixmath, $(SYSTEM_STUFF))) + BUILD_DEPS += , libfixmath-dev + endif +endif + +ifneq "$(ENABLE_SKIA)" "y" + CONFIGURE_FLAGS += --disable-skia +endif + +ifneq (,$(filter mdds, $(SYSTEM_STUFF))) + BUILD_DEPS += , libmdds-dev (>= 2.1), libmdds-dev (<< 2.2~) +endif + +ifneq (,$(filter orcus, $(SYSTEM_STUFF))) + BUILD_DEPS += , liborcus-dev (>= 0.19.1), liborcus-dev (<< 0.20~) + ifneq ($(BOOKWORM_BACKPORT),y) + ifneq (,$(filter $(OOO_CHECK_ARCHS),$(filter-out i386,$(OOO_32BIT_ARCHS)))) + BUILD_DEPS_ARCH += , liborcus-dev (>> 0.19.2-3+b1) [$(filter $(OOO_CHECK_ARCHS),$(filter-out i386,$(OOO_32BIT_ARCHS)))] + endif + endif +endif + +ifeq "$(ENABLE_XMLHELP)" "y" + ifneq (,$(filter clucene, $(SYSTEM_STUFF))) + BUILD_DEPS += , libclucene-dev + endif +endif + +ifeq "$(USE_EXTERNAL_CXXLIBS)" "y" + ifneq (,$(filter librevenge, $(SYSTEM_STUFF))) + BUILD_DEPS += , librevenge-dev, librevenge-dev (<< 0.1~) + endif + ifneq (,$(filter libwpd, $(SYSTEM_STUFF))) + BUILD_DEPS += , libwpd-dev (>= 0.10), libwpd-dev (<< 0.11~) + endif + ifneq (,$(filter mythes, $(SYSTEM_STUFF))) + BUILD_DEPS += , libmythes-dev + endif + ifneq (,$(filter libwps, $(SYSTEM_STUFF))) + BUILD_DEPS += , libwps-dev (>= 0.4), libwps-dev (<< 0.5~) + endif + ifneq (,$(filter libwpg, $(SYSTEM_STUFF))) + BUILD_DEPS += , libwpg-dev (>= 0.3), libwpg-dev (<< 0.4~) + endif + ifneq (,$(filter libvisio, $(SYSTEM_STUFF))) + BUILD_DEPS += , libvisio-dev (>= 0.1), libvisio-dev (<< 0.2~) + endif + ifneq (,$(filter libcdr, $(SYSTEM_STUFF))) + BUILD_DEPS += , libcdr-dev (>= 0.1), libcdr-dev (<< 0.2~) + endif + ifneq (,$(filter libmspub, $(SYSTEM_STUFF))) + BUILD_DEPS += , libmspub-dev (>= 0.1), libmspub-dev (<< 0.2~) + endif + ifneq (,$(filter libmwaw, $(SYSTEM_STUFF))) +# BUILD_DEPS += , libmwaw-dev (>= 0.3.1), libmwaw-dev (<< 0.4~) +# configure.ac checks for >= 0.3.21 + BUILD_DEPS += , libmwaw-dev (>= 0.3.21), libmwaw-dev (<< 0.4~) +# ifeq "$(RUN_MAKE_CHECK)" "y" +# BUILD_DEPS_ARCH += , libmwaw-dev (>= 0.3.21)$(OOO_NO_CHECK_ARCHS) +# endif + endif + ifneq (,$(filter libodfgen, $(SYSTEM_STUFF))) + BUILD_DEPS += , libodfgen-dev (>= 0.1), libodfgen-dev (<< 0.2~) + endif + ifneq (,$(filter libepubgen, $(SYSTEM_STUFF))) + BUILD_DEPS += , libepubgen-dev (>= 0.1.0), libepubgen-dev (<< 0.2~) + endif + ifneq (,$(filter libetonyek, $(SYSTEM_STUFF))) + BUILD_DEPS += , libetonyek-dev, libetonyek-dev (<< 0.2~) + endif + ifneq (,$(filter libfreehand, $(SYSTEM_STUFF))) + BUILD_DEPS += , libfreehand-dev (>= 0.1), libfreehand-dev (<< 0.2~) + endif + ifneq (,$(filter libabw, $(SYSTEM_STUFF))) + BUILD_DEPS += , libabw-dev (>= 0.1), libabw-dev (<< 0.2~) + endif + ifneq (,$(filter libpagemaker, $(SYSTEM_STUFF))) + BUILD_DEPS += , libpagemaker-dev, libpagemaker-dev (<< 0.1~) + endif + ifneq (,$(filter libzmf, $(SYSTEM_STUFF))) + BUILD_DEPS += , libzmf-dev, libzmf-dev (<< 0.1~) + endif + ifneq (,$(filter libstaroffice, $(SYSTEM_STUFF))) + BUILD_DEPS += , libstaroffice-dev, libstaroffice-dev (<< 0.1~) + endif + ifneq (,$(filter libqxp, $(SYSTEM_STUFF))) + BUILD_DEPS += , libqxp-dev, libqxp-dev (<< 0.1~) + endif + ifneq (,$(filter libebook, $(SYSTEM_STUFF))) + BUILD_DEPS += , libe-book-dev (>= 0.1), libe-book-dev (<< 0.2~) + endif + ifeq "$(ENABLE_LIBCMIS)" "y" + ifneq (,$(filter libcmis, $(SYSTEM_STUFF))) + BUILD_DEPS += , libcmis-dev (>= 0.6.1~), libcmis-dev (<< 0.7~) + endif + else + CONFIGURE_FLAGS += --disable-libcmis + endif + ifeq "$(ENABLE_ZXING)" "y" + ifneq (,$(filter zxing, $(SYSTEM_STUFF))) + BUILD_DEPS += , libzxing-dev + endif + else + CONFIGURE_FLAGS += --disable-zxing + endif +endif + CONFIGURE_FLAGS += --with-external-thes-dir=$(THES_DIR) + +ifneq (,$(filter zxcvbn, $(SYSTEM_STUFF))) + BUILD_DEPS += , libzxcvbn-dev +endif + +ifeq "$(INSTALL_APPARMOR_PROFILES)" "y" + BUILD_DEPS_INDEP += , dh-apparmor + ifeq "$(CHECK_APPARMOR_PROFILES)" "true" + BUILD_DEPS_INDEP += , apparmor + endif +endif + +ifeq "$(ENABLE_EOT)" "y" + CONFIGURE_FLAGS += --enable-eot + ifneq (,$(filter libeot, $(SYSTEM_STUFF))) + BUILD_DEPS += , libeot-dev + endif +endif + +ifneq (,$(filter lcms2, $(SYSTEM_STUFF))) + BUILD_DEPS += , liblcms2-dev +endif + +ifneq (,$(filter openldap, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libldap-dev +endif + +ifneq (,$(filter liblangtag, $(SYSTEM_STUFF))) + BUILD_DEPS += , liblangtag-dev +endif + +ifneq (,$(filter icu, $(SYSTEM_STUFF))) + BUILD_DEPS += , libicu-dev +endif + + +ifeq "$(BUILD_CAIROCANVAS)" "y" + ifneq (,$(filter cairo, $(SYSTEM_STUFF))) + BUILD_DEPS+= , libcairo2-dev + endif +else + CONFIGURE_FLAGS+= --disable-cairo +endif + +ifeq "$(ENABLE_KF5)" "y" + CONFIGURE_FLAGS += --enable-kf5 + BUILD_DEPS_ARCH += , libkf5coreaddons-dev, libkf5i18n-dev, libkf5config-dev, libkf5windowsystem-dev, libkf5kio-dev +endif +ifeq "$(ENABLE_KF6)" "y" + CONFIGURE_FLAGS += --enable-kf6 + BUILD_DEPS_ARCH += , libkf6coreaddons-dev, libkf6i18n-dev, libkf6config-dev, libkf6windowsystem-dev, libkf6kio-dev +endif + PLASMA_ICONSET_DEP=libreoffice-style-breeze +ifeq "$(ENABLE_QT5)" "y" + CONFIGURE_FLAGS += --enable-qt5 + BUILD_DEPS_ARCH += , qtbase5-dev $(QT5_MINVER), qt5-qmake $(QT5_MINVER), qtbase5-dev-tools $(QT5_MINVER) + BUILD_DEPS_ARCH += , libqt5x11extras5-dev $(QT5_MINVER) + BUILD_DEPS_ARCH += , libglib2.0-dev + BUILD_DEPS_ARCH += , libxcb1-dev +endif +ifeq "$(ENABLE_QT6)" "y" + CONFIGURE_FLAGS += --enable-qt6 + BUILD_DEPS_ARCH += , qt6-base-dev $(QT6_MINVER), qmake6 $(QT6_MINVER), qt6-base-dev-tools $(QT6_MINVER) + BUILD_DEPS_ARCH += , libxcb1-dev +endif +ifneq "$(shell echo $(ENABLE_QT6)$(ENABLE_KF6) | grep -q y && echo true)" "true" + CONFIGURE_FLAGS += --disable-qt6-multimedia +else + ifeq "$(ENABLE_QT6_MULTIMEDIA)" "y" + ifneq "$(BOOKWORM_BACKPORT)" "y" + # go sure. the avmediaqt6 code has stuff enabled only if >= 6.5.0 + QT6_MINVER := (>= 6.5.0) + endif + BUILD_DEPS_ARCH += , qt6-multimedia-dev $(QT6_MINVER) + else + CONFIGURE_FLAGS += --disable-qt6-multimedia + endif +endif + +ifeq "$(ENABLE_MARIADB)" "y" + ifeq "$(MYSQL_FLAVOUR)" "default" + BUILD_DEPS_ARCH += , default-libmysqlclient-dev + else + ifeq "$(MYSQL_FLAVOUR)" "mysql" + ifneq (,$(filter mariadb, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libmysqlclient-dev + endif + MARIADBCONFIG=/usr/bin/mysql_config + endif + ifeq "$(MYSQL_FLAVOUR)" "mariadb" + ifneq (,$(filter mariadb, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libmariadb-dev + endif + MARIADBCONFIG=/usr/bin/mariadb_config + endif + endif +else + CONFIGURE_FLAGS += --disable-mariadb-sdbc +endif + +ifeq "$(ENABLE_FIREBIRD)" "y" + BASE_FIREBIRD_RECOMMENDS = libreoffice-sdbc-firebird [$(OOO_FIREBIRD_ARCHS)] + ifneq (,$(filter libatomic-ops, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libatomic-ops-dev$(OOO_NO_FIREBIRD_ARCHS) + endif + ifneq (,$(filter libtommath, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , libtommath-dev$(OOO_NO_FIREBIRD_ARCHS) + endif + ifneq (,$(filter firebird, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH += , firebird-dev$(OOO_NO_FIREBIRD_ARCHS) + # we need libEngine12.so + ifeq "$(RUN_MAKE_CHECK)" "y" + BUILD_DEPS_ARCH += , firebird$(FIREBIRD_VERSION)-server-core $(OOO_NO_FIREBIRD_ARCHS) + endif + FIREBIRD_ENGINE_DEPENDS += firebird$(FIREBIRD_VERSION)-server-core + endif +else + CONFIGURE_FLAGS += --disable-firebird-sdbc +endif + +ifeq "$(BUILD_GTK3)" "y" + BUILD_DEPS_ARCH += , libgtk-3-dev, libglib2.0-dev + ifneq (cairo,$(findstring cairo,$(SYSTEM_STUFF))) + $(error GTK3 build fails without system-cairo!!) + endif + ifeq (,$(filter epoxy, $(SYSTEM_STUFF))) + BUILD_DEPS += , libegl1-mesa-dev + endif + GNOME_GTK_RECOMMENDS += libreoffice-gtk3 + ifeq "$(ENABLE_INTROSPECTION)" "y" + BUILD_DEPS_ARCH += , gobject-introspection , libgirepository1.0-dev + CONFIGURE_FLAGS += --enable-introspection + else + DEBHELPER_OPTIONS+= -Ngir1.2-lokdocview-0.1 + endif + ifeq "$(ENABLE_ATSPI_TESTS)" "y" + # make sure it is enabled; it is auto-enabled if the below is there, though + CONFIGURE_FLAGS_TESTS += --enable-atspi-tests + BUILD_DEPS_ARCH += , libatspi2.0-dev$(OOO_NO_CHECK_ARCHS) , at-spi2-core$(OOO_NO_CHECK_ARCHS) + BUILD_DEPS_ARCH += , xvfb$(OOO_NO_CHECK_ARCHS) , xauth$(OOO_NO_CHECK_ARCHS) , dbus-x11$(OOO_NO_CHECK_ARCHS) + else + # explicitely disable it if not wanted as t is auto-enabled if the above is there + CONFIGURE_FLAGS += --disable-atspi-tests + endif +else + CONFIGURE_FLAGS += --disable-gtk3 +endif + +ifeq "$(BUILD_GTK4)" "y" + GTK4_MINVER := (>= 4.10) + BUILD_DEPS_ARCH += , libgtk-4-dev $(GTK4_MINVER), libglib2.0-dev, libcairo2-dev, libatk1.0-dev + CONFIGURE_FLAGS += --enable-gtk4 +endif + +ifeq "$(ENABLE_EVO2)" "n" + CONFIGURE_FLAGS += --disable-evolution2 + #DEBHELPER_OPTIONS += -Nlibreoffice-evolution +else + CONFIGURE_FLAGS += --enable-evolution2 + BUILD_DEPS_ARCH += , libebook1.2-dev + LIBEBOOK_DEP = $(shell debian/scripts/get_libebook_dep.sh) +endif + +ifeq "$(ENABLE_SDBC_POSTGRESQL)" "y" + ifneq (,$(filter postgresql, $(SYSTEM_STUFF))) + BUILD_DEPS += , libkrb5-dev + BUILD_DEPS_ARCH += , libpq-dev + else + BUILD_DEPS += , libkrb5-dev + endif +else + CONFIGURE_FLAGS += --disable-postgresql-sdbc +endif + +ifeq "$(ENABLE_RANDR)" "y" + BUILD_DEPS += , libxrandr-dev +else + CONFIGURE_FLAGS += --disable-randr +endif + +ifneq "$(ENABLE_PYTHON)" "y" + DEBHELPER_OPTIONS+= -Npython3-uno -Nlibreoffice-script-provider-python -Npython3-access2base -Npython3-scriptforge + CONFIGURE_FLAGS += --disable-python +else + PYUNO_DEPENDS = python3-uno + CONFIGURE_FLAGS += --enable-python=system +endif + +ifneq "$(PACKAGE_LIBRELOGO)" "y" + DEBHELPER_OPTIONS+= -Nlibreoffice-librelogo + CONFIGURE_FLAGS += --disable-librelogo +endif + +ifeq "$(ENABLE_JAVA)" "y" + ifneq (,$(filter hsqldb, $(SYSTEM_STUFF))) + #HSQLDB_MINVER= + HSQLDB_JAR=/usr/share/java/hsqldb1.8.0.jar + BUILD_DEPS += , libhsqldb1.8.0-java $(HSQLDB_MINVER)$(OOO_NO_JAVA_ARCHS) , libarchive-zip-perl$(OOO_NO_JAVA_ARCHS) + BASE_HSQLDB_DEPENDS = libhsqldb1.8.0-java $(HSQLDB_MINVER) + CONFIGURE_FLAGS += --with-hsqldb-jar=$(HSQLDB_JAR) + else + BUILD_DEPS += , libservlet3.1-java + endif + ifeq "$(ENABLE_SCRIPT_PROVIDER_BSH)" "y" + ifneq (,$(filter beanshell, $(SYSTEM_STUFF))) + BUILD_DEPS_INDEP += , libbsh-java + endif + CONFIGURE_FLAGS_INDEP += --enable-scripting-beanshell + else + CONFIGURE_FLAGS += --disable-scripting-beanshell + DEBHELPER_OPTIONS += -Nlibreoffice-script-provider-bsh + endif + ifeq "$(ENABLE_SCRIPT_PROVIDER_JS)" "y" + ifneq (,$(filter rhino, $(SYSTEM_STUFF))) + BUILD_DEPS_INDEP += , librhino-java + endif + CONFIGURE_FLAGS_INDEP += --enable-scripting-javascript + else + CONFIGURE_FLAGS += --disable-scripting-javascript + DEBHELPER_OPTIONS += -Nlibreoffice-script-provider-js + endif +endif + +ifeq ($(ENABLE_LPSOLVE),y) + ifneq (,$(filter lpsolve, $(SYSTEM_STUFF))) + ifeq "$(USE_SHARED_LPSOLVE)" "y" + BUILD_DEPS_ARCH += , liblpsolve55-dev $(LPSOLVE_MIN_VERSION), lp-solve $(LPSOLVE_MIN_VERSION) + LPSOLVE_DEP = lp-solve $(LPSOLVE_MIN_VERSION) + else + BUILD_DEPS += , liblpsolve55-dev $(LPSOLVE_MIN_VERSION) + endif + endif + ifneq (,$(filter colamd, $(SYSTEM_STUFF))) + BUILD_DEPS += , libsuitesparse-dev $(SUITESPARSE_MIN_VERSION) + endif +else + CONFIGURE_FLAGS += --disable-lpsolve +endif + +ifeq "$(USE_DBUS)" "y" + BUILD_DEPS_ARCH += , libdbus-1-dev + ifeq "$(ENABLE_BLUETOOTH)" "y" + BUILD_DEPS += , libglib2.0-dev + ifneq (,$(filter bluez, $(SYSTEM_STUFF))) + BUILD_DEPS += , libbluetooth-dev [linux-any] + endif + else + CONFIGURE_FLAGS += --disable-sdremote-bluetooth + endif + ifeq "$(ENABLE_PACKAGEKIT)" "y" + CONFIGURE_FLAGS += --enable-packagekit + endif +else + CONFIGURE_FLAGS += --disable-dbus +endif + +ifeq "$(ENABLE_AVAHI)" "y" + BUILD_DEPS_ARCH += , libavahi-client-dev + CONFIGURE_FLAGS += --enable-avahi +endif + +ifeq "$(USE_GSTREAMER)" "y" + BUILD_DEPS_ARCH += , libgstreamer1.0-dev + CONFIGURE_FLAGS += --enable-gstreamer-1-0 + BUILD_DEPS_ARCH += , libgstreamer-plugins-base1.0-dev + GSTREAMER_PLUGINS_SUGGESTS += , gstreamer1.0-plugins-base, gstreamer1.0-plugins-good, gstreamer1.0-plugins-ugly, gstreamer1.0-plugins-bad, gstreamer1.0-libav +else + CONFIGURE_FLAGS += --disable-gstreamer-1-0 +endif + +ifeq "$(ENABLE_WEBDAV)" "y" + ifneq (,$(filter curl, $(SYSTEM_STUFF))) + BUILD_DEPS += , libcurl4-$(CURL_SECTYPE)-dev + endif + ENABLE_CURL=y +else + CONFIGURE_FLAGS += --with-webdav=no +endif + +ENABLE_SAL_OPENSSL_BACKEND=n +ifneq "$(ENABLE_SAL_OPENSSL_BACKEND)" "y" + ifneq (,$(filter mariadb, $(SYSTEM_STUFF))) + ifneq (,$(filter postgresql, $(SYSTEM_STUFF))) + CONFIGURE_FLAGS += --disable-openssl + endif + endif +else + CONFIGURE_FLAGS += --enable-cipher-openssl-backend + SYSTEM_STUFF += openssl + BUILD_DEPS += , libssl-dev +endif + +SYSTEM_STUFF += lockfile +ifneq (,$(filter lockfile, $(SYSTEM_STUFF))) + BUILD_DEPS += , liblockfile-bin +endif + +ifneq (,$(filter frozen, $(SYSTEM_STUFF))) + BUILD_DEPS += , libfrozen-dev +endif + +ifneq (,$(filter argon2, $(SYSTEM_STUFF))) + BUILD_DEPS += , libargon2-dev +endif + +ifneq (,$(filter redland, $(SYSTEM_STUFF))) + BUILD_DEPS += , librdf0-dev +endif + +ifeq "$(ENABLE_GUI)" "y" + ifneq (,$(filter epoxy, $(SYSTEM_STUFF))) + BUILD_DEPS += , libepoxy-dev + else + BUILD_DEPS += , libegl1-mesa-dev + endif +endif +ifneq (,$(filter glm, $(SYSTEM_STUFF))) + BUILD_DEPS += , libglm-dev +endif + +ifeq "$(ENABLE_GPGMEPP)" "y" +ifneq (,$(filter gpgmepp, $(SYSTEM_STUFF))) + BUILD_DEPS_ARCH+= , libgpgmepp-dev, libgpgme-dev, libgpg-error-dev +endif +ifeq "$(RUN_MAKE_CHECK)" "y" + BUILD_DEPS_ARCH += , gpg$(OOO_NO_CHECK_ARCHS) + BUILD_DEPS_ARCH += , gpgconf$(OOO_NO_CHECK_ARCHS) + BUILD_DEPS_ARCH += , gpg-agent$(OOO_NO_CHECK_ARCHS) +endif +else + CONFIGURE_FLAGS += --disable-gpgmepp +endif + +ifeq "$(ENABLE_GIO)" "y" + ifneq "$(BUILD_GTK3)" "y" + BUILD_DEPS_ARCH += , libglib2.0-dev + endif +else + CONFIGURE_FLAGS += --disable-gio +endif + +ifeq "$(ENABLE_DCONF)" "y" + BUILD_DEPS += , libdconf-dev (>= 0.40) +else + CONFIGURE_FLAGS += --disable-dconf +endif + +ifeq ($(ENABLE_MERGELIBS),y) + CONFIGURE_FLAGS += --enable-mergelibs +endif + +ifeq ($(ENABLE_LTO),y) + CONFIGURE_FLAGS += --enable-lto + # see https://lists.debian.org/debian-devel-changes/2021/11/msg02548.html + BUILD_DEPS += , binutils (>= 2.37-9) [ppc64] +endif + +ifeq ($(BOOKWORM_BACKPORT),y) + LIBERATION_FONT_RECOMMENDS += , fonts-liberation + LIBERATION2_FONT_RECOMMENDS += , fonts-liberation2 +else + LIBERATION_FONT_RECOMMENDS += , fonts-liberation-sans-narrow + LIBERATION2_FONT_RECOMMENDS += , fonts-liberation (>= 1:2) +endif +LIBERATION_FONTS_RECOMMENDS += $(LIBERATION2_FONT_RECOMMENDS) $(LIBERATION_FONT_RECOMMENDS) + +# go sure. if we explicitely disable LTO when it is enabled we don't want it to sneak in +# (and vice-versa). See https://lists.debian.org/debian-devel/2022/06/msg00092.html +ifeq ($(ENABLE_LTO),y) +export DEB_BUILD_MAINT_OPTIONS=optimize=+lto +# honour parallel=X. We can just remove the auto here (coming from dpkg-buildflags) +# since upstream already adds -flto=jobserver (honouring PARALLEL already). +# Replacing -flto=auto doesn't work since clang doesn't understand -flto=X (except thin) +DEB_CFLAGS_MAINT_STRIP += -flto=auto +DEB_CXXFLAGS_MAINT_STRIP += -flto=auto +DEB_LDFLAGS_MAINT_STRIP += -flto=auto +# save space +ifeq "$(SMALL_SYMBOLS)" "y" +DEB_CFLAGS_MAINT_STRIP += -ffat-lto-objects +DEB_CXXFLAGS_MAINT_STRIP += -ffat-lto-objects +DEB_LDFLAGS_MAINT_STRIP += -ffat-lto-objects +endif +export DEB_CFLAGS_MAINT_STRIP DEB_CXXFLAGS_MAINT_STRIP DEB_LDFLAGS_MAINT_STRIP +export DEB_CFLAGS_MAINT_APPEND DEB_CXXFLAGS_MAINT_APPEND DEB_LDFLAGS_MAINT_APPEND +else +export DEB_BUILD_MAINT_OPTIONS=optimize=-lto +endif + +ifeq ($(USE_GOLD),y) + CONFIGURE_FLAGS += --enable-ld=gold +else + # --enable-ld=gold is default for debug builds if found + # FIXME: Should we allow gold here nevertheless? configure + # prints the following with --disable-ld: + # * WARNING : Linker is not capable of creating gdb index, debugger startup will be slow + ifeq (debug,$(findstring debug,$(DEB_BUILD_OPTIONS))) + ifneq "$(ALLOW_GOLD)" "y" + CONFIGURE_FLAGS += --disable-ld + endif + endif +endif +ifneq (,$(findstring mips,$(DEB_HOST_ARCH))) +#10:46 < _rene_> can anyone shed a light on /<>/workdir/LinkTarget/Executable/bestreversemap: error while loading shared libraries: +# /<>/instdir/program/libuno_sal.so.3: ELF file ABI version invalid? both were built in the same LO build +#10:47 < _rene_> mips64el, apparently since gcc9 or new(er) binutils? +#10:47 < _rene_> on an other binary: +#10:47 < _rene_> file /home/rene/libreoffice-6.3.1~rc2/instdir/program/libunoidllo.so +# /home/rene/libreoffice-6.3.1~rc2/instdir/program/libunoidllo.so: ELF 64-bit LSB shared object, MIPS, MIPS64 rel2 version 1 (SYSV), +# dynamically linked, BuildID[sha1]=82f15433db9000b9dfee24ed07e2082ffb439dfd, with debug_info, not stripped +#10:47 < _rene_> (eller, mips64el chroot) +#[...] +#13:49 < aurel32> _rene_: the problem is the ABI version, ie those library have Version ABI: 5 instead of 0 for normal binaries +#13:50 < aurel32> the ABI version 5 will be used for gnu hash support in mips +#13:51 < aurel32> support has been added to binutils trunk recently, although the default is still sysv hash style +#13:51 < aurel32> and glibc support is still being reviewed, it might land in 2.31 +#13:51 < aurel32> previous version of libreoffice used -Wl,--hash-style=sysv +#13:52 < aurel32> now it seems it autodetect that binutils has gnu hash support and it passes -Wl,--hash-style=gnu +#13:52 < aurel32> but there is no support for the full toolchain yet +#13:54 < _rene_> so I need to force -Wl,--hash-style=sysv? +#13:54 < aurel32> --with-linker-hash-style +#13:54 < aurel32> Use linker with --hash-style=