xref: /netbsd-src/external/bsd/wpa/bin/hostapd/Makefile (revision 7330f729ccf0bd976a06f95fad452fe774fc7fd1)
1# $NetBSD: Makefile,v 1.12 2019/01/04 21:22:20 christos Exp $
2
3.include "${.CURDIR}/../Makefile.inc"
4
5
6PROG=	hostapd
7CPPFLAGS+= -Diphdr=ip
8
9# ap
10SRCS+= \
11accounting.c \
12ap_config.c \
13ap_drv_ops.c \
14ap_mlme.c \
15authsrv.c \
16beacon.c \
17bss_load.c \
18ctrl_iface_ap.c \
19drv_callbacks.c \
20eap_user_db.c \
21hostapd.c \
22ieee802_11_auth.c \
23ieee802_11_shared.c \
24ieee802_1x.c \
25neighbor_db.c \
26pmksa_cache_auth.c \
27preauth_auth.c \
28rrm.c \
29sta_info.c \
30tkip_countermeasures.c \
31utils.c \
32vlan_ifconfig.c \
33vlan_init.c \
34vlan.c \
35wpa_auth.c \
36wpa_auth_glue.c \
37wpa_auth_ie.c
38
39# common
40SRCS+= \
41ctrl_iface_common.c \
42hw_features_common.c \
43ieee802_11_common.c \
44wpa_common.c \
45wpa_ctrl.c
46
47# drivers
48SRCS+= \
49driver_bsd.c \
50driver_none.c \
51driver_wired.c \
52driver_wired_common.c \
53driver_common.c \
54drivers.c
55
56# radius
57SRCS+= \
58radius.c \
59radius_das.c \
60radius_client.c \
61radius_server.c
62
63# utils
64SRCS+= \
65base64.c \
66common.c \
67eloop.c \
68ip_addr.c \
69os_unix.c \
70wpa_debug.c \
71wpabuf.c
72
73# main
74SRCS+= \
75main.c \
76config_file.c \
77ctrl_iface.c \
78eap_register.c
79
80# l2_packet
81SRCS+= \
82l2_packet_freebsd.c
83
84# eapol_auth
85SRCS+= \
86eapol_auth_dump.c \
87eapol_auth_sm.c
88
89# eap_server
90SRCS+= \
91eap_common.c \
92eap_server.c \
93eap_server_methods.c
94
95# crypto
96SRCS+= \
97random.c \
98sha1-prf.c
99
100# crypto for non-openssl
101NO_SRCS+= \
102aes-cbc.c \
103aes-wrap.c \
104md5.c
105
106.PATH.c: \
107	${HOSTAPD_DISTDIR} \
108	${WPA_DISTDIR}/src/eap_server \
109	${WPA_DISTDIR}/src/eapol_auth \
110	${WPA_DISTDIR}/src/drivers \
111	${WPA_DISTDIR}/src/radius \
112	${COMMON_PATH}
113
114MAN=	hostapd.8 hostapd.conf.5
115
116CPPFLAGS+= -I${.CURDIR} -I${HOSTAPD_DISTDIR}
117CPPFLAGS+= -DHOSTAPD
118CPPFLAGS+= -DHOSTAPD_DUMP_STATE
119CPPFLAGS+= -DALL_DH_GROUPS
120CPPFLAGS+= -DRADIUS_SERVER
121CPPFLAGS+= -DCONFIG_CTRL_IFACE
122CPPFLAGS+= -DCONFIG_CTRL_IFACE_UNIX
123CPPFLAGS+= -DCONFIG_DRIVER_BSD
124CPPFLAGS+= -DCONFIG_DRIVER_NONE
125CPPFLAGS+= -DCONFIG_DRIVER_WIRED
126CPPFLAGS+= -DCONFIG_DRIVER_WPA
127
128.if ${MKINET6} != "no"
129CPPFLAGS+= -DCONFIG_IPV6
130.endif
131CPPFLAGS+= -DCONFIG_PEERKEY
132CPPFLAGS+= -DCONFIG_RSN_PREAUTH
133
134DPADD+= ${LIBPCAP}
135LDADD+= -lpcap
136
137.if !defined(NO_CRYPT) && !defined(NO_OPENSSL) && !defined(RELEASE_CRUNCH)
138CPPFLAGS+= -DEAP_SERVER
139CPPFLAGS+= -DEAP_SERVER_AKA
140CPPFLAGS+= -DEAP_SERVER_AKA_PRIME
141CPPFLAGS+= -DEAP_SERVER_GPSK
142CPPFLAGS+= -DEAP_SERVER_GPSK_SHA256
143CPPFLAGS+= -DEAP_SERVER_GTC
144CPPFLAGS+= -DEAP_SERVER_IDENTITY
145CPPFLAGS+= -DEAP_SERVER_IKEV2
146CPPFLAGS+= -DEAP_SERVER_MD5
147CPPFLAGS+= -DEAP_SERVER_MSCHAPV2
148CPPFLAGS+= -DEAP_SERVER_PAX
149CPPFLAGS+= -DEAP_SERVER_PEAP
150CPPFLAGS+= -DEAP_SERVER_PSK
151CPPFLAGS+= -DEAP_SERVER_SAKE
152CPPFLAGS+= -DEAP_SERVER_SIM
153CPPFLAGS+= -DEAP_SERVER_TLS
154CPPFLAGS+= -DEAP_SERVER_TNC
155CPPFLAGS+= -DEAP_SERVER_TTLS
156CPPFLAGS+= -DEAP_TLS_FUNCS
157CPPFLAGS+= -DPKCS12_FUNCS
158
159# crypto
160SRCS+= \
161aes-ctr.c \
162aes-eax.c \
163aes-encblock.c \
164aes-omac1.c \
165crypto_openssl.c \
166dh_groups.c \
167fips_prf_openssl.c \
168ms_funcs.c \
169sha1-tlsprf.c \
170sha256.c \
171tls_openssl.c
172
173# eap_common
174SRCS+= \
175chap.c \
176eap_gpsk_common.c \
177eap_ikev2_common.c \
178eap_pax_common.c \
179eap_peap_common.c \
180eap_psk_common.c \
181eap_sake_common.c \
182eap_sim_common.c \
183ikev2_common.c
184
185# eap_server
186SRCS+= \
187eap_server_aka.c \
188eap_server_gpsk.c \
189eap_server_gtc.c \
190eap_server_identity.c \
191eap_server_ikev2.c \
192eap_server_md5.c \
193eap_server_mschapv2.c \
194eap_server_pax.c \
195eap_server_peap.c \
196eap_server_psk.c \
197eap_server_sake.c \
198eap_server_sim.c \
199eap_server_tls.c \
200eap_server_tls_common.c \
201eap_server_tnc.c \
202eap_server_ttls.c \
203eap_sim_db.c \
204ikev2.c \
205tncs.c
206
207
208DPADD+= ${LIBSSL} ${LIBCRYPTO} ${LIBDES}
209LDADD+= -lssl -lcrypto -ldes
210.else
211CPPFLAGS+= -DINTERNAL_AES -DINTERNAL_MD5 -DINTERNAL_SHA1 -DCONFIG_NO_PBKDF2
212CPPFLAGS+= -DCONFIG_CRYPTO_INTERNAL
213SRCS+=  tls_none.c sha1-internal.c md5-internal.c aes-xinternal.c rc4.c
214SRCS+= sha1-pbkdf2.c sha1.c md5.c
215.endif
216
217.include <bsd.prog.mk>
218