--- file_not_specified_in_diff +++ file_not_specified_in_diff @@ -, +, @@ --- a/eclass/webapp.eclass +++ a/eclass/webapp.eclass @@ -83,6 +83,19 @@ fi } +webapp_checkdirexists() { + debug-print-function $FUNCNAME $* + + local my_prefix=${2:+${2}/} + + if [[ ! -d "${my_prefix}${1}" ]]; then + msg="ebuild fault: dir '${1}' not found" + eerror "$msg" + eerror "Please report this as a bug at http://bugs.gentoo.org/" + die "$msg" + fi +} + webapp_check_installedat() { debug-print-function $FUNCNAME $* ${WEBAPP_CONFIG} --show-installed -h localhost -d "${INSTALL_DIR}" 2> /dev/null @@ -236,7 +249,7 @@ cp "${2}" "${D}/${MY_APPDIR}/postupgrade-${1}.txt" } -# helper for webapp_serverowned() +# helpers for webapp_serverowned() _webapp_serverowned() { debug-print-function $FUNCNAME $* @@ -248,6 +261,17 @@ echo "${my_file}" >> "${D}/${WA_SOLIST}" } +_webapp_recursive_serverowned() { + debug-print-function $FUNCNAME $* + + webapp_checkdirexists "${1}" "${D}" + local my_dir="$(webapp_strip_appdir "${1}")" + my_dir="$(webapp_strip_cwd "${my_dir}")" + + elog "(server recursively owned) ${my_dir}" + echo "${my_dir}" >> "${D}/${WA_SODLIST}" +} + # @FUNCTION: webapp_serverowned # @USAGE: [-R] [more files ...] # @DESCRIPTION: @@ -257,14 +281,11 @@ webapp_serverowned() { debug-print-function $FUNCNAME $* - local a m + local m if [[ "${1}" == "-R" ]]; then shift for m in "$@"; do - find "${D}${m}" | while read a; do - a=$(webapp_strip_d "${a}") - _webapp_serverowned "${a}" - done + _webapp_recursive_serverowned "${m}" done else for m in "$@"; do