summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-wireless/crda
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-wireless/crda')
-rw-r--r--net-wireless/crda/Manifest3
-rw-r--r--net-wireless/crda/crda-1.1.2-r3.ebuild48
-rw-r--r--net-wireless/crda/crda-1.1.2-r4.ebuild58
-rw-r--r--net-wireless/crda/crda-1.1.3-r1.ebuild67
-rw-r--r--net-wireless/crda/crda-1.1.3.ebuild56
-rw-r--r--net-wireless/crda/crda-3.18.ebuild75
-rw-r--r--net-wireless/crda/files/crda-1.1.3-missing-include.patch11
-rw-r--r--net-wireless/crda/files/crda-3.18-cflags.patch33
-rw-r--r--net-wireless/crda/files/crda-3.18-libreg-link.patch30
-rw-r--r--net-wireless/crda/files/crda-3.18-no-ldconfig.patch28
-rw-r--r--net-wireless/crda/files/crda-3.18-no-werror.patch32
-rw-r--r--net-wireless/crda/files/crda-3.18-openssl.patch44
-rw-r--r--net-wireless/crda/files/libnl31-support.diff60
-rw-r--r--net-wireless/crda/metadata.xml16
14 files changed, 561 insertions, 0 deletions
diff --git a/net-wireless/crda/Manifest b/net-wireless/crda/Manifest
new file mode 100644
index 000000000000..30890a731c56
--- /dev/null
+++ b/net-wireless/crda/Manifest
@@ -0,0 +1,3 @@
+DIST crda-1.1.2.tar.bz2 21754 SHA256 e469348a5d0bb933df31995869130f68901de9be02e666437f52125698851864 SHA512 cd0997fdafc63640cbac5cff57b617177c3693a6d05e2138f23ed8273502d5f485f8f60309ed4fec97fe2cd2d51ee4b7e2d9535efc1de44c08b9cc9d6fb7ecf3 WHIRLPOOL 35ef76fcb7f3760613135caba5b9c6b0c781bc560f948a60f6b09eaeb75f3538461d90ce353decc17795995795b63c124a282903d41a8e25680fda0b6498bea4
+DIST crda-1.1.3.tar.bz2 38697 SHA256 aa8a7fe92f0765986c421a5b6768a185375ac210393df0605ee132f6754825f0 SHA512 4ec37d3d51f5988af79c2eaadc1bce344f20d4d9833533838d308533ee02cb12d5ed193391679ae1231c8afe61b21defdb368614a6238f99fdc5824f6819cfed WHIRLPOOL bbcb31277b664243f9e494c494152cf0ebcb187360ba48aa07c8e96c83dd91098bc49f1edf0b196a9bf4071565ac389b2907fcc73e348780aa890e066895c282
+DIST crda-3.18.tar.xz 61516 SHA256 43fcb9679f8b75ed87ad10944a506292def13e4afb194afa7aa921b01e8ecdbf SHA512 57ae6309159f396448f052c127f401c2f63d47f4193e87dca231c4b7bbbd7e69b5e5666f356fc76dfc8a6ae58ffa55c3794428d6eb34d9937df77c4276036588 WHIRLPOOL f2ee46b8e25509b6f78e508e62de3f1d0d85303b173b38d653f69f4f6e8f77ada2bc3330cd62646a1ce3819b0db834d9aecc9751cf3e7d35e2a67d3ffdfb1503
diff --git a/net-wireless/crda/crda-1.1.2-r3.ebuild b/net-wireless/crda/crda-1.1.2-r3.ebuild
new file mode 100644
index 000000000000..8b2e19921dab
--- /dev/null
+++ b/net-wireless/crda/crda-1.1.2-r3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils toolchain-funcs python
+
+DESCRIPTION="Central Regulatory Domain Agent for wireless networks"
+HOMEPAGE="http://wireless.kernel.org/en/developers/Regulatory"
+SRC_URI="http://linuxwireless.org/download/crda/${P}.tar.bz2"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 arm ~mips ppc ppc64 x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ dev-libs/libnl
+ net-wireless/wireless-regdb"
+DEPEND="${RDEPEND}
+ dev-python/m2crypto
+ =dev-lang/python-2*
+ virtual/pkgconfig"
+RDEPEND="${RDEPEND}
+ >=virtual/udev-171"
+
+src_prepare() {
+ epatch "${FILESDIR}"/libnl31-support.diff
+
+ python_convert_shebangs 2 utils/key2pub.py
+
+ sed -i \
+ -e "s:\<pkg-config\>:$(tc-getPKG_CONFIG):" \
+ Makefile || die
+}
+
+src_compile() {
+ emake UDEV_RULE_DIR=/lib/udev/rules.d/ REG_BIN=/usr/$(get_libdir)/crda/regulatory.bin USE_OPENSSL=1 CC="$(tc-getCC)" all_noverify
+}
+
+src_test() {
+ emake USE_OPENSSL=1 CC="$(tc-getCC)" verify
+}
+
+src_install() {
+ emake UDEV_RULE_DIR=/lib/udev/rules.d/ REG_BIN=/usr/$(get_libdir)/crda/regulatory.bin USE_OPENSSL=1 DESTDIR="${D}" install
+ keepdir /etc/wireless-regdb/pubkeys
+}
diff --git a/net-wireless/crda/crda-1.1.2-r4.ebuild b/net-wireless/crda/crda-1.1.2-r4.ebuild
new file mode 100644
index 000000000000..c7ec1b7a2fed
--- /dev/null
+++ b/net-wireless/crda/crda-1.1.2-r4.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils toolchain-funcs python
+
+DESCRIPTION="Central Regulatory Domain Agent for wireless networks"
+HOMEPAGE="http://wireless.kernel.org/en/developers/Regulatory"
+SRC_URI="http://linuxwireless.org/download/crda/${P}.tar.bz2"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl:0
+ dev-libs/libnl:3
+ net-wireless/wireless-regdb
+ >=virtual/udev-171"
+DEPEND="${RDEPEND}
+ dev-python/m2crypto
+ =dev-lang/python-2*
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/libnl31-support.diff
+
+ python_convert_shebangs 2 utils/key2pub.py
+
+ sed -i \
+ -e "s:\<pkg-config\>:$(tc-getPKG_CONFIG):" \
+ Makefile || die
+}
+
+src_compile() {
+ emake \
+ UDEV_RULE_DIR="$($(tc-getPKG_CONFIG) --variable=udevdir udev)/rules.d" \
+ REG_BIN=/usr/$(get_libdir)/crda/regulatory.bin \
+ USE_OPENSSL=1 \
+ CC="$(tc-getCC)" \
+ all_noverify V=1
+}
+
+src_test() {
+ emake USE_OPENSSL=1 CC="$(tc-getCC)" verify
+}
+
+src_install() {
+ emake \
+ UDEV_RULE_DIR="$($(tc-getPKG_CONFIG) --variable=udevdir udev)/rules.d" \
+ REG_BIN=/usr/$(get_libdir)/crda/regulatory.bin \
+ USE_OPENSSL=1 \
+ DESTDIR="${D}" \
+ install
+
+ keepdir /etc/wireless-regdb/pubkeys
+}
diff --git a/net-wireless/crda/crda-1.1.3-r1.ebuild b/net-wireless/crda/crda-1.1.3-r1.ebuild
new file mode 100644
index 000000000000..4f63d6b34f0d
--- /dev/null
+++ b/net-wireless/crda/crda-1.1.3-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit eutils toolchain-funcs python-any-r1 udev
+
+DESCRIPTION="Central Regulatory Domain Agent for wireless networks"
+HOMEPAGE="http://wireless.kernel.org/en/developers/Regulatory"
+SRC_URI="http://linuxwireless.org/download/crda/${P}.tar.bz2"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 ia64 ~mips ppc ppc64 sparc x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl:0
+ dev-libs/libnl:3
+ net-wireless/wireless-regdb"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep 'dev-python/m2crypto[${PYTHON_USEDEP}]')
+ virtual/pkgconfig"
+
+python_check_deps() {
+ has_version --host-root "dev-python/m2crypto[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-missing-include.patch
+ sed -i \
+ -e "s:\<pkg-config\>:$(tc-getPKG_CONFIG):" \
+ Makefile || die
+}
+
+_emake() {
+ # The source hardcodes /usr/lib/crda/ paths (ignoring all make vars
+ # that look like it should change it). We want to use /usr/lib/
+ # anyways as this file is not ABI specific and we want to share it
+ # among all ABIs rather than pointlessly duplicate it.
+ #
+ # The trailing slash on SBINDIR is required by the source.
+ emake \
+ PREFIX="${EPREFIX}/usr" \
+ SBINDIR='$(PREFIX)/sbin/' \
+ UDEV_RULE_DIR="$(get_udevdir)/rules.d" \
+ REG_BIN=/usr/lib/crda/regulatory.bin \
+ USE_OPENSSL=1 \
+ CC="$(tc-getCC)" \
+ V=1 \
+ "$@"
+}
+
+src_compile() {
+ _emake all_noverify
+}
+
+src_test() {
+ _emake verify
+}
+
+src_install() {
+ _emake DESTDIR="${D}" install
+ keepdir /etc/wireless-regdb/pubkeys
+}
diff --git a/net-wireless/crda/crda-1.1.3.ebuild b/net-wireless/crda/crda-1.1.3.ebuild
new file mode 100644
index 000000000000..de5647a41a06
--- /dev/null
+++ b/net-wireless/crda/crda-1.1.3.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils toolchain-funcs python udev
+
+DESCRIPTION="Central Regulatory Domain Agent for wireless networks"
+HOMEPAGE="http://wireless.kernel.org/en/developers/Regulatory"
+SRC_URI="http://linuxwireless.org/download/crda/${P}.tar.bz2"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl:0
+ dev-libs/libnl:3
+ net-wireless/wireless-regdb"
+DEPEND="${RDEPEND}
+ dev-python/m2crypto
+ =dev-lang/python-2*
+ virtual/pkgconfig"
+
+src_prepare() {
+ python_convert_shebangs 2 utils/key2pub.py
+
+ epatch "${FILESDIR}"/${P}-missing-include.patch
+ sed -i \
+ -e "s:\<pkg-config\>:$(tc-getPKG_CONFIG):" \
+ Makefile || die
+}
+
+src_compile() {
+ emake \
+ UDEV_RULE_DIR="$(get_udevdir)/rules.d" \
+ REG_BIN=/usr/$(get_libdir)/crda/regulatory.bin \
+ USE_OPENSSL=1 \
+ CC="$(tc-getCC)" \
+ all_noverify V=1
+}
+
+src_test() {
+ emake USE_OPENSSL=1 CC="$(tc-getCC)" verify
+}
+
+src_install() {
+ emake \
+ UDEV_RULE_DIR="$(get_udevdir)/rules.d" \
+ REG_BIN=/usr/$(get_libdir)/crda/regulatory.bin \
+ USE_OPENSSL=1 \
+ DESTDIR="${D}" \
+ install
+
+ keepdir /etc/wireless-regdb/pubkeys
+}
diff --git a/net-wireless/crda/crda-3.18.ebuild b/net-wireless/crda/crda-3.18.ebuild
new file mode 100644
index 000000000000..f976625a92dc
--- /dev/null
+++ b/net-wireless/crda/crda-3.18.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit eutils toolchain-funcs python-any-r1 udev
+
+DESCRIPTION="Central Regulatory Domain Agent for wireless networks"
+HOMEPAGE="https://wireless.wiki.kernel.org/en/developers/regulatory/crda"
+SRC_URI="http://linuxwireless.org/download/crda/${P}.tar.xz
+ mirror://kernel/software/network/crda/${P}.tar.xz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="gcrypt"
+
+RDEPEND="!gcrypt? ( dev-libs/openssl:0 )
+ gcrypt? ( dev-libs/libgcrypt:0 )
+ dev-libs/libnl:3
+ net-wireless/wireless-regdb"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep 'dev-python/m2crypto[${PYTHON_USEDEP}]')
+ virtual/pkgconfig"
+
+python_check_deps() {
+ has_version --host-root "dev-python/m2crypto[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-3.18-no-ldconfig.patch
+ epatch "${FILESDIR}"/${PN}-3.18-no-werror.patch
+ epatch "${FILESDIR}"/${PN}-3.18-openssl.patch
+ epatch "${FILESDIR}"/${PN}-3.18-cflags.patch
+ epatch "${FILESDIR}"/${PN}-3.18-libreg-link.patch #542436
+ sed -i \
+ -e "s:\<pkg-config\>:$(tc-getPKG_CONFIG):" \
+ Makefile || die
+}
+
+_emake() {
+ # The source hardcodes /usr/lib/crda/ paths (ignoring all make vars
+ # that look like it should change it). We want to use /usr/lib/
+ # anyways as this file is not ABI specific and we want to share it
+ # among all ABIs rather than pointlessly duplicate it.
+ #
+ # The trailing slash on SBINDIR is required by the source.
+ emake \
+ PREFIX="${EPREFIX}/usr" \
+ SBINDIR='$(PREFIX)/sbin/' \
+ LIBDIR='$(PREFIX)/'"$(get_libdir)" \
+ UDEV_RULE_DIR="$(get_udevdir)/rules.d" \
+ REG_BIN="${SYSROOT}"/usr/lib/crda/regulatory.bin \
+ USE_OPENSSL=$(usex gcrypt 0 1) \
+ CC="$(tc-getCC)" \
+ V=1 \
+ WERROR= \
+ "$@"
+}
+
+src_compile() {
+ _emake all_noverify
+}
+
+src_test() {
+ _emake verify
+}
+
+src_install() {
+ _emake DESTDIR="${D}" install
+ keepdir /etc/wireless-regdb/pubkeys
+}
diff --git a/net-wireless/crda/files/crda-1.1.3-missing-include.patch b/net-wireless/crda/files/crda-1.1.3-missing-include.patch
new file mode 100644
index 000000000000..a472e238f66f
--- /dev/null
+++ b/net-wireless/crda/files/crda-1.1.3-missing-include.patch
@@ -0,0 +1,11 @@
+diff --git a/reglib.c b/reglib.c
+index bc81974..1fafd37 100644
+--- a/reglib.c
++++ b/reglib.c
+@@ -9,6 +9,7 @@
+ #include <fcntl.h>
+ #include <stdbool.h>
+ #include <unistd.h>
++#include <string.h>
+
+ #include <arpa/inet.h> /* ntohl */
diff --git a/net-wireless/crda/files/crda-3.18-cflags.patch b/net-wireless/crda/files/crda-3.18-cflags.patch
new file mode 100644
index 000000000000..6edbded822cc
--- /dev/null
+++ b/net-wireless/crda/files/crda-3.18-cflags.patch
@@ -0,0 +1,33 @@
+From c5b0741ea7fc12e9f6a2a309296ed412a999d0f7 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@chromium.org>
+Date: Wed, 4 Mar 2015 14:09:50 -0500
+Subject: [PATCH] clean up CFLAGS handling
+
+Rather than append -O2 -g all the time to the user's CFLAGS (and thus
+clobbering whatever they have set up), initialize the default value to
+that and let the user override it entirely.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 5f988f4..8e345a1 100644
+--- a/Makefile
++++ b/Makefile
+@@ -26,9 +26,9 @@ PUBKEY_DIR?=pubkeys
+ RUNTIME_PUBKEY_DIR?=/etc/wireless-regdb/pubkeys
+
+ WERROR = -Werror
+-CFLAGS += -O2 -fpic
++CFLAGS ?= -O2 -g
++CFLAGS += -fpic
+ CFLAGS += -std=gnu99 -Wall $(WERROR) -pedantic
+-CFLAGS += -Wall -g
+ LDLIBREG += -lreg
+ LDLIBS += $(LDLIBREG)
+ LDLIBS += -lm
+--
+2.3.1
+
diff --git a/net-wireless/crda/files/crda-3.18-libreg-link.patch b/net-wireless/crda/files/crda-3.18-libreg-link.patch
new file mode 100644
index 000000000000..0aa1b6e87a39
--- /dev/null
+++ b/net-wireless/crda/files/crda-3.18-libreg-link.patch
@@ -0,0 +1,30 @@
+https://bugs.gentoo.org/542436
+
+From f56ab87b25f2228a67ac592a1c18793c72dd03eb Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Sat, 7 Mar 2015 22:29:33 -0500
+Subject: [PATCH crda] libreg: link against crypto libs
+
+Since libreg uses funcs from the crypto lib, make sure we link them.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 8e345a1..77708e6 100644
+--- a/Makefile
++++ b/Makefile
+@@ -117,7 +117,7 @@ keys-%.c: utils/key2pub.py $(wildcard $(PUBKEY_DIR)/*.pem)
+
+ $(LIBREG): regdb.h reglib.h reglib.c
+ $(NQ) ' CC ' $@
+- $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^
++ $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^ $(filter-out -lreg,$(LDLIBS))
+
+ install-libreg-headers:
+ $(NQ) ' INSTALL libreg-headers'
+--
+2.3.1
+
diff --git a/net-wireless/crda/files/crda-3.18-no-ldconfig.patch b/net-wireless/crda/files/crda-3.18-no-ldconfig.patch
new file mode 100644
index 000000000000..a5cc42084d53
--- /dev/null
+++ b/net-wireless/crda/files/crda-3.18-no-ldconfig.patch
@@ -0,0 +1,28 @@
+From b11d83df189670defe4a29c624f2930351c13df2 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Wed, 4 Mar 2015 13:56:36 -0500
+Subject: [PATCH] do not run ldconfig
+
+Let the distro/user deal with ldconfig updating. Running it blindly like
+this breaks DESTDIR installs as `ldconfig` only operates on system paths.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index a3ead30..46c683d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -127,7 +127,6 @@ install-libreg:
+ $(NQ) ' INSTALL libreg'
+ $(Q)mkdir -p $(DESTDIR)/$(LIBDIR)
+ $(Q)cp $(LIBREG) $(DESTDIR)/$(LIBDIR)/
+- $(Q)ldconfig
+
+ %.o: %.c regdb.h $(LIBREG)
+ $(NQ) ' CC ' $@
+--
+2.3.1
+
diff --git a/net-wireless/crda/files/crda-3.18-no-werror.patch b/net-wireless/crda/files/crda-3.18-no-werror.patch
new file mode 100644
index 000000000000..6abb78c984e4
--- /dev/null
+++ b/net-wireless/crda/files/crda-3.18-no-werror.patch
@@ -0,0 +1,32 @@
+From 37384d22ba0ab622a5848a9a794084e6064fc905 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@chromium.org>
+Date: Wed, 4 Mar 2015 14:03:44 -0500
+Subject: [PATCH] allow people to turn off -Werror
+
+Forcing -Werror at build time easily breaks across compiler settings,
+compiler versions, architectures, C libraries, etc... Add a knob so
+distro peeps can turn it off.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 46c683d..5f988f4 100644
+--- a/Makefile
++++ b/Makefile
+@@ -25,8 +25,9 @@ UDEV_RULE_DIR?=/lib/udev/rules.d/
+ PUBKEY_DIR?=pubkeys
+ RUNTIME_PUBKEY_DIR?=/etc/wireless-regdb/pubkeys
+
++WERROR = -Werror
+ CFLAGS += -O2 -fpic
+-CFLAGS += -std=gnu99 -Wall -Werror -pedantic
++CFLAGS += -std=gnu99 -Wall $(WERROR) -pedantic
+ CFLAGS += -Wall -g
+ LDLIBREG += -lreg
+ LDLIBS += $(LDLIBREG)
+--
+2.3.1
+
diff --git a/net-wireless/crda/files/crda-3.18-openssl.patch b/net-wireless/crda/files/crda-3.18-openssl.patch
new file mode 100644
index 000000000000..9147e862ee5a
--- /dev/null
+++ b/net-wireless/crda/files/crda-3.18-openssl.patch
@@ -0,0 +1,44 @@
+From af009b7599d705a1023d7bc95c485e5a8776d2b8 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@chromium.org>
+Date: Wed, 4 Mar 2015 14:07:37 -0500
+Subject: [PATCH] fix openssl generation
+
+This file uses BN_ULONG but doesn't include the openssl headers leading
+to build failures:
+keys-ssl.c:2:8: error: unknown type name 'BN_ULONG'
+ static BN_ULONG e_0[1] = {
+
+The large unqualified constants also break building:
+keys-ssl.c:8:2: warning: overflow in implicit constant conversion [-Woverflow]
+ 0x63a2705416a0d8e1, 0xdc9fca11c8ba757b,
+ ^
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ utils/key2pub.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/utils/key2pub.py b/utils/key2pub.py
+index 3e84cd2..c504aca 100755
+--- a/utils/key2pub.py
++++ b/utils/key2pub.py
+@@ -24,7 +24,7 @@ def print_ssl_64(output, name, val):
+ for v1, v2, v3, v4, v5, v6, v7, v8 in vnew:
+ if not idx:
+ output.write('\t')
+- output.write('0x%.2x%.2x%.2x%.2x%.2x%.2x%.2x%.2x, ' % (ord(v1), ord(v2), ord(v3), ord(v4), ord(v5), ord(v6), ord(v7), ord(v8)))
++ output.write('0x%.2x%.2x%.2x%.2x%.2x%.2x%.2x%.2xULL, ' % (ord(v1), ord(v2), ord(v3), ord(v4), ord(v5), ord(v6), ord(v7), ord(v8)))
+ idx += 1
+ if idx == 2:
+ idx = 0
+@@ -60,6 +60,7 @@ def print_ssl_32(output, name, val):
+ def print_ssl(output, name, val):
+ import struct
+ output.write('#include <stdint.h>\n')
++ output.write('#include <openssl/bn.h>\n')
+ if len(struct.pack('@L', 0)) == 8:
+ return print_ssl_64(output, name, val)
+ else:
+--
+2.3.1
+
diff --git a/net-wireless/crda/files/libnl31-support.diff b/net-wireless/crda/files/libnl31-support.diff
new file mode 100644
index 000000000000..56243ee9c697
--- /dev/null
+++ b/net-wireless/crda/files/libnl31-support.diff
@@ -0,0 +1,60 @@
+diff -aurp a/crda-1.1.2/crda.c b/crda-1.1.2/crda.c
+--- a/crda-1.1.2/crda.c 2011-11-07 19:52:28.884873650 +0000
++++ b/crda-1.1.2/crda.c 2011-11-07 19:53:30.501874372 +0000
+@@ -21,7 +21,7 @@
+ #include "regdb.h"
+ #include "reglib.h"
+
+-#if !defined(CONFIG_LIBNL20) && !defined(CONFIG_LIBNL30)
++#if !defined(CONFIG_LIBNL20) && !defined(CONFIG_LIBNL30) && !defined(CONFIG_LIBNL31)
+ /* libnl 2.0 compatibility code */
+ static inline struct nl_handle *nl_socket_alloc(void)
+ {
+@@ -44,7 +44,7 @@ static inline int __genl_ctrl_alloc_cach
+
+ #define genl_ctrl_alloc_cache __genl_ctrl_alloc_cache
+ #define nl_sock nl_handle
+-#endif /* CONFIG_LIBNL20 && CONFIG_LIBNL30 */
++#endif /* CONFIG_LIBNL20 && CONFIG_LIBNL30 && CONFIG_LIBNL31 */
+
+ struct nl80211_state {
+ struct nl_sock *nl_sock;
+diff -aurp a/crda-1.1.2/Makefile b/crda-1.1.2/Makefile
+--- a/crda-1.1.2/Makefile 2011-11-07 19:52:28.884873650 +0000
++++ b/crda-1.1.2/Makefile 2011-11-07 19:54:25.906872386 +0000
+@@ -48,19 +48,26 @@ INSTALL ?= install
+ NL1FOUND := $(shell pkg-config --atleast-version=1 libnl-1 && echo Y)
+ NL2FOUND := $(shell pkg-config --atleast-version=2 libnl-2.0 && echo Y)
+ NL3FOUND := $(shell pkg-config --atleast-version=3 libnl-3.0 && echo Y)
++NL31FOUND := $(shell pkg-config --atleast-version=3 libnl-3.1 && echo Y)
+
+-ifeq ($(NL3FOUND),Y)
++ifeq ($(NL31FOUND),Y)
+ CFLAGS += -DCONFIG_LIBNL30
+-NLLIBS += -lnl-genl
+-NLLIBNAME = libnl-3.0
++NLLIBS += $(shell pkg-config --libs libnl-genl-3.1)
++NLLIBNAME = libnl-3.1
+ else
+- ifeq ($(NL2FOUND),Y)
+- CFLAGS += -DCONFIG_LIBNL20
+- NLLIBS += -lnl-genl
+- NLLIBNAME = libnl-2.0
++ ifeq ($(NL3FOUND),Y)
++ CFLAGS += -DCONFIG_LIBNL30
++ NLLIBS += $(shell pkg-config --libs libnl-genl-3.0)
++ NLLIBNAME = libnl-3.0
+ else
+- ifeq ($(NL1FOUND),Y)
+- NLLIBNAME = libnl-1
++ ifeq ($(NL2FOUND),Y)
++ CFLAGS += -DCONFIG_LIBNL20
++ NLLIBS += -lnl-genl
++ NLLIBNAME = libnl-2.0
++ else
++ ifeq ($(NL1FOUND),Y)
++ NLLIBNAME = libnl-1
++ endif
+ endif
+ endif
+ endif
diff --git a/net-wireless/crda/metadata.xml b/net-wireless/crda/metadata.xml
new file mode 100644
index 000000000000..784df934cb05
--- /dev/null
+++ b/net-wireless/crda/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>gurligebis@gentoo.org</email>
+ <name>Bjarke Istrup Pedersen</name>
+ </maintainer>
+ <maintainer>
+ <email>zerochaos@gentoo.org</email>
+ <name>Rick Farina</name>
+ </maintainer>
+ <use>
+ <flag name='gcrypt'>Use libgcrypt instead of openssl for key checking</flag>
+ </use>
+</pkgmetadata>
+