package/binutils: actually support the target toolchain
[openwrt/staging/mkresin.git] / package / devel / binutils / Makefile
index e8d45d2d8bbe92bb20f0efb547d3069d28c5e349..c5a07174776cf8ad37c5e87d68b005d404e14f9b 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=binutils
 PKG_VERSION:=2.24
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE_URL:=@GNU/binutils
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
@@ -22,32 +22,55 @@ PKG_REMOVE_FILES:=libtool.m4
 PKG_INSTALL:=1
 
 PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
-
+PKG_LICENSE:=GPL-3.0+
 PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
+define Package/libbfd
+  SECTION:=libs
+  CATEGORY:=Libraries
+  TITLE:=libbfd
+  DEPENDS:=+zlib
+endef
+
+define Package/libopcodes
+  SECTION:=libs
+  CATEGORY:=Libraries
+  TITLE:=libbfd
+  DEPENDS:=+libbfd
+endef
+
 define Package/binutils
   SECTION:=devel
   CATEGORY:=Development
   TITLE:=binutils
-  DEPENDS:=+objdump
+  DEPENDS:=+objdump +ar
 endef
 
 define Package/objdump
   SECTION:=devel
   CATEGORY:=Development
   TITLE:=objdump
-  DEPENDS:=+zlib 
+  DEPENDS:=+libopcodes
+endef
+
+define Package/ar
+  SECTION:=devel
+  CATEGORY:=Development
+  TITLE:=ar
+  DEPENDS:=+zlib +libbfd
 endef
 
 define Package/binutils/description
   The Binutils package contains a linker, an assembler, and other tools for handling object files
 endef
 
-TARGET_CFLAGS += $(FPIC)
+TARGET_CFLAGS += $(FPIC) -Wno-unused-value
 
 CONFIGURE_ARGS += \
+       --host=$(REAL_GNU_TARGET_NAME) \
+       --target=$(REAL_GNU_TARGET_NAME) \
        --enable-shared \
        --enable-install-libiberty \
        --enable-install-libbfd
@@ -65,11 +88,24 @@ define Build/InstallDev
        $(CP) $(PKG_INSTALL_DIR)/* $(1)/
 endef
 
+define Package/libbfd/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbfd*.so $(1)/usr/lib/
+endef
+
+define Package/libopcodes/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libopcodes*.so $(1)/usr/lib/
+endef
+
 define Package/objdump/install
-       $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib
+       $(INSTALL_DIR) $(1)/usr/bin
        $(CP) $(PKG_INSTALL_DIR)/usr/bin/objdump $(1)/usr/bin/
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libopcodes*.so $(1)/usr/lib/
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbfd*.so $(1)/usr/lib/
+endef
+
+define Package/ar/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(CP) $(PKG_INSTALL_DIR)/usr/bin/ar $(1)/usr/bin/
 endef
 
 define Package/binutils/install
@@ -77,7 +113,11 @@ define Package/binutils/install
        $(CP) $(PKG_INSTALL_DIR)/usr/bin/ $(1)/usr/
        mv $(1)/usr/bin/strings $(1)/bin/strings
        rm -f $(1)/usr/bin/objdump
+       rm -f $(1)/usr/bin/ar
 endef
 
+$(eval $(call BuildPackage,libbfd))
+$(eval $(call BuildPackage,libopcodes))
 $(eval $(call BuildPackage,binutils))
 $(eval $(call BuildPackage,objdump))
+$(eval $(call BuildPackage,ar))