Magellan Linux

Contents of /branches/R11-stable/core/wpa-supplicant/wpa-supplicant-2.0-r3.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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