On 04/13/2011 11:51 AM, Gabriele Greco wrote: > Hi, > > I've started using cmake on my projects since a few weeks so I'm still a > beginner. > > The system works very well I only have a problem. > > I need to have a directory inside the project tree included in the > command search path (the enviroment variable PATH). > > I tried with: > > set(ENV{PATH} "${PROJECT_SOURCE_DIR}/ext_bin/DFC:$ENV{PATH}") > > but as I found googling around this command works only in the "cmake" > stage, but not on the generated makefiles. > > There is a way to tell CMake to make a change to an enviroment variable > that is effective also inside the generated makefiles? > > -- > Gabriele Greco, DARTS Engineering
Wrap the command in a CMake-script. Something like this: foo_wrapper.cmake.in: --------------------- set(ENV{PATH} "@PROJECT_SOURCE_DIR@/ext_bin/DFC:$ENV{PATH}") execute_process(COMMAND foo) And then configure and run it like this: CMakeLists.txt: --------------- # ... configure_file(foo_wrapper.cmake.in "${CMAKE_CURRENT_BINARY_DIR}/foo_wrapper.cmake" @ONLY) add_custom_command(OUTPUT bar COMMAND "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/foo_wrapper.cmake" COMMENT "Creating bar") If you need to pass the script variables using the -D flags, make sure to pass them before the -P flag, otherwise they are silently ignored. I hope you get the idea. 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