def extract_ar(archive, dst, *kwargs):
if sys.version_info[0] < 3 and archive.endswith('.xz'):
with contextlib.closing(lzma.LZMAFile(archive)) as xz:
with tarfile.open(fileobj=xz, *kwargs) as f:
f.extractall(dst)
elif archive.endswith('.zip'):
with zipfile.ZipFile(archive,'r') as f:
f.extractall(dst)
elif tarfile.is_tarfile(archive):
if USE_CMAKE_TAR:
cmd([which('cmake'), '-E', 'tar', 'xzf', os.path.abspath(archive)], cwd=dst)
else:
tarfile.open(archive, *kwargs).extractall(dst)
else:
# Treat as a single source file
d = os.path.join(dst, 'header')
mkdir(d)
copy_to(archive, d)
评论列表
文章目录