diff options
Diffstat (limited to 'subr.ex')
-rw-r--r-- | subr.ex/ex_rtl_configure.subr | 44 |
1 files changed, 13 insertions, 31 deletions
diff --git a/subr.ex/ex_rtl_configure.subr b/subr.ex/ex_rtl_configure.subr index c5f00611..bd448213 100644 --- a/subr.ex/ex_rtl_configure.subr +++ b/subr.ex/ex_rtl_configure.subr @@ -104,7 +104,6 @@ ex_rtl_configure() { # ex_rtl_configure_cmake() - configure CMake build # @_ar: ar(1) command name or pathname # @_cc: C compiler command name or pathname -# @_ccache: ccache(1) command name or pathname or "" # @_cmake: CMake command name or pathname # @_cxx: C++ compiler command name or pathname # @_ld: ld(1) command name or pathname @@ -134,18 +133,18 @@ ex_rtl_configure() { # Returns: zero (0) on success, non-zero (>0) on failure # ex_rtl_configure_cmake() { - local _ercc_ar="${1}" _ercc_cc="${2}" _ercc_ccache="${3}" _ercc_cmake="${4}" \ - _ercc_cxx="${5}" _ercc_ld="${6}" _ercc_pkg_config="${7}" _ercc_python="${8}" \ - _ercc_ranlib="${9}" \ - _ercc_ignored="${10}" \ - _ercc_build_kind="${11}" _ercc_build_type="${12}" \ - _ercc_cmake_args="${13}" _ercc_cmake_args_extra="${14}" \ - _ercc_prefix="${15}" _ercc_subdir="${16}" \ - _ercc_system_name="${17}" _ercc_system_processor="${18}" \ - _ercc_ignored="${19}" \ - _ercc_cflags="${20}" _ercc_cflags_extra="${21}" _ercc_cppflags="${22}" \ - _ercc_cppflags_extra="${23}" _ercc_cxxflags="${24}" _ercc_cxxflags_extra="${25}" \ - _ercc_ldflags="${26}" _ercc_ldflags_extra="${27}" _ercc_pkg_config_libdir="${28}" \ + local _ercc_ar="${1}" _ercc_cc="${2}" _ercc_cmake="${3}" \ + _ercc_cxx="${4}" _ercc_ld="${5}" _ercc_pkg_config="${6}" _ercc_python="${7}" \ + _ercc_ranlib="${8}" \ + _ercc_ignored="${9}" \ + _ercc_build_kind="${10}" _ercc_build_type="${11}" \ + _ercc_cmake_args="${12}" _ercc_cmake_args_extra="${13}" \ + _ercc_prefix="${14}" _ercc_subdir="${15}" \ + _ercc_system_name="${16}" _ercc_system_processor="${17}" \ + _ercc_ignored="${18}" \ + _ercc_cflags="${19}" _ercc_cflags_extra="${20}" _ercc_cppflags="${21}" \ + _ercc_cppflags_extra="${22}" _ercc_cxxflags="${23}" _ercc_cxxflags_extra="${24}" \ + _ercc_ldflags="${25}" _ercc_ldflags_extra="${26}" _ercc_pkg_config_libdir="${27}" \ _ercc_cmd_name="" _ercc_cmake_args_auto="" _ercc_rc=0 _ercc_vname="" _ercc_vval="" [ "${_ercc_cflags_extra:+1}" = 1 ] && _ercc_cflags="${_ercc_cflags:+${_ercc_cflags} }${_ercc_cflags_extra}"; @@ -159,18 +158,7 @@ ex_rtl_configure_cmake() { [ "${_ercc_python:+1}" = 1 ] && export PYTHON="${_ercc_python}"; for _ercc_vname in ar cc cxx ld pkg_config ranlib; do - case "${_ercc_vname}" in - cc|cxx) - _ercc_vname="_ercc_${_ercc_vname}"; - if [ "${_ercc_ccache:+1}" = 1 ]; then - eval ${_ercc_vname}="\${${_ercc_vname}#${_ercc_ccache} }"; - fi; - ;; - - *) - _ercc_vname="_ercc_${_ercc_vname}"; - ;; - esac; + _ercc_vname="_ercc_${_ercc_vname}"; if eval [ '"${'"${_ercc_vname}"':+1}"' = 1 ]\ && eval [ '"${'"${_ercc_vname}"'#/}"' = '"${'"${_ercc_vname}"'}"' ]; then @@ -183,16 +171,10 @@ ex_rtl_configure_cmake() { rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_AR=${_ercc_ar}" "|"; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_BUILD_TYPE=${_ercc_build_kind}" "|"; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_C_COMPILER=${_ercc_cc}" "|"; - if [ "${_ercc_ccache:+1}" = 1 ]; then - rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_C_COMPILER_LAUNCHER=${_ercc_ccache}" "|"; - fi; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_C_FLAGS=${_ercc_cflags}" "|"; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_COMMAND=${_ercc_cmake}" "|"; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_CPP_FLAGS=${_ercc_cppflags}" "|"; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_CXX_COMPILER=${_ercc_cxx}" "|"; - if [ "${_ercc_ccache:+1}" = 1 ]; then - rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_CXX_COMPILER_LAUNCHER=${_ercc_ccache}" "|"; - fi; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_CXX_FLAGS=${_ercc_cxxflags}" "|"; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_EXE_LINKER_FLAGS=${_ercc_ldflags}" "|"; rtl_lconcat \$_ercc_cmake_args_auto "-DCMAKE_FIND_ROOT_PATH=${_ercc_prefix}" "|"; |