@@ -471,14 +471,9 @@ def get_files(self):
471471 def generate_ninja (self , build_dir , libname ):
472472 ensure_sysroot ()
473473 utils .safe_ensure_dirs (build_dir )
474+ self .build_dir = build_dir
474475
475476 cflags = self .get_cflags ()
476- if self .deterministic_paths :
477- source_dir = utils .path_from_root ()
478- relative_source_dir = os .path .relpath (source_dir , build_dir )
479- cflags += [f'-ffile-prefix-map={ source_dir } ={ DETERMINISITIC_PREFIX } ' ,
480- f'-ffile-prefix-map={ relative_source_dir } ={ DETERMINISITIC_PREFIX } ' ,
481- f'-fdebug-compilation-dir={ DETERMINISITIC_PREFIX } ' ]
482477 asflags = get_base_cflags (preprocess = False )
483478 input_files = self .get_files ()
484479 ninja_file = os .path .join (build_dir , 'build.ninja' )
@@ -492,17 +487,11 @@ def build_objects(self, build_dir):
492487 with the `cflags` returned by `self.get_cflags()`.
493488 """
494489 batch_inputs = int (os .environ .get ('EMCC_BATCH_BUILD' , '1' ))
490+ self .build_dir = build_dir
495491 batches = {}
496492 commands = []
497493 objects = set ()
498494 cflags = self .get_cflags ()
499- if self .deterministic_paths :
500- source_dir = utils .path_from_root ()
501- if batch_inputs :
502- relative_source_dir = os .path .relpath (source_dir , build_dir )
503- cflags += [f'-ffile-prefix-map={ relative_source_dir } ={ DETERMINISITIC_PREFIX } ' ]
504- cflags += [f'-ffile-prefix-map={ source_dir } ={ DETERMINISITIC_PREFIX } ' ,
505- f'-fdebug-compilation-dir={ DETERMINISITIC_PREFIX } ' ]
506495 case_insensitive = is_case_insensitive (build_dir )
507496 for src in self .get_files ():
508497 ext = shared .suffix (src )
@@ -611,6 +600,12 @@ def get_cflags(self):
611600 if self .includes :
612601 cflags += ['-I' + utils .path_from_root (i ) for i in self ._inherit_list ('includes' )]
613602
603+ if self .deterministic_paths :
604+ source_dir = utils .path_from_root ()
605+ relative_source_dir = os .path .relpath (source_dir , self .build_dir )
606+ cflags += [f'-ffile-prefix-map={ relative_source_dir } ={ DETERMINISITIC_PREFIX } ' ]
607+ cflags += [f'-ffile-prefix-map={ source_dir } ={ DETERMINISITIC_PREFIX } ' ,
608+ f'-fdebug-compilation-dir={ DETERMINISITIC_PREFIX } ' ]
614609 return cflags
615610
616611 def get_base_name_prefix (self ):
0 commit comments