python-scandir: remove package, fix python3 build

This commit is contained in:
Michal Vasilek 2022-09-25 15:03:02 +02:00 committed by classabbyamp
parent f28a8958d0
commit bae773510c
4 changed files with 82 additions and 31 deletions

View File

@ -1,30 +0,0 @@
# Template file for 'python-scandir'
pkgname=python-scandir
version=1.10.0
revision=5
wrksrc="scandir-${version}"
build_style=python-module
pycompile_module="scandir.py"
hostmakedepends="python-setuptools python3-setuptools"
makedepends="python-devel python3-devel"
depends="python"
short_desc="Better directory iterator and faster os.walk() (Python2)"
maintainer="Alessio Sergi <al3hex@gmail.com>"
license="BSD-3-Clause"
homepage="https://github.com/benhoyt/scandir"
distfiles="${PYPI_SITE}/s/scandir/scandir-${version}.tar.gz"
checksum=4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae
python3-scandir_package() {
pycompile_module="scandir.py"
depends="python3"
short_desc="${short_desc/Python2/Python3}"
pkg_install() {
vmove usr/lib/python3*
vlicense LICENSE.txt
}
}
post_install() {
vlicense LICENSE.txt
}

View File

@ -1 +0,0 @@
python-scandir

View File

@ -0,0 +1,63 @@
(only includes changes to _scandir.c, others are irrelevant)
From 3396aa4155ffde8600a0e9ca50d5872569169b5d Mon Sep 17 00:00:00 2001
From: Ben Hoyt <benhoyt@gmail.com>
Date: Mon, 24 Jan 2022 08:44:07 +1300
Subject: [PATCH] Add Python 3.10 to tests (#137)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Fix PyStructSequence_UnnamedField build issues on Python 3.9/3.10
_scandir.c:663:7: error: conflicting type qualifiers for PyStructSequence_UnnamedField
663 | char *PyStructSequence_UnnamedField = "unnamed field";
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/local/include/python3.10/Python.h:127,
from _scandir.c:14:
/usr/local/include/python3.10/structseq.h:22:27: note: previous declaration of PyStructSequence_UnnamedField was here
22 | extern const char * const PyStructSequence_UnnamedField;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Fixes https://github.com/benhoyt/scandir/pull/137
---
.github/workflows/tests.yml | 2 +-
_scandir.c | 10 +++++-----
scandir.py | 2 +-
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/_scandir.c b/_scandir.c
index 6cc28c8..433483f 100644
--- a/_scandir.c
+++ b/_scandir.c
@@ -660,7 +660,7 @@ _pystat_fromstructstat(STRUCT_STAT *st)
return v;
}
-char *PyStructSequence_UnnamedField = "unnamed field";
+static char *scandir_unnamed_field = "unnamed field";
PyDoc_STRVAR(stat_result__doc__,
"stat_result: Result from stat, fstat, or lstat.\n\n\
@@ -681,7 +681,7 @@ static PyStructSequence_Field stat_result_fields[] = {
{"st_uid", "user ID of owner"},
{"st_gid", "group ID of owner"},
{"st_size", "total size, in bytes"},
- /* The NULL is replaced with PyStructSequence_UnnamedField later. */
+ /* The NULL is replaced with scandir_unnamed_field later. */
{NULL, "integer time of last access"},
{NULL, "integer time of last modification"},
{NULL, "integer time of last change"},
@@ -1817,9 +1817,9 @@ init_scandir(void)
if (!billion)
INIT_ERROR;
- stat_result_desc.fields[7].name = PyStructSequence_UnnamedField;
- stat_result_desc.fields[8].name = PyStructSequence_UnnamedField;
- stat_result_desc.fields[9].name = PyStructSequence_UnnamedField;
+ stat_result_desc.fields[7].name = scandir_unnamed_field;
+ stat_result_desc.fields[8].name = scandir_unnamed_field;
+ stat_result_desc.fields[9].name = scandir_unnamed_field;
PyStructSequence_InitType(&StatResultType, &stat_result_desc);
structseq_new = StatResultType.tp_new;
StatResultType.tp_new = statresult_new;

View File

@ -0,0 +1,19 @@
# Template file for 'python3-scandir'
pkgname=python3-scandir
version=1.10.0
revision=8
wrksrc="scandir-${version}"
build_style=python3-module
hostmakedepends="python3-setuptools"
makedepends="python3-devel"
depends="python3"
short_desc="Better directory iterator and faster os.walk()"
maintainer="Alessio Sergi <al3hex@gmail.com>"
license="BSD-3-Clause"
homepage="https://github.com/benhoyt/scandir"
distfiles="${PYPI_SITE}/s/scandir/scandir-${version}.tar.gz"
checksum=4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae
post_install() {
vlicense LICENSE.txt
}