Makefile revision 1.14
1# $NetBSD: Makefile,v 1.14 2020/09/06 07:20:26 mrg 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_DEBUG_SYSLOG
124CPPFLAGS+= -DCONFIG_DRIVER_BSD
125CPPFLAGS+= -DCONFIG_DRIVER_NONE
126CPPFLAGS+= -DCONFIG_DRIVER_WIRED
127CPPFLAGS+= -DCONFIG_DRIVER_WPA
128
129.if ${MKINET6} != "no"
130CPPFLAGS+= -DCONFIG_IPV6
131.endif
132CPPFLAGS+= -DCONFIG_PEERKEY
133CPPFLAGS+= -DCONFIG_RSN_PREAUTH
134
135DPADD+= ${LIBPCAP}
136LDADD+= -lpcap
137
138.if !defined(NO_CRYPT) && !defined(NO_OPENSSL) && !defined(RELEASE_CRUNCH)
139CPPFLAGS+= -DEAP_SERVER
140CPPFLAGS+= -DEAP_SERVER_AKA
141CPPFLAGS+= -DEAP_SERVER_AKA_PRIME
142CPPFLAGS+= -DEAP_SERVER_GPSK
143CPPFLAGS+= -DEAP_SERVER_GPSK_SHA256
144CPPFLAGS+= -DEAP_SERVER_GTC
145CPPFLAGS+= -DEAP_SERVER_IDENTITY
146CPPFLAGS+= -DEAP_SERVER_IKEV2
147CPPFLAGS+= -DEAP_SERVER_MD5
148CPPFLAGS+= -DEAP_SERVER_MSCHAPV2
149CPPFLAGS+= -DEAP_SERVER_PAX
150CPPFLAGS+= -DEAP_SERVER_PEAP
151CPPFLAGS+= -DEAP_SERVER_PSK
152CPPFLAGS+= -DEAP_SERVER_SAKE
153CPPFLAGS+= -DEAP_SERVER_SIM
154CPPFLAGS+= -DEAP_SERVER_TLS
155CPPFLAGS+= -DEAP_SERVER_TNC
156CPPFLAGS+= -DEAP_SERVER_TTLS
157CPPFLAGS+= -DEAP_TLS_FUNCS
158CPPFLAGS+= -DPKCS12_FUNCS
159
160# crypto
161SRCS+= \
162aes-ctr.c \
163aes-eax.c \
164aes-encblock.c \
165aes-omac1.c \
166crypto_openssl.c \
167dh_groups.c \
168fips_prf_openssl.c \
169ms_funcs.c \
170sha1-tlsprf.c \
171sha256.c \
172tls_openssl.c
173
174# eap_common
175SRCS+= \
176chap.c \
177eap_gpsk_common.c \
178eap_ikev2_common.c \
179eap_pax_common.c \
180eap_peap_common.c \
181eap_psk_common.c \
182eap_sake_common.c \
183eap_sim_common.c \
184ikev2_common.c
185
186# eap_server
187SRCS+= \
188eap_server_aka.c \
189eap_server_gpsk.c \
190eap_server_gtc.c \
191eap_server_identity.c \
192eap_server_ikev2.c \
193eap_server_md5.c \
194eap_server_mschapv2.c \
195eap_server_pax.c \
196eap_server_peap.c \
197eap_server_psk.c \
198eap_server_sake.c \
199eap_server_sim.c \
200eap_server_tls.c \
201eap_server_tls_common.c \
202eap_server_tnc.c \
203eap_server_ttls.c \
204eap_sim_db.c \
205ikev2.c \
206tncs.c
207
208
209DPADD+= ${LIBSSL} ${LIBCRYPTO} ${LIBDES}
210LDADD+= -lssl -lcrypto -ldes
211.else
212CPPFLAGS+= -DINTERNAL_AES -DINTERNAL_MD5 -DINTERNAL_SHA1 -DCONFIG_NO_PBKDF2
213CPPFLAGS+= -DCONFIG_CRYPTO_INTERNAL
214SRCS+=  tls_none.c sha1-internal.c md5-internal.c aes-xinternal.c rc4.c
215SRCS+= sha1-pbkdf2.c sha1.c md5.c
216.endif
217
218CWARNFLAGS.gcc+=	${GCC_NO_ADDR_OF_PACKED_MEMBER}
219
220.include <bsd.prog.mk>
221