Thank you, it works. On Sun, Nov 1, 2009 at 4:36 PM, Michael Wild <them...@gmail.com> wrote:
> > On 1. Nov, 2009, at 16:27 , elizabeta petreska wrote: > > Hello >> >> I am using Windows ansd Cmake 2.6. I am invoking CMake from command window >> which has set some environment variables. The environment variables are >> visible only the during the lifetime of the command window. >> I am using the environment variables in many places through my >> cmakelists.txt , for example in INCLUDE_DIRECTORIES, LINK_LIBRARIES etc. >> The >> environment variables are mainly set with file path strings. >> >> Problem : >> When I am working in Visual Studio on my project, if my cmakelists.txt for >> the project is changed, Cmake is rerun from Visual Studio. >> Because Cmake is run from Visual Studio , and not the shell where the >> environment variables are set , it can't recognize the environment >> variables. How to overcome this ? >> Thanks >> > > Somewhere short after the PROJECT command, put something like this: > > foreach(_var VAR1 VAR2 VAR3 VAR4) > if(NOT DEFINED ${_var}) > set(${_var} "$ENV{${_var}}" CACHE INTERNAL "This is my super variable > ${_var}") > endif() > endforeach() > > This will initialize internal cache variables with the values from the > environment, and then in subsequent runs use the values from the cache. > > > HTH > > Michael >
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake