summaryrefslogtreecommitdiff
path: root/package/binutils/Makefile
blob: c86fc7d106399a73089d20d5d2cec0fceaacf88b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

include ${ADK_TOPDIR}/rules.mk
include ${ADK_TOPDIR}/toolchain/binutils/Makefile.inc

PKG_NAME:=		binutils
PKG_DESCR:=		binary utilities (nm, objdump, as, ..)
PKG_SECTION:=		dev/tools
PKG_DEPENDS:=		libbfd
PKG_LIBNAME:=		libbfd
PKG_OPTS:=		dev

PKG_SUBPKGS:=		BINUTILS LIBBFD
PKGSD_LIBBFD:=		binary file descriptor library
PKGSC_LIBBFD:=		libs/misc

PKG_HOST_DEPENDS:=      !cygwin

include ${ADK_TOPDIR}/mk/package.mk

$(eval $(call PKG_template,BINUTILS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
$(eval $(call PKG_template,LIBBFD,libbfd,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_LIBBFD},${PKGSD_LIBBFD},${PKGSC_LIBBFD},${PKG_OPTS}))

TARGET_CFLAGS+=		-fPIC
CONFIGURE_ENV+=		ac_cv_prog_MAKEINFO=missing

ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),)
CONFIGURE_ARGS+=	--disable-multilib
else
CONFIGURE_ARGS+=	--enable-multilib
endif
CONFIGURE_ARGS+=	--disable-werror \
			--disable-install-libiberty \
			--host=$(GNU_TARGET_NAME) \
			--target=$(GNU_TARGET_NAME)
# disable honour cflags stuff
XAKE_FLAGS+=		GCC_HONOUR_COPTS=s

libbfd-install:
	${INSTALL_DIR} ${IDIR_LIBBFD}/usr/lib
	$(CP) ${WRKINST}/usr/lib/*.so* ${IDIR_LIBBFD}/usr/lib
	# for oprofile
	${INSTALL_DIR} ${STAGING_TARGET_DIR}/usr/lib/binutils
	$(CP) ${WRKBUILD}/libiberty/libiberty.a \
		${STAGING_TARGET_DIR}/usr/lib/binutils

binutils-install:
	${INSTALL_DIR} ${IDIR_BINUTILS}/usr/bin
	${INSTALL_BIN} ${WRKINST}/usr/bin/{ar,as,ld,strip,strings,size,nm} \
		${IDIR_BINUTILS}/usr/bin/
	${INSTALL_BIN} ${WRKINST}/usr/bin/{objcopy,ranlib,readelf,objdump} \
		 ${IDIR_BINUTILS}/usr/bin/

include ${ADK_TOPDIR}/mk/pkg-bottom.mk