12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- #!/bin/bash
- set -e
- ledger_proof() {
- SRC="$1"
- DEST="$2"
- LOGDIR="$3"
- cd "$SRC"
- VERSION=$(git describe --all --long)
- if [[ -f $DEST/last-proofed && $(< $DEST/last-proofed) = $VERSION ]]; then
- echo "No need to run tools/proof again"
- exit 0
- fi
- sudo rm -fr $DEST/ledger-proof
- date > $LOGDIR/ledger-proof.log
- time nice -n 20 \
- ./acprep --debug --doxygen --compiler=g++-4.7 proof -j16 2>&1 | \
- tee -a $LOGDIR/ledger-proof-g++-4.7.log
- time nice -n 20 \
- ./acprep --debug --doxygen --python --compiler=g++-4.7 proof -j16 2>&1 | \
- tee -a $LOGDIR/ledger-proof-g++-4.7-python.log
- time nice -n 20 \
- ./acprep --debug --doxygen --compiler=clang-3.1 proof -j16 2>&1 | \
- tee -a $LOGDIR/ledger-proof-clang-3.1.log
-
- time nice -n 20 \
- ./acprep --debug --doxygen --python --compiler=clang-3.1 proof -j16 2>&1 | \
- tee -a $LOGDIR/ledger-proof-clang-3.1-python.log
- if egrep -q '(ERROR|CRITICAL)' $LOGDIR/ledger-proof.log; then
- mutt -a $LOGDIR/ledger-proof.log \
- -s '[ledger] Proof build FAILED' johnw@newartisans.com <<EOF
- Ledger proof build FAILED, at commit $VERSION.
- EOF
- if [[ "$1" = "--alert" ]]; then
- notify "Ledger proof build FAILED"
- else
- echo "Ledger proof build FAILED"
- exit 1
- fi
- else
- echo $VERSION > $DEST/last-proofed
- cd $DEST/ledger-proof-python-g++-4.7/debug; make docs
- cd $DEST/ledger-proof-python-g++-4.7/gcov; make report
- mutt -s '[ledger] Proof build succeeded' johnw@newartisans.com <<EOF
- Ledger proof build succeeded! at commit $VERSION.
- EOF
- echo "Ledger proof build succeeded"
- fi
- }
- ledger_proof ${1:-$HOME/src/ledger} ${2:-$HOME/Products} ${3:-$HOME/Library/Logs}
- exit 0
|