@@ -1416,7 +1416,7 @@ void generate_cmake(const char *path, const parser::Project *parent_project) {
14161416 });
14171417 };
14181418
1419- auto link_libraries = [&](const parser::ConditionVector &cargs, const std::string &scope) {
1419+ auto link_cmd = [&](const char *command, const parser::ConditionVector &cargs, const std::string &scope) {
14201420 gen.handle_condition (cargs, [&](const std::string &, const std::vector<std::string> &args) {
14211421 std::vector<std::string> targs;
14221422 for (const std::string &arg : args) {
@@ -1432,7 +1432,7 @@ void generate_cmake(const char *path, const parser::Project *parent_project) {
14321432 targs.push_back (arg);
14331433 }
14341434 }
1435- cmd (" target_link_libraries " )(target.name , scope, targs);
1435+ cmd (command )(target.name , scope, targs);
14361436 });
14371437 };
14381438
@@ -1452,14 +1452,16 @@ void generate_cmake(const char *path, const parser::Project *parent_project) {
14521452 target_cmd (" target_link_directories" , t.link_directories , target_scope);
14531453 target_cmd (" target_link_directories" , t.private_link_directories , " PRIVATE" );
14541454
1455- link_libraries ( t.link_libraries , target_scope);
1456- link_libraries ( t.private_link_libraries , " PRIVATE" );
1455+ link_cmd ( " target_link_libraries " , t.link_libraries , target_scope);
1456+ link_cmd ( " target_link_libraries " , t.private_link_libraries , " PRIVATE" );
14571457
14581458 target_cmd (" target_link_options" , t.link_options , target_scope);
14591459 target_cmd (" target_link_options" , t.private_link_options , " PRIVATE" );
14601460
14611461 target_cmd (" target_precompile_headers" , t.precompile_headers , target_scope);
14621462 target_cmd (" target_precompile_headers" , t.private_precompile_headers , " PRIVATE" );
1463+
1464+ link_cmd (" add_dependencies" , t.dependencies , " " );
14631465 };
14641466
14651467 if (tmplate != nullptr ) {
0 commit comments