Можно ли форсировать boost-build, добавив в основной проект подпроект include-path?

Я сделал файл BJAM для подпроекта. Этот подпроект содержит несколько источников и заголовков.
Результатом построения является статическая библиотека. Я хочу использовать этот подпроект из другого проекта. Есть ли способ избежать указания пути к заголовкам подпроекта явно?

Например:

# Jamfile for sub-library
project sublib
: requirements <include>../headers/include
: source-location ../ ;

lib sublib : [ glob src/*.cpp ] : <link>static ;

Я хочу, чтобы boost-build автоматически добавил «../headers/include» из вышеперечисленного в следующий jam-файл. Но сейчас мне нужно указать это явно

# Jamfile for my root project
use-project /sublib  : path_to_sublib/sublib-folder ;

project rootproject
: requirements <include>root_project_headers/
<include>path_to_sublib/headers/include/ # explicit declaration
<library>//sublib
<define>_VARIADIC_MAX=10
: source-location ../../ ;

exe root-executable : [ glob src/*.cpp ] ;

Является ли это возможным? Эти джем-файлы здесь упрощены от моих оригинальных. И эти файлы работают для меня.

Постскриптум Я нашел свойство требований использования в документации, но не нашел способа заставить его работать. Я перепробовал все возможные варианты.

2

Решение

Подпроект Jamfile

 lib subproj
: subproj.cpp
: <include>.
<link>static
:
: <include>.
;

Проект Jamfile

exe proj
: <source files>
/subproj//subproj
;

работает для меня.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]