Re: [CMake] [ANNOUNCE] CMake 3.4.0-rc1 is now ready!
On 10/06/2015 09:42 AM, Robert Maynard wrote: I am proud to announce the first CMake 3.4 release candidate. This appears to have broken plplot's ada build on Fedora. Previous good (cmake 3.3.2): [ 22%] Building Ada object examples/ada/CMakeFiles/x00a.dir/x00a.o cd /builddir/build/BUILD/plplot-5.11.1/fedora/examples/ada && /usr/bin/gnatgcc -I/builddir/build/BUILD/plplot-5.11.1/fedora/examples/ada -I/builddir/build/BUILD/plplot-5.11.1/bindings/ada-c /builddir/build/BUILD/plplot-5.11.1/examples/ada/x00a.adb -o CMakeFiles/x00a.dir/x00a.o New bad: [ 22%] Building Ada object examples/ada/CMakeFiles/x00a.dir/x00a.o cd /builddir/build/BUILD/plplot-5.11.1/fedora/examples/ada && /usr/bin/gnatgcc -c /builddir/build/BUILD/plplot-5.11.1/examples/ada/x00a.adb -o CMakeFiles/x00a.dir/x00a.o x00a.adb:28:05: file "plplot_auxiliary.ads" not found x00a.adb:29:05: file "plplot_traditional.ads" not found examples/ada/CMakeFiles/x00a.dir/build.make:65: recipe for target 'examples/ada/CMakeFiles/x00a.dir/x00a.o' failed So we're now missing the -I include dir options. That's all I have for now, I'll try to take a closer look later. -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA/CoRA DivisionFAX: 303-415-9702 3380 Mitchell Lane or...@cora.nwra.com Boulder, CO 80301 http://www.cora.nwra.com -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Release and Debug build linking
So if this is the case, how does one "write correctly" the find/config module so that both debug and release libraries are found? I've got a library I depend on whose maintainer may not have built the best Find module in the world. I've looked at https://cmake.org/Wiki/CMake/Tutorials/How_to_create_a_ProjectConfig.cmake_file already. It doesn't seem to address picking up both release and debug libraries. I gather from another example that the goal is to create a list of the form: optimized;foolib.lib;debug;foolibd.lib and provide that in the FOO_LIBRARY variable? -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Release and Debug build linking
CMake supports multi-config generators such as Visual Studio and Xcode for a long time. There are two flavors of config-modules (and find-modules), the legacy one which creates variables like MY_PACKAGE_LIBRARIES and the install-export kind which creates IMPORTED targets. Both kinds of modules support providing Debug and Release versions of the same library from a single find-module or config-module. So if your package's find-module or config-module is written correctly you don't need any if's just a single find_package(). Tamas On Tue, Oct 6, 2015 at 10:21 PM, Lee Butler wrote: > I am looking for a way to tell my project to link against external debug > libraries with a debug build and external release libraries with a release > build with Visual Studio. > > I sort of want to be able to say something like > if (BuildingReleaseConfig) > find_package(OtherPackage REQUIRED COMPONENTS one two three PATHS > OtherPkgDir/Release) > endif() > > if (BuildingDebugConfig) > find_package(OtherPackage REQUIRED COMPONENTS oned twod threed PATHS > OtherPkgDir/Debug) > endif() > > the idea is that the if () tells CMake which build configuration the > find_package results should go into. Is there any way to tell CMake what > to write into each VS configuration? > > I realize the traditional CMake way is to create only one build at a time > and specify CMAKE_BUILD_TYPE, but we seem to have stepped beyond that with > the Visual Studio generator. > > Lee > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake > -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] Release and Debug build linking
I am looking for a way to tell my project to link against external debug libraries with a debug build and external release libraries with a release build with Visual Studio. I sort of want to be able to say something like if (BuildingReleaseConfig) find_package(OtherPackage REQUIRED COMPONENTS one two three PATHS OtherPkgDir/Release) endif() if (BuildingDebugConfig) find_package(OtherPackage REQUIRED COMPONENTS oned twod threed PATHS OtherPkgDir/Debug) endif() the idea is that the if () tells CMake which build configuration the find_package results should go into. Is there any way to tell CMake what to write into each VS configuration? I realize the traditional CMake way is to create only one build at a time and specify CMAKE_BUILD_TYPE, but we seem to have stepped beyond that with the Visual Studio generator. Lee -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] FindCUDA discard any previous value of CUDA_USE_STATIC_CUDA_RUNTIME
Hello. I am using cmake 3.3.2. The following script sets the CUDA_USE_STATIC_CUDA_RUNTIME option, then finds the CUDA package. cmake_minimum_required(VERSION 3.3) option(CUDA_USE_STATIC_CUDA_RUNTIME OFF) set(CUDA_TOOLKIT_ROOT_DIR "d:/work/CUDAToolkit") message(STATUS CUDA_USE_STATIC_CUDA_RUNTIME=${CUDA_USE_STATIC_CUDA_RUNTIME}) find_package(CUDA) message(STATUS CUDA_USE_STATIC_CUDA_RUNTIME=${CUDA_USE_STATIC_CUDA_RUNTIME}) In the find_package, the variable CUDA_TOOLKIT_ROOT_DIR is compared to the variable CUDA_TOOLKIT_ROOT_DIR_INTERNAL (line 556). Since this variable is not defined, the cuda_unset_include_and_libraries function is called. This function wipes the CUDA_USE_STATIC_CUDA_RUNTIME option from the cache. In order to correctly set this variable, I need to restart change it back to OFF, then the FindCUDA script doesn't call cuda_unset_include_and_libraries function. Thibaut. -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] FindPNG can not find files to set PNG_PNG_INCLUDE_DIR, PNG_LIBRARY
I have libpng16.dll, libpng16.lib, and png.h Where should I put these files to cmake:FindPNG foud them? -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] [ANNOUNCE] CMake 3.4.0-rc1 is now ready!
I am proud to announce the first CMake 3.4 release candidate. Sources and binaries are available at: https://cmake.org/download/ Documentation is available at: https://cmake.org/cmake/help/v3.4 Release notes appear below and are also published at https://cmake.org/cmake/help/v3.4/release/3.4.html Some of the more significant features of CMake 3.4 are: * The "if()" command learned a new "TEST" operator that evaluates to true if a given test name has been defined by the "add_test()" command. See policy "CMP0064". * The "install(DIRECTORY)" command "DESTINATION" option learned to support "generator expressions". * The "install(FILES)" command "DESTINATION" option learned to support "generator expressions". * CMake learned to honor "*.manifest" source files with MSVC tools. Manifest files named as sources of ".exe" and ".dll" targets will be merged with linker-generated manifests and embedded in the binary. Deprecated and Removed Features: * The "CMakeExpandImportedTargets" module is now documented as deprecated. See module documentation for an explanation. * The "CMAKE_USE_RELATIVE_PATHS" variable no longer has any effect. Previously it was partially implemented and unreliable. CMake 3.4 Release Notes *** Changes made since CMake 3.3 include the following. New Features Generators -- * The "Visual Studio 14 2015" generator learned to select a Windows 10 SDK based on the value of the "CMAKE_SYSTEM_VERSION" variable and the SDKs available on the host. * CMake learned rudimentary support for the Apple Swift language. When using the "Xcode" generator with Xcode 6.1 or higher, one may enable the "Swift" language with the "enable_language()" command or the "project()" command (this is an error with other generators or when Xcode is too old). Then one may list ".swift" source files in targets for compilation. Commands * The "find_program()" command learned a "NAMES_PER_DIR" option to consider all given "NAMES" in each directory before moving on to the next directory. * The "get_filename_component()" command learned a new "BASE_DIR" subcommand. This is used to specify a base directory when calculating an absolute path from a relative path. * The "if()" command learned a new "TEST" operator that evaluates to true if a given test name has been defined by the "add_test()" command. See policy "CMP0064". * The "install(DIRECTORY)" command "DESTINATION" option learned to support "generator expressions". * The "install(FILES)" command "DESTINATION" option learned to support "generator expressions". * The "string()" command learned a new "APPEND" subcommand. Variables - * The Makefile Generators and the "Ninja" generator learned to add compiler launcher tools like distcc and ccache along with the compiler for "C" and "CXX" languages. See the "CMAKE__COMPILER_LAUNCHER" variable and "_COMPILER_LAUNCHER" target property for details. * New "CMAKE_LINK_SEARCH_START_STATIC" and "CMAKE_LINK_SEARCH_END_STATIC" variables were introduced to initialize the "LINK_SEARCH_START_STATIC" and "LINK_SEARCH_END_STATIC" target properties, respectively. Properties -- * Visual Studio Generators learned to support additonal target properties to customize projects for NVIDIA Nsight Tegra Visual Studio Edition: * "ANDROID_ANT_ADDITIONAL_OPTIONS" * "ANDROID_ARCH" * "ANDROID_ASSETS_DIRECTORIES" * "ANDROID_JAR_DEPENDENCIES" * "ANDROID_JAR_DIRECTORIES" * "ANDROID_JAVA_SOURCE_DIR" * "ANDROID_NATIVE_LIB_DEPENDENCIES" * "ANDROID_NATIVE_LIB_DIRECTORIES" * "ANDROID_PROCESS_MAX" * "ANDROID_PROGUARD" * "ANDROID_PROGUARD_CONFIG_PATH" * "ANDROID_SECURE_PROPS_PATH" * "ANDROID_SKIP_ANT_STEP" * "ANDROID_STL_TYPE" * The "ARCHIVE_OUTPUT_DIRECTORY", "LIBRARY_OUTPUT_DIRECTORY", and "RUNTIME_OUTPUT_DIRECTORY" target properties learned to support "generator expressions". * The "SOURCE_DIR" and "BINARY_DIR" target properties were introduced to allow project code to query where a target is defined. * The "OUTPUT_NAME" target property and its variants learned to support "generator expressions". * A "TARGET_MESSAGES" global property was added to tell the Makefile Generators whether to generate commands to print output after each target is completed. * On Windows with MS-compatible tools, CMake learned to optionally generate a module definition (".def") file for "SHARED" libraries. See the "WINDOWS_EXPORT_ALL_SYMBOLS" target property. Modules --- * The "ExternalProject" module "ExternalProject_Add()" function "GIT_SUBMODULES" option now also limits the set of submodules that are initialized in addition to the prior behavior of limiting the set of submodules that are updated. * The "ExternalProject" module learned new "USES_TERMINAL" arguments for giving steps exclusive terminal access. This is useful with the "Ninja" gener
[CMake] Multiple Executables for every target in Xcode
hello list, I am running Xcode (5 & 6) and using CMake to generate the Xcode project files. We have a lot of targets for our project and we were looking into ways of refactoring the Cmake codes in order to reduce the number of targets. For example we have a lot of plugins that we compile and each plugin is its own "project()" command. One of the things that we have noticed is that just about every "add_executable()" command results in 2 executable targets in the generated Xcode project. I was just wondering if anyone has seen anything like this. We are using CMake 3.3.1 on OS X (10.8/10.9/10.10). Thanks Mike Jackson -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Removing duplicate entries from CXXFLAGS
Hi Roman, I'm not necessarily only talking about CMAKE_CXX_FLAGS here. I define compile flags for my targets in a number of different ways. Like: find_package( ROOT COMPONENTS ${ROOT_LINK_COMPONENTS} REQUIRED ) include( ${ROOT_USE_FILE} ) ... add_definitions( ${ATLAS_DEFINITIONS} ) ... add_definitions( -Wno-unused-local-typedefs ) if( APPLE ) add_definitions( -Wno-tautological-undefined-compare ) add_definitions( -Wno-inconsistent-missing-override ) endif() ... include_directories( BEFORE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_INCLUDE_OUTPUT_DIRECTORY} ) if( ARG_INCLUDE_DIRS ) target_include_directories( ${libName} PUBLIC ${ARG_INCLUDE_DIRS} ) endif() The trickiest are the definitions that I pull in from external packages. For instance the second line in this example produces a *lot* of duplicate entries in the compilation flags. In this particular case the flags *are* defined like the following in the file that I include with ${ROOT_USE_FILE}: add_definitions(${ROOT_DEFINITIONS}) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ROOT_CXX_FLAGS}") Now, CMake definitely doesn't remove the duplicates that enter in all these ways. So now I was wondering what I could do to improve on the situation... Cheers, Attila > On 06 Oct 2015, at 12:58, Roman Bolshakov wrote: > > CMake performs deduplication of per-target flags for sure. > > However I'm not sure if CMAKE_CXX_FLAGS is deduplicated. But I consider this > variable as global flags for the whole project which is defined at topmost > CMakeLists.txt. If you need to specify some flags specifically for a target > use target_compile_options. > > — > Sent from Mailbox > > > On Mon, Oct 5, 2015 at 4:23 PM, Attila Krasznahorkay > wrote: > > Dear All, > > Let me try a simpler question this time. (I'm a bit disappointed that nobody > had any comments on my question about sub-projects.) > > I'm trying to clean up my project's build a bit. As it collects compilation > flags from a few separate places, by the time it finishes collecting > everything, the compilation commands are usually very long. As they have many > duplications. Like: > > -m64 -pipe -W > -Wall -Woverloaded-virtual -fsigned-char -fno-common -Qunused-arguments > -pthread -std=c++11 -Wno-deprecated-declaration > s -stdlib=libc++ -m64 -pipe -W -Wall -Woverloaded-virtual -fsigned-char > -fno-common -Qunused-arguments -pthread -std=c++ > 11 -Wno-deprecated-declarations -stdlib=libc++ -Wno-unused-local-typedefs > -Wno-tautological-undefined-compare -Wno-incon > sistent-missing-override -m64 -pipe -W -Wall -Woverloaded-virtual > -fsigned-char -fno-common -Qunused-arguments -pthread > -std=c++11 -Wno-deprecated-declarations -stdlib=libc++ -m64 -pipe -W -Wall > -Woverloaded-virtual -fsigned-char -fno-commo > n -Qunused-arguments -pthread -std=c++11 -Wno-deprecated-declarations > -stdlib=libc++ -m64 -pipe -W -Wall -Woverloaded-vi > rtual -fsigned-char -fno-common -Qunused-arguments -pthread -std=c++11 > -Wno-deprecated-declarations -stdlib=libc++ -m64 > -pipe -W -Wall -Woverloaded-virtual -fsigned-char -fno-common > -Qunused-arguments -pthread -std=c++11 -Wno-deprecated-dec > larations -stdlib=libc++ -m64 -pipe -fsigned-char -fno-common > -Qunused-arguments -pthread -std=c++11 -stdlib=libc++ > > Naturally it would help the build log reading tremendously if I could remove > the duplications from these lines. But I can't find a good way of doing it. > How could I weed out all the duplications in the CXXFLAGS associated to a > given target? > > Cheers, > Attila > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake > > -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] How to check if test exists
Hi, What is the best way to check if a test is already defined using function add_test? My initial though was that if() can be used for that purpose but, unfortunately, if (TEST ) is not supported for now. Thanks. Marc -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Removing duplicate entries from CXXFLAGS
CMake performs deduplication of per-target flags for sure. However I'm not sure if CMAKE_CXX_FLAGS is deduplicated. But I consider this variable as global flags for the whole project which is defined at topmost CMakeLists.txt. If you need to specify some flags specifically for a target use target_compile_options. — Sent from Mailbox On Mon, Oct 5, 2015 at 4:23 PM, Attila Krasznahorkay wrote: > Dear All, > Let me try a simpler question this time. (I'm a bit disappointed that nobody > had any comments on my question about sub-projects.) > I'm trying to clean up my project's build a bit. As it collects compilation > flags from a few separate places, by the time it finishes collecting > everything, the compilation commands are usually very long. As they have many > duplications. Like: > -m64 -pipe -W > -Wall -Woverloaded-virtual -fsigned-char -fno-common -Qunused-arguments > -pthread -std=c++11 -Wno-deprecated-declaration > s -stdlib=libc++ -m64 -pipe -W -Wall -Woverloaded-virtual -fsigned-char > -fno-common -Qunused-arguments -pthread -std=c++ > 11 -Wno-deprecated-declarations -stdlib=libc++ -Wno-unused-local-typedefs > -Wno-tautological-undefined-compare -Wno-incon > sistent-missing-override -m64 -pipe -W -Wall -Woverloaded-virtual > -fsigned-char -fno-common -Qunused-arguments -pthread > -std=c++11 -Wno-deprecated-declarations -stdlib=libc++ -m64 -pipe -W -Wall > -Woverloaded-virtual -fsigned-char -fno-commo > n -Qunused-arguments -pthread -std=c++11 -Wno-deprecated-declarations > -stdlib=libc++ -m64 -pipe -W -Wall -Woverloaded-vi > rtual -fsigned-char -fno-common -Qunused-arguments -pthread -std=c++11 > -Wno-deprecated-declarations -stdlib=libc++ -m64 > -pipe -W -Wall -Woverloaded-virtual -fsigned-char -fno-common > -Qunused-arguments -pthread -std=c++11 -Wno-deprecated-dec > larations -stdlib=libc++ -m64 -pipe -fsigned-char -fno-common > -Qunused-arguments -pthread -std=c++11 -stdlib=libc++ > Naturally it would help the build log reading tremendously if I could remove > the duplications from these lines. But I can't find a good way of doing it. > How could I weed out all the duplications in the CXXFLAGS associated to a > given target? > Cheers, > Attila > -- > Powered by www.kitware.com > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake