yann@182: #!/bin/sh yann@182: yann@182: VERSION=$(cat version) yann@182: DATE=$(date +%Y%m%d) yann@182: yann@183: PREFIX_DEFAULT=/usr/local yann@182: yann@182: BINDIR_set= yann@182: LIBDIR_set= yann@182: DOCDIR_set= yann@182: MANDIR_set= yann@185: LOCAL_set= yann@182: yann@182: get_optval(){ yann@182: local ret yann@182: case "$1" in yann@182: --*=?*) yann@193: echo "${1}" |cut -d '=' -f 2- yann@182: ret=0 yann@182: ;; yann@182: *) yann@182: echo "${2}" yann@182: ret=1 yann@182: ;; yann@182: esac yann@182: return ${ret} yann@182: } yann@182: yann@182: set_prefix() { yann@182: local ret yann@182: PREFIX=$(get_optval "$1" "$2") yann@182: ret=$? yann@182: [ -z "${BINDIR_set}" ] && BINDIR="${PREFIX}/bin" yann@185: [ -z "${LIBDIR_set}" ] && LIBDIR="${PREFIX}/lib/ct-ng-${VERSION}" yann@185: [ -z "${DOCDIR_set}" ] && DOCDIR="${PREFIX}/share/doc/ct-ng-${VERSION}" yann@185: [ -z "${MANDIR_set}" ] && MANDIR="${PREFIX}/share/man/man1" yann@182: return ${ret} yann@182: } yann@182: yann@182: set_bindir() { yann@182: local ret yann@182: BINDIR=$(get_optval "$1" "$2") yann@182: ret=$? yann@182: BINDIR_set=1 yann@182: return ${ret} yann@182: } yann@182: yann@182: set_libdir() { yann@182: local ret yann@182: LIBDIR=$(get_optval "$1" "$2") yann@182: ret=$? yann@182: LIBDIR_set=1 yann@182: return ${ret} yann@182: } yann@182: yann@182: set_docdir() { yann@182: local ret yann@182: DOCDIR=$(get_optval "$1" "$2") yann@182: ret=$? yann@182: DOCDIR_set=1 yann@182: return ${ret} yann@182: } yann@182: yann@182: set_mandir() { yann@182: local ret yann@182: MANDIR=$(get_optval "$1" "$2") yann@182: ret=$? yann@182: MANDIR_set=1 yann@182: return ${ret} yann@182: } yann@182: yann@183: do_help() { yann@183: cat <<__EOF__ yann@197: \`configure' configures crosstool-NG ${VERSION} to adapt to many kind of systems. yann@183: yann@183: USAGE: ./configure [OPTION]... yann@183: yann@183: Defaults for the options are specified in brackets. yann@183: yann@183: Configuration: yann@183: -h, --help display this help and exit yann@185: --prefix=PREFIX install files in PREFIX [${PREFIX_DEFAULT}] yann@185: --local don't install, and use current directory yann@183: yann@183: By default, \`make install' will install all the files in yann@183: \`${PREFIX_DEFAULT}/bin', \`${PREFIX_DEFAULT}/lib' etc. You can specify yann@183: an installation prefix other than \`${PREFIX_DEFAULT}' using \`--prefix', yann@183: for instance \`--prefix=\${HOME}'. yann@183: yann@183: For better control, use the options below. yann@183: yann@183: Fine tuning of the installation directories: yann@183: --bindir=DIR user executables [PREFIX/bin] yann@183: --libdir=DIR object code libraries [PREFIX/lib] yann@183: --docdir=DIR info documentation [PREFIX/share/doc] yann@183: --mandir=DIR man documentation [PREFIX/share/man] yann@183: __EOF__ yann@183: } yann@183: yann@182: while [ $# -ne 0 ]; do yann@182: case "$1" in yann@182: --prefix*) set_prefix "$1" "$2" && shift || shift 2;; yann@182: --bindir*) set_bindir "$1" "$2" && shift || shift 2;; yann@182: --libdir*) set_libdir "$1" "$2" && shift || shift 2;; yann@182: --docdir*) set_docdir "$1" "$2" && shift || shift 2;; yann@182: --mandir*) set_mandir "$1" "$2" && shift || shift 2;; yann@185: --local) LOCAL_set=1; shift;; yann@183: --help|-h) do_help; exit 0;; yann@183: *) do_help; exit 1;; yann@182: esac yann@182: done yann@182: yann@185: [ -z "${PREFIX}" ] && set_prefix "" "${PREFIX_DEFAULT}" yann@185: if [ "${LOCAL_set}" = "1" ]; then yann@185: set_prefix "" $(pwd) yann@185: set_bindir "" $(pwd) yann@185: set_libdir "" $(pwd) yann@185: set_docdir "" $(pwd)/docs yann@185: set_mandir "" $(pwd)/docs yann@185: fi yann@183: yann@182: sed -r -e "s,@@BINDIR@@,${BINDIR},g;" \ yann@182: -e "s,@@LIBDIR@@,${LIBDIR},g;" \ yann@182: -e "s,@@DOCDIR@@,${DOCDIR},g;" \ yann@182: -e "s,@@MANDIR@@,${MANDIR},g;" \ yann@182: -e "s,@@VERSION@@,${VERSION},g;" \ yann@182: -e "s,@@DATE@@,${DATE},g;" \ yann@185: -e "s,@@LOCAL@@,${LOCAL_set},g;" \ yann@185: Makefile.in >Makefile yann@185: yann@185: cat <<__EOF__ yann@197: crosstool-NG configured as follows: yann@185: PREFIX="${PREFIX}" yann@185: BINDIR="${BINDIR}" yann@185: LIBDIR="${LIBDIR}" yann@185: DOCDIR="${DOCDIR}" yann@185: MANDIR="${MANDIR}" yann@185: __EOF__