mirror of
https://github.com/BurntSushi/ripgrep.git
synced 2025-01-29 22:01:04 +02:00
06b66efd59
This was introduced as a temporary measure for dealing with the regex crate's unstable feature, but it was never included in a release of ripgrep. Thus, we remove it. The regex crate will now automatically enable SIMD optimizations when available.
56 lines
1.7 KiB
Bash
Executable File
56 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# package the build artifacts
|
|
|
|
set -ex
|
|
|
|
. "$(dirname $0)/utils.sh"
|
|
|
|
# Generate artifacts for release
|
|
mk_artifacts() {
|
|
cargo build --target "$TARGET" --release
|
|
}
|
|
|
|
mk_tarball() {
|
|
# When cross-compiling, use the right `strip` tool on the binary.
|
|
local gcc_prefix="$(gcc_prefix)"
|
|
# Create a temporary dir that contains our staging area.
|
|
# $tmpdir/$name is what eventually ends up as the deployed archive.
|
|
local tmpdir="$(mktemp -d)"
|
|
local name="${PROJECT_NAME}-${TRAVIS_TAG}-${TARGET}"
|
|
local staging="$tmpdir/$name"
|
|
mkdir -p "$staging"/{complete,doc}
|
|
# The deployment directory is where the final archive will reside.
|
|
# This path is known by the .travis.yml configuration.
|
|
local out_dir="$(pwd)/deployment"
|
|
mkdir -p "$out_dir"
|
|
# Find the correct (most recent) Cargo "out" directory. The out directory
|
|
# contains shell completion files and the man page.
|
|
local cargo_out_dir="$(cargo_out_dir "target/$TARGET")"
|
|
|
|
# Copy the ripgrep binary and strip it.
|
|
cp "target/$TARGET/release/rg" "$staging/rg"
|
|
"${gcc_prefix}strip" "$staging/rg"
|
|
# Copy the licenses and README.
|
|
cp {README.md,UNLICENSE,COPYING,LICENSE-MIT} "$staging/"
|
|
# Copy documentation and man page.
|
|
cp {CHANGELOG.md,FAQ.md,GUIDE.md} "$staging/doc/"
|
|
if command -V a2x 2>&1 > /dev/null; then
|
|
# The man page should only exist if we have asciidoc installed.
|
|
cp "$cargo_out_dir/rg.1" "$staging/doc/"
|
|
fi
|
|
# Copy shell completion files.
|
|
cp "$cargo_out_dir"/{rg.bash,rg.fish,_rg.ps1} "$staging/complete/"
|
|
cp complete/_rg "$staging/complete/"
|
|
|
|
(cd "$tmpdir" && tar czf "$out_dir/$name.tar.gz" "$name")
|
|
rm -rf "$tmpdir"
|
|
}
|
|
|
|
main() {
|
|
mk_artifacts
|
|
mk_tarball
|
|
}
|
|
|
|
main
|