mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
build-many-glibcs.py: Add a s390x -O3 glibc variant.
On s390x, gcc inlines more aggresive compared to other architectures. This occaisionally leads to build warnings / errors. Therefore this patch adds a s390x glibc variant with optimization. There is the ccopts field which contain ABI options which are passed to configure as CC / CXX. Now there is also the cflags field which contains non-ABI options like -g or -O. Those are passed to configure as CFLAGS / CXXFLAGS. Currently CC is passed to conformtest.py or linknamespace.py but not the CFLAGS.
This commit is contained in:
parent
e1fd4bbe31
commit
33dd32fd79
@ -366,7 +366,9 @@ class Context(object):
|
||||
self.add_config(arch='s390x',
|
||||
os_name='linux-gnu',
|
||||
glibcs=[{},
|
||||
{'arch': 's390', 'ccopts': '-m31'}])
|
||||
{'arch': 's390', 'ccopts': '-m31'}],
|
||||
extra_glibcs=[{'variant': 'O3',
|
||||
'cflags': '-O3'}])
|
||||
self.add_config(arch='sh3',
|
||||
os_name='linux-gnu')
|
||||
self.add_config(arch='sh3eb',
|
||||
@ -1483,6 +1485,9 @@ class GlibcPolicyDefault(object):
|
||||
]
|
||||
if glibc.os == 'gnu':
|
||||
self.configure_args.append('MIG=%s' % glibc.tool_name('mig'))
|
||||
if glibc.cflags:
|
||||
self.configure_args.append('CFLAGS=%s' % glibc.cflags)
|
||||
self.configure_args.append('CXXFLAGS=%s' % glibc.cflags)
|
||||
self.configure_args += glibc.cfg
|
||||
|
||||
def configure(self, cmdlist):
|
||||
@ -1551,7 +1556,7 @@ class Glibc(object):
|
||||
"""A configuration for building glibc."""
|
||||
|
||||
def __init__(self, compiler, arch=None, os_name=None, variant=None,
|
||||
cfg=None, ccopts=None):
|
||||
cfg=None, ccopts=None, cflags=None):
|
||||
"""Initialize a Glibc object."""
|
||||
self.ctx = compiler.ctx
|
||||
self.compiler = compiler
|
||||
@ -1573,7 +1578,11 @@ class Glibc(object):
|
||||
self.cfg = []
|
||||
else:
|
||||
self.cfg = cfg
|
||||
# ccopts contain ABI options and are passed to configure as CC / CXX.
|
||||
self.ccopts = ccopts
|
||||
# cflags contain non-ABI options like -g or -O and are passed to
|
||||
# configure as CFLAGS / CXXFLAGS.
|
||||
self.cflags = cflags
|
||||
|
||||
def tool_name(self, tool):
|
||||
"""Return the name of a cross-compilation tool."""
|
||||
|
Loading…
Reference in New Issue
Block a user