Scons: Verbose messages when dependencies are not installed
authorAndreas Hansson <andreas.hansson@arm.com>
Fri, 21 Sep 2012 14:11:22 +0000 (10:11 -0400)
committerAndreas Hansson <andreas.hansson@arm.com>
Fri, 21 Sep 2012 14:11:22 +0000 (10:11 -0400)
This patch adds a few more checks to ensure that a compiler is present
on the system, along with swig. It references the relevant packages on
Ubuntu/RedHat, and also adds a similar line for the Python headers.

SConstruct

index d2e6b1233e5be0a6527ad2ee5836b244437fb883..515f6047bf1bee113b729873657fefc78c172f4c 100755 (executable)
@@ -192,6 +192,18 @@ main.Decider('MD5-timestamp')
 main.root = Dir(".")         # The current directory (where this file lives).
 main.srcdir = Dir("src")     # The source directory
 
+main_dict_keys = main.Dictionary().keys()
+
+# Check that we have a C/C++ compiler
+if not ('CC' in main_dict_keys and 'CXX' in main_dict_keys):
+    print "No C++ compiler installed (package g++ on Ubuntu and RedHat)"
+    Exit(1)
+
+# Check that swig is present
+if not 'SWIG' in main_dict_keys:
+    print "swig is not installed (package swig on Ubuntu and RedHat)"
+    Exit(1)
+
 # add useful python code PYTHONPATH so it can be used by subprocesses
 # as well
 main.AppendENVPath('PYTHONPATH', extra_python_paths)
@@ -763,6 +775,7 @@ if main['M5_BUILD_CACHE']:
 # verify that this stuff works
 if not conf.CheckHeader('Python.h', '<>'):
     print "Error: can't find Python.h header in", py_includes
+    print "Install Python headers (package python-dev on Ubuntu and RedHat)"
     Exit(1)
 
 for lib in py_libs: