forked from OSchip/llvm-project
6deaebe5fe
This change adds the ability to create source tarballs for unreleased or untagged code by providing the `--git-ref <GIT_REF>` flag to the `llvm/utils/release/export.sh` script. This is useful for creating daily snapshot tarballs that can easily be consumed by packagers who want to build a daily snapshot. The default behavior of `export.sh` hasn't changed. You may also provide a `--template` argument to say how the artifacts are supposed to be named (as suggested by @hans). The `-help` output of `export.sh` was changed quite significantly to look like this: ``` Export the Git sources and build tarballs from them. Usage: export.sh [-release|--release <major>.<minor>.<patch>] [-rc|--rc <num>] [-final|--final] [-git-ref|--git-ref <git-ref>] [-template|--template <template>] Flags: -release | --release <major>.<minor>.<patch> The version number of the release -rc | --rc <num> The release candidate number -final | --final When provided, this option will disable the rc flag -git-ref | --git-ref <git-ref> (optional) Use <git-ref> to determine the release and don't export the test-suite files -template | --template <template> (optional) Possible placeholders: $PROJECT $YYYYMMDD $GIT_REF $RELEASE $RC. Defaults to '${PROJECT}-${RELEASE}${RC}.src.tar.xz'. The following list shows the filenames (with <placeholders>) for the artifacts that are being generated (given that you don't touch --template). * llvm-<RELEASE><RC>.src.tar.xz * clang-<RELEASE><RC>.src.tar.xz * compiler-rt-<RELEASE><RC>.src.tar.xz * libcxx-<RELEASE><RC>.src.tar.xz * libcxxabi-<RELEASE><RC>.src.tar.xz * libclc-<RELEASE><RC>.src.tar.xz * clang-tools-extra-<RELEASE><RC>.src.tar.xz * polly-<RELEASE><RC>.src.tar.xz * lldb-<RELEASE><RC>.src.tar.xz * lld-<RELEASE><RC>.src.tar.xz * openmp-<RELEASE><RC>.src.tar.xz * libunwind-<RELEASE><RC>.src.tar.xz * flang-<RELEASE><RC>.src.tar.xz Additional files being generated: * llvm-project-<RELEASE><RC>.src.tar.xz (the complete LLVM source project) * test-suite-<RELEASE><RC>.src.tar.xz (only when not using --git-ref) To ease the creation of snapshot builds, we also provide these files * llvm-release-<YYYYMMDD>.txt (contains the <RELEASE> as a text) * llvm-rc-<YYYYMMDD>.txt (contains the rc version passed to the invocation of export.sh) * llvm-git-revision-<YYYYMMDD>.txt (contains the current git revision sha1) Example values for the placeholders: * <RELEASE> -> 13.0.0 * <YYYYMMDD> -> 20210414 * <RC> -> rc4 (will be empty when using --git-ref) In order to generate snapshots of the upstream main branch you could do this for example: export.sh --git-ref upstream/main --template '${PROJECT}-${YYYYMMDD}.src.tar.xz' ``` Reviewed By: tstellar Differential Revision: https://reviews.llvm.org/D101446 |
||
---|---|---|
.. | ||
build_llvm_package.bat | ||
export.sh | ||
findRegressions-nightly.py | ||
findRegressions-simple.py | ||
github-upload-release.py | ||
merge-request.sh | ||
test-release.sh |