From 3587696e114fb650d5c7303b1cb355516c7bb864 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 21 Oct 2016 09:10:19 +0200 Subject: android-tools: fix native build * Find libbsd headers when building natively * Disable tools that needs sys/capability.h when building natively * Enhance do_install to work when some tools are disabled Signed-off-by: Koen Kooi Signed-off-by: Martin Jansa --- .../android-tools/android-tools_5.1.1.r37.bb | 59 +++++++++++++++------- 1 file changed, 40 insertions(+), 19 deletions(-) diff --git a/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb b/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb index 2dbddf157..1769b6a8a 100644 --- a/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb +++ b/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb @@ -65,6 +65,16 @@ do_unpack_extra() { addtask unpack_extra after do_unpack before do_patch +# Find libbsd headers during native builds +CC_append_class-native = " -I${STAGING_INCDIR}" +CC_append_class-nativesdk = " -I${STAGING_INCDIR}" + +TOOLS = "adb fastboot ext4_utils mkbootimg adbd" + +# Adb needs sys/capability.h, which is not available for native* +TOOLS_class-native = "fastboot ext4_utils mkbootimg" +TOOLS_class-nativesdk = "fastboot ext4_utils mkbootimg" + do_compile() { # Setting both variables below causing our makefiles to not work with # implicit make rules @@ -91,31 +101,42 @@ do_compile() { ;; esac - tools="adb fastboot ext4_utils mkbootimg adbd" - for tool in ${tools}; do + for tool in ${TOOLS}; do mkdir -p ${B}/${tool} oe_runmake -f ${B}/${tool}.mk -C ${B}/${tool} done } do_install() { - install -D -p -m0755 ${S}/system/core/libsparse/simg_dump.py ${D}${bindir}/simg_dump - install -D -p -m0755 ${S}/system/extras/ext4_utils/mkuserimg.sh ${D}${bindir}/mkuserimg - - install -m0755 ${B}/ext4_utils/ext2simg ${D}${bindir} - install -m0755 ${B}/ext4_utils/ext4fixup ${D}${bindir} - install -m0755 ${B}/ext4_utils/img2simg ${D}${bindir} - install -m0755 ${B}/ext4_utils/make_ext4fs ${D}${bindir} - install -m0755 ${B}/ext4_utils/simg2img ${D}${bindir} - install -m0755 ${B}/ext4_utils/simg2simg ${D}${bindir} - - install -m0755 ${B}/adb/adb ${D}${bindir} - install -m0755 ${B}/adbd/adbd ${D}${bindir} - install -m0755 ${B}/fastboot/fastboot ${D}${bindir} - install -m0755 ${B}/mkbootimg/mkbootimg ${D}${bindir} - - install -D -p -m0644 ${WORKDIR}/android-tools-adbd.service \ - ${D}${systemd_unitdir}/system/android-tools-adbd.service + if [ grep -q "ext4_utils" "${TOOLS}" ] ; then + install -D -p -m0755 ${S}/system/core/libsparse/simg_dump.py ${D}${bindir}/simg_dump + install -D -p -m0755 ${S}/system/extras/ext4_utils/mkuserimg.sh ${D}${bindir}/mkuserimg + + install -m0755 ${B}/ext4_utils/ext2simg ${D}${bindir} + install -m0755 ${B}/ext4_utils/ext4fixup ${D}${bindir} + install -m0755 ${B}/ext4_utils/img2simg ${D}${bindir} + install -m0755 ${B}/ext4_utils/make_ext4fs ${D}${bindir} + install -m0755 ${B}/ext4_utils/simg2img ${D}${bindir} + install -m0755 ${B}/ext4_utils/simg2simg ${D}${bindir} + fi + + if [ grep -q "adb " "${TOOLS}" ] ; then + install -m0755 ${B}/adb/adb ${D}${bindir}i + fi + + if [ grep -q "adbd" "${TOOLS}" ] ; then + install -m0755 ${B}/adbd/adbd ${D}${bindir} + install -D -p -m0644 ${WORKDIR}/android-tools-adbd.service \ + ${D}${systemd_unitdir}/system/android-tools-adbd.service + fi + + if [ grep -q "fastboot" "${TOOLS}" ] ; then + install -m0755 ${B}/fastboot/fastboot ${D}${bindir} + fi + + if [ grep -q "mkbootimg" "${TOOLS}" ] ; then + install -m0755 ${B}/mkbootimg/mkbootimg ${D}${bindir} + fi } PACKAGES += "${PN}-fstools" -- cgit v1.2.3-54-g00ecf