diff --git a/CMakeLists.txt b/CMakeLists.txt index a7c2e4c17515c90f7410931655a092c13c52bcf5..2fb16b6bd35a565a75df9ef9e5cffb168e34f2c9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -391,6 +391,33 @@ IF(WIN32) SET(OTB_REQUIRED_CXX_FLAGS "${OTB_REQUIRED_CXX_FLAGS} -DNOMINMAX") ENDIF(WIN32) +#----------------------------------------------------------------------------- +# Test for an Objective-C++ compiler. +SET(OTB_OBJCXX_COMPILER_WORKS 0) +IF(APPLE) + TRY_COMPILE(OTB_OBJCXX_COMPILER_WORKS + ${OTB_BINARY_DIR}/CMakeTmp + ${OTB_SOURCE_DIR}/CMake/otbTestObjCxxCompiler.mm + OUTPUT_VARIABLE OTB_OBJCXX_TRY_COMPILE_OUTPUT) + IF( OTB_OBJCXX_COMPILER_WORKS ) + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log + "Determining if the Objective-C compiler works passed with " + "the following output:\n${OTB_OBJCXX_TRY_COMPILE_OUTPUT}\n\n") + ELSE( OTB_OBJCXX_COMPILER_WORKS ) + FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log + "Determining if the Objective-C compiler works failed with " + "the following output:\n${OTB_OBJCXX_TRY_COMPILE_OUTPUT}\n\n") + ENDIF( OTB_OBJCXX_COMPILER_WORKS ) +ENDIF(APPLE) +#----------------------------------------------------------------------------- +# mingw thread support +IF(MINGW) + SET(OTB_REQUIRED_CXX_FLAGS "${OTB_REQUIRED_CXX_FLAGS} -mthreads") + SET(OTB_REQUIRED_C_FLAGS "${OTB_REQUIRED_C_FLAGS} -mthreads") + SET(OTB_REQUIRED_LINK_FLAGS "${OTB_REQUIRED_LINK_FLAGS} -mthreads") +ENDIF(MINGW) + + #----------------------------------------------------------------------------- # # See if compiler preprocessor has the __FUNCTION__ directive used by itkExceptionMacro