From 227ba32f0668cd53054ec66275774ae337ef1195b7929245b046a6a25318d78b Mon Sep 17 00:00:00 2001 From: Gordon Leung Date: Wed, 18 Sep 2024 14:52:02 +0000 Subject: [PATCH] - Update vendored deps to resolve boo#1230693 OBS-URL: https://build.opensuse.org/package/show/Publishing:TeXLive/tectonic?expand=0&rev=36 --- .gitattributes | 23 ++++ .gitignore | 1 + 0001-build-set-c-standard-to-c-17.patch | 26 ++++ ...ls-tags_from_lang-hb_ot_tag_from_lan.patch | 45 +++++++ _constraints | 11 ++ _service | 9 ++ tectonic-0.15.0.tar.gz | 3 + tectonic.changes | 126 ++++++++++++++++++ tectonic.spec | 71 ++++++++++ vendor.tar.zst | 3 + 10 files changed, 318 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 0001-build-set-c-standard-to-c-17.patch create mode 100644 0002-fix-update-symbols-tags_from_lang-hb_ot_tag_from_lan.patch create mode 100644 _constraints create mode 100644 _service create mode 100644 tectonic-0.15.0.tar.gz create mode 100644 tectonic.changes create mode 100644 tectonic.spec create mode 100644 vendor.tar.zst diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/0001-build-set-c-standard-to-c-17.patch b/0001-build-set-c-standard-to-c-17.patch new file mode 100644 index 0000000..c168164 --- /dev/null +++ b/0001-build-set-c-standard-to-c-17.patch @@ -0,0 +1,26 @@ +From 55252b6d5e3ac14b8c990a0d56ec2c827bca37e6 Mon Sep 17 00:00:00 2001 +From: Soc Virnyl Estela +Date: Tue, 28 May 2024 12:02:54 +0800 +Subject: [PATCH 1/2] build: set c standard to c++17 + +Signed-off-by: Soc Virnyl Estela +--- + crates/xetex_layout/build.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/crates/xetex_layout/build.rs b/crates/xetex_layout/build.rs +index bdd0d03f..558fd29e 100644 +--- a/crates/xetex_layout/build.rs ++++ b/crates/xetex_layout/build.rs +@@ -86,7 +86,7 @@ fn main() { + let mut cppcfg = cc::Build::new(); + + let cppflags = [ +- "-std=c++14", ++ "-std=c++17", + "-Wall", + "-Wdate-time", + "-Wendif-labels", +-- +2.45.1 + diff --git a/0002-fix-update-symbols-tags_from_lang-hb_ot_tag_from_lan.patch b/0002-fix-update-symbols-tags_from_lang-hb_ot_tag_from_lan.patch new file mode 100644 index 0000000..a01755f --- /dev/null +++ b/0002-fix-update-symbols-tags_from_lang-hb_ot_tag_from_lan.patch @@ -0,0 +1,45 @@ +From 7b62ef557d524e49d4f44e3a136af7f59d9d392c Mon Sep 17 00:00:00 2001 +From: Soc Virnyl Estela +Date: Tue, 28 May 2024 12:04:26 +0800 +Subject: [PATCH 2/2] fix: update symbols tags_from_lang -> + hb_ot_tag_from_language + +Signed-off-by: Soc Virnyl Estela +--- + crates/xetex_layout/layout/xetex-XeTeXLayoutInterface.cpp | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/crates/xetex_layout/layout/xetex-XeTeXLayoutInterface.cpp b/crates/xetex_layout/layout/xetex-XeTeXLayoutInterface.cpp +index 89c1de6a..73aaf7a0 100644 +--- a/crates/xetex_layout/layout/xetex-XeTeXLayoutInterface.cpp ++++ b/crates/xetex_layout/layout/xetex-XeTeXLayoutInterface.cpp +@@ -494,7 +494,7 @@ getGraphiteFeatureSettingCode(XeTeXLayoutEngine engine, uint32_t featureID, uint + return rval; + } + +-#define tag_from_lang(x) hb_tag_from_string(hb_language_to_string(x), strlen(hb_language_to_string(x))) ++#define hb_ot_tag_from_language(x) hb_tag_from_string(hb_language_to_string(x), strlen(hb_language_to_string(x))) + + uint32_t + getGraphiteFeatureDefaultSetting(XeTeXLayoutEngine engine, uint32_t featureID) +@@ -506,7 +506,7 @@ getGraphiteFeatureDefaultSetting(XeTeXLayoutEngine engine, uint32_t featureID) + + if (grFace != NULL) { + const gr_feature_ref* feature = gr_face_find_fref(grFace, featureID); +- gr_feature_val *featureValues = gr_face_featureval_for_lang (grFace, tag_from_lang(engine->language)); ++ gr_feature_val *featureValues = gr_face_featureval_for_lang (grFace, hb_ot_tag_from_language(engine->language)); + + rval = gr_fref_feature_value(feature, featureValues); + } +@@ -1023,7 +1023,7 @@ initGraphiteBreaking(XeTeXLayoutEngine engine, const uint16_t* txtPtr, int txtLe + grPrevSlot = NULL; + } + +- gr_feature_val *grFeatureValues = gr_face_featureval_for_lang (grFace, tag_from_lang(engine->language)); ++ gr_feature_val *grFeatureValues = gr_face_featureval_for_lang (grFace, hb_ot_tag_from_language(engine->language)); + + int nFeatures = engine->nFeatures; + hb_feature_t *features = engine->features; +-- +2.45.1 + diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..56d9313 --- /dev/null +++ b/_constraints @@ -0,0 +1,11 @@ + + + + + 8 + + + 12 + + + diff --git a/_service b/_service new file mode 100644 index 0000000..e05d6bd --- /dev/null +++ b/_service @@ -0,0 +1,9 @@ + + + tectonic-*.tar.gz + zst + true + + + + diff --git a/tectonic-0.15.0.tar.gz b/tectonic-0.15.0.tar.gz new file mode 100644 index 0000000..6a4e311 --- /dev/null +++ b/tectonic-0.15.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c13de312c4fe39ff905ad17e64a15a3a59d33ab65dacb0a8b9482c57e6bc6aa +size 2469470 diff --git a/tectonic.changes b/tectonic.changes new file mode 100644 index 0000000..b31dea8 --- /dev/null +++ b/tectonic.changes @@ -0,0 +1,126 @@ +------------------------------------------------------------------- +Wed Sep 18 14:50:33 UTC 2024 - Gordon Leung + +- Update vendored deps to resolve boo#1230693 + +------------------------------------------------------------------- +Tue Sep 3 14:42:41 UTC 2024 - Gordon Leung + +- Update vendored deps to resolve boo#1230089 + +------------------------------------------------------------------- +Tue Jun 18 09:54:10 UTC 2024 - Soc Virnyl Estela + +- Fix leap builds + +------------------------------------------------------------------- +Tue May 28 04:18:15 UTC 2024 - Soc Virnyl Estela + +- Replace 0001-build-set-standard-to-c-17.patch to 0001-build-set-c-standard-to-c-17.patch +- Adjust patches for the release branch. tectonic uses a separate branch for releases + so that's why the patches are failing + +------------------------------------------------------------------- +Tue May 28 03:18:21 UTC 2024 - Soc Virnyl Estela + +- Update vendored dependencies. +- Apply the following patches for icu 75 support + * 0001-build-set-standard-to-c-17.patch + * 0002-fix-update-symbols-tags_from_lang-hb_ot_tag_from_lan.patch +- Update _service file and replace obsoleted "disabled" option + +------------------------------------------------------------------- +Wed Apr 24 09:41:30 UTC 2024 - Gordon Leung + +- Remove redundant %{cargo_build} + +------------------------------------------------------------------- +Sun Mar 24 23:37:06 UTC 2024 - Gordon Leung + +- Update to version 0.15.0 + * The --web-bundle flag can now be used in more situations, specifically + tectonic -X new and tectonic -X init + * As part of the above work, you can now activate the "V2" interface with the + -X flag in more places on the Tectonic command line. + * The Tectonic.toml file used by the "V2" interface now supports a + [metadata] section for arbitrary structured user metadata. + * The "V2" interface also now supports external commands. + If you have a program named tectonic-blah in your search path, running + tectonic -X blah will execute it. + * Running tectonic -Z help (as opposed to tectonic -Zhelp) now actuallyworks + works + +------------------------------------------------------------------- +Tue Jul 4 23:36:32 UTC 2023 - Eyad Issa + +- Update to version 0.14.1 + * Bugfix release +- Update to version 0.14.0 + * Tectonic’s BibTeX engine has been partially translated from C to Rust + +Full changelog at https://github.com/tectonic-typesetting/tectonic/compare/tectonic%400.13.1...tectonic%400.14.1 + +------------------------------------------------------------------- +Tue May 23 14:32:32 UTC 2023 - Soc Virnyl Estela + +- Update to version 0.13.1: + * Fix a bug introduced in the previous release where custom commands in the + tectonic -X watch mode break. + * Update the version of the vendored Harfbuzz library to the latest, 7.3.0 + and all other cargo dependencies. + +------------------------------------------------------------------- +Fri May 19 00:46:11 UTC 2023 - Soc Virnyl Estela + +- Update to version 0.13.0 + * Add new V2 command `tectonic -X init`. This initializes a new document in + the current directory much like `cargo init`. + * Setting the `shell-escape-cwd` unstable option. + * Update many developer dependencies to newer versions + +------------------------------------------------------------------- +Fri Apr 14 14:12:12 UTC 2023 - Soc Virnyl Estela + +- Update of vendored dependencies + +------------------------------------------------------------------- +Tue Feb 14 01:38:12 UTC 2023 - William Brown + +- Automatic update of vendored dependencies + +------------------------------------------------------------------- +Sat Jan 28 10:58:04 UTC 2023 - Soc Virnyl Estela + +- Lessen required memory to 8GB to enable arm builds. + +------------------------------------------------------------------- +Sun Oct 30 09:57:10 UTC 2022 - Soc Virnyl Estela + +- Update to version 0.12.0: + * Partial support for the dvipdfmx:config special has been added. + * A dumb crash was fixed when attempting to create HTML output + with an input that has not been set up for the Tectonic HTML compilation + framework. + * preliminary official build for the Apple Metal platform. + +------------------------------------------------------------------- +Fri Oct 14 13:29:43 UTC 2022 - socvirnyl.estela@gmail.com + +- Update to version 0.11.0: + * bridge_harfbuzz: work around build failure with macOS SDK 10.9 + * engine_spx2html: make sure a code comment isn't treated as a test + * engine_spx2html: fix clippy complaints + * engine_spx2html: handle glyphs without associated ActualText + * engine_spx2html: tidy up special handling and properly exit init on tdux:asp, tdux:dt, etc. + +------------------------------------------------------------------- +Thu Jul 14 13:52:16 UTC 2022 - Soc Virnyl Estela + +- disabled tests since we updated the vendored dependencies: + The cause of failure is just a check of difference of hashes between + created files. + +------------------------------------------------------------------- +Thu Jul 14 10:32:50 UTC 2022 - Soc Virnyl Estela + +- Initial spec for tectonic 0.9.0 diff --git a/tectonic.spec b/tectonic.spec new file mode 100644 index 0000000..377549e --- /dev/null +++ b/tectonic.spec @@ -0,0 +1,71 @@ +# +# spec file for package tectonic +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: tectonic +Version: 0.15.0 +Release: 0 +Summary: Modernized self-contained TeX and LaTeX engine +License: (Apache-2.0 OR MIT) AND BSD-3-Clause ) AND ( 0BSD OR MIT OR Apache-2.0 ) AND ( Apache-2.0 OR BSL-1.0 ) AND ( Apache-2.0 OR MIT ) AND ( Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT ) AND ( MIT OR Apache-2.0 AND BSD-2-Clause ) AND ( MIT OR Apache-2.0 OR Zlib ) AND ( MIT OR Zlib OR Apache-2.0 ) AND ( Unlicense OR MIT ) AND ( Zlib OR Apache-2.0 OR MIT ) AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT AND WTFPL +Group: Productivity/Publishing/TeX/Utilities +URL: https://tectonic-typesetting.github.io +Source0: https://github.com/tectonic-typesetting/tectonic/archive/refs/tags/%{name}@%{version}.tar.gz#/%{name}-%{version}.tar.gz +Source1: vendor.tar.zst +Patch1: 0001-build-set-c-standard-to-c-17.patch +Patch2: 0002-fix-update-symbols-tags_from_lang-hb_ot_tag_from_lan.patch +%if 0%{?suse_version} > 1600 +BuildRequires: c++_compiler +BuildRequires: c_compiler +%else +BuildRequires: gcc13 +BuildRequires: gcc13-c++ +BuildRequires: libstdc++6-devel-gcc13 +%endif +BuildRequires: cargo-packaging +BuildRequires: pkg-config +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(harfbuzz) +# https://github.com/tectonic-typesetting/tectonic/issues/1190 +BuildRequires: pkgconfig(icu-uc) +BuildRequires: pkgconfig(libpng) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(zlib) +ExclusiveArch: %{rust_arches} + +%description +Tectonic is a complete self-contained TeX/LaTeX engine powered by +XeTeX and TeXLive. + +%prep +%autosetup -p1 -a1 -n %{name}-%{name}-%{version} + +%build + +%install +%if 0%{?suse_version} <= 1600 +export CC=gcc-13 +export CXX=g++-13 +%endif +%{cargo_install} --features external-harfbuzz + +%files +%{_bindir}/tectonic +%license LICENSE +%doc README.md + +%changelog diff --git a/vendor.tar.zst b/vendor.tar.zst new file mode 100644 index 0000000..0949a0a --- /dev/null +++ b/vendor.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b992b8479e9c2956a3f4f0a6eac11efdb1ae39c7d1b108c959437861bcc962da +size 49241916