Revision 9b5fce21c296410c087628a5c0d7673299fadb85 authored by Alon Zakai on 02 November 2018, 21:59:56 UTC, committed by Alon Zakai on 02 November 2018, 21:59:56 UTC
1 parent af84d8d
Raw File
emlink.py
#!/usr/bin/env python2
# Copyright 2013 The Emscripten Authors.  All rights reserved.
# Emscripten is available under two separate licenses, the MIT license and the
# University of Illinois/NCSA Open Source License.  Both these licenses can be
# found in the LICENSE file.

'''
Fast static linker for emscripten outputs. Specifically this links asm.js modules.

See https://github.com/kripken/emscripten/wiki/Linking
'''

from __future__ import print_function
import sys
from tools import shared
from tools.asm_module import AsmModule

def run():
  try:
    me, main, side, out = sys.argv[:4]
  except:
    print('usage: emlink.py [main module] [side module] [output name]', file=sys.stderr)
    sys.exit(1)

  print('Main module:', main)
  print('Side module:', side)
  print('Output:', out)

  shared.try_delete(out)

  main = AsmModule(main)
  side = AsmModule(side)

  side.relocate_into(main)
  main.write(out)

if __name__ == '__main__':
  run()
back to top