2016-01-05 4 views
0

Скажите, что я строю цели A, B и C в одном проекте. В мезоне можно определить зависимости между ними?С помощью meson build можно определить внутрипроектные зависимости?

Например, если граф зависимостей выглядит следующим образом:

A -> C 
B -> C 

Как я мог выразить это с мезона?

ответ

2

Да, можно определить внутрипроектные зависимости. Я нашел this test case на github.com, чтобы продемонстрировать, как это сделать.

Скажем, у меня есть файл meson.build, определяющий две цели.

project('Demonstrate Dependencies', 'cpp') 

subdir('src') 
subdir('proj') 

proj строит библиотеку, которая src будет зависеть. Тогда proj/meson.build будет выглядеть примерно так:

incdirs = include_directories('include') 
proj_lib = static_library('proj', 'proj.c', include_directories : incdirs 

)

proj_dep = declare_dependency(
     include_directories : incdirs 
    , link_with : proj) 

И src/meson.build будет выглядеть примерно так:

exe = executable('proj_exe', 'main.c', dependencies : proj_dep)