From e8b6c0628be0f187b817a855957f721884a06d4f Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 15 Nov 2022 01:33:30 -0500 Subject: [PATCH] import fontconfig-2.14.0-1.el9 --- .fontconfig.metadata | 2 +- .gitignore | 2 +- SOURCES/fontconfig-lcdfilter.patch | 40 ---- SOURCES/fontconfig-revert-noto-default.patch | 27 +++ SOURCES/fontconfig-score-fix.patch | 188 ------------------- SPECS/fontconfig.spec | 30 ++- 6 files changed, 54 insertions(+), 235 deletions(-) delete mode 100644 SOURCES/fontconfig-lcdfilter.patch create mode 100644 SOURCES/fontconfig-revert-noto-default.patch delete mode 100644 SOURCES/fontconfig-score-fix.patch diff --git a/.fontconfig.metadata b/.fontconfig.metadata index d822693..8dc7575 100644 --- a/.fontconfig.metadata +++ b/.fontconfig.metadata @@ -1 +1 @@ -4d2d34e0894141a9ed6b5693caa06560d7b741e9 SOURCES/fontconfig-2.13.94.tar.xz +9b1d4c5a61b4d25140db444e9cf56f09fb843fce SOURCES/fontconfig-2.14.0.tar.xz diff --git a/.gitignore b/.gitignore index a41067c..b693b31 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/fontconfig-2.13.94.tar.xz +SOURCES/fontconfig-2.14.0.tar.xz diff --git a/SOURCES/fontconfig-lcdfilter.patch b/SOURCES/fontconfig-lcdfilter.patch deleted file mode 100644 index c99cdb6..0000000 --- a/SOURCES/fontconfig-lcdfilter.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 2b897d4624f015c0f59a9f46925b758adfc79190 Mon Sep 17 00:00:00 2001 -From: Akira TAGOH -Date: Mon, 19 Jul 2021 21:03:20 +0900 -Subject: [PATCH] Enable 11-lcdfilter-default.conf by default - -Some applications needs this enabled by default on non-GNOME desktops. - -reference: https://bugzilla.redhat.com/show_bug.cgi?id=1965684 ---- - conf.d/Makefile.am | 1 + - conf.d/meson.build | 1 + - 2 files changed, 2 insertions(+) - -diff --git a/conf.d/Makefile.am b/conf.d/Makefile.am -index 710318c1..43b6e2b9 100644 ---- a/conf.d/Makefile.am -+++ b/conf.d/Makefile.am -@@ -32,6 +32,7 @@ DOC_FILES = $(DOC_SOURCES:.in=) - CONF_LINKS = \ - 10-hinting-$(PREFERRED_HINTING).conf \ - 10-scale-bitmap-fonts.conf \ -+ 11-lcdfilter-default.conf \ - 20-unhint-small-vera.conf \ - 30-metric-aliases.conf \ - 40-nonlatin.conf \ -diff --git a/conf.d/meson.build b/conf.d/meson.build -index 2cb144ee..172e2af2 100644 ---- a/conf.d/meson.build -+++ b/conf.d/meson.build -@@ -42,6 +42,7 @@ preferred_hinting = 'slight' - conf_links = [ - '10-hinting-@0@.conf'.format(preferred_hinting), - '10-scale-bitmap-fonts.conf', -+ '11-lcdfilter-default.conf', - '20-unhint-small-vera.conf', - '30-metric-aliases.conf', - '40-nonlatin.conf', --- -2.32.0 - diff --git a/SOURCES/fontconfig-revert-noto-default.patch b/SOURCES/fontconfig-revert-noto-default.patch new file mode 100644 index 0000000..3985a0f --- /dev/null +++ b/SOURCES/fontconfig-revert-noto-default.patch @@ -0,0 +1,27 @@ +diff -pruN fontconfig-2.14.0.orig/conf.d/60-latin.conf fontconfig-2.14.0/conf.d/60-latin.conf +--- fontconfig-2.14.0.orig/conf.d/60-latin.conf 2021-12-03 19:48:08.000000000 +0900 ++++ fontconfig-2.14.0/conf.d/60-latin.conf 2022-04-18 19:21:20.287729201 +0900 +@@ -5,7 +5,6 @@ + + serif + +- Noto Serif + DejaVu Serif + Times New Roman + Thorndale AMT +@@ -18,7 +17,6 @@ + + sans-serif + +- Noto Sans + DejaVu Sans + Verdana + Arial +@@ -35,7 +33,6 @@ + + monospace + +- Noto Sans Mono + DejaVu Sans Mono + Inconsolata + Andale Mono diff --git a/SOURCES/fontconfig-score-fix.patch b/SOURCES/fontconfig-score-fix.patch deleted file mode 100644 index 1842985..0000000 --- a/SOURCES/fontconfig-score-fix.patch +++ /dev/null @@ -1,188 +0,0 @@ -From 4d43f84188847a6a77f7259f986fb178c52c1ea7 Mon Sep 17 00:00:00 2001 -From: Akira TAGOH -Date: Thu, 8 Jul 2021 14:21:50 +0900 -Subject: [PATCH 1/2] Do not set different score to non-string values - -Non-string values in a cache is supposed to choose one from them. -Due to the change of da1c9f7a, there was a regression on scoring for -matching functions. So reverting the behavior for evaluating non-string -values to the previous one. - -Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/286 ---- - src/fcmatch.c | 2 +- - test/Makefile.am | 1 + - test/run-test-conf.sh | 1 + - test/test-conf.c | 71 ++++++++++++++++++++++++++-------------- - test/test-issue-286.json | 35 ++++++++++++++++++++ - 5 files changed, 85 insertions(+), 25 deletions(-) - create mode 100644 test/test-issue-286.json - -diff --git a/src/fcmatch.c b/src/fcmatch.c -index c88e3aa..fd43cbd 100644 ---- a/src/fcmatch.c -+++ b/src/fcmatch.c -@@ -433,7 +433,7 @@ FcCompareValueList (FcObject object, - *result = FcResultTypeMismatch; - return FcFalse; - } -- v = v * 1000 + j * 100 + k; -+ v = v * 1000 + j * 100 + k * (v2->value.type == FcTypeString ? 1 : 0); - if (v < best) - { - if (bestValue) -diff --git a/test/Makefile.am b/test/Makefile.am -index aea8724..d07654b 100644 ---- a/test/Makefile.am -+++ b/test/Makefile.am -@@ -47,6 +47,7 @@ TESTDATA = \ - test-45-generic.json \ - test-60-generic.json \ - test-90-synthetic.json \ -+ test-issue-286.json \ - test-style-match.json \ - $(NULL) - -diff --git a/test/run-test-conf.sh b/test/run-test-conf.sh -index 0c2bd52..bbb56f4 100644 ---- a/test/run-test-conf.sh -+++ b/test/run-test-conf.sh -@@ -49,6 +49,7 @@ for i in \ - $RUNNER $TESTDIR/../conf.d/$i $TESTDIR/$test_json - done - for i in \ -+ test-issue-286.json \ - test-style-match.json \ - ; do - echo $RUNNER $TESTDIR/$i ... -diff --git a/test/test-conf.c b/test/test-conf.c -index e4e9da4..1a52c6e 100644 ---- a/test/test-conf.c -+++ b/test/test-conf.c -@@ -207,35 +207,58 @@ build_pattern (json_object *obj) - } - } - } else if (type == json_type_double || type == json_type_int) { -+ const FcObjectType *fc_o = FcNameGetObjectType (iter.key); - double values[4]; -- if (n != 2 && n != 4) { -- fprintf (stderr, "E: array starting with number not range or matrix\n"); -+ -+ if (fc_o && fc_o->type == FcTypeDouble) { -+ for (i = 0; i < n; i++) -+ { -+ o = json_object_array_get_idx (iter.val, i); -+ type = json_object_get_type (o); -+ if (type == json_type_double) { -+ v.type = FcTypeDouble; -+ v.u.d = json_object_get_double (o); -+ } else if (type == json_type_int) { -+ v.type = FcTypeInteger; -+ v.u.i = json_object_get_int (o); -+ } else { -+ fprintf (stderr, "E: unable to convert to double\n"); -+ continue; -+ } -+ FcPatternAdd (pat, iter.key, v, FcTrue); -+ v.type = FcTypeVoid; -+ } - continue; -- } -- for (i = 0; i < n; i++) { -- o = json_object_array_get_idx (iter.val, i); -- type = json_object_get_type (o); -- if (type != json_type_double && type != json_type_int) { -- fprintf (stderr, "E: numeric array entry not a number\n"); -+ } else { -+ if (n != 2 && n != 4) { -+ fprintf (stderr, "E: array starting with number not range or matrix\n"); - continue; - } -- values[i] = json_object_get_double (o); -- } -- if (n == 2) { -- v.type = FcTypeRange; -- v.u.r = FcRangeCreateDouble (values[0], values[1]); -- if (!v.u.r) { -- fprintf (stderr, "E: failed to create range\n"); -- continue; -+ for (i = 0; i < n; i++) { -+ o = json_object_array_get_idx (iter.val, i); -+ type = json_object_get_type (o); -+ if (type != json_type_double && type != json_type_int) { -+ fprintf (stderr, "E: numeric array entry not a number\n"); -+ continue; -+ } -+ values[i] = json_object_get_double (o); -+ } -+ if (n == 2) { -+ v.type = FcTypeRange; -+ v.u.r = FcRangeCreateDouble (values[0], values[1]); -+ if (!v.u.r) { -+ fprintf (stderr, "E: failed to create range\n"); -+ continue; -+ } -+ destroy_v = FcTrue; -+ } else { -+ v.type = FcTypeMatrix; -+ v.u.m = &matrix; -+ matrix.xx = values[0]; -+ matrix.xy = values[1]; -+ matrix.yx = values[2]; -+ matrix.yy = values[3]; - } -- destroy_v = FcTrue; -- } else { -- v.type = FcTypeMatrix; -- v.u.m = &matrix; -- matrix.xx = values[0]; -- matrix.xy = values[1]; -- matrix.yx = values[2]; -- matrix.yy = values[3]; - } - } else { - fprintf (stderr, "E: array format not recognized\n"); -diff --git a/test/test-issue-286.json b/test/test-issue-286.json -new file mode 100644 -index 0000000..a3199fa ---- /dev/null -+++ b/test/test-issue-286.json -@@ -0,0 +1,35 @@ -+{ -+ "fonts": [ -+ { -+ "family": "Foo", -+ "style": "Italic", -+ "pixelsize": [15, 16, 17, 18], -+ "file": "/path/to/Foo-Italic.ttf", -+ "fontversion": 133365 -+ }, -+ { -+ "family": "Foo", -+ "style": "Regular", -+ "pixelsize": [11, 12, 13, 14, 15, 16, 17, 18, 22], -+ "file": "/path/to/Foo-Regular.ttf", -+ "fontversion": 133365 -+ } -+ ], -+ "tests": [ -+ { -+ "method": "match", -+ "query": { -+ "family": "Foo", -+ "style": "Regular", -+ "pixelsize": 16 -+ }, -+ "result": { -+ "family": "Foo", -+ "style": "Regular", -+ "pixelsize": 16, -+ "file": "/path/to/Foo-Regular.ttf", -+ "fontversion": 133365 -+ } -+ } -+ ] -+} --- -2.31.1 - diff --git a/SPECS/fontconfig.spec b/SPECS/fontconfig.spec index 6b7d167..f5bcc27 100644 --- a/SPECS/fontconfig.spec +++ b/SPECS/fontconfig.spec @@ -4,8 +4,8 @@ Summary: Font configuration and customization library Name: fontconfig -Version: 2.13.94 -Release: 2%{?dist} +Version: 2.14.0 +Release: 1%{?dist} # src/ftglue.[ch] is in Public Domain # src/fccache.c contains Public Domain code # fc-case/CaseFolding.txt is in the UCD @@ -20,8 +20,7 @@ Source2: fc-cache Patch0: %{name}-sleep-less.patch Patch4: %{name}-drop-lang-from-pkgkit-format.patch Patch5: %{name}-disable-network-required-test.patch -Patch6: %{name}-score-fix.patch -Patch7: %{name}-lcdfilter.patch +Patch6: %{name}-revert-noto-default.patch BuildRequires: libxml2-devel BuildRequires: freetype-devel >= %{freetype_version} @@ -189,6 +188,27 @@ fi %doc fontconfig-devel.txt fontconfig-devel %changelog +* Thu Mar 31 2022 Akira TAGOH - 2.14.0-1 +- New upstream release. +- Rebase to 2.14 and revert Noto Default change happened in f36. + Resolves: rhbz#2075393 + +* Fri Feb 4 2022 Akira TAGOH - 2.13.96-1 +- New upstream release. +- Fix missing a file in the archive. + Resolves: rhbz#2050478 + +* Tue Feb 1 2022 Akira TAGOH - 2.13.95-1 +- New upstream release. +- Update deps to font(notosans) + https://fedoraproject.org/wiki/Changes/DefaultToNotoFonts + +* Thu Jan 20 2022 Fedora Release Engineering - 2.13.94-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Jul 21 2021 Fedora Release Engineering - 2.13.94-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Tue Jul 20 2021 Akira TAGOH - 2.13.94-2 - Fix the score calculation on matching for multiple values. - Enable 11-lcdfilter-default.conf. @@ -196,7 +216,7 @@ fi - Rebase to the latest release. Resolves: rhbz#2023161 -* Thu Jun 29 2021 Akira TAGOH - 2.13.94-1 +* Tue Jun 29 2021 Akira TAGOH - 2.13.94-1 - New upstream release. * Thu Mar 25 2021 Akira TAGOH - 2.13.93-6