1# $NetBSD: Makefile,v 1.11 2023/05/09 21:05:24 christos Exp $
2
3.include "${.CURDIR}/../Makefile.inc"
4
5PROG=	wpa_supplicant
6SRCS= \
7base64.c \
8bitfield.c \
9blacklist.c \
10bss.c \
11common.c \
12config.c \
13config_file.c \
14ctrl_iface.c \
15ctrl_iface_common.c \
16ctrl_iface_unix.c \
17driver_common.c \
18driver_bsd.c \
19driver_wired_common.c \
20driver_wired.c \
21drivers.c \
22eap_common.c \
23eap_methods.c \
24eap_register.c \
25eapol_supp_sm.c \
26eloop.c \
27events.c \
28hw_features_common.c \
29ieee802_11_common.c \
30l2_packet_freebsd.c \
31main.c \
32notify.c \
33op_classes.c \
34os_unix.c \
35pmksa_cache.c \
36preauth.c \
37rrm.c \
38random.c \
39scan.c \
40sha1-prf.c \
41wmm_ac.c \
42wpa.c \
43wpa_common.c \
44wpa_debug.c \
45wpa_ie.c \
46wpa_supplicant.c \
47wpabuf.c \
48wpas_glue.c
49
50
51MAN=	wpa_supplicant.8 wpa_supplicant.conf.5
52
53.PATH.c:  \
54	${WPA_SUPPLICANT_DISTDIR} \
55	${WPA_DISTDIR}/src/drivers \
56	${WPA_DISTDIR}/src/eap_peer \
57	${WPA_DISTDIR}/src/rsn_supp \
58	${COMMON_PATH}
59
60CPPFLAGS+= \
61	-I${WPA_SUPPLICANT_DISTDIR} \
62	-I${WPA_DISTDIR}/src/drivers \
63	-I${WPA_DISTDIR}/src/rsn_supp
64
65CPPFLAGS+=-DCONFIG_BACKEND_FILE
66CPPFLAGS+=-DCONFIG_PEERKEY
67CPPFLAGS+=-DCONFIG_MATCH_IFACE
68CPPFLAGS+=-DCONFIG_DRIVER_BSD
69CPPFLAGS+=-DCONFIG_DRIVER_WIRED
70CPPFLAGS+=-DCONFIG_CTRL_IFACE
71CPPFLAGS+=-DCONFIG_CTRL_IFACE_UNIX
72CPPFLAGS+=-DCONFIG_SMARTCARD
73CPPFLAGS+=-DCONFIG_DEBUG_FILE
74CPPFLAGS+=-DCONFIG_DEBUG_SYSLOG
75
76#CPPFLAGS+=-DCONFIG_FST
77#SRCS+=fst.c \
78#fst_ctrl_aux.c \
79#fst_ctrl_iface.c \
80#fst_group.c \
81#fst_iface.c \
82#fst_session.c
83
84#CPPFLAGS+=-DCONFIG_ACS
85#CPPFLAGS+=-DCONFIG_MBO
86#CPPFLAGS+=-DCONFIG_WNM 
87#CPPFLAGS+=-DCONFIG_AP
88#SRCS+=ap.c \
89#gas.c \
90#mbo.c 
91
92DPADD+=	${LIBPCAP}
93LDADD+=	-lpcap
94
95.if !defined(NO_ENABLE_WPA_SUPPLICANT_EAPOL)
96SRCS+=	eap.c
97CPPFLAGS+= -DIEEE8021X_EAPOL -DPKCS12_FUNCS
98
99.if !defined(NO_CRYPT) && !defined(NO_OPENSSL) && !defined(RELEASE_CRUNCH)
100CPPFLAGS+=-DEAP_TLS
101CPPFLAGS+=-DEAP_PEAP
102CPPFLAGS+=-DEAP_TTLS
103CPPFLAGS+=-DEAP_MD5
104CPPFLAGS+=-DEAP_MSCHAPv2
105CPPFLAGS+=-DEAP_GTC
106CPPFLAGS+=-DEAP_OTP
107CPPFLAGS+=-DEAP_LEAP
108CPPFLAGS+=-DEAP_PSK
109CPPFLAGS+=-DEAP_TLS_OPENSSL
110SRCS+= \
111chap.c \
112crypto_openssl.c \
113eap_gtc.c \
114eap_leap.c \
115eap_md5.c \
116eap_mschapv2.c \
117eap_otp.c \
118eap_peap.c \
119eap_peap_common.c \
120eap_psk.c \
121eap_psk_common.c \
122eap_tls.c \
123eap_tls_common.c \
124eap_ttls.c \
125ms_funcs.c \
126mschapv2.c \
127sha1-tlsprf.c \
128tls_openssl.c
129
130SRCS+=aes-ctr.c \
131aes-eax.c \
132aes-encblock.c \
133aes-omac1.c \
134
135# NB: requires patch to openssl
136#CPPFLAGS+= -DEAP_FAST
137#SRCS+=	eap_fast.c
138
139DPADD+= ${LIBSSL} ${LIBCRYPTO} ${LIBDES}
140LDADD+= -lssl -lcrypto -ldes
141.else
142CPPFLAGS+= -DINTERNAL_AES -DINTERNAL_MD5 -DINTERNAL_SHA1 -DCONFIG_NO_PBKDF2
143SRCS+= tls_none.c sha1-internal.c md5-internal.c aes-xinternal.c rc4.c
144CPPFLAGS+= -DCONFIG_CRYPTO_INTERNAL
145#SRCS+= aes-unwrap.c md5.c
146SRCS+= sha1-pbkdf2.c sha1.c md5.c
147.endif
148
149.endif
150
151COPTS.crypto_openssl.c+= -Wno-error=deprecated-declarations
152COPTS.tls_openssl.c+= -Wno-error=deprecated-declarations
153
154.include <bsd.prog.mk>
155