update buildroot to 2017.02.11

This commit is contained in:
jbnadal
2018-05-22 15:35:47 +02:00
parent 4bf1f5e091
commit a3c10bd762
9257 changed files with 433426 additions and 1701 deletions

View File

@@ -0,0 +1,25 @@
Fix build of host tool
genmtab is a tool that needs to be built for the host as it is used
during the compilation process of libxmlrpc. Its Makefile needs a bit
of tuning to use the conventional CC_FOR_BUILD, CFLAGS_FOR_BUILD and
LDFLAGS_FOR_BUILD variables.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/lib/expat/gennmtab/Makefile
===================================================================
--- a/lib/expat/gennmtab/Makefile
+++ b/lib/expat/gennmtab/Makefile
@@ -40,9 +40,9 @@
dep: dep-common
gennmtab.o:%.o:%.c
- $(BUILDTOOL_CC) -c $< -o $@ $(CFLAGS_ALL) $(INCLUDES)
+ $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES)
gennmtab:%:%.o
- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS_ALL) $^
+ $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^
include depend.mk

View File

@@ -0,0 +1,27 @@
From 5d68179a54b0a34d989722dcbe3b6eb962feb27d Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@openwide.fr>
Date: Tue, 23 Dec 2014 16:04:18 +0100
Subject: [PATCH] config.mk.in: fix shared libraries build for uClibc
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
config.mk.in | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/config.mk.in b/config.mk.in
index c5d4160..45461cf 100644
--- a/config.mk.in
+++ b/config.mk.in
@@ -166,7 +166,8 @@ shliblefn = $(1:%=%.shlibledummy)
# HOST_OS is usually has a version number suffix, e.g. "aix5.3.0.0", so
# we compare based on prefix.
-ifeq ($(patsubst linux-gnu%,linux-gnu,$(HOST_OS)),linux-gnu)
+# linux-uclibc is also a linux
+ifeq ($(patsubst linux-%,linux-,$(HOST_OS)),linux-)
# Assume linker is GNU Compiler (gcc)
SHARED_LIB_TYPE = unix
MUST_BUILD_SHLIB = Y
--
1.9.3

View File

@@ -0,0 +1,28 @@
Fix detection of AR and RANLIB
The configure.in script assumes that ranlib and ar are necessarily
prefixed by ${ac_tool_prefix}, which is the value of --host. However,
it's not necessarily the case.
So instead, use AC_CHECK_TOOL to check for AR, and AC_PROG_RANLIB to
check for RANLIB.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/configure.in
===================================================================
--- a/configure.in
+++ b/configure.in
@@ -621,10 +621,8 @@
BUILDDIR=$(pwd)
AC_SUBST(BUILDDIR)
-AR=${ac_tool_prefix}ar
-AC_SUBST([AR])
-RANLIB=${ac_tool_prefix}ranlib
-AC_SUBST([RANLIB])
+AC_CHECK_TOOL([AR], [ar])
+AC_PROG_RANLIB
dnl =======================================================================
dnl Output our results.

View File

@@ -0,0 +1,70 @@
Use correct curl-config program
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
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>
Index: b/src/Makefile
===================================================================
--- a/src/Makefile
+++ b/src/Makefile
@@ -57,7 +57,7 @@
TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/xmlrpc_curl_transport
TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/curltransaction
TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/curlmulti
- TRANSPORT_LIBDEP += $(shell curl-config --libs)
+ TRANSPORT_LIBDEP += $(shell $CURL_CONFIG --libs)
TRANSPORT_INCLUDES += -Isrcdir/lib/curl_transport
endif
ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes)
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.

View File

@@ -0,0 +1,14 @@
config BR2_PACKAGE_LIBXMLRPC
bool "libxmlrpc"
depends on BR2_TOOLCHAIN_HAS_THREADS
select BR2_PACKAGE_LIBCURL
help
XML-RPC is a quick-and-easy way to make procedure calls over
the Internet. It converts the procedure call into an XML
document, sends it to a remote server using HTTP, and gets
back the response as XML.
http://xmlrpc-c.sourceforge.net/
comment "libxmlrpc needs a toolchain w/ threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS

View File

@@ -0,0 +1,2 @@
# Locally computed
sha256 d830f3264a832dfe09f629cc64036acfd08121692526d0fabe090f7ff881ce08 xmlrpc-c-1.39.12.tgz

View File

@@ -0,0 +1,48 @@
################################################################################
#
# libxmlrpc
#
################################################################################
LIBXMLRPC_VERSION = 1.39.12
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)
LIBXMLRPC_LICENSE_FILES = doc/COPYING
LIBXMLRPC_INSTALL_STAGING = YES
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) \
have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \
CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config
# Our package uses autoconf, but not automake, so we need to pass
# those variables at compile time as well.
LIBXMLRPC_MAKE_ENV = \
CC_FOR_BUILD="$(HOSTCC)" \
LD_FOR_BUILD="$(HOSTLD)" \
CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)"
ifeq ($(BR2_STATIC_LIBS),y)
LIBXMLRPC_STATIC_OPTS = SHARED_LIB_TYPE=NONE MUST_BUILD_SHLIB=N
endif
LIBXMLRPC_MAKE_OPTS = $(LIBXMLRPC_STATIC_OPTS)
LIBXMLRPC_INSTALL_STAGING_OPTS = $(LIBXMLRPC_STATIC_OPTS) \
DESTDIR=$(STAGING_DIR) install
LIBXMLRPC_INSTALL_TARGET_OPTS = $(LIBXMLRPC_STATIC_OPTS) \
DESTDIR=$(TARGET_DIR) install
$(eval $(autotools-package))