Отключение сборки на основе eclipse/cdt -в непрерывную интеграцию

Мне нужно повторно использовать крупный проект C++, который в настоящее время разрабатывается внутри eclipse, с использованием функций управляемой сборки CDT, mingw и cdt (без внешних make-файлов или среды сборки ). Сам проект состоит из множества подпроектов -.

Я хочу интегрировать эту сборку в сервер непрерывной интеграции (jenkins, а именно )и, таким образом, иметь возможность автоматизировать сборку без головы.

До сих пор мне удалось легко проверить проект (от jenkins )и построить его в автономном режиме с использованием eclipse, используя следующую команду:

C:\prog\EclipseCdt\eclipse -nosplash -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import %WORKSPACE%\project1 -import %WORKSPACE%\project2 -import %WORKSPACE%\project3 -build all

Однако этого недостаточно:

  • сборка является асинхронной :предыдущая команда возвращает (она на самом деле разветвляется ), в то время как я ожидаю, что она будет удерживать контекст, пока я не получу результат (, как это было бы с makeв Linux или devenvв Windows)
  • Мне не удалось извлечь журналы сборки (, в идеале они должны быть в файле ):. интегрировать в мою непрерывную информацию,Мне нужно иметь возможность анализировать журналы сборки, чтобы отображать интересную информацию (думать о сломанных файлах)
  • В идеале я хотел бы получить от Eclipse прямой код возврата состояния (), который указывает на прохождение или сбой.

Любая идея, как иметь такое поведение?

Обратите внимание, что:

  • использование альтернативной (внешней )системы сборки в настоящее время не вариант (Я должен сохранить сборку, управляемую cdt, у нее много сложной истории)
  • Я уже смотрел на переполнение стека и google и не смог найти способ сделать это, несмотря на кажущуюся простоту моей потребности
  • В настоящее время я использую Windows 7 / mingw 4.5.2 / Eclipse IDE для разработчиков C/C++ Версия :Идентификатор сборки выпуска Indigo :20110615 -0604, но я думаю, что вопрос в платформе x -
9
задан Jabberwocky 8 July 2015 в 11:30
поделиться