153 lines
5.3 KiB
Text
153 lines
5.3 KiB
Text
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
|
|
# Maintainer: David Runge <dvzrv@archlinux.org>
|
|
# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
|
|
# Contributor: Simo L. <neotuli@yahoo.com>
|
|
# Contributor: eric <eric@archlinux.org>
|
|
|
|
_name=backends
|
|
pkgname=sane
|
|
pkgver=1.3.1
|
|
pkgrel=1
|
|
pkgdesc="Scanner Access Now Easy"
|
|
arch=(x86_64)
|
|
url="https://gitlab.com/sane-project/backends"
|
|
license=(
|
|
GPL-2.0-or-later
|
|
LicenseRef-GPL-2.0-or-later-with-linking-exception
|
|
)
|
|
depends=(
|
|
bash
|
|
cairo
|
|
gcc-libs
|
|
glibc
|
|
libpng
|
|
libieee1284
|
|
net-snmp
|
|
v4l-utils
|
|
)
|
|
makedepends=(
|
|
autoconf-archive
|
|
avahi
|
|
curl
|
|
glib2
|
|
libgphoto2
|
|
libjpeg-turbo
|
|
libtiff
|
|
libusb
|
|
libxml2
|
|
poppler-glib
|
|
python
|
|
systemd
|
|
texlive-latexextra
|
|
)
|
|
optdepends=(
|
|
'sane-airscan: for scanners working in driverless mode'
|
|
)
|
|
provides=(libsane.so)
|
|
source=(
|
|
$url/-/archive/$pkgver/$_name-$pkgver.tar.gz
|
|
66-${pkgname}d.rules
|
|
$pkgname.sysusers
|
|
${pkgname}d.service
|
|
${pkgname}d.socket
|
|
)
|
|
sha512sums=('2b6e0ffe64386aa5856a7e4f2b1c536ad9a6376fbf10c954dcc714c1792566a2a8a85a33a947b148ef3d23c1fbfeb5d114e5a99febe0e316ff78e3ab17a4beaf'
|
|
'd0d1b6bd6fbb04d610e7186e26d04c2233a620cc7c731ca3acd7fb860dd033fbe99d8974ffa1dd59c8affcc4aa2664d76ab3dfd6f7b2a734b31d7e3832359c41'
|
|
'd8cd194b57eff2249df2b8d540a892e518aa3e3bba6387211ed21230dc235e98c49b71f262f0b1007e8c859c59776410840376244e0aec1f06363881b2c81fd8'
|
|
'baf2cf2fdff689f776973ac4f69ea02b131f2a1a754a8d52a8e8ad33b0e559ba286649a891723a7ad94b2bcb01ec88155d43c36eaeb35e47fbc8ea80c49c5d47'
|
|
'a23ceeeb02bd9e214702003a3165886858ecbdd93df89cd37ad5f00581745454548ccda0ab656f2dc0acbf2896a8781568c786797e64a07014be003d6140a093')
|
|
b2sums=('5939d8e7df6056b3fd4641dca325c36f8bf01d7edc2d372f920252ecc9dde5da02fa65a47ef2763d8ded00d39056619167d18acb73a475ef902c49d4d1afdcf6'
|
|
'c9c6ba224b9b27f4ecc6b1ded6621a8abb52b1ded2d9078e4cad31177290b788e286fad74545a5cb09e1f6726515adc22003988eb646dc986e87f1a8061a0e27'
|
|
'2a4ddc9849562e3a0adcaec1859391e3f37a63f25c27dbc140cabd697bd65b89a0fc812c4516cbdfb36d1f30844df34934b3c1c59650101f54fc1ac0acb3f5d9'
|
|
'272b4860dbd3f2b69eedfed4532cf8a388629c003c9a0e0ee98defbc2023e07edc26275a17f56ea9fd4d90e9b3b6532c5b10d1e2b91e6ab4df242ac44101d802'
|
|
'5e9f0350a1553fc75aea88ce355fb68b881e3b2194ac0e3c6f3cecdae79111fb1db1cfe3b4933eca15af5f985fc6b89e4d9af3844b6e9cfd542828b6b9e57ed9')
|
|
|
|
prepare() {
|
|
# extract custom license exception
|
|
sed '1,41p' $_name-$pkgver/backend/dll.c > LicenseRef-GPL-2.0-or-later-with-linking-exception.txt
|
|
|
|
cd $_name-$pkgver
|
|
# copy translation files so they become reproducible: https://gitlab.com/sane-project/backends/-/issues/647
|
|
cp -v po/en{_GB,@quot}.po
|
|
cp -v po/en{_GB,@boldquot}.po
|
|
# create version files, so that autotools macros can use them:
|
|
# https://gitlab.com/sane-project/backends/-/issues/440
|
|
printf "%s\n" "$pkgver" > .tarball-version
|
|
printf "%s\n" "$pkgver" > .version
|
|
autoreconf -fiv
|
|
}
|
|
|
|
build() {
|
|
local configure_options=(
|
|
--prefix=/usr
|
|
--disable-locking
|
|
--disable-rpath
|
|
--docdir="/usr/share/doc/$pkgname"
|
|
--enable-pthread
|
|
--localstatedir=/var
|
|
--sbindir=/usr/bin
|
|
--sysconfdir=/etc
|
|
--with-avahi
|
|
--with-libcurl
|
|
--with-pic
|
|
--with-poppler-glib
|
|
--with-systemd
|
|
--with-usb
|
|
)
|
|
|
|
cd $_name-$pkgver
|
|
./configure "${configure_options[@]}"
|
|
|
|
# circumvent overlinking in libraries
|
|
sed -e 's/ -shared / -Wl,-O1,--as-needed\0/g' -i libtool
|
|
make
|
|
}
|
|
|
|
package() {
|
|
depends+=(
|
|
avahi libavahi-client.so libavahi-common.so
|
|
curl libcurl.so
|
|
glib2 libgobject-2.0.so
|
|
libgphoto2 libgphoto2.so libgphoto2_port.so
|
|
libjpeg-turbo libjpeg.so
|
|
libtiff libtiff.so
|
|
libusb libusb-1.0.so
|
|
libxml2 libxml2.so
|
|
poppler-glib libpoppler-glib.so
|
|
systemd-libs libsystemd.so
|
|
)
|
|
|
|
cd $_name-$pkgver
|
|
|
|
make DESTDIR="$pkgdir" install
|
|
|
|
# install custom license
|
|
install -vDm 644 ../LicenseRef-GPL-2.0-or-later-with-linking-exception.txt -t "$pkgdir/usr/share/licenses/$pkgname/"
|
|
|
|
# generate udev udev+hwdb
|
|
install -vdm 755 "$pkgdir/usr/lib/udev/rules.d/"
|
|
tools/sane-desc -m udev+hwdb -s doc/descriptions/ > "$pkgdir/usr/lib/udev/rules.d/65-$pkgname.rules"
|
|
tools/sane-desc -m udev+hwdb -s doc/descriptions-external/ >> "$pkgdir/usr/lib/udev/rules.d/65-$pkgname.rules"
|
|
# generate udev hwdb
|
|
install -vdm 755 "$pkgdir/usr/lib/udev/hwdb.d/"
|
|
tools/sane-desc -m hwdb -s doc/descriptions/ > "$pkgdir/usr/lib/udev/hwdb.d/20-$pkgname.hwdb"
|
|
# NOTE: an empty new line is required between the two .desc collections
|
|
printf "\n" >> "$pkgdir/usr/lib/udev/hwdb.d/20-$pkgname.hwdb"
|
|
tools/sane-desc -m hwdb -s doc/descriptions-external/ >> "$pkgdir/usr/lib/udev/hwdb.d/20-$pkgname.hwdb"
|
|
|
|
# systemd integration
|
|
install -vDm 644 ../${pkgname}d.socket -t "$pkgdir/usr/lib/systemd/system/"
|
|
install -vDm 644 ../${pkgname}d.service "$pkgdir/usr/lib/systemd/system/${pkgname}d@.service"
|
|
install -vDm 644 ../66-${pkgname}d.rules "$pkgdir/usr/lib/udev/rules.d/"
|
|
# sysusers.d
|
|
install -vDm 644 ../$pkgname.sysusers "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
|
|
|
|
# remove old ChangeLogs
|
|
rm -rvf "$pkgdir/usr/share/doc/$pkgname/ChangeLogs/"
|
|
|
|
# add files below /etc/sane.d to backup array
|
|
cd "$pkgdir"
|
|
# trick extract_function_variable() in makepkg into not detecting the
|
|
# backup array modification and adding remaining configuration files
|
|
[[ /usr/bin/true ]] && backup=( ${backup[@]} $(find "etc/${pkgname}.d/" -type f | sort) )
|
|
}
|