From Wang Rui, "The submission fixes the spelling bug we discussed in osg-users. It replaces the variable ACTUAL_3DPARTY_DIR to ACTUAL_3RDPARTY_DIR with back compatibility. Please find it in attachment. "

--- CMakeModules/Find3rdPartyDependencies.cmake
+++ CMakeModules/Find3rdPartyDependencies.cmake
@@ -101,11 +101,11 @@

 ################################################################################################
-# this is code for handling optional 3DPARTY usage
+# this is code for handling optional 3RDPARTY usage
 ################################################################################################

-OPTION(USE_3DPARTY_BIN "Set to ON to use Mike prebuilt dependencies situated side of OpenSceneGraph source.  Use OFF for avoiding." ON)
-IF(USE_3DPARTY_BIN)
+OPTION(USE_3RDPARTY_BIN "Set to ON to use Mike prebuilt dependencies situated side of OpenSceneGraph source.  Use OFF for avoiding." ON)
+IF(USE_3RDPARTY_BIN)

     # Check Architecture
     IF( CMAKE_SIZEOF_VOID_P EQUAL 4 )
@@ -118,23 +118,25 @@
     ENDIF()

     GET_FILENAME_COMPONENT(PARENT_DIR ${PROJECT_SOURCE_DIR} PATH)
-    SET(TEST_3DPARTY_DIR "${PARENT_DIR}/3rdparty")
-    IF(NOT EXISTS ${TEST_3DPARTY_DIR})
+    SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdparty")
+    IF(NOT EXISTS ${TEST_3RDPARTY_DIR})
         SET(3RDPARTY_DIR_BY_ENV $ENV{OSG_3RDPARTY_DIR})
         IF(3RDPARTY_DIR_BY_ENV)
             MESSAGE( STATUS "3rdParty-Package ENV variable found:${3RDPARTY_DIR_BY_ENV}/${DESTINATION_ARCH}" )
-            SET(TEST_3DPARTY_DIR "${3RDPARTY_DIR_BY_ENV}/${DESTINATION_ARCH}")
+            SET(TEST_3RDPARTY_DIR "${3RDPARTY_DIR_BY_ENV}/${DESTINATION_ARCH}")
         ELSEIF(MSVC71)
