diff options
Diffstat (limited to 'python/python3-bcrypt')
-rw-r--r-- | python/python3-bcrypt/python3-bcrypt.SlackBuild | 113 | ||||
-rw-r--r-- | python/python3-bcrypt/python3-bcrypt.info | 118 |
2 files changed, 223 insertions, 8 deletions
diff --git a/python/python3-bcrypt/python3-bcrypt.SlackBuild b/python/python3-bcrypt/python3-bcrypt.SlackBuild index c2155df029..666a649ed0 100644 --- a/python/python3-bcrypt/python3-bcrypt.SlackBuild +++ b/python/python3-bcrypt/python3-bcrypt.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=python3-bcrypt SRCNAM=${PRGNAM#python3-*} -VERSION=${VERSION:-3.2.2} +VERSION=${VERSION:-4.1.3} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -35,11 +35,14 @@ if [ -z "$ARCH" ]; then arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac + + if [ "$ARCH" = "i586" ]; then + if rustc -Vv | grep host | grep i686 > /dev/null ; then + ARCH=i686 + fi + fi fi -# If the variable PRINT_PACKAGE_NAME is set, then this script will report what -# the name of the created package would be, and then exit. This information -# could be useful to other scripts. if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" exit 0 @@ -49,6 +52,27 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" + CARGOTARGET="--target $ARCH-unknown-linux-gnu" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" + CARGOTARGET="--target $ARCH-unknown-linux-gnu" +elif [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "aarch64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" + CARGOTARGET="--target $ARCH-unknown-linux-gnu" +elif [ "$ARCH" = "aarch64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" + CARGOTARGET="" +fi + set -e rm -rf $PKG @@ -57,6 +81,79 @@ cd $TMP rm -rf $SRCNAM-$VERSION tar xvf $CWD/$SRCNAM-$VERSION.tar.gz cd $SRCNAM-$VERSION + +# Using more recent rust version +export PATH="/opt/rust16/bin:$PATH" +if [ -z "$LD_LIBRARY_PATH" ]; then + export LD_LIBRARY_PATH="/opt/rust16/lib$LIBDIRSUFFIX" +else + export LD_LIBRARY_PATH="/opt/rust16/lib$LIBDIRSUFFIX:$LD_LIBRARY_PATH" +fi + +# build offline +# configuration tells cargo to use the configured directory +# for dependencies intead of downloading from crates.io +mkdir .cargo +cat << EOF >> .cargo/config.toml +[source] +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" +EOF + +# deps and versions come from Cargo.lock +mkdir vendor +( + cd vendor + + grep -h -A 4 "\[\[package\]\]" \ + $(find "../" -mindepth 1 -name Cargo.lock | tr '\n' ' ') | \ + sed 's/[[:space:]]*=[[:space:]]*/=/g;s/^--//;s/^\[\[/--\n[[/' | \ + awk 'BEGIN { RS = "--\n" ; FS="\n" } { print $2, $3, $4, $5 }' | \ + sed 's/"//g;s/name=//;s/ version=/=/' | \ + grep " source=" | \ + sed 's/ dependencies=.*$//' | \ + sed 's/ source=[^ ]*//' | \ + sed 's/ checksum=/=/' | \ + sort -u | \ + while read -r dep ; do + + cksum="$(printf "%s\n" "$dep" | cut -d= -f3)" + ver="$(printf "%s\n" "$dep" | cut -d= -f2)" + dep="$(printf "%s\n" "$dep" | cut -d= -f1)" + + CRATE_FILE=$CWD/$dep-$ver.crate + + if [ -z "$cksum" ] ; then + mkdir $dep-$ver + tar xvf $CRATE_FILE -C $dep-$ver --strip-components=1 + cksum="null" + else + tar xvf $CRATE_FILE + fi + + touch $dep-$ver/.cargo-ok + + # generate checksum + { + printf "{\n" + printf ' "files": {\n' + + ( + cd $dep-$ver + find . -type f -print0 | xargs -0 sha256sum | sed -n '/\.cargo-checksum\.json/!p' | sed 's/\.\///;s/^\([^ ]*\)[[:space:]][[:space:]]*\(.*\)$/"\2":"\1",/' + ) | sed '$ s/,$//' + + printf " },\n" + printf ' "package": "%s"' "$cksum" + + printf "}\n" + } > $dep-$ver/.cargo-checksum.json + done +) + chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ @@ -64,8 +161,16 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +PYVER=$(python3 -c 'import sys; print("%d.%d" % sys.version_info[:2])') +export PYTHONPATH=/opt/python$PYVER/site-packages/ +CARGO_HOME=.cargo \ +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ python3 setup.py install --root=$PKG +find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a README.rst LICENSE MANIFEST.in $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild diff --git a/python/python3-bcrypt/python3-bcrypt.info b/python/python3-bcrypt/python3-bcrypt.info index 8ad5e61f5e..0428c05a3f 100644 --- a/python/python3-bcrypt/python3-bcrypt.info +++ b/python/python3-bcrypt/python3-bcrypt.info @@ -1,10 +1,120 @@ PRGNAM="python3-bcrypt" -VERSION="3.2.2" +VERSION="4.1.3" HOMEPAGE="https://github.com/pyca/bcrypt/" -DOWNLOAD="https://pypi.python.org/packages/source/b/bcrypt/bcrypt-3.2.2.tar.gz" -MD5SUM="3978ac76158b6241d1c2ca140dac1b56" +DOWNLOAD="https://pypi.python.org/packages/source/b/bcrypt/bcrypt-4.1.3.tar.gz \ + https://static.crates.io/crates/autocfg/autocfg-1.3.0.crate \ + https://static.crates.io/crates/base64/base64-0.22.1.crate \ + https://static.crates.io/crates/bcrypt-pbkdf/bcrypt-pbkdf-0.10.0.crate \ + https://static.crates.io/crates/bcrypt/bcrypt-0.15.1.crate \ + https://static.crates.io/crates/bitflags/bitflags-2.5.0.crate \ + https://static.crates.io/crates/block-buffer/block-buffer-0.10.4.crate \ + https://static.crates.io/crates/blowfish/blowfish-0.9.1.crate \ + https://static.crates.io/crates/byteorder/byteorder-1.5.0.crate \ + https://static.crates.io/crates/cfg-if/cfg-if-1.0.0.crate \ + https://static.crates.io/crates/cipher/cipher-0.4.4.crate \ + https://static.crates.io/crates/cpufeatures/cpufeatures-0.2.12.crate \ + https://static.crates.io/crates/crypto-common/crypto-common-0.1.6.crate \ + https://static.crates.io/crates/digest/digest-0.10.7.crate \ + https://static.crates.io/crates/generic-array/generic-array-0.14.7.crate \ + https://static.crates.io/crates/getrandom/getrandom-0.2.14.crate \ + https://static.crates.io/crates/heck/heck-0.4.1.crate \ + https://static.crates.io/crates/indoc/indoc-2.0.5.crate \ + https://static.crates.io/crates/inout/inout-0.1.3.crate \ + https://static.crates.io/crates/libc/libc-0.2.154.crate \ + https://static.crates.io/crates/lock_api/lock_api-0.4.12.crate \ + https://static.crates.io/crates/memoffset/memoffset-0.9.1.crate \ + https://static.crates.io/crates/once_cell/once_cell-1.19.0.crate \ + https://static.crates.io/crates/parking_lot/parking_lot-0.12.2.crate \ + https://static.crates.io/crates/parking_lot_core/parking_lot_core-0.9.10.crate \ + https://static.crates.io/crates/pbkdf2/pbkdf2-0.12.2.crate \ + https://static.crates.io/crates/portable-atomic/portable-atomic-1.6.0.crate \ + https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.81.crate \ + https://static.crates.io/crates/pyo3-build-config/pyo3-build-config-0.21.2.crate \ + https://static.crates.io/crates/pyo3-ffi/pyo3-ffi-0.21.2.crate \ + https://static.crates.io/crates/pyo3-macros-backend/pyo3-macros-backend-0.21.2.crate \ + https://static.crates.io/crates/pyo3-macros/pyo3-macros-0.21.2.crate \ + https://static.crates.io/crates/pyo3/pyo3-0.21.2.crate \ + https://static.crates.io/crates/quote/quote-1.0.36.crate \ + https://static.crates.io/crates/redox_syscall/redox_syscall-0.5.1.crate \ + https://static.crates.io/crates/scopeguard/scopeguard-1.2.0.crate \ + https://static.crates.io/crates/sha2/sha2-0.10.8.crate \ + https://static.crates.io/crates/smallvec/smallvec-1.13.2.crate \ + https://static.crates.io/crates/subtle/subtle-2.5.0.crate \ + https://static.crates.io/crates/syn/syn-2.0.60.crate \ + https://static.crates.io/crates/target-lexicon/target-lexicon-0.12.14.crate \ + https://static.crates.io/crates/typenum/typenum-1.17.0.crate \ + https://static.crates.io/crates/unicode-ident/unicode-ident-1.0.12.crate \ + https://static.crates.io/crates/unindent/unindent-0.2.3.crate \ + https://static.crates.io/crates/version_check/version_check-0.9.4.crate \ + https://static.crates.io/crates/wasi/wasi-0.11.0+wasi-snapshot-preview1.crate \ + https://static.crates.io/crates/windows-targets/windows-targets-0.52.5.crate \ + https://static.crates.io/crates/windows_aarch64_gnullvm/windows_aarch64_gnullvm-0.52.5.crate \ + https://static.crates.io/crates/windows_aarch64_msvc/windows_aarch64_msvc-0.52.5.crate \ + https://static.crates.io/crates/windows_i686_gnu/windows_i686_gnu-0.52.5.crate \ + https://static.crates.io/crates/windows_i686_gnullvm/windows_i686_gnullvm-0.52.5.crate \ + https://static.crates.io/crates/windows_i686_msvc/windows_i686_msvc-0.52.5.crate \ + https://static.crates.io/crates/windows_x86_64_gnu/windows_x86_64_gnu-0.52.5.crate \ + https://static.crates.io/crates/windows_x86_64_gnullvm/windows_x86_64_gnullvm-0.52.5.crate \ + https://static.crates.io/crates/windows_x86_64_msvc/windows_x86_64_msvc-0.52.5.crate \ + https://static.crates.io/crates/zeroize/zeroize-1.7.0.crate" +MD5SUM="30617ec75d7867f586948842030621db \ + 88a8c7336f056de768ee2966cefd8303 \ + 20084c4c04bcc06fd3d7ff662deca706 \ + 60cbc9c6df95ebe4e5ecd67569b866a6 \ + 22d36854f49eaf43d4c012b414632ceb \ + f3406374808b01be3a263666aa9aa2f5 \ + 023b03cf9968b29253a5dfe62051008d \ + c0d5296acca72ce01a0058b7b8f56e55 \ + 45339d90b2b3a4f123af5ec459954102 \ + 74634128440dbc3766bda76fdf0aaa05 \ + ef4cc5591659a050ca0de3363b6ab353 \ + 162407e4c09897085d00344230f375a0 \ + 89e88633cab0e4b6f3d3878b84dffe8b \ + 3d62bfbbe08bdcee55fcb8cda85554d9 \ + 64a6d8fe0c9a450bcefa41894e17d7ac \ + 8fa6facea904eb4b4c8d2e4eded272fe \ + b92fa50f56a1e06a7f1bf665442d4a73 \ + 3081de27c16d004a798de20d4bb6d314 \ + 5f3fd38b7aefc1ca48efe279994953f8 \ + 0bc840b564ce2b698189d5b204538624 \ + eb44c81f81e4aecdbdbafeac9c0fdcab \ + 1fb91af1c97373201990f1baedc58c35 \ + 8390247ae7126c00e162732b249be9d7 \ + 9d6c117b30034665155c9e6852b86e88 \ + fe316e1d51e3dff1e0455d0142dd37e4 \ + 8dcc72ff75b917257f9e9bb29de4b9e1 \ + b9d053b396a8cc2c6632e05985ba2ae1 \ + 11d049cc954c7a9744b9fa85d9596b0c \ + 5be59fce5e8c3c36abf98595ba16e1ed \ + a9a6a8eb929c86a45615784380070f5a \ + f955aa331b1daa8265dd13a976048d1c \ + 32ae58173ef8d72fbd8a5964c28c01bd \ + f092a97f5047a1cfb815f69916256e5d \ + 7267e731f46f52edb7b5304b60982cf4 \ + ea6dadf813d422419f900efa67ed9170 \ + f1358be8c98b98837cbd2cf51e75f8b3 \ + 289b776935f2184c6ba2974877285013 \ + 50d5a501f911bb592f0dce2d052c2aa8 \ + 24e0b498b23c398c49e3af66373c91cc \ + 5f38b77f4cd61a26d90079aaf5ad2257 \ + 1f3035abdc5ab99eeb519a06568d9b01 \ + 6ebb8deee5a5a0d1c26b20eeee1926b3 \ + ca65153603a1a7240bbd9d2ce19f2d67 \ + 812b2b925f9734bbc39717f284bc712b \ + d18d362345c4fe512ef67b738b239fb8 \ + e972ea58ec203bfa6c79c1207852298b \ + 940f8708332e8e3720266a7bce4d761d \ + 967cf93762a3bc25e18d0b8b7e811b84 \ + 0bc2062598ed9d8ed536e27fddd81ce7 \ + a35e6187f2f41e601cf885c279ebb43e \ + 183b6a856fadbc8f21a6c53ca81155c9 \ + cc1f120172ea435e8ac1e813435bc630 \ + 1dbfec917710e57b574e92effa934924 \ + 3817cf594b24311c4ea944398a58a48d \ + 7cc8e977768423992930663aadcc43dd \ + 4ca31ec33e1508b14d3445f19a16ba55" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="" +REQUIRES="python3-setuptools-rust-opt rust16" MAINTAINER="Yth - Arnaud" EMAIL="yth@ythogtha.org" |