On Thu, 1 Dec 2016, Michael Olbrich wrote:
> Hi,
>
> On Wed, Nov 30, 2016 at 03:46:14AM -0500, Jon Ringle wrote:
> > I found that this is being caused by commit
> > 30b9267e35eea1c2edb4da0231a428bfa25b6766
> >
> > Is there a way that the stderr to stdout redirect could be implemented
> > conditionally so that I can still have stderr segregated if I want to?
>
> Yes. It's really only necessary if output synchronization is enabled. So,
> we could set some variable in setup_parallel() to '1' or '2' depending on
> PTXDIST_OUTPUT_SYNC and then use it instead of '2>&1'.
I did some experimenting with this, and when I use a variable to hold
"2>&1", it works fine for the *) case, but for the python*) case where the
ptxd_eval is surrounded by ( ), bash chokes.
Here's what I was trying:
ptxd_make_world_compile() {
output_redirect="2>&1";
ptxd_make_world_init &&
if [ -z "${pkg_build_dir}" ]; then
# no build dir -> assume the package has nothing to build.
return
fi &&
case "${pkg_conf_tool}" in
python*)
(
ptxd_eval \
cd "${pkg_build_dir}" '&&' \
"${pkg_path}" \
"${pkg_env}" \
"${pkg_make_env}" \
"${ptx_build_python}" \
setup.py \
"${pkg_make_opt}"
) ${output_redirect}
;;
*)
ptxd_eval \
"${pkg_path}" \
"${pkg_env}" \
"${pkg_make_env}" \
"${MAKE}" -C "${pkg_build_dir}" \
"${pkg_make_opt}" \
"${pkg_make_par}" ${output_redirect}
;;
esac
}
$ ~/git/ptxdist/bin/ptxdist --force compile testprog >/dev/null
/home/jringle-admin/git/ptxdist/scripts/lib/ptxd_make_world_compile.sh:
line 35: syntax error near unexpected token `${output_redirect}'
/home/jringle-admin/git/ptxdist/scripts/lib/ptxd_make_world_compile.sh:
line 35: ` ) ${output_redirect}'
ptxdist: error: failed to source lib:
/home/jringle-admin/git/ptxdist/scripts/lib/ptxd_make_world_compile.sh
If I remove the variable redirect from the offending line and leave the
variable redirect in the *) case, bash is fine with it and it does what is
expected.
-Jon
_______________________________________________
ptxdist mailing list
[email protected]