wireshark.mk 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. ################################################################################
  2. #
  3. # wireshark
  4. #
  5. ################################################################################
  6. WIRESHARK_VERSION = 4.0.17
  7. WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.xz
  8. WIRESHARK_SITE = https://www.wireshark.org/download/src/all-versions
  9. WIRESHARK_LICENSE = wireshark license
  10. WIRESHARK_LICENSE_FILES = COPYING README.md
  11. WIRESHARK_CPE_ID_VENDOR = wireshark
  12. WIRESHARK_SELINUX_MODULES = wireshark
  13. WIRESHARK_DEPENDENCIES = \
  14. c-ares \
  15. host-pkgconf \
  16. host-python3 \
  17. libgcrypt \
  18. libglib2 \
  19. libpcap \
  20. pcre2 \
  21. speexdsp
  22. WIRESHARK_CONF_OPTS = \
  23. -DENABLE_ILBC=OFF \
  24. -DENABLE_PCAP=ON \
  25. -DENABLE_SMI=OFF \
  26. -DENABLE_WERROR=OFF \
  27. -DHAVE_C99_VSNPRINTF=ON \
  28. -DLEMON_C_COMPILER=$(HOSTCC_NOCCACHE)
  29. ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
  30. WIRESHARK_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-latomic
  31. endif
  32. ifeq ($(BR2_ENABLE_LTO),y)
  33. WIRESHARK_CONF_OPTS += -DENABLE_LTO=ON
  34. else
  35. WIRESHARK_CONF_OPTS += -DENABLE_LTO=OFF
  36. endif
  37. ifeq ($(BR2_PACKAGE_WIRESHARK_GUI),y)
  38. WIRESHARK_CONF_OPTS += -DBUILD_wireshark=ON
  39. WIRESHARK_DEPENDENCIES += qt5base qt5multimedia qt5svg qt5tools
  40. else
  41. WIRESHARK_CONF_OPTS += -DBUILD_wireshark=OFF
  42. endif
  43. ifeq ($(BR2_PACKAGE_BCG729),y)
  44. WIRESHARK_CONF_OPTS += -DENABLE_BCG729=ON
  45. WIRESHARK_DEPENDENCIES += bcg729
  46. else
  47. WIRESHARK_CONF_OPTS += -DENABLE_BCG729=OFF
  48. endif
  49. ifeq ($(BR2_PACKAGE_BROTLI),y)
  50. WIRESHARK_CONF_OPTS += -DENABLE_BROTLI=ON
  51. WIRESHARK_DEPENDENCIES += brotli
  52. else
  53. WIRESHARK_CONF_OPTS += -DENABLE_BROTLI=OFF
  54. endif
  55. ifeq ($(BR2_PACKAGE_GNUTLS),y)
  56. WIRESHARK_CONF_OPTS += -DENABLE_GNUTLS=ON
  57. WIRESHARK_DEPENDENCIES += gnutls
  58. else
  59. WIRESHARK_CONF_OPTS += -DENABLE_GNUTLS=OFF
  60. endif
  61. ifeq ($(BR2_PACKAGE_LIBCAP),y)
  62. WIRESHARK_CONF_OPTS += -DENABLE_CAP=ON
  63. WIRESHARK_DEPENDENCIES += libcap
  64. else
  65. WIRESHARK_CONF_OPTS += -DENABLE_CAP=OFF
  66. endif
  67. ifeq ($(BR2_PACKAGE_LIBKRB5),y)
  68. WIRESHARK_CONF_OPTS += -DENABLE_KERBEROS=ON
  69. WIRESHARK_DEPENDENCIES += libkrb5
  70. else
  71. WIRESHARK_CONF_OPTS += -DENABLE_KERBEROS=OFF
  72. endif
  73. ifeq ($(BR2_PACKAGE_LIBMAXMINDDB),y)
  74. WIRESHARK_CONF_OPTS += -DBUILD_mmdbresolve=ON
  75. WIRESHARK_DEPENDENCIES += libmaxminddb
  76. else
  77. WIRESHARK_CONF_OPTS += -DBUILD_mmdbresolve=OFF
  78. endif
  79. ifeq ($(BR2_PACKAGE_LIBNL),y)
  80. WIRESHARK_CONF_OPTS += -DENABLE_NETLINK=ON
  81. WIRESHARK_DEPENDENCIES += libnl
  82. else
  83. WIRESHARK_CONF_OPTS += -DENABLE_NETLINK=OFF
  84. endif
  85. ifeq ($(BR2_PACKAGE_LIBSSH),y)
  86. WIRESHARK_CONF_OPTS += -DENABLE_LIBSSH=ON
  87. WIRESHARK_DEPENDENCIES += libssh
  88. else
  89. WIRESHARK_CONF_OPTS += -DENABLE_LIBSSH=OFF
  90. endif
  91. ifeq ($(BR2_PACKAGE_LIBXML2),y)
  92. WIRESHARK_CONF_OPTS += -DENABLE_LIBXML2=ON
  93. WIRESHARK_DEPENDENCIES += libxml2
  94. else
  95. WIRESHARK_CONF_OPTS += -DENABLE_LIBXML2=OFF
  96. endif
  97. # no support for lua53 yet
  98. ifeq ($(BR2_PACKAGE_LUA_5_1),y)
  99. WIRESHARK_CONF_OPTS += -DENABLE_LUA=ON
  100. WIRESHARK_DEPENDENCIES += lua
  101. else
  102. WIRESHARK_CONF_OPTS += -DENABLE_LUA=OFF
  103. endif
  104. ifeq ($(BR2_PACKAGE_LZ4),y)
  105. WIRESHARK_CONF_OPTS += -DENABLE_LZ4=ON
  106. WIRESHARK_DEPENDENCIES += lz4
  107. else
  108. WIRESHARK_CONF_OPTS += -DENABLE_LZ4=OFF
  109. endif
  110. ifeq ($(BR2_PACKAGE_MINIZIP_ZLIB),y)
  111. WIRESHARK_CONF_OPTS += -DENABLE_MINIZIP=ON
  112. WIRESHARK_DEPENDENCIES += minizip-zlib
  113. else
  114. WIRESHARK_CONF_OPTS += -DENABLE_MINIZIP=OFF
  115. endif
  116. ifeq ($(BR2_PACKAGE_NGHTTP2),y)
  117. WIRESHARK_CONF_OPTS += -DENABLE_NGHTTP2=ON
  118. WIRESHARK_DEPENDENCIES += nghttp2
  119. else
  120. WIRESHARK_CONF_OPTS += -DENABLE_NGHTTP2=OFF
  121. endif
  122. ifeq ($(BR2_PACKAGE_OPUS),y)
  123. WIRESHARK_CONF_OPTS += -DENABLE_OPUS=ON
  124. WIRESHARK_DEPENDENCIES += opus
  125. else
  126. WIRESHARK_CONF_OPTS += -DENABLE_OPUS=OFF
  127. endif
  128. ifeq ($(BR2_PACKAGE_SBC),y)
  129. WIRESHARK_CONF_OPTS += -DENABLE_SBC=ON
  130. WIRESHARK_DEPENDENCIES += sbc
  131. else
  132. WIRESHARK_CONF_OPTS += -DENABLE_SBC=OFF
  133. endif
  134. ifeq ($(BR2_PACKAGE_SNAPPY),y)
  135. WIRESHARK_CONF_OPTS += -DENABLE_SNAPPY=ON
  136. WIRESHARK_DEPENDENCIES += snappy
  137. else
  138. WIRESHARK_CONF_OPTS += -DENABLE_SNAPPY=OFF
  139. endif
  140. ifeq ($(BR2_PACKAGE_SPANDSP),y)
  141. WIRESHARK_CONF_OPTS += -DENABLE_SPANDSP=ON
  142. WIRESHARK_DEPENDENCIES += spandsp
  143. else
  144. WIRESHARK_CONF_OPTS += -DENABLE_SPANDSP=OFF
  145. endif
  146. ifeq ($(BR2_PACKAGE_SYSTEMD),y)
  147. WIRESHARK_CONF_OPTS += -DBUILD_sdjournal=ON
  148. WIRESHARK_DEPENDENCIES += systemd
  149. else
  150. WIRESHARK_CONF_OPTS += -DBUILD_sdjournal=OFF
  151. endif
  152. ifeq ($(BR2_PACKAGE_ZLIB),y)
  153. WIRESHARK_CONF_OPTS += -DENABLE_ZLIB=ON
  154. WIRESHARK_DEPENDENCIES += zlib
  155. else
  156. WIRESHARK_CONF_OPTS += -DENABLE_ZLIB=OFF
  157. endif
  158. ifeq ($(BR2_PACKAGE_ZSTD),y)
  159. WIRESHARK_CONF_OPTS += -DENABLE_ZSTD=ON
  160. WIRESHARK_DEPENDENCIES += zstd
  161. else
  162. WIRESHARK_CONF_OPTS += -DENABLE_ZSTD=OFF
  163. endif
  164. # Disable plugins as some of them (like l16mono) can't be built
  165. # statically. ENABLE_STATIC=ON actually means "disable shared library"
  166. # and ENABLE_STATIC=OFF means "enable shared library". So for the
  167. # BR2_SHARED_STATIC_LIBS=y case, we want ENABLE_STATIC=OFF even if
  168. # that sounds counter-intuitive.
  169. ifeq ($(BR2_STATIC_LIBS),y)
  170. WIRESHARK_CONF_OPTS += \
  171. -DENABLE_PLUGINS=OFF \
  172. -DENABLE_STATIC=ON \
  173. -DUSE_STATIC=ON
  174. else
  175. WIRESHARK_CONF_OPTS += \
  176. -DENABLE_PLUGINS=ON \
  177. -DENABLE_STATIC=OFF \
  178. -DUSE_STATIC=OFF
  179. endif
  180. define WIRESHARK_REMOVE_DOCS
  181. find $(TARGET_DIR)/usr/share/wireshark -name '*.txt' -print0 \
  182. -o -name '*.html' -print0 | xargs -0 rm -f
  183. endef
  184. WIRESHARK_POST_INSTALL_TARGET_HOOKS += WIRESHARK_REMOVE_DOCS
  185. $(eval $(cmake-package))