bs.append(system_bootstrappers[d][v](config, offline, assume_yes)) # We need to run the toolchain bootstrapper for the target, not the # build because we might be cross-compiling if toolchains: d, v = target # We don't require a toolchain bootstrapper when not # cross-compiling, and when cross-compiling we sometimes rely on # the system to provide it. For example, when cross-compiling to # Linux-ARM or to UWP. if d in toolchain_bootstrappers: if v not in toolchain_bootstrappers[d]: v = None bs.append(toolchain_bootstrappers[d][v](config, offline, assume_yes)) # Build the build-tools after all other bootstrappers if build_tools: bs.append(BuildTools(config, offline)) return bs from cerbero.bootstrap import linux, windows, android, osx, ios linux.register_all() windows.register_all() android.register_all() osx.register_all() ios.register_all()
# both for the target host and the build one. For instance, when # bootstraping to cross-compile for windows we also need to bootstrap # the build host. target = (target_distro, target_distro_version) build = (distro, distro_version) if target == build: blist = [target] else: blist = [target, build] for d, v in blist: if d not in bootstrappers: raise FatalError(_("No bootstrapper for the distro %s" % d)) if v not in bootstrappers[d]: # Be tolerant with the distro version m.warning(_("No bootstrapper for the distro version %s" % v)) v = None bs.insert(0, bootstrappers[d][v](config)) return bs from cerbero.bootstrap import linux, windows, android, osx, ios linux.register_all() windows.register_all() android.register_all() osx.register_all() ios.register_all()