update buildroot to 2017.02.11
This commit is contained in:
@@ -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
|
||||
@@ -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
|
||||
|
||||
@@ -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.
|
||||
@@ -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.
|
||||
14
bsp/buildroot-2017.02.11/package/libxmlrpc/Config.in
Normal file
14
bsp/buildroot-2017.02.11/package/libxmlrpc/Config.in
Normal 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
|
||||
@@ -0,0 +1,2 @@
|
||||
# Locally computed
|
||||
sha256 d830f3264a832dfe09f629cc64036acfd08121692526d0fabe090f7ff881ce08 xmlrpc-c-1.39.12.tgz
|
||||
48
bsp/buildroot-2017.02.11/package/libxmlrpc/libxmlrpc.mk
Normal file
48
bsp/buildroot-2017.02.11/package/libxmlrpc/libxmlrpc.mk
Normal 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))
|
||||
Reference in New Issue
Block a user