elfutils: Add host build
Needed for glib2 host build:
gresource-tool.c:32:20: fatal error: libelf.h: No such file or directory
 #include <libelf.h>
Changed PKG_LICENSE to the SPDX version.
Switched build dependency for argp-standalone to !USE_GLIBC. argp is a
glibc extension. Treat it as such.
Adjusted patch to use strerror_l, which works properly with both glibc
and musl. The patch errors under glibc with:
dwfl_error.c:158:7: error: ignoring return value of 'strerror_r', declared
with attribute warn_unused_result [-Werror=unused-result]
       strerror_r (error & 0xffff, s, sizeof(s));
void casting does not fix the error.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
			
			
This commit is contained in:
		 Rosen Penev
					Rosen Penev
				
			
				
					committed by
					
						 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
			
				
	
			
			
			 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
						parent
						
							89fe1dfac2
						
					
				
				
					commit
					f4da28c301
				
			| @@ -8,23 +8,24 @@ include $(TOPDIR)/rules.mk | ||||
|  | ||||
| PKG_NAME:=elfutils | ||||
| PKG_VERSION:=0.177 | ||||
| PKG_RELEASE:=1 | ||||
| PKG_RELEASE:=2 | ||||
|  | ||||
| PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | ||||
| PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION) | ||||
| PKG_HASH:=fa489deccbcae7d8c920f60d85906124c1989c591196d90e0fd668e3dc05042e | ||||
|  | ||||
| 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_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone | ||||
|  | ||||
| include $(INCLUDE_DIR)/package.mk | ||||
| include $(INCLUDE_DIR)/host-build.mk | ||||
| include $(INCLUDE_DIR)/nls.mk | ||||
|  | ||||
| define Package/elfutils/Default | ||||
| @@ -96,3 +97,4 @@ endef | ||||
| $(eval $(call BuildPackage,libasm)) | ||||
| $(eval $(call BuildPackage,libdw)) | ||||
| $(eval $(call BuildPackage,libelf)) | ||||
| $(eval $(call HostBuild)) | ||||
|   | ||||
| @@ -44,21 +44,12 @@ https://sourceware.org/bugzilla/show_bug.cgi?id=21002 | ||||
|  } | ||||
| --- a/libdwfl/dwfl_error.c | ||||
| +++ b/libdwfl/dwfl_error.c | ||||
| @@ -140,6 +140,7 @@ __libdwfl_seterrno (Dwfl_Error error) | ||||
|  const char * | ||||
|  dwfl_errmsg (int error) | ||||
|  { | ||||
| +  static __thread char s[64] = ""; | ||||
|    if (error == 0 || error == -1) | ||||
|      { | ||||
|        int last_error = global_error; | ||||
| @@ -154,7 +155,8 @@ dwfl_errmsg (int error) | ||||
| @@ -154,7 +154,7 @@ dwfl_errmsg (int error) | ||||
|    switch (error &~ 0xffff) | ||||
|      { | ||||
|      case OTHER_ERROR (ERRNO): | ||||
| -      return strerror_r (error & 0xffff, "bad", 0); | ||||
| +      strerror_r (error & 0xffff, s, sizeof(s)); | ||||
| +      return s; | ||||
| +      return strerror_l (error & 0xffff, LC_GLOBAL_LOCALE); | ||||
|      case OTHER_ERROR (LIBELF): | ||||
|        return elf_errmsg (error & 0xffff); | ||||
|      case OTHER_ERROR (LIBDW): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user