@ -543,10 +543,10 @@ int dummy;
# rule store as being wanted in compdb
for for_machine in MachineChoice :
for lang in self . environment . coredata . compilers [ for_machine ] :
rules + = [ " %s %s " % ( rule , ext ) for rule in [ self . get_compiler_rule_name ( lang , for_machine ) ]
for ext in [ ' ' , ' _RSP ' ] ]
rules + = [ " %s %s " % ( rule , ext ) for rule in [ self . get_pch_rule_name ( lang , for_machine ) ]
for ext in [ ' ' , ' _RSP ' ] ]
rules + = [ " %s %s " % ( rule , ext ) for rule in [ self . get_compiler_rule_name ( lang , for_machine ) ]
for ext in [ ' ' , ' _RSP ' ] ]
rules + = [ " %s %s " % ( rule , ext ) for rule in [ self . get_pch_rule_name ( lang , for_machine ) ]
for ext in [ ' ' , ' _RSP ' ] ]
compdb_options = [ ' -x ' ] if mesonlib . version_compare ( self . ninja_version , ' >=1.9 ' ) else [ ]
ninja_compdb = self . ninja_command + [ ' -t ' , ' compdb ' ] + compdb_options + rules
builddir = self . environment . get_build_dir ( )
@ -990,7 +990,7 @@ int dummy;
self . build . get_subproject_dir ( ) ) ,
self . environment . get_build_dir ( ) ,
self . environment . get_log_dir ( ) ] +
( [ ' --use_llvm_cov ' ] if use_llvm_cov else [ ] ) )
( [ ' --use_llvm_cov ' ] if use_llvm_cov else [ ] ) )
def generate_coverage_rules ( self ) :
e = NinjaBuildElement ( self . all_outputs , ' meson-coverage ' , ' CUSTOM_COMMAND ' , ' PHONY ' )
@ -1560,13 +1560,13 @@ int dummy;
self . get_target_dir ( target ) )
else :
target_slashname_workaround_dir = self . get_target_dir ( target )
( rpath_args , target . rpath_dirs_to_remove ) = \
rustc . build_rpath_args ( self . environment ,
self . environment . get_build_dir ( ) ,
target_slashname_workaround_dir ,
self . determine_rpath_dirs ( target ) ,
target . build_rpath ,
target . install_rpath )
rpath_args , target . rpath_dirs_to_remove = (
rustc . build_rpath_args ( self . environment ,
self . environment . get_build_dir ( ) ,
target_slashname_workaround_dir ,
self . determine_rpath_dirs ( target ) ,
target . build_rpath ,
target . install_rpath ) )
# ... but then add rustc's sysroot to account for rustup
# installations
for rpath_arg in rpath_args :
@ -2777,13 +2777,13 @@ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47485'''))
self . get_target_dir ( target ) )
else :
target_slashname_workaround_dir = self . get_target_dir ( target )
( rpath_args , target . rpath_dirs_to_remove ) = \
linker . build_rpath_args ( self . environment ,
self . environment . get_build_dir ( ) ,
target_slashname_workaround_dir ,
self . determine_rpath_dirs ( target ) ,
target . build_rpath ,
target . install_rpath )
( rpath_args , target . rpath_dirs_to_remove ) = (
linker . build_rpath_args ( self . environment ,
self . environment . get_build_dir ( ) ,
target_slashname_workaround_dir ,
self . determine_rpath_dirs ( target ) ,
target . build_rpath ,
target . install_rpath ) )
commands + = rpath_args
# Add libraries generated by custom targets
custom_target_libraries = self . get_custom_target_provided_libraries ( target )
@ -3041,7 +3041,9 @@ def _scan_fortran_file_deps(src: Path, srcdir: Path, dirname: Path, tdeps, compi
# included files
incmatch = incre . match ( line )
if incmatch is not None :
incfile = srcdir / incmatch . group ( 1 )
incfile = src . parent / incmatch . group ( 1 )
# NOTE: src.parent is most general, in particular for CMake subproject with Fortran file
# having an `include 'foo.f'` statement.
if incfile . suffix . lower ( ) [ 1 : ] in compiler . file_suffixes :
mod_files . extend ( _scan_fortran_file_deps ( incfile , srcdir , dirname , tdeps , compiler ) )
# modules