python - 如果自定义命令的任何步骤失败,则中止 cmake 配置
问题描述
我想要一个自定义目标来准备测试环境,生成一些相关的 python 代码等。这是我的 CMakeLists.txt 的一部分:
add_custom_target(test_env
COMMAND bash -c 'python3 -m venv ${DEPL_TEST_EXEC}/virtenv ' #step 1
COMMAND bash -c 'java -jar ${SWAGGER_PATH}/swagger-codegen-cli-3.0.15.jar generate -i ${SIGYN_SPECS}/mySpecialAPI.yaml -l python -o ${DEPL_TEST_EXEC}/mySpecialAPI' #step 2
COMMAND bash -c \'
. ${DEPL_TEST_EXEC}/virtenv/bin/activate\; #step 3
pip install ${DEPL_TEST_EXEC}/mySpecialAPI/ #step 4
')
如果步骤 1 或步骤 2 失败,则不执行后续步骤。但我不能在不同的命令部分下有步骤 3 和 4,因为步骤 3 激活虚拟环境,步骤 4 将包安装到此环境中。
目前,如果第 3 步失败,则第 4 步会尝试执行,我不喜欢这样做。有没有办法处理这个问题?
解决方案
推荐阅读
- c# - UWP C#动态添加按钮并在StackPanel上组织
- java - 为什么在 AbstractQueuedSynchronize enq(final Node node) 方法中有一个 for(;;)
- python - 如果选中或悬停,则更改按钮的颜色
- java - method.invoke 是否在 java 中创建一个新线程?
- c# - 如何从 MySql 查询中提取日期的月份名称
- assembly - x64 汇编器 jmp 使用偏移量表
- java - 如何在 Windows 中运行 Java 应用程序,例如防病毒软件如何始终运行
- google-chrome - KENDO UI ANGULAR 检查 CHROME 中 POPUP 元素的样式
- javascript - 在 Fabric.js 中将对象拖动限制设置为圆形
- java - 如何使用 IO 资源从源中装饰 Stream 实例