Обнаружение архитектуры процессора (32-бит / 64-бит) в scons? - PullRequest
4 голосов
/ 29 октября 2008

Существуют ли «стандартные» плагины для определения архитектуры процессора в scons ?

Кстати, этот вопрос уже задавался здесь в более общем виде ... просто интересно, не нашел ли кто-нибудь время для включения этой информации в scons.

Ответы [ 2 ]

6 голосов
/ 04 февраля 2009

Использование i386 зависит от компилятора и не обнаруживает 32-битные арки не x86. Предполагая, что интерпретатор python, используемый scons, запускается на интересующем вас процессоре (не всегда так - подумайте о кросс-компиляции), вы можете просто использовать сам python.

import platform
print platform.machine()
print platform.architecture()

Если вам нужно что-то более сложное, то, возможно, вам придется написать свою собственную функцию конфигурации - но может быть лучше разобраться с этим в вашем коде напрямую.

2 голосов
/ 07 января 2009

Как то так?

env = Environment()
conf = Configure(env)
if conf.CheckDeclaration("__i386__"):
    conf.Define("MY_ARCH", "blahblablah")
env = conf.Finish()
...