Как добавить '-include global.h' после '-I includeir'?
Я пытаюсь использовать опцию -include препроцессора. Опции препроцессора GCC Я не смог сделать это в моем методе настройки как обычная опция CXXFLAGS
def configure(conf):
conf.load('compiler_cxx')
conf.env.append_value('CXXFLAGS', ['-g', '-include global.h'])
из-за этого добавь это раньше -I
опции. И gcc не смог найти мой заголовок. Как я могу добавить -include global.h
в конце концов -I
опции?
2 ответа
Решение
Решение:
def build(bld):
bld.env.MYFLAGS = ['-include', 'global.h']
from waflib import Task
class cxx(Task.classes['cxx']):
run_str = '${CXX} ${ARCH_ST:ARCH} ${CXXFLAGS}${FRAMEWORKPATH_ST:FRAMEWORKPATH} ${FRAMEWORK_ST:FRAMEWORK}${CPPPATH_ST:INCPATHS} ${MYFLAGS} ${DEFINES_ST:DEFINES}${CXX_SRC_F}${SRC} ${CXX_TGT_F}${TGT}'
Ну, я думаю, что вы можете посмотреть на вафельную книгу § 10.3.2. Вы можете присоединить определенный метод к функции cxx, чтобы добавить опцию '-include' после путей включения.
Другой способ заключается в том, чтобы monkeypatch класс cxx и изменить строку run_str, которая управляет компиляцией.
Третий вариант: спросите в списке рассылки, вы обычно очень быстро получаете ответ ^^