mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-01-03 07:42:10 +01:00
124 lines
2.2 KiB
Plaintext
124 lines
2.2 KiB
Plaintext
# Maintainer: Celeste <cielesti@protonmail.com>
|
|
pkgname=shadowsocks-rust
|
|
pkgver=1.17.0
|
|
pkgrel=0
|
|
pkgdesc="Rust port of shadowsocks"
|
|
url="https://github.com/shadowsocks/shadowsocks-rust"
|
|
arch="all"
|
|
license="MIT"
|
|
makedepends="
|
|
cargo
|
|
mimalloc2-dev
|
|
openssl-dev
|
|
"
|
|
subpackages="
|
|
$pkgname-sslocal
|
|
$pkgname-ssmanager
|
|
$pkgname-ssserver
|
|
$pkgname-ssservice
|
|
$pkgname-ssurl
|
|
"
|
|
source="$pkgname-$pkgver.tar.gz::https://github.com/shadowsocks/shadowsocks-rust/archive/refs/tags/v$pkgver.tar.gz"
|
|
options="net !check" # fail for some reason
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
# Rust target triple.
|
|
local target=$(rustc -vV | sed -n 's/host: //p')
|
|
|
|
# Build against system-provided libs
|
|
mkdir -p .cargo
|
|
cat >> .cargo/config.toml <<-EOF
|
|
[target.$target]
|
|
mimalloc = { rustc-link-lib = ["mimalloc"] }
|
|
EOF
|
|
|
|
cargo fetch --target="$CTARGET" --locked
|
|
}
|
|
|
|
build() {
|
|
local features="
|
|
aead-cipher-2022
|
|
local-http-native-tls
|
|
local-redir
|
|
local-socks4
|
|
local-tunnel
|
|
logging
|
|
manager
|
|
mimalloc
|
|
multi-threaded
|
|
server
|
|
service
|
|
utility
|
|
"
|
|
case "$CARCH" in
|
|
ppc64le|s390x|riscv64)
|
|
;;
|
|
*)
|
|
# ioctl-sys
|
|
features="$features local-tun"
|
|
;;
|
|
esac
|
|
cargo build --release \
|
|
--frozen \
|
|
--bins \
|
|
--no-default-features \
|
|
--features="$(echo $features | tr -s " " ",")"
|
|
}
|
|
|
|
check() {
|
|
cargo test --frozen
|
|
}
|
|
|
|
package() {
|
|
depends="
|
|
$pkgname-sslocal=$pkgver-r$pkgrel
|
|
$pkgname-ssmanager=$pkgver-r$pkgrel
|
|
$pkgname-ssserver=$pkgver-r$pkgrel
|
|
$pkgname-ssservice=$pkgver-r$pkgrel
|
|
$pkgname-ssurl=$pkgver-r$pkgrel
|
|
"
|
|
cd target/release
|
|
install -Dm755 -t "$pkgdir"/usr/bin/ \
|
|
sslocal \
|
|
ssmanager \
|
|
ssserver \
|
|
ssservice \
|
|
ssurl
|
|
}
|
|
|
|
sslocal() {
|
|
pkgdesc="$pkgdesc (sslocal binary)"
|
|
|
|
amove usr/bin/sslocal
|
|
}
|
|
|
|
ssmanager() {
|
|
pkgdesc="$pkgdesc (ssmanager binary)"
|
|
|
|
amove usr/bin/ssmanager
|
|
}
|
|
|
|
ssserver() {
|
|
pkgdesc="$pkgdesc (ssserver binary)"
|
|
|
|
amove usr/bin/ssserver
|
|
}
|
|
|
|
ssservice() {
|
|
pkgdesc="$pkgdesc (ssservice binary)"
|
|
|
|
amove usr/bin/ssservice
|
|
}
|
|
|
|
ssurl() {
|
|
pkgdesc="$pkgdesc (ssurl binary)"
|
|
|
|
amove usr/bin/ssurl
|
|
}
|
|
|
|
sha512sums="
|
|
3eac6fe91fb1848567553798d800c6bc6579dbf6aaa0fcca7b082710443f96dc49dea2994e0e59e6f7865848483088f590a0baabcd9e88324c8621416c2ebfba shadowsocks-rust-1.17.0.tar.gz
|
|
"
|