elfutils.mk 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. ################################################################################
  2. #
  3. # elfutils
  4. #
  5. ################################################################################
  6. ELFUTILS_VERSION = 0.189
  7. ELFUTILS_SOURCE = elfutils-$(ELFUTILS_VERSION).tar.bz2
  8. ELFUTILS_SITE = https://sourceware.org/elfutils/ftp/$(ELFUTILS_VERSION)
  9. ELFUTILS_INSTALL_STAGING = YES
  10. ELFUTILS_LICENSE = GPL-2.0+ or LGPL-3.0+ (library)
  11. ELFUTILS_LICENSE_FILES = COPYING COPYING-GPLV2 COPYING-LGPLV3
  12. ELFUTILS_CPE_ID_VALID = YES
  13. ELFUTILS_DEPENDENCIES = host-pkgconf zlib $(TARGET_NLS_DEPENDENCIES)
  14. HOST_ELFUTILS_DEPENDENCIES = host-pkgconf host-zlib host-bzip2 host-xz
  15. # We patch configure.ac
  16. ELFUTILS_AUTORECONF = YES
  17. HOST_ELFUTILS_AUTORECONF = YES
  18. # Pass a custom program prefix to avoid a naming conflict between
  19. # elfutils binaries and binutils binaries.
  20. ELFUTILS_CONF_OPTS += \
  21. --program-prefix="eu-"
  22. HOST_ELFUTILS_CONF_OPTS = \
  23. --with-bzlib \
  24. --with-lzma \
  25. --without-zstd \
  26. --disable-demangler \
  27. --disable-progs
  28. ELFUTILS_LDFLAGS = $(TARGET_LDFLAGS) \
  29. $(TARGET_NLS_LIBS)
  30. ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
  31. ELFUTILS_LDFLAGS += -latomic
  32. endif
  33. ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),)
  34. ELFUTILS_DEPENDENCIES += musl-fts argp-standalone
  35. endif
  36. ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
  37. ELFUTILS_CONF_OPTS += --disable-symbol-versioning
  38. endif
  39. ifeq ($(BR2_microblaze),y)
  40. ELFUTILS_CONF_OPTS += --disable-symbol-versioning
  41. endif
  42. # disable for now, needs "distro" support
  43. ELFUTILS_CONF_OPTS += --disable-libdebuginfod --disable-debuginfod
  44. HOST_ELFUTILS_CONF_OPTS += --disable-libdebuginfod --disable-debuginfod
  45. ELFUTILS_CONF_ENV += \
  46. LDFLAGS="$(ELFUTILS_LDFLAGS)"
  47. ifeq ($(BR2_INSTALL_LIBSTDCPP),y)
  48. ELFUTILS_CONF_OPTS += --enable-demangler
  49. else
  50. ELFUTILS_CONF_OPTS += --disable-demangler
  51. endif
  52. ifeq ($(BR2_PACKAGE_BZIP2),y)
  53. ELFUTILS_DEPENDENCIES += bzip2
  54. ELFUTILS_CONF_OPTS += --with-bzlib
  55. else
  56. ELFUTILS_CONF_OPTS += --without-bzlib
  57. endif
  58. ifeq ($(BR2_PACKAGE_XZ),y)
  59. ELFUTILS_DEPENDENCIES += xz
  60. ELFUTILS_CONF_OPTS += --with-lzma
  61. else
  62. ELFUTILS_CONF_OPTS += --without-lzma
  63. endif
  64. ifeq ($(BR2_PACKAGE_ZSTD),y)
  65. ELFUTILS_DEPENDENCIES += zstd
  66. ELFUTILS_CONF_OPTS += --with-zstd
  67. else
  68. ELFUTILS_CONF_OPTS += --without-zstd
  69. endif
  70. ifeq ($(BR2_PACKAGE_ELFUTILS_PROGS),y)
  71. ELFUTILS_CONF_OPTS += --enable-progs
  72. ELFUTILS_LICENSE += , GPL-3.0+ (programs)
  73. ELFUTILS_LICENSE_FILES += COPYING
  74. else
  75. ELFUTILS_CONF_OPTS += --disable-progs
  76. endif
  77. $(eval $(autotools-package))
  78. $(eval $(host-autotools-package))