summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <walsimou@walsimou.com>2010-02-08 23:14:34 +0100
committerAbdoulaye Walsimou Gaye <walsimou@walsimou.com>2010-02-08 23:14:34 +0100
commitca6908a689a6b305e7a2dfd42544f8afff27dd80 (patch)
tree57ec078d4a7ded69b0d8e650db89f9ec579754a0
parent2834f08a44693692f146ed9bc77edce845c1ff0f (diff)
downloadembtoolkit-ca6908a689a6b305e7a2dfd42544f8afff27dd80.tar.gz
embtoolkit-ca6908a689a6b305e7a2dfd42544f8afff27dd80.tar.bz2
embtoolkit-ca6908a689a6b305e7a2dfd42544f8afff27dd80.tar.xz
Packages: libelf: add patch infrastructure
Signed-off-by: Abdoulaye Walsimou Gaye <walsimou@walsimou.com>
-rw-r--r--packages/misc/libelf/libelf.kconfig4
-rw-r--r--packages/misc/libelf/libelf.mk12
2 files changed, 15 insertions, 1 deletions
diff --git a/packages/misc/libelf/libelf.kconfig b/packages/misc/libelf/libelf.kconfig
index 8d2bc59..2493d82 100644
--- a/packages/misc/libelf/libelf.kconfig
+++ b/packages/misc/libelf/libelf.kconfig
@@ -25,6 +25,7 @@
config EMBTK_HAVE_LIBELF
bool "Have libelf"
select EMBTK_HAVE_GETTEXT
+ select EMBTK_LIBELF_NEED_PATCH
help
libelf lets you read, modify or create ELF files in an
architecture-independent way. The library takes care of size and
@@ -44,3 +45,6 @@ config EMBTK_LIBELF_VERSION_STRING
string
default "0.8.13" if EMBTK_LIBELF_VERSION_0_8_13
+config EMBTK_LIBELF_NEED_PATCH
+ bool
+
diff --git a/packages/misc/libelf/libelf.mk b/packages/misc/libelf/libelf.mk
index d1ba070..2515adf 100644
--- a/packages/misc/libelf/libelf.mk
+++ b/packages/misc/libelf/libelf.mk
@@ -24,6 +24,7 @@
LIBELF_VERSION := $(subst ",,$(strip $(CONFIG_EMBTK_LIBELF_VERSION_STRING)))
LIBELF_SITE := http://www.mr511.de/software
+LIBELF_PATCH_SITE := ftp://ftp.embtoolkit.org/embtoolkit.org/libelf/$(LIBELF_VERSION)
LIBELF_PACKAGE := libelf-$(LIBELF_VERSION).tar.gz
LIBELF_BUILD_DIR := $(PACKAGES_BUILD)/libelf-$(LIBELF_VERSION)
@@ -56,10 +57,19 @@ download_libelf:
@test -e $(DOWNLOAD_DIR)/$(LIBELF_PACKAGE) || \
wget -O $(DOWNLOAD_DIR)/$(LIBELF_PACKAGE) \
$(LIBELF_SITE)/$(LIBELF_PACKAGE)
+ifeq ($(CONFIG_EMBTK_LIBELF_NEED_PATCH),y)
+ $(Q)test -e $(DOWNLOAD_DIR)/libelf-$(LIBELF_VERSION).patch || \
+ wget -O $(DOWNLOAD_DIR)/libelf-$(LIBELF_VERSION).patch \
+ $(LIBELF_PATCH_SITE)/libelf-$(LIBELF_VERSION)-*.patch
+endif
$(LIBELF_BUILD_DIR)/.decompressed:
$(call EMBTK_GENERIC_MESSAGE,"Decompressing $(LIBELF_PACKAGE) ...")
@tar -C $(PACKAGES_BUILD) -xzf $(DOWNLOAD_DIR)/$(LIBELF_PACKAGE)
+ifeq ($(CONFIG_EMBTK_LIBELF_NEED_PATCH),y)
+ cd $(PACKAGES_BUILD)/libelf-$(LIBELF_VERSION); \
+ patch -p1 < $(DOWNLOAD_DIR)/libelf-$(LIBELF_VERSION).patch
+endif
@touch $@
$(LIBELF_BUILD_DIR)/.configured:
@@ -84,7 +94,7 @@ $(LIBELF_BUILD_DIR)/.configured:
./configure --build=$(HOST_BUILD) \
--host=$(STRICT_GNU_TARGET) \
--target=$(STRICT_GNU_TARGET) \
- --prefix=$(SYSROOT)/usr
+ --prefix=$(SYSROOT)/usr --enable-elf64
@touch $@
libelf_clean: