x2t: update to 9.1.0

This commit is contained in:
Arnout Engelen
2025-11-16 14:15:49 +01:00
parent d8388416d0
commit 667362c81e
2 changed files with 76 additions and 41 deletions

View File

@@ -7,6 +7,9 @@
fetchFromGitHub, fetchFromGitHub,
glibc, glibc,
harfbuzz, harfbuzz,
libheif,
x265,
libde265,
icu, icu,
jdk, jdk,
lib, lib,
@@ -28,7 +31,7 @@ let
fixIcu = writeScript "fix-icu.sh" '' fixIcu = writeScript "fix-icu.sh" ''
substituteInPlace \ substituteInPlace \
$BUILDRT/Common/3dParty/icu/icu.pri \ $BUILDRT/Common/3dParty/icu/icu.pri \
--replace-fail "ICU_MAJOR_VER = 58" "ICU_MAJOR_VER = ${lib.versions.major icu.version}" --replace-fail "ICU_MAJOR_VER = 74" "ICU_MAJOR_VER = ${lib.versions.major icu.version}"
mkdir $BUILDRT/Common/3dParty/icu/linux_64 mkdir $BUILDRT/Common/3dParty/icu/linux_64
ln -s ${icu}/lib $BUILDRT/Common/3dParty/icu/linux_64/build ln -s ${icu}/lib $BUILDRT/Common/3dParty/icu/linux_64/build
@@ -46,6 +49,13 @@ let
rev = "be6df458d4540eee375c513958dcb862a391cdd1"; rev = "be6df458d4540eee375c513958dcb862a391cdd1";
hash = "sha256-SYJFLtrg8raGyr3zQIEzZDjHDmMmt+K0po3viipZW5c="; hash = "sha256-SYJFLtrg8raGyr3zQIEzZDjHDmMmt+K0po3viipZW5c=";
}; };
# see core/Common/3dParty/html/fetch.py
gumbo-parser-src = fetchFromGitHub {
owner = "google";
repo = "gumbo-parser";
rev = "aa91b27b02c0c80c482e24348a457ed7c3c088e0";
hash = "sha256-+607iXJxeWKoCwb490pp3mqRZ1fWzxec0tJOEFeHoCs=";
};
# see build_tools scripts/core_common/modules/googletest.py # see build_tools scripts/core_common/modules/googletest.py
googletest-src = fetchFromGitHub { googletest-src = fetchFromGitHub {
owner = "google"; owner = "google";
@@ -61,12 +71,33 @@ let
rev = "73dd2967c8e1e4f6d7334ee9e539a323d6e66cbd"; rev = "73dd2967c8e1e4f6d7334ee9e539a323d6e66cbd";
hash = "sha256-WIHpSkOwHkhMvEKxOlgf6gsPs9T3xkzguD8ONXARf1U="; hash = "sha256-WIHpSkOwHkhMvEKxOlgf6gsPs9T3xkzguD8ONXARf1U=";
}; };
# see core/Common/3dParty/html/fetch.py # core/Common/3dParty/md/fetch.py
gumbo-parser-src = fetchFromGitHub { md4c-src = fetchFromGitHub {
owner = "google"; owner = "mity";
repo = "gumbo-parser"; repo = "md4c";
rev = "aa91b27b02c0c80c482e24348a457ed7c3c088e0"; rev = "481fbfbdf72daab2912380d62bb5f2187d438408";
hash = "sha256-+607iXJxeWKoCwb490pp3mqRZ1fWzxec0tJOEFeHoCs="; hash = "sha256-zhInM3R0CJUqnzh6wRxMwlUdErovplbZQ5IwXe9XzZ4=";
};
# core/Common/3dParty/apple/fetch.py
glm-src = fetchFromGitHub {
owner = "g-truc";
repo = "glm";
rev = "33b4a621a697a305bc3a7610d290677b96beb181";
hash = "sha256-wwGI17vlQzL/x1O0ANr5+KgU1ETnATpLw3njpKfjnKQ=";
};
# core/Common/3dParty/apple/fetch.py
mdds-src = fetchFromGitHub {
owner = "kohei-us";
repo = "mdds";
rev = "0783158939c6ce4b0b1b89e345ab983ccb0f0ad0";
hash = "sha256-HMGMxMRO6SadisUjZ0ZNBGQqksNDFkEh3yaQGet9rc0=";
};
# core/Common/3dParty/apple/fetch.py
librevenge-src = fetchFromGitHub {
owner = "DistroTech";
repo = "librevenge";
rev = "becd044b519ab83893ad6398e3cbb499a7f0aaf4";
hash = "sha256-2YRxuMYzKvvQHiwXH08VX6GRkdXnY7q05SL05Vbn0Vs=";
}; };
# core/Common/3dParty/apple/fetch.py # core/Common/3dParty/apple/fetch.py
libodfgen-src = fetchFromGitHub { libodfgen-src = fetchFromGitHub {
@@ -75,31 +106,7 @@ let
rev = "8ef8c171ebe3c5daebdce80ee422cf7bb96aa3bc"; rev = "8ef8c171ebe3c5daebdce80ee422cf7bb96aa3bc";
hash = "sha256-Bv/smZFmZn4PEAcOlXD2Z4k96CK7A7YGDHFDsqZpuiE="; hash = "sha256-Bv/smZFmZn4PEAcOlXD2Z4k96CK7A7YGDHFDsqZpuiE=";
}; };
# core/Common/3dParty/md/fetch.py # core/Common/3dParty/apple/fetch.py
md4c-src = fetchFromGitHub {
owner = "mity";
repo = "md4c";
rev = "481fbfbdf72daab2912380d62bb5f2187d438408";
hash = "sha256-zhInM3R0CJUqnzh6wRxMwlUdErovplbZQ5IwXe9XzZ4=";
};
mdds-src = fetchFromGitHub {
owner = "kohei-us";
repo = "mdds";
rev = "0783158939c6ce4b0b1b89e345ab983ccb0f0ad0";
hash = "sha256-HMGMxMRO6SadisUjZ0ZNBGQqksNDFkEh3yaQGet9rc0=";
};
glm-src = fetchFromGitHub {
owner = "g-truc";
repo = "glm";
rev = "33b4a621a697a305bc3a7610d290677b96beb181";
hash = "sha256-wwGI17vlQzL/x1O0ANr5+KgU1ETnATpLw3njpKfjnKQ=";
};
librevenge-src = fetchFromGitHub {
owner = "DistroTech";
repo = "librevenge";
rev = "becd044b519ab83893ad6398e3cbb499a7f0aaf4";
hash = "sha256-2YRxuMYzKvvQHiwXH08VX6GRkdXnY7q05SL05Vbn0Vs=";
};
libetonyek-src = fetchFromGitHub { libetonyek-src = fetchFromGitHub {
owner = "LibreOffice"; owner = "LibreOffice";
repo = "libetonyek"; repo = "libetonyek";
@@ -110,14 +117,14 @@ let
qmakeFlags = [ ]; qmakeFlags = [ ];
dontStrip = false; dontStrip = false;
# Revisions that correspond to onlyoffice-documentserver 9.0.2 # Revisions that correspond to onlyoffice-documentserver 9.1.0
core-rev = "bcc5f67ec89602fe41941f11c7f9eb801f2a3c89"; core-rev = "82e281cf6bf89498e4de6018423b36576706c2b6";
core = fetchFromGitHub { core = fetchFromGitHub {
owner = "ONLYOFFICE"; owner = "ONLYOFFICE";
repo = "core"; repo = "core";
# rev that the 'core' submodule in documentserver points at # rev that the 'core' submodule in documentserver points at
rev = core-rev; rev = core-rev;
hash = "sha256-KzY/5fwZfgdEYmPsNkV3AGGYw23mEAhtGfyko3sYeTo="; hash = "sha256-LzbO2A29WxM0XTAO2LGTtg9omL0Pvoh+6+q3ux4i7do=";
}; };
web-apps = buildNpmPackage (finalAttrs: { web-apps = buildNpmPackage (finalAttrs: {
name = "onlyoffice-core-webapps"; name = "onlyoffice-core-webapps";
@@ -128,8 +135,8 @@ let
owner = "ONLYOFFICE"; owner = "ONLYOFFICE";
repo = "web-apps"; repo = "web-apps";
# rev that the 'web-apps' submodule in documentserver points at # rev that the 'web-apps' submodule in documentserver points at
rev = "06bc5a77e9997c1766ba8088c255ba0b14e4fca3"; rev = "f63e9674a5d2d2e5a660ab726ec00a359fc3c750";
hash = "sha256-QSVCPnqL2mdK7irVCNna08dJAtrDVwe77k31Cof4L18="; hash = "sha256-kKm6+phd6a7kP/kv6/v/FFgh96Kbs6h6jIjpFtRJgps=";
}; };
sourceRoot = "${finalAttrs.src.name}/build"; sourceRoot = "${finalAttrs.src.name}/build";
@@ -168,8 +175,8 @@ let
owner = "ONLYOFFICE"; owner = "ONLYOFFICE";
repo = "sdkjs"; repo = "sdkjs";
# rev that the 'sdkjs' submodule in documentserver points at # rev that the 'sdkjs' submodule in documentserver points at
rev = "649a4b57ba25a204cc7b31299652c0de8ff0e42c"; rev = "d169f841a7e9e46368c36236dd5820e3e10d4a98";
hash = "sha256-acKoLQemAyFGCrVRsUUbl/iAQsh/ouSW+fX/hLgT3x8="; hash = "sha256-GQwzz3P49sWjCxh41zyuUs5MyMjBQXaMKzxUUTHq0UE=";
}; };
sourceRoot = "${finalAttrs.src.name}/build"; sourceRoot = "${finalAttrs.src.name}/build";
@@ -206,7 +213,7 @@ let
dictionaries = fetchFromGitHub { dictionaries = fetchFromGitHub {
owner = "ONLYOFFICE"; owner = "ONLYOFFICE";
repo = "dictionaries"; repo = "dictionaries";
tag = "v9.0.3.7"; rev = "d3223bbb777883db66ac3cd249f71c6ebdc992c7";
hash = "sha256-7hvztNYnYjyOl3ynGP0vqtx9jLPp09XVDNIow1RYuWM="; hash = "sha256-7hvztNYnYjyOl3ynGP0vqtx9jLPp09XVDNIow1RYuWM=";
}; };
buildCoreComponent = buildCoreComponent =
@@ -337,10 +344,22 @@ let
buildInputs = [ buildInputs = [
unicodeConverter unicodeConverter
kernel kernel
libheif.lib
x265
libde265
]; ];
preConfigure = '' preConfigure = ''
ln -s ${katana-parser-src} $BUILDRT/Common/3dParty/html/katana-parser ln -s ${katana-parser-src} $BUILDRT/Common/3dParty/html/katana-parser
mkdir -p $BUILDRT/Common/3dParty/heif/libheif/libheif
ln -s ${libheif.dev}/include $BUILDRT/Common/3dParty/heif/libheif/libheif/api
mkdir -p $BUILDRT/Common/3dParty/heif/libheif/build/linux_64/release
ln -s ${libheif.lib}/lib $BUILDRT/Common/3dParty/heif/libheif/build/linux_64/release/libheif
mkdir -p $BUILDRT/Common/3dParty/heif/x265_git/build/linux_64
ln -s ${x265}/lib $BUILDRT/Common/3dParty/heif/x265_git/build/linux_64/release
mkdir -p $BUILDRT/Common/3dParty/heif/libde265/build/linux_64/release
ln -s ${libde265}/lib $BUILDRT/Common/3dParty/heif/libde265/build/linux_64/release/libde265
# Common/3dParty/harfbuzz/make.py # Common/3dParty/harfbuzz/make.py
cat >$BUILDRT/Common/3dParty/harfbuzz/harfbuzz.pri <<EOL cat >$BUILDRT/Common/3dParty/harfbuzz/harfbuzz.pri <<EOL
INCLUDEPATH += ${harfbuzz.dev}/include/harfbuzz INCLUDEPATH += ${harfbuzz.dev}/include/harfbuzz
@@ -492,6 +511,9 @@ let
cryptopp cryptopp
network network
]; ];
patches = [
./pdffile-limits-include.patch
];
}; };
djvufile = buildCoreComponent "DjVuFile" { djvufile = buildCoreComponent "DjVuFile" {
buildInputs = [ buildInputs = [
@@ -676,6 +698,7 @@ let
unicodeConverter unicodeConverter
kernel kernel
graphics graphics
libheif.lib
]; ];
qmakeFlags = qmakeFlags ++ icuQmakeFlags; qmakeFlags = qmakeFlags ++ icuQmakeFlags;
preConfigure = '' preConfigure = ''
@@ -715,7 +738,7 @@ buildCoreComponent "X2tConverter/build/Qt" {
pname = "x2t"; pname = "x2t";
# x2t is not 'directly' versioned, so we version it after the version # x2t is not 'directly' versioned, so we version it after the version
# of documentserver it's pulled into as a submodule # of documentserver it's pulled into as a submodule
version = "9.0.2"; version = "9.1.0";
buildInputs = [ buildInputs = [
unicodeConverter unicodeConverter

View File

@@ -0,0 +1,12 @@
diff --git a/PdfFile/SrcWriter/Utils.cpp b/PdfFile/SrcWriter/Utils.cpp
index f4fcd884c6..0454c2a75a 100644
--- a/PdfFile/SrcWriter/Utils.cpp
+++ b/PdfFile/SrcWriter/Utils.cpp
@@ -33,6 +33,7 @@
#include <vector>
#include <ctime>
#include <cwctype>
+#include <limits>
namespace PdfWriter
{