Sync from SUSE:SLFO:Main graphite2 revision a6af99e220284281664cb2ebece63a03

This commit is contained in:
Adrian Schröter 2024-05-03 13:17:02 +02:00
commit 4126a1c004
7 changed files with 464 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -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

1
baselibs.conf Normal file
View File

@ -0,0 +1 @@
libgraphite2-3

View File

@ -0,0 +1,9 @@
diff -Naur graphite-1.3.14.orig/src/CMakeLists.txt graphite-1.3.14/src/CMakeLists.txt
--- graphite-1.3.14.orig/src/CMakeLists.txt 2020-08-10 10:08:58.963417496 +0200
+++ graphite-1.3.14/src/CMakeLists.txt 2020-08-10 10:13:14.909357757 +0200
@@ -156,4 +156,4 @@
install(TARGETS graphite2 EXPORT graphite2 LIBRARY DESTINATION lib${LIB_SUFFIX} ARCHIVE DESTINATION lib${LIB_SUFFIX} PUBLIC_HEADER DESTINATION include/graphite2 RUNTIME DESTINATION bin)
-install(EXPORT graphite2 DESTINATION share/graphite2 NAMESPACE gr2_)
+install(EXPORT graphite2 DESTINATION lib${LIB_SUFFIX}/graphite2 NAMESPACE gr2_)

BIN
graphite2-1.3.14.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

297
graphite2.changes Normal file
View File

