Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions SPECS/python-booleanoperations/python-booleanoperations.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS)
# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors
# SPDX-FileContributor: Gui-Yue <xiangwei.riscv@isrc.iscas.ac.cn>
#
# SPDX-License-Identifier: MulanPSL-2.0

%global srcname booleanoperations

Name: python-%{srcname}
Version: 0.10.0
Release: %autorelease
Summary: Boolean operations on paths
License: MIT
URL: https://github.com/typemytype/booleanOperations
VCS: git:https://github.com/typemytype/booleanOperations
#!RemoteAsset: sha256:6d719f560d2a1dd676c812b844ecceb693c96791c76579089ab7d0f5db5cedbe
Source0: https://files.pythonhosted.org/packages/source/b/%{srcname}/%{srcname}-%{version}.tar.gz
BuildArch: noarch
BuildSystem: pyproject

BuildOption(install): -l booleanOperations +auto

BuildRequires: pkgconfig(python3)
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(fonttools)
BuildRequires: python3dist(pip)
BuildRequires: python3dist(pyclipper)
BuildRequires: python3dist(setuptools)
BuildRequires: python3dist(setuptools-scm)
BuildRequires: python3dist(wheel)

Provides: python3-%{srcname} = %{version}-%{release}
%python_provide python3-%{srcname}

%description
booleanOperations provides boolean operations on paths.

%generate_buildrequires
%pyproject_buildrequires

%files -f %{pyproject_files}
%doc README.rst
%license LICENSE

%changelog
%autochangelog
47 changes: 47 additions & 0 deletions SPECS/python-cattrs/python-cattrs.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS)
# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors
# SPDX-FileContributor: Gui-Yue <xiangwei.riscv@isrc.iscas.ac.cn>
#
# SPDX-License-Identifier: MulanPSL-2.0

%global srcname cattrs

Name: python-%{srcname}
Version: 26.1.0
Release: %autorelease
Summary: Composable class support for attrs and dataclasses
License: MIT
URL: https://github.com/python-attrs/cattrs
VCS: git:https://github.com/python-attrs/cattrs
#!RemoteAsset: sha256:fa239e0f0ec0715ba34852ce813986dfed1e12117e209b816ab87401271cdd40
Source0: https://files.pythonhosted.org/packages/source/c/%{srcname}/%{srcname}-%{version}.tar.gz
BuildArch: noarch
BuildSystem: pyproject

BuildOption(install): -l %{srcname} cattr +auto
BuildOption(check): -e "cattrs.preconf.*"
BuildOption(check): -e "cattr.preconf.*"

BuildRequires: pkgconfig(python3)
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(attrs) >= 25.4
BuildRequires: python3dist(pip)
BuildRequires: python3dist(setuptools)
BuildRequires: python3dist(typing-extensions) >= 4.14
BuildRequires: python3dist(wheel)

Provides: python3-%{srcname} = %{version}-%{release}
%python_provide python3-%{srcname}

%description
cattrs provides composable support for attrs and dataclasses classes.

%generate_buildrequires
%pyproject_buildrequires

%files -f %{pyproject_files}
%doc README*
%license LICENSE*

%changelog
%autochangelog
52 changes: 52 additions & 0 deletions SPECS/python-cffsubr/0001-afdko-use-antlr4-archive-from-env.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
--- a/external/afdko/CMakeLists.txt
+++ b/external/afdko/CMakeLists.txt
@@ -42,6 +42,11 @@
# This is a more recent commit than 4.13.2 that addresses a missing
# include directive needed in more recent Visual Studio releases
set(ANTLR4_TAG df4d68c09cdef73e023b8838a8bc7ca4dff1d1de)
+
+# Allow distro packaging to provide an offline antlr4 archive path.
+if(DEFINED ENV{ANTLR4_ZIP_REPOSITORY} AND NOT "$ENV{ANTLR4_ZIP_REPOSITORY}" STREQUAL "")
+ set(ANTLR4_ZIP_REPOSITORY "$ENV{ANTLR4_ZIP_REPOSITORY}")
+endif()
include(ExternalAntlr4Cpp)



--- a/external/afdko/cmake/ExternalAntlr4Cpp.cmake
+++ b/external/afdko/cmake/ExternalAntlr4Cpp.cmake
@@ -85,9 +85,17 @@
BUILD_COMMAND ""
BUILD_IN_SOURCE 1
SOURCE_DIR ${ANTLR4_ROOT}/runtime/Cpp # Edited by iterumllc
+ PATCH_COMMAND
+ sed -i
+ -e "s/CMAKE_POLICY(SET CMP0045 OLD)/CMAKE_POLICY(SET CMP0045 NEW)/"
+ -e "s/CMAKE_POLICY(SET CMP0042 OLD)/CMAKE_POLICY(SET CMP0042 NEW)/"
+ -e "s/CMAKE_POLICY(SET CMP0059 OLD)/CMAKE_POLICY(SET CMP0059 NEW)/"
+ -e "s/CMAKE_POLICY(SET CMP0054 OLD)/CMAKE_POLICY(SET CMP0054 NEW)/"
+ CMakeLists.txt
# SOURCE_SUBDIR runtime/Cpp # Commented out by iterumllc
CMAKE_CACHE_ARGS
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
+ -DCMAKE_POLICY_VERSION_MINIMUM:STRING=3.5
-DWITH_STATIC_CRT:BOOL=${ANTLR4_WITH_STATIC_CRT}
-DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
@@ -107,8 +115,16 @@
BUILD_IN_SOURCE 1
SOURCE_DIR ${ANTLR4_ROOT}
SOURCE_SUBDIR runtime/Cpp
+ PATCH_COMMAND
+ sed -i
+ -e "s/CMAKE_POLICY(SET CMP0045 OLD)/CMAKE_POLICY(SET CMP0045 NEW)/"
+ -e "s/CMAKE_POLICY(SET CMP0042 OLD)/CMAKE_POLICY(SET CMP0042 NEW)/"
+ -e "s/CMAKE_POLICY(SET CMP0059 OLD)/CMAKE_POLICY(SET CMP0059 NEW)/"
+ -e "s/CMAKE_POLICY(SET CMP0054 OLD)/CMAKE_POLICY(SET CMP0054 NEW)/"
+ runtime/Cpp/CMakeLists.txt
CMAKE_CACHE_ARGS
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
+ -DCMAKE_POLICY_VERSION_MINIMUM:STRING=3.5
-DWITH_STATIC_CRT:BOOL=${ANTLR4_WITH_STATIC_CRT}
-DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
diff --git a/external/afdko/setup.py b/external/afdko/setup.py
index 62b61be..9a7e2be 100644
--- a/external/afdko/setup.py
+++ b/external/afdko/setup.py
@@ -198,9 +198,7 @@ def main():
setup_requires=[
'wheel',
'setuptools_scm',
- 'scikit-build',
- 'cmake',
- 'ninja'
+ 'scikit-build'
],
tests_require=[
'pytest',
66 changes: 66 additions & 0 deletions SPECS/python-cffsubr/python-cffsubr.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS)
# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors
# SPDX-FileContributor: Gui-Yue <xiangwei.riscv@isrc.iscas.ac.cn>
#
# SPDX-License-Identifier: MulanPSL-2.0

%global srcname cffsubr

Name: python-%{srcname}
Version: 0.4.0
Release: %autorelease
Summary: Standalone CFF subroutinizer based on AFDKO tx
License: Apache-2.0
URL: https://github.com/adobe-type-tools/cffsubr
VCS: git:https://github.com/adobe-type-tools/cffsubr
#!RemoteAsset: sha256:2c321b6807bd95856d921ed9dce8506495cf49fc7a89a63cb942e8bece13addd
Source0: https://files.pythonhosted.org/packages/source/c/%{srcname}/%{srcname}-%{version}.tar.gz
#!RemoteAsset: sha256:0ed13668906e86dbc0dcddf30fdee68c10203dea4e83852b4edb810821bee3c4
Source1: https://www.antlr.org/download/antlr4-cpp-runtime-4.13.2-source.zip
BuildSystem: pyproject

# Use offline ANTLR archive and fix old CMake policy settings in bundled AFDKO.
Patch0: 0001-afdko-use-antlr4-archive-from-env.patch
# Avoid pip downloading python-cmake/python-ninja from setup_requires.
Patch1: 0002-afdko-drop-python-cmake-ninja-setup-requires.patch

BuildOption(install): -l %{srcname} +auto
# cffsubr custom backend injects python3dist(cmake/ninja); we keep system
# cmake/ninja in BuildRequires and disable dynamic pyproject BR generation.
BuildOption(generate_buildrequires): -N

BuildRequires: cmake
BuildRequires: git
BuildRequires: ninja
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(python3)
BuildRequires: pkgconfig(uuid)
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(fonttools)
BuildRequires: python3dist(jinja2)
BuildRequires: python3dist(pip)
BuildRequires: python3dist(scikit-build)
BuildRequires: python3dist(setuptools)
BuildRequires: python3dist(setuptools-git-ls-files)
BuildRequires: python3dist(setuptools-scm)
BuildRequires: python3dist(wheel)
BuildRequires: utf8cpp

Provides: python3-%{srcname} = %{version}-%{release}
Provides: python3-%{srcname}%{?_isa} = %{version}-%{release}
%python_provide python3-%{srcname}

%description
cffsubr is a standalone CFF subroutinizer based on the AFDKO tx tool.

%build -p
export ANTLR4_ZIP_REPOSITORY=%{SOURCE1}
export FORCE_SYSTEM_LIBXML2=1

%files -f %{pyproject_files}
%doc README.md
%license LICENSE NOTICE
%{_bindir}/cffsubr

