Another pass of .oe cleanups.
[vuplus_openembedded] / binutils / binutils_2.14.90.0.7.oe
1 inherit autotools
2
3 DESCRIPTION := A GNU collection of binary utilities
4 LICENSE := GPL
5 MAINTAINER := Gerald Britton <gbritton@doomcom.org>
6
7 # This will ONLY build to this target
8 TARGET_VENDOR :=
9 TARGET_SYS := ${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}
10 TARGET_PREFIX := ${TARGET_SYS}-
11
12 DEPENDS := virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}gcc \
13            virtual/libc patcher
14
15 PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
16
17 FILES_${PN} =  \
18         ${bindir}/${TARGET_PREFIX}*
19
20 FILES_${PN}-dev = \
21         ${includedir} \
22         ${libdir}/*.a
23
24 FILES_${PN}-symlinks = \
25         ${bindir}/addr2line \
26         ${bindir}/ar \
27         ${bindir}/as \
28         ${bindir}/ld \
29         ${bindir}/nm \
30         ${bindir}/objcopy \
31         ${bindir}/objdump \
32         ${bindir}/ranlib \
33         ${bindir}/readelf \
34         ${bindir}/size \
35         ${bindir}/strings \
36         ${bindir}/strip
37
38 SRC_URI = "http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
39            file://${FILESDIR}/binutils-001_ld_makefile.patch;patch=1 \
40            file://${FILESDIR}/binutils-006_better_file_error.patch;patch=1 \
41            file://${FILESDIR}/binutils-009_signed_char_fix.patch;patch=1 \
42            file://${FILESDIR}/binutils-012_check_ldrunpath_length.patch;patch=1 \
43            file://${FILESDIR}/binutils-100_cflags_for_build.patch;patch=1 \
44            file://${FILESDIR}/binutils-906-hjl_libtool_dso.patch;patch=1"
45
46 S := ${WORKDIR}/binutils-${PV}
47 B := ${S}/build.${HOST_SYS}.${TARGET_SYS}
48
49 EXTRA_OECONF = '--with-sysroot=${prefix}'
50
51 # This is necessary due to a bug in the binutils Makefiles
52 EXTRA_OEMAKE = configure-build-libiberty all
53
54 export AR = ${HOST_PREFIX}ar
55 export AS = ${HOST_PREFIX}as
56 export LD = ${HOST_PREFIX}ld
57 export NM = ${HOST_PREFIX}nm
58 export RANLIB = ${HOST_PREFIX}ranlib
59 export OBJCOPY = ${HOST_PREFIX}objcopy
60 export OBJDUMP = ${HOST_PREFIX}objdump
61
62 export AR_FOR_TARGET = ${TARGET_PREFIX}ar
63 export AS_FOR_TARGET = ${TARGET_PREFIX}as
64 export LD_FOR_TARGET = ${TARGET_PREFIX}ld
65 export NM_FOR_TARGET = ${TARGET_PREFIX}nm
66 export RANLIB_FOR_TARGET = ${TARGET_PREFIX}ranlib
67
68 export CC_FOR_HOST = ${CCACHE} ${HOST_PREFIX}gcc
69 export CXX_FOR_HOST = ${CCACHE} ${HOST_PREFIX}gcc
70
71 export CC_FOR_BUILD = ${BUILD_CC}
72
73 export CC = ${CCACHE} ${HOST_PREFIX}gcc
74
75 do_configure () {
76         oe_runconf
77 }
78
79 do_install () {
80         autotools_do_install
81
82         # We don't really need these, so we'll remove them...
83         rm -rf ${D}/${libdir}/ldscripts
84
85         # Install the libiberty header
86         install -m 644 ${S}/include/ansidecl.h ${D}/${includedir}
87         install -m 644 ${S}/include/libiberty.h ${D}/${includedir}
88
89         cd ${D}/${bindir}
90
91         # Symlinks for ease of running these on the native target
92         for p in ${TARGET_SYS}-* ; do
93                 ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
94         done
95 }