diff options
Diffstat (limited to 'meta/recipes-devtools/elfutils/elfutils_0.158.bb')
-rw-r--r-- | meta/recipes-devtools/elfutils/elfutils_0.158.bb | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/meta/recipes-devtools/elfutils/elfutils_0.158.bb b/meta/recipes-devtools/elfutils/elfutils_0.158.bb new file mode 100644 index 0000000000..e4253645bf --- /dev/null +++ b/meta/recipes-devtools/elfutils/elfutils_0.158.bb | |||
@@ -0,0 +1,98 @@ | |||
1 | SUMMARY = "Utilities and libraries for handling compiled object files" | ||
2 | HOMEPAGE = "https://fedorahosted.org/elfutils" | ||
3 | SECTION = "base" | ||
4 | LICENSE = "(GPLv3 & Elfutils-Exception)" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
6 | DEPENDS = "libtool bzip2 zlib virtual/libintl" | ||
7 | |||
8 | SRC_URI = "https://fedorahosted.org/releases/e/l/elfutils/${PV}/elfutils-${PV}.tar.bz2" | ||
9 | |||
10 | SRC_URI[md5sum] = "050a4909e452d01ab4747fd69d4036e0" | ||
11 | SRC_URI[sha256sum] = "be27af5c21352f53e010342bf1c68e0b9e18232dbf3adec7e2f9b41f6bbe397d" | ||
12 | |||
13 | # Pick patches from debian | ||
14 | # http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.158-2.debian.tar.xz | ||
15 | SRC_URI += "\ | ||
16 | file://redhat-portability.diff \ | ||
17 | file://redhat-robustify.diff \ | ||
18 | file://hppa_backend.diff \ | ||
19 | file://arm_backend.diff \ | ||
20 | file://mips_backend.diff \ | ||
21 | file://m68k_backend.diff \ | ||
22 | file://testsuite-ignore-elflint.diff \ | ||
23 | file://scanf-format.patch \ | ||
24 | file://mips_readelf_w.patch \ | ||
25 | file://core_filename.patch \ | ||
26 | file://CVE-2014-0172.patch \ | ||
27 | file://unwind_non_linux.patch \ | ||
28 | " | ||
29 | |||
30 | SRC_URI += " \ | ||
31 | file://elf_additions.diff \ | ||
32 | file://mempcpy.patch \ | ||
33 | file://dso-link-change.patch \ | ||
34 | file://m4-biarch.m4-tweak-AC_RUN_IFELSE-for-cross-compiling.patch \ | ||
35 | " | ||
36 | |||
37 | # Only apply when building uclibc based target recipe | ||
38 | SRC_URI_append_libc-uclibc = " file://uclibc-support.patch" | ||
39 | |||
40 | # The buildsystem wants to generate 2 .h files from source using a binary it just built, | ||
41 | # which can not pass the cross compiling, so let's work around it by adding 2 .h files | ||
42 | # along with the do_configure_prepend() | ||
43 | |||
44 | SRC_URI += "\ | ||
45 | file://i386_dis.h \ | ||
46 | file://x86_64_dis.h \ | ||
47 | " | ||
48 | inherit autotools gettext | ||
49 | |||
50 | EXTRA_OECONF = "--program-prefix=eu- --without-lzma" | ||
51 | EXTRA_OECONF_append_class-native = " --without-bzlib" | ||
52 | EXTRA_OECONF_append_libc-uclibc = " --enable-uclibc" | ||
53 | |||
54 | do_configure_prepend() { | ||
55 | sed -i '/^i386_dis.h:/,+4 {/.*/d}' ${S}/libcpu/Makefile.am | ||
56 | |||
57 | cp ${WORKDIR}/*dis.h ${S}/libcpu | ||
58 | } | ||
59 | |||
60 | do_install_append() { | ||
61 | if [ "${TARGET_ARCH}" != "x86_64" ] && [ -z `echo "${TARGET_ARCH}"|grep 'i.86'` ];then | ||
62 | rm ${D}${bindir}/eu-objdump | ||
63 | fi | ||
64 | } | ||
65 | |||
66 | # we can not build complete elfutils when using uclibc | ||
67 | # but some recipes e.g. gcc 4.5 depends on libelf so we | ||
68 | # build only libelf for uclibc case | ||
69 | |||
70 | EXTRA_OEMAKE_libc-uclibc = "-C libelf" | ||
71 | EXTRA_OEMAKE_class-native = "" | ||
72 | EXTRA_OEMAKE_class-nativesdk = "" | ||
73 | |||
74 | BBCLASSEXTEND = "native nativesdk" | ||
75 | |||
76 | # Package utilities separately | ||
77 | PACKAGES =+ "${PN}-binutils libelf libasm libdw libdw-dev libasm-dev libelf-dev" | ||
78 | FILES_${PN}-binutils = "\ | ||
79 | ${bindir}/eu-addr2line \ | ||
80 | ${bindir}/eu-ld \ | ||
81 | ${bindir}/eu-nm \ | ||
82 | ${bindir}/eu-readelf \ | ||
83 | ${bindir}/eu-size \ | ||
84 | ${bindir}/eu-strip" | ||
85 | |||
86 | FILES_libelf = "${libdir}/libelf-${PV}.so ${libdir}/libelf.so.*" | ||
87 | FILES_libasm = "${libdir}/libasm-${PV}.so ${libdir}/libasm.so.*" | ||
88 | FILES_libdw = "${libdir}/libdw-${PV}.so ${libdir}/libdw.so.* ${libdir}/elfutils/lib*" | ||
89 | FILES_libelf-dev = "${libdir}/libelf.so ${includedir}" | ||
90 | FILES_libasm-dev = "${libdir}/libasm.so ${includedir}/elfutils/libasm.h" | ||
91 | FILES_libdw-dev = "${libdir}/libdw.so ${includedir}/dwarf.h ${includedir}/elfutils/libdw*.h" | ||
92 | # Some packages have the version preceeding the .so instead properly | ||
93 | # versioned .so.<version>, so we need to reorder and repackage. | ||
94 | #FILES_${PN} += "${libdir}/*-${PV}.so ${base_libdir}/*-${PV}.so" | ||
95 | #FILES_SOLIBSDEV = "${libdir}/libasm.so ${libdir}/libdw.so ${libdir}/libelf.so" | ||
96 | |||
97 | # The package contains symlinks that trip up insane | ||
98 | INSANE_SKIP_${MLPREFIX}libdw = "dev-so" | ||