#!/bin/sh # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. # This script provides an execution environment for mozconfig scripts. # This script is not meant to be called by users. Instead, some # higher-level driver invokes it and parses the machine-tailored output. set -e ac_add_options() { for _mozconfig_opt; do case "$_mozconfig_opt" in --target=*) echo "------BEGIN_MK_OPTION" echo $_mozconfig_opt | sed s/--target/CONFIG_GUESS/ echo "------END_MK_OPTION" ;; esac echo "------BEGIN_AC_OPTION" echo $_mozconfig_opt echo "------END_AC_OPTION" done } ac_add_app_options() { _mozconfig_app=$1 shift echo "------BEGIN_AC_APP_OPTION" echo $_mozconfig_app echo "$*" echo "------END_AC_APP_OPTION" } mk_add_options() { for _mozconfig_opt; do echo "------BEGIN_MK_OPTION" echo $_mozconfig_opt # Remove any leading "export" opt=${_mozconfig_opt#export} case "$_mozconfig_opt" in *\?=*) _mozconfig_op="?=" ;; *:=*) _mozconfig_op=":=" ;; *+=*) _mozconfig_op="+=" ;; *=*) _mozconfig_op="=" ;; esac # Remove the operator and the value that follows _mozconfig_name=${_mozconfig_opt%%${_mozconfig_op}*} # Note: $(echo ${_mozconfig_name}) strips the variable from any leading and trailing # whitespaces. eval "$(echo ${_mozconfig_name})_IS_SET=1" echo "------END_MK_OPTION" done } echo "------BEGIN_ENV_BEFORE_SOURCE" $3 $4 echo "------END_ENV_BEFORE_SOURCE" echo "------BEGIN_BEFORE_SOURCE" set echo "------END_BEFORE_SOURCE" topsrcdir=$1 . $2 unset topsrcdir echo "------BEGIN_AFTER_SOURCE" set echo "------END_AFTER_SOURCE" echo "------BEGIN_ENV_AFTER_SOURCE" $3 $4 echo "------END_ENV_AFTER_SOURCE"