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