Eclipse CDT и CMake + Ninja - правильная организация проекта - PullRequest
0 голосов
/ 30 апреля 2019

У меня есть статическая библиотека libXY и программа exeA, использующая ее. Я не могу найти правильную настройку проекта, которая позволяет мне использовать ниндзя из Eclipse CDT для сборки только того, что нужно для сборки.

До сих пор у меня был один проект с файлами сборки ниндзя, созданными cmake , которые определяли несколько целей, которые идеально подходили для сборки из командной строки:

  • построить все, если что-то изменилось (он же ninja all)
  • build libXY, если какие-либо исходные файлы были изменены (aka ninja libXY)
  • сборка libXY, если какие-либо исходные файлы были изменены, и сборка exeA, если какой-либо исходный файл изменился, и ссылка (aka ninja exeA)

Я импортировал проект (созданный с помощью cmake Eclipse CDT / Ninja Generator) в Eclipse CDT, но там я смог собрать только все (ninja all). Мне не удалось заставить Ctrl-B построить только библиотеку и нужную цель, я не смог определить цели в Eclipse.

В соответствии с планом B я создал установку, в которой libXY и exeA являются независимыми проектами. Я не могу определить зависимость от exeA до libXY, чтобы библиотека создавалась автоматически, если какой-либо из ее исходных файлов изменился.

Помощь! Какова правильная архитектура проекта?

...