scripts/build/companion_tools.sh
author Anthony Foiani <anthony.foiani@gmail.com>
Thu Apr 26 19:55:59 2012 -0600 (2012-04-26)
changeset 2939 58974be61289
permissions -rw-r--r--
Allow multi-word "install" command.

Autoconf can determine that the correct install command includes flags,
e.g., "/usr/bin/install -c". When using this as a command, we can't
enclose the value in double-quotes, as that makes some shells use the
whole expression as a filename:

# this is the value returned by autoconf and stored in CT_install
$ ins="/usr/bin/install -c"

# if we call it with quotes, the command is not found
$ "${ins}"
bash: /usr/bin/install -c: No such file or directory

# removing the quotes lets it work as expected
$ ${ins}
/usr/bin/install: missing file operand
Try `/usr/bin/install --help' for more information.

Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
     1 # Wrapper to build the companion tools facilities
     2 
     3 # List all companion tools facilities, and parse their scripts
     4 CT_COMP_TOOLS_FACILITY_LIST=
     5 for f in "${CT_LIB_DIR}/scripts/build/companion_tools/"*.sh; do
     6     _f="$(basename "${f}" .sh)"
     7     _f="${_f#???-}"
     8     __f="CT_COMP_TOOLS_${_f}"
     9     if [ "${!__f}" = "y" ]; then
    10         CT_DoLog DEBUG "Enabling companion tools '${_f}'"
    11         . "${f}"
    12         CT_COMP_TOOLS_FACILITY_LIST="${CT_COMP_TOOLS_FACILITY_LIST} ${_f}"
    13     else
    14         CT_DoLog DEBUG "Disabling companion tools '${_f}'"
    15     fi
    16 done
    17 
    18 # Download the companion tools facilities
    19 do_companion_tools_get() {
    20     for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
    21         do_companion_tools_${f}_get
    22     done
    23 }
    24 
    25 # Extract and patch the companion tools facilities
    26 do_companion_tools_extract() {
    27     for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
    28         do_companion_tools_${f}_extract
    29     done
    30 }
    31 
    32 # Build the companion tools facilities
    33 do_companion_tools() {
    34     for f in ${CT_COMP_TOOLS_FACILITY_LIST}; do
    35         do_companion_tools_${f}_build
    36     done
    37 }
    38