elfutils: move host build to tools
[openwrt/staging/stintel.git] / package / libs / elfutils / Makefile
index e03388dfeb0abae1bae112607abcdb93c89945ee..2a7b5c50e2d3431d420560c7a3f0e7d9180b8e77 100644 (file)
@@ -1,6 +1,5 @@
 #
-# Copyright (C) 2010-2014 OpenWrt.org
-# Copyright (C) 2016-2017 Luiz Angelo Daros de Luca <luizluca@gmail.com>
+# Copyright (C) 2010-2019 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,22 +7,22 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=elfutils
-PKG_VERSION:=0.173
+PKG_VERSION:=0.186
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION)
-PKG_HASH:=b76d8c133f68dad46250f5c223482c8299d454a69430d9aa5c19123345a000ff
+PKG_HASH:=7f6fb9149b1673d38d9178a0d3e0fb8a1ec4f53a9f4c2ff89469609879641177
+
 PKG_MAINTAINER:=Luiz Angelo Daros de Luca <luizluca@gmail.com>
-PKG_LICENSE:=GPL-3.0+
+PKG_LICENSE:=GPL-3.0-or-later
 PKG_LICENSE_FILES:=COPYING COPYING-GPLV2 COPYING-LGPLV3
 PKG_CPE_ID:=cpe:/a:elfutils_project:elfutils
-PKG_FIXUP:=autoreconf
 
+PKG_FIXUP:=autoreconf
 PKG_INSTALL:=1
-PKG_USE_MIPS16:=0
-
-PKG_BUILD_DEPENDS:=USE_UCLIBC:argp-standalone USE_MUSL:argp-standalone
+PKG_USE_MIPS16:=1
+PKG_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone
 
 include $(INCLUDE_DIR)/package.mk
 include $(INCLUDE_DIR)/nls.mk
@@ -33,34 +32,54 @@ define Package/elfutils/Default
   CATEGORY:=Libraries
   TITLE:=ELF manipulation libraries
   URL:=https://fedorahosted.org/elfutils/
+  ABI_VERSION:=1
 endef
 
 define Package/libasm
   $(call Package/elfutils/Default)
   TITLE+= (libasm)
-  DEPENDS:=libelf1 +libdw
+  DEPENDS:=+libelf +libdw
 endef
 
 define Package/libdw
   $(call Package/elfutils/Default)
-  DEPENDS:=libelf1 +libbz2
+  DEPENDS:=+libelf +libbz2 +USE_MUSL:musl-fts
   TITLE+= (libdw)
 endef
 
-define Package/libelf1
+define Package/libelf
   $(call Package/elfutils/Default)
   DEPENDS:=$(INTL_DEPENDS) +zlib
   TITLE+= (libelf)
+  PROVIDES:=libelf1
 endef
 
 ifeq ($(CONFIG_BUILD_NLS),y)
-TARGET_LDFLAGS += "-lintl"
+TARGET_LDFLAGS += -lintl
+else
+CONFIGURE_ARGS += --disable-nls
 endif
 
+HOST_CONFIGURE_ARGS += \
+       --disable-shared \
+       --disable-nls \
+       --disable-debuginfod \
+       --disable-libdebuginfod \
+       --without-lzma \
+       --without-zstd
+
 CONFIGURE_ARGS += \
        --program-prefix=eu- \
-       --disable-nls \
-       --without-lzma
+       --disable-debuginfod \
+       --disable-libdebuginfod \
+       --without-lzma \
+       --without-zstd
+
+HOST_CONFIGURE_VARS += \
+       ac_cv_search__obstack_free=yes
+
+CONFIGURE_VARS += \
+       ac_cv_search__obstack_free=yes
 
 TARGET_CFLAGS += -D_GNU_SOURCE -Wno-unused-result -Wno-format-nonliteral
 
@@ -71,23 +90,27 @@ define Build/InstallDev
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libasm*.{a,so*} $(1)/usr/lib/
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdw*.{a,so*} $(1)/usr/lib/
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelf*.{a,so*} $(1)/usr/lib/
+       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libelf.pc $(1)/usr/lib/pkgconfig/
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libdw.pc $(1)/usr/lib/pkgconfig/
 endef
 
 define Package/libasm/install
        $(INSTALL_DIR) $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libasm*.so* $(1)/usr/lib/
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libasm{-*.so,*.so.*} $(1)/usr/lib/
 endef
 
 define Package/libdw/install
        $(INSTALL_DIR) $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdw*.so* $(1)/usr/lib/
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdw{-*.so,*.so.*} $(1)/usr/lib/
 endef
 
-define Package/libelf1/install
+define Package/libelf/install
        $(INSTALL_DIR) $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelf*.so* $(1)/usr/lib/
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelf{-*.so,*.so.*} $(1)/usr/lib/
 endef
 
-$(eval $(call BuildPackage,libasm))
+# these lines need to be ordered by dependency because of ABI versioning
+$(eval $(call BuildPackage,libelf))
 $(eval $(call BuildPackage,libdw))
-$(eval $(call BuildPackage,libelf1))
+$(eval $(call BuildPackage,libasm))