dnl This Source Code Form is subject to the terms of the Mozilla Public dnl License, v. 2.0. If a copy of the MPL was not distributed with this dnl file, You can obtain one at http://mozilla.org/MPL/2.0/. AC_DEFUN([MOZ_RUST_SUPPORT], [ MOZ_PATH_PROG(RUSTC, rustc) if test -n "$RUSTC"; then AC_MSG_CHECKING([rustc version]) RUSTC_VERSION=`$RUSTC --version | cut -d ' ' -f 2` # Parse out semversion elements. _RUSTC_MAJOR_VERSION=`echo ${RUSTC_VERSION} | cut -d . -f 1` _RUSTC_MINOR_VERSION=`echo ${RUSTC_VERSION} | cut -d . -f 2` _RUSTC_EXTRA_VERSION=`echo ${RUSTC_VERSION} | cut -d . -f 3 | cut -d + -f 1` _RUSTC_PATCH_VERSION=`echo ${_RUSTC_EXTRA_VERSION} | cut -d '-' -f 1` AC_MSG_RESULT([$RUSTC_VERSION (v${_RUSTC_MAJOR_VERSION}.${_RUSTC_MINOR_VERSION}.${_RUSTC_PATCH_VERSION})]) fi MOZ_ARG_ENABLE_BOOL([rust], [ --enable-rust Include Rust language sources], [MOZ_RUST=1], [MOZ_RUST= ]) if test -z "$RUSTC" -a -n "$MOZ_RUST"; then AC_MSG_ERROR([Rust compiler not found. To compile rust language sources, you must have 'rustc' in your path. See http://www.rust-lang.org/ for more information.]) fi if test -n "$MOZ_RUST" && test -z "$_RUSTC_MAJOR_VERSION" -o \ "$_RUSTC_MAJOR_VERSION" -lt 1 -o \ \( "$_RUSTC_MAJOR_VERSION" -eq 1 -a "$_RUSTC_MINOR_VERSION" -lt 4 \); then AC_MSG_ERROR([Rust compiler ${RUSTC_VERSION} is too old. To compile Rust language sources please install at least version 1.4 of the 'rustc' toolchain and make sure it is first in your path. You can verify this by typing 'rustc --version'.]) fi AC_SUBST(MOZ_RUST) ])