Name: wpa_supplicant Summary: WPA/WPA2/IEEE 802.1X Supplicant Version: 0.7.3 Release: 1 Group: System/Base License: BSD URL: http://w1.fi/wpa_supplicant/ Source0: http://w1.fi/releases/%{name}-%{version}.tar.bz2 Source1: %{name}.config Patch0: 0001-eap_peer-create-a-libeap-library-with-header-files-a.patch Patch1: 0001-events-Custom-event-for-broadcom-proprietary-driver.patch Patch2: 0002-nl80211-Add-a-get_country-hook.patch Patch3: 0003-dbus-Add-a-Country-global-property.patch Patch4: wpa_s-alldrivers.patch BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(libnl-1) BuildRequires: pkgconfig(dbus-1) BuildRequires: readline %description wpa_supplicant is a WPA Supplicant for Linux, BSD and Windows with support for WPA and WPA2 (IEEE 802.11i / RSN). Supplicant is the IEEE 802.1X/WPA component that is used in the client stations. It implements key negotiation with a WPA Authenticator and it controls the roaming and IEEE 802.11 authentication/association of the wlan driver. %package -n libeap0 Summary: EAP-Peer runtime library Group: System/Libraries Requires: %{name} = %{version}-%{release} Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig %description -n libeap0 This is just the runtime for EAP-Peer authentication. %package -n libeap0-devel Summary: EAP-Peer development support Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: libeap0 %description -n libeap0-devel Development support for for EAP-Peer authentication library (header files and package config). %prep %setup -q # 0001-eap_peer-create-a-libeap-library-with-header-files-a.patch %patch0 -p1 # 0001-events-Custom-event-for-broadcom-proprietary-driver.patch %patch1 -p1 # 0002-nl80211-Add-a-get_country-hook.patch %patch2 -p1 # 0003-dbus-Add-a-Country-global-property.patch %patch3 -p1 # wpa_s-alldrivers.patch %patch4 -p1 %build pushd wpa_supplicant cp %{SOURCE1} ./.config CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; make %{?jobs:-j%jobs} V=1 popd # Ugly, but otherwise ARM will FAIL. Force all objects to be rebuilt # from the eap_peer subdirectory, so they include -fPIC for the shared # library and it won't affect the other built binaries -- this is an # ugly hack, but until the build system in wpa_supplicant is not # revamped, I can't think of a better way. rm -f src/utils/*.o src/eap_common/*.o src/crypto/*.o src/eap_peer/*.o make -C src/eap_peer %{?jobs:-j%jobs} %install rm -rf %{buildroot} rm -rf %{buildroot} # binary install -d %{buildroot}/sbin install -m 0755 %{name}/wpa_passphrase %{buildroot}/sbin install -m 0755 %{name}/wpa_cli %{buildroot}/sbin install -m 0755 %{name}/wpa_supplicant %{buildroot}/sbin install -d %{buildroot}/%{_sysconfdir}/dbus-1/system.d/ install -m 0644 %{name}/dbus/dbus-wpa_supplicant.conf %{buildroot}/%{_sysconfdir}/dbus-1/system.d/wpa_supplicant.conf install -d %{buildroot}/%{_datadir}/dbus-1/system-services/ install -m 0644 %{name}/dbus/fi.epitest.hostap.WPASupplicant.service %{buildroot}/%{_datadir}/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service install -m 0644 %{name}/dbus/fi.w1.wpa_supplicant1.service %{buildroot}/%{_datadir}/dbus-1/system-services/fi.w1.wpa_supplicant1.service make -C src/eap_peer install DESTDIR=%{buildroot} # running mkdir -p %{buildroot}/%{_localstatedir}/run/%{name} # man pages install -d %{buildroot}%{_mandir}/man{5,8} install -m 0644 %{name}/doc/docbook/*.8 %{buildroot}%{_mandir}/man8 install -m 0644 %{name}/doc/docbook/*.5 %{buildroot}%{_mandir}/man5 # some cleanup in docs rm -f %{name}/doc/.cvsignore rm -rf %{name}/doc/docbook %post -n libeap0 -p /sbin/ldconfig %postun -n libeap0 -p /sbin/ldconfig %docs_package %files %{_sysconfdir}/dbus-1/system.d/%{name}.conf %{_datadir}/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service %{_datadir}/dbus-1/system-services/fi.w1.wpa_supplicant1.service /sbin/wpa_passphrase /sbin/wpa_supplicant /sbin/wpa_cli %dir %{_localstatedir}/run/%{name} %files -n libeap0 /usr/lib/libeap.so.0.0.0 %files -n libeap0-devel /usr/lib/libeap.so /usr/lib/pkgconfig/libeap0.pc /usr/include/eap_peer