diff options
Diffstat (limited to 'waflib/Tools/irixcc.py')
-rw-r--r-- | waflib/Tools/irixcc.py | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/waflib/Tools/irixcc.py b/waflib/Tools/irixcc.py new file mode 100644 index 00000000..be90eee0 --- /dev/null +++ b/waflib/Tools/irixcc.py @@ -0,0 +1,62 @@ +#! /usr/bin/env python +# imported from samba + +""" +compiler definition for irix/MIPSpro cc compiler +based on suncc.py from waf +""" + +import os +from waflib import Utils +from waflib.Tools import ccroot, ar +from waflib.Configure import conf + +@conf +def find_irixcc(conf): + v = conf.env + cc = None + if v['CC']: cc = v['CC'] + elif 'CC' in conf.environ: cc = conf.environ['CC'] + if not cc: cc = conf.find_program('cc', var='CC') + if not cc: conf.fatal('irixcc was not found') + + try: + conf.cmd_and_log(cc + ['-version']) + except Exception: + conf.fatal('%r -version could not be executed' % cc) + + v['CC'] = cc + v['CC_NAME'] = 'irix' + +@conf +def irixcc_common_flags(conf): + v = conf.env + + v['CC_SRC_F'] = '' + v['CC_TGT_F'] = ['-c', '-o'] + v['CPPPATH_ST'] = '-I%s' + v['DEFINES_ST'] = '-D%s' + + # linker + if not v['LINK_CC']: v['LINK_CC'] = v['CC'] + v['CCLNK_SRC_F'] = '' + v['CCLNK_TGT_F'] = ['-o'] + + v['LIB_ST'] = '-l%s' # template for adding libs + v['LIBPATH_ST'] = '-L%s' # template for adding libpaths + v['STLIB_ST'] = '-l%s' + v['STLIBPATH_ST'] = '-L%s' + + v['cprogram_PATTERN'] = '%s' + v['cshlib_PATTERN'] = 'lib%s.so' + v['cstlib_PATTERN'] = 'lib%s.a' + +def configure(conf): + conf.find_irixcc() + conf.find_cpp() + conf.find_ar() + conf.irixcc_common_flags() + conf.cc_load_tools() + conf.cc_add_flags() + conf.link_add_flags() + |