-            SET(TEST_3DPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs71")
+            SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs71")
         ELSEIF(MSVC80)
-            SET(TEST_3DPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs80sp1")
+            SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs80sp1")
         ELSEIF(MSVC90)
-            SET(TEST_3DPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs90sp1")
+            SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs90sp1")
         ENDIF()
-    ENDIF(NOT EXISTS ${TEST_3DPARTY_DIR})
-    SET(ACTUAL_3DPARTY_DIR "${TEST_3DPARTY_DIR}" CACHE PATH "Location of 3rdparty dependencies")
-    IF(EXISTS ${ACTUAL_3DPARTY_DIR})
-        SET (3rdPartyRoot ${ACTUAL_3DPARTY_DIR})
-        SEARCH_3RDPARTY(${ACTUAL_3DPARTY_DIR})
-    ENDIF(EXISTS ${ACTUAL_3DPARTY_DIR})
-ENDIF(USE_3DPARTY_BIN)
+    ENDIF(NOT EXISTS ${TEST_3RDPARTY_DIR})
+
+    SET(ACTUAL_3RDPARTY_DIR "${TEST_3RDPARTY_DIR}" CACHE PATH "Location of 3rdparty dependencies")
+    SET(ACTUAL_3DPARTY_DIR "${ACTUAL_3RDPARTY_DIR}")  # kept for backcompatibility
+    IF(EXISTS ${ACTUAL_3RDPARTY_DIR})
+        SET (3rdPartyRoot ${ACTUAL_3RDPARTY_DIR})
+        SEARCH_3RDPARTY(${ACTUAL_3RDPARTY_DIR})
+    ENDIF(EXISTS ${ACTUAL_3RDPARTY_DIR})
+ENDIF(USE_3RDPARTY_BIN)


Cleaned up embed_assets.cmake.

Cleaned up embed_assets.cmake.

--- embed_assets.cmake
+++ embed_assets.cmake
@@ -53,11 +53,8 @@
 							COMMENT "Running AUX_ASSEMBLER ${AUX_ASSEMBLER} for embedded assets of target ${target}."
 							VERBATIM)
 		target_link_libraries(${target} PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.s.obj")
-		target_sources(${target} PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.s")
-		#add_dependencies(${target} "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.s.obj")
-	else()
-		target_sources(${target} PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.s")
 	endif()
+	target_sources(${target} PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.s")
 	target_sources(${target} PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.cpp")
 	add_custom_target(mirrage_embedded_assets_${target} DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.zip" "${CMAKE_CURRENT_BINARY_DIR}/embedded_assets.s")
 	add_dependencies(${target} mirrage_embedded_assets_${target})


Fix CMake configuration regarding application settings

--- support/cmake/handle_applications.cmake
+++ support/cmake/handle_applications.cmake
@@ -30,22 +30,26 @@
     list(REMOVE_ITEM appDirs ".DS_Store")

     message(STATUS "Configuration application")
+    # First create all of the options for the applications. In case that one of the
+    # applications fail to include later, we still want all of them listed
     foreach (app ${appDirs})
         set(app_dir "${OPENSPACE_APPS_DIR}/${app}")
         string(TOUPPER ${app} upper_app)

-        option(OPENSPACE_APPLICATION_${upper_app} "${app} Application" OFF)
+        get_application_attribute_default(${app_dir} is_default_application)
+        option(OPENSPACE_APPLICATION_${upper_app} "Build ${app} application" ${is_default_application})
+    endforeach ()

-        get_application_attribute_default(${app_dir} is_default_application)
-        if (${is_default_application})
-            option(OPENSPACE_APPLICATION_${upper_app} "Build ${app} application" ${is_default_application})
-        endif ()
-
+    foreach (app ${appDirs})
+        set(app_dir "${OPENSPACE_APPS_DIR}/${app}")
+        string(TOUPPER ${app} upper_app)
+        message ("${app} ${OPENSPACE_APPLICATION_${upper_app}}")
         if (OPENSPACE_APPLICATION_${upper_app})
-            message(STATUS "Adding application ${app}")
             add_subdirectory(${app_dir})
         endif ()
     endforeach ()
+
+    message("Done")
 endfunction()


fix binary name

fix binary name

--- arangod/dbg.cmake
+++ arangod/dbg.cmake
@@ -5,7 +5,7 @@
 set(STRIP_DIR "${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/strip")
 execute_process(COMMAND mkdir -p ${STRIP_DIR})

-set(FILE ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGOBENCH}${CMAKE_EXECUTABLE_SUFFIX})
+set(FILE ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_X}/${BIN_ARANGOD}${CMAKE_EXECUTABLE_SUFFIX})
 set(STRIP_FILE ${STRIP_DIR}/${BIN_ARANGOD}${CMAKE_EXECUTABLE_SUFFIX})
 if (NOT MSVC AND CMAKE_STRIP)
   execute_process(COMMAND "rm" -f ${STRIP_FILE})


cl_offline_compiler.sh.in.cmake: add some missing macros

--- cl_offline_compiler.sh.in.cmake
+++ cl_offline_compiler.sh.in.cmake
@@ -85,7 +85,7 @@
 TARGET=none
 DEV_VER=100
 DEV_C_VER=100
-CL_EXT_DEFS=""
+CL_EXT_DEFS="-D__ENDIAN_LITTLE__=1"
 # TODO __opencl_c_int64 && atomics might not be supported by all PoCL devices
 CL_EXTS="-Xclang -cl-ext=-all"

@@ -94,10 +94,11 @@
   echo "CL_DEV_INFO: ${CL_DEV_INFO}"
   source ${CL_DEV_INFO}

-  if [ "$CL_IS_30" = "true" ]; then
-    if [ "$CL_DEVICE_IMAGE_SUPPORT" -eq 1 ]; then
+  if [ "$CL_DEVICE_IMAGE_SUPPORT" -eq 1 ]; then
+    if [ "$CL_IS_30" = "true" ]; then
       CL_EXTS="${CL_EXTS},+__opencl_c_images"
     fi
+    CL_EXT_DEFS="${CL_EXT_DEFS} -D__IMAGE_SUPPORT__=1"
   fi

   if [ "$CL_FAST_MATH" = "true" ]; then


cl_offline_compiler.sh.in.cmake: add license & documentation

--- cl_offline_compiler.sh.in.cmake
+++ cl_offline_compiler.sh.in.cmake
@@ -1,8 +1,45 @@
 #!/bin/bash

+#=============================================================================
+#   cl_offline_compiler.sh script
+#
+#   Copyright (c) 2017 Michal Babej / Intel Finland Oy
+#
+#   Permission is hereby granted, free of charge, to any person obtaining a copy
+#   of this software and associated documentation files (the "Software"), to deal
+#   in the Software without restriction, including without limitation the rights
+#   to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+#   copies of the Software, and to permit persons to whom the Software is
+#   furnished to do so, subject to the following conditions:
+#
+#   The above copyright notice and this permission notice shall be included in
+#   all copies or substantial portions of the Software.
+#
+#   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+#   IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+#   FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+#   AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+#   LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+#   OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+#   THE SOFTWARE.
+#
+#=============================================================================
+
+# Takes an OpenCL C source file and uses Clang + LLVM-SPIRV to convert it to
+# a SPIR-V binary. Used by OpenCL-CTS in offline compilation mode. Unlike
+# poclcc, this does not return a poclbinary, but a SPIR-V binary, and is
+# somewhat independent of PoCL (there is some option / extension processing
+# that is PoCL-specific)
+
+# Likely requires recent Clang (14 tested, 13 and older untested).
+# Might work with -cl-std < 3.0 with older Clangs, but 3.0 requires 14+
+
+# mandatory arguments:
 #     --source FILE          OpenCL C source file to compile
 #     --output FILE          SPIR-V or binary file to create
 #     --cl-device-info FILE  OpenCL device info file
+#
+# optional arguments:
 #     --debug                Enable some debugging output
 #     --mode                 compilation mode (spir-v or binary)

@@ -109,7 +146,6 @@
   if [ "$CL_UNSAFE_MATH" = "true" ]; then
     CL_EXT_DEFS="${CL_EXT_DEFS} -cl-no-signed-zeros -cl-mad-enable -ffp-contract=fast"
   fi
-

   if [[ "$CL_DEVICE_VERSION" =~ "PoCL" ]] && [ "$CL_IS_30" = "true" ]; then
     if [[ "$CL_DEVICE_VERSION" =~ "basic" ]] || [[ "$CL_DEVICE_VERSION" =~ "pthread" ]]; then


[CMake] Add install-distribution-toolchain to stage2 target list

This allows generating toolchains with just the distribution components instead of toolchains with everything.

git-svn-id: ffe668792ed300d6c2daa1f6eba2e0aa28d7ec6c@315030 91177308-0d34-0410-b5e6-96231b3b80d8

--- cmake/caches/Apple-stage1.cmake
+++ cmake/caches/Apple-stage1.cmake
@@ -46,6 +46,7 @@
   distribution
   install-distribution
   install-xcode-toolchain
+  install-distribution-toolchain
   clang CACHE STRING "")

 #bootstrap


Apply Orion Poplawski's patch to search appropriate versioned subdirectories
for itcl and itk libraries if those libraries are not found in the
specified directory itself.

svn path=/trunk/; revision=7374

--- cmake/modules/tcl-related.cmake
+++ cmake/modules/tcl-related.cmake
@@ -78,7 +78,8 @@
         message(STATUS "Looking for itcl library")
         set(itcl_library_versions 3.3 3.2 3.1 3.0 2.1 2.0)
         foreach(version ${itcl_library_versions})
-          find_library(ITCL_LIBRARY itcl${version} ${TCL_LIBRARY})
+          find_library(ITCL_LIBRARY itcl${version} ${TCL_LIBRARY}
+                       PATH_SUFFIXES itcl${version})
         endforeach(version ${itcl_library_versions})
         if(ITCL_LIBRARY)
           message(STATUS "Looking for itcl library - found")
@@ -138,7 +139,8 @@
         message(STATUS "Looking for itk library")
         set(itk_library_versions 3.3 3.2 3.1 3.0 2.1 2.0)
         foreach(version ${itk_library_versions})
-          find_library(ITK_LIBRARY itk${version} ${TK_LIBRARY})
+          find_library(ITK_LIBRARY itk${version} ${TK_LIBRARY}
+                       PATH_SUFFIXES itk${version})
         endforeach(version ${itk_library_versions})
         if(ITK_LIBRARY)
           message(STATUS "Looking for itk library - found")


CMake support

CMake support

--- cmake/dev/eprosima_libraries.cmake
+++ cmake/dev/eprosima_libraries.cmake
@@ -23,11 +23,10 @@
             BINARY_DIR ${PROJECT_BINARY_DIR}/external-build/${package}
             )

-    else()
+        set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ${PROJECT_BINARY_DIR}/external-install)
+    endif()

-        find_package(${package})
-
-    endif()
+    find_package(${package})
 endmacro()

 macro(install_eprosima_fastcdr)


Cleanup

Cleanup

--- cmake_modules/TokuThirdParty.cmake
+++ cmake_modules/TokuThirdParty.cmake
@@ -118,12 +118,8 @@
           -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
           -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
    )
-#  ExternalProject_Add_Step(backup-enterprise
-#        COMMAND cp "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libHotBackup.so"
   add_library(HotBackup SHARED IMPORTED GLOBAL)
   set_property(TARGET HotBackup PROPERTY IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/backup-enterprise/lib/libHotBackup.so)
-#  set_target_properties(HotBackup PROPERTIES IMPORTED_LOCATION
-#       "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib/libHotBackup.so")
   install(DIRECTORY "${install_dir}/lib" DESTINATION .
           COMPONENT tokukv_libs_extra)
 endif ()


Adding caching to boost cmake tests...

Adding caching to boost cmake tests...

--- cmake/boost.cmake
+++ cmake/boost.cmake
@@ -18,20 +18,22 @@
 if(NOT BOOST_VERSION_COMPILE_RESULT)
   message(FATAL_ERROR "Couldn't compile boost version checking program: ${BOOST_VERSION_COMPILE}")
 endif()
-
 message(STATUS "Boost version ${Boost_VERSION}")

-
 macro(boost_feature_check checkname)
-  try_compile(${checkname}
-    ${CMAKE_BINARY_DIR}/${checkname}
-    ${CMAKE_CURRENT_SOURCE_DIR}/cmake/boost_checks.cpp
-    COMPILE_DEFINITIONS -I${Boost_INCLUDE_DIRS} -D${checkname}=1
-    OUTPUT_VARIABLE ${checkname}_OUTPUT
-    )
-  message(STATUS "${checkname}: ${${checkname}}")
-  if(${${checkname}_OUTPUT} MATCHES ".*ECTO_CHECK_TRY_COMPILE_ERROR.*")
-    message(FATAL_ERROR "Internal error when checking for boost feature ${checkname}")
+  if(NOT ${checkname}_CACHE)
+    try_compile(${checkname}
+      ${CMAKE_BINARY_DIR}/${checkname}
+      ${CMAKE_CURRENT_SOURCE_DIR}/cmake/boost_checks.cpp
+      COMPILE_DEFINITIONS -I${Boost_INCLUDE_DIRS} -D${checkname}=1
+      OUTPUT_VARIABLE ${checkname}_OUTPUT
+      )
+    message(STATUS "${checkname}: ${${checkname}}")
+    if(${${checkname}_OUTPUT} MATCHES ".*ECTO_CHECK_TRY_COMPILE_ERROR.*")
+      message(FATAL_ERROR "Internal error when checking for boost feature ${checkname}")
+    endif()
+    set(${checkname}_CACHE TRUE CACHE BOOL "${checkname} cache variable" FORCE)
+    mark_as_advanced(FORCE ${checkname}_CACHE)
   endif()
 endmacro()


Qt iOS: add missing link libraries

Qt iOS: add missing link libraries

--- scripts/Qt5Multimedia_ZZZ_HunterPlugin.cmake
+++ scripts/Qt5Multimedia_ZZZ_HunterPlugin.cmake
@@ -76,7 +76,14 @@

   # Fix linking errors
   if(IOS)
-    # TODO
+    # _CVPixelBufferGetBaseAddress
+    _hunter_plugin_add_interface(Qt5::AVFServicePlugin "-framework CoreVideo")
+
+    # _AVCaptureExposureDurationCurrent
+    _hunter_plugin_add_interface(Qt5::AVFServicePlugin "-framework AVFoundation")
+
+    # _CMFormatDescriptionGetMediaSubType
+    _hunter_plugin_add_interface(Qt5::AVFServicePlugin "-framework CoreMedia")
   elseif(APPLE)
     _hunter_plugin_add_interface(Qt5::AVFServicePlugin "-framework AVFoundation")
     _hunter_plugin_add_interface(Qt5::AVFServicePlugin "-framework CoreMedia")


Add latest visual studio version 1911

Add latest visual studio version 1911

Map to same version as 1910 for now.

--- CMake/mitkFunctionGetMSVCVersion.cmake
+++ CMake/mitkFunctionGetMSVCVersion.cmake
@@ -27,8 +27,12 @@
     set(VISUAL_STUDIO_VERSION_MAJOR "14" PARENT_SCOPE)
     set(VISUAL_STUDIO_VERSION_MINOR "1" PARENT_SCOPE)
     set(VISUAL_STUDIO_PRODUCT_NAME "Visual Studio 2017" PARENT_SCOPE)
+  elseif(MSVC_VERSION EQUAL 1911)
+    set(VISUAL_STUDIO_VERSION_MAJOR "14" PARENT_SCOPE)
+    set(VISUAL_STUDIO_VERSION_MINOR "1" PARENT_SCOPE)
+    set(VISUAL_STUDIO_PRODUCT_NAME "Visual Studio 2017" PARENT_SCOPE)
   else()
-    message(WARNING "Unknown Visual Studio version. Please update CMake/mitkFunctionGetMSVCVersion.cmake.")
+    message(WARNING "Unknown Visual Studio version ${MSVC_VERSION}. Please update CMake/mitkFunctionGetMSVCVersion.cmake.")
   endif()

   if("${CMAKE_GENERATOR}" MATCHES ".*Win64")


update FindGflags.cmake to work on CentOS 8.x (#1409)

Summary:
Update FindGflags.cmake to work on recent CentOS and RedHat distributions.

On these distributions the CMake package configuration installed by the
gflags-devel RPM is slightly broken, and sets `gflags_INCLUDE_DIR` to a
directory that does not exist.  This happens because `/lib64` is symlinked to
`/usr/lib64`, and CMake ends up searching `/lib64` before `/usr/lib64` by
default when searching for packages.  Therefore it finds `gflags-config.cmake`
via the `/lib64` symlink.  However, `gflags-config.cmake` computes the include
directory relative to where its config file was found, and this relative path
computation only works when using the actual `/usr/lib64` path where it was
installed.  When found via `/lib64` it returns a bogus `//include` path that
does not exist.

This updates `FindGflags.cmake` to verify if the `gflags_INCLUDE_DIR` path
actually exists, and set it to a sane location instead.

This also updates the code to use the `gflags-shared` target that is exported
by the default gflags package configuration if it was only built as a shared
library.

Pull Request resolved: https://github.com/facebook/folly/pull/1409

Reviewed By: yfeldblum

Differential Revision: D23588288

fbshipit-source-id: b68a717953ae0521f568d7bcfd05ca33cd6dc578

--- build/fbcode_builder/CMake/FindGflags.cmake
+++ build/fbcode_builder/CMake/FindGflags.cmake
@@ -41,6 +41,16 @@
   # Re-export the config-specified libs with our local names
   set(LIBGFLAGS_LIBRARY ${gflags_LIBRARIES})
   set(LIBGFLAGS_INCLUDE_DIR ${gflags_INCLUDE_DIR})
+  if(NOT EXISTS "${gflags_INCLUDE_DIR}")
+    # The gflags-devel RPM on recent RedHat-based systems is somewhat broken.
+    # RedHat symlinks /lib64 to /usr/lib64, and this breaks some of the
+    # relative path computation performed in gflags-config.cmake.  The package
+    # config file ends up being found via /lib64, but the relative path
+    # computation it does only works if it was found in /usr/lib64.
+    # If gflags_INCLUDE_DIR does not actually exist, simply default it to
+    # /usr/include on these systems.
+    set(LIBGFLAGS_INCLUDE_DIR "/usr/include")
+  endif()
   set(LIBGFLAGS_FOUND ${gflags_FOUND})
   # cmake module compat
   set(GFLAGS_FOUND ${gflags_FOUND})
@@ -76,6 +86,20 @@
 # Compat with the gflags CONFIG based detection
 if (LIBGFLAGS_FOUND AND NOT TARGET gflags)
   add_library(gflags UNKNOWN IMPORTED)
-  set_target_properties(gflags PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${LIBGFLAGS_INCLUDE_DIR}")
-  set_target_properties(gflags PROPERTIES IMPORTED_LINK_INTERFACE_LANGUAGES "C" IMPORTED_LOCATION "${LIBGFLAGS_LIBRARY}")
+  if(TARGET gflags-shared)
+    # If the installed gflags CMake package config defines a gflags-shared
+    # target but not gflags, just make the gflags target that we define
+    # depend on the gflags-shared target.
+    target_link_libraries(gflags INTERFACE gflags-shared)
+    # Export LIBGFLAGS_LIBRARY as the gflags-shared target in this case.
+    set(LIBGFLAGS_LIBRARY gflags-shared)
+  else()
+    set_target_properties(
+      gflags
+      PROPERTIES
+        IMPORTED_LINK_INTERFACE_LANGUAGES "C"
+        IMPORTED_LOCATION "${LIBGFLAGS_LIBRARY}"
+        INTERFACE_INCLUDE_DIRECTORIES "${LIBGFLAGS_INCLUDE_DIR}"
+    )
+  endif()
 endif()


SVN_SILENT made messages (.desktop file)

--- ds9/ds9.desktop.cmake
+++ ds9/ds9.desktop.cmake
@@ -15,6 +15,7 @@
 Name[cs]=DirectShow9
 Name[da]=DirectShow9
 Name[de]=DirectShow9
+Name[el]=DirectShow9
 Name[es]=DirectShow9
 Name[et]=DirectShow9
 Name[hu]=DirectShow9
@@ -44,6 +45,7 @@
 Comment[cs]=Podpůrná vrstva DirectShow9 pro Phonon
 Comment[da]=Phonon DirectShow9-motor
 Comment[de]=Phonon-Treiber für DirectShow9
+Comment[el]=Σύστημα υποστήριξης DirectShow9 του Phonon
 Comment[es]=Motor DirectShow9 para Phonon
 Comment[et]=Phononi DirectShow9 taustaprogramm
 Comment[hu]=Phonon DirectShow9-modul


Update FW with fixes for newer OAK-D

Update FW with fixes for newer OAK-D

--- cmake/Depthai/DepthaiDeviceSideConfig.cmake
+++ cmake/Depthai/DepthaiDeviceSideConfig.cmake
@@ -2,7 +2,7 @@
 set(DEPTHAI_DEVICE_SIDE_MATURITY "snapshot")

 # "full commit hash of device side binary"
-set(DEPTHAI_DEVICE_SIDE_COMMIT "474dd81679425f04fa0894fcd094afbab4c22311")
+set(DEPTHAI_DEVICE_SIDE_COMMIT "3da45bce8f1178f33be211861a7848ab3993d9b9")

 # "version if applicable"
 set(DEPTHAI_DEVICE_SIDE_VERSION "")


Workaround ninja dependencies re-stat behavior.

Using the BUILD_BYPRODUCTS directive we tell ninja that those libs will be
created and it is ok to use them as dependencies.

Further info:
 * https://github.com/ninja-build/ninja/issues/760
 * https://cmake.org/Bug/view.php?id=14963
 * https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=557aef0b

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -1377,6 +1377,15 @@
   # FIXME: Remove our version of gtest in roottest. We can reuse this one.
   # Add gtest
   # http://stackoverflow.com/questions/9689183/cmake-googletest
+
+  set(_byproduct_binary_dir
+    ${CMAKE_CURRENT_BINARY_DIR}/googletest-prefix/src/googletest-build/googlemock/)
+  set(_byproducts
+    ${_byproduct_binary_dir}/gtest/libgtest.a
+    ${_byproduct_binary_dir}/gtest/libgtest_main.a
+    ${_byproduct_binary_dir}/libgmock.a
+    ${_byproduct_binary_dir}/libgmock_main.a
+    )
   ExternalProject_Add(
     googletest
     GIT_REPOSITORY https://github.com/google/googletest.git
@@ -1389,6 +1398,7 @@
     #            -Dgtest_force_shared_crt=ON
     # Disable install step
     INSTALL_COMMAND ""
+    BUILD_BYPRODUCTS ${_byproducts}
     # Wrap download, configure and build steps in a script to log output
     LOG_DOWNLOAD ON
     LOG_CONFIGURE ON


COMP: Temporarily removed SegmentationInterpolationTest

--- Modules/Segmentation/Testing/files.cmake
+++ Modules/Segmentation/Testing/files.cmake
@@ -2,7 +2,7 @@
   mitkContourMapper2DTest.cpp
   mitkContourTest.cpp
   mitkDataNodeSegmentationTest.cpp
-  mitkSegmentationInterpolationTest.cpp
+#  mitkSegmentationInterpolationTest.cpp
   mitkOverwriteSliceFilterTest.cpp
 #  mitkOverwriteSliceFilterObliquePlaneTest.cpp
   mitkContourModelTest.cpp


examples: fix TESTING_URL

examples: fix TESTING_URL

--- examples/common.cmake
+++ examples/common.cmake
@@ -32,6 +32,8 @@
   message(FATAL_ERROR "HUNTER_ROOT variable is empty (see jenkins.py script)")
 endif()

+get_filename_component(TESTING_URL "${TESTING_URL}" ABSOLUTE)
+
 ### HunterGate module
 HunterGate(
     URL "${TESTING_URL}"


modules: Update FindOVR.cmake.

modules: Update FindOVR.cmake.

Signed-off-by: Squareys <0f6a03d4883e012ba4cb2c581a68f35544703cd6@googlemail.com>

--- modules/FindOVR.cmake
+++ modules/FindOVR.cmake
@@ -12,8 +12,7 @@
 #
 #   Copyright © 2010, 2011, 2012, 2013, 2014, 2015
 #             Vladimír Vondruš <mosra@centrum.cz>
-#   Copyright © 2015
-#             Jonathan Hale <squareys@googlemail.com>
+#   Copyright © 2015 Jonathan Hale <squareys@googlemail.com>
 #
 #   Permission is hereby granted, free of charge, to any person obtaining a
 #   copy of this software and associated documentation files (the "Software"),
@@ -53,7 +52,7 @@
         # link against a specific version. This will cause problems with newer oculus runtimes,
         # though. (FIXME!)
         # The clean way to link against libOVR, which seems to require the Windows DDK
-        find_library(OVR_LIBRARY NAMES LibOVRRT32_0_7.dll HINTS "C:/Windows/SysWOW64")
+        find_library(OVR_LIBRARY NAMES LibOVRRT32_0_8.dll HINTS "C:/Windows/SysWOW64")
         #find_library(OVR_LIBRARY NAMES LibOVR HINTS ${LIBOVR_ROOT}/Lib/Windows/Win32/Release/VS2012)
     endif()
 endif()


Gate the default dependency path to Linux (#2512)

--- CMake/CMakeLibs.cmake
+++ CMake/CMakeLibs.cmake
@@ -88,19 +88,26 @@
 endmacro(ADD_OSQUERY_LINK)

 macro(ADD_OSQUERY_LINK_INTERNAL LINK LINK_PATHS LINK_SET)
+  # The relative linking set is used for static libraries.
   set(LINK_PATHS_RELATIVE
     "${BUILD_DEPS}/lib"
     ${LINK_PATHS}
     ${OS_LIB_DIRS}
     "$ENV{HOME}"
   )
+
+  # The system linking set is for legacy ABI compatibility links and libraries
+  # known to exist on the system.
   set(LINK_PATHS_SYSTEM
     ${LINK_PATHS}
     "${BUILD_DEPS}/legacy/lib"
-    # Allow the build to search the default deps include for libz.
-    "${BUILD_DEPS}/lib"
-    ${OS_LIB_DIRS}
-  )
+  )
+  if(LINUX)
+    # Allow the build to search the 'default' dependency home for libgcc_s.
+    list(APPEND LINK_PATHS_SYSTEM "${BUILD_DEPS}/lib")
+  endif()
+  # The OS library paths are very important for system linking.
+  list(APPEND LINK_PATHS_SYSTEM ${OS_LIB_DIRS})

   if(NOT "${LINK}" MATCHES "(^[-/].*)")
     string(REPLACE " " ";" ITEMS "${LINK}")


Should be defaulting OGRE_SET_USE_BOOST not OGRE_USE_BOOST

--- CMake/ConfigureBuild.cmake
+++ CMake/ConfigureBuild.cmake
@@ -45,7 +45,7 @@
 set(OGRE_SET_DISABLE_DDS 0)
 set(OGRE_SET_NEW_COMPILERS 0)
 set(OGRE_STATIC_LIB 0)
-set(OGRE_USE_BOOST 0)
+set(OGRE_SET_USE_BOOST 0)
 if (OGRE_CONFIG_DOUBLE)
   set(OGRE_SET_DOUBLE 1)
 endif()


fix for ilplib

fix for ilplib

--- ConfigureChecks.cmake
+++ ConfigureChecks.cmake
@@ -13,7 +13,7 @@

 FIND_PACKAGE(wisekma REQUIRED)
 FIND_PACKAGE(izenecma REQUIRED)
-FIND_PACKAGE(ilplib REQUIRED COMPONENTS langid la)
+FIND_PACKAGE(ilplib REQUIRED COMPONENTS ilplib)
 FIND_PACKAGE(imllib REQUIRED)
 FIND_PACKAGE(xml2 REQUIRED)


lots of changes

lots of changes

--- Core/Rendering/files.cmake
+++ Core/Rendering/files.cmake
@@ -37,11 +37,4 @@
   mitkVtkRenderWindow.cpp
   mitkVtkStencilRenderWindow.cpp
 )
-IF(WIN32)
-  SET(CPP_FILES ${CPP_FILES}
-    mitkVtkWin32ARRenderWindow.cpp
-    mitkVtkWin32StencilRenderWindow.cpp
-    mitkWin32ARMapper2D.cpp
-  )
-ENDIF(WIN32)


DOC:  Update description.

DOC:  Update description.

--- Modules/Remote/AdaptiveDenoising.remote.cmake
+++ Modules/Remote/AdaptiveDenoising.remote.cmake
@@ -1,5 +1,5 @@
 itk_fetch_module(AdaptiveDenoising
-  "A spatially adaptive denoising image filter."
+  "A spatially adaptive denoising image filter using non-local means."
   GIT_REPOSITORY http://github.com/ntustison/ITKAdaptiveDenoising.git
   GIT_TAG 914e6958a0773e18d6bb45cc5feda72f3180a8ba
   )


COMP: cmake try_compile errors are actual fatal errors. Make it so

--- Modules/ThirdParty/GDAL/otb-module-init.cmake
+++ Modules/ThirdParty/GDAL/otb-module-init.cmake
@@ -13,12 +13,11 @@
 mark_as_advanced(GDAL_CONFIG_CHECKING)

 if(GDAL_CONFIG_CHECKING)
+  message(STATUS "Checking GDAL installation.. " )
 	set(MIN_MAJOR_VERSION 1)
 	set(MIN_MINOR_VERSION 10)

 	set(GDAL_QUALIFIES TRUE)
-	set(COMPILE_ERRORS FALSE)
-
 	# Ensure that the temporary dir always exists before starting tests
 	if(NOT EXISTS ${TEMP})
 	  FILE(MAKE_DIRECTORY ${TEMP})
@@ -80,20 +79,18 @@
 	endif()
 	#------------------- TESTS (END)---------------------

-
 	# Warning messages
 	if (NOT COMPILE_RESULT_VERSION)
-		message(WARNING "Modules/ThirdParty/GDAL/gdalVersionTest.cxx did not compile.")
-		set(COMPILE_ERRORS TRUE)
+	  message(FATAL_ERROR "Modules/ThirdParty/GDAL/gdalVersionTest.cxx did not compile.")
 	elseif (${RUN_RESULT_VERSION} EQUAL 1)
-		file(READ "${TEMP}/gdalVersion.txt" DETECTED_VERSION)
-		message(WARNING "Version of GDAL must be >= " ${MIN_MAJOR_VERSION} "." ${MIN_MINOR_VERSION} " : " ${DETECTED_VERSION} " detected.")
-		set(GDAL_QUALIFIES FALSE)
-  else((${RUN_RESULT_VERSION} EQUAL 1))
-    file(READ "${TEMP}/gdalVersion.txt" DETECTED_VERSION)
-    string(SUBSTRING ${DETECTED_VERSION} 0 2 VER2)
-    if(${VER2} EQUAL "2.")
-      message(STATUS "Gdal >= 2.0.0 detected")
+	  file(READ "${TEMP}/gdalVersion.txt" DETECTED_VERSION)
+	  message(FATAL_ERROR "Version of GDAL must be >= " ${MIN_MAJOR_VERSION} "." ${MIN_MINOR_VERSION} " : " ${DETECTED_VERSION} " detected.")
+	  set(GDAL_QUALIFIES FALSE)
+        else((${RUN_RESULT_VERSION} EQUAL 1))
+          file(READ "${TEMP}/gdalVersion.txt" DETECTED_VERSION)
+          string(SUBSTRING ${DETECTED_VERSION} 0 2 VER2)
+          if(${VER2} EQUAL "2.")
+            message(STATUS "Gdal >= 2.0.0 detected")
       set(OTB_USE_GDAL_20 true CACHE INTERNAL "True if GDAL >= 2.0.0 has been detected" FORCE )
     else(${VER2} EQUAL "2.")
       set(OTB_USE_GDAL_20 false CACHE INTERNAL "True if GDAL >= 2.0.0 has been detected" FORCE )
@@ -101,28 +98,27 @@
 	endif()

 	if (NOT GDAL_HAS_OGR)
-		message(WARNING "GDAL doesn't expose OGR library symbols.")
-		set(GDAL_QUALIFIES FALSE)
+		message(FATAL_ERROR "GDAL doesn't expose OGR library symbols.")
+		unset(GDAL_QUALIFIES)
 	endif()

 	if (NOT COMPILE_RESULT_FORMATS)
-		message(WARNING "Modules/ThirdParty/GDAL/gdalFormatsTest.cxx did not compile.")
-		set(COMPILE_ERRORS TRUE)
+		message(FATAL_ERROR "Modules/ThirdParty/GDAL/gdalFormatsTest.cxx did not compile.")
+
 	else()

 		if (NOT GDAL_HAS_J2K_JG2000 AND NOT GDAL_HAS_J2K_OPJG AND NOT GDAL_HAS_J2K_KAK AND NOT GDAL_HAS_J2K_ECW)
 		message(STATUS "No Jpeg2000 driver found (compatible drivers are : OpenJpeg, Kakadu, ECW).")
-		#set(GDAL_QUALIFIES FALSE)
 		endif()

 		if (NOT GDAL_HAS_JPEG)
 		message(WARNING "No jpeg driver found.")
-		set(GDAL_QUALIFIES FALSE)
+                unset(GDAL_QUALIFIES)
 		endif()

 		if (NOT GDAL_HAS_GTIF)
 		message(WARNING "No geotiff driver found.")
-		set(GDAL_QUALIFIES FALSE)
+		unset(GDAL_QUALIFIES)
 		endif()

 	endif()
@@ -132,31 +128,27 @@
   endif()

 	if (NOT COMPILE_RESULT_CREATE)
-		message(WARNING "Modules/ThirdParty/GDAL/gdalCreateTest.cxx did not compile.")
-		set(COMPILE_ERRORS TRUE)
+		message(FATAL_ERROR "Modules/ThirdParty/GDAL/gdalCreateTest.cxx did not compile.")
 	elseif (NOT GDAL_CAN_CREATE_GEOTIFF)
-			message(WARNING "GDAL can't create geotiff files.")
-			set(GDAL_QUALIFIES FALSE)
+			message(FATAL_ERROR "GDAL can't create geotiff files.")
+			unset(GDAL_QUALIFIES)
 	endif()

 	if (NOT COMPILE_RESULT_CREATECOPY)
-		message(WARNING "Modules/ThirdParty/GDAL/gdalCreateCopyTest.cxx did not compile.")
-		set(COMPILE_ERRORS TRUE)
-
+		message(FATAL_ERROR "Modules/ThirdParty/GDAL/gdalCreateCopyTest.cxx did not compile.")
 		if (NOT GDAL_CAN_CREATE_BIGTIFF)
 			message(WARNING "No BIGTIFF capatilities.")
-			set(GDAL_QUALIFIES FALSE)
-		endif()
-
+			unset(GDAL_QUALIFIES)
+		endif()
 		if (NOT GDAL_CAN_CREATE_JPEG)
 			message(WARNING "GDAL can't create jpeg files.")
-			set(GDAL_QUALIFIES FALSE)
+			unset(GDAL_QUALIFIES)
 		endif()

 		if (NOT GDAL_CAN_CREATE_JPEG2000)
 			message(WARNING "GDAL can't create jpeg2000 files.")
-			set(GDAL_QUALIFIES FALSE)
+			unset(GDAL_QUALIFIES)
 		endif()

 	endif()
@@ -168,7 +160,6 @@
 	if(UNIX)

 	  if(GDAL_QUALIFIES)
-
 			# Prepare bash script
 			configure_file(${CMAKE_SOURCE_DIR}/Modules/ThirdParty/GDAL/gdalTest.sh.in ${CMAKE_CURRENT_BINARY_DIR}/gdalTest.sh @ONLY)
 			execute_process(COMMAND chmod u+x ${CMAKE_CURRENT_BINARY_DIR}/gdalTest.sh)
@@ -183,10 +174,10 @@

 			# Warning messages
 			if (NOT COMPILE_RESULT_SYMBOLS)
-				message(WARNING "Modules/ThirdParty/GDAL/gdalSymbolsTest.cxx did not compile.")
-				set(COMPILE_ERRORS TRUE)
+				message(FATAL_ERROR "Modules/ThirdParty/GDAL/gdalSymbolsTest.cxx did not compile.")
+
 			elseif (${RUN_RESULT_SYMBOLS} EQUAL 1)
-				message(WARNING "Internal versions of libtiff/libgeotiff detected without symbol renaming (when configuring GDAL, if options --with-libtiff or --with-geotiff are set to 'internal', then options --with-rename-internal-libtiff-symbols and --with-rename-internal-libgeotiff-symbols should be set to 'yes').")
+				message(FATAL_ERROR "Internal versions of libtiff/libgeotiff detected without symbol renaming (when configuring GDAL, if options --with-libtiff or --with-geotiff are set to 'internal', then options --with-rename-internal-libtiff-symbols and --with-rename-internal-libgeotiff-symbols should be set to 'yes').")
 				set(GDAL_QUALIFIES FALSE)
 			endif()

@@ -197,17 +188,21 @@
 	endif() #UNIX

-	if(GDAL_QUALIFIES AND NOT COMPILE_ERRORS)
+        if(NOT GDAL_VERSION)
+          if(EXISTS "${TEMP}/gdalVersion.txt")
+            file(READ "${TEMP}/gdalVersion.txt" GDAL_VERSION)
+          else()
+           set(GDAL_QUALIFIES FALSE)
+          endif()
+        endif()
+	if(GDAL_QUALIFIES)
           message(STATUS "Check if Gdal qualifies for Orfeo ToolBox -- yes.")
 	else()
-          message(STATUS "Check if Gdal qualifies for Orfeo ToolBox -- no.")
-	endif()
-
-  if(NOT GDAL_VERSION)
-    if(EXISTS "${TEMP}/gdalVersion.txt")
-      file(READ "${TEMP}/gdalVersion.txt" GDAL_VERSION)
-    endif()
-  endif()
+          message(FATAL_ERROR "Check if Gdal qualifies for Orfeo ToolBox -- no.")
+	endif()
+
+
+  set(GDAL_VERSION_STRING "${GDAL_VERSION}" CACHE INTERNAL "" FORCE)
   message(STATUS "  Version : ${GDAL_VERSION}")
   message(STATUS "  Drivers for JPEG 2000 : ")
   if(GDAL_HAS_J2K_JG2000)


Delete mitkTubeGraphDefaultLabelGroups.h from moc files list

--- Plugins/org.mitk.gui.qt.tubegraph/files.cmake
+++ Plugins/org.mitk.gui.qt.tubegraph/files.cmake
@@ -18,7 +18,6 @@

 SET(MOC_H_FILES
   src/internal/mitkPluginActivator.h
-  src/internal/mitkTubeGraphDefaultLabelGroups.h
   src/internal/QmitkTubeGraphView.h
   src/internal/QmitkTubeGraphLabelWidget.h
   src/internal/QmitkTubeGraphLabelGroupWidget.h


fix generate_dynamic_reconfigure_options (#10) (#134)

--- cmake/dynamic_reconfigure-macros.cmake
+++ cmake/dynamic_reconfigure-macros.cmake
@@ -46,6 +46,12 @@
         )
         set("_CUSTOM_PYTHONPATH_ENV" "${CMAKE_CURRENT_BINARY_DIR}/setup_custom_pythonpath.sh")
       endif()
+    elseif(WIN32)
+      # Package could have no ${CATKIN_GLOBAL_PYTHON_DESTINATION} if it doesn't call
+      # catkin_python_setup().
+      # However, since Windows doesn't support shebang, we still need python to be added
+      # into the _cmd later.
+      set("_CUSTOM_PYTHONPATH_ENV" "${PYTHON_EXECUTABLE}")
     endif()

     assert(CATKIN_ENV)


Set VERSION_STRING when pulling it from existing header file

--- cmake/initialize_project_version.cmake
+++ cmake/initialize_project_version.cmake
@@ -5,13 +5,13 @@
     OUTPUT_STRIP_TRAILING_WHITESPACE)
 endif()

-if(VERSION_STRING)
-    set(PROJECT_VERSION "${VERSION_STRING}")
-else()
+if(NOT VERSION_STRING)
     # extract it from the existing generated header file
     file(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/aws-cpp-sdk-core/include/aws/core/VersionConfig.h" __SDK_VERSION_LINE LIMIT_COUNT 1 REGEX "AWS_SDK_VERSION_STRING.*[0-9]+\\.[0-9]+\\.[0-9]+" )
     string( REGEX MATCH "([0-9]+\\.[0-9]+\\.[0-9]+)" VERSION_STRING "${__SDK_VERSION_LINE}" )
 endif()
+
+set(PROJECT_VERSION "${VERSION_STRING}")

 message(STATUS "Building project version: ${PROJECT_VERSION}")


Gcc5 C++14 related issue fixed for CMake, if C++11 is enabled.

--- cmake/Modules/CppUTestWarningFlags.cmake
+++ cmake/Modules/CppUTestWarningFlags.cmake
@@ -67,6 +67,7 @@
            ${WARNING_CXX_FLAGS}
            Wno-c++98-compat
            Wno-c++98-compat-pedantic
+           Wno-c++14-compat
            )
     endif (C++11)


try_compile no longer works with new add_executable for Ada since there is
no way to specify the target name (which is used to construct the source
file name).  Therefore, replace try_compile with simple test of gnatmake
using execute_process.

svn path=/trunk/; revision=7391

--- cmake/modules/CMakeTestAdaCompiler.cmake
+++ cmake/modules/CMakeTestAdaCompiler.cmake
@@ -1,36 +1,46 @@
 # This file is used by EnableLanguage in cmGlobalGenerator to
-# determine that that selected Ada compiler can actually compile
+# determine that that the Ada builder gnatmake can actually compile
 # and link the most basic of programs.   If not, a fatal error
 # is set and cmake stops processing commands and will not generate
 # any makefiles or projects.
 IF(NOT CMAKE_Ada_COMPILER_WORKS)
-  MESSAGE(STATUS "Check for working Ada compiler: ${CMAKE_Ada_COMPILER}")
+  MESSAGE(STATUS "Check for working Ada builder: gnatmake")
   FILE(WRITE ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testadacompiler.adb
   "procedure testAdaCompiler is\n"
   "     begin\n"
   "       null;\n"
   "     end;\n"
   )
-  TRY_COMPILE(CMAKE_Ada_COMPILER_WORKS ${CMAKE_BINARY_DIR}
-    ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testadacompiler.adb
-    OUTPUT_VARIABLE OUTPUT)
+  execute_process(
+  COMMAND gnatmake testadacompiler.adb
+  WORKING_DIRECTORY ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp
+  RESULT_VARIABLE CMAKE_Ada_COMPILER_WORKS
+  OUTPUT_VARIABLE OUTPUT
+  ERROR_VARIABLE OUTPUT
+  )
+  if(NOT CMAKE_Ada_COMPILER_WORKS)
+    set(CMAKE_Ada_COMPILER_WORKS ON)
+  else(NOT CMAKE_Ada_COMPILER_WORKS)
+    set(CMAKE_Ada_COMPILER_WORKS OFF)
+  endif(NOT CMAKE_Ada_COMPILER_WORKS)
+
   SET(ADA_TEST_WAS_RUN 1)
 ENDIF(NOT CMAKE_Ada_COMPILER_WORKS)

 IF(NOT CMAKE_Ada_COMPILER_WORKS)
-  MESSAGE(STATUS "Check for working Ada compiler: ${CMAKE_Ada_COMPILER} -- broken")
+  MESSAGE(STATUS "Check for working Ada builder: gnatmake -- broken")
   FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
-    "Determining if the Ada compiler works failed with "
+    "Determining if the Ada builder works failed with "
     "the following output:\n${OUTPUT}\n\n")
-  MESSAGE(FATAL_ERROR "The Ada compiler \"${CMAKE_Ada_COMPILER}\" "
-    "is not able to compile a simple test program.\nIt fails "
+  MESSAGE(FATAL_ERROR "The Ada builder \"gnatmake\" "
+    "is not able to compile, bind, and link a simple test program.\nIt fails "
     "with the following output:\n ${OUTPUT}\n\n"
     "CMake will not be able to correctly generate this project.")
 ELSE(NOT CMAKE_Ada_COMPILER_WORKS)
   IF(ADA_TEST_WAS_RUN)
-    MESSAGE(STATUS "Check for working Ada compiler: ${CMAKE_Ada_COMPILER} -- works")
+    MESSAGE(STATUS "Check for working Ada builder: gnatmake -- works")
     FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
-      "Determining if the Ada compiler works passed with "
+      "Determining if the Ada builder works passed with "
       "the following output:\n${OUTPUT}\n\n")
   ENDIF(ADA_TEST_WAS_RUN)
   SET(CMAKE_Ada_COMPILER_WORKS 1 CACHE INTERNAL "")


[Build] Suppressed wrong end-of-lines.

[Build] Suppressed wrong end-of-lines.

--- config/project_config_embeddable.cmake
+++ config/project_config_embeddable.cmake
@@ -1280,9 +1280,7 @@

   # Convenient message to the user/developer
   if (NOT CMAKE_INSTALL_RPATH_USE_LINK_PATH)
-    install (CODE "message (\"On Unix-based platforms, run "
-	  "export LD_LIBRARY_PATH=${INSTALL_LIB_DIR}:\$LD_LIBRARY_PATH "
-	  "once per session\")")
+    install (CODE "message (\"On Unix-based platforms, run export LD_LIBRARY_PATH=${INSTALL_LIB_DIR}:\$LD_LIBRARY_PATH once per session\")")
   endif (NOT CMAKE_INSTALL_RPATH_USE_LINK_PATH)

 endmacro (module_library_add_standard)


[Build] Improved the support of CMake-2.6 on RedHat/CentOS 6.x.

--- config/project_config_embeddable.cmake
+++ config/project_config_embeddable.cmake
@@ -1822,7 +1822,8 @@
 	list (APPEND CSS_ALL_TARGETS css_${style_SRC})
   endforeach (style_SRC)
   set (CSS_ALL_TARGETS ${CSS_ALL_TARGETS} PARENT_SCOPE)
-  add_custom_target (css_style ALL DEPENDS ${CSS_ALL_TARGETS})
+  add_custom_target (css_style)
+  add_dependencies (css_style ${CSS_ALL_TARGETS})

   # Images
   foreach (image_SRC ${image_SOURCES})
@@ -1840,7 +1841,8 @@
 	list (APPEND IMG_ALL_TARGETS img_${image_SRC})
   endforeach (image_SRC)
   set (IMG_ALL_TARGETS ${IMG_ALL_TARGETS} PARENT_SCOPE)
-  add_custom_target (img_style ALL DEPENDS ${IMG_ALL_TARGETS})
+  add_custom_target (img_style)
+  add_dependencies (img_style ${IMG_ALL_TARGETS})

   ##
   # PDF, generated by (Pdf)Latex from the Latex source file, itself generated
@@ -1854,7 +1856,6 @@
   # Note the "|| echo" addition to the pdflatex command, as that latter returns
   # as if there were an error.
   add_custom_command (OUTPUT ${REFMAN_IDX_FULL} ${REFMAN_PDF_FULL}
-	DEPENDS doc css_style img_style
 	COMMAND ${CMAKE_COMMAND}
 	ARGS -E chdir ${TEX_GEN_DIR} pdflatex -interaction batchmode ${REFMAN_TEX} && echo 'First PDF generation done.' || echo 'First PDF generation done.'
 	COMMAND ${CMAKE_COMMAND}
@@ -1865,9 +1866,12 @@
 	ARGS -E chdir ${TEX_GEN_DIR} test ! -f ${REFMAN_PDF} && (cd ${TEX_GEN_DIR} && echo '${WARNING_PDF_MSG}' > ${REFMAN_PDF} && echo '${WARNING_PDF_MSG}') || echo 'The PDF reference manual has been successfully built'
 	COMMAND ${CMAKE_COMMAND}
 	ARGS -E chdir ${TEX_GEN_DIR} echo 'The file size of the PDF reference manual is: ' && (cd ${TEX_GEN_DIR} && du -sh ${REFMAN_PDF} | cut -f1)
+	DEPENDS doc
 	COMMENT "Generating PDF Reference Manual ('${REFMAN_TEX}' => '${REFMAN_PDF}')...")
+
   # Add the 'pdf' target, depending on the generated PDF manual
-  add_custom_target (pdf ALL DEPENDS ${REFMAN_PDF_FULL})
+  add_custom_target (pdf ALL DEPENDS ${REFMAN_IDX_FULL} ${REFMAN_PDF_FULL})
+  add_dependencies (pdf css_style img_style)

   # Clean-up $build/html and $build/latex on 'make clean'
   set_property (DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES
@@ -1986,7 +1990,8 @@

   # Add the 'man' target, depending on the generated manual page documentation
   set (MAN_ALL_TARGETS ${MAN_ALL_TARGETS} PARENT_SCOPE)
-  add_custom_target (man ALL DEPENDS ${MAN_ALL_TARGETS})
+  add_custom_target (man)
+  add_dependencies (${MAN_ALL_TARGETS})

   # Clean-up $build/man1 and $build/man3 on 'make clean'
   set_property (DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES


[Doc] Improved the logging output of the PDF documentation generation by Doxygen.

--- config/project_config_embeddable.cmake
+++ config/project_config_embeddable.cmake
@@ -1783,18 +1783,23 @@
   set (REFMAN_TEX ${REFMAN}.tex)
   set (REFMAN_TEX ${REFMAN_TEX} PARENT_SCOPE)
   set (REFMAN_TEX_FULL ${TEX_GEN_DIR}/${REFMAN_TEX})
+  set (REFMAN_TEX_OTHERS ${TEX_GEN_DIR}/index.tex ${TEX_GEN_DIR}/namespaces.tex
+	${TEX_GEN_DIR}/annotated.tex ${TEX_GEN_DIR}/hierarchy.tex
+	${TEX_GEN_DIR}/files.tex)

   # Add the build rule for Doxygen
   set (DOXYGEN_OUTPUT_REL html/index.html)
   set (DOXYGEN_OUTPUT_REL ${DOXYGEN_OUTPUT_REL} PARENT_SCOPE)
   set (DOXYGEN_OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${DOXYGEN_OUTPUT_REL})
   set (DOXYGEN_OUTPUT ${DOXYGEN_OUTPUT} PARENT_SCOPE)
-  add_custom_command (OUTPUT ${DOXYGEN_OUTPUT} ${REFMAN_TEX_FULL}
+  add_custom_command (
+	OUTPUT ${DOXYGEN_OUTPUT} ${REFMAN_TEX_FULL} ${REFMAN_TEX_OTHERS}
 	COMMAND ${DOXYGEN_EXECUTABLE} ARGS ${DOXYGEN_CFG}
 	DEPENDS ${DOXYGEN_CFG} ${doc_SOURCES}
 	COMMENT "Generating documentation with Doxygen, from '${DOXYGEN_CFG}'...")
   # Add the 'doc' target, depending on the generated HTML documentation
-  add_custom_target (doc ALL DEPENDS ${DOXYGEN_OUTPUT} ${REFMAN_TEX_FULL})
+  add_custom_target (doc ALL DEPENDS
+	${DOXYGEN_OUTPUT} ${REFMAN_TEX_FULL} ${REFMAN_TEX_OTHERS})

   ##
   # Copy the needed files into the generated HTML directory
@@ -1845,18 +1850,21 @@
   set (REFMAN_PDF ${REFMAN}.pdf)
   set (REFMAN_PDF ${REFMAN_PDF} PARENT_SCOPE)
   set (REFMAN_PDF_FULL ${TEX_GEN_DIR}/${REFMAN_PDF})
+  set (WARNING_PDF_MSG "Warning: the PDF reference manual ('${REFMAN_PDF_FULL}') has failed to build. You can perform a simple re-build ('make' in the 'doc/latex' sub-directory).")
   # Note the "|| echo" addition to the pdflatex command, as that latter returns
   # as if there were an error.
   add_custom_command (OUTPUT ${REFMAN_IDX_FULL} ${REFMAN_PDF_FULL}
 	DEPENDS doc css_style img_style
 	COMMAND ${CMAKE_COMMAND}
-	ARGS -E chdir ${TEX_GEN_DIR} pdflatex -interaction batchmode ${REFMAN_TEX} || echo 'First PDF generation done.'
+	ARGS -E chdir ${TEX_GEN_DIR} pdflatex -interaction batchmode ${REFMAN_TEX} && echo 'First PDF generation done.' || echo 'First PDF generation done.'
 	COMMAND ${CMAKE_COMMAND}
-	ARGS -E chdir ${TEX_GEN_DIR} egrep -s 'Rerun to get cross-references right' refman.log && (cd ${TEX_GEN_DIR} && pdflatex -interaction batchmode ${REFMAN_TEX} || echo 'Second PDF generation done.') || echo 'Second PDF generation was not necessary'
+	ARGS -E chdir ${TEX_GEN_DIR} egrep -s -e 'Fatal error occurred' -e 'Rerun to get cross-references right' refman.log && (cd ${TEX_GEN_DIR} && pdflatex -interaction batchmode ${REFMAN_TEX} && echo 'Second PDF generation done.') || echo 'Second PDF generation was not necessary'
 	COMMAND ${CMAKE_COMMAND}
-	ARGS -E chdir ${TEX_GEN_DIR} egrep -s 'Rerun to get cross-references right' refman.log && (cd ${TEX_GEN_DIR} && pdflatex -interaction batchmode ${REFMAN_TEX} || echo 'Third PDF generation done.') || echo 'Third PDF generation was not necessary'
+	ARGS -E chdir ${TEX_GEN_DIR} egrep -s -e 'Fatal error occurred' -e 'Rerun to get cross-references right' refman.log && (cd ${TEX_GEN_DIR} && pdflatex -interaction batchmode ${REFMAN_TEX} && echo 'Third PDF generation done.') || echo 'Third PDF generation was not necessary'
 	COMMAND ${CMAKE_COMMAND}
-	ARGS -E chdir ${TEX_GEN_DIR} test -f ${REFMAN_PDF} || (cd ${TEX_GEN_DIR} && touch ${REFMAN_PDF} && echo 'Warning: the PDF reference manual ('${REFMAN_PDF_FULL}') has failed to build. You can perform a simple re-build ('make' in the 'doc/latex' sub-directory).')
+	ARGS -E chdir ${TEX_GEN_DIR} test ! -f ${REFMAN_PDF} && (cd ${TEX_GEN_DIR} && echo '${WARNING_PDF_MSG}' > ${REFMAN_PDF} && echo '${WARNING_PDF_MSG}') || echo 'The PDF reference manual has been successfully built'
+	COMMAND ${CMAKE_COMMAND}
+	ARGS -E chdir ${TEX_GEN_DIR} echo 'The file size of the PDF reference manual is: ' && (cd ${TEX_GEN_DIR} && du -sh ${REFMAN_PDF} | cut -f1)
 	COMMENT "Generating PDF Reference Manual ('${REFMAN_TEX}' => '${REFMAN_PDF}')...")
   # Add the 'pdf' target, depending on the generated PDF manual
   add_custom_target (pdf ALL DEPENDS ${REFMAN_PDF_FULL})


Separate 3rdParty folders for separate platforms

because they may have different sets of dependencies, and vcpkg complains if a port was built but no longer present (though it didn't before)
also because they may potentially use different versions of a port, or be differently patched which could cause much more subtle problems

--- contrib/cmake/build_from_scratch.cmake
+++ contrib/cmake/build_from_scratch.cmake
@@ -69,6 +69,9 @@
 message(STATUS "Building for triplet ${_triplet} with SDK dir ${_sdk_dir}")

 set (_3rdparty_sdk_dir "${_sdk_dir}/../3rdparty_sdk")
+if(PLATFORM)
+    set(_3rdparty_sdk_dir ${_3rdparty_sdk_dir}_${PLATFORM})
+endif()

 file(MAKE_DIRECTORY ${_3rdparty_sdk_dir})


Mark built in COG C++ compiler flags as advanced

--- cmake/Modules/CMakeCOGCXXInformation.cmake
+++ cmake/Modules/CMakeCOGCXXInformation.cmake
@@ -60,3 +60,12 @@
     "<CMAKE_COGCXX_COMPILER> <DEFINES> <FLAGS> -o <OBJECT> <SOURCE>"
     "${CMAKE_COMMAND} -DCMAKE_OBJCOPY=${CMAKE_OBJCOPY} -DOBJECT=<OBJECT> -P ${CMAKE_COGCXX_OBJCOPY}"
 )
+
+# mark the built in compiler flags as advanced
+mark_as_advanced(
+    CMAKE_COGCXX_FLAGS
+    CMAKE_COGCXX_FLAGS_DEBUG
+    CMAKE_COGCXX_FLAGS_MINSIZEREL
+    CMAKE_COGCXX_FLAGS_RELEASE
+    CMAKE_COGCXX_FLAGS_RELWITHDEBINFO
+)


Changed to find telepathy-farstream library

--- cmake/modules/FindTelepathyFarstream.cmake
+++ cmake/modules/FindTelepathyFarstream.cmake
@@ -1,49 +1,50 @@
-# - Try to find Telepathy-Farsight
+# - Try to find Telepathy-Farstream
 # Once done this will define
 #
-#  TELEPATHY_FARSIGHT_FOUND - system has TelepathyFarsight
-#  TELEPATHY_FARSIGHT_INCLUDE_DIR - the TelepathyFarsight include directory
-#  TELEPATHY_FARSIGHT_LIBRARIES - the libraries needed to use TelepathyFarsight
-#  TELEPATHY_FARSIGHT_DEFINITIONS - Compiler switches required for using TelepathyFarsight
+#  TELEPATHY_FARSTREAM_FOUND - system has TelepathyFarstream
+#  TELEPATHY_FARSTREAM_INCLUDE_DIR - the TelepathyFarstream include directory
+#  TELEPATHY_FARSTREAM_LIBRARIES - the libraries needed to use TelepathyFarstream
+#  TELEPATHY_FARSTREAM_DEFINITIONS - Compiler switches required for using TelepathyFarstream

 # Copyright (c) 2010, Dario Freddi <dario.freddi@collabora.co.uk>
+# Copyright (c) 2011, Mateu Batle <mateu.batle@collabora.co.uk>
 #
 # Redistribution and use is allowed according to the terms of the BSD license.

-if (TELEPATHY_FARSIGHT_INCLUDE_DIR AND TELEPATHY_FARSIGHT_LIBRARIES)
+if (TELEPATHY_FARSTREAM_INCLUDE_DIR AND TELEPATHY_FARSTREAM_LIBRARIES)
    # in cache already
-   set(TelepathyFarsight_FIND_QUIETLY TRUE)
-else (TELEPATHY_FARSIGHT_INCLUDE_DIR AND TELEPATHY_FARSIGHT_LIBRARIES)
-   set(TelepathyFarsight_FIND_QUIETLY FALSE)
-endif (TELEPATHY_FARSIGHT_INCLUDE_DIR AND TELEPATHY_FARSIGHT_LIBRARIES)
+   set(TelepathyFarstream_FIND_QUIETLY TRUE)
+else (TELEPATHY_FARSTREAM_INCLUDE_DIR AND TELEPATHY_FARSTREAM_LIBRARIES)
+   set(TelepathyFarstream_FIND_QUIETLY FALSE)
+endif (TELEPATHY_FARSTREAM_INCLUDE_DIR AND TELEPATHY_FARSTREAM_LIBRARIES)

 if (NOT WIN32)
     # use pkg-config to get the directories and then use these values
     # in the find_path() and find_library() calls
     find_package(PkgConfig)
-    if (TELEPATHY_FARSIGHT_MIN_VERSION)
-        PKG_CHECK_MODULES(PC_TELEPATHY_FARSIGHT telepathy-farsight>=${TELEPATHY_FARSIGHT_MIN_VERSION})
-    else (TELEPATHY_FARSIGHT_MIN_VERSION)
-        PKG_CHECK_MODULES(PC_TELEPATHY_FARSIGHT telepathy-farsight)
-    endif (TELEPATHY_FARSIGHT_MIN_VERSION)
-    set(TELEPATHY_FARSIGHT_DEFINITIONS ${PC_TELEPATHY_FARSIGHT_CFLAGS_OTHER})
+    if (TELEPATHY_FARSTREAM_MIN_VERSION)
+        PKG_CHECK_MODULES(PC_TELEPATHY_FARSTREAM telepathy-farstream>=${TELEPATHY_FARSTREAM_MIN_VERSION})
+    else (TELEPATHY_FARSTREAM_MIN_VERSION)
+        PKG_CHECK_MODULES(PC_TELEPATHY_FARSTREAM telepathy-farstream)
+    endif (TELEPATHY_FARSTREAM_MIN_VERSION)
+    set(TELEPATHY_FARSTREAM_DEFINITIONS ${PC_TELEPATHY_FARSTREAM_CFLAGS_OTHER})
 endif (NOT WIN32)

-find_path(TELEPATHY_FARSIGHT_INCLUDE_DIR telepathy-farsight/channel.h
+find_path(TELEPATHY_FARSTREAM_INCLUDE_DIR telepathy-farstream/channel.h
    PATHS
-   ${PC_TELEPATHY_FARSIGHT_INCLUDEDIR}
-   ${PC_TELEPATHY_FARSIGHT_INCLUDE_DIRS}
+   ${PC_TELEPATHY_FARSTREAM_INCLUDEDIR}
+   ${PC_TELEPATHY_FARSTREAM_INCLUDE_DIRS}
    PATH_SUFFIXES telepathy-1.0
    )

-find_library(TELEPATHY_FARSIGHT_LIBRARIES NAMES telepathy-farsight
+find_library(TELEPATHY_FARSTREAM_LIBRARIES NAMES telepathy-farstream
    PATHS
-   ${PC_TELEPATHY_FARSIGHT_LIBDIR}
-   ${PC_TELEPATHY_FARSIGHT_LIBRARY_DIRS}
+   ${PC_TELEPATHY_FARSTREAM_LIBDIR}
+   ${PC_TELEPATHY_FARSTREAM_LIBRARY_DIRS}
    )

 include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(TelepathyFarsight DEFAULT_MSG TELEPATHY_FARSIGHT_LIBRARIES
-                                                                TELEPATHY_FARSIGHT_INCLUDE_DIR)
+find_package_handle_standard_args(TelepathyFarstream DEFAULT_MSG TELEPATHY_FARSTREAM_LIBRARIES
+                                                                TELEPATHY_FARSTREAM_INCLUDE_DIR)

-mark_as_advanced(TELEPATHY_FARSIGHT_INCLUDE_DIR TELEPATHY_FARSIGHT_LIBRARIES)
+mark_as_advanced(TELEPATHY_FARSTREAM_INCLUDE_DIR TELEPATHY_FARSTREAM_LIBRARIES)


Update yaml-cpp to 0.6.1

Update yaml-cpp to 0.6.1

There was a quick update to fix an installation bug (which I don't
believe affected AliPhysics, but it is a minor update that is worth
having in case it makes a difference). Imported from commit
5d5bb52ec2825eb4c0c932a9c2d50dc3699f932f

--- PWG/Tools/yaml-cpp/yaml-cpp.pc.cmake
+++ PWG/Tools/yaml-cpp/yaml-cpp.pc.cmake
@@ -1,5 +1,7 @@
-libdir=@LIB_INSTALL_DIR@
-includedir=@INCLUDE_INSTALL_ROOT_DIR@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+includedir=${prefix}/@INCLUDE_INSTALL_ROOT_DIR@
+libdir=${exec_prefix}/@LIB_INSTALL_DIR@

 Name: Yaml-cpp
 Description: A YAML parser and emitter for C++


Removing old findPagmo script

Removing old findPagmo script

--- Tudat/External/CMake/FindPaGMO.cmake
+++ Tudat/External/CMake/FindPaGMO.cmake
@@ -1,112 +0,0 @@
- #    Copyright (c) 2010-2017, Delft University of Technology
- #    All rigths reserved
- #
- #    This file is part of the Tudat. Redistribution and use in source and
- #    binary forms, with or without modification, are permitted exclusively
- #    under the terms of the Modified BSD license. You should have received
- #    a copy of the license with this file. If not, please or visit:
- #    http://tudat.tudelft.nl/LICENSE.
- #
- #    References
- #      FindEigen3.cmake (2-clause BSD license)
- #
- #    Notes
- #	    Sets the following variables:
- #          PAGMO_INCLUDE_DIR    - Source directory to include
- #
- #   	    PAGMO_VERSION        - PaGMO version found e.g. 2.4.0
- #   	    PAGMO_VERSION_MAJOR  - PaGMO major version found e.g. 2
- #   	    PAGMO_VERSION_MINOR  - PaGMO minor version found e.g. 4
- #   	    (PAGMO_VERSION_PATCH  - PaGMO patch version found e.g. 0)
-
-macro(_pagmo_check_version)
-
-  message(STATUS "Checking for PaGMO in: ${PAGMO_BASE_PATH} and ${PAGMO_BUILD_PATH}" )
-
-  # Reads the version from a file in the build folder
-  file(READ "${PAGMO_BUILD_PATH}/include/pagmo/config.hpp" _pagmo_header)
-
-  STRING(REGEX REPLACE "^.*define PAGMO_VERSION_MAJOR ([0-9]+).*" "\\1" PAGMO_VERSION_MAJOR "${_pagmo_header}")
-  STRING(REGEX REPLACE "^.*define PAGMO_VERSION_MINOR ([0-9]+).*" "\\1" PAGMO_VERSION_MINOR "${_pagmo_header}")
-  set(PAGMO_VERSION ${PAGMO_VERSION_MAJOR}.${PAGMO_VERSION_MINOR}.0)
-
-  # Only check version if a required is set.
-  if(PaGMO_FIND_VERSION)
-    if(${PAGMO_VERSION} VERSION_LESS ${PaGMO_FIND_VERSION})
-      set(PAGMO_VERSION_OK FALSE)
-    else(${PAGMO_VERSION} VERSION_LESS ${PaGMO_FIND_VERSION})
-      set(PAGMO_VERSION_OK TRUE)
-    endif(${PAGMO_VERSION} VERSION_LESS ${PaGMO_FIND_VERSION})
-  else(PaGMO_FIND_VERSION)
-      set(PAGMO_VERSION_OK TRUE)
-  endif(PaGMO_FIND_VERSION)
-
-  if(NOT PAGMO_VERSION_OK)
-    message(STATUS "PaGMO version ${PAGMO_VERSION} found in ${PAGMO_INCLUDE_DIR}, "
-                   "but at least version ${PaGMO_FIND_VERSION} is required!")
-  endif(NOT PAGMO_VERSION_OK)
-
-  #Set include directories
-  set(PAGMO_INCLUDE_DIR "${PAGMO_BASE_PATH}/include/;${PAGMO_BUILD_PATH}/include/")
-endmacro(_pagmo_check_version)
-
-
-if(PAGMO_BASE_PATH)
-
-  set(PAGMO_BASE_PATH_INIT ON)
-
-else (PAGMO_BASE_PATH)
-  find_path(PAGMO_BASE_PATH NAMES pagmo-config.cmake.in
-      PATHS
-      ${PROJECT_SOURCE_DIR}/pagmo2
-      ${PROJECT_SOURCE_DIR}/../pagmo2
-      ${PROJECT_SOURCE_DIR}/../../../pagmo2
-      ${PROJECT_SOURCE_DIR}/../../../../pagmo2
-      ${PROJECT_SOURCE_DIR}/../../../../../pagmo2
-    )
-
-    if(PAGMO_BASE_PATH)
-	set(PAGMO_BASE_PATH_INIT ON)
-	else(PAGMO_BUILD_PATH)
-	message(STATUS "Couldn't find PaGMO directory!")
-    endif()
-
-    mark_as_advanced(PAGMO_BASE_PATH)
-
-endif(PAGMO_BASE_PATH)
-
-
-if(PAGMO_BUILD_PATH)
-
-  set(PAGMO_BUILD_PATH_INIT ON)
-
-else (PAGMO_BUILD_PATH)
-  find_path(PAGMO_BUILD_PATH NAMES "include/pagmo/config.hpp"
-      PATHS
-      ${CMAKE_BINARY_DIR}/pagmo2
-      ${CMAKE_BINARY_DIR}/../pagmo2
-      ${CMAKE_BINARY_DIR}/../../../pagmo2
-      ${CMAKE_BINARY_DIR}/../../../../pagmo2
-      ${CMAKE_BINARY_DIR}/../../../../../pagmo2
-    )
-
-    if(PAGMO_BUILD_PATH)
-	set(PAGMO_BUILD_PATH_INIT ON)
-    else(PAGMO_BUILD_PATH)
-	message(STATUS "Couldn't find PaGMO build directory!")
-    endif()
-
-    mark_as_advanced(PAGMO_BUILD_PATH)
-
-endif(PAGMO_BUILD_PATH)
-
-
-if(PAGMO_BASE_PATH_INIT AND PAGMO_BUILD_PATH_INIT)
-    _pagmo_check_version()
-    set(FOUND_PAGMO ${PAGMO_VERSION_OK})
-endif()
-
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(PaGMO DEFAULT_MSG PAGMO_INCLUDE_DIR  PAGMO_VERSION_OK)
-


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 06)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   18)
+SET(KWSYS_DATE_STAMP_DAY   19)


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -7,4 +7,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 05)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   11)
+SET(KWSYS_DATE_STAMP_DAY   12)


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -7,4 +7,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 09)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   01)
+SET(KWSYS_DATE_STAMP_DAY   02)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 05)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   13)
+SET(KWSYS_DATE_STAMP_DAY   14)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 11)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   01)
+SET(KWSYS_DATE_STAMP_DAY   02)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 07)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   17)
+SET(KWSYS_DATE_STAMP_DAY   18)


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -7,4 +7,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 04)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   29)
+SET(KWSYS_DATE_STAMP_DAY   30)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 11)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   15)
+SET(KWSYS_DATE_STAMP_DAY   16)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 08)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   16)
+SET(KWSYS_DATE_STAMP_DAY   17)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 05)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   18)
+SET(KWSYS_DATE_STAMP_DAY   19)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 04)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   10)
+SET(KWSYS_DATE_STAMP_DAY   11)


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -7,4 +7,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 05)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   14)
+SET(KWSYS_DATE_STAMP_DAY   15)


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -7,4 +7,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 02)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   02)
+SET(KWSYS_DATE_STAMP_DAY   03)


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -7,4 +7,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 05)

 # KWSys version date day component.  Format is DD.
