]> pilppa.org Git - familiar-h63xx-build.git/commitdiff
wpasupplicant: add fully featured version based on 0.5.5-2 from Debian.
authorRene Wagner <rw@handhelds.org>
Fri, 20 Oct 2006 21:43:03 +0000 (23:43 +0200)
committerRene Wagner <rw@handhelds.org>
Fri, 20 Oct 2006 21:43:03 +0000 (23:43 +0200)
Signed-off-by: Rene Wagner <rw@handhelds.org>
org.handhelds.familiar/classes/debian-vampyre.bbclass
org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/defconfig [new file with mode: 0644]
org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-no-lsb.patch [new file with mode: 0644]
org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-no-quiet.patch [new file with mode: 0644]
org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-standard-sh.patch [new file with mode: 0644]
org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/tls-gnutls-api-breakage.patch [new file with mode: 0644]
org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant_0.5.5-2.bb [new file with mode: 0644]

index 93135419b656b07f258c010a410b535bfad2497e..f995ed026489a029b1eb192a67420c6cf1072cf1 100644 (file)
@@ -14,6 +14,7 @@ DEBIAN_ARCHIVE ?= "main"
 DEBIAN_BASE_URI = "${DEBIAN_MIRROR}/${DEBIAN_ARCHIVE}/${@bb.data.getVar('PN', d, 1)[0]}/${PN}"
 SRC_URI = "${DEBIAN_BASE_URI}/${PN}_${DPV}.orig.tar.gz \
            ${DEBIAN_BASE_URI}/${PN}_${DPV}-${DPR}.diff.gz;patch=1 "
+FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PN}-${DPV}-${DPR}", "${FILE_DIRNAME}/${PN}-${DPV}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
 
 do_install_append () {
        mkdir -p ${D}${datadir}/doc/${PN}
diff --git a/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/defconfig b/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/defconfig
new file mode 100644 (file)
index 0000000..e82baf2
--- /dev/null
@@ -0,0 +1,284 @@
+# Example wpa_supplicant build time configuration
+#
+# This file lists the configuration options that are used when building the
+# hostapd binary. All lines starting with # are ignored. Configuration option
+# lines must be commented out complete, if they are not to be included, i.e.,
+# just setting VARIABLE=n is not disabling that variable.
+#
+# This file is included in Makefile, so variables like CFLAGS and LIBS can also
+# be modified from here. In most cases, these lines should use += in order not
+# to override previous values of the variables.
+
+CFLAGS = $(TARGET_CFLAGS)
+LIBS = $(TARGET_LDFLAGS)
+
+
+# Driver interface for Host AP driver
+CONFIG_DRIVER_HOSTAP=y
+
+# Driver interface for Agere driver
+#CONFIG_DRIVER_HERMES=y
+# Change include directories to match with the local setup
+#CFLAGS += -I../../hcf -I../../include -I../../include/hcf
+#CFLAGS += -I../../include/wireless
+
+# Driver interface for madwifi driver
+#CONFIG_DRIVER_MADWIFI=y
+# Change include directories to match with the local setup
+#CFLAGS += -I../madwifi/wpa
+
+# Driver interface for Prism54 driver
+# (Note: Prism54 is not yet supported, i.e., this will not work as-is and is
+# for developers only)
+#CONFIG_DRIVER_PRISM54=y
+
+# Driver interface for ndiswrapper
+#CONFIG_DRIVER_NDISWRAPPER=y
+
+# Driver interface for Atmel driver
+CONFIG_DRIVER_ATMEL=y
+
+# Driver interface for Broadcom driver
+#CONFIG_DRIVER_BROADCOM=y
+# Example path for wlioctl.h; change to match your configuration
+#CFLAGS += -I/opt/WRT54GS/release/src/include
+
+# Driver interface for Intel ipw2100/2200 driver
+#CONFIG_DRIVER_IPW=y
+
+# Driver interface for generic Linux wireless extensions
+CONFIG_DRIVER_WEXT=y
+
+# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
+#CONFIG_DRIVER_BSD=y
+#CFLAGS += -I/usr/local/include
+#LIBS += -L/usr/local/lib
+
+# Driver interface for Windows NDIS
+#CONFIG_DRIVER_NDIS=y
+#CFLAGS += -I/usr/include/w32api/ddk
+#LIBS += -L/usr/local/lib
+# For native build using mingw
+#CONFIG_NATIVE_WINDOWS=y
+# Additional directories for cross-compilation on Linux host for mingw target
+#CFLAGS += -I/opt/mingw/mingw32/include/ddk
+#LIBS += -L/opt/mingw/mingw32/lib
+#CC=mingw32-gcc
+# By default, driver_ndis uses WinPcap for low-level operations. This can be
+# replaced with the following option which replaces WinPcap calls with NDISUIO.
+# However, this requires that WZC is disabled (net stop wzcsvc) before starting
+# wpa_supplicant.
+# CONFIG_USE_NDISUIO=y
+
+# Driver interface for development testing
+#CONFIG_DRIVER_TEST=y
+
+# Driver interface for wired Ethernet drivers
+#CONFIG_DRIVER_WIRED=y
+
+# Enable IEEE 802.1X Supplicant (automatically included if any EAP method is
+# included)
+CONFIG_IEEE8021X_EAPOL=y
+
+# EAP-MD5
+CONFIG_EAP_MD5=y
+
+# EAP-MSCHAPv2
+CONFIG_EAP_MSCHAPV2=y
+
+# EAP-TLS
+CONFIG_EAP_TLS=y
+
+# EAL-PEAP
+CONFIG_EAP_PEAP=y
+
+# EAP-TTLS
+CONFIG_EAP_TTLS=y
+
+# EAP-GTC
+CONFIG_EAP_GTC=y
+
+# EAP-OTP
+CONFIG_EAP_OTP=y
+
+# EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used)
+#CONFIG_EAP_SIM=y
+
+# EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
+#CONFIG_EAP_PSK=y
+
+# EAP-PAX
+#CONFIG_EAP_PAX=y
+
+# LEAP
+CONFIG_EAP_LEAP=y
+
+# EAP-AKA (enable CONFIG_PCSC, if EAP-AKA is used)
+#CONFIG_EAP_AKA=y
+
+# EAP-SAKE
+#CONFIG_EAP_SAKE=y
+
+# EAP-GPSK
+#CONFIG_EAP_GPSK=y
+# Include support for optional SHA256 cipher suite in EAP-GPSK
+#CONFIG_EAP_GPSK_SHA256=y
+
+# PKCS#12 (PFX) support (used to read private key and certificate file from
+# a file that usually has extension .p12 or .pfx)
+CONFIG_PKCS12=y
+
+# Smartcard support (i.e., private key on a smartcard), e.g., with openssl
+# engine.
+#CONFIG_SMARTCARD=y
+
+# PC/SC interface for smartcards (USIM, GSM SIM)
+# Enable this if EAP-SIM or EAP-AKA is included
+#CONFIG_PCSC=y
+
+# Development testing
+#CONFIG_EAPOL_TEST=y
+
+# Replace native Linux implementation of packet sockets with libdnet/libpcap.
+# This will be automatically set for non-Linux OS.
+#CONFIG_DNET_PCAP=y
+
+# Select control interface backend for external programs, e.g, wpa_cli:
+# unix = UNIX domain sockets (default for Linux/*BSD)
+# udp = UDP sockets using localhost (127.0.0.1)
+# named_pipe = Windows Named Pipe (default for Windows)
+# y = use default (backwards compatibility)
+# If this option is commented out, control interface is not included in the
+# build.
+CONFIG_CTRL_IFACE=y
+
+# Include support for GNU Readline and History Libraries in wpa_cli.
+# When building a wpa_cli binary for distribution, please note that these
+# libraries are licensed under GPL and as such, BSD license may not apply for
+# the resulting binary.
+#CONFIG_READLINE=y
+
+# Remove debugging code that is printing out debug message to stdout.
+# This can be used to reduce the size of the wpa_supplicant considerably
+# if debugging code is not needed. The size reduction can be around 35%
+# (e.g., 90 kB).
+CONFIG_NO_STDOUT_DEBUG=y
+
+# Remove WPA support, e.g., for wired-only IEEE 802.1X supplicant, to save
+# 35-50 kB in code size.
+#CONFIG_NO_WPA=y
+
+# Remove WPA2 support. This allows WPA to be used, but removes WPA2 code to
+# save about 1 kB in code size when building only WPA-Personal (no EAP support)
+# or 6 kB if building for WPA-Enterprise.
+#CONFIG_NO_WPA2=y
+
+# Remove AES extra functions. This can be used to reduce code size by about
+# 1.5 kB by removing extra AES modes that are not needed for commonly used
+# client configurations (they are needed for some EAP types).
+#CONFIG_NO_AES_EXTRAS=y
+
+# Select configuration backend:
+# file = text file (e.g., wpa_supplicant.conf)
+# winreg = Windows registry (see win_example.reg for an example)
+CONFIG_BACKEND=file
+
+# Select program entry point implementation:
+# main = UNIX/POSIX like main() function (default)
+# main_winsvc = Windows service (read parameters from registry)
+# main_none = Very basic example (development use only)
+#CONFIG_MAIN=main
+
+# Select wrapper for operatins system and C library specific functions
+# unix = UNIX/POSIX like systems (default)
+# win32 = Windows systems
+# none = Empty template
+CONFIG_OS=unix
+
+# Select event loop implementation
+# eloop = select() loop (default)
+# eloop_win = Windows events and WaitForMultipleObject() loop
+# eloop_none = Empty template
+#CONFIG_ELOOP=eloop
+
+# Select layer 2 packet implementation
+# linux = Linux packet socket (default)
+# pcap = libpcap/libdnet/WinPcap
+# freebsd = FreeBSD libpcap
+# winpcap = WinPcap with receive thread
+# ndis = Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y)
+# none = Empty template
+#CONFIG_L2_PACKET=linux
+
+# IEEE 802.11i/IEEE 802.11e STAKey negotiation for direct link connection
+#CONFIG_STAKEY=y
+
+# Proposed replacement for STAKey negotiation: PeerKey handshake for
+# Station to Station Link
+CONFIG_PEERKEY=y
+
+# Select TLS implementation
+# openssl = OpenSSL (default)
+# gnutls = GnuTLS (needed for TLS/IA, see also CONFIG_GNUTLS_EXTRA)
+# internal = Internal TLSv1 implementation (experimental)
+# none = Empty template
+CONFIG_TLS=gnutls
+
+# Whether to enable TLS/IA support, which is required for EAP-TTLSv1.
+# You need CONFIG_TLS=gnutls for this to have any effect. Please note that
+# even though the core GnuTLS library is released under LGPL, this extra
+# library uses GPL and as such, the terms of GPL apply to the combination
+# of wpa_supplicant and GnuTLS if this option is enabled. BSD license may not
+# apply for distribution of the resulting binary.
+CONFIG_GNUTLS_EXTRA=y
+
+# If CONFIG_TLS=internal is used, additional library and include paths are
+# needed for LibTomCrypt and TomsFastMath.
+#LTC_PATH=/usr/src/libtomcrypt-1.11
+#TFM_PATH=/usr/src/tomsfastmath-0.09
+#CFLAGS += -I$(LTC_PATH)/src/headers
+#LIBS += -L$(LTC_PATH) -L$(TFM_PATH)
+#LIBS_p += -L$(LTC_PATH) -L$(TFM_PATH)
+
+# Include NDIS event processing through WMI into wpa_supplicant/wpasvc.
+# This is only for Windows builds and requires WMI-related header files and
+# WbemUuid.Lib from Platform SDK even when building with MinGW.
+#CONFIG_NDIS_EVENTS_INTEGRATED=y
+#PLATFORMSDKLIB="/opt/Program Files/Microsoft Platform SDK/Lib"
+
+# Add support for DBus control interface
+#CONFIG_CTRL_IFACE_DBUS=y
+
+# Add support for loading EAP methods dynamically as shared libraries.
+# When this option is enabled, each EAP method can be either included
+# statically (CONFIG_EAP_<method>=y) or dynamically (CONFIG_EAP_<method>=dyn).
+# Dynamic EAP methods are build as shared objects (eap_*.so) and they need to
+# be loaded in the beginning of the wpa_supplicant configuration file
+# (see load_dynamic_eap parameter in the example file) before being used in
+# the network blocks.
+#
+# Note that some shared parts of EAP methods are included in the main program
+# and in order to be able to use dynamic EAP methods using these parts, the
+# main program must have been build with the EAP method enabled (=y or =dyn).
+# This means that EAP-TLS/PEAP/TTLS/FAST cannot be added as dynamic libraries
+# unless at least one of them was included in the main build to force inclusion
+# of the shared code. Similarly, at least one of EAP-SIM/AKA must be included
+# in the main build to be able to load these methods dynamically.
+#
+# Please also note that using dynamic libraries will increase the total binary
+# size. Thus, it may not be the best option for targets that have limited
+# amount of memory/flash.
+#CONFIG_DYNAMIC_EAP_METHODS=y
+
+# Include client MLME (management frame processing).
+# This can be used to move MLME processing of Devicescape IEEE 802.11 stack
+# into user space.
+#CONFIG_CLIENT_MLME=y
+# Currently, driver_devicescape.c build requires some additional parameters
+# to be able to include some of the kernel header files. Following lines can
+# be used to set these (WIRELESS_DEV must point to the root directory of the
+# wireless-dev.git tree).
+#WIRELESS_DEV=/usr/src/wireless-dev
+#CFLAGS += -I$(WIRELESS_DEV)/include
+#CFLAGS += -I$(WIRELESS_DEV)/net/d80211
+#CFLAGS += -D_LINUX_TYPES_H
diff --git a/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-no-lsb.patch b/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-no-lsb.patch
new file mode 100644 (file)
index 0000000..b091b3c
--- /dev/null
@@ -0,0 +1,43 @@
+diff -ur wpa_supplicant-0.5.5.debian/debian/wpasupplicant.wpa-ifupdown.init wpa_supplicant-0.5.5/debian/wpasupplicant.wpa-ifupdown.init
+--- wpa_supplicant-0.5.5.debian/debian/wpasupplicant.wpa-ifupdown.init 2006-10-20 22:10:27.000000000 +0200
++++ wpa_supplicant-0.5.5/debian/wpasupplicant.wpa-ifupdown.init        2006-10-20 22:12:00.000000000 +0200
+@@ -22,20 +22,18 @@
+ test -x /sbin/ifdown || exit 0
+-. /lib/lsb/init-functions
+-
+ stop_wpa_action () {
+       test -x /sbin/wpa_action || return
+       unset IFACES
+       IFACES=$(find /var/run -maxdepth 1 -type f -name 'wpa_action.*.pid' -printf '%P\n' | cut -d'.' -f2)
+       if test -n "$IFACES"; then
+-              log_daemon_msg "Stopping wpa_action roaming interfaces"
++              echo -n "Stopping wpa_action roaming interfaces:"
+               for iface in $IFACES; do
+-                      log_progress_msg "$iface"
++                      echo -n " $iface"
+                       # wpa_action executes /sbin/ifdown
+                       wpa_action "$iface" stop >/dev/null 2>&1
+               done
+-              log_end_msg 0
++              echo '.'
+       fi
+ }
+@@ -43,12 +41,12 @@
+       unset IFACES
+       IFACES=$(find /var/run -maxdepth 1 -type f -name 'wpa_supplicant.*.pid' -printf '%P\n' | cut -d'.' -f2)
+       if test -n "$IFACES"; then
+-              log_daemon_msg "Stopping wpa_supplicant interfaces"
++              echo -n "Stopping wpa_supplicant interfaces:"
+               for iface in $IFACES; do
+-                      log_progress_msg "$iface"
++                      echo -n " $iface"
+                       ifdown $iface >/dev/null 2>&1
+               done
+-              log_end_msg 0
++              echo '.'
+       fi
+ }
diff --git a/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-no-quiet.patch b/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-no-quiet.patch
new file mode 100644 (file)
index 0000000..6258f41
--- /dev/null
@@ -0,0 +1,19 @@
+diff -ur wpa_supplicant-0.5.5.debian/debian/ifupdown.sh wpa_supplicant-0.5.5/debian/ifupdown.sh
+--- wpa_supplicant-0.5.5.debian/debian/ifupdown.sh     2006-10-20 21:22:56.000000000 +0200
++++ wpa_supplicant-0.5.5/debian/ifupdown.sh    2006-10-20 21:23:35.000000000 +0200
+@@ -62,13 +62,13 @@
+ # master function; determines if ifupdown.sh should do something or not
+ if [ -s "$IF_WPA_CONF" ]; then
+-      WPA_SUP_CONF_CTRL_DIR=$(sed --quiet \
++      WPA_SUP_CONF_CTRL_DIR=$(sed \
+               's/[[:space:]]*#.*//g;s/[[:space:]]\+.*$//g;s/^\(ctrl_interface\|DIR\)=\(.*\)/\2/p' "$IF_WPA_CONF")
+       if [ -n "$WPA_SUP_CONF_CTRL_DIR" ]; then
+               WPA_CTRL_DIR="$WPA_SUP_CONF_CTRL_DIR"
+       fi
+       WPA_SUP_CONF="-c $IF_WPA_CONF -C $WPA_CTRL_DIR"
+-elif set | grep --quiet "^IF_WPA"; then
++elif set | grep -q "^IF_WPA"; then
+       WPA_SUP_CONF="-C $WPA_CTRL_DIR"
+ else
+       exit 0
diff --git a/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-standard-sh.patch b/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/scripts-standard-sh.patch
new file mode 100644 (file)
index 0000000..5420e70
--- /dev/null
@@ -0,0 +1,21 @@
+diff -ur wpa_supplicant-0.5.5.debian/debian/functions.sh wpa_supplicant-0.5.5/debian/functions.sh
+--- wpa_supplicant-0.5.5.debian/debian/functions.sh    2006-10-20 20:21:16.000000000 +0200
++++ wpa_supplicant-0.5.5/debian/functions.sh   2006-10-20 20:23:55.000000000 +0200
+@@ -36,7 +36,7 @@
+ # verbosity variables
+ if [ -n "$IF_WPA_VERBOSITY" ] || [ "$VERBOSITY" = "1" ]; then
+-      TO_NULL="/dev/stdout"
++      TO_NULL="&1"
+       DAEMON_VERBOSITY="--verbose"
+ else
+       TO_NULL="/dev/null"
+@@ -86,7 +86,7 @@
+                       ;;
+               "stderr")
+                       shift
+-                      echo "$WPA_SUP_PNAME: $@" >/dev/stderr
++                      echo "$WPA_SUP_PNAME: $@" >&2
+                       ;;
+               *)
+                       ;;
diff --git a/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/tls-gnutls-api-breakage.patch b/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant-0.5.5/tls-gnutls-api-breakage.patch
new file mode 100644 (file)
index 0000000..7b5101c
--- /dev/null
@@ -0,0 +1,11 @@
+--- wpa_supplicant-0.5.5/tls_gnutls.c  2006-06-25 03:05:07.000000000 +0200
++++ wpa_supplicant-0.5.5.new/tls_gnutls.c      2006-10-10 02:22:56.000000000 +0200
+@@ -1030,7 +1030,7 @@
+                                    size_t *out_len)
+ {
+       return tls_connection_handshake(ssl_ctx, conn, in_data, in_len,
+-                                      out_len);
++                                      out_len, NULL, NULL);
+ }
diff --git a/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant_0.5.5-2.bb b/org.handhelds.familiar/packages/wpa-supplicant/wpasupplicant_0.5.5-2.bb
new file mode 100644 (file)
index 0000000..f4b2a8b
--- /dev/null
@@ -0,0 +1,101 @@
+# wpasupplicant OE build file
+# Copyright (C) 2006, Rene Wagner. All Rights Reserved
+# Released under the MIT license (see org.handhelds.familiar/COPYING.MIT)
+
+DESCRIPTION = "Client support for WPA and WPA2 (IEEE 802.11i)"
+SECTION = "net"
+LICENSE = "GPL"
+HOMEPAGE = "http://hostap.epitest.fi/wpa_supplicant/"
+
+DEPENDS = "gnutls"
+RDEPENDS_{PN} = "busybox (>= 1.00-r37)"
+
+RCONFLICTS_${PN} = "wpa-supplicant wpa-supplicant-nossl"
+RPROVIDES_${PN} = "wpa-supplicant wpa-supplicant-nossl"
+RREPLACES_${PN} = "wpa-supplicant wpa-supplicant-nossl"
+
+inherit debian-vampyre
+
+SRC_URI += "file://tls-gnutls-api-breakage.patch;patch=1 \
+       file://scripts-standard-sh.patch;patch=1 \
+       file://scripts-no-quiet.patch;patch=1 \
+       file://scripts-no-lsb.patch;patch=1 \
+       file://defconfig"
+S = "${WORKDIR}/wpa_supplicant-${DPV}"
+
+do_configure () {
+       install -m 0755 ${WORKDIR}/defconfig  .config
+}
+
+do_compile () {
+       make
+}
+
+base_sbin_apps = "wpa_supplicant wpa_cli"
+bin_apps = "wpa_passphrase"
+network_dirs = "if-down.d if-post-down.d if-pre-up.d if-up.d"
+man5 = "wpa_supplicant.conf.5"
+man8 = "wpa_background.8 wpa_cli.8 wpa_passphrase.8 wpa_supplicant.8"
+debian_man8 = "wpa_action.8"
+gz_docs = "ChangeLog README"
+examples = "ieee8021x.conf plaintext.conf wep.conf wpa-psk-tkip.conf wpa2-eap-ccmp.conf"
+debian_examples = "wpa_supplicant.conf.template wpa_supplicant.init-daemon"
+
+do_install () {
+       # binaries
+       install -d ${D}${base_sbindir}
+       for i in ${base_sbin_apps}; do
+               install -m 0755 $i ${D}${base_sbindir}
+       done
+       install -m 0755 debian/wpa_action.sh ${D}${base_sbindir}/wpa_action
+
+       install -d ${D}${bindir}
+       for i in ${bin_apps}; do
+               install -m 0755 $i ${D}${bindir}
+       done
+
+       # ifupdown scripts
+       install -d ${D}${sysconfdir}/wpa_supplicant
+       for i in functions.sh ifupdown.sh; do
+               install -m 0755 debian/$i ${D}${sysconfdir}/wpa_supplicant
+       done
+       for i in ${network_dirs}; do
+               install -d ${D}${sysconfdir}/network/$i
+               (cd ${D}${sysconfdir}/network/$i && ln -s ../../wpa_supplicant/ifupdown.sh wpasupplicant)
+       done
+
+       # init script (only for manual stop|reload)
+       install -d ${D}${sysconfdir}/init.d
+       install -m 0755 debian/wpasupplicant.wpa-ifupdown.init ${D}${sysconfdir}/init.d/wpa-ifupdown
+
+       # man pages
+       install -d ${D}${mandir}
+       install -d ${D}${mandir}/man5
+       for i in ${man5}; do
+               install -m 0644 doc/docbook/$i ${D}${mandir}/man5
+               gzip -9 ${D}${mandir}/man5/$i
+       done
+       install -d ${D}${mandir}/man8
+       for i in ${man8}; do
+               install -m 0644 doc/docbook/$i ${D}${mandir}/man8
+               gzip -9 ${D}${mandir}/man8/$i
+       done
+       for i in ${debian_man8}; do
+               install -m 0644 debian/$i ${D}${mandir}/man8
+               gzip -9 ${D}${mandir}/man8/$i
+       done
+
+       # docs and examples
+       install -d ${D}${docdir}/wpasupplicant
+       for i in ${gz_docs}; do
+               install -m 0644 $i ${D}${docdir}/wpasupplicant
+               gzip -9 ${D}${docdir}/wpasupplicant/$i
+       done
+       install -d ${D}${docdir}/wpasupplicant/examples
+       for i in ${examples}; do
+               install -m 0644 examples/$i ${D}${docdir}/wpasupplicant/examples
+       done
+       for i in ${debian_examples}; do
+               install -m 0644 debian/$i ${D}${docdir}/wpasupplicant/examples
+       done
+}