153 lines
4.3 KiB
Bash
153 lines
4.3 KiB
Bash
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
|
# Maintainer: David Runge <dvzrv@archlinux.org>
|
|
# Contributor: Alexander Epaneshnikov <aarnaarn2@gmail.com>
|
|
# Contributor: Tom Gundersen <teg@jklm.no>
|
|
# Contributor: Jan de Groot <jgc@archlinux.org>
|
|
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
|
|
|
|
pkgbase=brltty
|
|
pkgname=(brltty brltty-udev-generic)
|
|
pkgver=6.7
|
|
pkgrel=5
|
|
pkgdesc="Braille display driver for Linux/Unix"
|
|
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
|
|
url="https://brltty.app"
|
|
license=(LGPL-2.1-or-later)
|
|
makedepends=(
|
|
alsa-lib
|
|
at-spi2-atk
|
|
at-spi2-core
|
|
atk
|
|
bluez-libs
|
|
cython
|
|
dbus
|
|
dracut
|
|
espeak-ng
|
|
expat
|
|
festival
|
|
gcc-libs
|
|
glibc
|
|
glib2
|
|
gpm
|
|
icu
|
|
'java-environment>=11'
|
|
'java-environment<=17'
|
|
libcap
|
|
liblouis
|
|
libspeechd
|
|
libxaw
|
|
ncurses
|
|
ocaml-ctypes
|
|
ocaml-findlib
|
|
pcre2
|
|
polkit
|
|
python-setuptools
|
|
speech-dispatcher
|
|
strip-nondeterminism
|
|
systemd-libs
|
|
tcl
|
|
)
|
|
options=(!emptydirs)
|
|
source=(
|
|
https://github.com/brltty/brltty/archive/refs/tags/${pkgbase^^}-$pkgver.tar.gz
|
|
$pkgname-6.2-systemd_sysusers_groups.patch
|
|
$pkgname-6.4-x11_autostart.patch
|
|
)
|
|
sha512sums=('693188317f01d1a1a63aed9fa17925b0cd21e76b4e69838893eee926aceab095034ccb0c25614ce5bbc7c54b5bd5a1af86f3a89f17cb9e1b9eb6cdd706ec8fc0'
|
|
'32ba91271e2247b4a330cd213ed75b591268cb99a79c2efd9ae675804faee027c6b2f782768cb2329a65fc914ca2400b2901f35ce1fc2522c6691b343799eb02'
|
|
'4871512affefbc178f4204a1b285fc2b5a05ea2d181163195d695b760e9729b3d2d00b5f052abd71379df609c3859d7cbd64128bdefd16e898bbc4368500a9a0')
|
|
b2sums=('b19b104ffd6f6482e253b11f47e26352716592ab6a90effb87d51083e55f45478e79ed5819863d000d38d4eb5f248b077fbd1366887b3db3a8290544a8414bfb'
|
|
'036e36d558594bb06af1eb41ff5fc9ae52ccf4bad54556c3f4f81a5e2f31f574039835e5e756455527c327a73d563a3db54a9f32e3478545a2a22c2725aaeee2'
|
|
'4ebc07a725ef8362233a83118e93901e78943e8dae08f9358b668ff13ab88a65eb9e87c49d106a8c3d87eb62007b230e199107eacb01f92dc683335076c01309')
|
|
|
|
prepare() {
|
|
cd $pkgbase-${pkgbase^^}-$pkgver
|
|
patch -Np1 -i ../$pkgbase-6.2-systemd_sysusers_groups.patch
|
|
patch -Np1 -i ../$pkgbase-6.4-x11_autostart.patch
|
|
./autogen
|
|
}
|
|
|
|
build() {
|
|
local configure_options=(
|
|
--prefix=/usr
|
|
--sysconfdir=/etc
|
|
--libexecdir=/usr/lib
|
|
--localstatedir=/var
|
|
--mandir=/usr/share/man
|
|
--with-scripts-directory=/usr/lib/brltty
|
|
--with-tables-directory=/usr/share/brltty
|
|
--with-writable-directory=/run/brltty
|
|
--enable-gpm
|
|
--disable-stripping
|
|
)
|
|
|
|
# fat-lto-objects is required for non-mangled static libs
|
|
CFLAGS+=" -ffat-lto-objects"
|
|
|
|
cd $pkgbase-${pkgbase^^}-$pkgver
|
|
./configure "${configure_options[@]}"
|
|
make -j1
|
|
# make brlapi.jar deterministic
|
|
find . -type f -iname "*.jar" -exec strip-nondeterminism {} \;
|
|
}
|
|
|
|
package_brltty() {
|
|
depends=(
|
|
alsa-lib libasound.so
|
|
bluez-libs
|
|
dbus libdbus-1.so
|
|
expat libexpat.so
|
|
glib2 libgio-2.0.so libglib-2.0.so libgobject-2.0.so
|
|
glibc
|
|
gpm libgpm.so
|
|
icu libicuuc.so
|
|
libcap
|
|
liblouis
|
|
libspeechd
|
|
ncurses libncursesw.so
|
|
pcre2
|
|
polkit
|
|
systemd-libs libsystemd.so
|
|
)
|
|
optdepends=(
|
|
'at-spi2-core: X11/GNOME Apps accessibility'
|
|
'brltty-udev-generic: for initializing brltty with generic USB devices'
|
|
'espeak-ng: espeak-ng driver'
|
|
'java-runtime: Java support'
|
|
'libxaw: X11 support'
|
|
'libxt: X11 support'
|
|
'libx11: for xbrlapi'
|
|
'libxfixes: for xbrlapi'
|
|
'libxtst: for xbrlapi'
|
|
'ocaml: OCaml support'
|
|
'python: Python support'
|
|
'speech-dispatcher: speech-dispatcher driver'
|
|
'tcl: tcl support'
|
|
)
|
|
provides=(libbrlapi.so)
|
|
backup=(
|
|
etc/brltty.conf
|
|
etc/X11/xinit/xinitrc.d/90xbrlapi
|
|
)
|
|
install=brltty.install
|
|
|
|
cd $pkgbase-${pkgbase^^}-$pkgver
|
|
# installation does not work reliably with many cores, so set jobs to 1
|
|
make -j1 INSTALL_ROOT="$pkgdir" install
|
|
make -j1 INSTALL_ROOT="$pkgdir" install-systemd
|
|
make -j1 INSTALL_ROOT="$pkgdir" install-udev
|
|
make -j1 INSTALL_ROOT="$pkgdir" install-dracut
|
|
make -j1 INSTALL_ROOT="$pkgdir" install-polkit
|
|
install -vDm 644 Documents/$pkgbase.conf -t "$pkgdir/etc/"
|
|
|
|
# move generic udev rule, as it applies too broadly
|
|
mv -v "$pkgdir/usr/lib/udev/rules.d/90-brltty-usb-generic.rules" ../
|
|
}
|
|
|
|
package_brltty-udev-generic() {
|
|
pkgdesc="Generic udev rules for brltty"
|
|
depends=(brltty)
|
|
|
|
install -vDm 644 90-brltty-usb-generic.rules -t "$pkgdir/usr/lib/udev/rules.d/"
|
|
}
|