head	1.2;
access;
symbols
	perseant-exfatfs-base-20250801:1.2
	perseant-exfatfs-base-20240630:1.2
	perseant-exfatfs:1.2.0.22
	perseant-exfatfs-base:1.2
	cjep_sun2x:1.2.0.20
	cjep_sun2x-base:1.2
	cjep_staticlib_x-base1:1.2
	cjep_staticlib_x:1.2.0.18
	cjep_staticlib_x-base:1.2
	phil-wifi-20200421:1.2
	phil-wifi-20200411:1.2
	phil-wifi-20200406:1.2
	pgoyette-compat-merge-20190127:1.2
	pgoyette-compat-20190127:1.2
	pgoyette-compat-20190118:1.2
	pgoyette-compat-1226:1.2
	pgoyette-compat-1126:1.2
	pgoyette-compat-1020:1.2
	pgoyette-compat-0930:1.2
	pgoyette-compat-0906:1.2
	pgoyette-compat-0728:1.2
	pgoyette-compat-0625:1.2
	pgoyette-compat-0521:1.2
	pgoyette-compat-0502:1.2
	pgoyette-compat-0422:1.2
	pgoyette-compat-0415:1.2
	pgoyette-compat-0407:1.2
	pgoyette-compat-0330:1.2
	pgoyette-compat-0322:1.2
	pgoyette-compat-0315:1.2
	pgoyette-compat:1.2.0.16
	pgoyette-compat-base:1.2
	prg-localcount2-base3:1.2
	prg-localcount2-base2:1.2
	prg-localcount2-base1:1.2
	prg-localcount2:1.2.0.14
	prg-localcount2-base:1.2
	pgoyette-localcount-20170426:1.2
	bouyer-socketcan-base1:1.2
	pgoyette-localcount-20170320:1.2
	bouyer-socketcan:1.2.0.12
	bouyer-socketcan-base:1.2
	pgoyette-localcount-20170107:1.2
	pgoyette-localcount-20161104:1.2
	localcount-20160914:1.2
	pgoyette-localcount-20160806:1.2
	pgoyette-localcount-20160726:1.2
	pgoyette-localcount:1.2.0.10
	pgoyette-localcount-base:1.2
	netbsd-5-2-3-RELEASE:1.1.1.1
	netbsd-5-1-5-RELEASE:1.1.1.1
	yamt-pagecache-base9:1.2
	yamt-pagecache-tag8:1.2
	tls-earlyentropy:1.2.0.6
	tls-earlyentropy-base:1.2
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.2
	riastradh-drm2-base3:1.2
	netbsd-5-2-2-RELEASE:1.1.1.1
	netbsd-5-1-4-RELEASE:1.1.1.1
	netbsd-5-2-1-RELEASE:1.1.1.1
	netbsd-5-1-3-RELEASE:1.1.1.1
	agc-symver:1.2.0.8
	agc-symver-base:1.2
	tls-maxphys-base:1.2
	yamt-pagecache-base8:1.2
	netbsd-5-2:1.1.1.1.0.24
	yamt-pagecache-base7:1.2
	netbsd-5-2-RELEASE:1.1.1.1
	netbsd-5-2-RC1:1.1.1.1
	yamt-pagecache-base6:1.2
	yamt-pagecache-base5:1.2
	yamt-pagecache-base4:1.2
	netbsd-5-1-2-RELEASE:1.1.1.1
	netbsd-5-1-1-RELEASE:1.1.1.1
	yamt-pagecache-base3:1.2
	yamt-pagecache-base2:1.2
	yamt-pagecache:1.2.0.4
	yamt-pagecache-base:1.2
	bouyer-quota2-nbase:1.2
	bouyer-quota2:1.2.0.2
	bouyer-quota2-base:1.2
	matt-nb5-mips64-premerge-20101231:1.1.1.1
	matt-nb5-pq3:1.1.1.1.0.22
	matt-nb5-pq3-base:1.1.1.1
	netbsd-5-1:1.1.1.1.0.20
	netbsd-5-1-RELEASE:1.1.1.1
	netbsd-5-1-RC4:1.1.1.1
	matt-nb5-mips64-k15:1.1.1.1
	netbsd-5-1-RC3:1.1.1.1
	netbsd-5-1-RC2:1.1.1.1
	netbsd-5-1-RC1:1.1.1.1
	netbsd-5-0-2-RELEASE:1.1.1.1
	matt-nb5-mips64-premerge-20091211:1.1.1.1
	matt-premerge-20091211:1.1.1.1
	matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.1.1.1
	matt-nb4-mips64-k7-u2a-k9b:1.1.1.1
	matt-nb5-mips64-u1-k1-k5:1.1.1.1
	matt-nb5-mips64:1.1.1.1.0.18
	netbsd-5-0-1-RELEASE:1.1.1.1
	jym-xensuspend-nbase:1.1.1.1
	netbsd-5-0:1.1.1.1.0.16
	netbsd-5-0-RELEASE:1.1.1.1
	netbsd-5-0-RC4:1.1.1.1
	netbsd-5-0-RC3:1.1.1.1
	netbsd-5-0-RC2:1.1.1.1
	jym-xensuspend:1.1.1.1.0.14
	jym-xensuspend-base:1.1.1.1
	netbsd-5-0-RC1:1.1.1.1
	netbsd-5:1.1.1.1.0.12
	netbsd-5-base:1.1.1.1
	matt-mips64-base2:1.1.1.1
	mjf-devfs2:1.1.1.1.0.10
	mjf-devfs2-base:1.1.1.1
	wrstuden-revivesa-base-3:1.1.1.1
	wrstuden-revivesa-base-2:1.1.1.1
	v0_6_4:1.1.1.1
	wrstuden-revivesa-base-1:1.1.1.1
	yamt-pf42-base4:1.1.1.1
	yamt-pf42-base3:1.1.1.1
	hpcarm-cleanup-nbase:1.1.1.1
	hpcarm-cleanup-base:1.1.1.1
	yamt-pf42-baseX:1.1.1.1
	yamt-pf42-base2:1.1.1.1
	wrstuden-revivesa:1.1.1.1.0.8
	wrstuden-revivesa-base:1.1.1.1
	yamt-pf42:1.1.1.1.0.6
	yamt-pf42-base:1.1.1.1
	matt-armv6:1.1.1.1.0.4
	matt-armv6-nbase:1.1.1.1
	keiichi-mipv6:1.1.1.1.0.2
	keiichi-mipv6-base:1.1.1.1
	v0_6_2:1.1.1.1
	MALINEN:1.1.1;