-SET(KWSYS_DATE_STAMP_DAY   01)
+SET(KWSYS_DATE_STAMP_DAY   02)


zenity backend file filter fix

zenity backend file filter fix

--- Tools/CMake/torque3d.cmake
+++ Tools/CMake/torque3d.cmake
@@ -464,7 +464,7 @@
        add_definitions(${GTK3_CFLAGS_OTHER})

 	   if(TORQUE_UseZenity)
-			set(BLACKLIST "nfd_win.cpp" "nfd_cocoa.m"  )
+			set(BLACKLIST "nfd_win.cpp" "nfd_cocoa.m" "nfd_gtk.c" )
 	   else()
 			set(BLACKLIST "nfd_win.cpp" "nfd_cocoa.m" "simple_exec.h" "nfd_zenity.c")
 	   endif()


Added DISABLED flag to macro add_unit_test

--- cmake/Modules/MacroAddUnitTest.cmake
+++ cmake/Modules/MacroAddUnitTest.cmake
@@ -1,12 +1,14 @@
 # usage: add_unit_test(NAME name
 #                      SOURCES source1 source2 ...
+#                      [DISABLED true]
 #                      [LINK_LIBRARIES lib1 lib2 ...]
+#                      [WORKING_DIRECTORY dir]
 #                      [ARGS arg1 arg2 ...]
 #                      [TAG tag])
 # It makes available the variable UNIT_TEST_TARGETS containing all the unit tests
 include(MacroParseArguments)
 macro(add_unit_test)
