Russian Qt Forum

Qt => Qt-инструментарий => Тема начата: Вудруф от Февраль 01, 2010, 12:51



Название: qmake и проекты не на Qt
Отправлено: Вудруф от Февраль 01, 2010, 12:51
Есть ли возможность в pro-файлах не генерировать makefile, а всегда выполнять уже имеющийся?


Название: Re: qmake и проекты не на Qt
Отправлено: ecspertiza от Февраль 01, 2010, 12:54
если я неошибаюсь, для этого ненужно выполнять qmake ,а сразу выполнять make.


Название: Re: qmake и проекты не на Qt
Отправлено: BRE от Февраль 01, 2010, 12:56
qmake генерирует Makefile под конкретную машину, учитывая ее архитектуру, пути до библиотек и т.д.
На другой машине все это может быть другим и проект попросту не соберется.
А в чем проблема, откуда это желание?


Название: Re: qmake и проекты не на Qt
Отправлено: Вудруф от Февраль 01, 2010, 13:20
Хмм, возможно, не с той стороны зашёл.
Хочу перегенерировать один заголовочный файл перед каждой сборкой, чтобы прописать туда текущую ревизию из репозитария.
Если бы в момент сборки qt-проекта я мог выполнить внешний код (скрипт/makefile/что угодно), то всё было бы зашибись. Но я нашёл только команду system в qmake, а она не выполняется, когда мы делаем make. Что логично.
Вот и подумал о том, что если бы мы могли прописать
TEMPLATE = SUBDIRS
CONFIG = ORDERED
и первой папкой указать подпроект, в котором не нужно пересобирать makefile, а использовать готовый, то я бы решил поставленную задачу.


Название: Re: qmake и проекты не на Qt
Отправлено: SABROG от Февраль 01, 2010, 13:39
только команду system в qmake, а она не выполняется, когда мы делаем make. Что логично.

Плохо искал
Код:
mytarget.commands = @echo Hello, world


Название: Re: qmake и проекты не на Qt
Отправлено: Вудруф от Февраль 01, 2010, 14:30
Да, вот это помогло:
regenerate.commands = regenerate
QMAKE_EXTRA_TARGETS += regenerate

PRE_TARGETDEPS = regenerate

Спасибо!


Название: Re: qmake и проекты не на Qt
Отправлено: SASA от Февраль 01, 2010, 15:46
Код:
mytarget.commands = @echo Hello, world

Здорово.

Я пишу скрипты, в которых вызывается qmake,make,прочее.


Название: Re: qmake и проекты не на Qt
Отправлено: SABROG от Февраль 01, 2010, 16:01
Код:
mytarget.commands = @echo Hello, world

Здорово.

Я пишу скрипты, в которых вызывается qmake,make,прочее.

Это ирония или ты действительно этим занимаешься o.O ?


Название: Re: qmake и проекты не на Qt
Отправлено: SASA от Февраль 02, 2010, 11:41
Цитировать
Это ирония или ты действительно этим занимаешься o.O ?

Ну да. Под каждую платформу написан батничек. Он делает много всяких вещей (в том числе прописывает номер сборки в h-файл), поддерживает несколько параметров, складывет ошибки в лог файл.
С удавольствием послушаю альтернативы. Это не юмор.


Название: Re: qmake и проекты не на Qt
Отправлено: Akaiten от Февраль 02, 2010, 15:32
Ну да. Под каждую платформу написан батничек. Он делает много всяких вещей (в том числе прописывает номер сборки в h-файл), поддерживает несколько параметров, складывет ошибки в лог файл.

интересно, а подробнее?


Название: Re: qmake и проекты не на Qt
Отправлено: SASA от Февраль 03, 2010, 11:05
интересно, а подробнее?

О чем вы хотите узнать?

В общих чертах я оисал. Подробнее - это скрипт страници на две :), который вызывает другие скрипты  :)
Для чего нужен этот скрипт. Человек отвечающий за сборку запускает его и через дцать минут получает готовый дистрибутив.
Если интересно, могу расписать структуру нашего проекта и систему сборки. Но это уже отдельная тема.