summaryrefslogtreecommitdiffstats
path: root/third_party/waf/waflib/Tools/nasm.py
blob: 9c51c18de18e5f805865191504be3a482ff115ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2008-2018 (ita)

"""
Nasm tool (asm processing)
"""

import os
import waflib.Tools.asm # leave this
from waflib.TaskGen import feature

@feature('asm')
def apply_nasm_vars(self):
	"""provided for compatibility"""
	self.env.append_value('ASFLAGS', self.to_list(getattr(self, 'nasm_flags', [])))

def configure(conf):
	"""
	Detect nasm/yasm and set the variable *AS*
	"""
	conf.find_program(['nasm', 'yasm'], var='AS')
	conf.env.AS_TGT_F = ['-o']
	conf.env.ASLNK_TGT_F = ['-o']
	conf.load('asm')
	conf.env.ASMPATH_ST = '-I%s' + os.sep
	txt = conf.cmd_and_log(conf.env.AS + ['--version'])
	if 'yasm' in txt.lower():
		conf.env.ASM_NAME = 'yasm'
	else:
		conf.env.ASM_NAME = 'nasm'