2ae2d8aea4
A separate cross compiler mkspecs file (win32-x-g++) is now used to configure all build options so the setup-mingw-cross-compiling hack is not needed anymore. Furthermore, the MinGW setup is now on path, so no need to specify extra PATH changes for it.
140 lines
2.9 KiB
Bash
Executable file
140 lines
2.9 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
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
|
|
|
|
|
|
cd $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
|
|
|
|
CC=i586-mingw32msvc-gcc
|
|
STRIP=i586-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_USIM_SIMULATOR=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
|
|
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
|
|
|
|
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
|
|
qmake -spec win32-x-g++
|
|
make
|
|
cp release/wpa_gui.exe ../../../"$WDIR"
|
|
cd ../../..
|
|
rm -rf "$PDIR"
|
|
zip "$WDIR.zip" "$WDIR"/*
|
|
rm -rf "$WDIR"
|
|
|
|
cd $RELDIR/..
|
|
|
|
ls -l $RELDIR/*$VER*
|
|
|
|
exit 0
|