diff options
author | Lucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de> | 2017-02-03 04:40:46 +0100 |
---|---|---|
committer | Lucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de> | 2017-02-03 04:52:55 +0100 |
commit | bd6eba4b100a068999822f1c54933adf55fa75e9 (patch) | |
tree | c6321361e4d52d8e69153f6a6cfde46533b3a664 /subr/rtl.subr | |
parent | 7fe25dbd38d2c08abdef9db1ec9cb61122b54da5 (diff) | |
download | midipix_build-bd6eba4b100a068999822f1c54933adf55fa75e9.tar.bz2 midipix_build-bd6eba4b100a068999822f1c54933adf55fa75e9.tar.xz |
build.sh: create dirs/symlinks via install_files().
subr/{pkg_install,rtl}.subr: moved pkgp_install_files() to rtl.subr.
Diffstat (limited to 'subr/rtl.subr')
-rw-r--r-- | subr/rtl.subr | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/subr/rtl.subr b/subr/rtl.subr index be3efa43..90faa3c9 100644 --- a/subr/rtl.subr +++ b/subr/rtl.subr @@ -55,6 +55,46 @@ insecure_mkdir() { done; }; +install_files() { + if [ "${1}" = "-v" ]; then + _if_verbose="${1}"; shift; + fi; + while [ ${#} -gt 0 ]; do + case "${1}" in + @*=*) + __ln_target="${1%=*}"; + __ln_target="${__ln_target#@}"; + __ln_fname="${1#*=}"; + if [ -e ${__ln_fname} ]; then + if [ ${_if_verbose:-0} -eq 1 ]; then + echo secure_rm ${__ln_fname}; + fi; + secure_rm ${__ln_fname}; + fi; + if [ ${_if_verbose:-0} -eq 1 ]; then + echo ln -sf -- ${__ln_target} ${PKG_PREFIX:+${PKG_PREFIX}/}${__ln_fname}; + fi; + ln -sf -- ${__ln_target} ${PKG_PREFIX:+${PKG_PREFIX}/}${__ln_fname}; + ;; + /=*) + __mkdir_fname="${1#/=}"; + if [ ${_if_verbose:-0} -eq 1 ]; then + echo insecure_mkdir ${PKG_PREFIX:+${PKG_PREFIX}/}${__mkdir_fname}; + fi; + insecure_mkdir ${PKG_PREFIX:+${PKG_PREFIX}/}${__mkdir_fname}; + ;; + *) + __file_fname_src="${1%=*}"; + __file_fname_dst="${1#*=}"; + if [ ${_if_verbose:-0} -eq 1 ]; then + echo cp -pP -- ${__file_fname_src} ${PKG_PREFIX:+${PKG_PREFIX}/}${__file_fname_dst}; + fi; + cp -pP -- ${__file_fname_src} ${PKG_PREFIX:+${PKG_PREFIX}/}${__file_fname_dst}; + ;; + esac; shift; + done; unset _if_verbose; +}; + match_list() { _ml_cmp="${3}"; push_IFS "${2}"; set -- ${1}; pop_IFS; while [ ${#} -gt 0 ]; do |