* [Buildroot] [PATCH 0/5] Random autobuilder failure fixes
@ 2014-12-27 13:47 Thomas Petazzoni
2014-12-27 13:47 ` [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 Thomas Petazzoni
` (4 more replies)
0 siblings, 5 replies; 14+ messages in thread
From: Thomas Petazzoni @ 2014-12-27 13:47 UTC (permalink / raw)
To: buildroot
Hello,
Here is a set of patches to fix autobuilder fixes of libxmlrpc, xerces
and guile.
Thomas
Thomas Petazzoni (5):
libxmlrpc: bump to 1.25.30
libxmlrpc: rename patches to the new convention
libxmlrpc: improve curl-config patch
xerces: make sure to use the cross-compiled curl
guile: fix libltdl and libgmp detection
package/guile/guile.mk | 4 +
...b-build.patch => 0001-fix-gennmtab-build.patch} | 0
...ld.patch => 0002-fix-non-cplusplus-build.patch} | 0
...char-build.patch => 0003-non-wchar-build.patch} | 0
.../libxmlrpc/0004-use-correct-curl-config.patch | 96 ++++++++++++++++++++++
.../libxmlrpc-0004-use-correct-curl-config.patch | 22 -----
package/libxmlrpc/libxmlrpc.mk | 11 ++-
package/xerces/xerces.mk | 2 +-
8 files changed, 110 insertions(+), 25 deletions(-)
rename package/libxmlrpc/{libxmlrpc-0001-fix-gennmtab-build.patch => 0001-fix-gennmtab-build.patch} (100%)
rename package/libxmlrpc/{libxmlrpc-0002-fix-non-cplusplus-build.patch => 0002-fix-non-cplusplus-build.patch} (100%)
rename package/libxmlrpc/{libxmlrpc-0003-non-wchar-build.patch => 0003-non-wchar-build.patch} (100%)
create mode 100644 package/libxmlrpc/0004-use-correct-curl-config.patch
delete mode 100644 package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch
--
2.1.0
^ permalink raw reply [flat|nested] 14+ messages in thread* [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 2014-12-27 13:47 [Buildroot] [PATCH 0/5] Random autobuilder failure fixes Thomas Petazzoni @ 2014-12-27 13:47 ` Thomas Petazzoni 2014-12-27 15:56 ` Yann E. MORIN 2014-12-27 13:47 ` [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention Thomas Petazzoni ` (3 subsequent siblings) 4 siblings, 1 reply; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 13:47 UTC (permalink / raw) To: buildroot Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- package/libxmlrpc/libxmlrpc.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk index a8e8aa3..1b771e2 100644 --- a/package/libxmlrpc/libxmlrpc.mk +++ b/package/libxmlrpc/libxmlrpc.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXMLRPC_VERSION = 1.25.26 +LIBXMLRPC_VERSION = 1.25.30 LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/$(LIBXMLRPC_VERSION) LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c) -- 2.1.0 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 2014-12-27 13:47 ` [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 Thomas Petazzoni @ 2014-12-27 15:56 ` Yann E. MORIN 2014-12-27 16:26 ` Thomas Petazzoni 0 siblings, 1 reply; 14+ messages in thread From: Yann E. MORIN @ 2014-12-27 15:56 UTC (permalink / raw) To: buildroot Thomas, All, On 2014-12-27 14:47 +0100, Thomas Petazzoni spake thusly: > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > --- > package/libxmlrpc/libxmlrpc.mk | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk > index a8e8aa3..1b771e2 100644 > --- a/package/libxmlrpc/libxmlrpc.mk > +++ b/package/libxmlrpc/libxmlrpc.mk > @@ -4,7 +4,7 @@ > # > ################################################################################ > > -LIBXMLRPC_VERSION = 1.25.26 > +LIBXMLRPC_VERSION = 1.25.30 > LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz > LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/$(LIBXMLRPC_VERSION) Since we do get a lot of dowenload issues with sourceforge, could you take this opportunity to add a .hash file for libxmlrpc? Regards, Yann E. MORIN. > LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c) > -- > 2.1.0 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot -- .-----------------.--------------------.------------------.--------------------. | 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. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 2014-12-27 15:56 ` Yann E. MORIN @ 2014-12-27 16:26 ` Thomas Petazzoni 0 siblings, 0 replies; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 16:26 UTC (permalink / raw) To: buildroot Dear Yann E. MORIN, On Sat, 27 Dec 2014 16:56:48 +0100, Yann E. MORIN wrote: > > -LIBXMLRPC_VERSION = 1.25.26 > > +LIBXMLRPC_VERSION = 1.25.30 > > LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz > > LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/$(LIBXMLRPC_VERSION) > > Since we do get a lot of dowenload issues with sourceforge, could you > take this opportunity to add a .hash file for libxmlrpc? Good point. I've just sent a v2 which adds this. Thanks, Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention 2014-12-27 13:47 [Buildroot] [PATCH 0/5] Random autobuilder failure fixes Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 Thomas Petazzoni @ 2014-12-27 13:47 ` Thomas Petazzoni 2014-12-27 15:57 ` Yann E. MORIN 2014-12-27 16:21 ` Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 3/5] libxmlrpc: improve curl-config patch Thomas Petazzoni ` (2 subsequent siblings) 4 siblings, 2 replies; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 13:47 UTC (permalink / raw) To: buildroot Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- ...xmlrpc-0001-fix-gennmtab-build.patch => 0001-fix-gennmtab-build.patch} | 0 ...2-fix-non-cplusplus-build.patch => 0002-fix-non-cplusplus-build.patch} | 0 .../{libxmlrpc-0003-non-wchar-build.patch => 0003-non-wchar-build.patch} | 0 ...4-use-correct-curl-config.patch => 0004-use-correct-curl-config.patch} | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename package/libxmlrpc/{libxmlrpc-0001-fix-gennmtab-build.patch => 0001-fix-gennmtab-build.patch} (100%) rename package/libxmlrpc/{libxmlrpc-0002-fix-non-cplusplus-build.patch => 0002-fix-non-cplusplus-build.patch} (100%) rename package/libxmlrpc/{libxmlrpc-0003-non-wchar-build.patch => 0003-non-wchar-build.patch} (100%) rename package/libxmlrpc/{libxmlrpc-0004-use-correct-curl-config.patch => 0004-use-correct-curl-config.patch} (100%) diff --git a/package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch b/package/libxmlrpc/0001-fix-gennmtab-build.patch similarity index 100% rename from package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch rename to package/libxmlrpc/0001-fix-gennmtab-build.patch diff --git a/package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch b/package/libxmlrpc/0002-fix-non-cplusplus-build.patch similarity index 100% rename from package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch rename to package/libxmlrpc/0002-fix-non-cplusplus-build.patch diff --git a/package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch b/package/libxmlrpc/0003-non-wchar-build.patch similarity index 100% rename from package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch rename to package/libxmlrpc/0003-non-wchar-build.patch diff --git a/package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch b/package/libxmlrpc/0004-use-correct-curl-config.patch similarity index 100% rename from package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch rename to package/libxmlrpc/0004-use-correct-curl-config.patch -- 2.1.0 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention 2014-12-27 13:47 ` [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention Thomas Petazzoni @ 2014-12-27 15:57 ` Yann E. MORIN 2014-12-27 16:21 ` Thomas Petazzoni 1 sibling, 0 replies; 14+ messages in thread From: Yann E. MORIN @ 2014-12-27 15:57 UTC (permalink / raw) To: buildroot Thomas, All, On 2014-12-27 14:47 +0100, Thomas Petazzoni spake thusly: > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Regards, Yann E. MORIN. > --- > ...xmlrpc-0001-fix-gennmtab-build.patch => 0001-fix-gennmtab-build.patch} | 0 > ...2-fix-non-cplusplus-build.patch => 0002-fix-non-cplusplus-build.patch} | 0 > .../{libxmlrpc-0003-non-wchar-build.patch => 0003-non-wchar-build.patch} | 0 > ...4-use-correct-curl-config.patch => 0004-use-correct-curl-config.patch} | 0 > 4 files changed, 0 insertions(+), 0 deletions(-) > rename package/libxmlrpc/{libxmlrpc-0001-fix-gennmtab-build.patch => 0001-fix-gennmtab-build.patch} (100%) > rename package/libxmlrpc/{libxmlrpc-0002-fix-non-cplusplus-build.patch => 0002-fix-non-cplusplus-build.patch} (100%) > rename package/libxmlrpc/{libxmlrpc-0003-non-wchar-build.patch => 0003-non-wchar-build.patch} (100%) > rename package/libxmlrpc/{libxmlrpc-0004-use-correct-curl-config.patch => 0004-use-correct-curl-config.patch} (100%) > > diff --git a/package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch b/package/libxmlrpc/0001-fix-gennmtab-build.patch > similarity index 100% > rename from package/libxmlrpc/libxmlrpc-0001-fix-gennmtab-build.patch > rename to package/libxmlrpc/0001-fix-gennmtab-build.patch > diff --git a/package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch b/package/libxmlrpc/0002-fix-non-cplusplus-build.patch > similarity index 100% > rename from package/libxmlrpc/libxmlrpc-0002-fix-non-cplusplus-build.patch > rename to package/libxmlrpc/0002-fix-non-cplusplus-build.patch > diff --git a/package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch b/package/libxmlrpc/0003-non-wchar-build.patch > similarity index 100% > rename from package/libxmlrpc/libxmlrpc-0003-non-wchar-build.patch > rename to package/libxmlrpc/0003-non-wchar-build.patch > diff --git a/package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch b/package/libxmlrpc/0004-use-correct-curl-config.patch > similarity index 100% > rename from package/libxmlrpc/libxmlrpc-0004-use-correct-curl-config.patch > rename to package/libxmlrpc/0004-use-correct-curl-config.patch > -- > 2.1.0 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot -- .-----------------.--------------------.------------------.--------------------. | 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. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention 2014-12-27 13:47 ` [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention Thomas Petazzoni 2014-12-27 15:57 ` Yann E. MORIN @ 2014-12-27 16:21 ` Thomas Petazzoni 1 sibling, 0 replies; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 16:21 UTC (permalink / raw) To: buildroot Hello, On Sat, 27 Dec 2014 14:47:15 +0100, Thomas Petazzoni wrote: > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Applied. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 3/5] libxmlrpc: improve curl-config patch 2014-12-27 13:47 [Buildroot] [PATCH 0/5] Random autobuilder failure fixes Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention Thomas Petazzoni @ 2014-12-27 13:47 ` Thomas Petazzoni 2014-12-27 16:18 ` Yann E. MORIN 2014-12-27 13:47 ` [Buildroot] [PATCH 4/5] xerces: make sure to use the cross-compiled curl Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection Thomas Petazzoni 4 siblings, 1 reply; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 13:47 UTC (permalink / raw) To: buildroot The curl-config patch that makes sure to not use curl-config from the PATH but the curl-config program specified at configure time was forgetting a number of other places. So we change the strategy, and make the configure.in script define a $CURL_CONFIG variable that can be used in Makefiles where appropriate. This means we need to run autoconf (but not AUTORECONF = YES since the package uses autoconf but not automake). This fixes build failures in cases where a curl-config program is in the PATH. Fixes: http://autobuild.buildroot.org/results/06b/06b7eada721483eb57adde147768a1f306b7d0d7/ (and many similar ones) Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- .../libxmlrpc/0004-use-correct-curl-config.patch | 82 ++++++++++++++++++++-- package/libxmlrpc/libxmlrpc.mk | 9 ++- 2 files changed, 86 insertions(+), 5 deletions(-) diff --git a/package/libxmlrpc/0004-use-correct-curl-config.patch b/package/libxmlrpc/0004-use-correct-curl-config.patch index ada0bd2..c0646d3 100644 --- a/package/libxmlrpc/0004-use-correct-curl-config.patch +++ b/package/libxmlrpc/0004-use-correct-curl-config.patch @@ -1,9 +1,10 @@ Use correct curl-config program -Instead of calling again curl-config in src/Makefile (which ends up +Instead of calling directly curl-config in src/Makefile (which ends up calling the wrong curl-config: the one in the PATH instead of the one -pointed at by the environment variables at configure time), let's use -the CURL_LDADD variable which was computed at configure time. +pointed at by the environment variables at configure time), let's +define a CURL_CONFIG variable that contains the path to the proper +curl-config program, and use it where appropriate. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> @@ -16,7 +17,80 @@ Index: b/src/Makefile TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread - TRANSPORT_LIBDEP += $(shell curl-config --libs) -+ TRANSPORT_LIBDEP += $(CURL_LDADD) ++ TRANSPORT_LIBDEP += $(shell $CURL_CONFIG --libs) endif ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transport +Index: b/config.mk.in +=================================================================== +--- a/config.mk.in ++++ b/config.mk.in +@@ -32,6 +32,7 @@ + LSOCKET = @LSOCKET@ + WININET_LDADD = @WININET_LDADD@ + WININET_LIBDIR = @WININET_LIBDIR@ ++CURL_CONFIG = @CURL_CONFIG@ + CURL_LDADD = @CURL_LDADD@ + CURL_LIBDIR = @CURL_LIBDIR@ + LIBWWW_LDADD = @LIBWWW_LDADD@ +Index: b/configure.in +=================================================================== +--- a/configure.in ++++ b/configure.in +@@ -550,6 +550,8 @@ + dnl So we don't do any check now. If we find out there's a problem with + dnl older Curls, we will revisit that. + ++ AC_SUBST(CURL_CONFIG) ++ + CURL_LDADD=$($CURL_CONFIG --libs) + AC_SUBST(CURL_LDADD) + +Index: b/lib/curl_transport/Makefile +=================================================================== +--- a/lib/curl_transport/Makefile ++++ b/lib/curl_transport/Makefile +@@ -29,7 +29,7 @@ + + $(SRCDIR)/common.mk: srcdir blddir + +-CURL_VERSION := $(shell curl-config --vernum) ++CURL_VERSION := $(shell $CURL_CONFIG --vernum) + + # Some time at or before Curl 7.12, <curl/types.h> became an empty file + # (no-op). Some time after Curl 7.18, <curl/types.h> ceased to exist. +@@ -43,7 +43,7 @@ + CFLAGS_LOCAL += -DNEED_CURL_TYPES_H + endif + +-CURL_INCLUDES := $(shell curl-config --cflags) ++CURL_INCLUDES := $(shell $CURL_CONFIG --cflags) + # We expect that curl-config --cflags just gives us -I options, because + # we need just the -I options for 'make dep'. Plus, it's scary to think + # of what any other compiler flag would do to our compile. +Index: b/src/cpp/test/Makefile +=================================================================== +--- a/src/cpp/test/Makefile ++++ b/src/cpp/test/Makefile +@@ -20,7 +20,7 @@ + LIBS := $(shell $(XMLRPC_C_CONFIG) client --ldadd) + + ifeq ($(MUST_BUILD_CURL_CLIENT),yes) +- LIBS += $(shell curl-config --libs) ++ LIBS += $(shell $CURL_CONFIG --libs) + endif + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) + LIBS += $(shell libwww-config --libs) +Index: b/tools/common.mk +=================================================================== +--- a/tools/common.mk ++++ b/tools/common.mk +@@ -15,7 +15,7 @@ + CLIENT_LDLIBS += $(shell libwww-config --libs) + endif + ifeq ($(MUST_BUILD_CURL_CLIENT),yes) +- CLIENT_LDLIBS += $(shell curl-config --libs) ++ CLIENT_LDLIBS += $(shell $CURL_CONFIG --libs) + endif + ifeq ($(MUST_BUILD_WININET_CLIENT),yes) + CLIENT_LDLIBS += $(shell wininet-config --libs) diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk index 1b771e2..c3788d6 100644 --- a/package/libxmlrpc/libxmlrpc.mk +++ b/package/libxmlrpc/libxmlrpc.mk @@ -10,10 +10,17 @@ LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Su LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c) LIBXMLRPC_LICENSE_FILES = doc/COPYING LIBXMLRPC_INSTALL_STAGING = YES -LIBXMLRPC_DEPENDENCIES = libcurl +LIBXMLRPC_DEPENDENCIES = libcurl host-autoconf LIBXMLRPC_CONFIG_SCRIPTS = xmlrpc-c-config LIBXMLRPC_MAKE = $(MAKE1) +# Using autoconf, not automake, so we cannot use AUTORECONF = YES. +define LIBXMLRPC_RUN_AUTOCONF + cd $(@D); $(HOST_DIR)/usr/bin/autoconf +endef + +LIBXMLRPC_PRE_CONFIGURE_HOOKS += LIBXMLRPC_RUN_AUTOCONF + LIBXMLRPC_CONF_OPTS = \ $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ -- 2.1.0 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 3/5] libxmlrpc: improve curl-config patch 2014-12-27 13:47 ` [Buildroot] [PATCH 3/5] libxmlrpc: improve curl-config patch Thomas Petazzoni @ 2014-12-27 16:18 ` Yann E. MORIN 0 siblings, 0 replies; 14+ messages in thread From: Yann E. MORIN @ 2014-12-27 16:18 UTC (permalink / raw) To: buildroot Thomas, All, On 2014-12-27 14:47 +0100, Thomas Petazzoni spake thusly: > The curl-config patch that makes sure to not use curl-config from the > PATH but the curl-config program specified at configure time was > forgetting a number of other places. So we change the strategy, and > make the configure.in script define a $CURL_CONFIG variable that can > be used in Makefiles where appropriate. > > This means we need to run autoconf (but not AUTORECONF = YES since the > package uses autoconf but not automake). > > This fixes build failures in cases where a curl-config program is in > the PATH. Fixes: > > http://autobuild.buildroot.org/results/06b/06b7eada721483eb57adde147768a1f306b7d0d7/ > (and many similar ones) > > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> [tested againt an autobuilder failure, even though I was not able to reproduce it beforehand] Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Regards, Yann E. MORIN. > --- > .../libxmlrpc/0004-use-correct-curl-config.patch | 82 ++++++++++++++++++++-- > package/libxmlrpc/libxmlrpc.mk | 9 ++- > 2 files changed, 86 insertions(+), 5 deletions(-) > > diff --git a/package/libxmlrpc/0004-use-correct-curl-config.patch b/package/libxmlrpc/0004-use-correct-curl-config.patch > index ada0bd2..c0646d3 100644 > --- a/package/libxmlrpc/0004-use-correct-curl-config.patch > +++ b/package/libxmlrpc/0004-use-correct-curl-config.patch > @@ -1,9 +1,10 @@ > Use correct curl-config program > > -Instead of calling again curl-config in src/Makefile (which ends up > +Instead of calling directly curl-config in src/Makefile (which ends up > calling the wrong curl-config: the one in the PATH instead of the one > -pointed at by the environment variables at configure time), let's use > -the CURL_LDADD variable which was computed at configure time. > +pointed at by the environment variables at configure time), let's > +define a CURL_CONFIG variable that contains the path to the proper > +curl-config program, and use it where appropriate. > > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > > @@ -16,7 +17,80 @@ Index: b/src/Makefile > TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti > TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread > - TRANSPORT_LIBDEP += $(shell curl-config --libs) > -+ TRANSPORT_LIBDEP += $(CURL_LDADD) > ++ TRANSPORT_LIBDEP += $(shell $CURL_CONFIG --libs) > endif > ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) > TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transport > +Index: b/config.mk.in > +=================================================================== > +--- a/config.mk.in > ++++ b/config.mk.in > +@@ -32,6 +32,7 @@ > + LSOCKET = @LSOCKET@ > + WININET_LDADD = @WININET_LDADD@ > + WININET_LIBDIR = @WININET_LIBDIR@ > ++CURL_CONFIG = @CURL_CONFIG@ > + CURL_LDADD = @CURL_LDADD@ > + CURL_LIBDIR = @CURL_LIBDIR@ > + LIBWWW_LDADD = @LIBWWW_LDADD@ > +Index: b/configure.in > +=================================================================== > +--- a/configure.in > ++++ b/configure.in > +@@ -550,6 +550,8 @@ > + dnl So we don't do any check now. If we find out there's a problem with > + dnl older Curls, we will revisit that. > + > ++ AC_SUBST(CURL_CONFIG) > ++ > + CURL_LDADD=$($CURL_CONFIG --libs) > + AC_SUBST(CURL_LDADD) > + > +Index: b/lib/curl_transport/Makefile > +=================================================================== > +--- a/lib/curl_transport/Makefile > ++++ b/lib/curl_transport/Makefile > +@@ -29,7 +29,7 @@ > + > + $(SRCDIR)/common.mk: srcdir blddir > + > +-CURL_VERSION := $(shell curl-config --vernum) > ++CURL_VERSION := $(shell $CURL_CONFIG --vernum) > + > + # Some time at or before Curl 7.12, <curl/types.h> became an empty file > + # (no-op). Some time after Curl 7.18, <curl/types.h> ceased to exist. > +@@ -43,7 +43,7 @@ > + CFLAGS_LOCAL += -DNEED_CURL_TYPES_H > + endif > + > +-CURL_INCLUDES := $(shell curl-config --cflags) > ++CURL_INCLUDES := $(shell $CURL_CONFIG --cflags) > + # We expect that curl-config --cflags just gives us -I options, because > + # we need just the -I options for 'make dep'. Plus, it's scary to think > + # of what any other compiler flag would do to our compile. > +Index: b/src/cpp/test/Makefile > +=================================================================== > +--- a/src/cpp/test/Makefile > ++++ b/src/cpp/test/Makefile > +@@ -20,7 +20,7 @@ > + LIBS := $(shell $(XMLRPC_C_CONFIG) client --ldadd) > + > + ifeq ($(MUST_BUILD_CURL_CLIENT),yes) > +- LIBS += $(shell curl-config --libs) > ++ LIBS += $(shell $CURL_CONFIG --libs) > + endif > + ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) > + LIBS += $(shell libwww-config --libs) > +Index: b/tools/common.mk > +=================================================================== > +--- a/tools/common.mk > ++++ b/tools/common.mk > +@@ -15,7 +15,7 @@ > + CLIENT_LDLIBS += $(shell libwww-config --libs) > + endif > + ifeq ($(MUST_BUILD_CURL_CLIENT),yes) > +- CLIENT_LDLIBS += $(shell curl-config --libs) > ++ CLIENT_LDLIBS += $(shell $CURL_CONFIG --libs) > + endif > + ifeq ($(MUST_BUILD_WININET_CLIENT),yes) > + CLIENT_LDLIBS += $(shell wininet-config --libs) > diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk > index 1b771e2..c3788d6 100644 > --- a/package/libxmlrpc/libxmlrpc.mk > +++ b/package/libxmlrpc/libxmlrpc.mk > @@ -10,10 +10,17 @@ LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Su > LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c) > LIBXMLRPC_LICENSE_FILES = doc/COPYING > LIBXMLRPC_INSTALL_STAGING = YES > -LIBXMLRPC_DEPENDENCIES = libcurl > +LIBXMLRPC_DEPENDENCIES = libcurl host-autoconf > LIBXMLRPC_CONFIG_SCRIPTS = xmlrpc-c-config > LIBXMLRPC_MAKE = $(MAKE1) > > +# Using autoconf, not automake, so we cannot use AUTORECONF = YES. > +define LIBXMLRPC_RUN_AUTOCONF > + cd $(@D); $(HOST_DIR)/usr/bin/autoconf > +endef > + > +LIBXMLRPC_PRE_CONFIGURE_HOOKS += LIBXMLRPC_RUN_AUTOCONF > + > LIBXMLRPC_CONF_OPTS = \ > $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \ > $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \ > -- > 2.1.0 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot -- .-----------------.--------------------.------------------.--------------------. | 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. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 4/5] xerces: make sure to use the cross-compiled curl 2014-12-27 13:47 [Buildroot] [PATCH 0/5] Random autobuilder failure fixes Thomas Petazzoni ` (2 preceding siblings ...) 2014-12-27 13:47 ` [Buildroot] [PATCH 3/5] libxmlrpc: improve curl-config patch Thomas Petazzoni @ 2014-12-27 13:47 ` Thomas Petazzoni 2014-12-27 16:25 ` Yann E. MORIN 2014-12-27 13:47 ` [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection Thomas Petazzoni 4 siblings, 1 reply; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 13:47 UTC (permalink / raw) To: buildroot When curl support is enabled in xerces, and a host curl is available on the system, it might try to use it, so this patch adds --with-curl= to the configure options to explicitly indicate where is the curl library to use. Should fix: http://autobuild.buildroot.org/results/c3c/c3c6be45d0f764fb931a46dbf1509ccf2916ecbf/ (We were not able to reproduce specifically this problem, but another similar problem, where curl was detected, but considered as non-working because of the compilation failure of a test program.) Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- package/xerces/xerces.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/xerces/xerces.mk b/package/xerces/xerces.mk index 36955e3..9b2bb81 100644 --- a/package/xerces/xerces.mk +++ b/package/xerces/xerces.mk @@ -20,7 +20,7 @@ XERCES_DEPENDENCIES += libiconv endif ifeq ($(BR2_PACKAGE_LIBCURL),y) -XERCES_CONF_OPTS += --enable-netaccessor-curl +XERCES_CONF_OPTS += --enable-netaccessor-curl --with-curl=$(STAGING_DIR)/usr/lib XERCES_DEPENDENCIES += libcurl else XERCES_CONF_OPTS += --disable-network -- 2.1.0 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 4/5] xerces: make sure to use the cross-compiled curl 2014-12-27 13:47 ` [Buildroot] [PATCH 4/5] xerces: make sure to use the cross-compiled curl Thomas Petazzoni @ 2014-12-27 16:25 ` Yann E. MORIN 0 siblings, 0 replies; 14+ messages in thread From: Yann E. MORIN @ 2014-12-27 16:25 UTC (permalink / raw) To: buildroot Thomas, All, On 2014-12-27 14:47 +0100, Thomas Petazzoni spake thusly: > When curl support is enabled in xerces, and a host curl is available > on the system, it might try to use it, so this patch adds --with-curl= > to the configure options to explicitly indicate where is the curl > library to use. > > Should fix: > > http://autobuild.buildroot.org/results/c3c/c3c6be45d0f764fb931a46dbf1509ccf2916ecbf/ > > (We were not able to reproduce specifically this problem, but > another similar problem, where curl was detected, but considered as > non-working because of the compilation failure of a test program.) > > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Regards, Yann E. MORIN. > --- > package/xerces/xerces.mk | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/package/xerces/xerces.mk b/package/xerces/xerces.mk > index 36955e3..9b2bb81 100644 > --- a/package/xerces/xerces.mk > +++ b/package/xerces/xerces.mk > @@ -20,7 +20,7 @@ XERCES_DEPENDENCIES += libiconv > endif > > ifeq ($(BR2_PACKAGE_LIBCURL),y) > -XERCES_CONF_OPTS += --enable-netaccessor-curl > +XERCES_CONF_OPTS += --enable-netaccessor-curl --with-curl=$(STAGING_DIR)/usr/lib > XERCES_DEPENDENCIES += libcurl > else > XERCES_CONF_OPTS += --disable-network > -- > 2.1.0 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot -- .-----------------.--------------------.------------------.--------------------. | 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. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection 2014-12-27 13:47 [Buildroot] [PATCH 0/5] Random autobuilder failure fixes Thomas Petazzoni ` (3 preceding siblings ...) 2014-12-27 13:47 ` [Buildroot] [PATCH 4/5] xerces: make sure to use the cross-compiled curl Thomas Petazzoni @ 2014-12-27 13:47 ` Thomas Petazzoni 2014-12-27 15:10 ` Samuel Martin 2014-12-27 16:20 ` Thomas Petazzoni 4 siblings, 2 replies; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 13:47 UTC (permalink / raw) To: buildroot Explicitly pass the path to libtldl and libgmp, so that guile does not try to use host versions when available. Fixes: http://autobuild.buildroot.org/results/056/056b7fcbf3b73a8d15ca635b000771cdc2d7fbf9/ And another similar problem with libgmp. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> --- package/guile/guile.mk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/package/guile/guile.mk b/package/guile/guile.mk index 30af11d..194eca2 100644 --- a/package/guile/guile.mk +++ b/package/guile/guile.mk @@ -29,5 +29,9 @@ GUILE_CFLAGS = \ GUILE_CONF_ENV += GUILE_FOR_BUILD=$(HOST_DIR)/usr/bin/guile \ CFLAGS="$(TARGET_CFLAGS) $(GUILE_CFLAGS)" +GUILE_CONF_OPTS += \ + --with-libltdl-prefix=$(STAGING_DIR)/usr/lib \ + --with-libgmp-prefix=$(STAGING_DIR)/usr/lib + $(eval $(autotools-package)) $(eval $(host-autotools-package)) -- 2.1.0 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection 2014-12-27 13:47 ` [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection Thomas Petazzoni @ 2014-12-27 15:10 ` Samuel Martin 2014-12-27 16:20 ` Thomas Petazzoni 1 sibling, 0 replies; 14+ messages in thread From: Samuel Martin @ 2014-12-27 15:10 UTC (permalink / raw) To: buildroot On Sat, Dec 27, 2014 at 2:47 PM, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > Explicitly pass the path to libtldl and libgmp, so that guile does not > try to use host versions when available. > > Fixes: > > http://autobuild.buildroot.org/results/056/056b7fcbf3b73a8d15ca635b000771cdc2d7fbf9/ > > And another similar problem with libgmp. > > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> [for those 2 mis-detections, however I'm still hitting libunistring error at configuration] Reviewed-by: Samuel Martin <s.martin49@gmail.com> Tested-by: Samuel Martin <s.martin49@gmail.com> Libunistring mis-detection: config.log: --- [...] configure:15821: /home/system/src/tmp/br/abo/guile-d07/host/usr/bin/arm-none-linux-gnueabi-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -DHAVE_GC_SET_FINALIZER_NOTIFIER -DHAVE_GC_GET_HEAP_USAGE_SAFE -DHAVE_GC_GET_FREE_SPACE_DIVISOR -DHAVE_GC_SET_FINALIZE_ON_DEMAND -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c /usr/lib/libunistring.so >&5 /usr/lib/libunistring.so: file not recognized: File format not recognized collect2: error: ld returned 1 exit status configure:15821: $? = 1 [...] --- and the --with-libunistring-prefix=$(STAGING_DIR)/usr/lib trick fixes the error. > --- > package/guile/guile.mk | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/package/guile/guile.mk b/package/guile/guile.mk > index 30af11d..194eca2 100644 > --- a/package/guile/guile.mk > +++ b/package/guile/guile.mk > @@ -29,5 +29,9 @@ GUILE_CFLAGS = \ > GUILE_CONF_ENV += GUILE_FOR_BUILD=$(HOST_DIR)/usr/bin/guile \ > CFLAGS="$(TARGET_CFLAGS) $(GUILE_CFLAGS)" > > +GUILE_CONF_OPTS += \ > + --with-libltdl-prefix=$(STAGING_DIR)/usr/lib \ > + --with-libgmp-prefix=$(STAGING_DIR)/usr/lib > + > $(eval $(autotools-package)) > $(eval $(host-autotools-package)) > -- > 2.1.0 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot Regards, -- Samuel ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection 2014-12-27 13:47 ` [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection Thomas Petazzoni 2014-12-27 15:10 ` Samuel Martin @ 2014-12-27 16:20 ` Thomas Petazzoni 1 sibling, 0 replies; 14+ messages in thread From: Thomas Petazzoni @ 2014-12-27 16:20 UTC (permalink / raw) To: buildroot Hello, On Sat, 27 Dec 2014 14:47:18 +0100, Thomas Petazzoni wrote: > Explicitly pass the path to libtldl and libgmp, so that guile does not > try to use host versions when available. > > Fixes: > > http://autobuild.buildroot.org/results/056/056b7fcbf3b73a8d15ca635b000771cdc2d7fbf9/ > > And another similar problem with libgmp. > > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > --- > package/guile/guile.mk | 4 ++++ > 1 file changed, 4 insertions(+) Applied, with the addition of --with-libunistring-prefix, as suggested by Samuel Martin. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2014-12-27 16:26 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-12-27 13:47 [Buildroot] [PATCH 0/5] Random autobuilder failure fixes Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 1/5] libxmlrpc: bump to 1.25.30 Thomas Petazzoni 2014-12-27 15:56 ` Yann E. MORIN 2014-12-27 16:26 ` Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 2/5] libxmlrpc: rename patches to the new convention Thomas Petazzoni 2014-12-27 15:57 ` Yann E. MORIN 2014-12-27 16:21 ` Thomas Petazzoni 2014-12-27 13:47 ` [Buildroot] [PATCH 3/5] libxmlrpc: improve curl-config patch Thomas Petazzoni 2014-12-27 16:18 ` Yann E. MORIN 2014-12-27 13:47 ` [Buildroot] [PATCH 4/5] xerces: make sure to use the cross-compiled curl Thomas Petazzoni 2014-12-27 16:25 ` Yann E. MORIN 2014-12-27 13:47 ` [Buildroot] [PATCH 5/5] guile: fix libltdl and libgmp detection Thomas Petazzoni 2014-12-27 15:10 ` Samuel Martin 2014-12-27 16:20 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox