diff options
Diffstat (limited to 'libre/lirc/PKGBUILD')
-rw-r--r-- | libre/lirc/PKGBUILD | 163 |
1 files changed, 163 insertions, 0 deletions
diff --git a/libre/lirc/PKGBUILD b/libre/lirc/PKGBUILD new file mode 100644 index 000000000..ff9c204df --- /dev/null +++ b/libre/lirc/PKGBUILD @@ -0,0 +1,163 @@ +# $Id: PKGBUILD 220120 2014-08-16 22:32:11Z lfleischer $ +# Maintainer (Arch): Paul Mattal <paul@archlinux.org> +# Maintainer: André Silva <emulatorman@parabola.nu> +# Contributor: Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: Márcio Silva <coadde@parabola.nu> + +_kernelname= +_basekernel=3.16 +_archrel=3 +_parabolarel=1 + +if [[ ${_kernelname} == "" ]]; then + _basekernel=${_basekernel} + _archrel=${_archrel} + _parabolarel=${_parabolarel} +elif [[ ${_kernelname} == -lts ]]; then + _basekernel=3.14 + _archrel=${_archrel} + _parabolarel=${_parabolarel} +elif [[ ${_kernelname} == -grsec ]]; then + _basekernel=3.15 + _archrel=${_archrel} + _parabolarel=${_parabolarel} +elif [[ ${_kernelname} == -lts-grsec ]]; then + _basekernel=3.14 + _archrel=${_archrel} + _parabolarel=${_parabolarel} +elif [[ ${_kernelname} == -lts-knock ]]; then + _basekernel=3.10 + _archrel=${_archrel} + _parabolarel=${_parabolarel} +elif [[ ${_kernelname} == -rt ]]; then + _basekernel=3.14 + _archrel=${_archrel} + _parabolarel=${_parabolarel} +elif [[ ${_kernelname} == -pae ]]; then + _basekernel=${_basekernel} + _archrel=${_archrel} + _parabolarel=${_parabolarel} +elif [[ ${_kernelname} == -xen ]]; then + _basekernel=${_basekernel} + _archrel=${_archrel} + _parabolarel=${_parabolarel} +fi + +pkgbase=lirc +_pkgname=${pkgbase}${_kernelname} +if [[ -z ${_kernelname} ]]; then + pkgname=("$_pkgname" "${pkgbase}-utils") +else + pkgname=("$_pkgname") +fi +_pkgver=0.9.1a +[[ $_pkgver =~ [a-z]$ ]] && pkgver="${_pkgver:0:-1}.${_pkgver: -1}" || pkgver="$_pkgver" +pkgrel=${_archrel}.parabola${_parabolarel}.basekernel${_basekernel} +epoch=1 +_extramodules=extramodules-${_basekernel}${_kernelname} +arch=('i686' 'x86_64' 'mips64el') +url="http://www.$pkgbase.org/" +license=('GPL') +# NOTICE: Don't forget to bump version in depends in package_lirc()! +makedepends=('help2man' 'alsa-lib' 'libx11' 'libftdi-compat' 'libirman' 'python2') + +# Generic (you shouldn't have to modify any of these variables) +_toohigh=$(IFS=. read a b <<<$_basekernel; echo $a.$((b+1))) +makedepends+=("linux-libre${_kernelname}>=${_basekernel}" "linux-libre${_kernelname}<${_toohigh}" + "linux-libre${_kernelname}-headers>=${_basekernel}" "linux-libre${_kernelname}-headers<${_toohigh}") + +options=('!makeflags' '!strip') +source=("http://prdownloads.sourceforge.net/${pkgbase}/${pkgbase}-${_pkgver}.tar.bz2" + wpc8769l-build-fix.patch + ${pkgbase}-0.9.1a-fix-segfaults.patch + ${pkgbase}.logrotate + irexec.service + ${pkgbase}.tmpfiles) +md5sums=('1f1fac162ed309dd50f307e96a292957' + '9ec33169b3407f74264062d7679dd269' + 'cd00acf480e82a0bf050032732d0d733' + '3deb02604b37811d41816e9b4385fcc3' + '32df3b9bc859565d6acf5f0e5b747083' + 'febf25c154a7d36f01159e84f26c2d9a') + +prepare() { + cd "${srcdir}/lirc-${_pkgver}" + + patch -Np1 -i "${srcdir}/wpc8769l-build-fix.patch" + patch -Np1 -i "${srcdir}/${pkgbase}-0.9.1a-fix-segfaults.patch" + + sed -i '/AC_PATH_XTRA/d' configure.ac + sed -e 's/@X_CFLAGS@//g' \ + -e 's/@X_LIBS@//g' \ + -e 's/@X_PRE_LIBS@//g' \ + -e 's/@X_EXTRA_LIBS@//g' -i Makefile.am tools/Makefile.am + + libtoolize + autoreconf +} + +build() { + cd "${srcdir}/${pkgbase}-${_pkgver}" + _kernver="$(cat /usr/lib/modules/${_extramodules}/version)" + + PYTHON=python2 ./configure --enable-sandboxed --prefix=/usr \ + --with-driver=all --with-kerneldir="/usr/lib/modules/${_kernver}/build/" \ + --with-moduledir="/usr/lib/modules/${_kernver}/kernel/drivers/misc" \ + --sbindir=/usr/bin --with-transmitter + + # Remove drivers already in kernel + sed -e "s:lirc_dev::" -e "s:lirc_bt829::" -e "s:lirc_igorplugusb::" \ + -e "s:lirc_imon::" -e "s:lirc_parallel::" -e "s:lirc_sasem::" \ + -e "s:lirc_serial::" -e "s:lirc_sir::" -e "s:lirc_ttusbir::" \ + -e "s:lirc_atiusb::" -e "s:lirc_i2c::" \ + -i Makefile drivers/Makefile drivers/*/Makefile tools/Makefile + make +} + +package_lirc() { + pkgdesc="Linux Infrared Remote Control kernel modules (built for the linux-libre${_kernelname} kernel package)" + depends=("${pkgbase}-utils" "linux-libre${_kernelname}>=${_basekernel}" "linux-libre${_kernelname}<${_toohigh}") + replaces=("${_pkgname}-libre${_kernelname}" "${_pkgname}-parabola${_kernelname}") + [[ -n ${_kernelname} ]] && replaces+=("${_pkgname}${_kernelname}-parabola") + conflicts=("${_pkgname}-libre${_kernelname}" "${_pkgname}-parabola${_kernelname}") + [[ -n ${_kernelname} ]] && conflicts+=("${_pkgname}${_kernelname}-parabola") + replaces+=("${pkgbase}+pctv") + install=kmod.install + + cd "${srcdir}/${pkgbase}-${_pkgver}/drivers" + + make DESTDIR="${pkgdir}" moduledir="/usr/lib/modules/${_extramodules}" install + gzip -9 "${pkgdir}/usr/lib/modules/${_extramodules}"/*.ko + + # Set the correct extramodules directory for install + cp -f "${startdir}/${install}" "${startdir}/${install}.pkg" + true && install=${install}.pkg + sed -i "s/^_EXTRAMODULES=$/_EXTRAMODULES="${_extramodules}"/" "${startdir}/${install}" +} + +package_lirc-utils() { + pkgdesc="Linux Infrared Remote Control utilities" + depends=('alsa-lib' 'libx11' 'libftdi-compat' 'libirman') + optdepends=('python2: pronto2lirc utility') + options=('strip') + backup=("etc/${pkgbase}/${pkgbase}_options.conf" "etc/${pkgbase}/${pkgbase}d.conf" "etc/${pkgbase}/${pkgbase}md.conf") + replaces=("${pkgbase}-libre-utils" "${pkgbase}-utils-parabola") + conflicts=("${pkgbase}-libre-utils" "${pkgbase}-utils-parabola") + install=${pkgbase}-utils.install + + cd "${srcdir}/${pkgbase}-${_pkgver}" + + make DESTDIR="${pkgdir}" install + + install -Dm644 "${srcdir}"/irexec.service "${pkgdir}"/usr/lib/systemd/system/irexec.service + install -Dm644 "${srcdir}"/${pkgbase}.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/${pkgbase}.conf + + cp -rp remotes "${pkgdir}/usr/share/${pkgbase}" + chmod -R go-w "${pkgdir}/usr/share/${pkgbase}/" + + # install the logrotate config + install -Dm644 "${srcdir}/${pkgbase}.logrotate" "${pkgdir}/etc/logrotate.d/${pkgbase}" + + # remove built modules + rm -r "${pkgdir}/usr/lib/modules" +} |