mirror of
https://github.com/google/pebble.git
synced 2025-06-05 01:33:11 +00:00
Import of the watch repository from Pebble
This commit is contained in:
commit
3b92768480
10334 changed files with 2564465 additions and 0 deletions
75
third_party/waf/waf-light/waflib/Tools/asm.py
vendored
Normal file
75
third_party/waf/waf-light/waflib/Tools/asm.py
vendored
Normal file
|
@ -0,0 +1,75 @@
|
|||
#!/usr/bin/env python
|
||||
# encoding: utf-8
|
||||
# Thomas Nagy, 2008-2010 (ita)
|
||||
|
||||
"""
|
||||
Assembly support, used by tools such as gas and nasm
|
||||
|
||||
To declare targets using assembly::
|
||||
|
||||
def configure(conf):
|
||||
conf.load('gcc gas')
|
||||
|
||||
def build(bld):
|
||||
bld(
|
||||
features='c cstlib asm',
|
||||
source = 'test.S',
|
||||
target = 'asmtest')
|
||||
|
||||
bld(
|
||||
features='asm asmprogram',
|
||||
source = 'test.S',
|
||||
target = 'asmtest')
|
||||
|
||||
Support for pure asm programs and libraries should also work::
|
||||
|
||||
def configure(conf):
|
||||
conf.load('nasm')
|
||||
conf.find_program('ld', 'ASLINK')
|
||||
|
||||
def build(bld):
|
||||
bld(
|
||||
features='asm asmprogram',
|
||||
source = 'test.S',
|
||||
target = 'asmtest')
|
||||
"""
|
||||
|
||||
import os, sys
|
||||
from waflib import Task, Utils
|
||||
import waflib.Task
|
||||
from waflib.Tools.ccroot import link_task, stlink_task
|
||||
from waflib.TaskGen import extension, feature
|
||||
|
||||
class asm(Task.Task):
|
||||
"""
|
||||
Compile asm files by gas/nasm/yasm/...
|
||||
"""
|
||||
color = 'BLUE'
|
||||
run_str = '${AS} ${ASFLAGS} ${ASMPATH_ST:INCPATHS} ${AS_SRC_F}${SRC} ${AS_TGT_F}${TGT}'
|
||||
|
||||
@extension('.s', '.S', '.asm', '.ASM', '.spp', '.SPP')
|
||||
def asm_hook(self, node):
|
||||
"""
|
||||
Bind the asm extension to the asm task
|
||||
|
||||
:param node: input file
|
||||
:type node: :py:class:`waflib.Node.Node`
|
||||
"""
|
||||
return self.create_compiled_task('asm', node)
|
||||
|
||||
class asmprogram(link_task):
|
||||
"Link object files into a c program"
|
||||
run_str = '${ASLINK} ${ASLINKFLAGS} ${ASLNK_TGT_F}${TGT} ${ASLNK_SRC_F}${SRC}'
|
||||
ext_out = ['.bin']
|
||||
inst_to = '${BINDIR}'
|
||||
|
||||
class asmshlib(asmprogram):
|
||||
"Link object files into a c shared library"
|
||||
inst_to = '${LIBDIR}'
|
||||
|
||||
class asmstlib(stlink_task):
|
||||
"Link object files into a c static library"
|
||||
pass # do not remove
|
||||
|
||||
def configure(conf):
|
||||
conf.env['ASMPATH_ST'] = '-I%s'
|
Loading…
Add table
Add a link
Reference in a new issue