Brian Paul | ace3124 | 2016-06-15 10:42:34 -0600 | [diff] [blame] | 1 | import filecmp |
| 2 | import os |
| 3 | import subprocess |
Jose Fonseca | b99dcbf | 2017-08-01 14:36:16 +0100 | [diff] [blame] | 4 | from sys import executable as python_cmd |
José Fonseca | 33ceb67 | 2008-02-18 10:52:44 +0000 | [diff] [blame] | 5 | |
Brian Paul | ace3124 | 2016-06-15 10:42:34 -0600 | [diff] [blame] | 6 | Import('*') |
José Fonseca | 982609f | 2011-02-11 17:38:54 +0000 | [diff] [blame] | 7 | |
José Fonseca | 601498a | 2010-11-01 13:30:22 +0000 | [diff] [blame] | 8 | if env['platform'] == 'windows': |
José Fonseca | 6d670f6 | 2011-01-12 15:32:17 +0000 | [diff] [blame] | 9 | SConscript('getopt/SConscript') |
Chia-I Wu | 1e6c10f | 2010-05-31 11:47:58 +0800 | [diff] [blame] | 10 | |
Nicolai Hähnle | 49bdb73 | 2017-07-31 16:51:13 +0200 | [diff] [blame] | 11 | SConscript('util/xmlpool/SConscript') |
Kenneth Graunke | 1e0da62 | 2014-02-24 23:39:14 -0800 | [diff] [blame] | 12 | SConscript('util/SConscript') |
Emil Velikov | 1a882fd | 2016-01-18 10:47:13 +0200 | [diff] [blame] | 13 | SConscript('compiler/SConscript') |
José Fonseca | 982609f | 2011-02-11 17:38:54 +0000 | [diff] [blame] | 14 | |
| 15 | if env['hostonly']: |
| 16 | # We are just compiling the things necessary on the host for cross |
| 17 | # compilation |
| 18 | Return() |
| 19 | |
Brian Paul | ace3124 | 2016-06-15 10:42:34 -0600 | [diff] [blame] | 20 | |
| 21 | def write_git_sha1_h_file(filename): |
| 22 | """Mesa looks for a git_sha1.h file at compile time in order to display |
| 23 | the current git hash id in the GL_VERSION string. This function tries |
| 24 | to retrieve the git hashid and write the header file. An empty file |
| 25 | will be created if anything goes wrong.""" |
| 26 | |
Eric Engestrom | 7088622 | 2017-10-25 14:04:35 +0100 | [diff] [blame] | 27 | args = [ python_cmd, Dir('#').abspath + '/bin/git_sha1_gen.py', '--output', filename ] |
| 28 | try: |
| 29 | subprocess.call(args) |
| 30 | except: |
| 31 | print("Warning: exception in write_git_sha1_h_file()") |
| 32 | return |
Brian Paul | ace3124 | 2016-06-15 10:42:34 -0600 | [diff] [blame] | 33 | |
| 34 | |
| 35 | # Create the git_sha1.h header file |
| 36 | write_git_sha1_h_file("git_sha1.h") |
| 37 | # and update CPPPATH so the git_sha1.h header can be found |
| 38 | env.Append(CPPPATH = ["#" + env['build_dir']]) |
| 39 | |
| 40 | |
| 41 | |
Jose Fonseca | 47870d6 | 2015-03-24 20:26:21 +0000 | [diff] [blame] | 42 | if env['platform'] != 'windows': |
| 43 | SConscript('loader/SConscript') |
José Fonseca | 982609f | 2011-02-11 17:38:54 +0000 | [diff] [blame] | 44 | |
Brian Paul | dff36e9 | 2012-05-30 10:08:11 -0600 | [diff] [blame] | 45 | SConscript('mapi/glapi/gen/SConscript') |
José Fonseca | 601498a | 2010-11-01 13:30:22 +0000 | [diff] [blame] | 46 | SConscript('mapi/glapi/SConscript') |
Alexander von Gluck IV | 61ef697 | 2013-12-31 15:39:49 -0600 | [diff] [blame] | 47 | |
| 48 | # Haiku C++ libGL dispatch (renderers depend on libgl) |
| 49 | if env['platform'] in ['haiku']: |
| 50 | SConscript('hgl/SConscript') |
| 51 | |
José Fonseca | 601498a | 2010-11-01 13:30:22 +0000 | [diff] [blame] | 52 | SConscript('mesa/SConscript') |
José Fonseca | 1ca2945 | 2010-08-13 13:53:04 +0100 | [diff] [blame] | 53 | |
Brian Paul | 88625e6 | 2011-09-16 10:11:52 -0600 | [diff] [blame] | 54 | if not env['embedded']: |
Vinson Lee | 5cf6932 | 2012-05-23 17:26:20 -0700 | [diff] [blame] | 55 | if env['platform'] not in ('cygwin', 'darwin', 'freebsd', 'haiku', 'windows'): |
José Fonseca | f8aeb1c | 2011-09-20 20:40:05 +0100 | [diff] [blame] | 56 | SConscript('glx/SConscript') |
Alexander von Gluck IV | 400b833 | 2014-12-22 10:10:13 -0500 | [diff] [blame] | 57 | if env['platform'] == 'haiku': |
Emil Velikov | e7e2918 | 2015-07-14 02:04:30 +0100 | [diff] [blame] | 58 | SConscript('egl/SConscript') |
Keith Whitwell | e3c6d41 | 2010-06-08 17:38:01 +0100 | [diff] [blame] | 59 | |
José Fonseca | 706eda3 | 2010-03-09 15:07:57 +0000 | [diff] [blame] | 60 | SConscript('gallium/SConscript') |
José Fonseca | 57d0001 | 2009-01-23 12:32:35 +0000 | [diff] [blame] | 61 | |