blob: bad3f6c18322a88e2943621c0ad3c511b2f1f065 [file] [log] [blame]
#!/usr/bin/python
import sys
import os
import os.path
import shutil
if len(sys.argv) != 3:
print('Usage: ' + sys.argv[0] + ' <kotlin_version> <input_dir>')
sys.exit(0)
kotlinVersion = sys.argv[1]
inputDir = sys.argv[2]
print('Repacking bundles for Kotlin/Native version ' + kotlinVersion + ' from ' + inputDir)
os.chdir(inputDir)
bundles = [f for f in os.listdir('.')
if f.startswith('kotlin-native-prebuilt-') and (f.endswith('.tar.gz') or f.endswith('.zip')) and os.path.isfile(f)]
print('Found ' + str(len(bundles)) + ' bundle files to repack: ' + ', '.join(bundles))
for bundle in bundles:
print('')
print('Unpacking ' + bundle)
unpackCommand = 'unzip -qq' if bundle.endswith('.zip') else 'tar -xzf'
os.system(unpackCommand + ' ' + bundle)
extractedDir = bundle.replace('.tar.gz', '').replace('.zip', '')
renamedDir = extractedDir.replace('-prebuilt-', '-')
print('Renaming ' + extractedDir + ' to ' + renamedDir)
os.rename(extractedDir, renamedDir)
repackedBundle = renamedDir + ('.zip' if bundle.endswith('.zip') else '.tar.gz')
print('Packing ' + repackedBundle)
packCommand = 'zip -qq -r' if bundle.endswith('.zip') else 'COPYFILE_DISABLE=true tar -czf'
os.system(packCommand + ' ' + repackedBundle + ' ' + renamedDir)
shutil.rmtree(renamedDir)
print('Calculating SHA256')
shaCommand = 'shasum -a 256'
os.system(shaCommand + ' ' + repackedBundle + ' > ' + repackedBundle + '.sha256')
print('')
print('Done.')