drivers.mak 4.0 KB

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