summaryrefslogtreecommitdiff
path: root/testing/crda
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-08-25 00:02:57 +0000
committerroot <root@rshg054.dnsready.net>2012-08-25 00:02:57 +0000
commit29896582b8f0f163c9b880fa64ee948d470ef5ba (patch)
tree54d918c561c83d78e4d07f94774f7f10640cafa9 /testing/crda
parent12b846e1ead204137d60caba25f7e494b51b4dc8 (diff)
Sat Aug 25 00:02:57 UTC 2012
Diffstat (limited to 'testing/crda')
-rw-r--r--testing/crda/PKGBUILD40
-rw-r--r--testing/crda/crda.install5
-rw-r--r--testing/crda/libnl32.patch12
-rwxr-xr-xtesting/crda/set-wireless-regdom5
4 files changed, 62 insertions, 0 deletions
diff --git a/testing/crda/PKGBUILD b/testing/crda/PKGBUILD
new file mode 100644
index 000000000..5969eefa4
--- /dev/null
+++ b/testing/crda/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id: PKGBUILD 165554 2012-08-23 18:09:19Z thomas $
+# Maintainer: Thomas Bächler <thomas@archlinux.org>
+
+pkgname=crda
+pkgver=1.1.2
+pkgrel=4
+pkgdesc="Central Regulatory Domain Agent for wireless networks"
+arch=(i686 x86_64)
+url="http://wireless.kernel.org/en/developers/Regulatory/CRDA"
+license=('custom')
+depends=('wireless-regdb' 'libnl' 'libgcrypt' 'systemd-tools' 'iw')
+makedepends=('python-m2crypto')
+install=crda.install
+source=(http://wireless.kernel.org/download/crda/${pkgname}-${pkgver}.tar.bz2
+ set-wireless-regdom
+ libnl32.patch)
+md5sums=('5226f65aebacf94baaf820f8b4e06df4'
+ '65c93f2ff2eb1b29d9e9fa102ae2dd45'
+ 'c1f7aff29f15a0364ae6f7905a1d4ae6')
+
+build() {
+ cd "${srcdir}"/${pkgname}-${pkgver}
+ patch -Np1 -i "$srcdir/libnl32.patch"
+ sed 's|^#!/usr/bin/env python|#!/usr/bin/python2|' -i utils/key2pub.py
+ make crda regdbdump
+}
+
+package() {
+ # Install crda, regdbdump and udev rules
+ cd "${srcdir}"/${pkgname}-${pkgver}
+ make DESTDIR="${pkgdir}" UDEV_RULE_DIR=/usr/lib/udev/rules.d/ SBINDIR=/usr/bin/ install
+ # Adjust paths in udev rule file
+ sed 's|/sbin/crda|/usr/bin/crda|' -i "${pkgdir}"/usr/lib/udev/rules.d/85-regulatory.rules
+ # This rule automatically sets the regulatory domain when cfg80211 is loaded
+ echo 'ACTION=="add" SUBSYSTEM=="module", DEVPATH=="/module/cfg80211", RUN+="/usr/bin/set-wireless-regdom"' >> "${pkgdir}"/usr/lib/udev/rules.d/85-regulatory.rules
+
+ install -D -m644 "${srcdir}"/${pkgname}-${pkgver}/LICENSE "${pkgdir}"/usr/share/licenses/crda/LICENSE
+
+ install -D -m755 "${srcdir}"/set-wireless-regdom "${pkgdir}"/usr/bin/set-wireless-regdom
+}
diff --git a/testing/crda/crda.install b/testing/crda/crda.install
new file mode 100644
index 000000000..9618a74ca
--- /dev/null
+++ b/testing/crda/crda.install
@@ -0,0 +1,5 @@
+## arg 1: the new package version
+post_install() {
+ echo "Uncomment the right regulatory domain in /etc/conf.d/wireless-regdom."
+ echo "It will automatically be set on boot."
+}
diff --git a/testing/crda/libnl32.patch b/testing/crda/libnl32.patch
new file mode 100644
index 000000000..682b6c5de
--- /dev/null
+++ b/testing/crda/libnl32.patch
@@ -0,0 +1,12 @@
+diff -u -r crda-1.1.2/Makefile crda-1.1.2-libnl32/Makefile
+--- crda-1.1.2/Makefile 2011-08-10 01:36:19.000000000 +0200
++++ crda-1.1.2-libnl32/Makefile 2012-02-09 18:53:33.376430180 +0100
+@@ -51,7 +51,7 @@
+
+ ifeq ($(NL3FOUND),Y)
+ CFLAGS += -DCONFIG_LIBNL30
+-NLLIBS += -lnl-genl
++NLLIBS += $(shell pkg-config --libs libnl-genl-3.0)
+ NLLIBNAME = libnl-3.0
+ else
+ ifeq ($(NL2FOUND),Y)
diff --git a/testing/crda/set-wireless-regdom b/testing/crda/set-wireless-regdom
new file mode 100755
index 000000000..3905ae98a
--- /dev/null
+++ b/testing/crda/set-wireless-regdom
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+unset WIRELESS_REGDOM
+. /etc/conf.d/wireless-regdom
+[ -n "${WIRELESS_REGDOM}" ] && iw reg set ${WIRELESS_REGDOM}