summaryrefslogtreecommitdiffhomepage
path: root/subr/rtl.subr
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-02-03 04:40:46 +0100
committerLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-02-03 04:52:55 +0100
commitbd6eba4b100a068999822f1c54933adf55fa75e9 (patch)
treec6321361e4d52d8e69153f6a6cfde46533b3a664 /subr/rtl.subr
parent7fe25dbd38d2c08abdef9db1ec9cb61122b54da5 (diff)
downloadmidipix_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.subr40
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