143 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			143 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| # Path to the Windows cross compiler (mingw)
 | |
| WINCROSS=/opt/xmingw/bin
 | |
| WINLOCAL=/home/jm/H-win/local
 | |
| 
 | |
| set -e
 | |
| 
 | |
| if [ -z "$1" ]; then
 | |
|     echo "build_release <version> [nobin]"
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| TMP=tmp.build_release
 | |
| RELDIR=`pwd`/Release
 | |
| VER=$1
 | |
| NOW=`date +%Y-%m-%d`
 | |
| 
 | |
| echo "Version: $VER - $NOW"
 | |
| 
 | |
| DATEw=`head -n 3 wpa_supplicant/ChangeLog | tail -n 1 | sed "s/ .*//"`
 | |
| DATEh=`head -n 3 hostapd/ChangeLog | tail -n 1 | sed "s/ .*//"`
 | |
| 
 | |
| if [ "$DATEw" != "$NOW" -o "$DATEh" != "$NOW" ]; then
 | |
|     echo "NOTE! Date mismatch in ChangeLog: wpa_supplicant $DATEw hostapd $DATEh != $NOW"
 | |
| fi
 | |
| 
 | |
| if [ -r $TMP ]; then
 | |
|     echo "Temporary directory '$TMP' exists. Remove it before running this."
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| mkdir $TMP
 | |
| mkdir -p $RELDIR
 | |
| 
 | |
| git-archive --format=tar --prefix=wpa-$VER/ HEAD \
 | |
| 	README COPYING patches src wpa_supplicant hostapd |
 | |
| 	gzip > $RELDIR/wpa-$VER.tar.gz
 | |
| git-archive --format=tar --prefix=hostapd-$VER/ HEAD \
 | |
| 	README COPYING patches src hostapd |
 | |
| 	gzip > $RELDIR/hostapd-$VER.tar.gz
 | |
| git-archive --format=tar --prefix=wpa_supplicant-$VER/ HEAD \
 | |
| 	README COPYING patches src wpa_supplicant |
 | |
| 	tar --directory=$TMP -xf -
 | |
| 
 | |
| cd $TMP
 | |
| make -C wpa_supplicant-$VER/wpa_supplicant/doc/docbook man
 | |
| rm -f wpa_supplicant-$VER/wpa_supplicant/doc/docbook/manpage.{links,refs}
 | |
| tar czf $RELDIR/wpa_supplicant-$VER.tar.gz wpa_supplicant-$VER
 | |
| cd ..
 | |
| rm -r $TMP
 | |
| 
 | |
| if [ "$2" == "nobin" ]; then
 | |
|     exit 0
 | |
| fi
 | |
| 
 | |
| if [ -d $WINCROSS ]; then
 | |
|     pushd $RELDIR
 | |
| 
 | |
|     PDIR=wpa_supplicant-$VER
 | |
|     WDIR=wpa_supplicant-windows-bin-$VER
 | |
|     tar xzf $PDIR.tar.gz
 | |
|     mkdir "$WDIR"
 | |
|     cd "$PDIR/wpa_supplicant"
 | |
|     cat > .config <<EOF
 | |
| CONFIG_DRIVER_NDIS=y
 | |
| CONFIG_NATIVE_WINDOWS=y
 | |
| 
 | |
| CFLAGS += -I/opt/xmingw/i386-mingw32msvc/include/ddk
 | |
| CC=i386-mingw32msvc-gcc
 | |
| STRIP=i386-mingw32msvc-strip
 | |
| PLATFORMSDKLIB=$WINLOCAL/lib
 | |
| CONFIG_NDIS_EVENTS_INTEGRATED=y
 | |
| 
 | |
| CFLAGS += -I$WINLOCAL/include
 | |
| LIBS += -L$WINLOCAL/lib
 | |
| LIBS_w += -L$WINLOCAL/lib
 | |
| LIBS_p += -L$WINLOCAL/lib
 | |
| 
 | |
| CONFIG_EAP_SIM=y
 | |
| CONFIG_EAP_AKA=y
 | |
| CONFIG_EAP_LEAP=y
 | |
| CONFIG_EAP_FAST=y
 | |
| CONFIG_EAP_TLS=y
 | |
| 
 | |
| CONFIG_CTRL_IFACE=y
 | |
| CONFIG_EAP_FAST=y
 | |
| CONFIG_EAP_MSCHAPV2=y
 | |
| CONFIG_EAP_TTLS=y
 | |
| CONFIG_EAP_PEAP=y
 | |
| CONFIG_EAP_MD5=y
 | |
| CONFIG_EAP_GTC=y
 | |
| CONFIG_EAP_OTP=y
 | |
| CONFIG_EAP_PAX=y
 | |
| CONFIG_EAP_SAKE=y
 | |
| CONFIG_EAP_PSK=y
 | |
| CONFIG_EAP_TNC=y
 | |
| CONFIG_PKCS12=y
 | |
| CONFIG_PCSC=y
 | |
| 
 | |
| CONFIG_L2_PACKET=winpcap
 | |
| CONFIG_MAIN=main_winsvc
 | |
| CONFIG_BACKEND=winreg
 | |
| CONFIG_ELOOP=eloop_win
 | |
| CFLAGS += -DCONFIG_DEBUG_FILE
 | |
| EOF
 | |
| 
 | |
|     # First, build the Windows service & registry version and rename it
 | |
|     PATH=$PATH:$WINCROSS make windows-bin
 | |
|     mv wpa_supplicant.exe wpasvc.exe
 | |
| 
 | |
|     # Then, build "the standard" wpa_supplicant.exe
 | |
|     cat >> .config <<EOF
 | |
| CONFIG_MAIN=main
 | |
| CONFIG_BACKEND=file
 | |
| EOF
 | |
| 
 | |
|     PATH=$PATH:$WINCROSS make windows-bin
 | |
| 
 | |
|     for i in COPYING; do
 | |
| 	unix2dos < ../$i > ../../"$WDIR"/$i
 | |
|     done
 | |
|     for i in README README-Windows.txt wpa_supplicant.conf; do
 | |
| 	unix2dos < $i > ../../"$WDIR"/$i
 | |
|     done
 | |
|     mv *.exe ../../"$WDIR"
 | |
|     cp win_example.reg ../../"$WDIR"
 | |
| 
 | |
|     cd wpa_gui-qt4
 | |
|     PATH=$PATH:$WINCROSS ./setup-mingw-cross-compiling
 | |
|     PATH=$PATH:$WINCROSS make
 | |
|     cp release/wpa_gui.exe ../../../"$WDIR"
 | |
|     cd ../../..
 | |
|     rm -rf "$PDIR"
 | |
|     zip "$WDIR.zip" "$WDIR"/*
 | |
|     rm -rf "$WDIR"
 | |
| 
 | |
|     popd
 | |
| fi
 | |
| 
 | |
| ls -l $RELDIR/*$VER*
 | |
| 
 | |
| exit 0
 | 
