123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #!/bin/bash
- log() {
- echo "[automagic] " $@
- }
- die() {
- log "Fatal: "$@
- exit 1
- }
- if [[ ! -d platform/unix ]]; then
- log "Can't find the 'plaform/unix' folder, make sure you run this from the root of the repository."
- exit 1
- fi
- AUTOHEADER=${AUTOHEADER:-$(which autoheader)}
- AUTOCONF=${AUTOCONF:-$(which autoconf)}
- LIBTOOLIZE=${LIBTOOLIZE:-$(which libtoolize)}
- ACLOCAL=${ACLOCAL:-$(which aclocal)}
- AUTOMAKE=${AUTOMAKE:-$(which automake)}
- [[ -x ${AUTOHEADER} ]] || die "Could not find autoheader. Install autoconf."
- [[ -x ${AUTOCONF} ]] || die "Could not find autoconf."
- [[ -x ${LIBTOOLIZE} ]] || die "Could not find libtoolize. Install libtool."
- [[ -x ${ACLOCAL} ]] || die "Could not find aclocal. Install automake."
- [[ -x ${AUTOMAKE} ]] || die "Could not find automake."
- automagic() {
- log "Copying files..." >&2
- cp platform/unix/configure.ac .
- cp platform/unix/Makefile.am .
- log "Running genmodules..." >&2
- if ! bash platform/unix/genmodules "$1"; then
- echo "You should be doing this from the root directory of the project."
- exit 1
- fi
- log "Running autoheader..." >&2
- ${AUTOHEADER} 2>&1 || return 1 # Gimmie config.h.in
- log "Running libtoolize..." >&2
- ${LIBTOOLIZE} --force 2>&1 || return 1
- log "Running aclocal..." >&2
- ${ACLOCAL} 2>&1 || return 1
- log "Running autoconf..." >&2
- ${AUTOCONF} 2>&1 || return 1
- log "Running automake..." >&2
- ${AUTOMAKE} -a 2>&1 || return 1
- }
- if [[ $1 == "-d" ]]; then
- shift 1
- automagic "$@" 2>&1
- else
- (automagic "$@" > /dev/null) 2>&1
- fi
- if [[ $? -eq 1 ]]; then
- log "Failed, sadface."
- log "You can make this script more verbose running it in debug mode (-d)"
- log "This is generally a configuration error (I'm looking at you aclocal)"
- exit 1
- else
- log "Success, carry on configuring."
- fi
|