File: smart-configure.sh

package info (click to toggle)
lilypond 2.19.83-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 76,396 kB
  • sloc: cpp: 79,385; ansic: 75,071; lisp: 59,263; xml: 31,196; python: 22,406; sh: 8,159; yacc: 3,872; perl: 3,507; asm: 1,587; lex: 1,408; makefile: 1,048; tcl: 457; awk: 199; php: 53; csh: 50
file content (19 lines) | stat: -rwxr-xr-x 709 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/sh

srcdir=${srcdir:-.}
set -ux

MAKEFILE_MD5=`find $srcdir -name GNUmakefile | grep -v '^./GNUmakefile$' | sort | md5sum | cut -b 1-32`
CONFIGURE_INPUT_MD5=`cat $srcdir/config.make.in $srcdir/config.hh.in $srcdir/GNUmakefile.in | md5sum | cut -b 1-32`
CONFIGURE_OPTIONS_MD5=`echo "$@" | tr ' ' '\n' | sed 's/  */ /g' | grep '.' | sort -u | md5sum | cut -b 1-32`

CONFIGURE_CHECKSUM_FILE=configure.checksum
CONFIGURE_CHECKSUM="$MAKEFILE_MD5$CONFIGURE_INPUT_MD5$CONFIGURE_OPTIONS_MD5"

if test `cat $CONFIGURE_CHECKSUM_FILE` = "$CONFIGURE_CHECKSUM" ; then
  exit 0
fi

( set +ux; echo Invoking configure...; $srcdir/configure "$@" ) || exit 1
printf "%s" $CONFIGURE_CHECKSUM > $CONFIGURE_CHECKSUM_FILE