crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

Ponter
  опции профиля:
сообщение 13.11.2012, 12:48
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 11
Регистрация: 4.3.2010
Пользователь №: 1504

Спасибо сказали: 0 раз(а)




Репутация:   0  


Всем привет. Нужно мне на сервер установить ОС, меркуриал и QT. Далее компилить все исходники меркуриала по таймеру или при внесении изменений. Желательно даже не все проекты.
Есть какие-либо варианты решения этой задачи? Можно используя сторонее ПО.

*компилить все исходники моих проектов из меркуриала по таймеру или при внесении изменений.
Имеется в виду, взять из меркуриала нужные проекты и компилить
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов (1 - 5)
Iron Bug
  опции профиля:
сообщение 13.11.2012, 12:53
Сообщение #2


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


дык, под линём обычная периодическая задача в кроне. ставится задача, прописываются команды. а вот проверку всего этого дела на автомате сделать трудно будет. потому что вывод компиляции довольно обширен и разбирать его сложно. можно что-то там регескпами фильтровать, но геморройно это очень.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 13.11.2012, 14:41
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


это, вроде, называют - "ферма сборки". У тролей что-то такое было, для git-а (вроде :) )
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 13.11.2012, 14:52
Сообщение #4


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Ничего не надо регескпами фильтровать. Все мейки возвращают результат успещно отработал, или нет.

Вначале посавь почтовый сервер, или полноценный (если есть желание и умение), или можно использовать ssmtp (вот статейка http://welinux.ru/post/4943/)
Дальше скрипт пиши. А проверка примерно так:
make >build-log.txt 2>&1 || mpack -s "Build error." -a build-log.txt pupkin@mail.ru
В случае ошибки пришлет лог сборки на pupkin@mail.ru
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 13.11.2012, 16:54
Сообщение #5


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


дык, там не только мейк, а ещё конфиги придётся запускать и, возможно, что-то ещё. потому что чистый сорц с сервера содержит самый минимум конфигурации, только чтобы автотулзы запустились как следует. и все Makefile'ы нужно сначала генерить. впрочем, мейк без конфигов не запустится и в итоге всё равно ошибку вернёт. так что можно и так сделать, только мейк проверять.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 13.11.2012, 17:22
Сообщение #6


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Цитата(Iron Bug @ 13.11.2012, 17:54) *
дык, там не только мейк, а ещё конфиги придётся запускать и, возможно, что-то ещё. потому что чистый сорц с сервера содержит самый минимум конфигурации, только чтобы автотулзы запустились как следует. и все Makefile'ы нужно сначала генерить. впрочем, мейк без конфигов не запустится и в итоге всё равно ошибку вернёт. так что можно и так сделать, только мейк проверять.


Это была только идея, а так можно написать и скрипт
#!/bin/bash

function error(){
   mpack -s "Build error." -a build-log.txt pupkin@mail.ru
   exit 1;
}

if [ -f "./configure"]; then
   ./configure >build-log.txt 2>&1  || error
fi

f [ -f "./*.pro"]; then
   qmake . >build-log.txt 2>&1  || error
fi

if [ -f "./CMakeLists.txt"]; then
   cmake . >build-log.txt 2>&1  || error
fi

make . >build-log.txt 2>&1  || error

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 14.7.2025, 11:44