diff options
author | Marco Sirabella <marco@sirabella.org> | 2021-05-22 14:30:42 -0400 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2022-04-10 21:25:50 +0200 |
commit | bfe1074c3c21d90720a1df8ec8e416d09875092c (patch) | |
tree | 8d37b394395140eecff2727c0dbf5b0b0c787bae /eclass/common-lisp-3.eclass | |
parent | cdrom.eclass: fix tab (diff) | |
download | gentoo-bfe1074c3c21d90720a1df8ec8e416d09875092c.tar.gz gentoo-bfe1074c3c21d90720a1df8ec8e416d09875092c.tar.bz2 gentoo-bfe1074c3c21d90720a1df8ec8e416d09875092c.zip |
eclass/common-lisp-3: Properly escape recursive install files
This is a bit of a roundabout way to do it, but since we want to pass
the results of `find` to a bash function, this is what we need to do.
All of these functions are a bit convoluted, I believe something similar
could be hacked together that looks like `find -type f -name '*.lisp'
-exec doins` (or xargs) without the recursive calling or escaping mess
Signed-off-by: Marco Sirabella <marco@sirabella.org>
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Diffstat (limited to 'eclass/common-lisp-3.eclass')
-rw-r--r-- | eclass/common-lisp-3.eclass | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/eclass/common-lisp-3.eclass b/eclass/common-lisp-3.eclass index 5314e391db8f..df624d51607c 100644 --- a/eclass/common-lisp-3.eclass +++ b/eclass/common-lisp-3.eclass @@ -127,7 +127,9 @@ common-lisp-install-sources() { if [[ -f ${path} ]] ; then common-lisp-install-one-source ${fpredicate} "${path}" "$(dirname "${path}")" elif [[ -d ${path} ]] ; then - common-lisp-install-sources -t ${ftype} $(find "${path}" -type f) + local files + readarray -d '' files < <(find "${path}" -type f -print0 || die "cannot traverse ${path}" ) + common-lisp-install-sources -t ${ftype} "${files[@]}" || die else die "${path} is neither a regular file nor a directory" fi |