# Maintainer: Natanael Copa pkgname=wpa_supplicant pkgver=1.1 pkgrel=1 pkgdesc="A utility providing key negotiation for WPA wireless networks" url="http://hostap.epitest.fi/wpa_supplicant" arch="all" license="GPL" subpackages="$pkgname-doc $pkgname-gui" depends= makedepends="openssl-dev dbus-dev libnl3-dev qt-dev" source="http://hostap.epitest.fi/releases/$pkgname-$pkgver.tar.gz wpa_supplicant.initd wpa_supplicant.confd libnl3-includes.patch " _builddir="$srcdir"/$pkgname-$pkgver prepare() { cd "$_builddir" for i in $source; do case $i in *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; esac done cd "$_builddir"/wpa_supplicant # Toolchain setup echo "CC = ${CC:-gcc}" > .config # Basic setup echo "CONFIG_CTRL_IFACE=y" >> .config # dbus support echo "CONFIG_CTRL_IFACE_DBUS=y" >> .config echo "CONFIG_CTRL_IFACE_DBUS_NEW=y" >> .config echo "CONFIG_CTRL_IFACE_DBUS_INTRO=y" >> .config echo "CONFIG_BACKEND=file" >> .config # Basic authentication methods # NOTE: we don't set GPSK or SAKE as they conflict # with the below options echo "CONFIG_EAP_GTC=y" >> .config echo "CONFIG_EAP_MD5=y" >> .config echo "CONFIG_EAP_OTP=y" >> .config echo "CONFIG_EAP_PAX=y" >> .config echo "CONFIG_EAP_PSK=y" >> .config echo "CONFIG_EAP_TLV=y" >> .config echo "CONFIG_IEEE8021X_EAPOL=y" >> .config echo "CONFIG_PKCS12=y" >> .config echo "CONFIG_PEERKEY=y" >> .config echo "CONFIG_EAP_LEAP=y" >> .config echo "CONFIG_EAP_MSCHAPV2=y" >> .config echo "CONFIG_EAP_PEAP=y" >> .config echo "CONFIG_EAP_TLS=y" >> .config echo "CONFIG_EAP_TTLS=y" >> .config # debug # echo "CONFIG_DEBUG_FILE=y" >> .config # Smart card authentication #echo "CONFIG_EAP_SIM=y" >> .config #echo "CONFIG_EAP_AKA=y" >> .config #echo "CONFIG_EAP_AKA_PRIME=y" >> .config #echo "CONFIG_PCSC=y" >> .config # readline/history support for wpa_cli #echo "CONFIG_READLINE=y" >> .config # SSL authentication methods echo "CONFIG_TLS=openssl" >> .config echo "CONFIG_SMARTCARD=y" >> .config # use gnutls # echo "CONFIG_TLS=gnutls" >> .config # echo "CONFIG_GNUTLS_EXTRA=y" >> .config #echo "CONFIG_TLS=internal" >> .config # Linux specific drivers echo "CONFIG_DRIVER_ATMEL=y" >> .config #echo "CONFIG_DRIVER_BROADCOM=y" >> .config #echo "CONFIG_DRIVER_HERMES=y" >> .config echo "CONFIG_DRIVER_HOSTAP=y" >> .config echo "CONFIG_DRIVER_IPW=y" >> .config echo "CONFIG_DRIVER_NDISWRAPPER=y" >> .config echo "CONFIG_DRIVER_NL80211=y" >> .config #echo "CONFIG_DRIVER_PRISM54=y" >> .config echo "CONFIG_DRIVER_RALINK=y" >> .config echo "CONFIG_DRIVER_WEXT=y" >> .config echo "CONFIG_DRIVER_WIRED=y" >> .config # Add include path for madwifi-driver headers #echo "CFLAGS += -I/usr/include/madwifi" >> .config #echo "CONFIG_DRIVER_MADWIFI=y" >> .config # Wi-Fi Protected Setup (WPS) echo "CONFIG_WPS=y" >> .config # Enable mitigation against certain attacks against TKIP echo "CONFIG_DELAYED_MIC_ERROR_REPORT=y" >> .config echo "CONFIG_LIBNL32=y" >> .config } build() { cd "$_builddir"/wpa_supplicant make LIBDIR=/lib BINDIR=/sbin || return 1 # comment out the network={ } stansas in config sed -i -e '/^network=/,/}/s/^/#/' wpa_supplicant.conf make wpa_gui-qt4 } package() { cd "$_builddir"/wpa_supplicant make DESTDIR="$pkgdir" LIBDIR=/lib BINDIR=/sbin install || return 1 install -Dm644 wpa_supplicant.conf \ "$pkgdir"/etc/wpa_supplicant/wpa_supplicant.conf install -Dm644 doc/docbook/wpa_supplicant.conf.5 \ "$pkgdir"/usr/share/man/man5/wpa_supplicant.conf.5 || return 1 for i in wpa_background wpa_cli wpa_passphrase wpa_supplicant; do install -Dm644 doc/docbook/$i.8 \ "$pkgdir"/usr/share/man/man8/$i.8 || return 1 done # gui install -d "$pkgdir"/usr/bin install -m 0755 wpa_gui-qt4/wpa_gui "$pkgdir"/usr/bin/wpa_gui \ || return 1 # dbus cd dbus || return 1 install -d "$pkgdir"/etc/dbus-1/system.d install dbus-wpa_supplicant.conf \ "$pkgdir"/etc/dbus-1/system.d/wpa_supplicant.conf || return 1 install -d "$pkgdir"/usr/share/dbus-1/system-services install fi.epitest.hostap.WPASupplicant.service \ "$pkgdir"/usr/share/dbus-1/system-services || return 1 install -d "$pkgdir"/var/run/wpa_supplicant install -Dm755 "$srcdir"/wpa_supplicant.initd \ "$pkgdir"/etc/init.d/wpa_supplicant || return 1 install -Dm755 "$srcdir"/wpa_supplicant.confd \ "$pkgdir"/etc/conf.d/wpa_supplicant || return 1 } gui() { pkgdesc="Grafical User Interface for $pkgname" mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/wpa_gui "$subpkgdir"/usr/bin/ } md5sums="b29b9af02d7e092db8c5c8508de0e45c wpa_supplicant-1.1.tar.gz 26c9ade15dea7de9a4e650c509c1b3d0 wpa_supplicant.initd bc117427f2c538439f3f1481a028ee06 wpa_supplicant.confd 473fb6b77909ec5a50b6f4d91370e86b libnl3-includes.patch"