Skip to content

Commit

Permalink
python-yaml 6.0.1-1
Browse files Browse the repository at this point in the history
  • Loading branch information
tnut committed Apr 8, 2024
1 parent 113e4f5 commit d27a1d2
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 0 deletions.
39 changes: 39 additions & 0 deletions cli/python-yaml/731.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
From 17dc5b6cd96dcfe64fd71789c771ca9b96d260e5 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Fri, 21 Jul 2023 09:50:00 -0400
Subject: [PATCH] Fix builds with Cython 3

This is a *de minimis* fix for building with Cython 3. Recent Cython<3
releases provided `Cython.Distutils.build_ext` as an alias to
`Cython.Distutils.old_build_ext.old_build_ext`; Cython 3 drops this
alias and instead uses a wholly new `Cython.Distutils.build_ext` that
does not provide the `cython_sources` function used in `setup.py`.

Explicitly importing `old_build_ext` preserves the existing behavior for
recent Cython<3 and uses the correct behavior for Cython 3. Should the
import fail (*e.g.*, because the version of Cython available predates
the availability of `old_build_ext`), the import falls back to just
`Cython.Distutils.build_ext`.

Signed-off-by: Andrew J. Hesford <ajh@sideband.org>
---
setup.py | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/setup.py b/setup.py
index 944e7fa2..462b1e95 100644
--- a/setup.py
+++ b/setup.py
@@ -82,7 +82,11 @@
with_cython = True
try:
from Cython.Distutils.extension import Extension as _Extension
- from Cython.Distutils import build_ext as _build_ext
+ try:
+ from Cython.Distutils.old_build_ext import old_build_ext as _build_ext
+ except ImportError:
+ from Cython.Distutils import build_ext as _build_ext
+
with_cython = True
except ImportError:
if with_cython:
30 changes: 30 additions & 0 deletions cli/python-yaml/Pkgfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
description="Python bindings for YAML, using fast libYAML library"
url="http://pyyaml.org/wiki/PyYAML"

packager="tnut <tnut@nutyx.org>"
contributors=""

alias=(PyYAML)

makedepends=(yaml cython)

name=python-yaml
version=6.0.1

_name=PyYAML

PKGMK_KEEP_SOURCES="no"
source=(731.patch
https://files.pythonhosted.org/packages/source/${_name::1}/${_name}/${_name}-${version}.tar.gz)

prepare() {
cd PyYAML-$version
patch -Np1 -i $SRC/731.patch
}

build() {
cd PyYAML-$version

python setup.py --with-libyaml build
python setup.py --with-libyaml install --prefix=/usr --root=$PKG --optimize=1
}

0 comments on commit d27a1d2

Please sign in to comment.