diff options
-rwxr-xr-x | emld | 60 | ||||
-rw-r--r-- | tools/shared.py | 7 |
2 files changed, 0 insertions, 67 deletions
@@ -1,60 +0,0 @@ -#!/usr/bin/env python - -''' -emld - linker helper script -=========================== - -This script acts as a frontend replacement for the ld linker. See emcc. - -We could use the compiler code for this, but here we want to be careful to use all the linker flags we have been passed, sending them to ld. -''' - -import os, subprocess, sys -from tools import shared - -DEBUG = os.environ.get('EMCC_DEBUG') - -if DEBUG: - print >> sys.stderr, 'emld:', sys.argv - -ALLOWED_LINK_ARGS = ['-f', '-help', '-o', '-print-after', '-print-after-all', '-print-before', - '-print-before-all', '-time-passes', '-v', '-verify-dom-info', '-version' ] -TWO_PART_DISALLOWED_LINK_ARGS = ['-L'] # Ignore thingsl like |-L .| - -# Check for specified target -target = None -for i in range(len(sys.argv)-1): - if sys.argv[i].startswith('-o='): - raise Exception('Invalid syntax: do not use -o=X, use -o X') - - if sys.argv[i] == '-o': - target = sys.argv[i+1] - sys.argv = sys.argv[:i] + sys.argv[i+2:] - break - -call = shared.LLVM_LD -newargs = ['-disable-opt'] -i = 0 -while i < len(sys.argv)-1: - i += 1 - arg = sys.argv[i] - if arg.startswith('-'): - prefix = arg.split('=')[0] - if prefix in ALLOWED_LINK_ARGS: - newargs.append(arg) - if arg in TWO_PART_DISALLOWED_LINK_ARGS: - i += 1 - elif arg.endswith('.so'): - continue # .so's do not exist yet, in many cases - else: - # not option, so just append - newargs.append(arg) -if target: - actual_target = target - if target.endswith('.js'): - actual_target = unsuffixed(target) + '.bc' - newargs.append('-o=' + actual_target) - -if DEBUG: print >> sys.stderr, "emld running:", call, ' '.join(newargs) -subprocess.call([call] + newargs) - diff --git a/tools/shared.py b/tools/shared.py index 52b47ef6..69343cc2 100644 --- a/tools/shared.py +++ b/tools/shared.py @@ -121,7 +121,6 @@ NAMESPACER = path_from_root('tools', 'namespacer.py') EMCC = path_from_root('emcc') EMXX = path_from_root('em++') EMAR = path_from_root('emar') -EMLD = path_from_root('emld') EMRANLIB = path_from_root('emranlib') EMLIBTOOL = path_from_root('emlibtool') EMCONFIG = path_from_root('em-config') @@ -598,12 +597,6 @@ set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)''' % { 'winfix': '' if not WINDOWS e shutil.move(filename + '.o', filename + '.o.pre') output = Popen([LLVM_OPT, filename + '.o.pre'] + Building.LLVM_OPT_OPTS + ['-o=' + filename + '.o'], stdout=PIPE).communicate()[0] assert os.path.exists(filename + '.o'), 'Failed to run llvm optimizations: ' + output - #if Building.LLVM_OPTS == 2: - # print 'Unsafe LD!' - # shutil.move(filename + '.o', filename + '.o.pre') - # output = Popen([LLVM_LD, filename + '.o.pre', '-o=' + filename + '.tmp'], stdout=PIPE).communicate()[0] - # assert os.path.exists(filename + '.tmp.bc'), 'Failed to run llvm optimizations: ' + output - # shutil.move(filename + '.tmp.bc', filename + '.o') @staticmethod def llvm_dis(input_filename, output_filename=None): |