update buildroot to 2017.02.11
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
From edadcf67980764c104c25c7c1a0ba91257b89698 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
Date: Thu, 8 Dec 2016 23:33:30 +0100
|
||||
Subject: [PATCH 1/2] Detect bfd.h to enable/disable sepdebugcrcfix building
|
||||
|
||||
tools/sepdebugcrcfix includes <bfd.h>, but this header from binutils
|
||||
is not checked in the configure script. Due to this, sepdebugcrcfix is
|
||||
attempted to be built even when <bfd.h> is not available. This commit
|
||||
addresses that by adding the appropriate configure check.
|
||||
|
||||
This fixes the following build error:
|
||||
|
||||
tools/sepdebugcrcfix.c:31:17: fatal error: bfd.h: No such file or directory
|
||||
compilation terminated.
|
||||
make[3]: *** [tools/sepdebugcrcfix.o] Error 1
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
---
|
||||
Makefile.am | 2 ++
|
||||
configure.ac | 3 +++
|
||||
2 files changed, 5 insertions(+)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 863138c..d8a68f0 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -168,9 +168,11 @@ elfdeps_SOURCES = tools/elfdeps.c
|
||||
elfdeps_LDADD = rpmio/librpmio.la
|
||||
elfdeps_LDADD += @WITH_LIBELF_LIB@ @WITH_POPT_LIB@
|
||||
|
||||
+if HAS_BFD_H
|
||||
rpmlibexec_PROGRAMS += sepdebugcrcfix
|
||||
sepdebugcrcfix_SOURCES = tools/sepdebugcrcfix.c
|
||||
sepdebugcrcfix_LDADD = @WITH_LIBELF_LIB@
|
||||
+endif # HAS_BFD_H
|
||||
endif
|
||||
endif
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index c5ae701..b99ecb8 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -242,6 +242,9 @@ AC_CHECK_HEADERS([dwarf.h], [
|
||||
])
|
||||
AM_CONDITIONAL(LIBDWARF,[test "$WITH_LIBDWARF" = yes])
|
||||
|
||||
+AC_CHECK_HEADERS([bfd.h])
|
||||
+AM_CONDITIONAL(HAS_BFD_H, [test "${ac_cv_header_bfd_h}" = "yes"])
|
||||
+
|
||||
#=================
|
||||
# Check for beecrypt library if requested.
|
||||
AC_ARG_WITH(beecrypt, [ --with-beecrypt build with beecrypt support ],,[with_beecrypt=no])
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
From 65afab91444d4996a8e61d1e2d27d52e18417ef5 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
Date: Thu, 8 Dec 2016 23:45:55 +0100
|
||||
Subject: [PATCH 2/2] tools/sepdebugcrcfix.c: fix build with recent binutils
|
||||
|
||||
Moderately recent binutils versions install a <bfd.h> header that
|
||||
checks if config.h is included. While this makes sense in binutils
|
||||
itself, it does not outside. So the binutils developers have added a
|
||||
check: if PACKAGE or PACKAGE_VERSION are defined, they assume you're
|
||||
re-using bfd.h outside of binutils, and therefore including it without
|
||||
including config.h is legit.
|
||||
|
||||
So we take the same approch as numerous users of bfd.h: fake a PACKAGE
|
||||
definition. See for example tools/perf/util/srcline.c in the Linux
|
||||
kernel source tree.
|
||||
|
||||
This fixes the following build error:
|
||||
|
||||
In file included from tools/sepdebugcrcfix.c:31:0:
|
||||
/home/test/autobuild/run/instance-0/output/host/usr/arc-buildroot-linux-uclibc/sysroot/usr/include/bfd.h:35:2: error: #error config.h must be included before this header
|
||||
#error config.h must be included before this header
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
---
|
||||
tools/sepdebugcrcfix.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/tools/sepdebugcrcfix.c b/tools/sepdebugcrcfix.c
|
||||
index cd7fa02..e7b480f 100644
|
||||
--- a/tools/sepdebugcrcfix.c
|
||||
+++ b/tools/sepdebugcrcfix.c
|
||||
@@ -28,6 +28,8 @@
|
||||
#include <error.h>
|
||||
#include <libelf.h>
|
||||
#include <gelf.h>
|
||||
+/* Needed to please <bfd.h> */
|
||||
+#define PACKAGE "rpm"
|
||||
#include <bfd.h>
|
||||
|
||||
#define _(x) x
|
||||
--
|
||||
2.7.4
|
||||
|
||||
21
bsp/buildroot-2017.02.11/package/rpm/Config.in
Normal file
21
bsp/buildroot-2017.02.11/package/rpm/Config.in
Normal file
@@ -0,0 +1,21 @@
|
||||
comment "rpm needs a toolchain w/ dynamic library and threads"
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
|
||||
depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
|
||||
depends on BR2_USE_MMU
|
||||
|
||||
config BR2_PACKAGE_RPM
|
||||
bool "rpm"
|
||||
depends on !BR2_STATIC_LIBS # dlfcn.h
|
||||
depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS # beecrypt
|
||||
depends on BR2_USE_MMU # fork()
|
||||
select BR2_PACKAGE_BEECRYPT if !BR2_PACKAGE_LIBNSS
|
||||
select BR2_PACKAGE_BERKELEYDB
|
||||
select BR2_PACKAGE_FILE
|
||||
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
|
||||
select BR2_PACKAGE_POPT
|
||||
select BR2_PACKAGE_ZLIB
|
||||
help
|
||||
The RPM Package Manager (RPM).
|
||||
|
||||
http://www.rpm.org/
|
||||
5
bsp/buildroot-2017.02.11/package/rpm/rpm.hash
Normal file
5
bsp/buildroot-2017.02.11/package/rpm/rpm.hash
Normal file
@@ -0,0 +1,5 @@
|
||||
# From http://rpm.org/wiki/Releases/4.13.0.1
|
||||
sha1 9566f95f38fcb214e439c552f378c2f64ba0aff9 rpm-4.13.0.1.tar.bz2
|
||||
# Locally computed
|
||||
sha256 a3e5568d721737a24141737e6036bb39ba9dfbeaa03fa4a51cc7881a243e0c5d b5f1895aae096836d6e8e155ee289e1b10fcabcb.patch
|
||||
sha256 7ab0e08e143bb2d43d5b0553ee22ea34da15a611c597860a6110745467d20fa8 c810a0aca3f1148d2072d44b91b8cc9caeb4cf19.patch
|
||||
90
bsp/buildroot-2017.02.11/package/rpm/rpm.mk
Normal file
90
bsp/buildroot-2017.02.11/package/rpm/rpm.mk
Normal file
@@ -0,0 +1,90 @@
|
||||
################################################################################
|
||||
#
|
||||
# rpm
|
||||
#
|
||||
################################################################################
|
||||
|
||||
RPM_VERSION_MAJOR = 4.13
|
||||
RPM_VERSION = $(RPM_VERSION_MAJOR).0.1
|
||||
RPM_SOURCE = rpm-$(RPM_VERSION).tar.bz2
|
||||
RPM_SITE = http://ftp.rpm.org/releases/rpm-$(RPM_VERSION_MAJOR).x
|
||||
RPM_DEPENDENCIES = host-pkgconf berkeleydb file popt zlib
|
||||
RPM_LICENSE = GPLv2 or LGPLv2 (library only)
|
||||
RPM_LICENSE_FILES = COPYING
|
||||
RPM_PATCH = \
|
||||
https://github.com/rpm-software-management/rpm/commit/b5f1895aae096836d6e8e155ee289e1b10fcabcb.patch \
|
||||
https://github.com/rpm-software-management/rpm/commit/c810a0aca3f1148d2072d44b91b8cc9caeb4cf19.patch
|
||||
|
||||
# b5f1895aae096836d6e8e155ee289e1b10fcabcb.patch
|
||||
# c810a0aca3f1148d2072d44b91b8cc9caeb4cf19.patch
|
||||
RPM_AUTORECONF = YES
|
||||
|
||||
RPM_CONF_OPTS = \
|
||||
--disable-python \
|
||||
--disable-rpath \
|
||||
--with-external-db \
|
||||
--with-gnu-ld \
|
||||
--without-cap \
|
||||
--without-hackingdocs \
|
||||
--without-lua
|
||||
|
||||
ifeq ($(BR2_PACKAGE_ACL),y)
|
||||
RPM_DEPENDENCIES += acl
|
||||
RPM_CONF_OPTS += --with-acl
|
||||
else
|
||||
RPM_CONF_OPTS += --without-acl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBNSS),y)
|
||||
RPM_DEPENDENCIES += libnss
|
||||
RPM_CONF_OPTS += --without-beecrypt
|
||||
RPM_CFLAGS += -I$(STAGING_DIR)/usr/include/nss -I$(STAGING_DIR)/usr/include/nspr
|
||||
else
|
||||
RPM_DEPENDENCIES += beecrypt
|
||||
RPM_CONF_OPTS += --with-beecrypt
|
||||
RPM_CFLAGS += -I$(STAGING_DIR)/usr/include/beecrypt
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
|
||||
RPM_DEPENDENCIES += gettext
|
||||
RPM_CONF_OPTS += --with-libintl-prefix=$(STAGING_DIR)/usr
|
||||
else
|
||||
RPM_CONF_OPTS += --without-libintl-prefix
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBARCHIVE),y)
|
||||
RPM_DEPENDENCIES += libarchive
|
||||
RPM_CONF_OPTS += --with-archive
|
||||
else
|
||||
RPM_CONF_OPTS += --without-archive
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBSELINUX),y)
|
||||
RPM_DEPENDENCIES += libselinux
|
||||
RPM_CONF_OPTS += --with-selinux
|
||||
else
|
||||
RPM_CONF_OPTS += --without-selinux
|
||||
endif
|
||||
|
||||
# For the elfutils and binutils dependencies, there are no
|
||||
# configuration options to explicitly enable/disable them.
|
||||
ifeq ($(BR2_PACKAGE_ELFUTILS),y)
|
||||
RPM_DEPENDENCIES += elfutils
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_BINUTILS),y)
|
||||
RPM_DEPENDENCIES += binutils
|
||||
endif
|
||||
|
||||
# RPM, when using NLS, requires GNU gettext's _nl_msg_cat_cntr, which is not
|
||||
# provided in musl.
|
||||
ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
|
||||
RPM_CONF_OPTS += --disable-nls
|
||||
endif
|
||||
|
||||
# ac_cv_prog_cc_c99: RPM uses non-standard GCC extensions (ex. `asm`).
|
||||
RPM_CONF_ENV = \
|
||||
ac_cv_prog_cc_c99='-std=gnu99' \
|
||||
CFLAGS="$(TARGET_CFLAGS) $(RPM_CFLAGS)"
|
||||
|
||||
$(eval $(autotools-package))
|
||||
Reference in New Issue
Block a user