-    parse_arguments(UNIT_TEST "NAME;SOURCES;LINK_LIBRARIES;WORKING_DIRECTORY;ARGS;TAG" ${ARGN})
+    parse_arguments(UNIT_TEST "NAME;SOURCES;DISABLED;LINK_LIBRARIES;WORKING_DIRECTORY;ARGS;TAG" ${ARGN})
     list(GET UNIT_TEST_DEFAULT_ARGS 0 UNIT_TEST_NAME)

     if(NOT UNIT_TEST_NAME)
@@ -17,16 +19,22 @@
     if(UNIT_TEST_LINK_LIBRARIES)
         target_link_libraries(${UNIT_TEST_NAME} ${UNIT_TEST_LINK_LIBRARIES})
     endif()
+
     if(UNIT_TEST_TAG)
         set(testName "${UNIT_TEST_TAG}/${UNIT_TEST_NAME}")
     else()
         set(testName "${UNIT_TEST_NAME}")
     endif()
-    add_test(NAME ${testName}
-             WORKING_DIRECTORY ${UNIT_TEST_WORKING_DIRECTORY}
-             COMMAND ${UNIT_TEST_NAME} ${UNIT_TEST_ARGS})
-    list(APPEND UNIT_TEST_TARGETS  ${testName})
-    message(STATUS "  added test: ${testName}")
+
+    if (UNIT_TEST_DISABLED)
+        message(STATUS "  skipped test: ${testName}")
+    else()
+        add_test(NAME ${testName}
+                 WORKING_DIRECTORY ${UNIT_TEST_WORKING_DIRECTORY}
+                 COMMAND ${UNIT_TEST_NAME} ${UNIT_TEST_ARGS})
+        list(APPEND UNIT_TEST_TARGETS  ${testName})
+        message(STATUS "  added test: ${testName}")
+    endif()
 endmacro()

 # usage: add_all_tests_target(tests)


Set PTL_SANITIZER_TYPE to existing value, if it exists (#35)

* Set PTL_SANITIZER_TYPE to existing value, if it exists

Prior to CMake 3.21, CMake's set(... CACHE ...) command could override
existing values of a variable:

- https://gitlab.kitware.com/cmake/cmake/-/issues/22038

This was fixed in 3.21 so that setting the cache value would not override
any existing value:

https://gitlab.kitware.com/cmake/cmake/-/merge_requests/6146

If PTL is used as a subproject, any value for PTL_SANITIZER_TYPE
set by the main project will be overriden to the default "thread".
This can lead to build errors due to more than one, incompatible,
sanitization options being used.

Set PTL_SANITIZER_TYPE to the existing value if it exists, avoiding
override, otherwise defaulting to "thread".

* Fix cmake-format errors

--- cmake/Modules/PTLBuildSettings.cmake
+++ cmake/Modules/PTLBuildSettings.cmake
@@ -119,8 +119,13 @@
 # https://discourse.cmake.org/t/best-practice-for-multi-config-build-options/2049
 ptl_add_option(PTL_USE_SANITIZER "Enable -fsanitize=<type>" OFF)
 if(PTL_USE_SANITIZER)
+    set(__ptl_sanitizer_type_default "thread")
+    if(PTL_SANITIZER_TYPE)
+        set(__ptl_sanitizer_type_default "${PTL_SANITIZER_TYPE}")
+    endif()
+
     set(PTL_SANITIZER_TYPE
-        "thread"
+        "${__ptl_sanitizer_type_default}"
         CACHE STRING "Sanitizer type (-fsanitize=<type>)")
     set_property(CACHE PTL_SANITIZER_TYPE PROPERTY STRINGS "thread" "address" "undefined")
     ptl_message_on_change(PTL_SANITIZER_TYPE "Building PTL with sanitizer type")


CMake: Fixed cross-compiling.

CMake: Fixed cross-compiling.

`clean' makefile target removes add-hoc directory created for building
the native tablegen.

git-svn-id: 0ff597fd157e6f4fc38580e8d64ab130330d2411@59005 91177308-0d34-0410-b5e6-96231b3b80d8

--- cmake/modules/CrossCompileLLVM.cmake
+++ cmake/modules/CrossCompileLLVM.cmake
@@ -1,8 +1,8 @@

 if( ${LLVM_TABLEGEN} STREQUAL "tblgen" )
+  set(CX_NATIVE_TG_DIR "${CMAKE_BINARY_DIR}/native")
   set(LLVM_TABLEGEN "${CX_NATIVE_TG_DIR}/bin/tblgen")

-  message(STATUS "CX_NATIVE_TG_DIR : ${CX_NATIVE_TG_DIR}")
   add_custom_command(OUTPUT ${CX_NATIVE_TG_DIR}
     COMMAND ${CMAKE_COMMAND} -E make_directory ${CX_NATIVE_TG_DIR}
     COMMENT "Creating ${CX_NATIVE_TG_DIR}...")
@@ -22,10 +22,5 @@

   add_dependencies(tblgen NativeTableGen)

-  # TODO: We should clean the native build when the `clean target
-  # is invoked. This doesn't work.
-  # add_custom_command(TARGET clean
-  #   COMMAND ${CMAKE_BUILD_TOOL} -C ${CX_NATIVE_TG_DIR}/utils/TableGen clean
-  #   POST_BUILD
-  #   COMMENT "Cleaning native TableGen...")
+  set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${CX_NATIVE_TG_DIR})
 endif()


