2012-01-31 11 views
9

Ho una configurazione che mi piacerebbe controllare dinamicamente un valore definito dal preprocessore attraverso una variabile di ambiente.preprocessore Xcode in base alla variabile di ambiente

È possibile? se è come faccio a impostare nella tabella di definizione del preprocessore che voglio impostare il valore in base alla variabile di ambiente?

risposta

2

Nella "Build Settings" di un target del progetto, è possibile aggiungere una cosa del genere al campo "preprocessore macro":

DEV_USERNAME="${USER}" 

Naturalmente, la variabile USER può essere sostituito da qualsiasi ambiente variabile disponibile per il sistema di build Xcode. Per ottenere un elenco di questi, è possibile aggiungere uno script di esecuzione alla destinazione e attivare il segno di spunta "Mostra le variabili di ambiente nel registro di build".

È quindi possibile utilizzare la macro del preprocessore DEV_USERNAME nel codice. E se si desidera utilizzarlo come una stringa, è possibile "stringa i" è:

#define xstr(s) str(s) 
#define str(s) #s 

xstr(DEV_USERNAME) 

Questo vi darà il nome utente circondato da doppi apici.

+0

Mi sono imbattuto in qualcosa che potresti trovare interessante (o meno), prendere un bottino su http://stackoverflow.com/a/30396593/734860 ​​ – entonio

+0

Interessante, anzi! Ma forse non in questo caso. – MonsieurDart

+0

Sì, questa domanda è più generale. – entonio