Update buidlroot to version 2016.08.1

This commit is contained in:
2016-11-16 22:07:29 +01:00
parent 807ab03547
commit a1061efbc2
3636 changed files with 59539 additions and 25783 deletions

View File

@@ -0,0 +1,47 @@
Fix static build with mysql
When building static binaries, the order of libraries in the link command line
is significant. Use $LIBS for mysql libraries, so that mysql appear after the
object files that depends on it. This fixes build failures like the following.
/home/buildroot/build/instance-1/output/host/usr/bin/arm-linux-g++ -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -static -I/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/mysql -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -DUNIV_LINUX -DUNIV_LINUX -static -static -rdynamic -L/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib -lmysqlclient_r -lz -lpthread -lcrypt -lnsl -lm -lpthread -o linknx linknx.o logger.o ruleserver.o objectcontroller.o eibclient.o threads.o timermanager.o persistentstorage.o xmlserver.o smsgateway.o emailgateway.o knxconnection.o services.o suncalc.o luacondition.o ioport.o ../ticpp/libticpp.a -L/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib -lpthsem -lm -largp
persistentstorage.o: In function `MysqlPersistentStorage::~MysqlPersistentStorage()':
persistentstorage.cpp:(.text+0x2c): undefined reference to `mysql_close'
persistentstorage.o: In function `MysqlPersistentStorage::MysqlPersistentStorage(ticpp::Element*)':
persistentstorage.cpp:(.text+0x518): undefined reference to `mysql_init'
persistentstorage.cpp:(.text+0x570): undefined reference to `mysql_options'
persistentstorage.cpp:(.text+0x5a8): undefined reference to `mysql_real_connect'
persistentstorage.cpp:(.text+0x5c0): undefined reference to `mysql_options'
persistentstorage.cpp:(.text+0x618): undefined reference to `mysql_error'
persistentstorage.cpp:(.text+0x6c0): undefined reference to `mysql_options'
persistentstorage.o: In function `MysqlPersistentStorage::write(std::string const&, std::string const&)':
persistentstorage.cpp:(.text+0xb70): undefined reference to `mysql_real_query'
persistentstorage.cpp:(.text+0xbcc): undefined reference to `mysql_error'
persistentstorage.o: In function `MysqlPersistentStorage::read(std::string const&, std::string const&)':
persistentstorage.cpp:(.text+0xd14): undefined reference to `mysql_real_query'
persistentstorage.cpp:(.text+0xd38): undefined reference to `mysql_store_result'
persistentstorage.cpp:(.text+0xd40): undefined reference to `mysql_num_rows'
persistentstorage.cpp:(.text+0xd50): undefined reference to `mysql_fetch_row'
persistentstorage.cpp:(.text+0xd68): undefined reference to `mysql_free_result'
persistentstorage.cpp:(.text+0xdc8): undefined reference to `mysql_error'
persistentstorage.o: In function `MysqlPersistentStorage::writelog(std::string const&, std::string const&)':
persistentstorage.cpp:(.text+0xf74): undefined reference to `mysql_real_query'
persistentstorage.cpp:(.text+0xfd0): undefined reference to `mysql_error'
collect2: error: ld returned 1 exit status
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
Patch status: sent to jef2000@users.sourceforge.net
diff -Nuar linknx-0.0.1.32-orig/acinclude.m4 linknx-0.0.1.32/acinclude.m4
--- linknx-0.0.1.32-orig/acinclude.m4 2011-01-09 16:47:32.000000000 +0200
+++ linknx-0.0.1.32/acinclude.m4 2016-03-15 12:41:19.983861719 +0200
@@ -36,7 +36,7 @@
CFLAGS="$CFLAGS $ADDFLAGS"
CXXFLAGS="$CXXFLAGS $ADDFLAGS"
- LDFLAGS="$LDFLAGS "`$MYSQL_CONFIG --libs_r`
+ LIBS="$LIBS "`$MYSQL_CONFIG --libs_r`
AC_MSG_RESULT($MYSQL_CONFIG)
AC_DEFINE([HAVE_MYSQL], [1], [Build with MySQL support.])

