Compare commits

...

No commits in common. 'c9' and 'i10cs' have entirely different histories.
c9 ... i10cs

@ -0,0 +1,46 @@
diff -pruN fonts-rpm-macros-2.0.5.orig/bin/gen-fontconf fonts-rpm-macros-2.0.5/bin/gen-fontconf
--- fonts-rpm-macros-2.0.5.orig/bin/gen-fontconf 2020-04-03 07:55:50.000000000 +0900
+++ fonts-rpm-macros-2.0.5/bin/gen-fontconf 2024-06-03 14:07:58.244902559 +0900
@@ -23,7 +23,11 @@ from lxml import etree
from operator import itemgetter
import os
from pathlib import PurePath
-import ruamel.yaml
+yaml_supported = True
+try:
+ import ruamel.yaml
+except ModuleNotFoundError:
+ yaml_supported = False
import subprocess
import sys
@@ -36,14 +40,17 @@ oneormore = ['fullname', 'family', 'styl
parser = argparse.ArgumentParser(
description='Generate traditional fontconfig syntax from a high-level configuration file')
cgroup = parser.add_mutually_exclusive_group(required=True)
-cgroup.add_argument("-y", "--yaml", "-c", "--config", type=str,
- help="YAML configuration file to process")
+mode = ['xml', 'legacy']
+if yaml_supported:
+ mode.append('yaml')
+ cgroup.add_argument("-y", "--yaml", "-c", "--config", type=str,
+ help="YAML configuration file to process")
cgroup.add_argument("-x", "--xml", type=str,
help="XML configuration file to process")
parser.add_argument("-l", "--license", metavar="SPDX ID", type=str, nargs='?', default="MIT",
help="SPDX license identifier for the generated files")
parser.add_argument("-m", "--mode", metavar="MODE", type=str, nargs='?',
- default="legacy", choices=['xml', 'yaml', 'legacy'],
+ default="legacy", choices=mode,
help="Output format: current fontconfig syntax, or XML/YAML syntax proposals")
parser.add_argument("-w", "--write", action="store_true",
help="Write output to disk")
@@ -685,7 +692,7 @@ ext = '.conf'
if args.mode == 'xml':
ext = '.xml'
-if args.yaml != None:
+if yaml_supported and args.yaml != None:
groups = readyaml(args.yaml)
if args.write and output == None:
output = PurePath(PurePath(args.yaml).name).with_suffix(ext)

@ -0,0 +1,57 @@
diff -pruN fonts-rpm-macros-2.0.5.orig/rpm/lua/srpm/fonts.lua fonts-rpm-macros-2.0.5/rpm/lua/srpm/fonts.lua
--- fonts-rpm-macros-2.0.5.orig/rpm/lua/srpm/fonts.lua 2024-06-19 16:39:41.814323447 +0900
+++ fonts-rpm-macros-2.0.5/rpm/lua/srpm/fonts.lua 2024-06-19 16:42:07.095849192 +0900
@@ -172,13 +172,31 @@ local function pkg(forcemain, forcesub,
end
end
+-- Output Requires(meta) line
+local function output_requires(fontpkg)
+ if tonumber(rpm.expand("0%{?epoch}")) == 0 then
+ print(rpm.expand( "Requires(meta): " .. fontpkg .. " = %{version}-%{release}\n"))
+ else
+ print(rpm.expand( "Requires(meta): " .. fontpkg .. " = %{epoch}:%{version}-%{release}\n"))
+ end
+end
+
-- Create a font (sub)metapackage header
local function metapkg(name, summary, description, suffixes)
local fedora = require "fedora.common"
local fontpkgs = fedora.getsuffixed("fontpkgname")
+ local hsuffix
if (name == "") then
name, _ = string.gsub(rpm.expand("%{name}"), "-fonts$", "")
name = name .. "-fonts-all"
+ hsuffix = "all"
+ else
+ hsuffix = norm(name)
+ end
+ if (rpm.expand("%{?fontpkgheader" .. hsuffix .. "}") ~= "") then
+ fedora.explicitset( "currentfontpkgheader", "%{fontpkgheader" .. hsuffix .. "}", false)
+ else
+ fedora.explicitunset( "currentfontpkgheader", false)
end
if (summary == "") then
summary = "All the font packages, generated from %{name}"
@@ -192,18 +210,19 @@ local function metapkg(name, summary, de
"Summary: " .. summary .. "\n"))
if (suffixes == "") then
for _, fontpkg in pairs(fontpkgs) do
- print(rpm.expand( "Requires(meta): " .. fontpkg .. " = %{version}-%{release}\n"))
+ output_requires(fontpkg)
end
else
for suffix in string.gmatch(rpm.expand(suffixes), "[^%s%p]+") do
local fontpkg = fontpkgs[suffix]
if (fontpkg ~= nil) then
- print(rpm.expand("Requires(meta): " .. fontpkg .. " = %{version}-%{release}\n"))
+ output_requires(fontpkg)
end
end
end
print(rpm.expand(
"BuildArch: noarch\n" ..
+ "%{?currentfontpkgheader}\n" ..
"%description -n " .. name .. "\n" ..
description .. "\n" ..
"%files -n " .. name .. "\n\n"))

@ -0,0 +1,14 @@
diff -pruN fonts-rpm-macros-2.0.5.orig/rpm/lua/srpm/fonts.lua fonts-rpm-macros-2.0.5/rpm/lua/srpm/fonts.lua
--- fonts-rpm-macros-2.0.5.orig/rpm/lua/srpm/fonts.lua 2020-04-03 07:55:50.000000000 +0900
+++ fonts-rpm-macros-2.0.5/rpm/lua/srpm/fonts.lua 2022-07-29 18:57:38.183789875 +0900
@@ -118,7 +118,9 @@ local function env(suffix, verbose, glob
fedora.explicitunset("current" .. g, verbose)
end
end
- local basename = rpm.expand("%{?foundry" .. suffix .. ":%{foundry" .. suffix .. "} }%{fontfamily" .. suffix .. "}")
+ local foundry = rpm.expand("%{?foundry" .. suffix .. ":%{foundry" .. suffix .. "}}")
+ local family = string.gsub(rpm.expand("%{fontfamily" .. suffix .. "}"), "^" .. foundry, "")
+ local basename = foundry .. " " .. family
fedora.safeset("fontpkgname" .. suffix, rpmname(basename), verbose)
fedora.safeset("fonthumanname" .. suffix, basename, verbose)
fedora.safeset("fontdir" .. suffix, "%{_fontbasedir}/%{fontpkgname" .. suffix .. "}", verbose)

@ -18,12 +18,15 @@ Version: 2.0.5
BuildArch: noarch
Name: fonts-rpm-macros
Release: 7%{?dist}.1
Release: 18%{?dist}
Summary: Build-stage rpm automation for fonts packages
License: GPLv3+
License: GPL-3.0-or-later
URL: https://docs.fedoraproject.org/en-US/packaging-guidelines/FontsPolicy/
Source: %{forgesource}
Patch0: %{name}-omit-foundry-in-family.patch
Patch1: %{name}-drop-yaml.patch
Patch2: %{name}-epoch-in-req.patch
Requires: fonts-srpm-macros = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: fonts-filesystem = %{?epoch:%{epoch}:}%{version}-%{release}
@ -38,7 +41,9 @@ Requires: libappstream-glib
Requires: uchardet
# For the experimental generator
%if 0%{?fedora} || 0%{?rhel} < 10
Requires: python3-ruamel-yaml
%endif
Requires: python3-lxml
%description
@ -51,6 +56,12 @@ will pull it in for fonts packages only.
%package -n fonts-srpm-macros
Summary: Source-stage rpm automation for fonts packages
Requires: redhat-rpm-config
# macros.forge and forge.lua were split into a separate package.
# redhat-rpm-config pulls in forge-srpm-macros but better to explicitly Require
# it.
%if (0%{?fedora} >= 40 || 0%{?rhel} >= 10)
Requires: forge-srpm-macros
%endif
%description -n fonts-srpm-macros
This package provides SRPM-stage rpm automation to simplify the creation of
@ -92,6 +103,11 @@ for template in templates/rpm/*\.spec ; do
grep -v '^%%dnl' "${template}" > "${target}"
touch -r "${template}" "${target}"
done
%patch -P0 -p1
%if 0%{?rhel} >= 10
%patch -P1 -p1
%endif
%patch -P2 -p1
%install
install -m 0755 -d %{buildroot}%{_fontbasedir} \
@ -121,7 +137,8 @@ install -m 0755 -vp bin/* %{buildroot}%{_bindir}
%files
%license LICENSE.txt
%{_bindir}/*
%{_bindir}/fc-weight
%{_bindir}/gen-fontconf
%{rpmmacrodir}/macros.fonts-rpm*
%{_rpmluadir}/fedora/rpm/*.lua
@ -147,12 +164,54 @@ install -m 0755 -vp bin/* %{buildroot}%{_bindir}
%doc %{ftcgtemplatedir}/*txt
%changelog
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com>
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1:2.0.5-18
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com>
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Fri Oct 25 2024 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 1:2.0.5-17
- Rebuilt for MSVSphere 10
* Tue Aug 13 2024 Akira TAGOH <tagoh@redhat.com> - 1:2.0.5-17
- Add exact binary name in the file list.
- Do not package backup files.
Resolves: RHEL-54049
* Wed Jun 19 2024 Akira TAGOH <tagoh@redhat.com> - 1:2.0.5-16
- Add %%{epoch} in Requires line if needed
- Support fontpkgheader macro for meta packages.
* Mon Jun 3 2024 Akira TAGOH <tagoh@redhat.com> - 1:2.0.5-15
- Drop YAML support in gen-fontconf for RHEL10 or later.
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1:2.0.5-15
- Bump release for June 2024 mass rebuild
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Dec 08 2022 Parag Nemade <pnemade AT redhat DOT com> - 1:2.0.5-10
- Update license tag to SPDX format
* Fri Aug 19 2022 Akira TAGOH <tagoh@redhat.com> - 1:2.0.5-9
- Omit foundry name in family name.
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.0.5-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

Loading…
Cancel
Save