Setting target architecture for openblas

Former-commit-id: 772a170ab7077faccc132b7bf87f06287e75e6fa

--- cmake-modules/SetupDependenciesConan.cmake
+++ cmake-modules/SetupDependenciesConan.cmake
@@ -46,7 +46,8 @@
         if(${_host_name} MATCHES "travis|TRAVIS|Travis|fv-")
             message(STATUS "Setting dynamic arch for openblas")
             list(APPEND DMRG_CONAN_OPTIONS
-                    OPTIONS openblas:dynamic_arch=True)
+                    OPTIONS openblas:dynamic_arch=False
+                    OPTIONS openblas:arch=HASWELL)
         endif()
         find_package(Fortran REQUIRED)
         list(APPEND FOUND_TARGETS gfortran::gfortran)


Add /permissive- flags with VS2017

Add /permissive- flags with VS2017

--- cmake/modules/SwiftSharedCMakeConfig.cmake
+++ cmake/modules/SwiftSharedCMakeConfig.cmake
@@ -279,6 +279,8 @@
   # the repository for IDE features such as #pragma mark "Title".
   if("${CMAKE_C_COMPILER_ID}" STREQUAL "MSVC")
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4068")
+    check_cxx_compiler_flag("/permissive-" CXX_SUPPORTS_PERMISSIVE_FLAG)
+    append_if(CXX_SUPPORTS_PERMISSIVE_FLAG "/permissive-" CMAKE_CXX_FLAGS)
   endif()

   # Disallow calls to objc_msgSend() with no function pointer cast.


qt5ftp: depends on qt5network

qt5ftp: depends on qt5network

Change-Id: I843c540964374e7faa19fb6e8b5753a5087ce8d6

--- cmake/qibuild/modules/qt5_ftp-config.cmake
+++ cmake/qibuild/modules/qt5_ftp-config.cmake
@@ -6,3 +6,4 @@
 include("${_ROOT_DIR}/qt5utils.cmake")

 qt5_flib(QT5_FTP Qt5Ftp)
+qi_persistent_set(QT5_FTP_DEPENDS QT5_NETWORK)


qt5_gui-config.cmake: fix whitespace

qt5_gui-config.cmake: fix whitespace

Change-Id: I88c6f34be5ea182a0fd1392604ec18028e2541fe

--- cmake/qibuild/modules/qt5_gui-config.cmake
+++ cmake/qibuild/modules/qt5_gui-config.cmake
@@ -1,9 +1,9 @@
 ## Copyright (c) 2012-2015 Aldebaran Robotics. All rights reserved.
 ## Use of this source code is governed by a BSD-style license that can be
 ## found in the COPYING file.
-
-get_filename_component(_ROOT_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
-include("${_ROOT_DIR}/qt5utils.cmake")
-
-qt5_flib(QT5_GUI Qt5Gui)
-qi_persistent_set(QT5_GUI_DEPENDS QT5_CORE)
+
+get_filename_component(_ROOT_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
+include("${_ROOT_DIR}/qt5utils.cmake")
+
+qt5_flib(QT5_GUI Qt5Gui)
+qi_persistent_set(QT5_GUI_DEPENDS QT5_CORE)


Update facts.cmake

Update facts.cmake

--- facts/facts.cmake
+++ facts/facts.cmake
@@ -124,7 +124,7 @@

 			# 5. compilo y genera el paquete en local
 			execute_process(
-				COMMAND python ${ARTIFACTS_PATH}/build.py ${PACKAGE} --depends=${CMAKI_PATH}/../depends.json --cmakefiles=${CMAKI_PATH} --prefix=${CMAKE_PREFIX_PATH} --third-party-dir=${CMAKE_PREFIX_PATH} -o -d
+				COMMAND python ${ARTIFACTS_PATH}/build.py ${PACKAGE} --depends=${CMAKI_PATH}/../depends.json --cmakefiles=${CMAKI_PATH} --prefix=${CMAKE_PREFIX_PATH} --third-party-dir=${CMAKE_PREFIX_PATH} -o
 				WORKING_DIRECTORY "${ARTIFACTS_PATH}"
 				RESULT_VARIABLE artifacts_result
 				)


Updates to softdevice file

Updates to softdevice file

--- lib/components/softdevice/softdevice.cmake
+++ lib/components/softdevice/softdevice.cmake
@@ -1,7 +1,25 @@
 # Softdevice inclusion
+
+include_directories(${CMAKE_CURRENT_LIST_DIR}/common/softdevice_handler)
+
+set(SOFTDEVICE_SOURCES
+	${CMAKE_CURRENT_LIST_DIR}/common/softdevice_handler/softdevice_handler_appsh.c
+	${CMAKE_CURRENT_LIST_DIR}/common/softdevice_handler/softdevice_handler.c
+)

 if(${SOFTDEVICE} EQUAL "S132")

+include_directories(${CMAKE_CURRENT_LIST_DIR}/s132/headers)
+
+set(SOFTDEVICE_LD ${CMAKE_CURRENT_LIST_DIR}/s132/toolchain/armgcc/armgcc_s132_nrf52832_xxaa.ld)
+
 elseif(${SOFTDEVICE} EQUAL "S212")

-endif()+include_directories(${CMAKE_CURRENT_LIST_DIR}/s212/headers)
+
+set(SOFTDEVICE_LD ${CMAKE_CURRENT_LIST_DIR}/s212/toolchain/armgcc/armgcc/s21_nrf52832_xxaa.ld)
+
+endif()
+
+add_library(softdevice ${SOFTDEVICE_SOURCES})
+


Code formating in WindowsPackaging.cmake

--- packaging/windows/WindowsPackaging.cmake
+++ packaging/windows/WindowsPackaging.cmake
@@ -25,12 +25,12 @@
 	SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${CPACK_PACKAGE_NAME} ${CPACK_PACKAGE_VERSION} (Win64)")
 	SET(MSVC_ARCH x64)

-else(CMAKE_CL_64)
+else()
     SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
 	SET(CPACK_NSIS_PACKAGE_NAME ${CPACK_PACKAGE_NAME})
 	SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${CPACK_PACKAGE_NAME} ${CPACK_PACKAGE_VERSION}")
 	SET(MSVC_ARCH x86)
-endif(CMAKE_CL_64)
+endif()

 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${MSVC_ARCH}")

@@ -69,8 +69,8 @@
     message(WARNING "PRIVATE_PLUGINS_DIRS : Be careful to use '/' in your plugin paths and to end each path with '/' to copy the private plugins in the same level as the public plugins. Do not forget to separate each path with ';'")
     foreach(pluginpath ${PRIVATE_PLUGINS_DIRS})
         install(DIRECTORY ${pluginpath} DESTINATION plugins COMPONENT Runtime FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}")
-    endforeach(pluginpath)
-else(NOT PRIVATE_PLUGINS_DIRS STREQUAL "")
+    endforeach()
+else()
     message(WARNING "PACKAGING : If you want to add private plugins to your package don't forget to set the PRIVATE_PLUGINS_DIRS variable in the cache.")
 endif()


Update Configure.cmake

Update Configure.cmake

Move tiff library header from standard header list.

--- cmake/Configure.cmake
+++ cmake/Configure.cmake
@@ -86,13 +86,13 @@
     sys/stat.h
     sys/types.h
     sys/wait.h
-    tiffio.h
     unistd.h

     cairo/cairo-version.h
     CL/cl.h
     OpenCL/cl.h
     pango-1.0/pango/pango-features.h
+    tiffio.h
     unicode/uchar.h
 )
 check_includes(include_files_list)


Removed Coveralls upload message.

Removed Coveralls upload message.

--- cmake/Coveralls.cmake
+++ cmake/Coveralls.cmake
@@ -83,8 +83,6 @@
 		)

 	if (_COVERALLS_UPLOAD)
-		message("COVERALLS UPLOAD: ON")
-
 		find_program(CURL_EXECUTABLE curl)

 		if (NOT CURL_EXECUTABLE)
@@ -104,7 +102,6 @@

 		add_custom_target(coveralls DEPENDS coveralls_upload)
 	else()
-		message("COVERALLS UPLOAD: OFF")
 		add_custom_target(coveralls DEPENDS coveralls_generate)
 	endif()


static nifti znz library from homebrew explicitly requires zlib

--- cmake/FindNifti.cmake
+++ cmake/FindNifti.cmake
@@ -45,6 +45,10 @@
     lib
 )

+if(NiftiZnz_LIBRARY)
+  find_package(ZLIB)
+endif()
+
 find_library(NiftiIo_LIBRARY_DEBUG
   NAMES
     niftioiod
@@ -79,6 +83,9 @@
   set(Nifti_LIBRARIES ${Nifti_LIBRARIES} optimized ${NiftiZnz_LIBRARY} debug ${NiftiZnz_LIBRARY_DEBUG})
 else()
   set(Nifti_LIBRARIES ${Nifti_LIBRARIES} ${NiftiZnz_LIBRARY})
+  if (ZLIB_LIBRARY)
+    set(Nifti_LIBRARIES ${Nifti_LIBRARIES} ${ZLIB_LIBRARY})
+  endif()
 endif()

 find_package_handle_standard_args(Nifti


[Lsan] Disabling explicitally FreeBSD

[Lsan] Disabling explicitally FreeBSD

As it is not implemented upon usage, it just provokes numerous linkage issues so better switch off clearly.

Reviewers: vitalybuka, morehouse

Reviewed By: morehouse

Differential Revision: https://reviews.llvm.org/D61484

git-svn-id: c199f293c43da69278bea8e88f92242bf3aa95f7@359920 91177308-0d34-0410-b5e6-96231b3b80d8

--- cmake/config-ix.cmake
+++ cmake/config-ix.cmake
@@ -582,7 +582,7 @@
 endif()

 if (COMPILER_RT_HAS_SANITIZER_COMMON AND LSAN_SUPPORTED_ARCH AND
-    OS_NAME MATCHES "Darwin|Linux|FreeBSD")
+    OS_NAME MATCHES "Darwin|Linux")
   set(COMPILER_RT_HAS_LSAN TRUE)
 else()
   set(COMPILER_RT_HAS_LSAN FALSE)


make cmake build RelWithDebInfo use same optimzer settings as Release builds

--- cmake/CompilerConfig.cmake
+++ cmake/CompilerConfig.cmake
@@ -10,6 +10,7 @@
 set(CMAKE_POSITION_INDEPENDENT_CODE ON)
 set(EXTRA_CXX_FLAGS "-Werror -Wall -Wpedantic -Wextra")
 set(CMAKE_CXX_FLAGS_RELEASE "-Ofast -O3 -DRELEASE -DNDEBUG")
+set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELEASE} -g")
 #set(CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE} "-ggdb -fno-omit-frame-pointer")

 add_definitions("-D__FAVOR_BSD") #Not working correctly?


