1*03f9172cSAndroid Build Coastguard Worker##### CLEAR VARS 2*03f9172cSAndroid Build Coastguard Worker 3*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS = 4*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_CFLAGS = 5*03f9172cSAndroid Build Coastguard WorkerDRV_AP_CFLAGS = 6*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS = 7*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_OBJS = 8*03f9172cSAndroid Build Coastguard WorkerDRV_AP_OBJS = 9*03f9172cSAndroid Build Coastguard WorkerDRV_LIBS = 10*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_LIBS = 11*03f9172cSAndroid Build Coastguard WorkerDRV_AP_LIBS = 12*03f9172cSAndroid Build Coastguard Worker 13*03f9172cSAndroid Build Coastguard Worker##### COMMON DRIVERS 14*03f9172cSAndroid Build Coastguard Worker 15*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_WIRED 16*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_WIRED 17*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_wired.o 18*03f9172cSAndroid Build Coastguard WorkerNEED_DRV_WIRED_COMMON=1 19*03f9172cSAndroid Build Coastguard Workerendif 20*03f9172cSAndroid Build Coastguard Worker 21*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_MACSEC_LINUX 22*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_LINUX 23*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_macsec_linux.o 24*03f9172cSAndroid Build Coastguard WorkerNEED_DRV_WIRED_COMMON=1 25*03f9172cSAndroid Build Coastguard WorkerNEED_LIBNL=y 26*03f9172cSAndroid Build Coastguard WorkerCONFIG_LIBNL3_ROUTE=y 27*03f9172cSAndroid Build Coastguard Workerendif 28*03f9172cSAndroid Build Coastguard Worker 29*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_NL80211_BRCM 30*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_NL80211_BRCM 31*03f9172cSAndroid Build Coastguard Workerendif 32*03f9172cSAndroid Build Coastguard Worker 33*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_NL80211_SYNA 34*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_NL80211_SYNA 35*03f9172cSAndroid Build Coastguard Workerendif 36*03f9172cSAndroid Build Coastguard Worker 37*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_MACSEC_QCA 38*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_QCA 39*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_macsec_qca.o 40*03f9172cSAndroid Build Coastguard WorkerNEED_DRV_WIRED_COMMON=1 41*03f9172cSAndroid Build Coastguard Workerendif 42*03f9172cSAndroid Build Coastguard Worker 43*03f9172cSAndroid Build Coastguard Workerifdef NEED_DRV_WIRED_COMMON 44*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_wired_common.o 45*03f9172cSAndroid Build Coastguard Workerendif 46*03f9172cSAndroid Build Coastguard Worker 47*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_NL80211 48*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_NL80211 49*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_nl80211.o 50*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_nl80211_capa.o 51*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_nl80211_event.o 52*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_nl80211_monitor.o 53*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_nl80211_scan.o 54*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_NL80211_QCA 55*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_NL80211_QCA 56*03f9172cSAndroid Build Coastguard Workerendif 57*03f9172cSAndroid Build Coastguard WorkerNEED_SME=y 58*03f9172cSAndroid Build Coastguard WorkerNEED_AP_MLME=y 59*03f9172cSAndroid Build Coastguard WorkerNEED_NETLINK=y 60*03f9172cSAndroid Build Coastguard WorkerNEED_LINUX_IOCTL=y 61*03f9172cSAndroid Build Coastguard WorkerNEED_RFKILL=y 62*03f9172cSAndroid Build Coastguard WorkerNEED_RADIOTAP=y 63*03f9172cSAndroid Build Coastguard WorkerNEED_LIBNL=y 64*03f9172cSAndroid Build Coastguard Workerendif 65*03f9172cSAndroid Build Coastguard Worker 66*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_BSD 67*03f9172cSAndroid Build Coastguard Workerifndef CONFIG_L2_PACKET 68*03f9172cSAndroid Build Coastguard WorkerCONFIG_L2_PACKET=freebsd 69*03f9172cSAndroid Build Coastguard Workerendif 70*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_BSD 71*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_bsd.o 72*03f9172cSAndroid Build Coastguard WorkerCONFIG_L2_FREEBSD=y 73*03f9172cSAndroid Build Coastguard WorkerCONFIG_DNET_PCAP=y 74*03f9172cSAndroid Build Coastguard Workerendif 75*03f9172cSAndroid Build Coastguard Worker 76*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_OPENBSD 77*03f9172cSAndroid Build Coastguard Workerifndef CONFIG_L2_PACKET 78*03f9172cSAndroid Build Coastguard WorkerCONFIG_L2_PACKET=freebsd 79*03f9172cSAndroid Build Coastguard Workerendif 80*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_OPENBSD 81*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_openbsd.o 82*03f9172cSAndroid Build Coastguard Workerendif 83*03f9172cSAndroid Build Coastguard Worker 84*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_NONE 85*03f9172cSAndroid Build Coastguard WorkerDRV_CFLAGS += -DCONFIG_DRIVER_NONE 86*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/driver_none.o 87*03f9172cSAndroid Build Coastguard Workerendif 88*03f9172cSAndroid Build Coastguard Worker 89*03f9172cSAndroid Build Coastguard Worker##### PURE AP DRIVERS 90*03f9172cSAndroid Build Coastguard Worker 91*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_HOSTAP 92*03f9172cSAndroid Build Coastguard WorkerDRV_AP_CFLAGS += -DCONFIG_DRIVER_HOSTAP 93*03f9172cSAndroid Build Coastguard WorkerDRV_AP_OBJS += ../src/drivers/driver_hostap.o 94*03f9172cSAndroid Build Coastguard WorkerCONFIG_WIRELESS_EXTENSION=y 95*03f9172cSAndroid Build Coastguard WorkerNEED_AP_MLME=y 96*03f9172cSAndroid Build Coastguard WorkerNEED_NETLINK=y 97*03f9172cSAndroid Build Coastguard WorkerNEED_LINUX_IOCTL=y 98*03f9172cSAndroid Build Coastguard Workerendif 99*03f9172cSAndroid Build Coastguard Worker 100*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_ATHEROS 101*03f9172cSAndroid Build Coastguard WorkerDRV_AP_CFLAGS += -DCONFIG_DRIVER_ATHEROS 102*03f9172cSAndroid Build Coastguard WorkerDRV_AP_OBJS += ../src/drivers/driver_atheros.o 103*03f9172cSAndroid Build Coastguard WorkerCONFIG_L2_PACKET=linux 104*03f9172cSAndroid Build Coastguard WorkerNEED_NETLINK=y 105*03f9172cSAndroid Build Coastguard WorkerNEED_LINUX_IOCTL=y 106*03f9172cSAndroid Build Coastguard Workerifdef ATH_GCM_SUPPORT 107*03f9172cSAndroid Build Coastguard WorkerCFLAGS += -DATH_GCM_SUPPORT 108*03f9172cSAndroid Build Coastguard Workerendif 109*03f9172cSAndroid Build Coastguard Workerendif 110*03f9172cSAndroid Build Coastguard Worker 111*03f9172cSAndroid Build Coastguard Worker##### PURE CLIENT DRIVERS 112*03f9172cSAndroid Build Coastguard Worker 113*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_WEXT 114*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_CFLAGS += -DCONFIG_DRIVER_WEXT 115*03f9172cSAndroid Build Coastguard WorkerCONFIG_WIRELESS_EXTENSION=y 116*03f9172cSAndroid Build Coastguard WorkerNEED_NETLINK=y 117*03f9172cSAndroid Build Coastguard WorkerNEED_LINUX_IOCTL=y 118*03f9172cSAndroid Build Coastguard WorkerNEED_RFKILL=y 119*03f9172cSAndroid Build Coastguard Workerendif 120*03f9172cSAndroid Build Coastguard Worker 121*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_NDIS 122*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_CFLAGS += -DCONFIG_DRIVER_NDIS 123*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_OBJS += ../src/drivers/driver_ndis.o 124*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_NDIS_EVENTS_INTEGRATED 125*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_OBJS += ../src/drivers/driver_ndis_.o 126*03f9172cSAndroid Build Coastguard Workerendif 127*03f9172cSAndroid Build Coastguard Workerifndef CONFIG_L2_PACKET 128*03f9172cSAndroid Build Coastguard WorkerCONFIG_L2_PACKET=pcap 129*03f9172cSAndroid Build Coastguard Workerendif 130*03f9172cSAndroid Build Coastguard WorkerCONFIG_WINPCAP=y 131*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_USE_NDISUIO 132*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_CFLAGS += -DCONFIG_USE_NDISUIO 133*03f9172cSAndroid Build Coastguard Workerendif 134*03f9172cSAndroid Build Coastguard Workerendif 135*03f9172cSAndroid Build Coastguard Worker 136*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_DRIVER_ROBOSWITCH 137*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH 138*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_OBJS += ../src/drivers/driver_roboswitch.o 139*03f9172cSAndroid Build Coastguard Workerendif 140*03f9172cSAndroid Build Coastguard Worker 141*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_WIRELESS_EXTENSION 142*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_CFLAGS += -DCONFIG_WIRELESS_EXTENSION 143*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_OBJS += ../src/drivers/driver_wext.o 144*03f9172cSAndroid Build Coastguard WorkerNEED_RFKILL=y 145*03f9172cSAndroid Build Coastguard Workerendif 146*03f9172cSAndroid Build Coastguard Worker 147*03f9172cSAndroid Build Coastguard Workerifdef NEED_NETLINK 148*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/netlink.o 149*03f9172cSAndroid Build Coastguard Workerendif 150*03f9172cSAndroid Build Coastguard Worker 151*03f9172cSAndroid Build Coastguard Workerifdef NEED_RFKILL 152*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/rfkill.o 153*03f9172cSAndroid Build Coastguard Workerendif 154*03f9172cSAndroid Build Coastguard Worker 155*03f9172cSAndroid Build Coastguard Workerifdef NEED_RADIOTAP 156*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/utils/radiotap.o 157*03f9172cSAndroid Build Coastguard Workerendif 158*03f9172cSAndroid Build Coastguard Worker 159*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_FULL_DYNAMIC_VLAN 160*03f9172cSAndroid Build Coastguard WorkerNEED_LINUX_IOCTL=y 161*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_VLAN_NETLINK 162*03f9172cSAndroid Build Coastguard WorkerNEED_LIBNL=y 163*03f9172cSAndroid Build Coastguard WorkerCONFIG_LIBNL3_ROUTE=y 164*03f9172cSAndroid Build Coastguard Workerendif 165*03f9172cSAndroid Build Coastguard Workerendif 166*03f9172cSAndroid Build Coastguard Worker 167*03f9172cSAndroid Build Coastguard Workerifdef NEED_LINUX_IOCTL 168*03f9172cSAndroid Build Coastguard WorkerDRV_OBJS += ../src/drivers/linux_ioctl.o 169*03f9172cSAndroid Build Coastguard Workerendif 170*03f9172cSAndroid Build Coastguard Worker 171*03f9172cSAndroid Build Coastguard Workerifdef NEED_LIBNL 172*03f9172cSAndroid Build Coastguard Workerifndef CONFIG_LIBNL32 173*03f9172cSAndroid Build Coastguard Workerifndef CONFIG_LIBNL20 174*03f9172cSAndroid Build Coastguard Workerifndef CONFIG_LIBNL_TINY 175*03f9172cSAndroid Build Coastguard WorkerPKG_CONFIG ?= pkg-config 176*03f9172cSAndroid Build Coastguard WorkerHAVE_LIBNL3 := $(shell $(PKG_CONFIG) --exists libnl-3.0; echo $$?) 177*03f9172cSAndroid Build Coastguard Workerifeq ($(HAVE_LIBNL3),0) 178*03f9172cSAndroid Build Coastguard WorkerCONFIG_LIBNL32=y 179*03f9172cSAndroid Build Coastguard Workerendif 180*03f9172cSAndroid Build Coastguard Workerendif 181*03f9172cSAndroid Build Coastguard Workerendif 182*03f9172cSAndroid Build Coastguard Workerendif 183*03f9172cSAndroid Build Coastguard Worker 184*03f9172cSAndroid Build Coastguard Workerifdef CONFIG_LIBNL32 185*03f9172cSAndroid Build Coastguard Worker DRV_LIBS += -lnl-3 186*03f9172cSAndroid Build Coastguard Worker DRV_LIBS += -lnl-genl-3 187*03f9172cSAndroid Build Coastguard Worker ifdef LIBNL_INC 188*03f9172cSAndroid Build Coastguard Worker DRV_CFLAGS += -I$(LIBNL_INC) 189*03f9172cSAndroid Build Coastguard Worker else 190*03f9172cSAndroid Build Coastguard Worker PKG_CONFIG ?= pkg-config 191*03f9172cSAndroid Build Coastguard Worker DRV_CFLAGS += $(shell $(PKG_CONFIG) --cflags libnl-3.0) 192*03f9172cSAndroid Build Coastguard Worker endif 193*03f9172cSAndroid Build Coastguard Worker ifdef CONFIG_LIBNL3_ROUTE 194*03f9172cSAndroid Build Coastguard Worker DRV_LIBS += -lnl-route-3 195*03f9172cSAndroid Build Coastguard Worker DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE 196*03f9172cSAndroid Build Coastguard Worker endif 197*03f9172cSAndroid Build Coastguard Workerelse 198*03f9172cSAndroid Build Coastguard Worker ifdef CONFIG_LIBNL_TINY 199*03f9172cSAndroid Build Coastguard Worker DRV_LIBS += -lnl-tiny 200*03f9172cSAndroid Build Coastguard Worker else 201*03f9172cSAndroid Build Coastguard Worker ifndef CONFIG_OSX 202*03f9172cSAndroid Build Coastguard Worker DRV_LIBS += -lnl 203*03f9172cSAndroid Build Coastguard Worker DRV_LIBS += -lnl-genl 204*03f9172cSAndroid Build Coastguard Worker endif 205*03f9172cSAndroid Build Coastguard Worker endif 206*03f9172cSAndroid Build Coastguard Workerendif 207*03f9172cSAndroid Build Coastguard Workerendif 208*03f9172cSAndroid Build Coastguard Worker 209*03f9172cSAndroid Build Coastguard Worker##### COMMON VARS 210*03f9172cSAndroid Build Coastguard WorkerDRV_BOTH_CFLAGS := $(DRV_CFLAGS) $(DRV_WPA_CFLAGS) $(DRV_AP_CFLAGS) 211*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_CFLAGS += $(DRV_CFLAGS) 212*03f9172cSAndroid Build Coastguard WorkerDRV_AP_CFLAGS += $(DRV_CFLAGS) 213*03f9172cSAndroid Build Coastguard Worker 214*03f9172cSAndroid Build Coastguard WorkerDRV_BOTH_LIBS := $(DRV_LIBS) $(DRV_WPA_LIBS) $(DRV_AP_LIBS) 215*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_LIBS += $(DRV_LIBS) 216*03f9172cSAndroid Build Coastguard WorkerDRV_AP_LIBS += $(DRV_LIBS) 217*03f9172cSAndroid Build Coastguard Worker 218*03f9172cSAndroid Build Coastguard WorkerDRV_BOTH_OBJS := $(DRV_OBJS) $(DRV_WPA_OBJS) $(DRV_AP_OBJS) 219*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_OBJS += $(DRV_OBJS) 220*03f9172cSAndroid Build Coastguard WorkerDRV_AP_OBJS += $(DRV_OBJS) 221*03f9172cSAndroid Build Coastguard Worker 222*03f9172cSAndroid Build Coastguard WorkerDRV_BOTH_LDFLAGS := $(DRV_LDFLAGS) $(DRV_WPA_LDFLAGS) $(DRV_AP_LDFLAGS) 223*03f9172cSAndroid Build Coastguard WorkerDRV_WPA_LDFLAGS += $(DRV_LDFLAGS) 224*03f9172cSAndroid Build Coastguard WorkerDRV_AP_LDFLAGS += $(DRV_LDFLAGS) 225