aboutsummaryrefslogtreecommitdiff
path: root/helpers/llvm-branch
AgeCommit message (Collapse)Author
2017-11-03Minor fixes to scripts interfacesDiana Picus
* Remove all references to clang-tools-extra in helpers We do not support clang tools extra in the python scripts, since it's too complicated and nobody is working on it yet. Therefore, clean up all references to it in the helpers as well, to avoid any confusion. * Add a bit more info to llvm.py --help Change-Id: I5990925cebafce182b081227a4d33aecead7b4ac
2016-06-15Use git worktree in the LLVM helper scriptsDiana Picus
This commit adds a new script, llvm-env, which sets up the environment for working with LLVM. It looks for an environment variable LLVM_ROOT and tries to create the following hierarchy: $LLVM_ROOT `- repos | `- llvm | `- clang | `- compiler-rt | [...] `- <branch1> | `- llvm | `- build | `- debug `- <branch2> | `- llvm | `- build | `- debug [...] The $LLVM_ROOT/repos directory contains all the repositories, as checked out by llvm-prepare, and will always track master. For other branches, llvm-env <branch_name> will create a new directory, $LLVM_ROOT/<branch_name>, and will add an llvm worktree directory there. If -d is passed, it will also create a debug directory there, otherwise it will create a build directory. Notice that these 2 can live in parallel, and we can switch between them at any time by invoking llvm-env. It will set LLVM_SRC and LLVM_BLD accordingly, and also modify the path to point to the binaries in LLVM_BLD. The other scripts will now work with the LLVM_SRC and LLVM_BLD set by llvm-env in the current shell. Because llvm-env controls whether or not we're doing a debug build, llvm-build will no longer take a -d flag (it will instead look after a LLVM_DEBUG environment variable, also set by llvm-env). There are changes in llvm-projs, too, because now it no longer creates links - instead it creates worktree directories in the corresponding $LLVM_ROOT/<branch>/llvm. Other scripts have also been updated accordingly. To make things easier, here are some of the changes that I had to make that are not particularly important for the review (pretty mechanical stuff): * Moved function has() from llvm-branch to llvm-common, so I could reuse it * Because of this, I had to rename the has() function in llvm-projs to has_link(), which is actually a better name for it anyway * Disable the checks for LLVM_SRC and LLVM_BLD in llvm-common Change-Id: I9e02f6d8e0c803e79838845013b81331dffba99c
2016-04-26Add clang-tools-extra, lld and lldb to the scriptsDiana Picus
The scripts aren't very consistent about which repos they handle (e.g. clang-tools-extra was handled in llvm-prepare, but not in the other scripts). This commit tries to improve on that by: * adding support for clang-tools-extra in llvm-projs, llvm-sync and llvm-branch * adding support for lld and lldb to llvm-branch. Change-Id: I82b0aeb95b5116d1d75f0721e0c4d31c4744e04b
2016-04-26Initial Commit, moving from dev-private and removing private stuffRenato Golin