Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 82b6e848 authored by Sasha Smundak's avatar Sasha Smundak
Browse files

A script to update the file contents with the command output.

Used to avoid rerunning Ninja files regeneration if m2rbc conversion
generated the same makefile.

Test: treehugger
Change-Id: I1b0a619f961e6d2c7bf99a48053ecb58147c6db0
parent f18bedf1
Loading
Loading
Loading
Loading

scripts/update_out

0 → 100755
+21 −0
Original line number Diff line number Diff line
#! /bin/bash
# Run given command application and update the contents of a given file.
# Will not change the file if its contents has not changed.
[[ $# -gt 1 ]] || { echo "Usage: ${0##*/} FILE COMMAND" >&2; exit 1; }
set -u
declare -r outfile="$1"
shift
if [[ ! -f $outfile ]]; then
	$@ >$outfile
	exit
fi

declare -r newout=${outfile}.new
$@ >$newout
rc=$?
if cmp -s $newout $outfile; then
	rm $newout
else
	mv -f $newout $outfile
fi
exit $rc