locks; strict;
comment	@# @;


1.2
date	2010.08.26.14.59.16;	author christos;	state dead;
branches;
next	1.1;

1.1
date	2008.01.26.21.39.47;	author christos;	state Exp;
branches
	1.1.1.1;
next	;

1.1.1.1
date	2008.01.26.21.39.47;	author christos;	state Exp;
branches
	1.1.1.1.4.1;
next	;

1.1.1.1.4.1
date	2008.01.26.21.39.47;	author matt;	state dead;
branches;
next	1.1.1.1.4.2;

1.1.1.1.4.2
date	2008.03.23.00.17.28;	author matt;	state Exp;
branches;
next	;


desc
@@


1.2
log
@bye old wpa
@
text
@# Makefile for Microsoft nmake to build wpa_supplicant

# This can be run in Visual Studio 2005 Command Prompt

# Note: Make sure that cl.exe is configured to include Platform SDK
# include and lib directories (vsvars32.bat)

all: wpa_supplicant.exe wpa_cli.exe wpa_passphrase.exe wpasvc.exe win_if_list.exe

# Root directory for WinPcap developer's pack
# (http://www.winpcap.org/install/bin/WpdPack_3_1.zip)
WINPCAPDIR=C:\dev\WpdPack

# Root directory for OpenSSL
# (http://www.openssl.org/source/openssl-0.9.8a.tar.gz)
# Build and installed following instructions in INSTALL.W32
# Note: If EAP-FAST is included in the build, OpenSSL needs to be patched to
# support it (openssl-tls-extensions.patch)
# Alternatively, see README-Windows.txt for information about binary
# installation package for OpenSSL.
OPENSSLDIR=C:\dev\openssl

