diff --git a/build/unix/build-clang/build-clang.py b/build/unix/build-clang/build-clang.py index 0df4e827955..6f282c1e4c7 100755 --- a/build/unix/build-clang/build-clang.py +++ b/build/unix/build-clang/build-clang.py @@ -14,6 +14,8 @@ import shutil import tarfile import subprocess import platform +import sys +import simplejson def check_run(args): r = subprocess.call(args) @@ -70,6 +72,29 @@ def build_one_stage(env, stage_dir, is_stage_one): build_one_stage_aux(stage_dir, is_stage_one) with_env(env, f) +def build_tooltool_manifest(): + def key_sort(item): + item = item[0] + if item == 'size': + return 0 + if item == 'digest': + return 1 + if item == 'algorithm': + return 3 + return 4 + + basedir = os.path.split(os.path.realpath(sys.argv[0]))[0] + tooltool = basedir + '/tooltool.py' + setup = basedir + '/setup.sh' + manifest = 'clang.manifest' + check_run(['python', tooltool, '-m', 'clang.manifest', 'add', + setup, 'clang.tar.bz2']) + data = simplejson.load(file('clang.manifest')) + data = [{'clang_version' : 'r%s' % llvm_revision }] + data + out = file('clang.manifest','w') + simplejson.dump(data, out, indent=0, item_sort_key=key_sort) + out.write('\n') + isDarwin = platform.system() == "Darwin" def build_one_stage_aux(stage_dir, is_stage_one): @@ -136,3 +161,4 @@ build_one_stage({"CC" : stage1_inst_dir + "/bin/clang %s" % extra_cflags, stage2_dir, False) build_tar_package("tar", "clang.tar.bz2", stage2_dir, "clang") +build_tooltool_manifest() diff --git a/build/unix/build-clang/create-manifest.py b/build/unix/build-clang/create-manifest.py deleted file mode 100755 index b73b7c9a7f4..00000000000 --- a/build/unix/build-clang/create-manifest.py +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/python - -import os -import os.path -import simplejson -import sys -import subprocess -import urllib -import glob - -def check_run(args): - r = subprocess.call(args) - assert r == 0 - -old_files = glob.glob('*.manifest') -for f in old_files: - try: - os.unlink(f) - except: - pass - -basedir = os.path.split(os.path.realpath(sys.argv[0]))[0] -tooltool = basedir + '/tooltool.py' -setup = basedir + '/setup.sh' - -check_run(['python', tooltool, '-m', 'linux32.manifest', 'add', - 'clang-linux32.tar.bz2', setup]) -check_run(['python', tooltool, '-m', 'linux64.manifest', 'add', - 'clang-linux64.tar.bz2', setup]) -check_run(['python', tooltool, '-m', 'darwin.manifest', 'add', - 'clang-darwin.tar.bz2', setup]) - -def key_sort(item): - item = item[0] - if item == 'size': - return 0 - if item == 'digest': - return 1 - if item == 'algorithm': - return 3 - return 4 - -rev = os.path.basename(os.getcwd()).split('-')[1] - -for platform in ['darwin', 'linux32', 'linux64']: - old_name = 'clang-' + platform + '.tar.bz2' - manifest = platform + '.manifest' - data = eval(file(manifest).read()) - new_name = data[1]['digest'] - data[1]['filename'] = 'clang.tar.bz2' - data = [{'clang_version' : 'r%s' % rev }] + data - out = file(manifest,'w') - simplejson.dump(data, out, indent=0, item_sort_key=key_sort) - out.write('\n') - os.rename(old_name, new_name)