X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2FSConscript;h=54350a9cdcc317749268911d625b289ca8b91f97;hb=f331419f262d3a0f270376cafbb9517b4627bb7a;hp=c3e34be6f760f020ad2b797d6d937fcd98da21e4;hpb=443a7e4e9a360acbc3e662c098be436f180bf81d;p=mesa.git diff --git a/src/SConscript b/src/SConscript index c3e34be6f76..54350a9cdcc 100644 --- a/src/SConscript +++ b/src/SConscript @@ -1,19 +1,61 @@ +import filecmp +import os +import subprocess +from sys import executable as python_cmd + Import('*') -if 'egl' in env['statetrackers']: - SConscript('mapi/vgapi/SConscript') - SConscript('egl/main/SConscript') +if env['platform'] == 'windows': + SConscript('getopt/SConscript') + +SConscript('util/xmlpool/SConscript') +SConscript('util/SConscript') +SConscript('compiler/SConscript') + +if env['hostonly']: + # We are just compiling the things necessary on the host for cross + # compilation + Return() + + +def write_git_sha1_h_file(filename): + """Mesa looks for a git_sha1.h file at compile time in order to display + the current git hash id in the GL_VERSION string. This function tries + to retrieve the git hashid and write the header file. An empty file + will be created if anything goes wrong.""" + + args = [ python_cmd, Dir('#').abspath + '/bin/git_sha1_gen.py', '--output', filename ] + try: + subprocess.call(args) + except: + print("Warning: exception in write_git_sha1_h_file()") + return + + +# Create the git_sha1.h header file +write_git_sha1_h_file("git_sha1.h") +# and update CPPPATH so the git_sha1.h header can be found +env.Append(CPPPATH = ["#" + env['build_dir']]) + + + +if env['platform'] != 'windows': + SConscript('loader/SConscript') + +SConscript('mapi/glapi/gen/SConscript') +SConscript('mapi/glapi/SConscript') -if 'mesa' in env['statetrackers']: - if platform == 'windows': - SConscript('talloc/SConscript') +# Haiku C++ libGL dispatch (renderers depend on libgl) +if env['platform'] in ['haiku']: + SConscript('hgl/SConscript') - SConscript('glsl/SConscript') - SConscript('mapi/glapi/SConscript') - SConscript('mesa/SConscript') +SConscript('mesa/SConscript') - if platform != 'embedded': - SConscript('glut/glx/SConscript') +if not env['embedded']: + if env['platform'] not in ('cygwin', 'darwin', 'freebsd', 'haiku', 'windows'): + SConscript('glx/SConscript') + if env['platform'] == 'haiku': + SConscript('egl/SConscript') SConscript('gallium/SConscript')