True, but that raises (at least) two questions: 1) What's the use of the variable MPI_COMPILER if it cannot be used to set the C/C++ compiler.
2) I know how to handle MPI_COMPILE_FLAGS - use add_definitions(); MPI_INCLUDE_PATH - use include_directories(); MPI_LIBRARIES - use target_link_libraries(). But how do I handle MPI_LINK_FLAGS? Regards, Marcel Loose. On Wed, 2010-05-26 at 17:38 +0200, Michael Wild wrote: > On 26. May, 2010, at 17:20 , Marcel Loose wrote: > > > Hi all, > > > > I was wondering how one should use find_package(MPI) to properly set the > > C/C++ compiler(s). Normally, you call find_package() after the project() > > command. However, by that time the CMAKE_<LANG>_COMPILER cache variables > > have already been set. Should one FORCE these cache variables to the > > value of MPI_COMPILER? > > > > I vaguely remember that setting CMAKE_<LANG>_COMPILER after the > > project() statement was a definite no-no, because all kinds of tests, > > executed by the project() command, are done with the default C/C++ > > compilers. > > > > Best regards, > > Marcel Loose. > > > Usually mpiCC and cohorts are just wrapper scripts which add appropriate include directories and libraries to the command line. If I remember correctly, FindMPI.cmake detects those and provides them via MPI_COMPILE_FLAGS, MPI_INCLUDE_PATH, MPI_LINK_FLAGS and MPI_LIBRARIES. So, you actually don't need to set the compiler to one of the MPI compiler wrappers. > > 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
