Hallo zusammen,
vielleicht ein triviales Problem, allerdings bereitet es uns momentan einiges an Kopfzerbrechen:
Beim Portieren unserer Software nach OS X soll ein Universal Binary erzeugt werden (für Intel und PPC), das Projektfile wurde daher für macx um folgende CONFIGS erweitert:
CONFIGS += i386 ppc
Unsere Software ist allerdings auf verschiedene DEFINES je nach Architektur angewiesen (z.B. altivec code im Fall PPC).
Nun ist es möglich im Projektfall dies weiter zu spezifizieren:
macx {
ppc {
DEFINES += ...
}
i386 {
DEFINES += ...
}
}
Da ja aber beide CONFIGS true sind wirken sich die jeweiligen Blöcke natürlich auf das gesamte entstehende XCode Projekt aus.
Wie handhabt Ihr solche Fälle (in denen die DEFINES für die verschiedenen Zielplattformen eines XCode-Projekts unterschiedlich sein müssen)?
Eine andere Möglichkeit, die uns vorschwebt wäre das auswerten der Build-In Compiler DEFINES, wie z.B. __i386__, allerdings behebt dies nicht die Problematik unterschiedlicher aufrufe des Compilers, z.B. bei unterschiedlichen CFLAGS.
Ich wäre für jede Idee dankbar.
Viele Grüße
Markus
Probleme mit Universal Binaries unter OS X
Ich hab mal schnell einen Blick in "mkspecs/macx-xcode/qmake.conf" geworfen. Kannst du nicht einfach
in der pro-file neu setzen (oder mit "+=" ergänzen)?
BTW: Die allgemeine Vorgehensweise in einem XCode-Projekt ist hier
http://developer.apple.com/legacy/mac/l ... binary.pdf
dokumentiert. Im Abschnitt "Architecture-Specific Options" ist dort auch die Sache mit den Flags beschrieben. Aber das wird hier vermutlich nicht weiterhelfen, weil qmake vermutlich die Einstellungen wieder überschreibt..
hth..
Code: Alles auswählen
QMAKE_CFLAGS_PPC_64 =
QMAKE_CFLAGS_X86_64 =
QMAKE_CFLAGS_PPC =
QMAKE_CFLAGS_X86 =BTW: Die allgemeine Vorgehensweise in einem XCode-Projekt ist hier
http://developer.apple.com/legacy/mac/l ... binary.pdf
dokumentiert. Im Abschnitt "Architecture-Specific Options" ist dort auch die Sache mit den Flags beschrieben. Aber das wird hier vermutlich nicht weiterhelfen, weil qmake vermutlich die Einstellungen wieder überschreibt..
hth..