Loading build/gn_processor.py +108 −112 Original line number Diff line number Diff line Loading @@ -514,43 +514,11 @@ def find_common_attrs(config_attributes): return common_attrs def write_mozbuild( topsrcdir, srcdir, non_unified_sources, gn_configs, mozilla_flags, write_mozbuild_variables, ): all_mozbuild_results = [] for gn_config in gn_configs: mozbuild_attrs = process_gn_config( gn_config, topsrcdir, srcdir, non_unified_sources, gn_config["sandbox_vars"], mozilla_flags, ) all_mozbuild_results.append(mozbuild_attrs) # Translate {config -> {dirs -> build info}} into # {dirs -> [(config, build_info)]} configs_by_dir = defaultdict(list) for config_attrs in all_mozbuild_results: mozbuild_args = config_attrs["mozbuild_args"] dirs = config_attrs["dirs"] for d, build_data in dirs.items(): configs_by_dir[d].append((mozbuild_args, build_data)) mozbuilds = set() for relsrcdir, configs in sorted(configs_by_dir.items()): def write_mozbuild(topsrcdir, write_mozbuild_variables, relsrcdir, configs): target_srcdir = mozpath.join(topsrcdir, relsrcdir) mkdir(target_srcdir) target_mozbuild = mozpath.join(target_srcdir, "moz.build") mozbuilds.add(target_mozbuild) with open(target_mozbuild, "w") as fh: mb = MozbuildWriter(fh) mb.write(license_header) Loading @@ -571,16 +539,11 @@ def write_mozbuild( except KeyError: pass try: if ( relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBDRM_HANDLING"] ): if relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBDRM_HANDLING"]: mb.write('CXXFLAGS += CONFIG["MOZ_LIBDRM_CFLAGS"]\n') mb.write('if not CONFIG["MOZ_SYSTEM_LIBDRM"]:\n') mb.write(' LOCAL_INCLUDES += [ "/third_party/drm/drm/",\n') mb.write( ' "/third_party/drm/drm/include/",\n' ) mb.write(' "/third_party/drm/drm/include/",\n') mb.write( ' "/third_party/drm/drm/include/libdrm" ]\n' ) Loading @@ -597,20 +560,14 @@ def write_mozbuild( except KeyError: pass try: if ( relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBVPX_HANDLING"] ): if relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBVPX_HANDLING"]: mb.write('if not CONFIG["MOZ_SYSTEM_LIBVPX"]:\n') mb.write(' LOCAL_INCLUDES += [ "/media/libvpx/libvpx/" ]\n') mb.write(' CXXFLAGS += CONFIG["MOZ_LIBVPX_CFLAGS"]\n') except KeyError: pass try: if ( relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_DAV1D_HANDLING"] ): if relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_DAV1D_HANDLING"]: mb.write('if CONFIG["MOZ_SYSTEM_AV1"]:\n') mb.write(' CXXFLAGS += CONFIG["MOZ_SYSTEM_DAV1D_CFLAGS"]\n') mb.write(' CXXFLAGS += CONFIG["MOZ_SYSTEM_LIBAOM_CFLAGS"]\n') Loading Loading @@ -656,6 +613,45 @@ def write_mozbuild( mb.terminate_condition() mb.finalize() return target_mozbuild def write_mozbuild_files( topsrcdir, srcdir, non_unified_sources, gn_configs, mozilla_flags, write_mozbuild_variables, ): all_mozbuild_results = [] for gn_config in gn_configs: mozbuild_attrs = process_gn_config( gn_config, topsrcdir, srcdir, non_unified_sources, gn_config["sandbox_vars"], mozilla_flags, ) all_mozbuild_results.append(mozbuild_attrs) # Translate {config -> {dirs -> build info}} into # {dirs -> [(config, build_info)]} configs_by_dir = defaultdict(list) for config_attrs in all_mozbuild_results: mozbuild_args = config_attrs["mozbuild_args"] dirs = config_attrs["dirs"] for d, build_data in dirs.items(): configs_by_dir[d].append((mozbuild_args, build_data)) mozbuilds = set() # threading this section did not produce noticeable speed gains for relsrcdir, configs in sorted(configs_by_dir.items()): mozbuilds.add( write_mozbuild(topsrcdir, write_mozbuild_variables, relsrcdir, configs) ) # write the project moz.build file dirs_mozbuild = mozpath.join(srcdir, "moz.build") Loading Loading @@ -847,7 +843,7 @@ def main(): ) print("Writing moz.build files") write_mozbuild( write_mozbuild_files( topsrcdir, topsrcdir / config["build_root_dir"] / config["target_dir"], config["non_unified_sources"], Loading Loading
build/gn_processor.py +108 −112 Original line number Diff line number Diff line Loading @@ -514,43 +514,11 @@ def find_common_attrs(config_attributes): return common_attrs def write_mozbuild( topsrcdir, srcdir, non_unified_sources, gn_configs, mozilla_flags, write_mozbuild_variables, ): all_mozbuild_results = [] for gn_config in gn_configs: mozbuild_attrs = process_gn_config( gn_config, topsrcdir, srcdir, non_unified_sources, gn_config["sandbox_vars"], mozilla_flags, ) all_mozbuild_results.append(mozbuild_attrs) # Translate {config -> {dirs -> build info}} into # {dirs -> [(config, build_info)]} configs_by_dir = defaultdict(list) for config_attrs in all_mozbuild_results: mozbuild_args = config_attrs["mozbuild_args"] dirs = config_attrs["dirs"] for d, build_data in dirs.items(): configs_by_dir[d].append((mozbuild_args, build_data)) mozbuilds = set() for relsrcdir, configs in sorted(configs_by_dir.items()): def write_mozbuild(topsrcdir, write_mozbuild_variables, relsrcdir, configs): target_srcdir = mozpath.join(topsrcdir, relsrcdir) mkdir(target_srcdir) target_mozbuild = mozpath.join(target_srcdir, "moz.build") mozbuilds.add(target_mozbuild) with open(target_mozbuild, "w") as fh: mb = MozbuildWriter(fh) mb.write(license_header) Loading @@ -571,16 +539,11 @@ def write_mozbuild( except KeyError: pass try: if ( relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBDRM_HANDLING"] ): if relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBDRM_HANDLING"]: mb.write('CXXFLAGS += CONFIG["MOZ_LIBDRM_CFLAGS"]\n') mb.write('if not CONFIG["MOZ_SYSTEM_LIBDRM"]:\n') mb.write(' LOCAL_INCLUDES += [ "/third_party/drm/drm/",\n') mb.write( ' "/third_party/drm/drm/include/",\n' ) mb.write(' "/third_party/drm/drm/include/",\n') mb.write( ' "/third_party/drm/drm/include/libdrm" ]\n' ) Loading @@ -597,20 +560,14 @@ def write_mozbuild( except KeyError: pass try: if ( relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBVPX_HANDLING"] ): if relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_LIBVPX_HANDLING"]: mb.write('if not CONFIG["MOZ_SYSTEM_LIBVPX"]:\n') mb.write(' LOCAL_INCLUDES += [ "/media/libvpx/libvpx/" ]\n') mb.write(' CXXFLAGS += CONFIG["MOZ_LIBVPX_CFLAGS"]\n') except KeyError: pass try: if ( relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_DAV1D_HANDLING"] ): if relsrcdir in write_mozbuild_variables["INCLUDE_SYSTEM_DAV1D_HANDLING"]: mb.write('if CONFIG["MOZ_SYSTEM_AV1"]:\n') mb.write(' CXXFLAGS += CONFIG["MOZ_SYSTEM_DAV1D_CFLAGS"]\n') mb.write(' CXXFLAGS += CONFIG["MOZ_SYSTEM_LIBAOM_CFLAGS"]\n') Loading Loading @@ -656,6 +613,45 @@ def write_mozbuild( mb.terminate_condition() mb.finalize() return target_mozbuild def write_mozbuild_files( topsrcdir, srcdir, non_unified_sources, gn_configs, mozilla_flags, write_mozbuild_variables, ): all_mozbuild_results = [] for gn_config in gn_configs: mozbuild_attrs = process_gn_config( gn_config, topsrcdir, srcdir, non_unified_sources, gn_config["sandbox_vars"], mozilla_flags, ) all_mozbuild_results.append(mozbuild_attrs) # Translate {config -> {dirs -> build info}} into # {dirs -> [(config, build_info)]} configs_by_dir = defaultdict(list) for config_attrs in all_mozbuild_results: mozbuild_args = config_attrs["mozbuild_args"] dirs = config_attrs["dirs"] for d, build_data in dirs.items(): configs_by_dir[d].append((mozbuild_args, build_data)) mozbuilds = set() # threading this section did not produce noticeable speed gains for relsrcdir, configs in sorted(configs_by_dir.items()): mozbuilds.add( write_mozbuild(topsrcdir, write_mozbuild_variables, relsrcdir, configs) ) # write the project moz.build file dirs_mozbuild = mozpath.join(srcdir, "moz.build") Loading Loading @@ -847,7 +843,7 @@ def main(): ) print("Writing moz.build files") write_mozbuild( write_mozbuild_files( topsrcdir, topsrcdir / config["build_root_dir"] / config["target_dir"], config["non_unified_sources"], Loading