elfutils: produce correct libelf.pc file when building with full nls
[openwrt/openwrt.git] / package / libs / elfutils / Makefile
1 #
2 # Copyright (C) 2010-2014 OpenWrt.org
3 # Copyright (C) 2016-2017 Luiz Angelo Daros de Luca <luizluca@gmail.com>
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=elfutils
11 PKG_VERSION:=0.174
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
15 PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION)
16 PKG_HASH:=cdf27e70076e10a29539d89e367101d516bc4aa11b0d7777fe52139e3fcad08a
17 PKG_MAINTAINER:=Luiz Angelo Daros de Luca <luizluca@gmail.com>
18 PKG_LICENSE:=GPL-3.0+
19 PKG_LICENSE_FILES:=COPYING COPYING-GPLV2 COPYING-LGPLV3
20 PKG_CPE_ID:=cpe:/a:elfutils_project:elfutils
21 PKG_FIXUP:=autoreconf
22
23 PKG_INSTALL:=1
24 PKG_USE_MIPS16:=0
25
26 PKG_BUILD_DEPENDS:=USE_UCLIBC:argp-standalone USE_MUSL:argp-standalone
27
28 include $(INCLUDE_DIR)/package.mk
29 include $(INCLUDE_DIR)/nls.mk
30
31 define Package/elfutils/Default
32 SECTION:=libs
33 CATEGORY:=Libraries
34 TITLE:=ELF manipulation libraries
35 URL:=https://fedorahosted.org/elfutils/
36 endef
37
38 define Package/libasm
39 $(call Package/elfutils/Default)
40 TITLE+= (libasm)
41 DEPENDS:=libelf1 +libdw
42 endef
43
44 define Package/libdw
45 $(call Package/elfutils/Default)
46 DEPENDS:=libelf1 +libbz2
47 TITLE+= (libdw)
48 endef
49
50 define Package/libelf1
51 $(call Package/elfutils/Default)
52 DEPENDS:=$(INTL_DEPENDS) +zlib
53 TITLE+= (libelf)
54 endef
55
56 ifeq ($(CONFIG_BUILD_NLS),y)
57 TARGET_LDFLAGS += -lintl
58 else
59 CONFIGURE_ARGS += --disable-nls
60 endif
61
62 CONFIGURE_ARGS += \
63 --program-prefix=eu- \
64 --without-lzma
65
66 TARGET_CFLAGS += -D_GNU_SOURCE -Wno-unused-result -Wno-format-nonliteral
67
68 define Build/InstallDev
69 $(INSTALL_DIR) $(1)/usr/include
70 $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
71 $(INSTALL_DIR) $(1)/usr/lib
72 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libasm*.{a,so*} $(1)/usr/lib/
73 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdw*.{a,so*} $(1)/usr/lib/
74 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelf*.{a,so*} $(1)/usr/lib/
75 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
76 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libelf.pc $(1)/usr/lib/pkgconfig/
77 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libdw.pc $(1)/usr/lib/pkgconfig/
78 endef
79
80 define Package/libasm/install
81 $(INSTALL_DIR) $(1)/usr/lib
82 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libasm*.so* $(1)/usr/lib/
83 endef
84
85 define Package/libdw/install
86 $(INSTALL_DIR) $(1)/usr/lib
87 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdw*.so* $(1)/usr/lib/
88 endef
89
90 define Package/libelf1/install
91 $(INSTALL_DIR) $(1)/usr/lib
92 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libelf*.so* $(1)/usr/lib/
93 endef
94
95 $(eval $(call BuildPackage,libasm))
96 $(eval $(call BuildPackage,libdw))
97 $(eval $(call BuildPackage,libelf1))