summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Sirabella <marco@sirabella.org>2021-05-22 14:30:42 -0400
committerUlrich Müller <ulm@gentoo.org>2022-04-10 21:25:50 +0200
commitbfe1074c3c21d90720a1df8ec8e416d09875092c (patch)
tree8d37b394395140eecff2727c0dbf5b0b0c787bae /eclass/common-lisp-3.eclass
parentcdrom.eclass: fix tab (diff)
downloadgentoo-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.eclass4
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