1################################################################################ 2# 3# suricata 4# 5################################################################################ 6 7SURICATA_VERSION = 6.0.4 8SURICATA_SITE = https://www.openinfosecfoundation.org/download 9SURICATA_LICENSE = GPL-2.0 10SURICATA_LICENSE_FILES = COPYING LICENSE 11SURICATA_CPE_ID_VENDOR = oisf 12# 0001-python-ensure-proper-shabang-on-python-scripts.patch 13# 0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch 14SURICATA_AUTORECONF = YES 15 16SURICATA_DEPENDENCIES = \ 17 host-pkgconf \ 18 host-rustc \ 19 jansson \ 20 $(if $(BR2_PACKAGE_LIBCAP_NG),libcap-ng) \ 21 $(if $(BR2_PACKAGE_LIBEVENT),libevent) \ 22 libhtp \ 23 $(if $(BR2_PACKAGE_LIBNFNETLINK),libnfnetlink) \ 24 libpcap \ 25 libyaml \ 26 $(if $(BR2_PACKAGE_LZ4),lz4) \ 27 pcre \ 28 $(if $(BR2_PACKAGE_XZ),xz) 29 30SURICATA_CONF_ENV = \ 31 ac_cv_path_HAVE_SPHINXBUILD=no \ 32 CARGO_HOME=$(HOST_DIR)/share/cargo \ 33 RUST_TARGET=$(RUSTC_TARGET_NAME) 34 35SURICATA_CONF_OPTS = \ 36 --disable-gccprotect \ 37 --disable-pie \ 38 --disable-suricata-update \ 39 --enable-non-bundled-htp 40 41# install: install binaries 42# install-conf: install initial configuration files 43# install-full: install binaries, configuration and rules (rules will be 44# download through wget/curl) 45SURICATA_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install install-conf 46 47ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) 48SURICATA_CONF_ENV += LIBS=-latomic 49endif 50 51ifeq ($(BR2_PACKAGE_FILE),y) 52SURICATA_DEPENDENCIES += file 53SURICATA_CONF_OPTS += --enable-libmagic 54else 55SURICATA_CONF_OPTS += --disable-libmagic 56endif 57 58ifeq ($(BR2_PACKAGE_LIBMAXMINDDB),y) 59SURICATA_DEPENDENCIES += libmaxminddb 60SURICATA_CONF_OPTS += --enable-geoip 61else 62SURICATA_CONF_OPTS += --disable-geoip 63endif 64 65ifeq ($(BR2_PACKAGE_HIREDIS),y) 66SURICATA_DEPENDENCIES += hiredis 67SURICATA_CONF_OPTS += --enable-hiredis 68else 69SURICATA_CONF_OPTS += --disable-hiredis 70endif 71 72ifeq ($(BR2_PACKAGE_LIBNET),y) 73SURICATA_DEPENDENCIES += libnet 74SURICATA_CONF_OPTS += --with-libnet-includes=$(STAGING_DIR)/usr/include 75endif 76 77ifeq ($(BR2_PACKAGE_LIBNETFILTER_LOG),y) 78SURICATA_DEPENDENCIES += libnetfilter_log 79SURICATA_CONF_OPTS += --enable-nflog 80else 81SURICATA_CONF_OPTS += --disable-nflog 82endif 83 84ifeq ($(BR2_PACKAGE_LIBNETFILTER_QUEUE),y) 85SURICATA_DEPENDENCIES += libnetfilter_queue 86SURICATA_CONF_OPTS += --enable-nfqueue 87else 88SURICATA_CONF_OPTS += --disable-nfqueue 89endif 90 91ifeq ($(BR2_PACKAGE_LIBNSPR),y) 92SURICATA_DEPENDENCIES += libnspr 93SURICATA_CONF_OPTS += --enable-nspr 94else 95SURICATA_CONF_OPTS += --disable-nspr 96endif 97 98ifeq ($(BR2_PACKAGE_LIBNSS),y) 99SURICATA_DEPENDENCIES += libnss 100SURICATA_CONF_OPTS += --enable-nss 101else 102SURICATA_CONF_OPTS += --disable-nss 103endif 104 105ifeq ($(BR2_PACKAGE_LUA),y) 106SURICATA_CONF_OPTS += --enable-lua 107SURICATA_DEPENDENCIES += lua 108else 109SURICATA_CONF_OPTS += --disable-lua 110endif 111 112ifeq ($(BR2_PACKAGE_LUAJIT),y) 113SURICATA_CONF_OPTS += --enable-luajit 114SURICATA_DEPENDENCIES += luajit 115else 116SURICATA_CONF_OPTS += --disable-luajit 117endif 118 119ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),y) 120SURICATA_CONF_OPTS += --enable-python 121SURICATA_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON),python,python3) 122else 123SURICATA_CONF_OPTS += --disable-python 124endif 125 126define SURICATA_INSTALL_INIT_SYSV 127 $(INSTALL) -D -m 0755 package/suricata/S99suricata \ 128 $(TARGET_DIR)/etc/init.d/S99suricata 129endef 130 131define SURICATA_INSTALL_INIT_SYSTEMD 132 $(INSTALL) -D -m 644 package/suricata/suricata.service \ 133 $(TARGET_DIR)/usr/lib/systemd/system/suricata.service 134endef 135 136$(eval $(autotools-package)) 137