%changelog
%autochangelog
45 changes: 45 additions & 0 deletions SPECS/python-compreffor/python-compreffor.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS)
# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors
# SPDX-FileContributor: Gui-Yue <xiangwei.riscv@isrc.iscas.ac.cn>
#
# SPDX-License-Identifier: MulanPSL-2.0

%global srcname compreffor

Name: python-%{srcname}
Version: 0.6.0
Release: %autorelease
Summary: CFF subroutinizer for fontTools
License: Apache-2.0
URL: https://github.com/googlefonts/compreffor
VCS: git:https://github.com/googlefonts/compreffor
#!RemoteAsset: sha256:7ea034a50c59cc78732f1480040eac2bb36f826ce2eb607c3029b5d38ab11ba8
Source0: https://files.pythonhosted.org/packages/source/c/%{srcname}/%{srcname}-%{version}.tar.gz
BuildSystem: pyproject

BuildOption(install): -l %{srcname} +auto

BuildRequires: gcc-c++
BuildRequires: pkgconfig(python3)
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(cython)
BuildRequires: python3dist(fonttools) >= 4
BuildRequires: python3dist(pip)
BuildRequires: python3dist(setuptools)
BuildRequires: python3dist(setuptools-git-ls-files)
BuildRequires: python3dist(setuptools-scm)
BuildRequires: python3dist(wheel)

Provides: python3-%{srcname} = %{version}-%{release}
Provides: python3-%{srcname}%{?_isa} = %{version}-%{release}
%python_provide python3-%{srcname}

%description
compreffor is a CFF subroutinizer library and CLI for fontTools.

%files -f %{pyproject_files}
%doc README.rst
%license LICENSE

%changelog
%autochangelog
45 changes: 45 additions & 0 deletions SPECS/python-fontmake/python-fontmake.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS)
# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors
# SPDX-FileContributor: Gui-Yue <xiangwei.riscv@isrc.iscas.ac.cn>
#
# SPDX-License-Identifier: MulanPSL-2.0

%global srcname fontmake

Name: python-%{srcname}
Version: 3.11.1
Release: %autorelease
Summary: Compile fonts from sources to OpenType and TrueType binaries
License: Apache-2.0
URL: https://pypi.org/project/fontmake/
VCS: git:https://github.com/googlei18n/fontmake
#!RemoteAsset: sha256:a3b958a2f6d0b978a803a5643f04c27c88c5ed9dc5af999752408aa94053d082
Source0: https://files.pythonhosted.org/packages/source/f/%{srcname}/%{srcname}-%{version}.tar.gz
BuildArch: noarch
BuildSystem: pyproject

BuildOption(install): -l %{srcname}

BuildRequires: pkgconfig(python3)
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(pip)
BuildRequires: python3dist(setuptools)
BuildRequires: python3dist(wheel)

Provides: python3-%{srcname} = %{version}-%{release}
%python_provide python3-%{srcname}

%description
Fontmake compiles fonts from source files such as UFO and Glyphs into binary
fonts, including OpenType and TrueType outputs.

%generate_buildrequires
%pyproject_buildrequires

%files -f %{pyproject_files}
%doc README.md
%license LICENSE
Comment thread
Gui-Yue marked this conversation as resolved.
%{_bindir}/fontmake

%changelog
%autochangelog
45 changes: 45 additions & 0 deletions SPECS/python-fontmath/python-fontmath.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS)
# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors
# SPDX-FileContributor: Gui-Yue <xiangwei.riscv@isrc.iscas.ac.cn>
#
# SPDX-License-Identifier: MulanPSL-2.0

%global srcname fontmath

Name: python-%{srcname}
Version: 0.10.0
Release: %autorelease
Summary: Math operations on font data
License: MIT
URL: https://pypi.org/project/fontMath/
VCS: git:https://github.com/robotools/fontMath
#!RemoteAsset: sha256:7b0b39336d83d7fc03fb9dc3c662ef7d26b2c15355a34c643d1cfbd03f89fb74
Source0: https://files.pythonhosted.org/packages/source/f/%{srcname}/%{srcname}-%{version}.tar.gz
BuildArch: noarch
BuildSystem: pyproject

BuildOption(install): -l fontMath +auto

BuildRequires: pkgconfig(python3)
BuildRequires: pyproject-rpm-macros
BuildRequires: python3dist(fonttools)
BuildRequires: python3dist(pip)
BuildRequires: python3dist(setuptools)
BuildRequires: python3dist(setuptools-scm[toml])
BuildRequires: python3dist(wheel)

Provides: python3-%{srcname} = %{version}-%{release}
%python_provide python3-%{srcname}

%description
fontMath provides objects for performing math operations on font data.

%generate_buildrequires
%pyproject_buildrequires

%files -f %{pyproject_files}
%doc README.md
%license License.txt

%changelog
%autochangelog
Loading