summaryrefslogtreecommitdiff
path: root/packages/misc
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2011-09-02 17:28:22 +0200
committerAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2011-09-02 17:28:22 +0200
commitf069ca57359213adc645f92178ccfe0c240c85aa (patch)
treebef0ab6035857fe12a1f637dcf4bba0a6c1a7d68 /packages/misc
parentb149882d115e274d3f1ec915e01a2a74f8e64da1 (diff)
downloadembtoolkit-f069ca57359213adc645f92178ccfe0c240c85aa.tar.gz
embtoolkit-f069ca57359213adc645f92178ccfe0c240c85aa.tar.bz2
embtoolkit-f069ca57359213adc645f92178ccfe0c240c85aa.tar.xz
Packages: libelf: convert to use generic macros
Signed-off-by: Abdoulaye Walsimou Gaye <awg@embtoolkit.org>
Diffstat (limited to 'packages/misc')
-rw-r--r--packages/misc/libelf/libelf.kconfig28
-rw-r--r--packages/misc/libelf/libelf.mk99
-rw-r--r--packages/misc/misc.mk1
3 files changed, 52 insertions, 76 deletions
diff --git a/packages/misc/libelf/libelf.kconfig b/packages/misc/libelf/libelf.kconfig
index 5f50aaf..24eeb18 100644
--- a/packages/misc/libelf/libelf.kconfig
+++ b/packages/misc/libelf/libelf.kconfig
@@ -22,8 +22,16 @@
# \date January 2010
################################################################################
+config EMBTK_HOST_HAVE_LIBELF
+ bool
+ select EMBTK_LIBELF_PKG_IS_TARGZ
+ select EMBTK_HOST_HAVE_GETTEXT
+ help
+ libelf for host development machine
+
config EMBTK_HAVE_LIBELF
bool "Have libelf"
+ select EMBTK_LIBELF_PKG_IS_TARGZ
select EMBTK_HAVE_GETTEXT
help
libelf lets you read, modify or create ELF files in an
@@ -32,7 +40,7 @@ config EMBTK_HAVE_LIBELF
on an Intel-based system.
choice
prompt "libelf version you wish"
- depends on EMBTK_HAVE_LIBELF
+ depends on EMBTK_HAVE_LIBELF || EMBTK_HOST_HAVE_LIBELF
help
Here you can choose which version of libelf you want to use.
@@ -47,4 +55,22 @@ config EMBTK_LIBELF_VERSION_STRING
config EMBTK_LIBELF_NEED_PATCH
bool
+ select EMBTK_LIBELF_HOST_NEED_PATCH
+config EMBTK_LIBELF_NEED_AUTORECONF
+ bool
+ select EMBTK_LIBELF_HOST_NEED_AUTORECONF
+config EMBTK_LIBELF_PKG_IS_TARGZ
+ bool
+ select EMBTK_LIBELF_HOST_PKG_IS_TARGZ
+config EMBTK_LIBELF_PKG_IS_TARBZ2
+ bool
+ select EMBTK_LIBELF_HOST_PKG_IS_TARBZ2
+config EMBTK_LIBELF_HOST_NEED_PATCH
+ bool
+config EMBTK_LIBELF_HOST_NEED_AUTORECONF
+ bool
+config EMBTK_LIBELF_HOST_PKG_IS_TARGZ
+ bool
+config EMBTK_LIBELF_HOST_PKG_IS_TARBZ2
+ bool
diff --git a/packages/misc/libelf/libelf.mk b/packages/misc/libelf/libelf.mk
index b40b4b6..2bb9338 100644
--- a/packages/misc/libelf/libelf.mk
+++ b/packages/misc/libelf/libelf.mk
@@ -23,84 +23,33 @@
# \date January 2010
################################################################################
-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)
+LIBELF_NAME := libelf
+LIBELF_VERSION := $(call embtk_get_pkgversion,libelf)
+LIBELF_SITE := http://www.mr511.de/software
+LIBELF_PACKAGE := libelf-$(LIBELF_VERSION).tar.gz
+LIBELF_SRC_DIR := $(PACKAGES_BUILD)/libelf-$(LIBELF_VERSION)
+LIBELF_BUILD_DIR := $(PACKAGES_BUILD)/libelf-$(LIBELF_VERSION)
-LIBELF_BINS =
-LIBELF_SBINS =
-LIBELF_INCLUDES = libelf gelf.h libelf.h nlist.h
-LIBELF_LIBS = libelf.a
-LIBELF_PKGCONFIGS = libelf.pc
+LIBELF_BINS :=
+LIBELF_SBINS :=
+LIBELF_INCLUDES := libelf gelf.h libelf.h nlist.h
+LIBELF_LIBS := libelf.a
+LIBELF_PKGCONFIGS := libelf.pc
-LIBELF_DEPS := gettext_install
+LIBELF_CONFIGURE_OPTS := --enable-elf64
+LIBELF_DEPS := gettext_install
-libelf_install:
- @test -e $(LIBELF_BUILD_DIR)/.installed || \
- $(MAKE) $(LIBELF_BUILD_DIR)/.installed
-$(LIBELF_BUILD_DIR)/.installed: $(LIBELF_DEPS) download_libelf \
- $(LIBELF_BUILD_DIR)/.decompressed $(LIBELF_BUILD_DIR)/.configured
- $(call embtk_pinfo,"Compiling and installing \
- libelf-$(LIBELF_VERSION) in your root filesystem...")
- $(Q)$(MAKE) -C $(LIBELF_BUILD_DIR) $(J)
- $(Q)$(MAKE) -C $(LIBELF_BUILD_DIR) install
- $(Q)$(MAKE) pkgconfig_files_adapt
- @touch $@
-
-download_libelf:
- $(call embtk_pinfo,"Downloading $(LIBELF_PACKAGE) \
- if necessary...")
- @test -e $(DOWNLOAD_DIR)/$(LIBELF_PACKAGE) || \
- wget -O $(DOWNLOAD_DIR)/$(LIBELF_PACKAGE) \
- $(LIBELF_SITE)/$(LIBELF_PACKAGE)
-ifeq ($(CONFIG_EMBTK_LIBELF_NEED_PATCH),y)
- @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_pinfo,"Decompressing $(LIBELF_PACKAGE) ...")
- @tar -C $(PACKAGES_BUILD) -xzf $(DOWNLOAD_DIR)/$(LIBELF_PACKAGE)
-ifeq ($(CONFIG_EMBTK_LIBELF_NEED_PATCH),y)
- cd $(LIBELF_BUILD_DIR); \
- patch -p1 < $(DOWNLOAD_DIR)/libelf-$(LIBELF_VERSION).patch
-endif
- @touch $@
-
-$(LIBELF_BUILD_DIR)/.configured:
- $(Q)cd $(LIBELF_BUILD_DIR); \
- CC=$(TARGETCC_CACHED) \
- CXX=$(TARGETCXX_CACHED) \
- AR=$(TARGETAR) \
- RANLIB=$(TARGETRANLIB) \
- AS=$(CROSS_COMPILE)as \
- LD=$(TARGETLD) \
- NM=$(TARGETNM) \
- STRIP=$(TARGETSTRIP) \
- OBJDUMP=$(TARGETOBJDUMP) \
- OBJCOPY=$(TARGETOBJCOPY) \
- CFLAGS="$(TARGET_CFLAGS)" \
- CXXFLAGS="$(TARGET_CFLAGS)" \
- LDFLAGS="-L$(SYSROOT)/$(LIBDIR) -L$(SYSROOT)/usr/$(LIBDIR)" \
- CPPFLAGS="-I$(SYSROOT)/usr/include" \
- PKG_CONFIG=$(PKGCONFIG_BIN) \
- PKG_CONFIG_PATH=$(EMBTK_PKG_CONFIG_PATH) \
- ./configure --build=$(HOST_BUILD) \
- --host=$(STRICT_GNU_TARGET) \
- --target=$(STRICT_GNU_TARGET) \
- --prefix=$(SYSROOT)/usr --enable-elf64 --libdir=$(SYSROOT)/usr/$(LIBDIR)
- @touch $@
+#
+# libelf for host development machine
+#
-libelf_clean:
- $(call embtk_pinfo,"cleanup libelf...")
- $(Q)-cd $(SYSROOT)/usr/bin; rm -rf $(LIBELF_BINS)
- $(Q)-cd $(SYSROOT)/usr/sbin; rm -rf $(LIBELF_SBINS)
- $(Q)-cd $(SYSROOT)/usr/include; rm -rf $(LIBELF_INCLUDES)
- $(Q)-cd $(SYSROOT)/usr/$(LIBDIR); rm -rf $(LIBELF_LIBS)
- $(Q)-cd $(SYSROOT)/usr/$(LIBDIR)/pkgconfig; rm -rf $(LIBELF_PKGCONFIGS)
- $(Q)-rm -rf $(LIBELF_BUILD_DIR)*
+LIBELF_HOST_NAME := $(LIBELF_NAME)
+LIBELF_HOST_VERSION := $(LIBELF_VERSION)
+LIBELF_HOST_SITE := $(LIBELF_SITE)
+LIBELF_HOST_PACKAGE := $(LIBELF_PACKAGE)
+LIBELF_HOST_SRC_DIR := $(TOOLS_BUILD)/libelf-$(LIBELF_VERSION)
+LIBELF_HOST_BUILD_DIR := $(TOOLS_BUILD)/libelf-$(LIBELF_VERSION)
+LIBELF_HOST_CONFIGURE_OPTS := --enable-elf64
+LIBELF_HOST_DEPS := gettext_host_install
diff --git a/packages/misc/misc.mk b/packages/misc/misc.mk
index 045ead0..6944fd9 100644
--- a/packages/misc/misc.mk
+++ b/packages/misc/misc.mk
@@ -47,6 +47,7 @@ HOSTTOOLS_COMPONENTS-$(CONFIG_EMBTK_HOST_HAVE_INTLTOOL) += intltool_host_install
#libelf
include $(EMBTK_ROOT)/packages/misc/libelf/libelf.mk
ROOTFS_COMPONENTS-$(CONFIG_EMBTK_HAVE_LIBELF) += libelf_install
+HOSTTOOLS_COMPONENTS-$(CONFIG_EMBTK_HOST_HAVE_LIBELF) += libelf_host_install
#libxml2
include $(EMBTK_ROOT)/packages/misc/libxml/libxml.mk