CC = cl
OBJDIR = objs

CFLAGS = /DCONFIG_NATIVE_WINDOWS
CFLAGS = $(CFLAGS) /DCONFIG_NDIS_EVENTS_INTEGRATED
CFLAGS = $(CFLAGS) /DCONFIG_ANSI_C_EXTRA
CFLAGS = $(CFLAGS) /DCONFIG_WINPCAP
CFLAGS = $(CFLAGS) /DIEEE8021X_EAPOL
CFLAGS = $(CFLAGS) /DEAP_TLS_FUNCS
CFLAGS = $(CFLAGS) /DPKCS12_FUNCS
CFLAGS = $(CFLAGS) /DEAP_MD5
CFLAGS = $(CFLAGS) /DEAP_TLS
CFLAGS = $(CFLAGS) /DEAP_MSCHAPv2
CFLAGS = $(CFLAGS) /DEAP_PEAP
CFLAGS = $(CFLAGS) /DEAP_TTLS
CFLAGS = $(CFLAGS) /DEAP_GTC
CFLAGS = $(CFLAGS) /DEAP_OTP
CFLAGS = $(CFLAGS) /DEAP_SIM
CFLAGS = $(CFLAGS) /DEAP_LEAP
CFLAGS = $(CFLAGS) /DEAP_PSK
CFLAGS = $(CFLAGS) /DEAP_AKA
#CFLAGS = $(CFLAGS) /DEAP_FAST
CFLAGS = $(CFLAGS) /DEAP_PAX
CFLAGS = $(CFLAGS) /DEAP_TNC
CFLAGS = $(CFLAGS) /DPCSC_FUNCS
CFLAGS = $(CFLAGS) /DCONFIG_CTRL_IFACE
CFLAGS = $(CFLAGS) /DCONFIG_CTRL_IFACE_NAMED_PIPE
CFLAGS = $(CFLAGS) /DCONFIG_DRIVER_NDIS
CFLAGS = $(CFLAGS) /I..\src /I..\src\utils /I..\src\common /I..\src\crypto
CFLAGS = $(CFLAGS) /I..\src\rsn_supp /I..\src\eapol_supp /I.
CFLAGS = $(CFLAGS) /DWIN32
CFLAGS = $(CFLAGS) /Fo$(OBJDIR)\\ /c
CFLAGS = $(CFLAGS) /W3

#CFLAGS = $(CFLAGS) /WX

# VS 2005 complains about lot of deprecated string functions; let's ignore them
# at least for now since snprintf and strncpy can be used in a safe way
CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE

OBJS = \
	$(OBJDIR)\os_win32.obj \
	$(OBJDIR)\eloop_win.obj \
	$(OBJDIR)\sha1.obj \
	$(OBJDIR)\md5.obj \
	$(OBJDIR)\rc4.obj \
	$(OBJDIR)\aes_wrap.obj \
	$(OBJDIR)\common.obj \
	$(OBJDIR)\wpa_debug.obj \
	$(OBJDIR)\wpabuf.obj \
	$(OBJDIR)\wpa_supplicant.obj \
	$(OBJDIR)\wpa.obj \
	$(OBJDIR)\wpa_common.obj \
	$(OBJDIR)\wpa_ie.obj \
	$(OBJDIR)\preauth.obj \
	$(OBJDIR)\pmksa_cache.obj \
	$(OBJDIR)\eapol_supp_sm.obj \
	$(OBJDIR)\eap.obj \
	$(OBJDIR)\eap_common.obj \
	$(OBJDIR)\chap.obj \
	$(OBJDIR)\eap_methods.obj \
	$(OBJDIR)\eap_tlv.obj \
	$(OBJDIR)\eap_md5.obj \
	$(OBJDIR)\eap_tls.obj \
	$(OBJDIR)\eap_tls_common.obj \
	$(OBJDIR)\eap_mschapv2.obj \
	$(OBJDIR)\eap_peap.obj \
	$(OBJDIR)\eap_ttls.obj \
	$(OBJDIR)\eap_gtc.obj \
	$(OBJDIR)\eap_otp.obj \
	$(OBJDIR)\eap_leap.obj \
	$(OBJDIR)\eap_sim.obj \
	$(OBJDIR)\eap_sim_common.obj \
	$(OBJDIR)\eap_aka.obj \
	$(OBJDIR)\eap_pax.obj \
	$(OBJDIR)\eap_pax_common.obj \
	$(OBJDIR)\eap_psk.obj \
	$(OBJDIR)\eap_psk_common.obj \
	$(OBJDIR)\eap_tnc.obj \
	$(OBJDIR)\tncc.obj \
	$(OBJDIR)\base64.obj \
	$(OBJDIR)\ctrl_iface.obj \
	$(OBJDIR)\ctrl_iface_named_pipe.obj \
	$(OBJDIR)\driver_ndis.obj \
	$(OBJDIR)\driver_ndis_.obj \
	$(OBJDIR)\scan_helpers.obj \
	$(OBJDIR)\events.obj \
	$(OBJDIR)\blacklist.obj \
	$(OBJDIR)\scan.obj \
	$(OBJDIR)\wpas_glue.obj \
	$(OBJDIR)\config.obj \
	$(OBJDIR)\l2_packet_winpcap.obj \
	$(OBJDIR)\tls_openssl.obj \
	$(OBJDIR)\ms_funcs.obj \
	$(OBJDIR)\crypto_openssl.obj \
	$(OBJDIR)\pcsc_funcs.obj \
	$(OBJDIR)\ndis_events.obj

