package/rsyslog: Autoreconf is not necessary anymore
PATCH 1/3 package/rsyslog: Autoreconf is not necessary anymore
Buildroot contains no patches for this package anymore.
--- package/rsyslog/rsyslog.mk | 2 -- 1 file changed, 2 deletions(-)
package/rsyslog/rsyslog.mk +0 -2
@@ -16,8 +16,6 @@ RSYSLOG_PLUGINS = imdiag imfile impstats imptcp \ pmaixforwardedfrom pmciscoios pmcisconames pmlastmsg pmsnare RSYSLOG_CONF_OPTS = --disable-generate-man-pages \ $(foreach x,$(call qstrip,$(RSYSLOG_PLUGINS)),--enable-$(x)) -# For mysql and pgsql support patches -RSYSLOG_AUTORECONF = YES # Build after BusyBox ifeq ($(BR2_PACKAGE_BUSYBOX),y)
Signature · 1 line
1.7.10.4
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Configure misses libm and libpthread when checking for postgresql. Patching configure.ac did not fix the problem so we patch configure directly, therefore autoreconf is not necessary.
Fixes
http://autobuild.buildroot.net/results/81e/81e6dd9d5bce3ecaa11765fb94ca538991b1e174/
http://autobuild.buildroot.net/results/0bd/0bdde92bd0e0fa163c4b6579ff69b7f6e61a8b19/
http://autobuild.buildroot.net/results/cab/cabf2352307de58ff357ee59bf273ee487a2b716/
http://autobuild.buildroot.net/results/8a3/8a31c815f113f610fb2cdbc4d27e5ade492be354/
http://autobuild.buildroot.net/results/d0f/d0fe409d23117ea2cea640b8d7ff6dbb7c33943a/
http://autobuild.buildroot.net/results/3ca/3ca2a7a38cf48e69fed888aecb8782687ad48c99/
http://autobuild.buildroot.net/results/3d3/3d326ba195682b6650ebabcedbe4b5d4fb5cf116/
http://autobuild.buildroot.net/results/456/456e75367b3a8e2eb9ad82478f3522e89f658912/
http://autobuild.buildroot.net/results/1b7/1b745408187b7655ae22942572367d7ed911973b/
--- package/rsyslog/0001-pgsql.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 package/rsyslog/0001-pgsql.patch
package/rsyslog/0001-pgsql.patch new file +12 -0
@@ -0,0 +1,12 @@ +diff -uNr rsyslog-8.9.0.org/configure rsyslog-8.9.0/configure +--- rsyslog-8.9.0.org/configure 2015-04-07 15:08:47.000000000 +0200 ++++ rsyslog-8.9.0/configure 2015-04-11 09:44:23.649214912 +0200 +@@ -17385,7 +17385,7 @@ + $as_echo_n "(cached) " >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lpq -L`$PG_CONFIG --libdir` ++LIBS="-lm -lpthread -lpq -L`$PG_CONFIG --libdir` + $LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */
Signature · 1 line
1.7.10.4
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Bernd, All,
On 2015-04-11 09:52 +0200, Bernd Kuhls spake thusly:
Quoted 3 lines
Configure misses libm and libpthread when checking for postgresql. Patching configure.ac did not fix the problem so we patch configure directly, therefore autoreconf is not necessary.
Well, I'd still prefer we do a fix that has a chance to be accepted upstream...
However...
Quoted 25 lines
Fixes
http://autobuild.buildroot.net/results/81e/81e6dd9d5bce3ecaa11765fb94ca538991b1e174/
http://autobuild.buildroot.net/results/0bd/0bdde92bd0e0fa163c4b6579ff69b7f6e61a8b19/
http://autobuild.buildroot.net/results/cab/cabf2352307de58ff357ee59bf273ee487a2b716/
http://autobuild.buildroot.net/results/8a3/8a31c815f113f610fb2cdbc4d27e5ade492be354/
http://autobuild.buildroot.net/results/d0f/d0fe409d23117ea2cea640b8d7ff6dbb7c33943a/
http://autobuild.buildroot.net/results/3ca/3ca2a7a38cf48e69fed888aecb8782687ad48c99/
http://autobuild.buildroot.net/results/3d3/3d326ba195682b6650ebabcedbe4b5d4fb5cf116/
http://autobuild.buildroot.net/results/456/456e75367b3a8e2eb9ad82478f3522e89f658912/
http://autobuild.buildroot.net/results/1b7/1b745408187b7655ae22942572367d7ed911973b/Signed-off-by Bernd Kuhls <[email protected]>--- package/rsyslog/0001-pgsql.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 package/rsyslog/0001-pgsql.patchpackage/rsyslog/0001-pgsql.patch new file +2
-0@@ -0,0 +1,12 @@ +diff -uNr rsyslog-8.9.0.org/configure rsyslog-8.9.0/configure +--- rsyslog-8.9.0.org/configure 2015-04-07 15:08:47.000000000 +0200
package/rsyslog/0001-pgsql.patch line 12
Quoted 10 lines
package/rsyslog/0001-pgsql.patch new file +10
-0++++ rsyslog-8.9.0/configure 2015-04-11 09:44:23.649214912 +0200 +@@ -17385,7 +17385,7 @@ + $as_echo_n "(cached) " >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lpq -L`$PG_CONFIG --libdir` ++LIBS="-lm -lpthread -lpq -L`$PG_CONFIG --libdir` + $LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */
... why not this:
package/rsyslog/rsyslog.mk +3 -0
@@ -48,6 +48,7 @@ ifeq ($(BR2_PACKAGE_POSTGRESQL),y) RSYSLOG_DEPENDENCIES += postgresql RSYSLOG_CONF_OPTS += --enable-pgsql RSYSLOG_CONF_ENV += ac_cv_prog_PG_CONFIG=$(STAGING_DIR)/usr/bin/pg_config +RSYSLOG_LIBS += -lm -lpthread else RSYSLOG_CONF_OPTS += --disable-pgsql endif
@@ -59,6 +60,8 @@ else RSYSLOG_CONF_OPTS += --disable-uuid endif +RSYSLOG_CONF_ENV += LIBS="$(RSYSLOG_LIBS)" + define RSYSLOG_INSTALL_INIT_SYSV $(INSTALL) -m 0755 -D package/rsyslog/S01logging \ $(TARGET_DIR)/etc/init.d/S01logging
As far as I could test, it also fixes the issue for us (but is ugly, I think Thomas does not like this too much...).
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 2/3 package/rsyslog: Fix linking against postgresql
In reply to Bernd KuhlsDear Bernd Kuhls,
Quoted 2 lines · Bernd Kuhls
Configure misses libm and libpthread when checking for postgresql. Patching configure.ac did not fix the problem so we patch configure directly,
Hum, why?
It seems a bit backward to remove AUTORECONF = YES to then add a patch that modifies the configure script directly.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Thomas Petazzoni <[email protected]> wrote in news:20150411124226.726fde30 at free-electrons.com:
Quoted 11 lines
Dear Bernd Kuhls,
Quoted 3 lines · Bernd Kuhls
Configure misses libm and libpthread when checking for postgresql. Patching configure.ac did not fix the problem so we patch configure directly,
Hum, why?
It seems a bit backward to remove AUTORECONF = YES to then add a patch that modifies the configure script directly.
Hi,
I tried to add "-lm -lpthread" to line 615 in configure.ac:
- PGSQL_LIBS="-L$PG_CONFIG --libdir -lpq"
+ PGSQL_LIBS="-L$PG_CONFIG --libdir -lm -lpthread -lpq"
Original configure, line 17388, looks like this before autoreconf
LIBS="-lpq -L$PG_CONFIG --libdir
and, as line 17865, it still looks the same causing postgresql detection to fail...
Please note that -lpq is on the first position in this variable, I have no idea how to change this line in configure without patching that file directly.
Regards, Bernd
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Bernd, All,
On 2015-04-11 13:38 +0200, Bernd Kuhls spake thusly:
Quoted 25 lines
Thomas Petazzoni <[email protected]> wrote in news:20150411124226.726fde30 at free-electrons.com:
Quoted 11 lines
Dear Bernd Kuhls,
Quoted 3 lines · Bernd Kuhls
Configure misses libm and libpthread when checking for postgresql. Patching configure.ac did not fix the problem so we patch configure directly,
Hum, why?
It seems a bit backward to remove AUTORECONF = YES to then add a patch that modifies the configure script directly.
Hi,
I tried to add "-lm -lpthread" to line 615 in configure.ac:
(quoted diff) +1
-1- PGSQL_LIBS="-L`$PG_CONFIG --libdir` -lpq" + PGSQL_LIBS="-L`$PG_CONFIG --libdir` -lm -lpthread -lpq"Original configure, line 17388, looks like this before autoreconf
Quoted 8 lines
LIBS="-lpq -L
$PG_CONFIG --libdirand, as line 17865, it still looks the same causing postgresql detection to fail...
Please note that -lpq is on the first position in this variable, I have no idea how to change this line in configure without patching that file directly.
That's because this line is generated from the 5th argument to AC_CHECK_LIB, which contains the 'other-libraries':
https://www.gnu.org/software/autoconf/manual/autoconf.html#Libraries
If linking with library results in unresolved symbols that would be resolved by linking with additional libraries, give those libraries as the other-libraries argument, separated by spaces: e.g., -lXt -lX11. Otherwise, this macro may fail to detect that library is present, because linking the test program can fail with unresolved symbols. The other-libraries argument should be limited to cases where it is desirable to test for one library in the presence of another that is not already in LIBS.
The part you wanted change is the third argument of AC_CHECK_LIB, which is the 'action-if-found', and thus gets run only if the check is OK, which can occure, given that those extra libs are not passed in 'other-libraries'.
The correct and definitive solution would be to fully use pg_config to get the libraries we need to link to.
Unfortunately, pg_config is a binary, so we provide our own minimalist one, which does not implement --libs.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Dear Yann E. MORIN,
Quoted 2 lines · Yann E. MORIN
Unfortunately,
pg_configis a binary, so we provide our own minimalist one, which does not implement --libs.
So, shouldn't we simply implement --libs in our own pg_config implementation?
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Thomas, Bernd, All,
On 2015-04-11 14:15 +0200, Thomas Petazzoni spake thusly:
Quoted 6 lines · Yann E. MORIN
Quoted 2 lines
Unfortunately,
pg_configis a binary, so we provide our own minimalist one, which does not implement --libs.So, shouldn't we simply implement --libs in our own
pg_configimplementation?
Well, I thought that was pretty much obvious we should, yes.
However, I've had a quick look, and it's not that easy... :-(
For example, regarding the issue we're actually trying to solve: the check rsyslog's ./configure does is eventually using _isnan() which is in -lm, but nothing in the NEEDED of libpq.so suggests -lm is needed, not even in the dependency chain (i.e. NEEDEDs of NEEDEDs...)
So, I can have a deeper and longer look, but that will be later. Unless Bernd beats me to it, that is. ;-)
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Am Sat, 11 Apr 2015 14:23:23 +0200 schrieb Yann E. MORIN:
Quoted 2 lines
So, I can have a deeper and longer look, but that will be later. Unless Bernd beats me to it, that is. ;-)
Hi Yann,
this is not necessary anymore because the pgsql-rsyslog problem was fixed with this commit on May 14th by Baruch:
http://git.buildroot.net/buildroot/commit/package/postgresql?
id=3d3f70b567718ae308b5704ddd7d107c4849309e
I marked my patch as superseded.
Regards, Bernd
PATCH 2/3 package/rsyslog: Fix linking against postgresql
Bernd,
Quoted 7 lines · Bernd Kuhls
this is not necessary anymore because the pgsql-rsyslog problem was fixed with this commit on May 14th by Baruch:
http://git.buildroot.net/buildroot/commit/package/postgresql?
id=3d3f70b567718ae308b5704ddd7d107c4849309eI marked my patch as superseded.
Good. Thanks for following up on this patch!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 3/3 package/rsyslog: bump version to 8.9.0
In reply to Bernd Kuhls--- package/rsyslog/rsyslog.hash | 2 +- package/rsyslog/rsyslog.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
package/rsyslog/rsyslog.hash +1 -1
@@ -1,2 +1,2 @@ # From http://www.rsyslog.com/downloads/download-v8-stable/ -sha256 147a7e474665af7a817ac18d7924e26448350a77572e7fd9cfe284cb6291a0eb rsyslog-8.8.0.tar.gz +sha256 eab00e8e758cd9dd33b3e2cf6af80297d1951dc7db37bd723a6488a35d577adc rsyslog-8.9.0.tar.gz
package/rsyslog/rsyslog.mk +1 -1
@@ -4,7 +4,7 @@ # ################################################################################ -RSYSLOG_VERSION = 8.8.0 +RSYSLOG_VERSION = 8.9.0 RSYSLOG_SITE = http://rsyslog.com/files/download/rsyslog RSYSLOG_LICENSE = GPLv3 LGPLv3 Apache-2.0 RSYSLOG_LICENSE_FILES = COPYING COPYING.LESSER COPYING.ASL20
Signature · 1 line
1.7.10.4
Thomas Petazzoni
AppliedPATCH 3/3 package/rsyslog: bump version to 8.9.0
Dear Bernd Kuhls,
Quoted 6 lines · Bernd Kuhls
Signed-off-by Bernd Kuhls <[email protected]>--- package/rsyslog/rsyslog.hash | 2 +- package/rsyslog/rsyslog.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
Applied, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/3 package/rsyslog: Autoreconf is not necessary anymore
In reply to Bernd KuhlsBernd, All,
On 2015-04-11 09:52 +0200, Bernd Kuhls spake thusly:
Quoted 3 lines
Buildroot contains no patches for this package anymore.
Signed-off-by Bernd Kuhls <[email protected]>
Regards,
Yann E. MORIN.
Quoted 24 lines
--- package/rsyslog/rsyslog.mk | 2 -- 1 file changed, 2 deletions(-)package/rsyslog/rsyslog.mk +0
-2@@ -16,8 +16,6 @@ RSYSLOG_PLUGINS = imdiag imfile impstats imptcp \ pmaixforwardedfrom pmciscoios pmcisconames pmlastmsg pmsnare RSYSLOG_CONF_OPTS = --disable-generate-man-pages \ $(foreach x,$(call qstrip,$(RSYSLOG_PLUGINS)),--enable-$(x)) -# For mysql and pgsql support patches -RSYSLOG_AUTORECONF = YES # Build after BusyBox ifeq ($(BR2_PACKAGE_BUSYBOX),y)Signature · 6 lines
1.7.10.4 _______________________________________________ buildroot mailing list buildroot at busybox.net http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'