我有一个包含多个目标的项目。 每次我创建一个新的目标,我都需要向“Compile Sources”中添加一个特定的类,并为该类设置编译器标志。如何自动应用此设置呢?
我有一个包含多个目标的项目。 每次我创建一个新的目标,我都需要向“Compile Sources”中添加一个特定的类,并为该类设置编译器标志。如何自动应用此设置呢?
我认为这需要直接修改项目文件来完成。换句话说,编写一个脚本来进行更改。
以下是一个简单的示例,为所有目标文件添加弧形标志。
#!/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