First pass of .oe cleanups.
[openembedded.git] / binutils / binutils_2.14.90.0.6.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 }