Commit 75bd7d13 authored by Stefan Fröberg's avatar Stefan Fröberg Committed by Peter Korsgaard
Browse files

elfutils: new package



This patch adds a a package for elfutils. For now, the package is
glibc specific, as adding uClibc support for this package is quite
tedious, and will therefore be done through followup patches.

Heavily based from work done by Stefan Fröberg, but with many further
modifications by Thomas Petazzoni.

Signed-off-by: default avatarStefan Fröberg <stefan.froberg@petroprogram.com>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent b6009b94
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -516,6 +516,7 @@ source "package/apr/Config.in"
source "package/apr-util/Config.in"
source "package/libcofi/Config.in"
source "package/classpath/Config.in"
source "package/elfutils/Config.in"
source "package/fftw/Config.in"
source "package/libargtable2/Config.in"
source "package/argp-standalone/Config.in"
+15 −0
Original line number Diff line number Diff line
comment "elfutils requires a glibc toolchain"
	depends on !(BR2_TOOLCHAIN_EXTERNAL_GLIBC || \
		     BR2_TOOLCHAIN_CTNG_glibc     || \
		     BR2_TOOLCHAIN_CTNG_eglibc)

config BR2_PACKAGE_ELFUTILS
	bool "elfutils"
	depends on BR2_TOOLCHAIN_EXTERNAL_GLIBC || \
		   BR2_TOOLCHAIN_CTNG_glibc     || \
		   BR2_TOOLCHAIN_CTNG_eglibc
	help
	  Libraries/utilities to handle ELF objects (drop in
	  replacement for libelf).

	  https://fedorahosted.org/elfutils
+49 −0
Original line number Diff line number Diff line
#############################################################
#
# elfutils
#
#############################################################
ELFUTILS_VERSION = 0.155
ELFUTILS_SOURCE = elfutils-$(ELFUTILS_VERSION).tar.bz2
ELFUTILS_SITE = https://fedorahosted.org/releases/e/l/elfutils/$(ELFUTILS_VERSION)
ELFUTILS_LICENSE = GPLv3 GPLv2 LGPLv3
ELFUTILS_LICENSE_FILES = COPYING COPYING-GPLV2 COPYING-LGPLV3

# The tarball does not have a generated configure script
ELFUTILS_AUTORECONF = YES
ELFUTILS_CONF_OPT += --disable-werror
ELFUTILS_PATCH = \
	elfutils-portability.patch \
	elfutils-robustify.patch

ELFUTILS_INSTALL_STAGING = YES

ifeq ($(BR2_LARGEFILE),y)
# elfutils gets confused when lfs mode is forced, so don't
ELFUTILS_CONF_ENV += \
        CFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS))" \
        CPPFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS))"
endif

ifeq ($(BR2_PACKAGE_ZLIB),y)
 ELFUTILS_DEPENDENCIES += zlib
 ELFUTILS_CONF_OPT += --with-zlib
else
 ELFUTILS_CONF_OPT += --without-zlib
endif

ifeq ($(BR2_PACKAGE_BZIP2),y)
 ELFUTILS_DEPENDENCIES += bzip2
 ELFUTILS_CONF_OPT += --with-bzlib
else
 ELFUTILS_CONF_OPT += --without-bzlib
endif

ifeq ($(BR2_PACKAGE_XZ),y)
 ELFUTILS_DEPENDENCIES += xz
 ELFUTILS_CONF_OPT += --with-lzma
else
 ELFUTILS_CONF_OPT += --without-lzma
endif

$(eval $(autotools-package))