# OBJS = $(OBJS) $(OBJDIR)\eap_fast.obj

OBJS_t = $(OBJS) \
	$(OBJDIR)\eapol_test.obj \
	$(OBJDIR)\radius.obj \
	$(OBJDIR)\radius_client.obj \
	$(OBJDIR)\config_file.obj $(OBJDIR)\base64.obj

OBJS_t2 = $(OBJS) \
	$(OBJDIR)\preauth_test.obj \
	$(OBJDIR)\config_file.obj $(OBJDIR)\base64.obj

OBJS2 = $(OBJDIR)\drivers.obj \
	$(OBJDIR)\config_file.obj \
	$(OBJS2) $(OBJDIR)\main.obj

OBJS3 = $(OBJDIR)\drivers.obj \
	$(OBJDIR)\config_winreg.obj \
	$(OBJS3) $(OBJDIR)\main_winsvc.obj

OBJS_c = \
	$(OBJDIR)\os_win32.obj \
	$(OBJDIR)\wpa_cli.obj \
	$(OBJDIR)\wpa_ctrl.obj \
	$(OBJDIR)\common.obj

OBJS_p = \
	$(OBJDIR)\os_win32.obj \
	$(OBJDIR)\common.obj \
	$(OBJDIR)\sha1.obj \
	$(OBJDIR)\md5.obj \
	$(OBJDIR)\crypto_openssl.obj \
	$(OBJDIR)\wpa_passphrase.obj

LIBS = wbemuuid.lib libcmt.lib kernel32.lib uuid.lib ole32.lib oleaut32.lib \
	ws2_32.lib Advapi32.lib Crypt32.lib Winscard.lib \
	Packet.lib wpcap.lib \
	libeay32.lib ssleay32.lib
# If using Win32 OpenSSL binary installation from Shining Light Productions,
# replace the last line with this for dynamic libraries
#	libeay32MT.lib ssleay32MT.lib
# and this for static libraries
#	libeay32MT.lib ssleay32MT.lib Gdi32.lib User32.lib

CFLAGS = $(CFLAGS) /I"$(WINPCAPDIR)/Include" /I"$(OPENSSLDIR)\include"
LFLAGS = /libpath:"$(WINPCAPDIR)\Lib" /libpath:"$(OPENSSLDIR)\lib"

wpa_supplicant.exe: $(OBJDIR) $(OBJS) $(OBJS2)
	link.exe /out:wpa_supplicant.exe $(LFLAGS) $(OBJS) $(OBJS2) $(LIBS)

wpasvc.exe: $(OBJDIR) $(OBJS) $(OBJS3)
	link.exe /out:wpasvc.exe $(LFLAGS) $(OBJS) $(OBJS3) $(LIBS)

