mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-26 06:50:07 +00: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',
|
self.add_config(arch='s390x',
|
||||||
os_name='linux-gnu',
|
os_name='linux-gnu',
|
||||||
glibcs=[{},
|
glibcs=[{},
|
||||||
{'arch': 's390', 'ccopts': '-m31'}])
|
{'arch': 's390', 'ccopts': '-m31'}],
|
||||||
|
extra_glibcs=[{'variant': 'O3',
|
||||||
|
'cflags': '-O3'}])
|
||||||
self.add_config(arch='sh3',
|
self.add_config(arch='sh3',
|
||||||
os_name='linux-gnu')
|
os_name='linux-gnu')
|
||||||
self.add_config(arch='sh3eb',
|
self.add_config(arch='sh3eb',
|
||||||
@ -1483,6 +1485,9 @@ class GlibcPolicyDefault(object):
|
|||||||
]
|
]
|
||||||
if glibc.os == 'gnu':
|
if glibc.os == 'gnu':
|
||||||
self.configure_args.append('MIG=%s' % glibc.tool_name('mig'))
|
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
|
self.configure_args += glibc.cfg
|
||||||
|
|
||||||
def configure(self, cmdlist):
|
def configure(self, cmdlist):
|
||||||
@ -1551,7 +1556,7 @@ class Glibc(object):
|
|||||||
"""A configuration for building glibc."""
|
"""A configuration for building glibc."""
|
||||||
|
|
||||||
def __init__(self, compiler, arch=None, os_name=None, variant=None,
|
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."""
|
"""Initialize a Glibc object."""
|
||||||
self.ctx = compiler.ctx
|
self.ctx = compiler.ctx
|
||||||
self.compiler = compiler
|
self.compiler = compiler
|
||||||
@ -1573,7 +1578,11 @@ class Glibc(object):
|
|||||||
self.cfg = []
|
self.cfg = []
|
||||||
else:
|
else:
|
||||||
self.cfg = cfg
|
self.cfg = cfg
|
||||||
|
# ccopts contain ABI options and are passed to configure as CC / CXX.
|
||||||
self.ccopts = ccopts
|
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):
|
def tool_name(self, tool):
|
||||||
"""Return the name of a cross-compilation tool."""
|
"""Return the name of a cross-compilation tool."""
|
||||||
|
Loading…
Reference in New Issue
Block a user