View File

@@ -0,0 +1,42 @@
From ff52cf04c6fa8b3352544447abf429bfa6000dc8 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Sat, 20 Aug 2016 12:13:04 +0200
Subject: [PATCH] src/suncalc.cpp: fix build with gcc 6.x
src/suncalc.cpp currently includes <math.h>, but this causes a build
failure with gcc 6.x, and <cmath> should be used instead. The build
failure is:
/home/test/autobuild/run/instance-0/output/host/usr/arc-buildroot-linux-uclibc/include/c++/6.1.1/cmath:101:37: error: '__is_integer' was not declared in this scope
typename __gnu_cxx::__enable_if<__is_integer<_Tp>::__value,
^~~~~~~~~~~~
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
src/suncalc.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/suncalc.cpp b/src/suncalc.cpp
index ea2366a..b553f96 100644
--- a/src/suncalc.cpp
+++ b/src/suncalc.cpp
@@ -22,6 +22,8 @@
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include <cmath>
+
#include "suncalc.h"
#include "services.h"
@@ -44,7 +46,6 @@ Released to the public domain by Paul Schlyter, December 1992
#include <stdio.h>
-#include <math.h>
#include <time.h>
#include <stdlib.h>
#include <getopt.h>
--
2.7.4

View File

@@ -1,6 +1,7 @@
config BR2_PACKAGE_LINKNX
bool "linknx"
select BR2_PACKAGE_LIBPTHSEM
select BR2_PACKAGE_LIBCURL # for autoreconf
select BR2_PACKAGE_ARGP_STANDALONE \
if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL
depends on BR2_INSTALL_LIBSTDCPP
@@ -10,6 +11,7 @@ config BR2_PACKAGE_LINKNX
to EIB/KNX installation.
http://linknx.sourceforge.net/
https://github.com/linknx/linknx
comment "linknx needs a toolchain w/ C++"
depends on BR2_USE_MMU

View File

@@ -8,14 +8,24 @@ LINKNX_VERSION = 0.0.1.32
LINKNX_SITE = http://downloads.sourceforge.net/project/linknx/linknx/linknx-$(LINKNX_VERSION)
LINKNX_LICENSE = GPLv2+
LINKNX_INSTALL_STAGING = YES
# Patching acinclude.m4
LINKNX_AUTORECONF = YES
LINKNX_CONF_OPTS = \
--without-lua \
--without-log4cpp \
--without-pth-test \
--with-pth=$(STAGING_DIR)/usr \
--disable-smtp
--disable-smtp \
--with-libcurl=$(STAGING_DIR)/usr/bin/curl-config
LINKNX_DEPENDENCIES = libpthsem $(if $(BR2_PACKAGE_ARGP_STANDALONE),argp-standalone)
LINKNX_DEPENDENCIES = libpthsem libcurl \
$(if $(BR2_PACKAGE_ARGP_STANDALONE),argp-standalone)
# This is needed to make autoreconf happy
define LINKNX_CREATE_MISSING_FILES
touch $(@D)/NEWS $(@D)/AUTHORS $(@D)/README
endef
LINKNX_POST_EXTRACT_HOOKS += LINKNX_CREATE_MISSING_FILES
ifeq ($(BR2_PACKAGE_MYSQL),y)
LINKNX_CONF_OPTS += --with-mysql=$(STAGING_DIR)/usr/bin/mysql_config
@@ -24,11 +34,4 @@ else
LINKNX_CONF_OPTS += --without-mysql
endif
ifeq ($(BR2_PACKAGE_LIBCURL),y)
LINKNX_CONF_OPTS += --with-libcurl=$(STAGING_DIR)/usr/bin/curl-config
LINKNX_DEPENDENCIES += libcurl
else
LINKNX_CONF_OPTS += --without-libcurl
endif
$(eval $(autotools-package))