On 30/12/2025 11:49, Marco Atzeri via Cygwin-apps wrote:
Hi Mantainers,
using the SCALLYWAG build of rust
$ rustc --version
rustc 1.91.0 (f8297e351 2025-10-28) (built from a source tarball)
I was able to compile the latest versions of
python-bcrypt
python-cryptography
that I uploded as TEST.
The build dependency on RUST is currently disabled to avoid complaint
during the upload.
While "python-bcrypt" was relative straightward with minor trick to set
RUSTFLAGS for the right version of python
---------------------------------------------------------
BASE_PYTHON_WHEEL_VERSIONS=${PYTHON_WHEEL_VERSIONS}
src_compile() {
cd ${S}
lndirs
cd ${B}
for v in ${BASE_PYTHON_WHEEL_VERSIONS//:/ }
do
export RUSTFLAGS=" -lpython${v}"
PYTHON_WHEEL_VERSIONS="${v}"
inform "building ${v}"
python_wheel_compile
done
PYTHON_WHEEL_VERSIONS=${BASE_PYTHON_WHEEL_VERSIONS}
Huh. Interesting.
I guess that just means that something in the guts of the build doesn't
realize that -lpythonNN is needed on cygwin (to complete undefined
references in the library built).
}
---------------------------------------------------------
"python-cryptography" needed an additional package
as the wheel files were NOT in a suitable format
./dist/cryptography-46.0.3-cp312-abi3-cygwin_86_64.whl
./dist/cryptography-46.0.3-cp39-abi3-cygwin_86_64.whl
after installing the "python-maturin" packages the wheel files
were correctly built
./dist/cryptography-46.0.3-cp312-abi3-cygwin_3_6_5_x86_64.whl
./dist/cryptography-46.0.3-cp39-abi3-cygwin_3_6_5_x86_64.whl
Hmm... coincidentally, I was recently looking at this logic [1] which
recognizes .whl filenames
I'm not sure if the matching there is just ad-hoc, or what it means when
python chooses to include the 'uname -r' ("kernel version") in the wheel
filename.
[1]
https://cygwin.com/cgit/cygwin-apps/cygport/tree/cygclass/python-wheel.cygclass#n193