2012-12-14 27 views
2

我使用下面的命令:如何从xcodebuild获取构建变量?

xcodebuild -project eagle.xcodeproj -target eagle_test -showBuildSettings

但我需要提取OBJROOT作为外部生成文件的一部分。我怎么得到这个?

+0

该makefile是否作为目标的构建阶段运行? – ThomasW

+0

不,makefile中的目标是发布过程的一部分,因此它构建,运行测试,检查内容等等。我只想在我这么说的时候运行目标(不是每个xcode编译) –

+0

这是一个makefile文件在Unix中'make'? – ThomasW

回答

0

高级别答案:作为生成文件的一部分,运行xcodebuild -project eagle.xcodeproj -target eagle_test -showBuildSettings命令并解析输出值为OBJROOT

+0

这是hacky,但我试图做到这一点: XCODE_BUILD_SETTINGS ='xcodebuild -project eagle.xcodeproj -target eagle_test -showBuildSettings | grep的OBJROOT' OBJROOT ='回声$$ {XCODE_BUILD_SETTINGS:14}' 但是'回声$$ OBJROOT'只是打印'回声$ {XCODE_BUILD_SETTINGS:14}'蜱 –

2

她你走了。很好地解释。

xcodebuild -project eagle.xcodeproj -target eagle_test -showBuildSettings | grep "OBJROOT" | sed 's/[ ]*OBJROOT = //' 
+0

我把它用'OBJROOT =“xcodebuild联编工作 - 项目eagle.xcodeproj -target eagle_test -showBuildSettings | grep OBJROOT |剪切-c15''(单引号是蜱) –

+0

我更新了我的正则表达式你不想要的数据。但你的作品也是如此。 –