1# $FreeBSD$
2
3.include "${.CURDIR}/../Makefile.inc"
4
5.PATH.c:${HOSTAPD_DISTDIR} \
6	${WPA_DISTDIR}/src/drivers
7
8PROG=	hostapd
9SRCS=	accounting.c \
10	aes-wrap.c \
11	ap_config.c \
12	ap_drv_ops.c \
13	ap_mlme.c \
14	authsrv.c \
15	base64.c \
16	chap.c \
17	common.c \
18	config_file.c \
19	ctrl_iface.c \
20	ctrl_iface_ap.c \
21	drivers.c \
22	drv_callbacks.c \
23	eap_common.c \
24	eap_peap_common.c \
25	eap_register.c \
26	eapol_auth_dump.c \
27	eapol_auth_sm.c \
28	eap_server.c \
29	eap_server_methods.c \
30	eloop.c \
31	hostapd.c \
32	ieee802_11_auth.c \
33	ieee802_11_common.c \
34	ieee802_1x.c \
35	ip_addr.c \
36	main.c \
37	md5.c \
38	ms_funcs.c \
39	os_unix.c \
40	peerkey_auth.c \
41	pmksa_cache_auth.c \
42	preauth_auth.c \
43	radius.c \
44	radius_client.c \
45	sha1-pbkdf2.c \
46	sha1.c \
47	sta_info.c \
48	tkip_countermeasures.c \
49	utils.c \
50	vlan_init.c \
51	wpa_auth.c \
52	wpa_auth_glue.c \
53	wpa_auth_ie.c \
54	wpa_common.c \
55	wpa_debug.c \
56	wpabuf.c
57SRCS+=	l2_packet_freebsd.c driver_freebsd.c
58
59MAN=	hostapd.8 hostapd.conf.5
60
61.if ${MK_EXAMPLES} != "no"
62FILESDIR= ${SHAREDIR}/examples/hostapd
63.PATH:	${HOSTAPD_DISTDIR}
64FILES=	hostapd.conf hostapd.eap_user hostapd.wpa_psk
65.endif
66
67CFLAGS+=-DCONFIG_DRIVER_BSD \
68	-DHOSTAPD \
69	-DCONFIG_DRIVER_RADIUS_ACL \
70	-DCONFIG_RSN_PREAUTH \
71	-DCONFIG_PEERKEY
72.if ${MK_INET6} != "no"
73CFLAGS+= -DCONFIG_IPV6
74.endif
75#CFLAGS+= -g
76DPADD+=	${LIBPCAP}
77LDADD+=	-lpcap
78
79# User customizations for wpa_supplicant/hostapd build environment
80CFLAGS+=${HOSTAPD_CFLAGS}
81#DPADD+=${HOSTAPD_DPADD}
82LDADD+=${HOSTAPD_LDADD}
83#LDFLAGS+=${HOSTAPD_LDFLAGS}
84
85CFLAGS+=-DDPKCS12_FUNCS \
86	-DEAP_SERVER \
87	-DEAP_SERVER_GTC \
88	-DEAP_SERVER_IDENTITY \
89	-DEAP_SERVER_MD5 \
90	-DEAP_SERVER_MSCHAPV2 \
91	-DEAP_SERVER_PEAP \
92	-DEAP_SERVER_TLS \
93	-DEAP_SERVER_TTLS \
94	-DEAP_TLS_FUNCS \
95	-DCONFIG_NO_DUMP_STATE
96SRCS+=	dump_state.c \
97	eap_server_gtc.c \
98	eap_server_identity.c \
99	eap_server_md5.c \
100	eap_server_mschapv2.c \
101	eap_server_peap.c \
102	eap_server_tls.c \
103	eap_server_tls_common.c \
104	eap_server_ttls.c
105TLS_FUNCS=y
106NEED_SHA256=y
107
108.if !empty(CFLAGS:M*-DEAP_SERVER_AKA)
109SRCS+=	eap_server_aka.c
110NEED_SIM_COMMON=y
111.endif
112
113.if !empty(CFLAGS:M*-DEAP_SERVER_SIM)
114SRCS+=	eap_server_sim.c
115NEED_SIM_COMMON=y
116.endif
117
118.if defined(NEED_SIM_COMMON)
119SRCS+=	eap_sim_common.c \
120	eap_sim_db.c
121NEED_AES_CBC=y
122NEED_FIPS186_2_PRF=y
123.endif
124
125.if !empty(CFLAGS:M*-DEAP_SERVER_GPSK)
126CFLAGS+=-DEAP_GPSK_SHA256
127SRCS+=	eap_server_gpsk.c \
128	eap_gpsk_common.c
129NEED_AES_OMAC1=y
130.endif
131
132.if !empty(CFLAGS:M*-DEAP_SERVER_PAX)
133SRCS+=	eap_server_pax.c \
134	eap_pax_common.c
135.endif
136
137.if !empty(CFLAGS:M*-DEAP_SERVER_SAKE)
138SRCS+=	eap_server_sake.c \
139	eap_sake_common.c
140.endif
141
142.include "${.CURDIR}/../Makefile.crypto"
143
144.include <bsd.prog.mk>
145