Annotation of /smage/trunk/core/wpa-supplicant/wpa-supplicant-2.0-r1.smage2
Parent Directory | Revision Log
Revision 4554 -
(hide annotations)
(download)
Sat Mar 16 20:55:41 2013 UTC (11 years, 2 months ago) by niro
File size: 6527 byte(s)
Sat Mar 16 20:55:41 2013 UTC (11 years, 2 months ago) by niro
File size: 6527 byte(s)
auto added: ver bump to 2.0-r1
1 | niro | 4554 | # $Id$ |
2 | |||
3 | PNAME="wpa-supplicant" | ||
4 | PVER="2.0" | ||
5 | PBUILD="r1" | ||
6 | |||
7 | PCAT="net-wlan" | ||
8 | |||
9 | DESCRIPTION="Linux WPA/WPA2/IEEE 802.1X Supplicant." | ||
10 | HOMEPAGE="http://hostap.epitest.fi/wpa_supplicant/" | ||
11 | |||
12 | DEPEND=">= sys-apps/dbus-1.6 | ||
13 | >= dev-libs/libnl3-3.2.18 | ||
14 | >= dev-libs/libtommath-0.42" | ||
15 | |||
16 | SRCFILE="${PNAME/-/_}-${PVER}.tar.gz" | ||
17 | SRCDIR="${BUILDDIR}/${PNAME/-/_}-${PVER}" | ||
18 | |||
19 | # confd cvs revision | ||
20 | CONF_CVS_REV=1.3 | ||
21 | SKEL_CVS_REV=1.3 | ||
22 | |||
23 | ALX_PKG_KEEP="etc/conf.d | ||
24 | usr/sbin/wpa_supplicant | ||
25 | usr/bin/wpa_cli | ||
26 | usr/bin/wpa_passphrase | ||
27 | etc/dbus-1/system.d | ||
28 | usr/share/dbus-1/system-services" | ||
29 | |||
30 | sminclude mtools alx-split | ||
31 | |||
32 | SRC_URI=( | ||
33 | http://hostap.epitest.fi/releases/${SRCFILE} | ||
34 | mirror://${PNAME}/${SRCFILE} | ||
35 | mirror://${PNAME}/confd-wpa_supplicant.skel-${SKEL_CVS_REV} | ||
36 | mirror://${PNAME}/confd-wpa_supplicant-${CONF_CVS_REV} | ||
37 | ) | ||
38 | |||
39 | # latest stable branch | ||
40 | UP2TAG="stable" | ||
41 | # latest devel branch | ||
42 | #UP2TAG="development" | ||
43 | UP2DATE="updatecmd ${HOMEPAGE} | grep -A1 'Latest ${UP2TAG}' | sed -n 's/.*-\(.*\).tar.*/\1/;$ p'" | ||
44 | |||
45 | src_prepare() | ||
46 | { | ||
47 | local CONFIG=${SRCDIR}/wpa_supplicant/.config | ||
48 | munpack ${SRCFILE} || die | ||
49 | cd ${SRCDIR}/wpa_supplicant | ||
50 | |||
51 | # broken Makefile | ||
52 | sed -i 's@/usr/local@$(PREFIX)@g' Makefile | ||
53 | |||
54 | |||
55 | # basic setup | ||
56 | echo "CONFIG_CTRL_IFACE=y" >> ${CONFIG} || die | ||
57 | echo "CONFIG_BACKEND=file" >> ${CONFIG} || die | ||
58 | echo "CONFIG_NO_RANDOM_POOL=y" >> ${CONFIG} || die | ||
59 | |||
60 | # dbus support | ||
61 | echo "CONFIG_CTRL_IFACE_DBUS=y" >> ${CONFIG} | ||
62 | # Add support for new DBus control interface | ||
63 | # (fi.w1.hostap.wpa_supplicant1) | ||
64 | echo "CONFIG_CTRL_IFACE_DBUS_NEW=y" >> ${CONFIG} | ||
65 | # Add introspection support for new DBus control interface | ||
66 | echo "CONFIG_CTRL_IFACE_DBUS_INTRO=y" >> ${CONFIG} | ||
67 | |||
68 | # not for alx | ||
69 | # # readline | ||
70 | # echo "CONFIG_READLINE=y" >> ${CONFIG} | ||
71 | |||
72 | # libnl-3.2 | ||
73 | echo "CONFIG_LIBNL32=y" >> ${CONFIG} | ||
74 | |||
75 | # wi-fi protected setup (WPS) support | ||
76 | echo "CONFIG_WPS=y" >> ${CONFIG} || die | ||
77 | # enable WPS support with NFC config method | ||
78 | echo "CONFIG_WPS_NFC=y" >> ${CONFIG} || die | ||
79 | |||
80 | # # enable mitigation against certain attacks against TKIP | ||
81 | # echo "CONFIG_DELAYED_MIC_ERROR_REPORT=y" >> ${CONFIG} || die | ||
82 | |||
83 | # # no debug | ||
84 | # echo "CONFIG_NO_STDOUT_DEBUG=y" >> ${CONFIG} || die | ||
85 | |||
86 | # add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt) | ||
87 | echo "CONFIG_DEBUG_FILE=y" >> ${CONFIG} || die | ||
88 | |||
89 | # support HT overrides (disable HT/HT40, mask MCS rates, etc.) | ||
90 | echo "CONFIG_HT_OVERRIDES=y" >> ${CONFIG} || die | ||
91 | |||
92 | # AP mode operations | ||
93 | echo "CONFIG_AP=y" >> ${CONFIG} || die | ||
94 | |||
95 | # P2P (Wi-Fi Direct) | ||
96 | echo "CONFIG_P2P=y" >> ${CONFIG} || die | ||
97 | |||
98 | # autoscan | ||
99 | echo "CONFIG_AUTOSCAN_EXPONENTIAL=y" >> ${CONFIG} || die | ||
100 | # for periodic module: | ||
101 | echo "CONFIG_AUTOSCAN_PERIODIC=y" >> ${CONFIG} || die | ||
102 | |||
103 | # RSN IBSS/AdHoc support | ||
104 | echo "CONFIG_IBSS_RSN=y" >> ${CONFIG} || die | ||
105 | |||
106 | # simple background scan | ||
107 | echo "CONFIG_BGSCAN_SIMPLE=y" >> ${CONFIG} || die | ||
108 | |||
109 | # basic authentication methods | ||
110 | echo "CONFIG_EAP_GTC=y" >> ${CONFIG} || die | ||
111 | echo "CONFIG_EAP_MD5=y" >> ${CONFIG} || die | ||
112 | echo "CONFIG_EAP_OTP=y" >> ${CONFIG} || die | ||
113 | # echo "CONFIG_EAP_PSK=y" >> ${CONFIG} || die | ||
114 | echo "CONFIG_IEEE8021X_EAPOL=y" >> ${CONFIG} || die | ||
115 | echo "CONFIG_PKCS12=y" >> ${CONFIG} || die | ||
116 | # echo "CONFIG_PAX=y" >> ${CONFIG} || die | ||
117 | # echo "CONFIG_TLV=y" >> ${CONFIG} || die | ||
118 | echo "CONFIG_PEERKEY=y" >> ${CONFIG} || die | ||
119 | # echo "CONFIG_EAP_PAX=y" >> ${CONFIG} || die | ||
120 | # echo "CONFIG_EAP_TLV=y" >> ${CONFIG} || die | ||
121 | |||
122 | # ssl authentication methods | ||
123 | # alx has no openssl but libtommath | ||
124 | # echo "CONFIG_TLS=openssl" >> ${CONFIG} || die | ||
125 | # needs libtommath but is a very small replacement for openssl | ||
126 | echo "CONFIG_TLS=internal" >> ${CONFIG} || die | ||
127 | echo "CONFIG_EAP_LEAP=y" >> ${CONFIG} || die | ||
128 | echo "CONFIG_EAP_MSCHAPV2=y" >> ${CONFIG} || die | ||
129 | echo "CONFIG_EAP_PEAP=y" >> ${CONFIG} || die | ||
130 | echo "CONFIG_EAP_TLS=y" >> ${CONFIG} || die | ||
131 | echo "CONFIG_EAP_TTLS=y" >> ${CONFIG} || die | ||
132 | echo "CONFIG_SMARTCARD=y" >> ${CONFIG} || die | ||
133 | |||
134 | # linux specific drivers | ||
135 | # echo "CONFIG_WIRELESS_EXTENSION=y" >> ${CONFIG} || die | ||
136 | # echo "CONFIG_DRIVER_ATMEL=y" >> ${CONFIG} || die | ||
137 | # echo "CONFIG_DRIVER_HOSTAP=y" >> ${CONFIG} || die | ||
138 | # echo "CONFIG_DRIVER_IPW=y" >> ${CONFIG} || die | ||
139 | # echo "CONFIG_DRIVER_NDISWRAPPER=y" >> ${CONFIG} || die | ||
140 | echo "CONFIG_DRIVER_NL80211=y" >> ${CONFIG} || die | ||
141 | # echo "CONFIG_DRIVER_PRISM54=y" >> ${CONFIG} || die | ||
142 | # echo "CONFIG_DRIVER_RALINK=y" >> ${CONFIG} || die | ||
143 | echo "CONFIG_DRIVER_WEXT=y" >> ${CONFIG} || die | ||
144 | echo "CONFIG_DRIVER_WIRED=y" >> ${CONFIG} || die | ||
145 | # echo "CONFIG_DRIVER_BROADCOM=y" >> ${CONFIG} || die | ||
146 | # echo "CONFIG_DRIVER_HERMES=y" >> ${CONFIG} || die | ||
147 | # needs madwifi headers | ||
148 | # echo "CONFIG_DRIVER_MADWIFI=y" >> ${CONFIG} || die | ||
149 | } | ||
150 | |||
151 | src_compile() | ||
152 | { | ||
153 | cd ${SRCDIR}/wpa_supplicant | ||
154 | mmake PREFIX=/usr BINDIR=/usr/bin LIBDIR=/usr/$(mlibdir) || die | ||
155 | } | ||
156 | |||
157 | alx_generic_src_install() | ||
158 | { | ||
159 | cd ${SRCDIR}/wpa_supplicant | ||
160 | make PREFIX=/usr BINDIR=/usr/bin LIBDIR=/usr/$(mlibdir) DESTDIR=${BINDIR} install || die | ||
161 | |||
162 | # config | ||
163 | minstalldir /etc/wpa_supplicant | ||
164 | minstallfile wpa_supplicant.conf /etc/wpa_supplicant/ || die | ||
165 | |||
166 | # skeletons | ||
167 | minstallconf confd-wpa_supplicant.skel-${SKEL_CVS_REV} wpa_supplicant.skel || die | ||
168 | |||
169 | # rc-config | ||
170 | minstallconf confd-wpa_supplicant-${CONF_CVS_REV} wpa_supplicant || die | ||
171 | |||
172 | # dbus | ||
173 | minstalldir /etc/dbus-1/system.d || die | ||
174 | minstallfile dbus/dbus-wpa_supplicant.conf /etc/dbus-1/system.d/wpa_supplicant.conf || die | ||
175 | minstalldir /usr/share/dbus-1/system-services || die | ||
176 | minstallfile dbus/fi.epitest.hostap.WPASupplicant.service /usr/share/dbus-1/system-services/ || die | ||
177 | minstallfile dbus/fi.w1.wpa_supplicant1.service /usr/share/dbus-1/system-services/ || die | ||
178 | |||
179 | # systemd services | ||
180 | local i | ||
181 | for i in systemd/*.service | ||
182 | do | ||
183 | minstallunit "${i}" || die "${i}" | ||
184 | done | ||
185 | |||
186 | # man pages | ||
187 | minstallman doc/docbook/*.8 || die | ||
188 | minstallman doc/docbook/*.5 || die | ||
189 | # but not priv pages | ||
190 | rm -f ${BINDIR}/usr/share/man/man8/wpa_{priv,gui}.8 || die | ||
191 | |||
192 | minstalldocs COPYING wpa_supplicant/ChangeLog wpa_supplicant/README* || die | ||
193 | } | ||
194 | |||
195 | preinstall() | ||
196 | { | ||
197 | add_conf_prot_mask /etc/conf.d | ||
198 | } | ||
199 | |||
200 | postinstall() | ||
201 | { | ||
202 | if [ -f ${MROOT}/etc/wpa_supplicant.conf.example ] | ||
203 | then | ||
204 | rm ${MROOT}/etc/wpa_supplicant.conf.example | ||
205 | fi | ||
206 | |||
207 | # migrate config | ||
208 | if [ -f ${MROOT}/etc/wpa_supplicant.auto ] | ||
209 | then | ||
210 | if [ -f ${MROOT}/etc/wpa_supplicant/wpa_supplicant.auto ] | ||
211 | then | ||
212 | rm ${MROOT}/etc/wpa_supplicant.auto | ||
213 | else | ||
214 | mv ${MROOT}/etc/wpa_supplicant.auto ${MROOT}/etc/wpa_supplicant/ | ||
215 | sed -i 's:/var/run/wpa_supplicant:/run/wpa_supplicant:g' \ | ||
216 | ${MROOT}/etc/wpa_supplicant/wpa_supplicant.auto | ||
217 | fi | ||
218 | fi | ||
219 | |||
220 | mreloadunit dbus.service | ||
221 | mstartunit wpa_supplicant.service | ||
222 | } | ||
223 | |||
224 | postremove() | ||
225 | { | ||
226 | mreloadunit dbus.service | ||
227 | mstopunit wpa_supplicant.service | ||
228 | } |