python-cffi: Update to 2.0.0
This commit is contained in:
parent
4d84c314ed
commit
77f09e51fc
65
mingw-w64-python-cffi/0001-missing-exchange8.patch
Normal file
65
mingw-w64-python-cffi/0001-missing-exchange8.patch
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
--- cffi-2.0.0/src/c/misc_win32.h.orig 2025-09-08 23:59:32.000000000 +0200
|
||||||
|
+++ cffi-2.0.0/src/c/misc_win32.h 2025-09-09 19:02:37.302712500 +0200
|
||||||
|
@@ -275,7 +275,9 @@
|
||||||
|
|
||||||
|
static void *cffi_atomic_load(void **ptr)
|
||||||
|
{
|
||||||
|
-#if defined(_M_X64) || defined(_M_IX86)
|
||||||
|
+#if defined(__GNUC__) || defined(__clang__)
|
||||||
|
+ return __atomic_load_n(ptr, __ATOMIC_SEQ_CST);
|
||||||
|
+#elif defined(_M_X64) || defined(_M_IX86)
|
||||||
|
return *(volatile void **)ptr;
|
||||||
|
#elif defined(_M_ARM64)
|
||||||
|
return (void *)__ldar64((volatile unsigned __int64 *)ptr);
|
||||||
|
@@ -286,7 +288,9 @@
|
||||||
|
|
||||||
|
static uint8_t cffi_atomic_load_uint8(uint8_t *ptr)
|
||||||
|
{
|
||||||
|
-#if defined(_M_X64) || defined(_M_IX86)
|
||||||
|
+#if defined(__GNUC__) || defined(__clang__)
|
||||||
|
+ return __atomic_load_n(ptr, __ATOMIC_SEQ_CST);
|
||||||
|
+#elif defined(_M_X64) || defined(_M_IX86)
|
||||||
|
return *(volatile uint8_t *)ptr;
|
||||||
|
#elif defined(_M_ARM64)
|
||||||
|
return (uint8_t)__ldar8((volatile uint8_t *)ptr);
|
||||||
|
@@ -297,7 +301,9 @@
|
||||||
|
|
||||||
|
static Py_ssize_t cffi_atomic_load_ssize(Py_ssize_t *ptr)
|
||||||
|
{
|
||||||
|
-#if defined(_M_X64) || defined(_M_IX86)
|
||||||
|
+#if defined(__GNUC__) || defined(__clang__)
|
||||||
|
+ return __atomic_load_n(ptr, __ATOMIC_SEQ_CST);
|
||||||
|
+#elif defined(_M_X64) || defined(_M_IX86)
|
||||||
|
return *(volatile Py_ssize_t *)ptr;
|
||||||
|
#elif defined(_M_ARM64)
|
||||||
|
return (Py_ssize_t)__ldar64((volatile unsigned __int64 *)ptr);
|
||||||
|
@@ -308,17 +314,29 @@
|
||||||
|
|
||||||
|
static void cffi_atomic_store_ssize(Py_ssize_t *ptr, Py_ssize_t value)
|
||||||
|
{
|
||||||
|
+#if defined(__GNUC__) || defined(__clang__)
|
||||||
|
+ __atomic_store_n(ptr, value, __ATOMIC_SEQ_CST);
|
||||||
|
+#else
|
||||||
|
_InterlockedExchangePointer(ptr, value);
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
static void cffi_atomic_store(void **ptr, void *value)
|
||||||
|
{
|
||||||
|
+#if defined(__GNUC__) || defined(__clang__)
|
||||||
|
+ __atomic_store_n(ptr, value, __ATOMIC_SEQ_CST);
|
||||||
|
+#else
|
||||||
|
_InterlockedExchangePointer(ptr, value);
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
static void cffi_atomic_store_uint8(uint8_t *ptr, uint8_t value)
|
||||||
|
{
|
||||||
|
+#if defined(__GNUC__) || defined(__clang__)
|
||||||
|
+ __atomic_store_n(ptr, value, __ATOMIC_SEQ_CST);
|
||||||
|
+#else
|
||||||
|
_InterlockedExchange8(ptr, value);
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* CFFI_MISC_WIN32_H */
|
||||||
@ -3,8 +3,8 @@
|
|||||||
_realname=cffi
|
_realname=cffi
|
||||||
pkgbase=mingw-w64-python-${_realname}
|
pkgbase=mingw-w64-python-${_realname}
|
||||||
pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}")
|
pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}")
|
||||||
pkgver=1.17.1
|
pkgver=2.0.0
|
||||||
pkgrel=3
|
pkgrel=1
|
||||||
pkgdesc="Foreign Function Interface for Python calling C code (mingw-w64)"
|
pkgdesc="Foreign Function Interface for Python calling C code (mingw-w64)"
|
||||||
arch=('any')
|
arch=('any')
|
||||||
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
|
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
|
||||||
@ -21,26 +21,32 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-python-build"
|
|||||||
"${MINGW_PACKAGE_PREFIX}-python-setuptools"
|
"${MINGW_PACKAGE_PREFIX}-python-setuptools"
|
||||||
"${MINGW_PACKAGE_PREFIX}-cc")
|
"${MINGW_PACKAGE_PREFIX}-cc")
|
||||||
source=("https://pypi.org/packages/source/${_realname:0:1}/${_realname}/${_realname}-${pkgver}.tar.gz"
|
source=("https://pypi.org/packages/source/${_realname:0:1}/${_realname}/${_realname}-${pkgver}.tar.gz"
|
||||||
"mingw-non-x86.patch")
|
"mingw-non-x86.patch"
|
||||||
sha256sums=('1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824'
|
"0001-missing-exchange8.patch")
|
||||||
'c8a8ea2d65932ea0b62eae56dbc8afd6baacaadc7cb284ca0e4edf7ed1460c52')
|
sha256sums=('44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529'
|
||||||
|
'c8a8ea2d65932ea0b62eae56dbc8afd6baacaadc7cb284ca0e4edf7ed1460c52'
|
||||||
|
'fdb25cf730913cf6270e4cdd80faf62e685aea02ecbf84059f7d91861e1a3a95')
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
cd "${srcdir}"/"${_realname}-${pkgver}"
|
cd "${srcdir}"/"${_realname}-${pkgver}"
|
||||||
patch -Np1 -i "${srcdir}"/mingw-non-x86.patch
|
patch -Np1 -i "${srcdir}"/mingw-non-x86.patch
|
||||||
|
|
||||||
|
# https://github.com/mingw-w64/mingw-w64/issues/118
|
||||||
|
# https://github.com/python-cffi/cffi/pull/198
|
||||||
|
patch -Np1 -i "${srcdir}"/0001-missing-exchange8.patch
|
||||||
}
|
}
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
cp -r "${_realname}-${pkgver}" "python-build-${MSYSTEM}" && cd "python-build-${MSYSTEM}"
|
cp -r "${_realname}-${pkgver}" "python-build-${MSYSTEM}" && cd "python-build-${MSYSTEM}"
|
||||||
CFLAGS+=" -Wno-incompatible-pointer-types"
|
|
||||||
${MINGW_PREFIX}/bin/python -m build --wheel --skip-dependency-check --no-isolation
|
python -m build --wheel --skip-dependency-check --no-isolation
|
||||||
}
|
}
|
||||||
|
|
||||||
package() {
|
package() {
|
||||||
cd "${srcdir}"/python-build-${MSYSTEM}
|
cd "${srcdir}"/python-build-${MSYSTEM}
|
||||||
|
|
||||||
MSYS2_ARG_CONV_EXCL="--prefix=" \
|
MSYS2_ARG_CONV_EXCL="--prefix=" \
|
||||||
${MINGW_PREFIX}/bin/python -m installer --prefix=${MINGW_PREFIX} \
|
python -m installer --prefix=${MINGW_PREFIX} \
|
||||||
--destdir="${pkgdir}" dist/*.whl
|
--destdir="${pkgdir}" dist/*.whl
|
||||||
|
|
||||||
install -D -m644 LICENSE "${pkgdir}${MINGW_PREFIX}"/share/licenses/python-${_realname}/LICENSE
|
install -D -m644 LICENSE "${pkgdir}${MINGW_PREFIX}"/share/licenses/python-${_realname}/LICENSE
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user