qmake: сгенерировать, включить другой Makefile в Makefile

Есть ли способ указать qmake добавить в Makefile директиву include для включения другого Makefile.

Мне нужно в начале сгенерированного Makefile добавить одну строку:

включить custom.inc

Может есть просто способ вывода текста в макфайлы из qmake но я не нашел.


person goki    schedule 12.10.2012    source источник


Ответы (3)


Вы можете использовать недокументированную переменную QMAKE_EXTRA_INCLUDES, например

QMAKE_EXTRA_INCLUDES += /path/to/your/file.mk

person alexleutgoeb    schedule 15.04.2017

вы можете определить новую цель в файле make, а затем указать, что делает эта цель:

mytarget.target = .buildfile
mytarget.commands = make -f AnotherMakeFile
QMAKE_EXTRA_TARGETS += mytarget
PRE_TARGETDEPS += .buildfile

последние 2 утверждения добавляют ваш целевой .buildfile в Makefile и mytarget в процесс компиляции Qt

здесь вы можете получить дополнительную информацию: http://qt-project.org/doc/qt-4.8/qmake-environment-reference.html

person Alberto    schedule 12.10.2012
comment
Мне это не помогает. Я не хочу выполнять еще один Makefile, но все, что мне нужно, это включить Makefile, который определяет определенные переменные. - person goki; 12.10.2012
comment
это был пример. Если вы используете оболочку bash для включения другого make-файла, вы можете использовать обе команды: source OtherMakeFile или: . OtherMakeFile вместо команды make -f AnotherMakeFile... - person Alberto; 15.10.2012

Я не нашел способа включить Makefile, но у меня была аналогичная проблема, когда я хотел, чтобы один файл содержал общий набор переменных сборки. Решение, которое я придумал, состояло в том, чтобы использовать команду QMake include(filename.pro) (см. and-control-flow" rel="nofollow">справочная страница QMake). Это приводит к тому, что QMake включает другой файл проекта. В моем случае это содержало все общие настройки.

person jwernerny    schedule 15.10.2012