blob: 2cce40f1ef9758cf7160811e44f957bb7c357033 [file] [log] [blame]
Patrick Williams92b42cb2022-09-03 06:53:57 -05001require binutils.inc
2require binutils-${PV}.inc
3
Andrew Geissler5082cc72023-09-11 08:41:39 -04004# perl-native for pod2man for man page generation
5DEPENDS += "zlib perl-native"
Patrick Williams92b42cb2022-09-03 06:53:57 -05006
7EXTRA_OECONF += "--with-sysroot=/ \
8 --enable-install-libbfd \
9 --enable-install-libiberty \
10 --enable-shared \
11 --with-system-zlib \
12 "
13
14EXTRA_OEMAKE:append:libc-musl = "\
15 gt_cv_func_gnugettext1_libc=yes \
16 gt_cv_func_gnugettext2_libc=yes \
17 "
18# libcollector/collector.c:547:15: error: no member named '__fprintf_chk' in 'struct CollectorUtilFuncs'
19EXTRA_OECONF:append:toolchain-clang = " --disable-gprofng"
20# | ../../../gprofng/libcollector/../src/collector_module.h:78:13: error: duplicate member 'pwrite'
21# | ../../../gprofng/libcollector/dispatcher.c:578:8: error: 'struct sigevent' has no member named '_sigev_un'
22EXTRA_OECONF:append:libc-musl = " --disable-gprofng"
23
24EXTRA_OECONF:class-native = "--enable-targets=all \
25 --enable-64-bit-bfd \
26 --enable-install-libiberty \
27 --enable-install-libbfd \
28 --disable-gdb \
29 --disable-gdbserver \
30 --disable-libdecnumber \
31 --disable-readline \
32 --disable-sim \
33 --disable-werror"
34
35PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'debuginfod', d)}"
36PACKAGECONFIG[debuginfod] = "--with-debuginfod, --without-debuginfod, elfutils"
37
38do_install:class-native () {
39 autotools_do_install
40
41 # Install the libiberty header
42 install -d ${D}${includedir}
43 install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
44 install -m 644 ${S}/include/libiberty.h ${D}${includedir}
45
46 # We only want libiberty, libbfd and libopcodes
47 rm -rf ${D}${bindir}
48 rm -rf ${D}${prefix}/${TARGET_SYS}
49 rm -rf ${D}${prefix}/lib/ldscripts
50 rm -rf ${D}${prefix}/share/info
51 rm -rf ${D}${prefix}/share/locale
52 rm -rf ${D}${prefix}/share/man
53 rmdir ${D}${prefix}/share || :
54 rmdir ${D}/${libdir}/gcc-lib || :
55 rmdir ${D}/${libdir}64/gcc-lib || :
56 rmdir ${D}/${libdir} || :
57 rmdir ${D}/${libdir}64 || :
58}
59
60# libctf races with libbfd
61PARALLEL_MAKEINST:class-target = ""
62PARALLEL_MAKEINST:class-nativesdk = ""
63
64# Split out libbfd-*.so and libopcodes-*.so so including perf doesn't include
65# extra stuff
66PACKAGE_BEFORE_PN += "libbfd libopcodes gprofng"
67FILES:libbfd = "${libdir}/libbfd-*.so.* ${libdir}/libbfd-*.so"
68FILES:libopcodes = "${libdir}/libopcodes-*.so.* ${libdir}/libopcodes-*.so"
69FILES:gprofng = "${sysconfdir}/gprofng.rc ${libdir}/gprofng/libgp-*.so ${libdir}/gprofng/libgprofng.so.* ${bindir}/gp-* ${bindir}/gprofng"
Patrick Williamse760df82023-05-26 11:10:49 -050070FILES:${PN}-dev += "${libdir}/libgprofng.so ${libdir}/libsframe.so"
Patrick Williams92b42cb2022-09-03 06:53:57 -050071SRC_URI:append:class-nativesdk = " file://0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch "
72
73USE_ALTERNATIVES_FOR:class-nativesdk = ""
74FILES:${PN}:append:class-nativesdk = " ${bindir}"
75
76BBCLASSEXTEND = "native nativesdk"