@ -0,0 +1,297 @@
-------------------------------------------------------------------
Mon Sep 25 12:22:23 UTC 2023 - pgajdos@suse.com
- fixed license string [bsc#1207676]:
LGPL-2.1-or-later OR MPL-2.0 OR GPL-2.0-or-later
-------------------------------------------------------------------
Thu Jan 27 14:57:57 UTC 2022 - Fridrich Strba <fstrba@suse.com>
- Fix license header so that it corresponds to SPDX abbreviation
-------------------------------------------------------------------
Wed May 19 15:16:07 UTC 2021 - Fridrich Strba <fstrba@suse.com>
- Define conditionally make_build to fix build on systems that do
not have that macro
-------------------------------------------------------------------
Wed Aug 12 09:16:40 UTC 2020 - Matthias Eliasson <elimat@opensuse.org>
- Update to 1.3.14:
* Bug fixes
* Allow features to be hidden (for aliases)
* Move to python3
* Rename doc files from .txt to .asc
- Run spec-cleaner
* Remove rpm groups
* Use make macros
* Use license macro
- Refresh patches:
* link-gcc-shared.diff
* graphite2-1.2.0-cmakepath.patch
-------------------------------------------------------------------
Wed Aug 12 09:15:09 UTC 2020 - Matthias Eliasson <elimat@opensuse.org>
- Update to 1.3.13:
* Resolve minor spacing issue in rtl non-overlap kerning
* python3 for graphite.py
* Better fuzzing
* Better building on windows
-------------------------------------------------------------------
Sun Dec 15 20:09:52 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- BuildIgnore shared-mime-info, pulled in by libglib-2_0-0. Required
by gvfs to do mime detection, but not required for building.
-------------------------------------------------------------------
Thu Oct 25 08:08:51 UTC 2018 - Petr Gajdos <pgajdos@suse.com>
- Update to 1.3.12:
. Graphite no longer does dumb rendering for fonts with no smarts
. Segment caching code removed. Anything attempting to use the
segment cache gets given a regular face instead
. Add libfuzzer support
. Builds now require C++11
. Improvements to Windows 64 bit builds
. Support different versions of python including 32 bit and python 3
. Various minor bug fixes
- refreshed patch
% link-gcc-shared.diff
- removed patch
- graphite2-CVE-2018-7999.patch (upstreamed)
-------------------------------------------------------------------
Fri Mar 16 12:58:15 UTC 2018 - tchvatal@suse.com
- Use python3 everywhere
- Drop fonttools test dep as it pulls TON of py3 packages
-------------------------------------------------------------------
Mon Mar 12 13:13:26 UTC 2018 - pgajdos@suse.com
- Update to 1.3.11:
- removed patches (upstreamed or not needed)
* gcc8.patch (code commeted out)
* graphite-nonvoid-return.patch (code commented out)
* graphite2-python3_tests.patch (upstreamed)
* graphite2-python3_tests_cornercases.patch (upstreamed
- refreshed patch
* link-gcc-shared.diff
- fixes security issue: CVE-2018-7999 [bsc#1084850]
+ graphite2-CVE-2018-7999.patch
-------------------------------------------------------------------
Thu Feb 15 11:02:52 UTC 2018 - schwab@suse.de
- gcc8.patch: return correct value from stream operator
-------------------------------------------------------------------
Thu Jan 18 13:58:56 UTC 2018 - tchvatal@suse.com
- Do not BR asciidoc as we do not install the generated html page
-------------------------------------------------------------------
Tue Dec 5 12:03:29 UTC 2017 - tchvatal@suse.com
- Make sure we switch to python3 only on SLE15+ and not on SLE12
-------------------------------------------------------------------
Mon Nov 20 12:16:37 UTC 2017 - mpluskal@suse.com
- Add patches to fix tests when using python3:
* graphite2-python3_tests.patch
* graphite2-python3_tests_cornercases.patch
- Refresh all other patches
- Use fancy name for downloaded tarball
- Run spec-cleaner
-------------------------------------------------------------------
Wed Jun 21 19:13:30 UTC 2017 - tchvatal@suse.com
- Use %ctest macro
- Update license string to lgpl2.1+ and mpl2.0+
- Remove patch graphite2-CVE-2017-5436.patch
- Update to 1.3.10:
* Upstream marks this as contianing various bugfixes without
any specific mentions
-------------------------------------------------------------------
Mon Apr 24 07:22:01 UTC 2017 - pgajdos@suse.com
- security update:
* CVE-2017-5436 [bsc#1035204]
+ graphite2-CVE-2017-5436.patch
-------------------------------------------------------------------
Mon Nov 21 10:53:29 UTC 2016 - pgajdos@suse.com
- Version update to 1.3.9: fixes some bugs in the collision
avoidance and may give slightly improved results in some cases.
-------------------------------------------------------------------
Thu Jun 2 12:10:15 UTC 2016 - tchvatal@suse.com
- Version update to 1.3.8:
* Various bugfixes found by fuzzers
-------------------------------------------------------------------
Mon Feb 29 19:32:53 UTC 2016 - tchvatal@suse.com
- Update to 1.3.6
* This fixes a number of security related bugs. There are no feature
improvements or bug fixes in this release.
-------------------------------------------------------------------
Fri Feb 12 12:59:39 UTC 2016 - pgajdos@suse.com
- updated to 1.3.5 bnc#965803 CVE-2016-1521:
* Security bug fix
* Fix ARM misalignment problem
* Track latest cmake
-------------------------------------------------------------------
Mon Dec 21 11:36:38 UTC 2015 - tchvatal@suse.com
- Version update to 1.3.4:
* Fix Collision Kerning ignoring some diacritics
* Handle pass bits 16-31 to speed up fonts with > 16 passes
* Various minor fuzz bug fixes
* Make Coverity happy
* Add GR_FALLTHROUGH macro for clang c++11
- Upstream moved to github
-------------------------------------------------------------------
Wed Dec 16 13:38:11 UTC 2015 - pgajdos@suse.com
- updated to 1.3.3
* Slight speed up in Collision Avoidance
* Remove dead bidi code
* Bug fixes
. Between pass bidi reorderings and at the end
. Decompressor fuzz bugs
. Other fuzz bugs
-------------------------------------------------------------------
Thu Sep 10 07:43:44 UTC 2015 - tchvatal@suse.com
- Version bump top 1.3.2:
* Remove full bidi. All segments are assumed to be single directioned.
* Bug fixes:
+ Decompressor corner cases
+ Various fuzz bugs
-------------------------------------------------------------------
Tue Sep 1 08:44:01 UTC 2015 - tchvatal@suse.com
- Version bump to 1.3.1:
* Deprecation warning: Full bidi support is about to be deprecated. Make
contact if this impacts you.
* Change compression block format slightly to conform to LZ4
* Handle mono direction text with diacritics consistently. Fonts
now see the direction they expect consistently and bidi now
gives expected results.
* Fixed lots of fuzz bugs
* Coverity cleanups
* Build now works for clang and/or asan and/or afl etc.
-------------------------------------------------------------------
Fri Aug 7 08:24:54 UTC 2015 - tchvatal@suse.com
- Version bump to 1.3.0:
* Various tweaks for the arabic fonts
- Added patches:
* graphite-nonvoid-return.patch
* graphite2-1.2.0-cmakepath.patch
- Removed patches:
* no-specific-nunit-version.diff
* soname.diff
-------------------------------------------------------------------
Tue May 19 07:30:18 UTC 2015 - fstrba@suse.com
- Remove unnecessary utf-8 characters from the spec file
-------------------------------------------------------------------
Tue Oct 21 18:51:12 UTC 2014 - dmueller@suse.com
- add link-gcc-shared.diff: link -lgcc_s to fix undefined symbols
on various ARM architectures
-------------------------------------------------------------------
Wed Jan 29 17:57:37 UTC 2014 - tchvatal@suse.com
- Remove harfbuzz dep. Breaks another buildcycle.
This effectively means we are not running tests. No functional
changes otherwise.
-------------------------------------------------------------------
Wed Jan 29 13:50:06 UTC 2014 - tchvatal@suse.com
- Remove texlive dep to remove dep circle.
-------------------------------------------------------------------
Sun Jan 26 12:05:43 UTC 2014 - tchvatal@suse.com
- Use rpath so the tests work.
-------------------------------------------------------------------
Sat Jan 25 22:57:20 UTC 2014 - tchvatal@suse.com
- Enable the tests. They work on 13.1 but fail on Factory...
-------------------------------------------------------------------
Sat Jan 25 22:28:21 UTC 2014 - tchvatal@suse.com
- Version bump to 1.2.4:
* Various bugfixes
* Expanded testsuite
- Remove graphite2-arm.patch - applied upstream
- Add patches from debian:
* soname.diff
* no-specific-nunit-version.diff
- Run^Wdocument tests and generate documentation
-------------------------------------------------------------------
Sat Jan 25 21:34:18 UTC 2014 - tchvatal@suse.com
- Use cmake macros for nice and tidy setup.
-------------------------------------------------------------------
Fri Jun 28 11:15:36 UTC 2013 - dimstar@opensuse.org
- Add baselibs.conf and provide libgraphite2-3-32bit, which is at
this moment required by harfbuzz.
-------------------------------------------------------------------
Wed Nov 28 16:36:00 UTC 2012 - crrodriguez@opensuse.org
- graphite2-arm.patch :Fix build in arm and possible other platforms, we should
notuse -nodefaultlibs as a linker flag and let the system
do its job automatically.
- freetype-devel should be freetype2-devel
-------------------------------------------------------------------
Tue Nov 13 08:55:33 UTC 2012 - cfarrell@suse.com
- license update: LGPL-2.1+ or GPL-2.0+ or MPL-1.1
See License file (most source code notices concur)
-------------------------------------------------------------------
Mon Nov 12 12:31:11 UTC 2012 - tchvatal@suse.com
- Whitespace trying to figure out why spec file is interpreted as
binary.
-------------------------------------------------------------------
Fri Nov 9 12:38:14 UTC 2012 - tchvatal@suse.com
- Fix desc not to mention libexttextcat.
-------------------------------------------------------------------
Tue Nov 6 13:56:19 UTC 2012 - tchvatal@suse.com
- Initial commit version 1.2.0.

119
graphite2.spec Normal file
View File

@ -0,0 +1,119 @@
#
# spec file for package graphite2
#
# Copyright (c) 2023 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/
#
%{!?make_build:%global make_build make %{?_smp_mflags}}
%define libname libgraphite2-3
Name: graphite2
Version: 1.3.14
Release: 0
Summary: Font rendering capabilities for complex non-Roman writing systems
License: GPL-2.0-or-later OR LGPL-2.1-or-later OR MPL-2.0
URL: http://graphite.sil.org/
Source0: https://github.com/silnrsi/graphite/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: baselibs.conf
Patch0: graphite2-1.2.0-cmakepath.patch
Patch2: link-gcc-shared.diff
BuildRequires: cmake
BuildRequires: fontconfig-devel
BuildRequires: freetype2-devel
BuildRequires: gcc-c++
BuildRequires: glib2-devel
BuildRequires: pkgconfig
BuildRequires: python3-base
# libglib-2_0-0 pulls in shared-mime-info for mime detection in gvfs
#!BuildIgnore: shared-mime-info
%description
Graphite2 is a project within SIL's Non-Roman Script Initiative and Language
Software Development groups to provide rendering capabilities for complex
non-Roman writing systems. Graphite can be used to create "smart fonts" capable
of displaying writing systems with various complex behaviors. With respect to
the Text Encoding Model, Graphite handles the "Rendering" aspect of writing
system implementation.
%package -n %{libname}
Summary: Text categorization library
%description -n %{libname}
Graphite2 is a project within SIL's Non-Roman Script Initiative and Language
Software Development groups to provide rendering capabilities for complex
non-Roman writing systems. Graphite can be used to create "smart fonts" capable
of displaying writing systems with various complex behaviors. With respect to
the Text Encoding Model, Graphite handles the "Rendering" aspect of writing
system implementation.
%package devel
Summary: Files for Developing with %{name}
Requires: %{libname} = %{version}
Requires: glibc-devel
%description devel
Graphite2 is a project within SIL's Non-Roman Script Initiative and Language
Software Development groups to provide rendering capabilities for complex
non-Roman writing systems. Graphite can be used to create "smart fonts" capable
of displaying writing systems with various complex behaviors. With respect to
the Text Encoding Model, Graphite handles the "Rendering" aspect of writing
system implementation.
This package contains the %{name} development files.
%prep
%autosetup -p1 -n graphite-%{version}
# Make sure to use python3 everywhere
find tests -type f -exec sed -i "s|python|python3|g" {} +
find . -name *.cmake -exec sed -i "s|python|python3|g" {} +
%build
%cmake \
-DGRAPHITE2_COMPARE_RENDERER=OFF \
-DGRAPHITE2_NTRACING=ON \
-DCMAKE_SKIP_RPATH=OFF
# Do not use O3, from debian
find . -type f \
-exec sed -i -e 's/\-O3//g' {} \;
%make_build
%install
%cmake_install
find %{buildroot} -type f -name "*.la" -delete -print
%check
# exclude tests based on fonttool
cd build
ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} \
-E "padaukcmp1|chariscmp1|chariscmp2|annacmp1|schercmp1|awamicmp1|awamicmp2|awamicmp3"
%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig
%files
%license LICENSE COPYING
%{_bindir}/gr2fonttest
%files -n %{libname}
%{_libdir}/*.so.3*
%files devel
%{_libdir}/*.so
%{_libdir}/pkgconfig/%{name}*.pc
%{_includedir}/%{name}*
%{_libdir}/%{name}*
%changelog

12
link-gcc-shared.diff Normal file
View File

@ -0,0 +1,12 @@
diff -Naur graphite-1.3.14.orig/src/CMakeLists.txt graphite-1.3.14/src/CMakeLists.txt
--- graphite-1.3.14.orig/src/CMakeLists.txt 2020-08-10 10:08:58.963417496 +0200
+++ graphite-1.3.14/src/CMakeLists.txt 2020-08-10 10:16:19.239886692 +0200
@@ -123,7 +123,7 @@
if (GRAPHITE2_SANITIZERS)
target_link_libraries(graphite2 c gcc_s)
else ()
- target_link_libraries(graphite2 c gcc)
+ target_link_libraries(graphite2 c gcc_s)
endif ()
endif()
include(Graphite)