wpa_cli.exe: $(OBJDIR) $(OBJS_c)
	link.exe /out:wpa_cli.exe $(LFLAGS) $(OBJS_c) $(LIBS)

wpa_passphrase.exe: $(OBJDIR) $(OBJS_p)
	link.exe /out:wpa_passphrase.exe $(LFLAGS) $(OBJS_p) $(LIBS)

eapol_test.exe: $(OBJDIR) $(OBJS_t)
	link.exe /out:eapol_test.exe $(LFLAGS) $(OBJS_t) $(LIBS)

preauth_test.exe: $(OBJDIR) $(OBJS_t2)
	link.exe /out:preauth_test.exe $(LFLAGS) $(OBJS_t2) $(LIBS)

win_if_list.exe: $(OBJDIR) $(OBJDIR)\win_if_list.obj
	link.exe /out:win_if_list.exe $(LFLAGS) $(OBJDIR)\win_if_list.obj $(LIBS)


{..\src\utils}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\common}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\rsn_supp}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\eapol_supp}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\crypto}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\eap_peer}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\eap_common}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\drivers}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\l2_packet}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{.\}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{.\}.cpp{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

$(OBJDIR):
	if not exist "$(OBJDIR)" mkdir "$(OBJDIR)"

clean:
	erase $(OBJDIR)\*.obj wpa_supplicant.exe
@


1.1
log
@Initial revision
@
text
@@


1.1.1.1
log
@Import new wpa_supplicant code
@
text
@@


1.1.1.1.4.1
log
@file nmake.mak was added on branch matt-armv6 on 2008-03-23 00:17:28 +0000
@
text
@d1 227
@


1.1.1.1.4.2
log
@sync with HEAD
@
text
@a0 227
# Makefile for Microsoft nmake to build wpa_supplicant

# This can be run in Visual Studio 2005 Command Prompt

# Note: Make sure that cl.exe is configured to include Platform SDK
# include and lib directories (vsvars32.bat)

all: wpa_supplicant.exe wpa_cli.exe wpa_passphrase.exe wpasvc.exe win_if_list.exe

# Root directory for WinPcap developer's pack
# (http://www.winpcap.org/install/bin/WpdPack_3_1.zip)
WINPCAPDIR=C:\dev\WpdPack

# Root directory for OpenSSL
# (http://www.openssl.org/source/openssl-0.9.8a.tar.gz)
# Build and installed following instructions in INSTALL.W32
# Note: If EAP-FAST is included in the build, OpenSSL needs to be patched to
# support it (openssl-tls-extensions.patch)
# Alternatively, see README-Windows.txt for information about binary
# installation package for OpenSSL.
OPENSSLDIR=C:\dev\openssl

CC = cl
OBJDIR = objs

CFLAGS = /DCONFIG_NATIVE_WINDOWS
CFLAGS = $(CFLAGS) /DCONFIG_NDIS_EVENTS_INTEGRATED
CFLAGS = $(CFLAGS) /DCONFIG_ANSI_C_EXTRA
CFLAGS = $(CFLAGS) /DCONFIG_WINPCAP
CFLAGS = $(CFLAGS) /DIEEE8021X_EAPOL
CFLAGS = $(CFLAGS) /DEAP_TLS_FUNCS
CFLAGS = $(CFLAGS) /DPKCS12_FUNCS
CFLAGS = $(CFLAGS) /DEAP_MD5
CFLAGS = $(CFLAGS) /DEAP_TLS
CFLAGS = $(CFLAGS) /DEAP_MSCHAPv2
CFLAGS = $(CFLAGS) /DEAP_PEAP
CFLAGS = $(CFLAGS) /DEAP_TTLS
CFLAGS = $(CFLAGS) /DEAP_GTC
CFLAGS = $(CFLAGS) /DEAP_OTP
CFLAGS = $(CFLAGS) /DEAP_SIM
CFLAGS = $(CFLAGS) /DEAP_LEAP
CFLAGS = $(CFLAGS) /DEAP_PSK
CFLAGS = $(CFLAGS) /DEAP_AKA
#CFLAGS = $(CFLAGS) /DEAP_FAST
CFLAGS = $(CFLAGS) /DEAP_PAX
CFLAGS = $(CFLAGS) /DEAP_TNC
CFLAGS = $(CFLAGS) /DPCSC_FUNCS
CFLAGS = $(CFLAGS) /DCONFIG_CTRL_IFACE
CFLAGS = $(CFLAGS) /DCONFIG_CTRL_IFACE_NAMED_PIPE
CFLAGS = $(CFLAGS) /DCONFIG_DRIVER_NDIS
CFLAGS = $(CFLAGS) /I..\src /I..\src\utils /I..\src\common /I..\src\crypto
CFLAGS = $(CFLAGS) /I..\src\rsn_supp /I..\src\eapol_supp /I.
CFLAGS = $(CFLAGS) /DWIN32
CFLAGS = $(CFLAGS) /Fo$(OBJDIR)\\ /c
CFLAGS = $(CFLAGS) /W3

#CFLAGS = $(CFLAGS) /WX

# VS 2005 complains about lot of deprecated string functions; let's ignore them
# at least for now since snprintf and strncpy can be used in a safe way
CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE

OBJS = \
	$(OBJDIR)\os_win32.obj \
	$(OBJDIR)\eloop_win.obj \
	$(OBJDIR)\sha1.obj \
	$(OBJDIR)\md5.obj \
	$(OBJDIR)\rc4.obj \
	$(OBJDIR)\aes_wrap.obj \
	$(OBJDIR)\common.obj \
	$(OBJDIR)\wpa_debug.obj \
	$(OBJDIR)\wpabuf.obj \
	$(OBJDIR)\wpa_supplicant.obj \
	$(OBJDIR)\wpa.obj \
	$(OBJDIR)\wpa_common.obj \
	$(OBJDIR)\wpa_ie.obj \
	$(OBJDIR)\preauth.obj \
	$(OBJDIR)\pmksa_cache.obj \
	$(OBJDIR)\eapol_supp_sm.obj \
	$(OBJDIR)\eap.obj \
	$(OBJDIR)\eap_common.obj \
	$(OBJDIR)\chap.obj \
	$(OBJDIR)\eap_methods.obj \
	$(OBJDIR)\eap_tlv.obj \
	$(OBJDIR)\eap_md5.obj \
	$(OBJDIR)\eap_tls.obj \
	$(OBJDIR)\eap_tls_common.obj \
	$(OBJDIR)\eap_mschapv2.obj \
	$(OBJDIR)\eap_peap.obj \
	$(OBJDIR)\eap_ttls.obj \
	$(OBJDIR)\eap_gtc.obj \
	$(OBJDIR)\eap_otp.obj \
	$(OBJDIR)\eap_leap.obj \
	$(OBJDIR)\eap_sim.obj \
	$(OBJDIR)\eap_sim_common.obj \
	$(OBJDIR)\eap_aka.obj \
	$(OBJDIR)\eap_pax.obj \
	$(OBJDIR)\eap_pax_common.obj \
	$(OBJDIR)\eap_psk.obj \
	$(OBJDIR)\eap_psk_common.obj \
	$(OBJDIR)\eap_tnc.obj \
	$(OBJDIR)\tncc.obj \
	$(OBJDIR)\base64.obj \
	$(OBJDIR)\ctrl_iface.obj \
	$(OBJDIR)\ctrl_iface_named_pipe.obj \
	$(OBJDIR)\driver_ndis.obj \
	$(OBJDIR)\driver_ndis_.obj \
	$(OBJDIR)\scan_helpers.obj \
	$(OBJDIR)\events.obj \
	$(OBJDIR)\blacklist.obj \
	$(OBJDIR)\scan.obj \
	$(OBJDIR)\wpas_glue.obj \
	$(OBJDIR)\config.obj \
	$(OBJDIR)\l2_packet_winpcap.obj \
	$(OBJDIR)\tls_openssl.obj \
	$(OBJDIR)\ms_funcs.obj \
	$(OBJDIR)\crypto_openssl.obj \
	$(OBJDIR)\pcsc_funcs.obj \
	$(OBJDIR)\ndis_events.obj

# OBJS = $(OBJS) $(OBJDIR)\eap_fast.obj

OBJS_t = $(OBJS) \
	$(OBJDIR)\eapol_test.obj \
	$(OBJDIR)\radius.obj \
	$(OBJDIR)\radius_client.obj \
	$(OBJDIR)\config_file.obj $(OBJDIR)\base64.obj

OBJS_t2 = $(OBJS) \
	$(OBJDIR)\preauth_test.obj \
	$(OBJDIR)\config_file.obj $(OBJDIR)\base64.obj

OBJS2 = $(OBJDIR)\drivers.obj \
	$(OBJDIR)\config_file.obj \
	$(OBJS2) $(OBJDIR)\main.obj

OBJS3 = $(OBJDIR)\drivers.obj \
	$(OBJDIR)\config_winreg.obj \
	$(OBJS3) $(OBJDIR)\main_winsvc.obj

OBJS_c = \
	$(OBJDIR)\os_win32.obj \
	$(OBJDIR)\wpa_cli.obj \
	$(OBJDIR)\wpa_ctrl.obj \
	$(OBJDIR)\common.obj

OBJS_p = \
	$(OBJDIR)\os_win32.obj \
	$(OBJDIR)\common.obj \
	$(OBJDIR)\sha1.obj \
	$(OBJDIR)\md5.obj \
	$(OBJDIR)\crypto_openssl.obj \
	$(OBJDIR)\wpa_passphrase.obj

LIBS = wbemuuid.lib libcmt.lib kernel32.lib uuid.lib ole32.lib oleaut32.lib \
	ws2_32.lib Advapi32.lib Crypt32.lib Winscard.lib \
	Packet.lib wpcap.lib \
	libeay32.lib ssleay32.lib
# If using Win32 OpenSSL binary installation from Shining Light Productions,
# replace the last line with this for dynamic libraries
#	libeay32MT.lib ssleay32MT.lib
# and this for static libraries
#	libeay32MT.lib ssleay32MT.lib Gdi32.lib User32.lib

CFLAGS = $(CFLAGS) /I"$(WINPCAPDIR)/Include" /I"$(OPENSSLDIR)\include"
LFLAGS = /libpath:"$(WINPCAPDIR)\Lib" /libpath:"$(OPENSSLDIR)\lib"

wpa_supplicant.exe: $(OBJDIR) $(OBJS) $(OBJS2)
	link.exe /out:wpa_supplicant.exe $(LFLAGS) $(OBJS) $(OBJS2) $(LIBS)

wpasvc.exe: $(OBJDIR) $(OBJS) $(OBJS3)
	link.exe /out:wpasvc.exe $(LFLAGS) $(OBJS) $(OBJS3) $(LIBS)

wpa_cli.exe: $(OBJDIR) $(OBJS_c)
	link.exe /out:wpa_cli.exe $(LFLAGS) $(OBJS_c) $(LIBS)

wpa_passphrase.exe: $(OBJDIR) $(OBJS_p)
	link.exe /out:wpa_passphrase.exe $(LFLAGS) $(OBJS_p) $(LIBS)

eapol_test.exe: $(OBJDIR) $(OBJS_t)
	link.exe /out:eapol_test.exe $(LFLAGS) $(OBJS_t) $(LIBS)

preauth_test.exe: $(OBJDIR) $(OBJS_t2)
	link.exe /out:preauth_test.exe $(LFLAGS) $(OBJS_t2) $(LIBS)

win_if_list.exe: $(OBJDIR) $(OBJDIR)\win_if_list.obj
	link.exe /out:win_if_list.exe $(LFLAGS) $(OBJDIR)\win_if_list.obj $(LIBS)


{..\src\utils}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\common}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\rsn_supp}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\eapol_supp}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\crypto}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\eap_peer}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\eap_common}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\drivers}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{..\src\l2_packet}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{.\}.c{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

{.\}.cpp{$(OBJDIR)}.obj::
	$(CC) $(CFLAGS) $<

$(OBJDIR):
	if not exist "$(OBJDIR)" mkdir "$(OBJDIR)"

clean:
	erase $(OBJDIR)\*.obj wpa_supplicant.exe
@


