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