Merge 1.4 r751:752 into trunk
This commit is contained in:
parent
1237d7e1d4
commit
b07d4c7747
|
@ -29,6 +29,7 @@ class InternalCommands:
|
||||||
make_cmd = 'make'
|
make_cmd = 'make'
|
||||||
xcodebuild_cmd = 'xcodebuild'
|
xcodebuild_cmd = 'xcodebuild'
|
||||||
w32_make_cmd = 'mingw32-make'
|
w32_make_cmd = 'mingw32-make'
|
||||||
|
w32_qt_version = '4.6.2'
|
||||||
|
|
||||||
source_dir = '..' # Source, relative to build.
|
source_dir = '..' # Source, relative to build.
|
||||||
cmake_dir = 'cmake'
|
cmake_dir = 'cmake'
|
||||||
|
@ -167,6 +168,9 @@ class InternalCommands:
|
||||||
# allow user to skip qui compile
|
# allow user to skip qui compile
|
||||||
if self.enable_make_gui:
|
if self.enable_make_gui:
|
||||||
|
|
||||||
|
# make sure we have qmake
|
||||||
|
self.persist_qmake()
|
||||||
|
|
||||||
qmake_cmd_string = self.qmake_cmd + ' ' + self.qtpro_filename
|
qmake_cmd_string = self.qmake_cmd + ' ' + self.qtpro_filename
|
||||||
print "Configuring with QMake (%s)..." % qmake_cmd_string
|
print "Configuring with QMake (%s)..." % qmake_cmd_string
|
||||||
|
|
||||||
|
@ -195,6 +199,49 @@ class InternalCommands:
|
||||||
else:
|
else:
|
||||||
return self.cmake_cmd
|
return self.cmake_cmd
|
||||||
|
|
||||||
|
def persist_qt(self):
|
||||||
|
self.persist_qmake()
|
||||||
|
if sys.platform == 'win32':
|
||||||
|
self.persist_w32_make()
|
||||||
|
|
||||||
|
def persist_qmake(self):
|
||||||
|
try:
|
||||||
|
p = subprocess.Popen(
|
||||||
|
[self.qmake_cmd, '--version'],
|
||||||
|
stdout=subprocess.PIPE,
|
||||||
|
stderr=subprocess.PIPE)
|
||||||
|
except:
|
||||||
|
print >> sys.stderr, 'Error: Could not find qmake.'
|
||||||
|
if sys.platform == 'win32': # windows devs usually need hints ;)
|
||||||
|
print (
|
||||||
|
'Suggestions:\n'
|
||||||
|
'1. Ensure that qmake.exe exists in your system path.\n'
|
||||||
|
'2. Try to download Qt (check our dev FAQ for links):\n'
|
||||||
|
' qt-sdk-win-opensource-2010.02.exe')
|
||||||
|
raise Exception('Cannot continue without qmake.')
|
||||||
|
|
||||||
|
stdout, stderr = p.communicate()
|
||||||
|
if p.returncode != 0:
|
||||||
|
raise Exception('Could not test for cmake: %s' % stderr)
|
||||||
|
else:
|
||||||
|
m = re.search('.*Using Qt version (\d+\.\d+\.\d+).*', stdout)
|
||||||
|
if m:
|
||||||
|
if sys.platform == 'win32':
|
||||||
|
ver = m.group(1)
|
||||||
|
if ver != self.w32_qt_version: # TODO: test properly
|
||||||
|
print >> sys.stderr, (
|
||||||
|
'Warning: Not using supported Qt version %s'
|
||||||
|
' (your version is %s).'
|
||||||
|
) % (self.w32_qt_version, ver)
|
||||||
|
else:
|
||||||
|
pass # any version should be ok for other platforms
|
||||||
|
else:
|
||||||
|
raise Exception('Could not find qmake version.')
|
||||||
|
|
||||||
|
def persist_w32_make():
|
||||||
|
# TODO
|
||||||
|
pass
|
||||||
|
|
||||||
def build(self, targets=[]):
|
def build(self, targets=[]):
|
||||||
|
|
||||||
# if no mode specified, default to debug
|
# if no mode specified, default to debug
|
||||||
|
|
Loading…
Reference in New Issue