summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 4e402c836a0ddff9713adba51f2ca094b2774147 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# Maintainer:  Vitalii Kuzhdin <vitaliikuzhdin@gmail.com>

_name="rav1e"
pkgname="lib32-${_name}"
pkgver=0.8.1
pkgrel=2
pkgdesc="An AV1 encoder focused on speed and safety (32-bit)"
arch=(
  'x86_64'
)
url="https://github.com/xiph/${_name}"
license=(
  'BSD-2-Clause'
)
depends=(
  # "${_name}>=${pkgver}"
  'lib32-gcc-libs'
  'lib32-glibc'
)
makedepends=(
  'cargo-c'
  'lib32-rust-libs'
  'nasm'
  'rust'
)
provides=(
  "lib${_name}.so"
)
options=(
  '!lto'
)
_pkgsrc="${url##*/}-${pkgver}"
source=(
  "${url}/archive/refs/tags/v${pkgver}/${_pkgsrc}.tar.gz"
  "${_pkgsrc}-Cargo.lock::${url}/releases/download/v${pkgver}/Cargo.lock"
)
sha256sums=('06d1523955fb6ed9cf9992eace772121067cca7e8926988a1ee16492febbe01e'
            '861482385bdef579e207bb371937dd49cb9ff47d9406c40660b760fa672d0589')
b2sums=('a7b396df8f0ac3cb7f4f7f6e4bac5b9500037f3518f3ac2914088f45928a443d81b59a5f4d777f49c7877713444c4b019db5baf27063b3f1c4a7bf82595de3ec'
        '4c0e7e271f8cd96bf5d47162a0072a7ba4ddb6f40ec03fc6deddd7b3166fffcdc60ddf85829d49359a9d49fe9a3fba1ed4ef2ea8c4303475076eba9ea6ae1cc4')

_source() {
  export CARGO_HOME="${srcdir}/.cargo"
  export CARGO_TARGET_DIR=target
  export RUSTUP_TOOLCHAIN=stable
  export _rust_target="$(rustc -vV | sed -n 's/host: //p' | sed 's/x86_64/i686/')"
}

prepare() {
  _source

  cd "${srcdir}"
  cp -vf "${_pkgsrc}-Cargo.lock" "${_pkgsrc}/Cargo.lock"  

  cd "${_pkgsrc}"
  cargo fetch --locked --target "${_rust_target}"
}

# build() {
#   _source
#   local cargo_options=(
#     --target "${_rust_target}"
#     --release
#     --frozen
#     --no-default-features
#     --features asm,threading,signal_support # binaries
#   )

#   cd "${srcdir}/${_pkgsrc}"
#   cargo  build "${cargo_options[@]}"
#   cargo cbuild "${cargo_options[@]}" \
#     --prefix='/usr' \
#     --libdir='/usr/lib32'
# }

check() {
  _source
  local cargo_options=(
    --target "${_rust_target}"
    --release
    --frozen
    --offline
    --no-default-features
    --features asm,threading,signal_support # binaries
  )

  cd "${srcdir}/${_pkgsrc}"
  cargo test "${cargo_options[@]}"
}

package() {
  _source
  local cargo_options=(
    --target "${_rust_target}"
    --frozen
    --offline
    --no-default-features
    --features asm,threading,signal_support # binaries
  )

  cd "${srcdir}/${_pkgsrc}"
  cargo  install "${cargo_options[@]}" \
    --no-track \
    --path . \
    --root="${pkgdir}/usr"
  cargo cinstall "${cargo_options[@]}" \
    --prefix /usr \
    --destdir="${pkgdir}" \
    --libdir='/usr/lib32'

  install -vDm644 "LICENSE" "PATENTS" -t "${pkgdir}/usr/share/licenses/${pkgname}"
  
  cd "${pkgdir}/usr"
  rm -rf "bin" "include"
}