在AOSP Android.mk文件中,如何执行命令并在命令失败时使构建失败?

卡梅伦·马丁(Cameron Martin)

在Android.mk文件中,我具有执行bash脚本的以下行:

$(info $(shell ($(LOCAL_PATH)/build.sh)))

但是,如果命令失败,则继续构建而不是退出。

在这种情况下,如何使整个构建失败?

红宝石

转储stdout,测试退出状态,并在发生错误时出错:

ifneq (0,$(shell >/dev/null command doesnotexist ; echo $$?))
  $(error "not good")
endif

这是失败的样子:

[user@host]$ make 
/bin/sh: doesnotexist: command not found
Makefile:6: *** not good.  Stop.
[user@host]$

如果您想查看stdout,则可以将其保存到变量中,并仅测试lastword

FOOBAR_OUTPUT := $(shell echo "I hope this works" ; command foobar ; echo $$?)
$(info $$(FOOBAR_OUTPUT) == $(FOOBAR_OUTPUT))
$(info $$(lastword $$(FOOBAR_OUTPUT)) == $(lastword $(FOOBAR_OUTPUT)))
ifneq (0,$(lastword $(FOOBAR_OUTPUT)))
  $(error not good)
endif

这使

$ make
/bin/sh: foobar: command not found
$(FOOBAR_OUTPUT) == I hope this works 127
$(lastword $(FOOBAR_OUTPUT)) == 127
Makefile:12: *** not good.  Stop.

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

构建/安装Android Wear AOSP

来自分类Dev

如何为Android Automotive OS构建AOSP?

来自分类Dev

Android AOSP构建在android-10.0.0_r39的build_image.py中失败

来自分类Dev

Android:如何构建和替换修改后的AOSP代码

来自分类Dev

在Android AOSP中包含预构建的共享库

来自分类Dev

如何将Android源代码(AOSP)导入Android Studio?

来自分类Dev

仅从Android源(AOSP)构建一种工具

来自分类Dev

从更改的framework.jar构建Android AOSP system.img

来自分类Dev

仅从Android源(AOSP)构建一种工具

来自分类Dev

如何构建AOSP的libhardware

来自分类Dev

AOSP项目是如何构建的?

来自分类Dev

编译/安装Android Wear AOSP

来自分类Dev

生成android AOSP GPL包

来自分类Dev

Android:在AOSP版本中包含su二进制可执行文件

来自分类Dev

用AOSP构建内核

来自分类Dev

AOSP - 构建自定义图像并在 SDK 上使用 Android 模拟器运行它们

来自分类Dev

为 Dragonboard (Ubuntu 16.04) 构建 Android 开源项目 (AOSP) 时“无法构建某些目标”

来自分类Dev

如何将系统api类添加到非AOSP构建的android项目中

来自分类Dev

Android AOSP-android源代码中扫描间隔和扫描窗口的定义

来自分类Dev

按下Android键盘(AOSP)键时如何制作此高亮图形

来自分类Dev

Android AOSP编译错误-在aidl文件中找不到导入

来自分类Dev

如何以编程方式在Android设备中获取设备(AOSP)内部版本号?

来自分类Dev

如何以编程方式在Android设备中获取设备(AOSP)内部版本号?

来自分类Dev

如何在 android AOSP 中没有谷歌播放服务的情况下使用 FaceDetectionAPI?

来自分类Dev

如何挂载AOSP .img文件?

来自分类Dev

在android AOSP 4.4.2中找不到属性layout_childtype的资源标识符

来自分类Dev

错误:在AOSP中缺少android-support-constraint-layout,但是prebuilts / sdk / current / extras有它

来自分类Dev

AOSP x86_64模拟器在Android Studio中不可见

来自分类Dev

Android AOSP linux服务标准输出

Related 相关文章

  1. 1

    构建/安装Android Wear AOSP

  2. 2

    如何为Android Automotive OS构建AOSP?

  3. 3

    Android AOSP构建在android-10.0.0_r39的build_image.py中失败

  4. 4

    Android:如何构建和替换修改后的AOSP代码

  5. 5

    在Android AOSP中包含预构建的共享库

  6. 6

    如何将Android源代码(AOSP)导入Android Studio?

  7. 7

    仅从Android源(AOSP)构建一种工具

  8. 8

    从更改的framework.jar构建Android AOSP system.img

  9. 9

    仅从Android源(AOSP)构建一种工具

  10. 10

    如何构建AOSP的libhardware

  11. 11

    AOSP项目是如何构建的?

  12. 12

    编译/安装Android Wear AOSP

  13. 13

    生成android AOSP GPL包

  14. 14

    Android:在AOSP版本中包含su二进制可执行文件

  15. 15

    用AOSP构建内核

  16. 16

    AOSP - 构建自定义图像并在 SDK 上使用 Android 模拟器运行它们

  17. 17

    为 Dragonboard (Ubuntu 16.04) 构建 Android 开源项目 (AOSP) 时“无法构建某些目标”

  18. 18

    如何将系统api类添加到非AOSP构建的android项目中

  19. 19

    Android AOSP-android源代码中扫描间隔和扫描窗口的定义

  20. 20

    按下Android键盘(AOSP)键时如何制作此高亮图形

  21. 21

    Android AOSP编译错误-在aidl文件中找不到导入

  22. 22

    如何以编程方式在Android设备中获取设备(AOSP)内部版本号?

  23. 23

    如何以编程方式在Android设备中获取设备(AOSP)内部版本号?

  24. 24

    如何在 android AOSP 中没有谷歌播放服务的情况下使用 FaceDetectionAPI?

  25. 25

    如何挂载AOSP .img文件?

  26. 26

    在android AOSP 4.4.2中找不到属性layout_childtype的资源标识符

  27. 27

    错误:在AOSP中缺少android-support-constraint-layout,但是prebuilts / sdk / current / extras有它

  28. 28

    AOSP x86_64模拟器在Android Studio中不可见

  29. 29

    Android AOSP linux服务标准输出

热门标签

归档