1 ##### CLEAR VARS 2 3 DRV_CFLAGS = 4 DRV_WPA_CFLAGS = 5 DRV_AP_CFLAGS = 6 DRV_OBJS = 7 DRV_WPA_OBJS = 8 DRV_AP_OBJS = 9 DRV_LIBS = 10 DRV_WPA_LIBS = 11 DRV_AP_LIBS = 12 13 ##### COMMON DRIVERS 14 15 ifdef CONFIG_DRIVER_WIRED 16 DRV_CFLAGS += -DCONFIG_DRIVER_WIRED 17 DRV_OBJS += src/drivers/driver_wired.c 18 endif 19 20 ifdef CONFIG_DRIVER_NL80211 21 DRV_CFLAGS += -DCONFIG_DRIVER_NL80211 22 DRV_OBJS += src/drivers/driver_nl80211.c 23 DRV_OBJS += src/utils/radiotap.c 24 NEED_SME=y 25 NEED_AP_MLME=y 26 NEED_NETLINK=y 27 NEED_LINUX_IOCTL=y 28 NEED_RFKILL=y 29 30 ifdef CONFIG_LIBNL32 31 DRV_LIBS += -lnl-3 32 DRV_LIBS += -lnl-genl-3 33 DRV_CFLAGS += -DCONFIG_LIBNL20 34 else 35 ifdef CONFIG_LIBNL_TINY 36 DRV_LIBS += -lnl-tiny 37 else 38 DRV_LIBS += -lnl 39 endif 40 41 ifdef CONFIG_LIBNL20 42 DRV_LIBS += -lnl-genl 43 DRV_CFLAGS += -DCONFIG_LIBNL20 44 endif 45 endif 46 endif 47 48 ifdef CONFIG_DRIVER_BSD 49 ifndef CONFIG_L2_PACKET 50 CONFIG_L2_PACKET=freebsd 51 endif 52 DRV_CFLAGS += -DCONFIG_DRIVER_BSD 53 DRV_OBJS += src/drivers/driver_bsd.c 54 CONFIG_L2_FREEBSD=y 55 CONFIG_DNET_PCAP=y 56 endif 57 58 ifdef CONFIG_DRIVER_TEST 59 DRV_CFLAGS += -DCONFIG_DRIVER_TEST 60 DRV_OBJS += src/drivers/driver_test.c 61 NEED_AP_MLME=y 62 endif 63 64 ifdef CONFIG_DRIVER_NONE 65 DRV_CFLAGS += -DCONFIG_DRIVER_NONE 66 DRV_OBJS += src/drivers/driver_none.c 67 endif 68 69 ##### PURE AP DRIVERS 70 71 ifdef CONFIG_DRIVER_HOSTAP 72 DRV_AP_CFLAGS += -DCONFIG_DRIVER_HOSTAP 73 DRV_AP_OBJS += src/drivers/driver_hostap.c 74 CONFIG_WIRELESS_EXTENSION=y 75 NEED_AP_MLME=y 76 NEED_NETLINK=y 77 NEED_LINUX_IOCTL=y 78 endif 79 80 ifdef CONFIG_DRIVER_MADWIFI 81 DRV_AP_CFLAGS += -DCONFIG_DRIVER_MADWIFI 82 DRV_AP_OBJS += src/drivers/driver_madwifi.c 83 CONFIG_WIRELESS_EXTENSION=y 84 CONFIG_L2_PACKET=linux 85 NEED_NETLINK=y 86 NEED_LINUX_IOCTL=y 87 endif 88 89 ifdef CONFIG_DRIVER_ATHEROS 90 DRV_AP_CFLAGS += -DCONFIG_DRIVER_ATHEROS 91 DRV_AP_OBJS += src/drivers/driver_atheros.c 92 CONFIG_L2_PACKET=linux 93 NEED_NETLINK=y 94 NEED_LINUX_IOCTL=y 95 endif 96 97 ##### PURE CLIENT DRIVERS 98 99 ifdef CONFIG_DRIVER_WEXT 100 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_WEXT 101 CONFIG_WIRELESS_EXTENSION=y 102 NEED_NETLINK=y 103 NEED_LINUX_IOCTL=y 104 NEED_RFKILL=y 105 endif 106 107 ifdef CONFIG_DRIVER_NDIS 108 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_NDIS 109 DRV_WPA_OBJS += src/drivers/driver_ndis.c 110 ifdef CONFIG_NDIS_EVENTS_INTEGRATED 111 DRV_WPA_OBJS += src/drivers/driver_ndis_.c 112 endif 113 ifndef CONFIG_L2_PACKET 114 CONFIG_L2_PACKET=pcap 115 endif 116 CONFIG_WINPCAP=y 117 ifdef CONFIG_USE_NDISUIO 118 DRV_WPA_CFLAGS += -DCONFIG_USE_NDISUIO 119 endif 120 endif 121 122 ifdef CONFIG_DRIVER_ROBOSWITCH 123 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH 124 DRV_WPA_OBJS += src/drivers/driver_roboswitch.c 125 endif 126 127 ifdef CONFIG_WIRELESS_EXTENSION 128 DRV_WPA_CFLAGS += -DCONFIG_WIRELESS_EXTENSION 129 DRV_WPA_OBJS += src/drivers/driver_wext.c 130 NEED_RFKILL=y 131 endif 132 133 ifdef NEED_NETLINK 134 DRV_OBJS += src/drivers/netlink.c 135 endif 136 137 ifdef NEED_LINUX_IOCTL 138 DRV_OBJS += src/drivers/linux_ioctl.c 139 endif 140 141 ifdef NEED_RFKILL 142 DRV_OBJS += src/drivers/rfkill.c 143 endif 144 145 ifdef CONFIG_DRIVER_CUSTOM 146 DRV_CFLAGS += -DCONFIG_DRIVER_CUSTOM 147 endif 148 149 ##### COMMON VARS 150 DRV_BOTH_CFLAGS := $(DRV_CFLAGS) $(DRV_WPA_CFLAGS) $(DRV_AP_CFLAGS) 151 DRV_WPA_CFLAGS += $(DRV_CFLAGS) 152 DRV_AP_CFLAGS += $(DRV_CFLAGS) 153 154 DRV_BOTH_LIBS := $(DRV_LIBS) $(DRV_WPA_LIBS) $(DRV_AP_LIBS) 155 DRV_WPA_LIBS += $(DRV_LIBS) 156 DRV_AP_LIBS += $(DRV_LIBS) 157 158 DRV_BOTH_OBJS := $(DRV_OBJS) $(DRV_WPA_OBJS) $(DRV_AP_OBJS) 159 DRV_WPA_OBJS += $(DRV_OBJS) 160 DRV_AP_OBJS += $(DRV_OBJS) 161 162 DRV_BOTH_LDFLAGS := $(DRV_LDFLAGS) $(DRV_WPA_LDFLAGS) $(DRV_AP_LDFLAGS) 163 DRV_WPA_LDFLAGS += $(DRV_LDFLAGS) 164 DRV_AP_LDFLAGS += $(DRV_LDFLAGS) 165