From: Zhiquan Li <zhiquan.li@windriver.com>
To: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Cc: "openembedded-devel@lists.openembedded.org"
<openembedded-devel@lists.openembedded.org>
Subject: Re: [PATCH 1/1] snort: fix m4 causes out of memory during configure [ LIN8-299 ]
Date: Thu, 29 Oct 2015 09:41:52 +0800 [thread overview]
Message-ID: <56317960.6030108@windriver.com> (raw)
In-Reply-To: <20151027124927.448d2c15@adi-pc-linux>
[-- Attachment #1: Type: text/plain, Size: 6112 bytes --]
On 2015.10.27 18:49, Ioan-Adrian Ratiu wrote:
> On Tue, 27 Oct 2015 09:54:07 +0000
> "Li, Zhiquan" <Zhiquan.Li@windriver.com> wrote:
>
>> I need to evaluate the possibility to upgrade the snort recipe to >2.9.7, because upgrade to > 2.9.7, some patches will not work anymore and the daq recipe also need to be upgraded to 2.0.4 at least. The side-effect is uncertainty.
>>
> What exactly do you mean by "patches will not work anymore"?.
> Do you mean thy do not apply on >2.9.7? AFAIK two of those
> patches are not needed in 2.9.7.6 (fixed upstream), the others
> just need refreshing.
I've tried to upgrade snort from 2.9.6.0 to 2.9.7.5, as its dependency I
also upgrade daq recipe from 2.0.2 to 2.0.6, and accordingly update the
patches:
* add 2 new patches for snort to solve the cross compile issues.
* discard a snort patch since it is not needed.
* refresh the patch for daq new version.
Please see the attachment for the changes.
Unfortunately , it was failed when packaging debug files, the rpm
debugedit complain: canonicalization unexpectedly shrank by one character.
At a glance it is a bug of debugedit, please see:
http://sourceforge.net/p/snort/mailman/message/34130268/
Redhat hasn't resolved this bug:
https://bugzilla.redhat.com/show_bug.cgi?id=304121
So, the options are:
* Fix rpm debugedit bug and update it to OE
* Take the workaround that skip the snort debug package
* Backport the fix from snort upstream
> ________________________________________
>> From: Ioan-Adrian Ratiu [adrian.ratiu@ni.com]
>> Sent: Monday, October 26, 2015 6:49 PM
>> To: Li, Zhiquan
>> Cc: openembedded-devel@lists.openembedded.org
>> Subject: Re: [oe] [PATCH 1/1] snort: fix m4 causes out of memory during configure [ LIN8-299 ]
>>
>> On Fri, 23 Oct 2015 18:07:35 +0800
>> Zhiquan Li <zhiquan.li@windriver.com> wrote:
>>
>>> Issue: LIN8-299
>>>
>>> There is an incorrect m4_define() in configure.in which will result in an
>>> infinite recursion, and it doesn't make sense, since snort 2.9.7 it has been
>>> commented out. We follow this solution to fix it.
>>>
>>> Upstream-Status: Backport
>>>
>>> (LOCAL REV: NOT UPSTREAM) -- Sent to oe-devel on 20151023
>>>
>>> Signed-off-by: Zhiquan Li <zhiquan.li@windriver.com>
>>> ---
>>> .../snort/snort/m4-oom-during-configure.patch | 21 +++++++++++++++++++++
>>> .../recipes-connectivity/snort/snort_2.9.6.0.bb | 16 +++-------------
>>> 2 files changed, 24 insertions(+), 13 deletions(-)
>>> create mode 100644 meta-networking/recipes-connectivity/snort/snort/m4-oom-during-configure.patch
>>>
>>> diff --git a/meta-networking/recipes-connectivity/snort/snort/m4-oom-during-configure.patch b/meta-networking/recipes-connectivity/snort/snort/m4-oom-during-configure.patch
>>> new file mode 100644
>>> index 0000000..2250611
>>> --- /dev/null
>>> +++ b/meta-networking/recipes-connectivity/snort/snort/m4-oom-during-configure.patch
>>> @@ -0,0 +1,21 @@
>>> +Upstream-Status: Backport
>>> +
>>> +There is an incorrect m4_define() in configure.in which will result in an
>>> +infinite recursion, and it doesn't make sense, since snort 2.9.7 it has been
>>> +commented out. We follow this solution to fix it.
>>> +
>> Doesn't it make more sense to upgrade the snort recipe to >2.9.7 than
>> backporting this fix?
>>
>>> +Signed-off-by: Zhiquan Li <zhiquan.li@windriver.com>
>>> +
>>> +--- a/configure.in 2015-10-22 13:58:50.743367251 +0800
>>> ++++ b/configure.in 2015-10-22 13:59:13.855366117 +0800
>>> +@@ -1100,8 +1100,8 @@
>>> + # Define PKG_CHECK_MODULES if it doesnt already exist.
>>> + #file_ This prevents './configure' from erroring on machines that dont have
>>> + # 'pkgconfig' installed.
>>> +-m4_ifdef([PKG_CHECK_MODULES],[], [m4_define([PKG_CHECK_MODULES],
>>> +- [echo "PKG_CHECK_MODULES not defined"])])
>>> ++#m4_ifdef([PKG_CHECK_MODULES],[], [m4_define([PKG_CHECK_MODULES],
>>> ++# [echo "PKG_CHECK_MODULES not defined"])])
>>> +
>>> + if test "x$enable_rzb_saac" = "xyes"; then
>>> + AC_CHECK_PROG(PKG_CONFIG,pkg-config,yes)
>>> diff --git a/meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb b/meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb
>>> index 66653c6..65dc524 100644
>>> --- a/meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb
>>> +++ b/meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb
>>> @@ -6,19 +6,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=78fa8ef966b48fbf9095e13cc92377c5"
>>>
>>> DEPENDS = "libpcap libpcre daq libdnet util-linux"
>>>
>>> -# Blacklist:
>>> -#
>>> -# http://errors.yoctoproject.org/Errors/Details/8936/
>>> -#
>>> -# snort failure is again very nasty, because it's m4 which eats all
>>> -# available memory and swap before it's killed by OOM killer.
>>> -#
>>> -# Luckily it always picked m4
>>> -#
>>> -# [Wed Feb 18 19:00:51 2015] Out of memory: Kill process 28522 (m4) score 961 or sacrifice child
>>> -# [Wed Feb 18 19:10:51 2015] Out of memory: Kill process 45228 (m4) score 958 or sacrifice child
>>> -# ...
>>> -PNBLACKLIST[snort] ?= "BROKEN: autotools processing causes OOM condition on configure"
>>>
>>> SRC_URI = " ${GENTOO_MIRROR}/${BP}.tar.gz;name=tarball \
>>> file://snort.init \
>>> @@ -26,6 +13,7 @@ SRC_URI = " ${GENTOO_MIRROR}/${BP}.tar.gz;name=tarball \
>>> file://disable-dap-address-space-id.patch \
>>> file://0001-libpcap-search-sysroot-for-headers.patch \
>>> file://not-hardcoded-libdir.patch \
>>> + file://m4-oom-during-configure.patch \
>>> "
>>>
>>> SRC_URI[tarball.md5sum] = "18111f6de3989ca89add36077a7c2659"
>>> @@ -45,6 +33,8 @@ EXTRA_OECONF = " \
>>> --disable-static-daq \
>>> --with-dnet-includes=${STAGING_INCDIR} \
>>> --with-dnet-libraries=${STAGING_LIBDIR} \
>>> + --with-libpcre-includes=${STAGING_INCDIR} \
>>> + --with-libpcre-libraries=${STAGING_INCDIR} \
>>> "
>>>
>>> # if you want to disable it, you need to patch configure.in first
>
[-- Attachment #2: 0001-snort-2.9.6.0-2.9.7.5.patch --]
[-- Type: text/x-patch, Size: 16244 bytes --]
From 1102e1b909f59ae0094d69b37cfdaa1d1ca4cee7 Mon Sep 17 00:00:00 2001
From: Zhiquan Li <zhiquan.li@windriver.com>
Date: Wed, 28 Oct 2015 11:06:17 +0800
Subject: [PATCH] snort: 2.9.6.0 -> 2.9.7.5
Issue: LIN8-299
Upgrade snort from 2.9.6.0 to 2.9.7.5. As dependency upgrade daq from
2.0.2 to 2.0.6.
* adapt daq patch
* add 2 patches for snort to solve configure error
Signed-off-by: Zhiquan Li <zhiquan.li@windriver.com>
---
.../recipes-connectivity/daq/daq_2.0.2.bb | 26 -------
.../recipes-connectivity/daq/daq_2.0.6.bb | 26 +++++++
...le-run-test-program-while-cross-compiling.patch | 18 +++--
.../snort/snort/disable-daq-flow-id.patch | 50 +++++++++++++
.../snort/snort/disable-daq-verdict-retry.patch | 51 +++++++++++++
.../recipes-connectivity/snort/snort_2.9.6.0.bb | 84 ---------------------
.../recipes-connectivity/snort/snort_2.9.7.5.bb | 86 ++++++++++++++++++++++
7 files changed, 223 insertions(+), 118 deletions(-)
delete mode 100644 meta-networking/recipes-connectivity/daq/daq_2.0.2.bb
create mode 100644 meta-networking/recipes-connectivity/daq/daq_2.0.6.bb
create mode 100644 meta-networking/recipes-connectivity/snort/snort/disable-daq-flow-id.patch
create mode 100644 meta-networking/recipes-connectivity/snort/snort/disable-daq-verdict-retry.patch
delete mode 100644 meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb
create mode 100644 meta-networking/recipes-connectivity/snort/snort_2.9.7.5.bb
diff --git a/meta-networking/recipes-connectivity/daq/daq_2.0.2.bb b/meta-networking/recipes-connectivity/daq/daq_2.0.2.bb
deleted file mode 100644
index b8f8407..0000000
--- a/meta-networking/recipes-connectivity/daq/daq_2.0.2.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "The dump DAQ test the various inline mode features "
-HOMEPAGE = "http://www.snort.org"
-SECTION = "libs"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f9ce51a65dd738dc1ae631d8b21c40e0"
-
-PARALLEL_MAKE = ""
-
-DEPENDS = "libpcap libpcre libdnet"
-
-SRC_URI = "http://fossies.org/linux/misc/daq-${PV}.tar.gz \
- file://disable-run-test-program-while-cross-compiling.patch "
-
-# these 2 create undeclared dependency on libdnet and libnetfilter-queue from meta-networking
-# this error from test-dependencies script:
-# daq/daq/latest lost dependency on libdnet libmnl libnetfilter-queue libnfnetlink
-#
-# never look to /usr/local lib while cross compiling
-
-EXTRA_OECONF = "--disable-nfq-module --disable-ipq-module --includedir=${includedir} \
- --with-libpcap-includes=${STAGING_INCDIR} --with-dnet-includes=${STAGING_LIBDIR}"
-
-SRC_URI[md5sum] = "865bf9b750a2a2ca632591a3c70b0ea0"
-SRC_URI[sha256sum] = "d65d1e67c4994e02c3142c49a648642e780b7e3d942b4a51f605309beac269a8"
-
-inherit autotools
diff --git a/meta-networking/recipes-connectivity/daq/daq_2.0.6.bb b/meta-networking/recipes-connectivity/daq/daq_2.0.6.bb
new file mode 100644
index 0000000..2ef4e93
--- /dev/null
+++ b/meta-networking/recipes-connectivity/daq/daq_2.0.6.bb
@@ -0,0 +1,26 @@
+SUMMARY = "The dump DAQ test the various inline mode features "
+HOMEPAGE = "http://www.snort.org"
+SECTION = "libs"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f9ce51a65dd738dc1ae631d8b21c40e0"
+
+PARALLEL_MAKE = ""
+
+DEPENDS = "libpcap libpcre libdnet"
+
+SRC_URI = "http://fossies.org/linux/misc/daq-${PV}.tar.gz \
+ file://disable-run-test-program-while-cross-compiling.patch "
+
+# these 2 create undeclared dependency on libdnet and libnetfilter-queue from meta-networking
+# this error from test-dependencies script:
+# daq/daq/latest lost dependency on libdnet libmnl libnetfilter-queue libnfnetlink
+#
+# never look to /usr/local lib while cross compiling
+
+EXTRA_OECONF = "--disable-nfq-module --disable-ipq-module --includedir=${includedir} \
+ --with-libpcap-includes=${STAGING_INCDIR} --with-dnet-includes=${STAGING_LIBDIR}"
+
+SRC_URI[md5sum] = "2cd6da422a72c129c685fc4bb848c24c"
+SRC_URI[sha256sum] = "b40e1d1273e08aaeaa86e69d4f28d535b7e53bdb3898adf539266b63137be7cb"
+
+inherit autotools
diff --git a/meta-networking/recipes-connectivity/daq/files/disable-run-test-program-while-cross-compiling.patch b/meta-networking/recipes-connectivity/daq/files/disable-run-test-program-while-cross-compiling.patch
index 12a6cba..a100b7c 100644
--- a/meta-networking/recipes-connectivity/daq/files/disable-run-test-program-while-cross-compiling.patch
+++ b/meta-networking/recipes-connectivity/daq/files/disable-run-test-program-while-cross-compiling.patch
@@ -5,12 +5,13 @@ configure: error: cannot run test program while cross compiling
Signed-off-by: Chunrong Guo <B40290@freescale.com>
---- a/m4/sf.m4old 2013-08-30 04:08:18.768409680 -0500
-+++ b/m4/sf.m4 2013-08-30 04:09:24.591367890 -0500
-@@ -135,19 +135,6 @@
+--- a/m4/sf.m4old 2015-10-28 10:21:20.270557986 +0800
++++ a/m4/sf.m4 2015-10-28 10:23:22.726551974 +0800
+@@ -135,20 +135,7 @@
+ echo
exit 1
fi
- AC_MSG_CHECKING([for libpcap version >= $1])
+- AC_CACHE_CHECK([for libpcap version >= $1], [daq_cv_libpcap_version_1x], [
- AC_RUN_IFELSE(
- [AC_LANG_PROGRAM(
- [[
@@ -22,8 +23,9 @@ Signed-off-by: Chunrong Guo <B40290@freescale.com>
- if (strcmp(pcap_version, $1) < 0)
- return 1;
- ]])],
-- [libpcap_version_1x="yes"],
-- [libpcap_version_1x="no"])
- if test "x$libpcap_version_1x" = "xno"; then
- AC_MSG_RESULT(no)
+- [daq_cv_libpcap_version_1x="yes"],
+- [daq_cv_libpcap_version_1x="no"])])
++ AC_CACHE_CHECK([for libpcap version >= $1], [daq_cv_libpcap_version_1x])
+ if test "x$daq_cv_libpcap_version_1x" = "xno"; then
echo
+ echo " ERROR! Libpcap library version >= $1 not found."
diff --git a/meta-networking/recipes-connectivity/snort/snort/disable-daq-flow-id.patch b/meta-networking/recipes-connectivity/snort/snort/disable-daq-flow-id.patch
new file mode 100644
index 0000000..e6afcab
--- /dev/null
+++ b/meta-networking/recipes-connectivity/snort/snort/disable-daq-flow-id.patch
@@ -0,0 +1,50 @@
+Upstream-Status:Inappropriate [embedded specific]
+
+fix the below error:
+checking for daq flow ID... configure:
+configure: error: cannot run test program while cross compiling
+
+
+--- a/configure.in 2015-10-28 10:36:42.918512690 +0800
++++ b/configure.in 2015-10-28 10:37:36.738510048 +0800
+@@ -716,23 +716,23 @@
+ # [DAQ version supports address space ID in header.])
+ #fi
+
+-AC_MSG_CHECKING([for daq flow ID])
+-AC_RUN_IFELSE(
+-[AC_LANG_PROGRAM(
+-[[
+-#include <daq.h>
+-]],
+-[[
+- DAQ_PktHdr_t hdr;
+- hdr.flow_id = 0;
+-]])],
+-[have_daq_flow_id="yes"],
+-[have_daq_flow_id="no"])
+-AC_MSG_RESULT($have_daq_flow_id)
+-if test "x$have_daq_flow_id" = "xyes"; then
+- AC_DEFINE([HAVE_DAQ_FLOW_ID],[1],
+- [DAQ version supports flow ID in header.])
+-fi
++#AC_MSG_CHECKING([for daq flow ID])
++#AC_RUN_IFELSE(
++#[AC_LANG_PROGRAM(
++#[[
++##include <daq.h>
++#]],
++#[[
++# DAQ_PktHdr_t hdr;
++# hdr.flow_id = 0;
++#]])],
++have_daq_flow_id="yes"
++#[have_daq_flow_id="no"])
++#AC_MSG_RESULT($have_daq_flow_id)
++#if test "x$have_daq_flow_id" = "xyes"; then
++# AC_DEFINE([HAVE_DAQ_FLOW_ID],[1],
++# [DAQ version supports flow ID in header.])
++#fi
+
+ AC_MSG_CHECKING([for DAQ_VERDICT_RETRY])
+ AC_RUN_IFELSE(
diff --git a/meta-networking/recipes-connectivity/snort/snort/disable-daq-verdict-retry.patch b/meta-networking/recipes-connectivity/snort/snort/disable-daq-verdict-retry.patch
new file mode 100644
index 0000000..1a13298
--- /dev/null
+++ b/meta-networking/recipes-connectivity/snort/snort/disable-daq-verdict-retry.patch
@@ -0,0 +1,51 @@
+Upstream-Status:Inappropriate [embedded specific]
+
+fix the below error:
+checking for DAQ_VERDICT_RETRY... configure:
+configure: error: cannot run test program while cross compiling
+
+
+--- a/configure.in 2015-10-28 10:45:18.174487395 +0800
++++ b/configure.in 2015-10-28 10:45:47.586485951 +0800
+@@ -734,23 +734,23 @@
+ # [DAQ version supports flow ID in header.])
+ #fi
+
+-AC_MSG_CHECKING([for DAQ_VERDICT_RETRY])
+-AC_RUN_IFELSE(
+-[AC_LANG_PROGRAM(
+-[[
+-#include <daq.h>
+-]],
+-[[
+- DAQ_Verdict verdict;
+- verdict = DAQ_VERDICT_RETRY;
+-]])],
+-[have_daq_verdict_retry="yes"],
+-[have_daq_verdict_retry="no"])
+-AC_MSG_RESULT($have_daq_verdict_retry)
+-if test "x$have_daq_verdict_retry" = "xyes"; then
+- AC_DEFINE([HAVE_DAQ_VERDICT_RETRY],[1],
+- [DAQ version supports DAQ_VERDICT_RETRY in DAQ_Verdict.])
+-fi
++#AC_MSG_CHECKING([for DAQ_VERDICT_RETRY])
++#AC_RUN_IFELSE(
++#[AC_LANG_PROGRAM(
++#[[
++##include <daq.h>
++#]],
++#[[
++# DAQ_Verdict verdict;
++# verdict = DAQ_VERDICT_RETRY;
++#]])],
++have_daq_verdict_retry="yes"
++#[have_daq_verdict_retry="no"])
++#AC_MSG_RESULT($have_daq_verdict_retry)
++#if test "x$have_daq_verdict_retry" = "xyes"; then
++# AC_DEFINE([HAVE_DAQ_VERDICT_RETRY],[1],
++# [DAQ version supports DAQ_VERDICT_RETRY in DAQ_Verdict.])
++#fi
+
+ # any sparc platform has to have this one defined.
+ AC_MSG_CHECKING(for sparc)
+
diff --git a/meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb b/meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb
deleted file mode 100644
index 65dc524..0000000
--- a/meta-networking/recipes-connectivity/snort/snort_2.9.6.0.bb
+++ /dev/null
@@ -1,84 +0,0 @@
-DESCRIPTION = "snort - a free lightweight network intrusion detection system for UNIX and Windows."
-HOMEPAGE = "http://www.snort.org/"
-SECTION = "net"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=78fa8ef966b48fbf9095e13cc92377c5"
-
-DEPENDS = "libpcap libpcre daq libdnet util-linux"
-
-
-SRC_URI = " ${GENTOO_MIRROR}/${BP}.tar.gz;name=tarball \
- file://snort.init \
- file://disable-inaddr-none.patch \
- file://disable-dap-address-space-id.patch \
- file://0001-libpcap-search-sysroot-for-headers.patch \
- file://not-hardcoded-libdir.patch \
- file://m4-oom-during-configure.patch \
-"
-
-SRC_URI[tarball.md5sum] = "18111f6de3989ca89add36077a7c2659"
-SRC_URI[tarball.sha256sum] = "3cc6c8a9b52f4c863a5736a73b4012aff340b50b5e002771b04d4877f47cd19e"
-
-inherit autotools gettext update-rc.d pkgconfig
-
-INITSCRIPT_NAME = "snort"
-INITSCRIPT_PARAMS = "defaults"
-
-EXTRA_OECONF = " \
- --enable-gre \
- --enable-linux-smp-stats \
- --enable-reload \
- --enable-reload-error-restart \
- --enable-targetbased \
- --disable-static-daq \
- --with-dnet-includes=${STAGING_INCDIR} \
- --with-dnet-libraries=${STAGING_LIBDIR} \
- --with-libpcre-includes=${STAGING_INCDIR} \
- --with-libpcre-libraries=${STAGING_INCDIR} \
- "
-
-# if you want to disable it, you need to patch configure.in first
-# AC_CHECK_HEADERS([openssl/sha.h],, SHA_H="no")
-# is called even with --without-openssl-includes
-PACKAGECONFIG ?= "openssl"
-PACKAGECONFIG[openssl] = "--with-openssl-includes=${STAGING_INCDIR} --with-openssl-libraries=${STAGING_LIBDIR}, --without-openssl-includes --without-openssl-libraries, openssl,"
-
-do_install_append() {
- install -d ${D}/${sysconfdir}/snort/rules
- install -d ${D}/${sysconfdir}/snort/preproc_rules
- install -d ${D}${sysconfdir}/init.d
- for i in map config conf dtd; do
- cp ${S}/etc/*.$i ${D}/${sysconfdir}/snort/
- done
- cp ${S}/preproc_rules/*.rules ${D}/${sysconfdir}/snort/preproc_rules/
- install -m 755 ${WORKDIR}/snort.init ${D}/${sysconfdir}/init.d/snort
- mkdir -p ${D}/${localstatedir}/log/snort
- install -d ${D}/var/log/snort
-}
-
-FILES_${PN} += " \
- ${libdir}/snort_dynamicengine/*.so.* \
- ${libdir}/snort_dynamicpreprocessor/*.so.* \
- ${libdir}/snort_dynamicrules/*.so.* \
- "
-FILES_${PN}-dbg += " \
- ${libdir}/snort_dynamicengine/.debug \
- ${libdir}/snort_dynamicpreprocessor/.debug \
- ${libdir}/snort_dynamicrules/.debug \
- "
-FILES_${PN}-staticdev += " \
- ${libdir}/snort_dynamicengine/*.a \
- ${libdir}/snort_dynamicpreprocessor/*.a \
- ${libdir}/snort_dynamicrules/*.a \
- ${libdir}/snort/dynamic_preproc/*.a \
- ${libdir}/snort/dynamic_output/*.a \
- "
-FILES_${PN}-dev += " \
- ${libdir}/snort_dynamicengine/*.la \
- ${libdir}/snort_dynamicpreprocessor/*.la \
- ${libdir}/snort_dynamicrules/*.la \
- ${libdir}/snort_dynamicengine/*.so \
- ${libdir}/snort_dynamicpreprocessor/*.so \
- ${libdir}/snort_dynamicrules/*.so \
- ${prefix}/src/snort_dynamicsrc \
- "
diff --git a/meta-networking/recipes-connectivity/snort/snort_2.9.7.5.bb b/meta-networking/recipes-connectivity/snort/snort_2.9.7.5.bb
new file mode 100644
index 0000000..9a34805
--- /dev/null
+++ b/meta-networking/recipes-connectivity/snort/snort_2.9.7.5.bb
@@ -0,0 +1,86 @@
+DESCRIPTION = "snort - a free lightweight network intrusion detection system for UNIX and Windows."
+HOMEPAGE = "http://www.snort.org/"
+SECTION = "net"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=78fa8ef966b48fbf9095e13cc92377c5"
+
+DEPENDS = "libpcap libpcre daq libdnet util-linux"
+
+
+SRC_URI = " ${GENTOO_MIRROR}/${BP}.tar.gz;name=tarball \
+ file://snort.init \
+ file://disable-inaddr-none.patch \
+ file://disable-dap-address-space-id.patch \
+ file://disable-daq-flow-id.patch \
+ file://disable-daq-verdict-retry.patch \
+ file://0001-libpcap-search-sysroot-for-headers.patch \
+"
+
+SRC_URI[tarball.md5sum] = "fd271788c0f8876be87a858a9142f202"
+SRC_URI[tarball.sha256sum] = "ad03f11b5301b16642199a86aa90388eaa53f5003f83b0c5595745a490047be1"
+
+inherit autotools gettext update-rc.d pkgconfig
+
+INITSCRIPT_NAME = "snort"
+INITSCRIPT_PARAMS = "defaults"
+
+EXTRA_OECONF = " \
+ --enable-gre \
+ --enable-linux-smp-stats \
+ --enable-reload \
+ --enable-reload-error-restart \
+ --enable-targetbased \
+ --disable-static-daq \
+ --with-dnet-includes=${STAGING_INCDIR} \
+ --with-dnet-libraries=${STAGING_LIBDIR} \
+ --with-libpcre-includes=${STAGING_INCDIR} \
+ --with-libpcre-libraries=${STAGING_INCDIR} \
+ --with-daq-includes=${STAGING_INCDIR} \
+ --with-daq-libraries=${STAGING_INCDIR} \
+ "
+
+# if you want to disable it, you need to patch configure.in first
+# AC_CHECK_HEADERS([openssl/sha.h],, SHA_H="no")
+# is called even with --without-openssl-includes
+PACKAGECONFIG ?= "openssl"
+PACKAGECONFIG[openssl] = "--with-openssl-includes=${STAGING_INCDIR} --with-openssl-libraries=${STAGING_LIBDIR}, --without-openssl-includes --without-openssl-libraries, openssl,"
+
+do_install_append() {
+ install -d ${D}/${sysconfdir}/snort/rules
+ install -d ${D}/${sysconfdir}/snort/preproc_rules
+ install -d ${D}${sysconfdir}/init.d
+ for i in map config conf dtd; do
+ cp ${S}/etc/*.$i ${D}/${sysconfdir}/snort/
+ done
+ cp ${S}/preproc_rules/*.rules ${D}/${sysconfdir}/snort/preproc_rules/
+ install -m 755 ${WORKDIR}/snort.init ${D}/${sysconfdir}/init.d/snort
+ mkdir -p ${D}/${localstatedir}/log/snort
+ install -d ${D}/var/log/snort
+}
+
+FILES_${PN} += " \
+ ${libdir}/snort_dynamicengine/*.so.* \
+ ${libdir}/snort_dynamicpreprocessor/*.so.* \
+ ${libdir}/snort_dynamicrules/*.so.* \
+ "
+FILES_${PN}-dbg += " \
+ ${libdir}/snort_dynamicengine/.debug \
+ ${libdir}/snort_dynamicpreprocessor/.debug \
+ ${libdir}/snort_dynamicrules/.debug \
+ "
+FILES_${PN}-staticdev += " \
+ ${libdir}/snort_dynamicengine/*.a \
+ ${libdir}/snort_dynamicpreprocessor/*.a \
+ ${libdir}/snort_dynamicrules/*.a \
+ ${libdir}/snort/dynamic_preproc/*.a \
+ ${libdir}/snort/dynamic_output/*.a \
+ "
+FILES_${PN}-dev += " \
+ ${libdir}/snort_dynamicengine/*.la \
+ ${libdir}/snort_dynamicpreprocessor/*.la \
+ ${libdir}/snort_dynamicrules/*.la \
+ ${libdir}/snort_dynamicengine/*.so \
+ ${libdir}/snort_dynamicpreprocessor/*.so \
+ ${libdir}/snort_dynamicrules/*.so \
+ ${prefix}/src/snort_dynamicsrc \
+ "
--
1.9.1
next prev parent reply other threads:[~2015-10-29 1:41 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-23 10:07 [ LIN8-299 ] snort: fix m4 causes out of memory during configure Zhiquan Li
2015-10-23 10:07 ` [PATCH 1/1] snort: fix m4 causes out of memory during configure [ LIN8-299 ] Zhiquan Li
2015-10-26 10:49 ` Ioan-Adrian Ratiu
2015-10-27 9:54 ` Li, Zhiquan
2015-10-27 10:49 ` Ioan-Adrian Ratiu
2015-10-29 1:41 ` Zhiquan Li [this message]
2015-10-29 9:04 ` Ioan-Adrian Ratiu
2015-10-29 11:11 ` Martin Jansa
2015-11-16 2:39 ` Zhiquan Li
2015-11-16 8:23 ` Ioan-Adrian Ratiu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56317960.6030108@windriver.com \
--to=zhiquan.li@windriver.com \
--cc=adrian.ratiu@ni.com \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox