MCPcopy
hub / github.com/astral-sh/python-build-standalone / TempdirContext

Class TempdirContext

pythonbuild/buildenv.py:142–262  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

140
141
142class TempdirContext:
143 def __init__(self, td):
144 self.td = pathlib.Path(td)
145
146 self.tools_path = str(self.td / "tools")
147
148 @property
149 def is_isolated(self):
150 return False
151
152 def copy_file(self, source: pathlib.Path, dest_path=None, dest_name=None):
153 if dest_path:
154 dest_dir = self.td / dest_path
155 else:
156 dest_dir = self.td
157
158 dest_dir.mkdir(exist_ok=True)
159
160 dest_name = dest_name or source.name
161 log("copying %s to %s/%s" % (source, dest_dir, dest_name))
162 shutil.copy(source, dest_dir / dest_name)
163
164 def install_toolchain_archive(
165 self, build_dir, package_name, host_platform, version=None
166 ):
167 basename = "%s-%s-%s.tar" % (
168 package_name,
169 version or DOWNLOADS[package_name]["version"],
170 host_platform,
171 )
172
173 p = build_dir / basename
174 dest_path = self.td / "tools"
175 log("extracting %s to %s" % (p, dest_path))
176 extract_tar_to_directory(p, dest_path)
177
178 def install_artifact_archive(
179 self, build_dir, package_name, target_triple, build_options
180 ):
181 entry = DOWNLOADS[package_name]
182 basename = "%s-%s-%s-%s.tar" % (
183 package_name,
184 entry["version"],
185 target_triple,
186 build_options,
187 )
188
189 p = build_dir / basename
190 dest_path = self.td / "tools"
191 log("extracting %s to %s" % (p, dest_path))
192 extract_tar_to_directory(p, dest_path)
193
194 def install_toolchain(
195 self,
196 build_dir,
197 platform,
198 target_triple,
199 binutils=False,

Callers 1

build_environmentFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected