mirror of
https://gitlab.com/ita1024/waf.git
synced 2024-11-11 12:49:06 +01:00
Miscellaneous platform support
This commit is contained in:
parent
eefb67755e
commit
d1f7f7c78d
@ -682,3 +682,19 @@ def read_object(self, obj):
|
|||||||
if not isinstance(obj, self.path.__class__):
|
if not isinstance(obj, self.path.__class__):
|
||||||
obj = self.path.find_resource(obj)
|
obj = self.path.find_resource(obj)
|
||||||
return self(features='fake_obj', source=obj, name=obj.name)
|
return self(features='fake_obj', source=obj, name=obj.name)
|
||||||
|
|
||||||
|
@feature('cxxprogram', 'cprogram')
|
||||||
|
@after_method('apply_link', 'process_use')
|
||||||
|
def set_full_paths_hpux(self):
|
||||||
|
if self.env.DEST_OS != 'hp-ux':
|
||||||
|
return
|
||||||
|
base = self.bld.bldnode.abspath()
|
||||||
|
for var in ['LIBPATH', 'STLIBPATH']:
|
||||||
|
lst = []
|
||||||
|
for x in self.env[var]:
|
||||||
|
if x.startswith('/'):
|
||||||
|
lst.append(x)
|
||||||
|
else:
|
||||||
|
lst.append(os.path.normpath(os.path.join(base, x)))
|
||||||
|
self.env[var] = lst
|
||||||
|
|
||||||
|
@ -44,6 +44,7 @@ c_compiler = {
|
|||||||
'sunos': ['suncc', 'gcc'],
|
'sunos': ['suncc', 'gcc'],
|
||||||
'irix': ['gcc', 'irixcc'],
|
'irix': ['gcc', 'irixcc'],
|
||||||
'hpux': ['gcc'],
|
'hpux': ['gcc'],
|
||||||
|
'osf1V': ['gcc'],
|
||||||
'gnu': ['gcc', 'clang'],
|
'gnu': ['gcc', 'clang'],
|
||||||
'java': ['gcc', 'msvc', 'clang', 'icc'],
|
'java': ['gcc', 'msvc', 'clang', 'icc'],
|
||||||
'default':['gcc', 'clang'],
|
'default':['gcc', 'clang'],
|
||||||
|
@ -45,6 +45,7 @@ cxx_compiler = {
|
|||||||
'sunos': ['sunc++', 'g++'],
|
'sunos': ['sunc++', 'g++'],
|
||||||
'irix': ['g++'],
|
'irix': ['g++'],
|
||||||
'hpux': ['g++'],
|
'hpux': ['g++'],
|
||||||
|
'osf1V': ['g++'],
|
||||||
'gnu': ['g++', 'clang++'],
|
'gnu': ['g++', 'clang++'],
|
||||||
'java': ['g++', 'msvc', 'clang++', 'icpc'],
|
'java': ['g++', 'msvc', 'clang++', 'icpc'],
|
||||||
'default': ['g++', 'clang++']
|
'default': ['g++', 'clang++']
|
||||||
|
@ -121,7 +121,7 @@ def gcc_modifier_aix(conf):
|
|||||||
def gcc_modifier_hpux(conf):
|
def gcc_modifier_hpux(conf):
|
||||||
v = conf.env
|
v = conf.env
|
||||||
v['SHLIB_MARKER'] = []
|
v['SHLIB_MARKER'] = []
|
||||||
v['STLIB_MARKER'] = '-Bstatic'
|
v['STLIB_MARKER'] = []
|
||||||
v['CFLAGS_cshlib'] = ['-fPIC','-DPIC']
|
v['CFLAGS_cshlib'] = ['-fPIC','-DPIC']
|
||||||
v['cshlib_PATTERN'] = 'lib%s.sl'
|
v['cshlib_PATTERN'] = 'lib%s.sl'
|
||||||
|
|
||||||
@ -129,6 +129,12 @@ def gcc_modifier_hpux(conf):
|
|||||||
def gcc_modifier_openbsd(conf):
|
def gcc_modifier_openbsd(conf):
|
||||||
conf.env.SONAME_ST = []
|
conf.env.SONAME_ST = []
|
||||||
|
|
||||||
|
@conf
|
||||||
|
def gcc_modifier_osf1V(conf):
|
||||||
|
v['SHLIB_MARKER'] = []
|
||||||
|
v['STLIB_MARKER'] = []
|
||||||
|
v['SONAME_ST'] = []
|
||||||
|
|
||||||
@conf
|
@conf
|
||||||
def gcc_modifier_platform(conf):
|
def gcc_modifier_platform(conf):
|
||||||
"""Execute platform-specific functions based on *gcc_modifier_+NAME*"""
|
"""Execute platform-specific functions based on *gcc_modifier_+NAME*"""
|
||||||
|
@ -122,7 +122,7 @@ def gxx_modifier_aix(conf):
|
|||||||
def gxx_modifier_hpux(conf):
|
def gxx_modifier_hpux(conf):
|
||||||
v = conf.env
|
v = conf.env
|
||||||
v['SHLIB_MARKER'] = []
|
v['SHLIB_MARKER'] = []
|
||||||
v['STLIB_MARKER'] = '-Bstatic'
|
v['STLIB_MARKER'] = []
|
||||||
v['CFLAGS_cxxshlib'] = ['-fPIC','-DPIC']
|
v['CFLAGS_cxxshlib'] = ['-fPIC','-DPIC']
|
||||||
v['cxxshlib_PATTERN'] = 'lib%s.sl'
|
v['cxxshlib_PATTERN'] = 'lib%s.sl'
|
||||||
|
|
||||||
@ -130,6 +130,12 @@ def gxx_modifier_hpux(conf):
|
|||||||
def gxx_modifier_openbsd(conf):
|
def gxx_modifier_openbsd(conf):
|
||||||
conf.env.SONAME_ST = []
|
conf.env.SONAME_ST = []
|
||||||
|
|
||||||
|
@conf
|
||||||
|
def gcc_modifier_osf1V(conf):
|
||||||
|
v['SHLIB_MARKER'] = []
|
||||||
|
v['STLIB_MARKER'] = []
|
||||||
|
v['SONAME_ST'] = []
|
||||||
|
|
||||||
@conf
|
@conf
|
||||||
def gxx_modifier_platform(conf):
|
def gxx_modifier_platform(conf):
|
||||||
"""Execute platform-specific functions based on *gxx_modifier_+NAME*"""
|
"""Execute platform-specific functions based on *gxx_modifier_+NAME*"""
|
||||||
|
@ -585,7 +585,7 @@ def unversioned_sys_platform():
|
|||||||
elif s == 'OS/2':
|
elif s == 'OS/2':
|
||||||
return 'os2'
|
return 'os2'
|
||||||
elif s == 'HP-UX':
|
elif s == 'HP-UX':
|
||||||
return 'hpux'
|
return 'hp-ux'
|
||||||
elif s in ('SunOS', 'Solaris'):
|
elif s in ('SunOS', 'Solaris'):
|
||||||
return 'sunos'
|
return 'sunos'
|
||||||
else: s = s.lower()
|
else: s = s.lower()
|
||||||
|
Loading…
Reference in New Issue
Block a user