[oe] [meta-oe][PATCH v2] syslog-ng: update to 3.15.1

Khem Raj raj.khem at gmail.com
Wed Jun 13 13:47:52 UTC 2018


Hi Andrej

On 6/13/18 1:56 AM, Andrej Valek wrote:
> Hi Khem,
> 
> I have tested it on glibc at qemuarm/x86 before posting. After posted this
> error message, I have setup new build like this:
> 
> $ export MACHINE=qemux86-64 TCLIBC=musl
> $ . oe-init-build-env
> $ bitbake syslog-ng
> 
> It was compiled without any problems. libsecret-storage library was built.
> 
> How did you setup our build?

Try to enable ptests as well. this is what I have in local.conf
DISTRO_FEATURES_append = " largefile opengl ptest multiarch wayland pam "

then try

$ TCLIBC=musl bitbake syslog-ng

> 
> So, this error looks like that PAGESIZE is represented as constant. What
> about change type to long? Maybe there is a problem with capitalization.
> 
> Regards,
> Andrej
> 
> On 06/12/18 22:59, Khem Raj wrote:
>> Fails to build with qemux86_64/musl
>>
>> In file included from
>> /mnt/a/oe/build/tmp/work/core2-64-bec-linux-musl/syslog-ng/3.15.1-r0/recipe-sysroot/usr/include/limits.h:8,
>>                   from
>> /mnt/a/oe/build/tmp/work/core2-64-bec-linux-musl/syslog-ng/3.15.1-r0/recipe-sysroot/usr/lib/glib-2.0/include/glibconfig.h:11,
>>                   from
>> /mnt/a/oe/build/tmp/work/core2-64-bec-linux-musl/syslog-ng/3.15.1-r0/recipe-sysroot/usr/include/glib-2.0/glib/gtypes.h:32,
>>                   from
>> /mnt/a/oe/build/tmp/work/core2-64-bec-linux-musl/syslog-ng/3.15.1-r0/recipe-sysroot/usr/include/glib-2.0/glib/galloca.h:32,
>>                   from
>> /mnt/a/oe/build/tmp/work/core2-64-bec-linux-musl/syslog-ng/3.15.1-r0/recipe-sysroot/usr/include/glib-2.0/glib.h:30,
>>                   from ../syslog-ng-3.15.1/lib/compat/glib.h:31,
>>                   from
>> ../syslog-ng-3.15.1/lib/secret-storage/nondumpable-allocator.h:27,
>>                   from
>> ../syslog-ng-3.15.1/lib/secret-storage/nondumpable-allocator.c:31:
>> ../syslog-ng-3.15.1/lib/secret-storage/nondumpable-allocator.c: In
>> function 'nondumpable_buffer_alloc':
>> ../syslog-ng-3.15.1/lib/secret-storage/nondumpable-allocator.c:107:9:
>> error: expected identifier or '(' before numeric constant
>>     gsize PAGESIZE = sysconf(_SC_PAGE_SIZE);
>>           ^~~~~~~~
>> On Tue, Jun 12, 2018 at 3:38 AM Andrej Valek <andrej.valek at siemens.com> wrote:
>>>
>>>   - Refresh and remove obsolete patches
>>>   - Implement SystemD service files handling
>>>    - splitted service into default
>>>   - Remove dependency to eventlog
>>>    - external libevtlog library linking was removed
>>>   - Version 3.15.1 supports OpenSSL 1.1
>>>
>>> Signed-off-by: Andrej Valek <andrej.valek at siemens.com>
>>> ---
>>>   ...ry-leak-problem-when-HAVE_ENVIRON-defined.patch | 29 -----------------
>>>   ...c-add-option-enable-thread-tls-to-manage-.patch | 16 ++++-----
>>>   .../recipes-support/syslog-ng/files/syslog-ng.conf |  2 +-
>>>   .../syslog-ng.service-the-syslog-ng-service.patch  | 38 +++++++++++++++-------
>>>   meta-oe/recipes-support/syslog-ng/syslog-ng.inc    | 21 +++++++-----
>>>   .../recipes-support/syslog-ng/syslog-ng_3.15.1.bb  | 10 ++++++
>>>   .../recipes-support/syslog-ng/syslog-ng_3.8.1.bb   | 11 -------
>>>   7 files changed, 58 insertions(+), 69 deletions(-)
>>>   delete mode 100644 meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-when-HAVE_ENVIRON-defined.patch
>>>   create mode 100644 meta-oe/recipes-support/syslog-ng/syslog-ng_3.15.1.bb
>>>   delete mode 100644 meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb
>>>
>>> diff --git a/meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-when-HAVE_ENVIRON-defined.patch b/meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-when-HAVE_ENVIRON-defined.patch
>>> deleted file mode 100644
>>> index 5d481f232..000000000
>>> --- a/meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-when-HAVE_ENVIRON-defined.patch
>>> +++ /dev/null
>>> @@ -1,29 +0,0 @@
>>> -Fix the memory leak problem when HAVE_ENVIRON is defined
>>> -
>>> -Upstream-Status: Pending
>>> -
>>> -Signed-off-by: Xufeng Zhang <xufeng.zhang at windriver.com>
>>> ----
>>> -Index: syslog-ng-3.8.1/lib/gprocess.c
>>> -===================================================================
>>> ---- syslog-ng-3.8.1.orig/lib/gprocess.c
>>> -+++ syslog-ng-3.8.1/lib/gprocess.c
>>> -@@ -1432,6 +1432,18 @@ g_process_startup_ok(void)
>>> - void
>>> - g_process_finish(void)
>>> - {
>>> -+#ifdef HAVE_ENVIRON
>>> -+  int i = 0;
>>> -+
>>> -+  while (environ[i]) {
>>> -+    g_free(environ[i]);
>>> -+    ++i;
>>> -+  }
>>> -+  if (environ)
>>> -+    g_free(environ);
>>> -+  if (process_opts.argv_orig)
>>> -+    free(process_opts.argv_orig);
>>> -+#endif
>>> -   g_process_remove_pidfile();
>>> - }
>>> -
>>> diff --git a/meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch b/meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch
>>> index c172e4e74..4f8a3d077 100644
>>> --- a/meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch
>>> +++ b/meta-oe/recipes-support/syslog-ng/files/configure.ac-add-option-enable-thread-tls-to-manage-.patch
>>> @@ -10,21 +10,21 @@ Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
>>>    configure.ac | 17 +++++++++++------
>>>    1 file changed, 11 insertions(+), 6 deletions(-)
>>>
>>> -Index: syslog-ng-3.8.1/configure.ac
>>> +Index: syslog-ng-3.15.1/configure.ac
>>>   ===================================================================
>>> ---- syslog-ng-3.8.1.orig/configure.ac
>>> -+++ syslog-ng-3.8.1/configure.ac
>>> -@@ -147,6 +147,9 @@ AC_ARG_ENABLE(gprof,
>>> +--- syslog-ng-3.15.1.orig/configure.ac
>>> ++++ syslog-ng-3.15.1/configure.ac
>>> +@@ -190,6 +190,9 @@ AC_ARG_ENABLE(gprof,
>>>    AC_ARG_ENABLE(memtrace,
>>>                  [  --enable-memtrace   Enable alternative leak debugging code.])
>>>
>>>   +AC_ARG_ENABLE(thread-tls,
>>> -+              [  --enable-thread-tls        Enable Thread Transport Layer Security support.],,enable_thread_tls="no")
>>> ++              [  --enable-thread-tls        Enable Thread Local Storage support.],,enable_thread_tls="no")
>>>   +
>>>    AC_ARG_ENABLE(dynamic-linking,
>>>                  [  --enable-dynamic-linking        Link everything dynamically.],,enable_dynamic_linking="auto")
>>>
>>> -@@ -486,12 +489,14 @@ dnl ************************************
>>> +@@ -591,12 +594,14 @@ dnl ***************************************************************************
>>>    dnl Is the __thread keyword available?
>>>    dnl ***************************************************************************
>>>
>>> @@ -33,14 +33,14 @@ Index: syslog-ng-3.8.1/configure.ac
>>>   -__thread int a;
>>>   -]],
>>>   -[a=0;])],
>>> --[ac_cv_have_tls=yes; AC_DEFINE_UNQUOTED(HAVE_THREAD_KEYWORD, 1, "Whether Transport Layer Security is supported by the system")])
>>> +-[ac_cv_have_tls=yes; AC_DEFINE_UNQUOTED(HAVE_THREAD_KEYWORD, 1, "Whether Thread Local Storage is supported by the system")])
>>>   +if test "x$enable_thread_tls" != "xno"; then
>>>   +    AC_LINK_IFELSE([AC_LANG_PROGRAM(
>>>   +    [[#include <pthread.h>
>>>   +    __thread int a;
>>>   +    ]],
>>>   +    [a=0;])],
>>> -+    [ac_cv_have_tls=yes; AC_DEFINE_UNQUOTED(HAVE_THREAD_KEYWORD, 1, "Whether Transport Layer Security is supported by the system")])
>>> ++    [ac_cv_have_tls=yes; AC_DEFINE_UNQUOTED(HAVE_THREAD_KEYWORD, 1, "Whether Thread Local Storage is supported by the system")])
>>>   +fi
>>>
>>>    dnl ***************************************************************************
>>> diff --git a/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf b/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf
>>> index 0c6f54355..fb183ee17 100644
>>> --- a/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf
>>> +++ b/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf
>>> @@ -1,4 +1,4 @@
>>> - at version: 3.8
>>> + at version: 3.15
>>>   #
>>>   # Syslog-ng configuration file, compatible with default Debian syslogd
>>>   # installation. Originally written by anonymous (I can't find his name)
>>> diff --git a/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch b/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch
>>> index 6b30c20c1..dc2ba167a 100644
>>> --- a/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch
>>> +++ b/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch
>>> @@ -7,25 +7,39 @@ Subject: [PATCH] syslog-ng.service: the syslog-ng service can not start
>>>   Upstream-Status: pending
>>>
>>>   Signed-off-by: Li Xin <lixin.fnst at cn.fujitsu.com>
>>> +Updated-by: Andrej Valek <andrej.valek at siemens.com>
>>>   ---
>>>    contrib/systemd/syslog-ng.service | 5 ++---
>>>    1 file changed, 2 insertion(+), 3 deletions(-)
>>>
>>> -diff --git a/contrib/systemd/syslog-ng.service b/contrib/systemd/syslog-ng.service
>>> -index fc16f8d..8e09deb 100644
>>> ---- a/contrib/systemd/syslog-ng.service
>>> -+++ b/contrib/systemd/syslog-ng.service
>>> -@@ -4,8 +4,8 @@ Description=System Logger Daemon
>>> -
>>> - [Service]
>>> +diff --git a/contrib/systemd/syslog-ng at .service b/contrib/systemd/syslog-ng at .service
>>> +index a28640e..93aec94 100644
>>> +--- a/contrib/systemd/syslog-ng at .service
>>> ++++ b/contrib/systemd/syslog-ng at .service
>>> +@@ -7,8 +7,8 @@ Conflicts=emergency.service emergency.target
>>>    Type=notify
>>> --ExecStart=/usr/sbin/syslog-ng -F $SYSLOGNG_OPTS
>>> + EnvironmentFile=-/etc/default/syslog-ng@%i
>>> + EnvironmentFile=-/etc/sysconfig/syslog-ng@%i
>>> +-ExecStart=/usr/sbin/syslog-ng -F $OTHER_OPTIONS --cfgfile $CONFIG_FILE --control $CONTROL_FILE --persist-file $PERSIST_FILE --pidfile $PID_FILE
>>>   -ExecReload=/bin/kill -HUP $MAINPID
>>> -+ExecStart=@SBINDIR@/syslog-ng -F $SYSLOGNG_OPTS -p @LOCALSTATEDIR@/run/syslogd.pid
>>> ++ExecStart=@SBINDIR@/syslog-ng -F $OTHER_OPTIONS --cfgfile $CONFIG_FILE --control $CONTROL_FILE --persist-file $PERSIST_FILE --pidfile $PID_FILE
>>>   +ExecReload=@BASEBINDIR@/kill -HUP $MAINPID
>>> - EnvironmentFile=-/etc/default/syslog-ng
>>> - EnvironmentFile=-/etc/sysconfig/syslog-ng
>>>    StandardOutput=journal
>>> + StandardError=journal
>>> + Restart=on-failure
>>> +diff --git a/contrib/systemd/syslog-ng at default b/contrib/systemd/syslog-ng at default
>>> +index 02da288..3a8215d 100644
>>> +--- a/contrib/systemd/syslog-ng at default
>>> ++++ b/contrib/systemd/syslog-ng at default
>>> +@@ -1,5 +1,5 @@
>>> + CONFIG_FILE=/etc/syslog-ng.conf
>>> +-PERSIST_FILE=/var/lib/syslog-ng/syslog-ng.persist
>>> +-CONTROL_FILE=/var/lib/syslog-ng/syslog-ng.ctl
>>> +-PID_FILE=/var/run/syslog-ng.pid
>>> ++PERSIST_FILE=@LOCALSTATEDIR@/lib/syslog-ng/syslog-ng.persist
>>> ++CONTROL_FILE=@LOCALSTATEDIR@/lib/syslog-ng/syslog-ng.ctl
>>> ++PID_FILE=@LOCALSTATEDIR@/run/syslog-ng.pid
>>> + OTHER_OPTIONS="--enable-core"
>>> +
>>>   --
>>>   1.8.4.2
>>> -
>>> diff --git a/meta-oe/recipes-support/syslog-ng/syslog-ng.inc b/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
>>> index 771cdb196..d8fd96282 100644
>>> --- a/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
>>> +++ b/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
>>> @@ -13,7 +13,7 @@ LICENSE = "GPLv2 & LGPLv2.1"
>>>   LIC_FILES_CHKSUM = "file://COPYING;md5=24c0c5cb2c83d9f2ab725481e4df5240"
>>>
>>>   # util-linux added to get libuuid
>>> -DEPENDS = "libpcre flex eventlog glib-2.0 openssl util-linux"
>>> +DEPENDS = "libpcre flex glib-2.0 openssl util-linux"
>>>
>>>   SRC_URI = "https://github.com/balabit/syslog-ng/releases/download/${BP}/${BP}.tar.gz \
>>>              file://syslog-ng.conf \
>>> @@ -67,12 +67,6 @@ do_configure_prepend() {
>>>          cd $olddir
>>>   }
>>>
>>> -do_install_prepend() {
>>> -    sed -i -e 's, at SBINDIR@,${sbindir},g' ${S}/contrib/systemd/*.service
>>> -    sed -i -e 's, at LOCALSTATEDIR@,${localstatedir},g' ${S}/contrib/systemd/*.service
>>> -    sed -i -e 's, at BASEBINDIR@,${base_bindir},g' ${S}/contrib/systemd/*.service
>>> -}
>>> -
>>>   do_install_append() {
>>>       install -d ${D}/${sysconfdir}/${BPN}
>>>       install ${WORKDIR}/syslog-ng.conf ${D}${sysconfdir}/${BPN}/${BPN}.conf
>>> @@ -83,6 +77,17 @@ do_install_append() {
>>>       install -d ${D}/${localstatedir}/lib/${BPN}
>>>       # Remove /var/run as it is created on startup
>>>       rm -rf ${D}${localstatedir}/run
>>> +
>>> +    # support for systemd
>>> +    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
>>> +        install -d ${D}${systemd_unitdir}/system/
>>> +        install -m 0644 ${S}/contrib/systemd/${BPN}@.service ${D}${systemd_unitdir}/system/${BPN}@.service
>>> +        install -m 0644 ${S}/contrib/systemd/${BPN}@default ${D}${systemd_unitdir}/system/${BPN}@default
>>> +
>>> +        sed -i -e 's, at SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/${BPN}@.service ${D}${systemd_unitdir}/system/${BPN}@default
>>> +        sed -i -e 's, at LOCALSTATEDIR@,${localstatedir},g' ${D}${systemd_unitdir}/system/${BPN}@.service ${D}${systemd_unitdir}/system/${BPN}@default
>>> +        sed -i -e 's, at BASEBINDIR@,${base_bindir},g' ${D}${systemd_unitdir}/system/${BPN}@.service ${D}${systemd_unitdir}/system/${BPN}@default
>>> +    fi
>>>   }
>>>
>>>   FILES_${PN} += "${datadir}/include/scl/ ${datadir}/xsd ${datadir}/tools"
>>> @@ -108,7 +113,7 @@ RCONFLICTS_${PN} = "busybox-syslog sysklogd rsyslog"
>>>   RPROVIDES_${PN} += "${PN}-systemd"
>>>   RREPLACES_${PN} += "${PN}-systemd"
>>>   RCONFLICTS_${PN} += "${PN}-systemd"
>>> -SYSTEMD_SERVICE_${PN} = "${BPN}.service"
>>> +SYSTEMD_SERVICE_${PN} = "${BPN}@default ${BPN}@.service"
>>>
>>>   INITSCRIPT_NAME = "syslog"
>>>   INITSCRIPT_PARAMS = "start 20 2 3 4 5 . stop 90 0 1 6 ."
>>> diff --git a/meta-oe/recipes-support/syslog-ng/syslog-ng_3.15.1.bb b/meta-oe/recipes-support/syslog-ng/syslog-ng_3.15.1.bb
>>> new file mode 100644
>>> index 000000000..e6a214ced
>>> --- /dev/null
>>> +++ b/meta-oe/recipes-support/syslog-ng/syslog-ng_3.15.1.bb
>>> @@ -0,0 +1,10 @@
>>> +require syslog-ng.inc
>>> +
>>> +SRC_URI += " \
>>> +    file://fix-config-libnet.patch \
>>> +    file://fix-invalid-ownership.patch \
>>> +    file://syslog-ng.service-the-syslog-ng-service.patch \
>>> +"
>>> +
>>> +SRC_URI[md5sum] = "da59a65cd5e293ec0fa3d3ecf4984af9"
>>> +SRC_URI[sha256sum] = "a2dabd28674e2b558e4fb92484ad111d77bf7150070aa28556827130b479f9ef"
>>> diff --git a/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb b/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb
>>> deleted file mode 100644
>>> index 91a0e4699..000000000
>>> --- a/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb
>>> +++ /dev/null
>>> @@ -1,11 +0,0 @@
>>> -require syslog-ng.inc
>>> -
>>> -SRC_URI += " \
>>> -    file://fix-config-libnet.patch \
>>> -    file://fix-invalid-ownership.patch \
>>> -    file://Fix-the-memory-leak-problem-when-HAVE_ENVIRON-defined.patch \
>>> -    file://syslog-ng.service-the-syslog-ng-service.patch \
>>> -"
>>> -
>>> -SRC_URI[md5sum] = "acf14563cf5ce435db8db35486ce66af"
>>> -SRC_URI[sha256sum] = "84b081f6e5f98cbc52052e342bcfdc5de5fe0ebe9f5ec32fe9eaec5759224cc5"
>>> --
>>> 2.11.0
>>>
>>> --
>>> _______________________________________________
>>> Openembedded-devel mailing list
>>> Openembedded-devel at lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



More information about the Openembedded-devel mailing list