Home | History | Annotate | Download | only in drivers
      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.o
     18 NEED_DRV_WIRED_COMMON=1
     19 endif
     20 
     21 ifdef CONFIG_DRIVER_MACSEC_LINUX
     22 DRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_LINUX
     23 DRV_OBJS += ../src/drivers/driver_macsec_linux.o
     24 NEED_DRV_WIRED_COMMON=1
     25 CONFIG_LIBNL3_ROUTE=y
     26 endif
     27 
     28 ifdef CONFIG_DRIVER_MACSEC_QCA
     29 DRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_QCA
     30 DRV_OBJS += ../src/drivers/driver_macsec_qca.o
     31 NEED_DRV_WIRED_COMMON=1
     32 endif
     33 
     34 ifdef NEED_DRV_WIRED_COMMON
     35 DRV_OBJS += ../src/drivers/driver_wired_common.o
     36 endif
     37 
     38 ifdef CONFIG_DRIVER_NL80211
     39 DRV_CFLAGS += -DCONFIG_DRIVER_NL80211
     40 DRV_OBJS += ../src/drivers/driver_nl80211.o
     41 DRV_OBJS += ../src/drivers/driver_nl80211_capa.o
     42 DRV_OBJS += ../src/drivers/driver_nl80211_event.o
     43 DRV_OBJS += ../src/drivers/driver_nl80211_monitor.o
     44 DRV_OBJS += ../src/drivers/driver_nl80211_scan.o
     45 ifdef CONFIG_DRIVER_NL80211_QCA
     46 DRV_CFLAGS += -DCONFIG_DRIVER_NL80211_QCA
     47 endif
     48 NEED_SME=y
     49 NEED_AP_MLME=y
     50 NEED_NETLINK=y
     51 NEED_LINUX_IOCTL=y
     52 NEED_RFKILL=y
     53 NEED_RADIOTAP=y
     54 
     55 ifdef CONFIG_LIBNL32
     56   DRV_LIBS += -lnl-3
     57   DRV_LIBS += -lnl-genl-3
     58   DRV_CFLAGS += -DCONFIG_LIBNL20
     59   ifdef LIBNL_INC
     60     DRV_CFLAGS += -I$(LIBNL_INC)
     61   else
     62     PKG_CONFIG ?= pkg-config
     63     DRV_CFLAGS += $(shell $(PKG_CONFIG) --cflags libnl-3.0)
     64   endif
     65 ifdef CONFIG_LIBNL3_ROUTE
     66   DRV_LIBS += -lnl-route-3
     67   DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE
     68 endif
     69 else
     70   ifdef CONFIG_LIBNL_TINY
     71     DRV_LIBS += -lnl-tiny
     72   else
     73     ifndef CONFIG_OSX
     74       DRV_LIBS += -lnl
     75     endif
     76   endif
     77 
     78   ifdef CONFIG_LIBNL20
     79     ifndef CONFIG_LIBNL_TINY
     80       DRV_LIBS += -lnl-genl
     81     endif
     82     DRV_CFLAGS += -DCONFIG_LIBNL20
     83   endif
     84 endif
     85 endif
     86 
     87 ifdef CONFIG_DRIVER_BSD
     88 ifndef CONFIG_L2_PACKET
     89 CONFIG_L2_PACKET=freebsd
     90 endif
     91 DRV_CFLAGS += -DCONFIG_DRIVER_BSD
     92 DRV_OBJS += ../src/drivers/driver_bsd.o
     93 CONFIG_L2_FREEBSD=y
     94 CONFIG_DNET_PCAP=y
     95 endif
     96 
     97 ifdef CONFIG_DRIVER_OPENBSD
     98 ifndef CONFIG_L2_PACKET
     99 CONFIG_L2_PACKET=freebsd
    100 endif
    101 DRV_CFLAGS += -DCONFIG_DRIVER_OPENBSD
    102 DRV_OBJS += ../src/drivers/driver_openbsd.o
    103 endif
    104 
    105 ifdef CONFIG_DRIVER_NONE
    106 DRV_CFLAGS += -DCONFIG_DRIVER_NONE
    107 DRV_OBJS += ../src/drivers/driver_none.o
    108 endif
    109 
    110 ##### PURE AP DRIVERS
    111 
    112 ifdef CONFIG_DRIVER_HOSTAP
    113 DRV_AP_CFLAGS += -DCONFIG_DRIVER_HOSTAP
    114 DRV_AP_OBJS += ../src/drivers/driver_hostap.o
    115 CONFIG_WIRELESS_EXTENSION=y
    116 NEED_AP_MLME=y
    117 NEED_NETLINK=y
    118 NEED_LINUX_IOCTL=y
    119 endif
    120 
    121 ifdef CONFIG_DRIVER_ATHEROS
    122 DRV_AP_CFLAGS += -DCONFIG_DRIVER_ATHEROS
    123 DRV_AP_OBJS += ../src/drivers/driver_atheros.o
    124 CONFIG_L2_PACKET=linux
    125 NEED_NETLINK=y
    126 NEED_LINUX_IOCTL=y
    127 ifdef ATH_GCM_SUPPORT
    128 CFLAGS += -DATH_GCM_SUPPORT
    129 endif
    130 endif
    131 
    132 ##### PURE CLIENT DRIVERS
    133 
    134 ifdef CONFIG_DRIVER_WEXT
    135 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_WEXT
    136 CONFIG_WIRELESS_EXTENSION=y
    137 NEED_NETLINK=y
    138 NEED_LINUX_IOCTL=y
    139 NEED_RFKILL=y
    140 endif
    141 
    142 ifdef CONFIG_DRIVER_NDIS
    143 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_NDIS
    144 DRV_WPA_OBJS += ../src/drivers/driver_ndis.o
    145 ifdef CONFIG_NDIS_EVENTS_INTEGRATED
    146 DRV_WPA_OBJS += ../src/drivers/driver_ndis_.o
    147 endif
    148 ifndef CONFIG_L2_PACKET
    149 CONFIG_L2_PACKET=pcap
    150 endif
    151 CONFIG_WINPCAP=y
    152 ifdef CONFIG_USE_NDISUIO
    153 DRV_WPA_CFLAGS += -DCONFIG_USE_NDISUIO
    154 endif
    155 endif
    156 
    157 ifdef CONFIG_DRIVER_ROBOSWITCH
    158 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH
    159 DRV_WPA_OBJS += ../src/drivers/driver_roboswitch.o
    160 endif
    161 
    162 ifdef CONFIG_WIRELESS_EXTENSION
    163 DRV_WPA_CFLAGS += -DCONFIG_WIRELESS_EXTENSION
    164 DRV_WPA_OBJS += ../src/drivers/driver_wext.o
    165 NEED_RFKILL=y
    166 endif
    167 
    168 ifdef NEED_NETLINK
    169 DRV_OBJS += ../src/drivers/netlink.o
    170 endif
    171 
    172 ifdef NEED_LINUX_IOCTL
    173 DRV_OBJS += ../src/drivers/linux_ioctl.o
    174 endif
    175 
    176 ifdef NEED_RFKILL
    177 DRV_OBJS += ../src/drivers/rfkill.o
    178 endif
    179 
    180 ifdef NEED_RADIOTAP
    181 DRV_OBJS += ../src/utils/radiotap.o
    182 endif
    183 
    184 ifdef CONFIG_VLAN_NETLINK
    185 ifdef CONFIG_FULL_DYNAMIC_VLAN
    186 ifdef CONFIG_LIBNL32
    187   DRV_LIBS += -lnl-3
    188   DRV_LIBS += -lnl-genl-3
    189   DRV_LIBS += -lnl-route-3
    190   DRV_CFLAGS += -DCONFIG_LIBNL20
    191 else
    192   ifdef CONFIG_LIBNL_TINY
    193     DRV_LIBS += -lnl-tiny
    194   else
    195     DRV_LIBS += -lnl
    196   endif
    197 
    198   ifdef CONFIG_LIBNL20
    199     DRV_LIBS += -lnl-genl
    200     DRV_LIBS += -lnl-route
    201     DRV_CFLAGS += -DCONFIG_LIBNL20
    202   endif
    203 endif
    204 endif
    205 endif
    206 
    207 ##### COMMON VARS
    208 DRV_BOTH_CFLAGS := $(DRV_CFLAGS) $(DRV_WPA_CFLAGS) $(DRV_AP_CFLAGS)
    209 DRV_WPA_CFLAGS += $(DRV_CFLAGS)
    210 DRV_AP_CFLAGS += $(DRV_CFLAGS)
    211 
    212 DRV_BOTH_LIBS := $(DRV_LIBS) $(DRV_WPA_LIBS) $(DRV_AP_LIBS)
    213 DRV_WPA_LIBS += $(DRV_LIBS)
    214 DRV_AP_LIBS += $(DRV_LIBS)
    215 
    216 DRV_BOTH_OBJS := $(DRV_OBJS) $(DRV_WPA_OBJS) $(DRV_AP_OBJS)
    217 DRV_WPA_OBJS += $(DRV_OBJS)
    218 DRV_AP_OBJS += $(DRV_OBJS)
    219 
    220 DRV_BOTH_LDFLAGS := $(DRV_LDFLAGS) $(DRV_WPA_LDFLAGS) $(DRV_AP_LDFLAGS)
    221 DRV_WPA_LDFLAGS += $(DRV_LDFLAGS)
    222 DRV_AP_LDFLAGS += $(DRV_LDFLAGS)
    223