Skip to content

Instantly share code, notes, and snippets.

@bitjockey42
Last active April 9, 2017 20:44
Show Gist options
  • Save bitjockey42/11489122 to your computer and use it in GitHub Desktop.
Save bitjockey42/11489122 to your computer and use it in GitHub Desktop.
Working PKGBUILD and patch for broadcom-wl on kernel 3.14.2

Thanks

to Krejzi bricewge for posting the patch.

The gcc.patch is from a working source tarball that bricewge posted on broadcom-wl-dkms, but I found the patch works for the broadcom-wl as well.

Why

The broadcom-wl (AUR) module does not build against linux kernel 3.14.2, the latest update in Arch.

How

To apply the patch, download the broadcom-wl.tar.gz, and unpack it somewhere.

 tar -xvzf broadcom-wl.tar.gz

Replace the PKGBUILD in that directory with the one that's part of this gist.

Then, put the gcc.patch into the same directory as the PKGBUILD.

Running makepkg -s to build the broadcom-wl module should now be fine.

--- a/src/wl/sys/wl_linux.c 2014-05-01 17:00:42.882111597 +0200
+++ b/src/wl/sys/wl_linux.c 2014-05-01 16:59:01.866015434 +0200
@@ -2042,8 +2042,11 @@
void
wl_dump_ver(wl_info_t *wl, struct bcmstrbuf *b)
{
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdate-time"
bcm_bprintf(b, "wl%d: %s %s version %s\n", wl->pub->unit,
__DATE__, __TIME__, EPI_VERSION_STR);
+#pragma GCC diagnostic pop
}
#if defined(BCMDBG)
# Maintainer: Armin K. <krejzi at email dot com>
# Contributor: Austin ( doorknob60 [at] gmail [dot] com )
# Contributor: Gaetan Bisson <bisson@archlinux.org>
pkgname=broadcom-wl
pkgver=6.30.223.141
pkgrel=7
pkgdesc='Broadcom 802.11abgn hybrid Linux networking device driver'
url='http://www.broadcom.com/support/802.11/linux_sta.php'
arch=('i686' 'x86_64')
license=('custom')
depends=('linux')
makedepends=('linux-headers')
[[ $CARCH = x86_64 ]] && _arch=_64 || _arch=
source=("http://www.broadcom.com/docs/linux_sta/hybrid-v35${_arch}-nodebug-pcoem-${pkgver//./_}.tar.gz"
'modprobe.d'
'license.patch'
'linux-recent.patch'
'gcc.patch')
sha1sums=('3a2453c71a07030f41a8fc613c87badf8452848c'
'8f5234da6769784b3331d2fefac4a38b20b5723f'
'81c05d48b234d56ad2e18eaee5ce89b79550ef20'
'67c355ae746dba70b8794b4ef21428b54ff84098'
'ae851b3278d3f507d6f9f80582c0ec55fa3979bb')
[[ $CARCH = x86_64 ]] && sha1sums[0]='3a2453c71a07030f41a8fc613c87badf8452848c'
install=install
_kernmajor="$(pacman -Q linux | awk '{print $2}' | cut -d - -f1 | cut -d . -f1,2)"
_extramodules="extramodules-${_kernmajor}-ARCH"
_kernver="$(cat /usr/lib/modules/${_extramodules}/version)"
prepare() {
cd "${srcdir}"
patch -p1 -i linux-recent.patch
patch -p1 -i license.patch
patch -p1 -i gcc.patch
sed -e "/BRCM_WLAN_IFNAME/s:eth:wlan:" \
-i src/wl/sys/wl_linux.c
}
build() {
cd "${srcdir}"
make -C /usr/lib/modules/${_kernver}/build M=`pwd`
}
package() {
cd "${srcdir}"
install -Dm644 wl.ko "${pkgdir}/usr/lib/modules/${_extramodules}/wl.ko"
gzip "${pkgdir}/usr/lib/modules/${_extramodules}/wl.ko"
install -Dm644 lib/LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
install -Dm644 modprobe.d "${pkgdir}/usr/lib/modprobe.d/broadcom-wl.conf"
}
Copy link

ghost commented May 3, 2014

Thanks alot mate :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment