[PATCH] D56422: gn build: Use "git rev-parse --git-dir" to discover the path to the .git directory.
Peter Collingbourne via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 7 17:51:57 PST 2019
pcc created this revision.
pcc added reviewers: thakis, phosek.
Herald added a reviewer: serge-sans-paille.
This makes it compatible with worktrees.
Repository:
rL LLVM
https://reviews.llvm.org/D56422
Files:
llvm/utils/gn/build/write_vcsrevision.py
Index: llvm/utils/gn/build/write_vcsrevision.py
===================================================================
--- llvm/utils/gn/build/write_vcsrevision.py
+++ llvm/utils/gn/build/write_vcsrevision.py
@@ -12,7 +12,6 @@
THIS_DIR = os.path.abspath(os.path.dirname(__file__))
LLVM_DIR = os.path.dirname(os.path.dirname(os.path.dirname(THIS_DIR)))
-MONO_DIR = os.path.dirname(LLVM_DIR)
def which(program):
@@ -36,21 +35,23 @@
if os.path.isdir(os.path.join(LLVM_DIR, '.svn')):
print('SVN support not implemented', file=sys.stderr)
return 1
- if os.path.isdir(os.path.join(LLVM_DIR, '.git')):
+ if os.path.exists(os.path.join(LLVM_DIR, '.git')):
print('non-mono-repo git support not implemented', file=sys.stderr)
return 1
- git_dir = os.path.join(MONO_DIR, '.git')
- if not os.path.isdir(git_dir):
- print('.git dir not found at "%s"' % git_dir, file=sys.stderr)
- return 1
-
git, use_shell = which('git'), False
if not git:
git = which('git.exe')
if not git:
git = which('git.bat')
use_shell = True
+
+ git_dir = subprocess.check_output([git, 'rev-parse', '--git-dir'],
+ cwd=LLVM_DIR, shell=use_shell).strip()
+ if not os.path.isdir(git_dir):
+ print('.git dir not found at "%s"' % git_dir, file=sys.stderr)
+ return 1
+
rev = subprocess.check_output([git, 'rev-parse', '--short', 'HEAD'],
cwd=git_dir, shell=use_shell)
# FIXME: add pizzas such as the svn revision read off a git note?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D56422.180595.patch
Type: text/x-patch
Size: 1610 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190108/99a1fabf/attachment.bin>
More information about the llvm-commits
mailing list