build: update the driver version to 73554b9

Co-authored-by: Leonardo Grasso <b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@leonardograsso.com>
Co-authored-by: Lorenzo Fontana <638e8f0171575864326f06d2a5f8e72287427b15@linux.com>
Signed-off-by: Leonardo Di Donato <2012e0ca99d70aa6c893822ff73002216e5dba72@gmail.com>

--- cmake/modules/sysdig.cmake
+++ cmake/modules/sysdig.cmake
@@ -29,8 +29,8 @@
 # default below In case you want to test against another sysdig version just pass the variable - ie., `cmake
 # -DSYSDIG_VERSION=dev ..`
 if(NOT SYSDIG_VERSION)
-  set(SYSDIG_VERSION "build/stripped") # todo(leogr): set the correct version and checksum before merging
-  set(SYSDIG_CHECKSUM "SHA256=c685e6d76b75c5deddf95a7b85563d3e5ae457b8c70450da20c721be6ed183a3")
+  set(SYSDIG_VERSION "73554b9c48b06612eb50494ee6fa5b779c57edc0") # todo(leogr): set the correct version and checksum before merging
+  set(SYSDIG_CHECKSUM "SHA256=c1c73498a834533dea61c979786a4ac3866743c17829d81aef209ddaa1b31538")
 endif()
 set(PROBE_VERSION "${SYSDIG_VERSION}")


bump version

bump version

--- cmake/ospray_version.cmake
+++ cmake/ospray_version.cmake
@@ -15,11 +15,11 @@
 ## ======================================================================== ##

 set(OSPRAY_VERSION_MAJOR 2)
-set(OSPRAY_VERSION_MINOR 0)
+set(OSPRAY_VERSION_MINOR 1)
 set(OSPRAY_VERSION_PATCH 0)
 set(OSPRAY_SOVERSION 2)
 set(OSPRAY_VERSION_GITHASH 0)
-set(OSPRAY_VERSION_NOTE "")
+set(OSPRAY_VERSION_NOTE "devel")

 if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git AND
    IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/.git)


Use CMake variables for compiler version detection

--- cmake/snippets/flags.cmake
+++ cmake/snippets/flags.cmake
@@ -58,15 +58,8 @@
   if (CMAKE_CXX_COMPILER MATCHES "clang\\+\\+")
     set(vistk_using_clang TRUE)
   else ()
-    execute_process(
-      COMMAND           "${CMAKE_CXX_COMPILER}"
-                        -dumpversion
-      WORKING_DIRECTORY "${vistk_source_dir}"
-      RESULT_VARIABLE   gcc_return
-      OUTPUT_VARIABLE   gcc_version)
-
-    if (gcc_version VERSION_GREATER "4.7.0" AND
-        gcc_version VERSION_LESS "4.7.2")
+    if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER "4.7.0" AND
+        CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7.2")
       if (VISTK_ENABLE_CXX11)
         message(SEND_ERROR
           "C++11 ABI is broken with GCC 4.7.0 and 4.7.1."


rm file

rm file

--- software/externals/cmake/externals.cmake
+++ software/externals/cmake/externals.cmake
@@ -3,7 +3,7 @@
 set(lcm_pod_depends)

 set(libbot_url https://github.com/mitdrc/libbot.git)
-set(libbot_revision 1d5627d1c45b72331677556d7d255d49a2c6934c)
+set(libbot_revision a7815ee7ca4d86a6bae87ff14a21da5d080677be)
 set(libbot_depends)

 set(Eigen_pod_url https://github.com/RobotLocomotion/eigen-pod.git)


ENH: Faster looping for continuous builds

--- DashboardScripts/tubetk_run_continuous.cmake
+++ DashboardScripts/tubetk_run_continuous.cmake
@@ -41,8 +41,8 @@

     endif()

-    # loop no faster than once every 5 minutes
-    ctest_sleep(${START_TIME} 300 ${CTEST_ELAPSED_TIME})
+    # loop no faster than once every 2 minutes
+    ctest_sleep(${START_TIME} 120 ${CTEST_ELAPSED_TIME})

   endwhile(${CTEST_ELAPSED_TIME} LESS 56000)


FIX: dinamically resolve uriparser include directory

--- CMakeLists.unix.cmake
+++ CMakeLists.unix.cmake
@@ -14,5 +14,11 @@
 set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/target/${CMAKE_INSTALL_LIBDIR})
 set (CTEST_BINARY_DIRECTORY ${CMAKE_BINARY_DIR}/target/tests/${CMAKE_INSTALL_BINDIR})

+
+find_path(URIPARSER_INCLUDE_DIR uriparser/Uri.h)
 find_library(URIPARSER_LIB NAMES uriparser liburiparser)
+
+message(STATUS "URIParser found on ${URIPARSER_INCLUDE_DIR}")
+
+include_directories(${URIPARSER_INCLUDE_DIR})
 link_libraries(${URIPARSER_LIB})


Add and fix some comments in ConfigureChecks.cmake.

--- ConfigureChecks.cmake
+++ ConfigureChecks.cmake
@@ -164,7 +164,7 @@
   endif()
 endif()

-# Determine whether your compiler supports some safer version of vsprintf.
+# Check if your compiler supports some safer version of vsprintf.

 check_cxx_source_compiles("
   #include <cstdio>
@@ -190,16 +190,14 @@
   " HAVE_VSPRINTF_S)
 endif()

-# Check for libz using the cmake supplied FindZLIB.cmake
+# Check if zlib is installed.

 if(NOT ZLIB_SOURCE)
   find_package(ZLIB)
-  if(ZLIB_FOUND)
-    set(HAVE_ZLIB 1)
-  else()
-    set(HAVE_ZLIB 0)
-  endif()
-endif()
+  set(HAVE_ZLIB ZLIB_FOUND)
+endif()
+
+# Check if CppUnit is installed.

 if(BUILD_TESTS)
   find_package(CppUnit)


fixed little issue with input of buildtype for single-configuration generator such as make

--- dist/WkCompilerSetup.cmake
+++ dist/WkCompilerSetup.cmake
@@ -179,24 +179,24 @@

 	# However special case for Single-Configuration Generator ( make ... )
-	# TODO : handle XCode
 	if ( NOT MSVC )
-		string( REGEX REPLACE ";" " " possible_build_types ${CMAKE_CONFIGURATION_TYPES} )
-		SET(${PROJECT_NAME}_BUILD_TYPE "Debug" CACHE STRING "Choose the type of build, options are: ${possible_build_types}." FORCE )
+		SET(${PROJECT_NAME}_BUILD_TYPE "Debug" CACHE STRING "Choose the type of build, options are: ${CMAKE_CONFIGURATION_TYPES}." )

 		#Checking if a the required build type is available in configurations list...
 		IF( ${PROJECT_NAME}_BUILD_TYPE )
 			string ( REGEX MATCH "${${PROJECT_NAME}_BUILD_TYPE}" BUILD_TYPE_MATCH ${CMAKE_CONFIGURATION_TYPES} )
-			IF ( BUILD_TYPE_MATCH )
-				#Forcing configuration at generation time
-				SET(CMAKE_BUILD_TYPE "${${PROJECT_NAME}_BUILD_TYPE}" CACHE INTERNAL "Internal CMake Build Type. Do not edit." )
-				message ( "CMAKE_BUILD_TYPE : ${CMAKE_BUILD_TYPE} ")
-			ELSE ( BUILD_TYPE_MATCH )
-				message ( FATAL_ERROR " ${PROJECT_NAME}_BUILD_TYPE is not a possible build type. Change it ! " )
-			ENDIF ( BUILD_TYPE_MATCH )
+			IF ( NOT BUILD_TYPE_MATCH )
+				message ( " ${${PROJECT_NAME}_BUILD_TYPE} is not a possible build type ! Defaulting to Debug . " )
+				SET(${PROJECT_NAME}_BUILD_TYPE "Debug" CACHE STRING "Choose the type of build, options are: ${CMAKE_CONFIGURATION_TYPES}." FORCE )
+			ENDIF ( NOT BUILD_TYPE_MATCH )
 		ELSE( ${PROJECT_NAME}_BUILD_TYPE )
-			message ( FATAL_ERROR " ${PROJECT_NAME}_BUILD_TYPE is not defined ! " )
+			message ( FATAL_ERROR " ${PROJECT_NAME}_BUILD_TYPE is not defined ! Defaulting to Debug. " )
+			SET(${PROJECT_NAME}_BUILD_TYPE "Debug" CACHE STRING "Choose the type of build, options are: ${CMAKE_CONFIGURATION_TYPES}." FORCE )
 		ENDIF( ${PROJECT_NAME}_BUILD_TYPE )
+
+		#Forcing configuration at generation time
+		SET(CMAKE_BUILD_TYPE "${${PROJECT_NAME}_BUILD_TYPE}" CACHE INTERNAL "Internal CMake Build Type. Do not edit." )
+		message ( "CMAKE_BUILD_TYPE : ${CMAKE_BUILD_TYPE} ")

 	endif( NOT MSVC )


version bump (0.0.2)

version bump (0.0.2)

--- src/CPackConfig.cmake
+++ src/CPackConfig.cmake
@@ -3,7 +3,7 @@
 set(CPACK_PACKAGE_NAME "libes0")

 set(CPACK_PACKAGE_VERSION_MAJOR "0")
-set(CPACK_PACKAGE_VERSION_MINOR "1")
+set(CPACK_PACKAGE_VERSION_MINOR "2")
 set(CPACK_PACKAGE_VERSION_PATCH "0")
 set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")


Remove mis-merged set_ops.cc reference (was moved to core)

--- tensorflow/contrib/cmake/tf_core_ops.cmake
+++ tensorflow/contrib/cmake/tf_core_ops.cmake
@@ -46,7 +46,6 @@
 GENERATE_CONTRIB_OP_LIBRARY(factorization_clustering "${tensorflow_source_dir}/tensorflow/contrib/factorization/ops/clustering_ops.cc")
 GENERATE_CONTRIB_OP_LIBRARY(factorization_factorization "${tensorflow_source_dir}/tensorflow/contrib/factorization/ops/factorization_ops.cc")
 GENERATE_CONTRIB_OP_LIBRARY(framework_variable "${tensorflow_source_dir}/tensorflow/contrib/framework/ops/variable_ops.cc")
-GENERATE_CONTRIB_OP_LIBRARY(metrics_set "${tensorflow_source_dir}/tensorflow/contrib/metrics/ops/set_ops.cc")

 ########################################################


ios.toolchain.xcode: use 64bit arch for simulator and add it to iOS build (#385)

as Apple mandates 64bit support for iOS

--- CMake/toolchain/ios.toolchain.xcode.cmake
+++ CMake/toolchain/ios.toolchain.xcode.cmake
@@ -151,9 +151,9 @@
 # set the architecture for iOS
 # NOTE: Currently both ARCHS_STANDARD_32_BIT and ARCHS_UNIVERSAL_IPHONE_OS set armv7 only, so set both manually
 if (${IOS_PLATFORM} STREQUAL "OS")
-  set (IOS_ARCH armv6 armv7)
+  set (IOS_ARCH armv7 arm64)
 else ()
-  set (IOS_ARCH i386)
+  set (IOS_ARCH x86_64)
 endif ()

 set (CMAKE_OSX_ARCHITECTURES ${IOS_ARCH} CACHE string  "Build architecture for iOS")


CMake: Make expat_config.h.cmake match expat_config.h.in variable order

--- expat/expat_config.h.cmake
+++ expat/expat_config.h.cmake
@@ -78,9 +78,18 @@
 /* whether byteorder is bigendian */
 #cmakedefine WORDS_BIGENDIAN

+/* Define to allow retrieving the byte offsets for attribute names and values.
+ */
+#cmakedefine XML_ATTR_INFO
+
 /* Define to specify how much context to retain around the current parse
    point. */
 #cmakedefine XML_CONTEXT_BYTES @XML_CONTEXT_BYTES@
+
+#if ! defined(_WIN32)
+/* Define to include code reading entropy from `/dev/urandom'. */
+  #cmakedefine XML_DEV_URANDOM
+#endif

 /* Define to make parameter entity parsing functionality available. */
 #cmakedefine XML_DTD
@@ -88,20 +97,11 @@
 /* Define to make XML Namespaces functionality available. */
 #cmakedefine XML_NS

-#if ! defined(_WIN32)
-/* Define to extract entropy from /dev/urandom. */
-  #cmakedefine XML_DEV_URANDOM
-#endif
-
 /* Define to use UTF-16 chars (two bytes). */
 #cmakedefine XML_UNICODE

 /* Define to use wchar_t as UTF-16 char type instead of unsigned short. */
 #cmakedefine XML_UNICODE_WCHAR_T
-
-/* Define to allow retrieving the byte offsets for attribute names and values.
- */
-#cmakedefine XML_ATTR_INFO

 /* Define to __FUNCTION__ or "" if `__func__' does not conform to ANSI C. */
 #ifdef _MSC_VER


fixed library setup on windows

fixed library setup on windows

--- external/UseOsgEarth.cmake
+++ external/UseOsgEarth.cmake
@@ -3,10 +3,7 @@
 set(OSGEARTH_ARGS
 	 -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
      -DCMAKE_RUNTIME_OUTPUT_DIRECTORY:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/osg/osgPlugins-3.3.0
-     -DCMAKE_RUNTIME_OUTPUT_DIRECTORY:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/osg/osgPlugins-3.3.0
      -DCMAKE_LIBRARY_OUTPUT_DIRECTORY:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/osg/osgPlugins-3.3.0
-     -DCMAKE_LIBRARY_OUTPUT_DIRECTORY:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/osg/osgPlugins-3.3.0
-     -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY:PATH=${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/osg/osgPlugins-3.3.0
      -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY:PATH=${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/osg/osgPlugins-3.3.0
      -DOSGEARTH_USE_QT=OFF
      -DOSG_DIR:PATH=${OSG_INSTALL_DIR}
@@ -27,10 +24,10 @@
 		   -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
 		 -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG}
 		 -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE}
-		 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG}
-		 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE}
-		 -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG}/osgPlugins-3.3.0
-		 -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE}/osgPlugins-3.3.0
+		 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG:PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG}/osgPlugins-3.3.0
+		 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE:PATH=${CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE}/osgPlugins-3.3.0
+		 -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=${CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG}
+		 -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=${CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE}
 		 #-DCMAKE_LIBRARY_OUTPUT_DIRECTORY:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/osgPlugins-3.3.0
 		 #-DCMAKE_LIBRARY_OUTPUT_DIRECTORY:PATH=${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/osgPlugins-3.3.0
 		 #-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY:PATH=${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/osgPlugins-3.3.0
