<div dir="ltr">I am trying to build a 3.4.1 RPM for CentOS 6.<div><br></div><div style>I already built the eventlog RPM and upgraded the one provided by EPEL repo.</div><div style><br></div><div style>If I compile straight after untarring the source by running &quot;./configure&quot; (with options same as listed in the SPEC file below) and &quot;make check&quot;, the tests runs ok and I get the syslog-ng binaries.</div>
<div style><br></div><div style>But if I build a RPM from the SPEC file below, build fails with the following error.</div><div style><br></div><div style><div>------- error ---------------</div><div>Input is not valid utf8, glob match requires utf8 input, thus it never matches in this case; value=&#39;\xe1rv\xedzt\xfbr\xf5t\xfck\xf6rf\xfar\xf3g\xe9p&#39;</div>
<div>PASS: test_matcher</div><div>PASS: test_clone_logmsg</div><div>PASS: test_serialize</div><div>PASS: test_msgparse</div><div>PASS: test_template</div><div>/bin/sh: line 5: 31254 Segmentation fault      (core dumped) ${dir}$tst</div>
<div>FAIL: test_template_speed</div><div>One &quot;invalid regular expression&quot; message is to be expected</div><div>Error compiling regular expression; re=&#39;((&#39;, error=&#39;Unmatched ( or \(&#39;</div><div>One &quot;invalid regular expressions&quot; message is to be expected</div>
<div>Error compiling regular expression; re=&#39;((&#39;, error=&#39;Unmatched ( or \(&#39;</div><div>WARNING: Your configuration file uses an obsoleted regexp option, please update your configuration; option=&#39;(?i)&#39;, change=&#39;use ignore-case flag instead of (?i)&#39;</div>
<div>One &quot;invalid regular expression&quot; message is to be expected</div><div>Error compiling regular expression; re=&#39;((&#39;, error=&#39;Unmatched ( or \(&#39;</div><div>One &quot;invalid regular expression&quot; message is to be expected</div>
<div>Error while compiling regular expression; regular_expression=&#39;((&#39;, error_at=&#39;&#39;, error_offset=&#39;2&#39;, error_message=&#39;missing )&#39;, error_code=&#39;14&#39;</div><div>One &quot;invalid regular expressions&quot; message is to be expected</div>
<div>Error while compiling regular expression; regular_expression=&#39;((&#39;, error_at=&#39;&#39;, error_offset=&#39;2&#39;, error_message=&#39;missing )&#39;, error_code=&#39;14&#39;</div><div>One &quot;invalid regular expressions&quot; message is to be expected</div>
<div>Invalid regexp flags; re=&#39;(?iana&#39;</div><div>One &quot;invalid regular expressions&quot; message is to be expected</div><div>Error while compiling regular expression; regular_expression=&#39;(?iana&#39;, error_at=&#39;ana&#39;, error_offset=&#39;3&#39;, error_message=&#39;unrecognized character after (? or (?-&#39;, error_code=&#39;12&#39;</div>
<div>One &quot;invalid regular expression&quot; message is to be expected</div><div>Error while compiling regular expression; regular_expression=&#39;((&#39;, error_at=&#39;&#39;, error_offset=&#39;2&#39;, error_message=&#39;missing )&#39;, error_code=&#39;14&#39;</div>
<div>PASS: test_filters</div><div>DNS cache speed:  6578947.368 iters/sec</div><div>inet_ntop speed:  1589572.405 iters/sec</div><div>PASS: test_dnscache</div><div>PASS: test_findeom</div><div>PASS: test_findcrlf</div><div>
PASS: test_tags</div><div>PASS: test_logwriter</div><div>PASS: test_logproto</div><div>PASS: test_serialize</div><div>Failed to open the time zone file; filename=&#39;/usr/share/zoneinfo/Factory&#39;, message=&#39;Failed to open file \&#39;/usr/share/zoneinfo/Factory\&#39;: open() failed: No such file or directory&#39;</div>
<div>Bogus timezone spec, must be in the format [+-]HH:MM, offset must be less than 24:00; value=&#39;Factory&#39;</div><div>SKIP: Factory</div><div>PASS: test_zone</div><div>PASS: test_persist_state</div><div>PASS: test_value_pairs</div>
<div>====================</div><div>1 of 21 tests failed</div><div>====================</div><div>make[3]: *** [check-TESTS] Error 1</div><div>make[3]: Leaving directory `/home/makerpm/rpmbuild/BUILD/syslog-ng-3.4.1/tests/unit&#39;</div>
<div>make[2]: *** [check-am] Error 2</div><div>make[2]: Leaving directory `/home/makerpm/rpmbuild/BUILD/syslog-ng-3.4.1/tests/unit&#39;</div><div>make[1]: *** [check-recursive] Error 1</div><div>make[1]: Leaving directory `/home/makerpm/rpmbuild/BUILD/syslog-ng-3.4.1/tests&#39;</div>
<div>make: *** [check-recursive] Error 1</div><div>error: Bad exit status from /var/tmp/rpm-tmp.izm78V (%check)</div><div><br></div><div><br></div><div>RPM build errors:</div><div>    Bad exit status from /var/tmp/rpm-tmp.izm78V (%check)</div>
<div>----------------------------xxxxxxxxxxxxx-------------------------------------------------------------------------</div><div><br></div><div>---------------syslog-ng.SPEC------------------------------------</div><div>
%global evtlog_ver 0.2.12</div><div><br></div><div>%global _sbindir /sbin</div><div>%global _libdir /%{_lib}</div><div><br></div><div>Name: syslog-ng</div><div>Version: 3.4.1</div><div>Release: 1%{?dist}</div><div>Summary: Next-generation syslog server</div>
<div><br></div><div>Group: System Environment/Daemons</div><div>License: GPLv2+</div><div>Url: <a href="http://www.balabit.com/network-security/syslog-ng">http://www.balabit.com/network-security/syslog-ng</a></div><div>Source0: <a href="http://www.balabit.com/downloads/files?path=/syslog-ng/sources/%{version}/source/%{name}_%{version}.tar.gz">http://www.balabit.com/downloads/files?path=/syslog-ng/sources/%{version}/source/%{name}_%{version}.tar.gz</a></div>
<div>Source1: syslog-ng.conf</div><div>Source2: syslog-ng.init.d</div><div>Source3: syslog-ng.sysconfig</div><div>Source4: syslog-ng.logrotate</div><div><br></div><div>#Patch0: syslog-ng-3.2.4-disable-ssl-tests.patch</div>
<div>#Patch1: syslog-ng-3.2.5-tests-functional-control.py.patch</div><div>#Patch2: syslog-ng-3.2.5-tests-functional-sql-test.patch</div><div><br></div><div>BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)</div>
<div><br></div><div>BuildRequires: pkgconfig</div><div>BuildRequires: libtool</div><div>BuildRequires: eventlog-devel &gt;= %{evtlog_ver}</div><div>BuildRequires: glib2-devel &gt;= 2.10.1</div><div>BuildRequires: libdbi-devel</div>
<div>BuildRequires: libnet-devel &gt;= 1.1.4-3</div><div>BuildRequires: openssl-devel</div><div>BuildRequires: pcre-devel &gt;= 6.1</div><div>BuildRequires: tcp_wrappers-devel</div><div><br></div><div># For the test suite</div>
<div>BuildRequires: python</div><div># For the SQL tests</div><div>BuildRequires: libdbi-dbd-sqlite</div><div><br></div><div>Requires: logrotate</div><div>Requires(post): /sbin/chkconfig</div><div>Requires(preun): /sbin/chkconfig</div>
<div>Requires(preun): /sbin/service</div><div>Requires(postun): /sbin/service</div><div><br></div><div>Provides: syslog</div><div># merge separate syslog-vim package into one</div><div>Provides: syslog-ng-vim = %{version}-%{release}</div>
<div>Obsoletes: syslog-ng-vim &lt; 2.0.8-1</div><div><br></div><div><br></div><div>%description</div><div>syslog-ng, as the name shows, is a syslogd replacement, but with new</div><div>functionality for the new generation. The original syslogd allows</div>
<div>messages only to be sorted based on priority/facility pairs; syslog-ng</div><div>adds the possibility to filter based on message contents using regular</div><div>expressions. The new configuration scheme is intuitive and powerful.</div>
<div>Forwarding logs over TCP and remembering all forwarding hops makes it</div><div>ideal for firewalled environments.</div><div><br></div><div><br></div><div>%package libdbi</div><div>Summary: libdbi support for %{name}</div>
<div>Group: Development/Libraries</div><div>Requires: %{name} = %{version}-%{release}</div><div><br></div><div>%description libdbi</div><div>This module supports a large number of database systems via libdbi.</div><div><br>
</div><div><br></div><div>%package devel</div><div>Summary: Development files for %{name}</div><div>Group: Development/Libraries</div><div>Requires: %{name} = %{version}-%{release}</div><div><br></div><div>%description devel</div>
<div>The %{name}-devel package contains libraries and header files for</div><div>developing applications that use %{name}.</div><div><br></div><div><br></div><div>%prep</div><div>%setup -q</div><div>#%patch0 -p1</div><div>
#%patch1 -p1</div><div>#%patch2 -p1</div><div><br></div><div># fix perl path</div><div>%{__sed} -i &#39;s|^#!/usr/local/bin/perl|#!%{__perl}|&#39; contrib/<a href="http://relogger.pl">relogger.pl</a></div><div><br></div><div>
# fix executable perms on contrib files</div><div>%{__chmod} -c a-x contrib/syslog2ng</div><div><br></div><div># fix authors file</div><div>/usr/bin/iconv -f iso8859-1 -t utf-8 AUTHORS &gt; AUTHORS.conv &amp;&amp; \</div>
<div>    %{__mv} -f AUTHORS.conv AUTHORS</div><div><br></div><div><br></div><div>%build</div><div>%configure \</div><div>    --prefix=/ \</div><div>    --libdir=/%{_lib} \</div><div>    --includedir=%{_includedir} \</div>
<div>    --sysconfdir=%{_sysconfdir}/%{name} \</div><div>    --localstatedir=%{_sharedstatedir}/%{name} \</div><div>    --datadir=%{_datadir}/%{name} \</div><div>    --with-module-dir=/%{_lib}/%{name} \</div><div>    --enable-ipv6 \</div>
<div>    --enable-tcp-wrapper \</div><div>    --enable-pcre \</div><div>    --enable-ssl \</div><div>    --enable-shared \</div><div>    --disable-static \</div><div>    --enable-dynamic-linking \</div><div>    --enable-threads=posix \</div>
<div>    --enable-linux-caps</div><div><br></div><div># remove rpath</div><div>sed -i &#39;s|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=&quot;&quot;|g&#39; libtool</div><div>sed -i &#39;s|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g&#39; libtool</div>
<div><br></div><div>make %{_smp_mflags}</div><div><br></div><div><br></div><div>%install</div><div>%{__rm} -rf %{buildroot}</div><div>make DESTDIR=%{buildroot} install</div><div><br></div><div>#%{__install} -d -m 755 %{buildroot}%{_sysconfdir}/%{name}</div>
<div>%{__install} -p -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}/syslog-ng.conf</div><div><br></div><div>%{__install} -d -m 755 %{buildroot}%{_sysconfdir}/init.d</div><div>%{__install} -p -m 755 %{SOURCE2} %{buildroot}%{_sysconfdir}/init.d/%{name}</div>
<div><br></div><div>%{__install} -d -m 755 %{buildroot}%{_sysconfdir}/sysconfig</div><div>%{__install} -p -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/%{name}</div><div><br></div><div>%{__install} -d -m 755 %{buildroot}%{_sysconfdir}/logrotate.d</div>
<div>%{__install} -p -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/logrotate.d/syslog</div><div><br></div><div># create the local state dir</div><div>%{__install} -d -m 755 %{buildroot}/%{_sharedstatedir}/%{name}</div><div>
<br></div><div># install the main library header files</div><div>%{__install} -d -m 755 %{buildroot}%{_includedir}/%{name}</div><div>%{__install} -p -m 644 config.h %{buildroot}%{_includedir}/%{name}</div><div>%{__install} -p -m 644 lib/*.h %{buildroot}%{_includedir}/%{name}</div>
<div><br></div><div># install vim files</div><div>%{__install} -d -m 755 %{buildroot}%{_datadir}/%{name}</div><div>%{__install} -p -m 644 contrib/syslog-ng.vim %{buildroot}%{_datadir}/%{name}</div><div>for vimver in 70 71 72 73 ; do</div>
<div>    %{__install} -d -m 755 %{buildroot}%{_datadir}/vim/vim$vimver/syntax</div><div>    cd %{buildroot}%{_datadir}/vim/vim$vimver/syntax</div><div>    ln -s ../../../%{name}/syslog-ng.vim .</div><div>    cd -</div><div>
done</div><div><br></div><div>find %{buildroot} -name &quot;*.la&quot; -exec rm -f {} \;</div><div><br></div><div><br></div><div>%check</div><div>LD_LIBRARY_PATH=%{buildroot}/%{_lib}:%{buildroot}/%{_lib}/%{name} make check</div>
<div><br></div><div><br></div><div>%clean</div><div>rm -rf %{buildroot}</div><div><br></div><div><br></div><div>%post</div><div>/sbin/ldconfig</div><div>/sbin/chkconfig --add %{name}</div><div><br></div><div><br></div><div>
%preun</div><div>if [ $1 -eq 0 ] ; then</div><div>    # Package removal, not upgrade</div><div>    /sbin/service %{name} stop &gt; /dev/null 2&gt;&amp;1</div><div>    /sbin/chkconfig --del %{name}</div><div>fi</div><div><br>
</div><div><br></div><div>%postun</div><div>/sbin/ldconfig</div><div>if [ $1 -ge 1 ] ; then</div><div>    # Package upgrade, not uninstall</div><div>    /sbin/service %{name} condrestart &gt;/dev/null 2&gt;&amp;1</div><div>
fi</div><div><br></div><div><br></div><div>%triggerin -- vim-common</div><div>VIMVERNEW=`rpm -q --qf=&#39;%%{epoch}:%%{version}\n&#39; vim-common | sort | tail -n 1 | sed -e &#39;s/[0-9]*://&#39; | sed -e &#39;s/\.[0-9]*$//&#39; | sed -e &#39;s/\.//&#39;`</div>
<div>[ -d %{_datadir}/vim/vim${VIMVERNEW}/syntax ] &amp;&amp; \</div><div>    cd %{_datadir}/vim/vim${VIMVERNEW}/syntax &amp;&amp; \</div><div>    ln -sf ../../../%{name}/syslog-ng.vim . || :</div><div><br></div><div>%triggerun -- vim-common</div>
<div>VIMVEROLD=`rpm -q --qf=&#39;%%{epoch}:%%{version}\n&#39; vim-common | sort | head -n 1 | sed -e &#39;s/[0-9]*://&#39; | sed -e &#39;s/\.[0-9]*$//&#39; | sed -e &#39;s/\.//&#39;`</div><div>[ $2 = 0 ] &amp;&amp; rm -f %{_datadir}/vim/vim${VIMVEROLD}/syntax/syslog-ng.vim || :</div>
<div><br></div><div>%triggerpostun -- vim-common</div><div>VIMVEROLD=`rpm -q --qf=&#39;%%{epoch}:%%{version}\n&#39; vim-common | sort | head -n 1 | sed -e &#39;s/[0-9]*://&#39; | sed -e &#39;s/\.[0-9]*$//&#39; | sed -e &#39;s/\.//&#39;`</div>
<div>VIMVERNEW=`rpm -q --qf=&#39;%%{epoch}:%%{version}\n&#39; vim-common | sort | tail -n 1 | sed -e &#39;s/[0-9]*://&#39; | sed -e &#39;s/\.[0-9]*$//&#39; | sed -e &#39;s/\.//&#39;`</div><div>if [ $1 = 1 ]; then</div><div>
    rm -f %{_datadir}/vim/vim${VIMVEROLD}/syntax/syslog-ng.vim || :</div><div>    [ -d %{_datadir}/vim/vim${VIMVERNEW}/syntax ] &amp;&amp; \</div><div>        cd %{_datadir}/vim/vim${VIMVERNEW}/syntax &amp;&amp; \</div><div>
        ln -sf ../../../%{name}/syslog-ng.vim . || :</div><div>fi</div><div><br></div><div><br></div><div>%files</div><div>%defattr(-,root,root,-)</div><div>%doc AUTHORS COPYING README ChangeLog NEWS</div><div>%doc doc/security/*.txt</div>
<div>%doc contrib/{<a href="http://relogger.pl">relogger.pl</a>,syslog2ng,syslog-ng.conf.doc}</div><div><br></div><div>%dir %{_sysconfdir}/%{name}</div><div>%dir %{_sysconfdir}/%{name}/patterndb.d</div><div>%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf</div>
<div>%config(noreplace) %{_sysconfdir}/%{name}/modules.conf</div><div>%config(noreplace) %{_sysconfdir}/%{name}/scl.conf</div><div>%config(noreplace) %{_sysconfdir}/sysconfig/%{name}</div><div>%config(noreplace) %{_sysconfdir}/logrotate.d/syslog</div>
<div>%{_sysconfdir}/init.d/%{name}</div><div>%dir %{_sharedstatedir}/%{name}</div><div>%{_sbindir}/%{name}</div><div>%{_sbindir}/syslog-ng-ctl</div><div>%{_bindir}/loggen</div><div>%{_bindir}/pdbtool</div><div>%{_bindir}/update-patterndb</div>
<div>%{_libdir}/lib%{name}.so.*</div><div>%{_libdir}/%{name}/*.so</div><div>%exclude %{_libdir}/%{name}/libafsql.so</div><div><br></div><div>%dir %{_datadir}/%{name}</div><div>%{_datadir}/%{name}/syslog-ng.vim</div><div>%ghost %{_datadir}/vim/</div>
<div><br></div><div># scl files</div><div>%{_datadir}/%{name}/include/</div><div><br></div><div># uhm, some better places for those?</div><div>%{_datadir}/%{name}/xsd/</div><div><br></div><div>%{_mandir}/man1/loggen.1*</div>
<div>%{_mandir}/man1/pdbtool.1*</div><div>%{_mandir}/man1/syslog-ng-ctl.1*</div><div>%{_mandir}/man5/syslog-ng.conf.5*</div><div>%{_mandir}/man8/syslog-ng.8*</div><div><br></div><div><br></div><div>%files libdbi</div><div>
%defattr(-,root,root,-)</div><div>%{_libdir}/%{name}/libafsql.so</div><div><br></div><div><br></div><div>%files devel</div><div>%defattr(-,root,root,-)</div><div>%{_libdir}/libsyslog-ng.so</div><div>%{_includedir}/%{name}/</div>
<div><br></div><div><br></div><div>%changelog</div><div>------------------------------------------------------------------------------------------------------------------------</div><div><br></div><div><br></div><div><br>
</div><div>----------/var/tmp/rpm-tmp.izm78V--------------------</div><div>#!/bin/sh</div><div><br></div><div>  RPM_SOURCE_DIR=&quot;/home/makerpm/rpmbuild/SOURCES&quot;</div><div>  RPM_BUILD_DIR=&quot;/home/makerpm/rpmbuild/BUILD&quot;</div>
<div>  RPM_OPT_FLAGS=&quot;-O2 -g&quot;</div><div>  RPM_ARCH=&quot;x86_64&quot;</div><div>  RPM_OS=&quot;linux&quot;</div><div>  export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS</div><div>  RPM_DOC_DIR=&quot;/usr/share/doc&quot;</div>
<div>  export RPM_DOC_DIR</div><div>  RPM_PACKAGE_NAME=&quot;syslog-ng&quot;</div><div>  RPM_PACKAGE_VERSION=&quot;3.4.1&quot;</div><div>  RPM_PACKAGE_RELEASE=&quot;1.el6&quot;</div><div>  export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE</div>
<div>  LANG=C</div><div>  export LANG</div><div>  unset CDPATH DISPLAY ||:</div><div>  RPM_BUILD_ROOT=&quot;/home/makerpm/rpmbuild/BUILDROOT/syslog-ng-3.4.1-1.el6.x86_64&quot;</div><div>  export RPM_BUILD_ROOT</div><div>  </div>
<div>  PKG_CONFIG_PATH=&quot;/lib64/pkgconfig:/usr/share/pkgconfig&quot;</div><div>  export PKG_CONFIG_PATH</div><div>  </div><div>  set -x</div><div>  umask 022</div><div>  cd &quot;/home/makerpm/rpmbuild/BUILD&quot;</div>
<div>cd &#39;syslog-ng-3.4.1&#39;</div><div>LD_LIBRARY_PATH=/home/makerpm/rpmbuild/BUILDROOT/syslog-ng-3.4.1-3.el6.x86_64/lib64:/makerpm/rpmbuild/BUILDROOT/syslog-ng-3.4.1-3.el6.x86_64/lib64/syslog-ng make check</div><div>
<br></div><div>exit 0</div><div>-------------------------------------------------------------------------------------</div><div><br></div><div><br></div></div></div>