配置构建阶段的编译源

时间:2011-11-20 09:41:28

标签: iphone objective-c ios xcode ipad

我有一个包含许多目标的项目。 每次我创建一个新目标时,我都会向Compile Sources添加一个特定的类,我正在为该类设置一个编译器标志。如何自动应用此设置?

1 个答案:

答案 0 :(得分:0)

我认为这需要通过直接修改项目文件来完成。换句话说,编写一个将进行更改的脚本。

这是一个向所有目标的文件添加弧标记的简单示例。

#!/bin/sh

set -e

USAGE="$0 <filename> ..."

PROJECTFILE="project.pbxproj"
FILES="$*"
COMPILER_FLAGS="\"-fobjc-arc\"";

if [ "${FILES}" = "" ] ; then
    echo ${USAGE};
    exit 1 ;
fi

if [ ! -f "${PROJECTFILE}" ] ; then
    echo "Cannot find ${PROJECTFILE} - Please run from within the .xcodeproj directory";
    exit 1 ;
fi


cp ${PROJECTFILE} ${PROJECTFILE}.bak
for f in ${FILES}; do
    echo "Adding flags for $f" ; 
    sed -ie "s/\(${f}.*{ *isa *= *PBXBuildFile.*\)};$/\\1 settings = {COMPILER_FLAGS = ${COMPILER_FLAGS}; }; };/g" "${PROJECTFILE}"
done