@@ -134,8 +131,8 @@
 set(OSGEARTH_COMPONENTS osgEarth osgEarthAnnotation osgEarthFeatures osgEarthSymbology osgEarthUtil)
 if(OMEGA_OS_WIN)
     foreach( C ${OSGEARTH_COMPONENTS} )
-        set(${C}_LIBRARY ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE}/osg/osgPlugins-3.3.0/${C}.lib CACHE INTERNAL "")
-        set(${C}_LIBRARY_DEBUG ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG}/osg/osgPlugins-3.3.0/${C}d.lib CACHE INTERNAL "")
+        set(${C}_LIBRARY ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE}/${C}.lib CACHE INTERNAL "")
+        set(${C}_LIBRARY_DEBUG ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG}/${C}d.lib CACHE INTERNAL "")
         set(OSGEARTH_LIBS ${OSGEARTH_LIBS} optimized ${${C}_LIBRARY} debug ${${C}_LIBRARY_DEBUG} CACHE INTERNAL "")
     endforeach()
 elseif(OMEGA_OS_LINUX)


[cmake] Only pass CMAKE_SYSROOT if non-empty

In my build environment (cmake 3.6.1 and gcc 4.8.5 on CentOS 7), having
an empty CMAKE_SYSROOT in the cache results in --sysroot="" being passed
to all compile commands, and then the compiler errors out because of the
empty sysroot. Only set CMAKE_SYSROOT if non-empty to avoid this.

Differential Revision: https://reviews.llvm.org/D40934

git-svn-id: 0ff597fd157e6f4fc38580e8d64ab130330d2411@320183 91177308-0d34-0410-b5e6-96231b3b80d8

--- cmake/modules/LLVMExternalProjectUtils.cmake
+++ cmake/modules/LLVMExternalProjectUtils.cmake
@@ -132,6 +132,10 @@
     set(exclude EXCLUDE_FROM_ALL 1)
   endif()

+  if(CMAKE_SYSROOT)
+    set(sysroot_arg -DCMAKE_SYSROOT=${CMAKE_SYSROOT})
+  endif()
+
   ExternalProject_Add(${name}
     DEPENDS ${ARG_DEPENDS} llvm-config
     ${name}-clobber
@@ -143,7 +147,7 @@
     CMAKE_ARGS ${${nameCanon}_CMAKE_ARGS}
                ${compiler_args}
                -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
-               -DCMAKE_SYSROOT=${CMAKE_SYSROOT}
+               ${sysroot_arg}
                -DLLVM_BINARY_DIR=${PROJECT_BINARY_DIR}
                -DLLVM_CONFIG_PATH=$<TARGET_FILE:llvm-config>
                -DLLVM_ENABLE_WERROR=${LLVM_ENABLE_WERROR}


SLG4: merge

SLG4: merge

--- cmake/SpecializedConfig/Config_Dade.cmake
+++ cmake/SpecializedConfig/Config_Dade.cmake
@@ -15,7 +15,7 @@
 set(OPENCL_INCLUDEPATH        "${OPENCL_SEARCH_PATH}/include")
 #set(OPENCL_LIBRARYDIR         "${OPENCL_SEARCH_PATH}/lib/x86_64")

-set(BUILD_LUXMARK TRUE)
+#set(BUILD_LUXMARK TRUE)
 #set(LUXRAYS_DISABLE_OPENCL TRUE)

 #set(CMAKE_BUILD_TYPE "Debug")


Packaging updates - set RPM components. ref#281

git-svn-id: 1001b6e0dd469eaa302a741812f7f5d223cf35f7@1714 ff5d1e40-2be0-497f-93bd-dc18237bd3c7

--- cmake_include/nexus_package_details.cmake
+++ cmake_include/nexus_package_details.cmake
@@ -36,11 +36,12 @@
 #set (CPACK_SOURCE_GENERATOR)
 #set (CPACK_SOURCE_OUTPUT_CONFIG_FILE)
 #set (CPACK_SOURCE_IGNORE_FILES)
+set(CPACK_RPM_COMPONENT_INSTALL ON)

 cpack_add_component(Runtime
                     DISPLAY_NAME "Binary Applications"
-                    DESCRIPTION "Binary applications such as nxconvert, nx brows etc..."
+                    DESCRIPTION "Binary applications such as nxconvert, nxbrows etc..."
                     )

 cpack_add_component(Documentation


BUG: added condition to adding dependecy to doxygen

--- Code/BasicFilters/SourceCodeGenerator.cmake
+++ Code/BasicFilters/SourceCodeGenerator.cmake
@@ -55,7 +55,9 @@

 # Make target for generated code
 add_custom_target(FilterSourceCode ALL DEPENDS ${SimpleITKBasicFiltersSource})
-add_dependencies(Documentation FilterSourceCode)
+if (BUILD_DOXYGEN)
+  add_dependencies(Documentation FilterSourceCode)
+endif (BUILD_DOXYGEN)

 # clear the include files
 file ( WRITE ${CMAKE_CURRENT_BINARY_DIR}/SimpleITKBasicFiltersGeneratedHeaders.h "" )


Added MIPS targets to the TNUN_ABIs list.

--- toolchains/android.toolchain.cmake
+++ toolchains/android.toolchain.cmake
@@ -130,6 +130,8 @@
   arm-linux-androideabi
   x86_64
   x86
+  mips64el-linux-android
+  mipsel-linux-android
 )


update

update

--- modules/HdrHistogram.cmake
+++ modules/HdrHistogram.cmake
@@ -7,6 +7,8 @@
     # C4200: nonstandard extension used : zero-sized array in struct/union
     # C4244: 'conversion' conversion from 'type1' to 'type2', possible loss of data
     set_source_files_properties(${SOURCE_FILES} PROPERTIES COMPILE_FLAGS "${COMMON_COMPILE_FLAGS} /wd4146 /wd4200 /wd4244")
+  else()
+    set_source_files_properties(${SOURCE_FILES} PROPERTIES COMPILE_FLAGS "-Wno-incompatible-pointer-types")
   endif()
   add_library(HdrHistogram ${SOURCE_FILES})
   target_include_directories(HdrHistogram PRIVATE "zlib" PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/zlib")


Issue #17: Force GTK off in OpenCV to avoid conflicting versions of GTK symbols

--- CMake/ExternalProjects/OpenCV.cmake
+++ CMake/ExternalProjects/OpenCV.cmake
@@ -76,6 +76,7 @@
       -DBUILD_PERF_TESTS:BOOL=OFF
       -DWITH_CUDA:BOOL=OFF
       -DWITH_QT:BOOL=OFF
+      -DWITH_GTK:BOOL=OFF
       -DWITH_EIGEN:BOOL=OFF
       -DWITH_FFMPEG:BOOL=${OPENCV_WITH_FFMPEG}
       -DADDITIONAL_C_FLAGS:STRING=${OPENCV_ADDITIONAL_C_FLAGS}


ENH: minor update in phenotb module description

--- Modules/Remote/phenotb.remote.cmake
+++ Modules/Remote/phenotb.remote.cmake
@@ -1,6 +1,6 @@
 #Contact: Jordi Inglada  <jordi.inglada@cesbio.eu>
 otb_fetch_module(OTBPhenology
-  "This module implements a several algorithms allowing to extract phenological
+  "This module implements several algorithms allowing to extract phenological
   information from time profiles. These time profiles should represent
   vegetation status as for instance NDVI, LAI, etc.
 A more detailed description can be found on the project website:


Do not disable asimage for WIN32 - Fix for ROOT-7030

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -174,8 +174,8 @@

 #---Check for all kind of graphics includes needed by libAfterImage--------------------
 if(asimage)
-  if(NOT x11 AND NOT cocoa)
-    message(STATUS "Switching off 'asimage' because neither 'x11' nor 'cocoa' are enabled")
+  if(NOT x11 AND NOT cocoa AND NOT WIN32)
+    message(STATUS "Switching off 'asimage' because neither 'x11' nor 'cocoa' nor 'WIN32' are enabled")
     set(asimage OFF CACHE BOOL "" FORCE)
   endif()
 endif()


[BuildSystem] Require TBB 2018 if not built-in

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -1145,12 +1145,13 @@
     message(STATUS "Looking for TBB")
     find_package(TBB)
     if(TBB_FOUND)
-      if(${TBB_VERSION} VERSION_LESS 4.3)
+      set(tbb_min_version 2018)
+      if(${TBB_VERSION} VERSION_LESS ${tbb_min_version})
         if(fail-on-missing)
-          message(FATAL_ERROR "TBB version < 4.3. You can enable the option 'builtin_tbb' to build the library internally")
+          message(FATAL_ERROR "TBB version < ${tbb_min_version}. You can enable the option 'builtin_tbb' to build the library internally")
         else()
-          message(STATUS "TBB version < 4.3. Switching on builtin_tbb option")
-          set(builtin_tbb ON CACHE BOOL "Enabled because imt requested and external TBB version < 4.3 (${builtin_tbb})" FORCE)
+          message(STATUS "TBB version < ${tbb_min_version}. Switching on builtin_tbb option")
+          set(builtin_tbb ON CACHE BOOL "Enabled because imt requested and external TBB version < ${tbb_min_version} (${builtin_tbb})" FORCE)
         endif()
       endif()
     endif()
@@ -1165,7 +1166,7 @@
   endif()
 endif()
 if(builtin_tbb)
-  set(tbb_version 2019_U1)
+  set(tbb_builtin_version 2019_U1)
   set(tbb_sha256 d40aa6f62f2b2fb38c89b9f309859e3e6ff90487e8bc45abb0e096a6a165bec5)
   if(CMAKE_CXX_COMPILER_ID MATCHES Clang)
     set(_tbb_compiler compiler=clang)
@@ -1179,7 +1180,7 @@
     set(TBB_LIBRARIES ${CMAKE_BINARY_DIR}/lib/tbb.lib)
     ExternalProject_Add(
       TBB
-      URL ${lcgpackages}/tbb${tbb_version}.tar.gz
+      URL ${lcgpackages}/tbb${tbb_builtin_version}.tar.gz
       URL_HASH SHA256=${tbb_sha256}
       INSTALL_DIR ${CMAKE_BINARY_DIR}
       CONFIGURE_COMMAND devenv.exe /useenv /upgrade build/${vsdir}/makefile.sln
@@ -1211,7 +1212,7 @@
     set(TBB_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libtbb${CMAKE_SHARED_LIBRARY_SUFFIX})
     ExternalProject_Add(
       TBB
-      URL ${lcgpackages}/tbb${tbb_version}.tar.gz
+      URL ${lcgpackages}/tbb${tbb_builtin_version}.tar.gz
       URL_HASH SHA256=${tbb_sha256}
       INSTALL_DIR ${CMAKE_BINARY_DIR}
       CONFIGURE_COMMAND ""


Add option to use a specific version of Python

This is how the Python options can be used:

* Use the default Python interpreter:

-Dpython=ON (default)

* Search only for Python 2.x or only 3.x:

-Dpython_version=2
-Dpython_version=3

* Use a specific version of Python from $PATH:

-Dpython_version=2.7
-Dpython_version=3.5

* Use a specific Python interpreter, whatever the version:

-DPYTHON_EXECUTABLE=/usr/local/bin/python

Note: PYTHON_EXECUTABLE requires the full path to the interpreter.

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -486,14 +486,14 @@
 #---Check for Python installation-------------------------------------------------------
 if(python)
   if(fail-on-missing)
-    find_package(PythonInterp REQUIRED)
-    find_package(PythonLibs REQUIRED)
+    find_package(PythonInterp ${python_version} REQUIRED)
+    find_package(PythonLibs ${python_version} REQUIRED)
     if (tmva)
       find_package(NumPy REQUIRED)
     endif()
   else()
-    find_package(PythonInterp)
-    find_package(PythonLibs)
+    find_package(PythonInterp ${python_version})
+    find_package(PythonLibs ${python_version})
     if(tmva)
       find_package(NumPy)
     endif()


Update lowest version of GCC that can compile Vc

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -1243,8 +1243,8 @@
 #---Check for Vc compatibility-----------------------------------------------------------
 if(vc OR builtin_vc)
   if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
-    if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.5)
-      message(STATUS "Vc requires GCC version >= 4.5; switching OFF 'vc' option")
+    if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8.5)
+      message(STATUS "Vc requires GCC version >= 4.8.5; switching OFF 'vc' option")
       set(vc OFF CACHE BOOL "" FORCE)
       set(builtin_vc OFF CACHE BOOL "" FORCE)
     endif()


hunter_dump_cmake_flags: Add 'ncursesw' to list of packages to test

--- cmake/modules/hunter_dump_cmake_flags.cmake
+++ cmake/modules/hunter_dump_cmake_flags.cmake
@@ -12,6 +12,7 @@
 # * libxml2
 # * OpenSSL
 # * odb-boost
+# * ncursesw
 function(hunter_dump_cmake_flags)
   cmake_parse_arguments(x "SKIP_INCLUDES;SKIP_PIC" "CPPFLAGS" "" "${ARGV}")
   # -> x_SKIP_INCLUDES


use find_package(blas)

use find_package(blas)

--- SuperBuild/External_Gadgetron.cmake
+++ SuperBuild/External_Gadgetron.cmake
@@ -64,13 +64,12 @@
   endif ()
 endif ()

-if (APPLE)
-  if (NOT (CBLAS_LIBRARY AND CBLAS_INCLUDE_DIR))
-    set(CBLAS_INCLUDE_DIR "" CACHE PATH "CBLAS include dir for Gadgetron")
-    set(CBLAS_LIBRARY "" CACHE FILEPATH "CBLAS library for Gadgetron")
-    message(FATAL_ERROR "Gadgetron needs CBLAS location (/usr/local/Cellar/openblas/ if installed with \"brew install openblas\")")
+  if (APPLE)
+    find_package(blas)
+    if (NOT (CBLAS_LIBRARY AND CBLAS_INCLUDE_DIR))
+      message(FATAL_ERROR "Gadgetron needs CBLAS_LIBRARY and CBLAS_INCLUDE_DIR (/usr/local/Cellar/openblas/ if installed with \"brew install openblas\")")
+    endif()
   endif()
-endif(APPLE)

   #option(BUILD_GADGETRON_NATIVE_PYTHON_SUPPORT
   #  "Build Gadgetron Python gadgets (not required for SIRF)" OFF)