Tengo un proyecto de Xcode con un gran número de objetivos donde me gustaría incluir un conjunto de configuraciones para las aplicaciones creadas en las configuraciones Ad-hoc y Debug, pero no en la configuración de Release.¿Cómo puedo incluir condicionalmente un archivo basado en la configuración de compilación en Xcode?
Las fases de compilación no parecen permitirse condicionarse a la configuración (obviamente pueden estar condicionadas al objetivo, pero duplicar el número de objetivos en el proyecto lo haría completamente inutilizable).
Eso deja escribir una regla de compilación personalizada. Mi plan es excluir Settings.bundle de todos los objetivos y crear una regla de compilación que lo copie condicionalmente en el paquete del producto, pero los ejemplos aplicables son realmente difíciles de encontrar.
La regla de compilación que he comenzado tiene la configuración del Proceso establecida en "Archivos de origen con nombres que coinciden:" y Settings.bundle como el nombre. La configuración de Uso es "Script personalizado:".
Mi script personalizado es el siguiente (con la salvedad de que mi fiesta de secuencias de comandos está en un nivel culto cargo):
if [${CONFIGURATION} = 'Debug'] then
cp -r ${INPUT_FILE_PATH} ${DERIVED_FILES_DIR}/.
fi
Por último, tengo ${DERIVED_FILES_DIR}/Settings.bundle
aparece como un archivo de salida.
Desde que estoy aquí, debería ser obvio que no está funcionando. Mi primera pregunta es si hay algún lugar en el que pueda ver el resultado de las reglas de compilación como la ejecución para asegurarse de que 1) en realidad se está ejecutando y que 2) no tengo un error de sintaxis estúpido en alguna parte.
Además, ¿cuál es la ubicación correcta (en forma de una variable de entorno) para copiar la salida?
Esto me da errores de sintaxis cuando construyo. La solución de Frank, copiada y pegada, funcionó a la perfección. – Lance
Para ser totalmente justo, la respuesta de este tipo se publicó tres meses antes. – Puppy