summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorBert Peters2018-11-29 19:09:09 +0100
committerBert Peters2018-11-29 19:09:09 +0100
commit1c47cacc3bfa5b1ed474be777211a735c5345117 (patch)
treefa41c9a005f31af1dfd6ef78c2c3d7b308067155 /PKGBUILD
parenta7ab5888d78cb60c9adcabee0d62d6c5d16422de (diff)
downloadaur-1c47cacc3bfa5b1ed474be777211a735c5345117.tar.gz
Clean up PKGBUILD.
PKGBUILD now only contains every cargo command once, to prevent copy-paste bugs. I didn't bump the release, since the resulting binaries should be the same.
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD23
1 files changed, 13 insertions, 10 deletions
diff --git a/PKGBUILD b/PKGBUILD
index d67a6ac6749e..1998a6e15c36 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -21,30 +21,33 @@ prepare() {
build() {
cd "$srcdir/spotifyd-$pkgver"
- cargo build --release --locked
- # Compile any remaining libraries features
- cargo build --release --locked --features pulseaudio_backend,dbus_mpris
+ # Compile all variants. Compilation for later features can reuse
+ # previous build artifacts, so little overhead.
+ for feature in "" pulseaudio_backend dbus_mpris; do
+ cargo build --release --locked --features "$feature"
+ done
}
-package_spotifyd() {
+_package_feature() {
+ # Create a package for a particular feature.
cargo install --locked --root "$pkgdir/usr" --path "$srcdir/$pkgbase-$pkgver"
rm "$pkgdir/usr/.crates.toml"
install -D -m 644 "$srcdir/$pkgbase-$pkgver/contrib/spotifyd.service" "$pkgdir/usr/lib/systemd/user/spotifyd.service"
}
+package_spotifyd() {
+ _package_feature "" # no features
+}
+
package_spotifyd-pulseaudio() {
depends=(libpulse)
conflicts=(spotifyd)
pkgdesc="$pkgdesc, with pulseaudio support"
- cargo install --locked --root "$pkgdir/usr" --path "$srcdir/$pkgbase-$pkgver" --features pulseaudio_backend
- rm "$pkgdir/usr/.crates.toml"
- install -D -m 644 "$srcdir/$pkgbase-$pkgver/contrib/spotifyd.service" "$pkgdir/usr/lib/systemd/user/spotifyd.service"
+ _package_feature pulseaudio_backend
}
package_spotifyd-dbus-mpris() {
conflicts=(spotifyd)
pkgdesc="$pkgdesc, with D-Bus MPRIS"
- cargo install --locked --root "$pkgdir/usr" --path "$srcdir/$pkgbase-$pkgver" --features dbus_mpris
- rm "$pkgdir/usr/.crates.toml"
- install -D -m 644 "$srcdir/$pkgbase-$pkgver/contrib/spotifyd.service" "$pkgdir/usr/lib/systemd/user/spotifyd.service"
+ _package_feature dbus_mpris
}