PKGBUILDs/extra/distcc/PKGBUILD
2023-06-17 12:58:50 +00:00

95 lines
3.3 KiB
Bash

# Maintainer: Alexander F. Rødseth <xyproto@archlinux.org>
# Contributor: John <graysky@archlinux.us>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Judd Vinet <jvinet@zeroflux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Reza Jahanbakhshi <reza.jahanbakhshi@gmail.com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - added --without-avahi to configure
# - removed gtk2 from deps and --with-gtk from configure
# - patch to allow zero timeout (INT_MAX time to complete)
pkgname=distcc
pkgver=3.4
pkgrel=8
_gccver=13.1.1 # Current GCC version, used for symlinks, ref FS#69044
pkgdesc='Distributed compilation service for C, C++ and Objective-C'
arch=(x86_64)
url='https://github.com/distcc/distcc'
license=(GPL)
depends=(popt)
makedepends=(git python gtk3)
optdepends=("gcc=$_gccver"
"python: for python bindings"
"gtk3: for distccmon")
backup=(etc/conf.d/distccd
etc/distcc/hosts)
source=("git+$url?signed#tag=v$pkgver"
distccd.conf.d
distccd.service
sysusers.conf
meson_triple.patch::https://github.com/distcc/distcc/pull/427/commits/850db9eec0d5dd7f47ade8ffca91b679081f6d85.patch
allow-zero-timeout.patch)
b2sums=('SKIP'
'c48a6daea2cae5e5865c488e612c819e6f9bf4a1b205e2cd264b795de3450d40b0fe05264fbd8a3fe861f03e38d91e7e791ad67e22da5b5d0b43bcb380b8b4c9'
'9b6ffc02e9360fd92f7595e96ef2d69b5f6d72acf343009375fa081f86b26f51960b139c4f6e0e3c8befa37eba4894d61351bbfab6386389c262db0cc01a8b8e'
'd1b057ce49994ac61e9d5a861c1c770452102300d47a9c396b3272d7f5afbd3fe3e865e6db11c046e73ae3b6886bc8970a10624650731d55132362436904f989'
'9e2fcd16070837f45852f4f8be6fc1a53d2f4c70a4058260d97ebde7d6bc58a6557d90a71b69a6a17d53e68c2b4d55b94afaf10b34610cac9ecf925298a02799'
'9fb83627feffba4093ea68f31cdd9257d0626f1c97aff4cd55ab74d02aceabc763e1fc59c35ddc042b61113c081b1f4cc64b8021e7ae8a5883641e7cc488f7ec')
validpgpkeys=(30782E2BE4EB9FD5B293D3DA6D100BF096B8A005) # Shawn Landden
prepare() {
cd $pkgname
# see FS#78800
patch -p1 -i ../meson_triple.patch
patch -p1 -i ../allow-zero-timeout.patch
./autogen.sh
sed -i 's/ install-gnome-data//g' Makefile.in
}
build() {
cd $pkgname
# ref https://github.com/distcc/distcc/issues/454#issuecomment-1087865811
export CFLAGS+=' -DPY_SSIZE_T_CLEAN -fcommon'
./configure \
--enable-rfc2553 \
--mandir=/usr/share/man \
--prefix=/usr \
--sbindir=/usr/bin \
--sysconfdir=/etc \
--without-avahi \
--with-gtk
make WERROR_CFLAGS= INCLUDESERVER_PYTHON=/usr/bin/python
}
package() {
make -C $pkgname \
DESTDIR="$pkgdir" \
INCLUDESERVER_PYTHON=/usr/bin/python \
install
install -Dm644 distccd.conf.d "$pkgdir/etc/conf.d/distccd"
install -Dm644 distccd.service \
"$pkgdir/usr/lib/systemd/system/distccd.service"
# Package symlinks
_targets=(c++ c89 c99 cc clang clang++ cpp g++ gcc)
install -d "$pkgdir/usr/lib/$pkgname/bin"
for bin in "${_targets[@]}"; do
# For whitelist since version 3.3, ref FS#57978
ln -sf ../../bin/$pkgname "$pkgdir/usr/lib/$pkgname/$bin"
# Needed for makepkg to work
ln -sf ../../../bin/$pkgname "$pkgdir/usr/lib/$pkgname/bin/$bin"
done
# ref FS#67629
install -Dm644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/distccd.conf"
}