Add patch to build qt 4 with GCC 6
This commit is contained in:
@@ -114,22 +114,34 @@ def setup_environment(self, spack_env, env):
|
||||
def setup_dependent_environment(self, spack_env, run_env, dspec):
|
||||
spack_env.set('QTDIR', self.prefix)
|
||||
|
||||
@when('@4')
|
||||
def patch(self):
|
||||
if self.spec.satisfies('@4'):
|
||||
qmake_conf = 'mkspecs/common/g++-base.conf'
|
||||
qmake_unix_conf = 'mkspecs/common/g++-unix.conf'
|
||||
elif self.spec.satisfies('@5'):
|
||||
qmake_conf = 'qtbase/mkspecs/common/g++-base.conf'
|
||||
qmake_unix_conf = 'qtbase/mkspecs/common/g++-unix.conf'
|
||||
else:
|
||||
return
|
||||
|
||||
# Fix qmake compilers in the default mkspec
|
||||
filter_file('^QMAKE_COMPILER.*', 'QMAKE_COMPILER = cc', qmake_conf)
|
||||
filter_file('^QMAKE_CC.*', 'QMAKE_CC = cc', qmake_conf)
|
||||
filter_file('^QMAKE_CXX.*', 'QMAKE_CXX = c++', qmake_conf)
|
||||
filter_file('^QMAKE_LFLAGS_NOUNDEF.*',
|
||||
'QMAKE_LFLAGS_NOUNDEF =', qmake_unix_conf)
|
||||
filter_file('^QMAKE_CC .*', 'QMAKE_CC = cc',
|
||||
'mkspecs/common/g++-base.conf')
|
||||
filter_file('^QMAKE_CXX .*', 'QMAKE_CXX = c++',
|
||||
'mkspecs/common/g++-base.conf')
|
||||
|
||||
# Necessary to build with GCC 6 and other modern compilers
|
||||
# http://stackoverflow.com/questions/10354371/
|
||||
filter_file('(^QMAKE_CXXFLAGS .*)', r'\1 -std=gnu++98',
|
||||
'mkspecs/common/gcc-base.conf')
|
||||
|
||||
filter_file('^QMAKE_LFLAGS_NOUNDEF .*', 'QMAKE_LFLAGS_NOUNDEF = ',
|
||||
'mkspecs/common/g++-unix.conf')
|
||||
|
||||
@when('@5:')
|
||||
def patch(self):
|
||||
# Fix qmake compilers in the default mkspec
|
||||
filter_file('^QMAKE_COMPILER .*', 'QMAKE_COMPILER = cc',
|
||||
'qtbase/mkspecs/common/g++-base.conf')
|
||||
filter_file('^QMAKE_CC .*', 'QMAKE_CC = cc',
|
||||
'qtbase/mkspecs/common/g++-base.conf')
|
||||
filter_file('^QMAKE_CXX .*', 'QMAKE_CXX = c++',
|
||||
'qtbase/mkspecs/common/g++-base.conf')
|
||||
|
||||
filter_file('^QMAKE_LFLAGS_NOUNDEF .*', 'QMAKE_LFLAGS_NOUNDEF = ',
|
||||
'qtbase/mkspecs/common/g++-unix.conf')
|
||||
|
||||
@property
|
||||
def common_config_args(self):
|
||||
|
Reference in New Issue
Block a user