ESROCOS / buildconf

In this repository all the neccessary files are stored to build an esrocos environment with autoproj
0 stars 0 forks source link

Sourcing env.sh multiple times #24

Open mmunoz-gmv opened 6 years ago

mmunoz-gmv commented 6 years ago

The variables generated by the init.rb script in env.sh are set like this:

if test -z "$CMAKE_PREFIX_PATH"; then
  CMAKE_PREFIX_PATH="/home/esrocos/esrocos_workspace/install"
else
  CMAKE_PREFIX_PATH="/home/esrocos/esrocos_workspace/install:$CMAKE_PREFIX_PATH"
fi
export CMAKE_PREFIX_PATH

This causes that, when env.sh is sourced more than once, paths are appended to the environment variables several times.

~/esrocos_workspace$ printenv PYTHONPATH
/home/esrocos/.local/lib/python3.5/site-packages:/home/esrocos/.local/lib/python3.5/site-packages:/home/esrocos/.local/lib/python3.5/site-packages:/home/esrocos/.local/lib/python3.5/site-packages:/home/esrocos/tool-inst/include/ocarina/runtime/python:/home/esrocos/tool-inst/lib:

If a variable is expected to contain a list of paths, for instance PATH, this is harmless. But if it is expected to contain a single path, for instance CMAKE_PREFIX_PATH, it causes problems. There should be a way to define the variables in init.rb so that the path is not appended, but I couldn't find it. Any suggestions?

Kynneb commented 6 years ago

Good question - this is really an autoproj issue I think.

mmunoz-gmv commented 6 years ago

Reported in the autoproj repo.

mmunoz-gmv commented 6 years ago

Actually, this comes from the init.rb in the package set. It's probably not an autoproj issue, but we're using a wrong autoproj command (env_inherit).