mirror of
https://gitee.com/openharmony/third_party_mesa3d
synced 2024-11-24 16:00:56 +00:00
git_sha1_gen: accept MESA_GIT_SHA1_OVERRIDE env var
If one uses a parent build script to download/build Mesa we may not have a full git repository (maybe a tar archive) so the 'git rev-parse' command will fail. This updates the script to look for a MESA_GIT_SHA1_OVERRIDE env var. If it's set, use that sha1 instead of using git rev-parse. With this change we can put a git hash in the GL_VERSION string even when we don't have a git repo. v2: incorporate Dylan's suggestions to simplify the code Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
This commit is contained in:
parent
c43b0d3f91
commit
a3b2e60aa0
@ -1,20 +1,33 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
"""
|
||||
Generate the contents of the git_sha1.h file.
|
||||
The output of this script goes to stdout.
|
||||
"""
|
||||
|
||||
|
||||
import os
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
git_dir = os.path.join(os.path.dirname(sys.argv[0]), '..', '.git')
|
||||
try:
|
||||
git_sha1 = subprocess.check_output([
|
||||
'git',
|
||||
'--git-dir=' + git_dir,
|
||||
'rev-parse',
|
||||
'--short=10',
|
||||
'HEAD',
|
||||
], stderr=open(os.devnull, 'w')).decode("ascii")
|
||||
except:
|
||||
# don't print anything if it fails
|
||||
pass
|
||||
else:
|
||||
|
||||
def get_git_sha1():
|
||||
"""Try to get the git SHA1 with git rev-parse."""
|
||||
git_dir = os.path.join(os.path.dirname(sys.argv[0]), '..', '.git')
|
||||
try:
|
||||
git_sha1 = subprocess.check_output([
|
||||
'git',
|
||||
'--git-dir=' + git_dir,
|
||||
'rev-parse',
|
||||
'HEAD',
|
||||
], stderr=open(os.devnull, 'w')).decode("ascii")
|
||||
except:
|
||||
# don't print anything if it fails
|
||||
git_sha1 = ''
|
||||
return git_sha1
|
||||
|
||||
|
||||
git_sha1 = os.environ.get('MESA_GIT_SHA1_OVERRIDE', get_git_sha1())[:10]
|
||||
if git_sha1:
|
||||
sys.stdout.write('#define MESA_GIT_SHA1 "git-%s"\n' % git_sha1.rstrip())
|
||||
|
Loading…
Reference in New Issue
Block a user