gecko-dev/media/audioipc/update.sh
Dan Glastonbury eeb4781489 Bug 1428952 - P2: Add update.sh for updating audioipc crates. r=kinetik
MozReview-Commit-ID: 59RmjjGh9Wq

--HG--
extra : rebase_source : 76954db0f17e6fa80e71f02071874eda41306c8f
2018-01-09 10:50:40 +10:00

34 lines
913 B
Bash
Executable File

# Usage: sh update.sh <upstream_src_directory>
set -e
cp -p $1/README.md .
cp -p $1/Cargo.toml .
for crate in audioipc client server; do
test -d $crate/src || mkdir -p $crate/src
rm -fr $crate/*
cp -pr $1/$crate/Cargo.toml $crate/
cp -pr $1/$crate/src/ $crate/src/
done
if [ -d $1/.git ]; then
rev=$(cd $1 && git rev-parse --verify HEAD)
date=$(cd $1 && git show -s --format=%ci HEAD)
dirty=$(cd $1 && git diff-index --name-only HEAD)
fi
if [ -n "$rev" ]; then
version=$rev
if [ -n "$dirty" ]; then
version=$version-dirty
echo "WARNING: updating from a dirty git repository."
fi
sed -i.bak -e "/The git commit ID used was/ s/[0-9a-f]\{40\}\(-dirty\)\{0,1\} .\{1,100\}/$version ($date)/" README_MOZILLA
rm README_MOZILLA.bak
else
echo "Remember to update README_MOZILLA with the version details."
fi
echo "Applying gecko.patch on top of $rev"
patch -p3 < gecko.patch