Cmake: Set runtime module loading to OFF by default so that we can test it in the master branch

--- cmake/globalconfig.cmake
+++ cmake/globalconfig.cmake
@@ -283,7 +283,7 @@

 #--------------------------------------------------------------------
 # Calculate and display profiling information
-option(IVW_RUNTIME_MODULE_LOADING "Load modules from dynamic libraries (dll/so) at application startup" ON)
+option(IVW_RUNTIME_MODULE_LOADING "Load modules from dynamic libraries (dll/so) at application startup" OFF)
 option(IVW_RUNTIME_MODULE_RELOADING "Reload modules at runtime when a dynamic library changes. Requires a temporary copy of libraries and file observers" OFF)

 #--------------------------------------------------------------------


CMake: Set cmake_cxx_standard

CMake: Set cmake_cxx_standard

--- cmake/globalconfig.cmake
+++ cmake/globalconfig.cmake
@@ -45,7 +45,9 @@
     include(CheckCXXCompilerFlag)
     CHECK_CXX_COMPILER_FLAG("-std=c++14" COMPILER_SUPPORTS_CXX14)
     if(COMPILER_SUPPORTS_CXX14)
-        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
+        set(CMAKE_CXX_STANDARD 14)
+        set(CMAKE_CXX_STANDARD_REQUIRED ON)
+        set(CMAKE_CXX_EXTENSIONS OFF)
     else()
         message(FATAL_ERROR "The compiler ${CMAKE_CXX_COMPILER} has no C++14 support. "
                 "Please use a different C++ compiler.")


SSE/SSE2 instruction sets are enabled by default when compiling in 64bit with MSVC

git-svn-id: 5398946ba177a3e438c2dae55e2cdfc2fb96c905@6002 a9d63959-f2ad-4865-b262-bf0e56cfafb6

--- cmake/pcl_find_sse.cmake
+++ cmake/pcl_find_sse.cmake
@@ -127,7 +127,7 @@
           else (HAVE_SSE4_1_EXTENSIONS)
               message(STATUS "No SSE extensions found")
           endif(HAVE_SSE4_1_EXTENSIONS)
-      elseif (MSVC)
+      elseif (MSVC AND NOT CMAKE_CL_64)
           if(HAVE_SSE2_EXTENSIONS)
               SET(SSE_FLAGS "${SSE_FLAGS} /arch:SSE2")
               message(STATUS "Found SSE2 extensions, using flags: ${SSE_FLAGS}")


Win: fix .msi name

Win: fix .msi name

--- src/Win/projectDef.cmake
+++ src/Win/projectDef.cmake
@@ -94,7 +94,7 @@
     -dr INSTALLDIR      # Set the directory ID to put the files in
     )

-set(FB_WIX_DEST ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PROJNAME}_${FBSTRING_PLUGIN_VERSION}.msi)
+set(FB_WIX_DEST ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PLUGIN_NAME}_${FBSTRING_PLUGIN_VERSION}.msi)
 add_wix_installer( ${PLUGIN_NAME}
     ${CMAKE_CURRENT_SOURCE_DIR}/Win/WiX/FBVLCInstaller.wxs
     PluginDLLGroup
@@ -129,7 +129,7 @@
 set(WIX_HEAT_SUFFIX "_WITH_VLC_PluginAuto")

 set(WIX_LINK_FLAGS ${WIX_LINK_FLAGS} -dVLC=${VLC_PATH})
-set(FB_WIX_DEST ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PROJNAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi)
+set(FB_WIX_DEST ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PLUGIN_NAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi)

 add_wix_installer( ${PLUGIN_NAME}
     "${WIX_SOURCES_WITH_VLC}"
@@ -148,13 +148,13 @@
 set(CAB_SOURCES
     ${FB_ROOT}/cmake/dummy.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/Win/Wix/fbvlc.inf
-    ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PROJNAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
+    ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PLUGIN_NAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
     ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/fbvlc.cab
     )

 source_group(Sources FILES
     ${CMAKE_CURRENT_SOURCE_DIR}/Win/Wix/fbvlc.inf
-    ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PROJNAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
+    ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PLUGIN_NAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
     )
 source_group(Output FILES ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/fbvlc.cab)

@@ -167,9 +167,9 @@
               -P ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}
               N ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/fbvlc.cab
               ${CMAKE_CURRENT_SOURCE_DIR}/Win/Wix/fbvlc.inf
-              ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PROJNAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
+              ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PLUGIN_NAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
     DEPENDS   ${CMAKE_CURRENT_SOURCE_DIR}/Win/Wix/fbvlc.inf
-              ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PROJNAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
+              ${FB_BIN_DIR}/${PLUGIN_NAME}/${CMAKE_CFG_INTDIR}/${PLUGIN_NAME}_${FBSTRING_PLUGIN_VERSION}_vlc_${VLC_VERSION}.msi
     )

 add_library(${PLUGIN_NAME}_CabInstall STATIC ${CAB_SOURCES})


Fix setting ITK Doxygen tag in configuration file

In the SimpleITK Doxygen configured configuration file the TAGSFILE
option was empty because the DOXYGEN_TAGFILES_PARAMETER was not being
set when it was empty.

--- Utilities/Doxygen/Doxygen.cmake
+++ Utilities/Doxygen/Doxygen.cmake
@@ -15,8 +15,6 @@

   option(USE_ITK_DOXYGEN_TAGS "Download ITK's Doxygen tags" ON)

-  set(DOXYGEN_TAGFILES_PARAMETER "")
-
   if (USE_ITK_DOXYGEN_TAGS)
     set(ITK_DOXYGEN_TAGFILE "" CACHE PATH "ITK Doxygen tag file location. Empty string automatically downloads." )

@@ -30,11 +28,9 @@
         DEPENDS "${PROJECT_SOURCE_DIR}/Utilities/Doxygen/ITKDoxygenTags.cmake"
         )
     endif()
-
+
     set(ITK_DOXYGEN_ROOT_URL "https://www.itk.org/Doxygen/html/" CACHE STRING "URL for the ITK Doxygen web root")
-    if (NOT DOXYGEN_TAGFILES_PARAMETER STREQUAL "")
-      set(DOXYGEN_TAGFILES_PARAMETER "${ITK_DOXYGEN_TAGFILE}=${ITK_DOXYGEN_ROOT_URL}")
-    endif()
+    set(DOXYGEN_TAGFILES_PARAMETER "${ITK_DOXYGEN_TAGFILE}=${ITK_DOXYGEN_ROOT_URL}")

   endif()


Updated 'ExecuteTestTimeout' script

Updated 'ExecuteTestTimeout' script

--- examples/cmake/ExecuteTestTimeout.cmake
+++ examples/cmake/ExecuteTestTimeout.cmake
@@ -1,7 +1,30 @@
+cmake_minimum_required(VERSION 3.2)
+
 # TODO (themarpe) - cross platform timeout

+# Parse out arguments
+foreach(_arg RANGE ${CMAKE_ARGC})
+    if(append)
+        list(APPEND arguments "${CMAKE_ARGV${_arg}}")
+    endif()
+
+    if("${CMAKE_ARGV${_arg}}" STREQUAL "-P")
+        set(append true)
+        message(status "found -P")
+    endif()
+endforeach()
+list(REMOVE_AT arguments 0)
+
+message(STATUS "arguments: ${arguments}")
+
+# Check if ENV variable TEST_TIMEOUT is set and use that rather than TIMEOUT_SECONDS
+if(DEFINED ENV{TEST_TIMEOUT})
+    message(STATUS "Overriding timeout: ${TIMEOUT_SECONDS} with $ENV{TEST_TIMEOUT}")
+    set(TIMEOUT_SECONDS $ENV{TEST_TIMEOUT})
+endif()
+
 # Execute the example
-execute_process(COMMAND timeout -s SIGINT -k 5 ${TIMEOUT_SECONDS} ${PATH_TO_TEST_EXECUTABLE} RESULT_VARIABLE error_variable)
+execute_process(COMMAND timeout -s SIGINT -k 5 ${TIMEOUT_SECONDS} ${arguments} RESULT_VARIABLE error_variable)
 message(STATUS "After timeout, ${PATH_TO_TEST_EXECUTABLE} produced the following exit code: ${error_variable}")

 # After that, wait for ~3 seconds


add ocio root

add ocio root

--- src/cmake/rez_deps.cmake
+++ src/cmake/rez_deps.cmake
@@ -47,6 +47,7 @@
 if(DEFINED ENV{REZ_OCIO_BASE})
     message("WITH REZ OCIO")
     set(WITH_CYCLES_OPENCOLORIO ON CACHE BOOL "Build Cycles with OpenColorIO support" FORCE)
+    set(OPENCOLORIO_ROOT_DIR $ENV{REZ_OCIO_ROOT} FORCE)
 else()
     set(WITH_CYCLES_OPENCOLORIO OFF CACHE BOOL "Build Cycles with OpenColorIO support" FORCE)
 endif()


added fiber tractography cmdapps to build configuration

--- CMake/BuildConfigurations/DiffusionRelease.cmake
+++ CMake/BuildConfigurations/DiffusionRelease.cmake
@@ -17,7 +17,7 @@
 set(BUILD_DiffusionFiberfoxCmdApps ON CACHE BOOL "Build commandline tools for diffusion data simulation (Fiberfox)" FORCE)
 set(BUILD_DiffusionMiscCmdApps OFF CACHE BOOL "Build miscellaneous commandline tools for diffusion" FORCE)
 set(BUILD_DiffusionQuantificationCmdApps OFF CACHE BOOL "Build commandline tools for diffusion quantification (IVIM, ADC, ...)" FORCE)
-set(BUILD_DiffusionTractographyCmdApps OFF CACHE BOOL "Build commandline tools for diffusion fiber tractography" FORCE)
+set(BUILD_DiffusionTractographyCmdApps ON CACHE BOOL "Build commandline tools for diffusion fiber tractography" FORCE)
 set(BUILD_DiffusionTractographyEvaluationCmdApps OFF CACHE BOOL "Build commandline tools for diffusion fiber tractography evaluation" FORCE)
 set(BUILD_DiffusionConnectomicsCmdApps OFF CACHE BOOL "Build commandline tools for diffusion connectomics" FORCE)


BUG: Improper command line parsing.

BUG: Improper command line parsing.

The ANTS_SYN_WITH_TIME test had improper command line options listed.

--- Examples/TestSuite/ANTS_SYN_WITH_TIME_test.cmake
+++ Examples/TestSuite/ANTS_SYN_WITH_TIME_test.cmake
@@ -9,7 +9,7 @@

 add_test(NAME ${THIS_TEST_NAME} COMMAND $<TARGET_FILE:ANTS> 2
- -m MSQ[${CHALF_IMAGE},${C_IMAGE},1,0.] -r Gauss[0.5,0.1]
+ -m MSQ[${CHALF_IMAGE},${C_IMAGE},1,0] -r Gauss[0.5,0.1]
  -t SyN[1,10,0.05] -i 150x100x2x2 -o ${OUTPUT_PREFIX}
  --geodesic 1 --number-of-affine-iterations 0)


Bump to 1.2.0

Bump to 1.2.0

--- VERSION.cmake
+++ VERSION.cmake
@@ -1,3 +1,3 @@
 SET(LIBREPO_MAJOR "1")
-SET(LIBREPO_MINOR "1")
+SET(LIBREPO_MINOR "2")
 SET(LIBREPO_PATCH "0")


Updating version for 0.10.0 development

Updating version for 0.10.0 development

Change-Id: Icadcd96d35a77b53452b3d794c607130d72fd0d6

--- Version.cmake
+++ Version.cmake
@@ -9,7 +9,7 @@
 # Version info

 set(SimpleITK_VERSION_MAJOR 0)
-set(SimpleITK_VERSION_MINOR 9)
+set(SimpleITK_VERSION_MINOR 10)
 set(SimpleITK_VERSION_PATCH 0)
 #set(SimpleITK_VERSION_TWEAK "")


NEW: limimiting max parallel jobs

NEW: limimiting max parallel jobs

--- tests/system_tests/run_system_tests.sh.cmake
+++ tests/system_tests/run_system_tests.sh.cmake
@@ -64,6 +64,7 @@
 EMAIL_TO=""

 RUN_PARALLEL=0
+PARALLEL_NP=""

 RETURN_SUCCESS=0
 FAIL_TRANSLATE=1
@@ -893,6 +894,8 @@
 	echo -e "\t\tRead configuration option from the file."
 	echo -e "\t--email <email-address>"
 	echo -e "\t\tEmail test result"
+	echo -e "\t--parallel [max parallel tests]"
+	echo -e "\t\tRun tests in parallel"
 	echo -e "\t-q, --quit"
 	echo -e "\t\tQuit immediately upon error."
 	echo -e "\t--clear"
@@ -1145,11 +1148,15 @@
 	local DIM=$4
 	local SHORTNAME=$5
 	local STAGE=$6
+	local PARALLEL_OPT=""
+	if [ -n "$PARALLEL_NP" ]; then
+		local PARALLEL_OPT="-j $PARALLEL_NP"
+	fi
 	if [ "1" = "$RUN_PARALLEL" ]; then
 		if ! type parallel > /dev/null 2>&1; then
 			exit_error "Parallel testing requested, but parallel command is not found."
 		fi
-		parallel $SELF_NAME subcommand $WD $LOGFILE do_test $TARGET $TEST $DIM $SHORTNAME $STAGE -- $CONFIG
+		parallel $PARALLEL_OPT $SELF_NAME subcommand $WD $LOGFILE do_test $TARGET $TEST $DIM $SHORTNAME $STAGE -- $CONFIG
 		fetch_results $TARGET $SHORTNAME
 		print_results_short
 		if [ $DIE_IMMEDIATELY -eq 1 -a -n "$FAILED_TESTS" ]; then
@@ -1204,10 +1211,10 @@

     TESTS=$(get_test_cases)

-    TEMP=$(getopt -o ht:s:m:q --long help,clear,targets:,source:,translate,compile,execute,mpirun,machinefile:,proc-dim:,physis-nlp:,quit,with-valgrind:,priority:,trace,config:,email:,list,parallel, -- "$@")
+    TEMP=$(getopt -o ht:s:m:q --long help,clear,targets:,source:,translate,compile,execute,mpirun,machinefile:,proc-dim:,physis-nlp:,quit,with-valgrind:,priority:,trace,config:,email:,list,parallel::, -- "$@")

     if [ $? != 0 ]; then
-		print_error "Invalid options: $@"
+		print_error "Error in getopt. Invalid options: $@"
 		print_usage
 		exit_error
     fi
@@ -1291,7 +1298,8 @@
 				;;
 			--parallel)
 				RUN_PARALLEL=1
-				shift
+				PARALLEL_NP="$2"
+				shift 2
 				;;
 			--)
 				shift
@@ -1316,6 +1324,14 @@
     echo "Test sources: $(for i in $TESTS; do basename $i; done | xargs)"
     echo "Targets: $TARGETS"
 	echo "Number of tests: $NUM_ALL_TESTS"
+	if [ -n "$RUN_PARALLEL" ]; then
+		echo -n "Parallel mode"
+		if [ -n "$PARALLEL_NP" ]; then
+			echo " (up to $PARALLEL_NP parallel tests)"
+		else
+			echo ""
+		fi
+	fi

     for TARGET in $TARGETS; do
 		for TEST in $TESTS; do


Make Python binding generation slightly more verbose.

--HG--
extra : convert_revision : 06dc10fd56996e320cedb4df20b8141d9556d273

--- trunk/CMakeModules/PythonBindingsUtils.cmake
+++ trunk/CMakeModules/PythonBindingsUtils.cmake
@@ -54,7 +54,8 @@
 	add_custom_target(${module}.h
 		COMMAND ${CMAKE_COMMAND} -D module=${module}
 		-P "${OMPL_CMAKE_UTIL_DIR}/generate_header.cmake"
-		DEPENDS ${headers} WORKING_DIRECTORY "${dir}")
+		DEPENDS ${headers} WORKING_DIRECTORY "${dir}"
+		COMMENT "Preparing C++ header file for Python binding generation for module ${module}")
 	add_dependencies(generate_headers ${module}.h)
 endfunction(create_module_header_file_target)

@@ -68,7 +69,8 @@
 		COMMAND ${CMAKE_COMMAND} -D "PATH=${dir}/bindings/${module}"
 		-P "${OMPL_CMAKE_UTIL_DIR}/abs_to_rel_path.cmake"
 		COMMAND ${CMAKE_COMMAND} ${CMAKE_BINARY_DIR}
- 		WORKING_DIRECTORY ${dir})
+ 		WORKING_DIRECTORY ${dir}
+		COMMENT "Creating C++ code for Python module ${module} (see pyplusplus_${module}.log)")
 	add_dependencies(update_${module}_bindings ${module}.h)
 	add_dependencies(update_bindings update_${module}_bindings)
 endfunction(create_module_code_generation_target)
@@ -104,7 +106,8 @@
 		add_custom_command(TARGET py_ompl_${module} POST_BUILD
 	        COMMAND ${CMAKE_COMMAND} -E copy "${PY${module}_NAME}"
 	        "${_dest_dir}/${module}/_${module}${CMAKE_SHARED_MODULE_SUFFIX}"
-	        WORKING_DIRECTORY ${LIBRARY_OUTPUT_PATH})
+	        WORKING_DIRECTORY ${LIBRARY_OUTPUT_PATH}
+	        COMMENT "Copying python module ${module} into place")
 		include_directories("${dir}/bindings/${module}" "${dir}")
 	else(NUM_SOURCE_FILES GREATER 0)
 		if(PY_OMPL_GENERATE)


BUG: Add missing system dependency for Qt5.15 on windows

--- Packaging/PackageGlobals.cmake
+++ Packaging/PackageGlobals.cmake
@@ -81,6 +81,7 @@
   wldap32.dll
   ws2_32.dll
   wsock32.dll
+  MSVCP140_1.dll
   )

 set(LINUX_SYSTEM_DLLS


Specify HoloPlayCore libraries for tomviz build

The tomviz build needs to be able to find these as well if ParaView
was built with HoloPlayCore enabled. Otherwise, we'll run into errors.

Signed-off-by: Patrick Avery <743342299f279e7a8c3ff5eb40671fce3e95f13a@kitware.com>

--- projects/tomviz.cmake
+++ projects/tomviz.cmake
@@ -32,6 +32,9 @@
     -Dtomviz_data_DIR:PATH=${tomviz_data}
     -DTOMVIZ_DOWNLOAD_WEB:BOOL=ON
     -DSKIP_PARAVIEW_ITK_PYTHON_CHECKS:BOOL=ON
+    -DHoloPlayCore_INCLUDE_DIR:PATH=${HoloPlayCore_INCLUDE_DIR}
+    -DHoloPlayCore_LIBRARY:PATH=${HoloPlayCore_LIBRARY}
+
     ${tomviz_extra_cmake_args}

   ENABLED_DEFAULT ON


include dependencies

include dependencies

--- mlpack.cmake
+++ mlpack.cmake
@@ -10,6 +10,9 @@
 include (ExternalSource)
 include (BuildSupport)
 include (PatchSupport)
+
+include (armadillo)
+include (boost)

 external_source (mlpack


fix tilegrid and tileconn location

fix tilegrid and tileconn location

Signed-off-by: Alessandro Comodi <622632e70fd6771cf2cd943f69e5e51ab66adef8@antmicro.com>

--- xc7/make/project_xray.cmake
+++ xc7/make/project_xray.cmake
@@ -68,7 +68,7 @@
   set(ARCH_IMPORT ${symbiflow-arch-defs_SOURCE_DIR}/xc7/utils/prjxray_arch_import.py)
   set(CREATE_SYNTH_TILES ${symbiflow-arch-defs_SOURCE_DIR}/xc7/utils/prjxray_create_synth_tiles.py)
   set(CREATE_EDGES ${symbiflow-arch-defs_SOURCE_DIR}/xc7/utils/prjxray_create_edges.py)
-  set(DEPS ${PRJXRAY_DB_DIR}/${ARCH}/tilegrid.json)
+  set(DEPS ${PRJXRAY_DB_DIR}/${ARCH}/${PART}/tilegrid.json)

   if("${PROJECT_XRAY_ARCH_PB_TYPES}" STREQUAL "")
     set(PROJECT_XRAY_ARCH_PB_TYPES ${PROJECT_XRAY_ARCH_TILE_TYPES})
@@ -148,8 +148,8 @@
   append_file_dependency(CHANNELS_DEPS ${GENERIC_CHANNELS})
   append_file_dependency(CHANNELS_DEPS ${symbiflow-arch-defs_SOURCE_DIR}/xc7/archs/${ARCH}/pin_assignments.json)
   get_file_location(PIN_ASSIGNMENTS ${symbiflow-arch-defs_SOURCE_DIR}/xc7/archs/${ARCH}/pin_assignments.json)
-  list(APPEND CHANNELS_DEPS ${PRJXRAY_DB_DIR}/${ARCH}/tilegrid.json)
-  list(APPEND CHANNELS_DEPS ${PRJXRAY_DB_DIR}/${ARCH}/tileconn.json)
+  list(APPEND CHANNELS_DEPS ${PRJXRAY_DB_DIR}/${ARCH}/${PART}/tilegrid.json)
+  list(APPEND CHANNELS_DEPS ${PRJXRAY_DB_DIR}/${ARCH}/${PART}/tileconn.json)

   add_custom_command(
     OUTPUT channels.db


Avoid hijacking user's warning options

Avoid hijacking user's warning options

--- cmake/Modules/CppUTestConfigurationOptions.cmake
+++ cmake/Modules/CppUTestConfigurationOptions.cmake
@@ -33,7 +33,9 @@
     set(CPP_PLATFORM GccNoStdC)
 endif (MSVC)

-include("${CppUTestRootDirectory}/cmake/Modules/CppUTestWarningFlags.cmake")
+if (CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
+    include("${CppUTestRootDirectory}/cmake/Modules/CppUTestWarningFlags.cmake")
+endif ()

 if (NOT STD_CPP)
     set(CPPUTEST_STD_CPP_LIB_DISABLED 1)


cmake: Remove debug statement in ExternalProjectDependencies

--- CMake/ExternalProjectDependency.cmake
+++ CMake/ExternalProjectDependency.cmake
@@ -553,7 +553,7 @@
     endif()
     _sb_is_optional(${dep} _optional)
     set_property(GLOBAL PROPERTY SB_${dep}_OPTIONAL ${_optional})
-    message(${_sb_proj} "[${_sb_proj}] Property SB_${dep}_OPTIONAL set to ${_optional}")
+    #message(${_sb_proj} "[${_sb_proj}] Property SB_${dep}_OPTIONAL set to ${_optional}")
     if(NOT _optional)
       list(APPEND _sb_REQUIRED_DEPENDS ${dep})
     endif()


updated cmake find maya module for maya 2014

--- tools/ms_export_obj/src/cmake/Modules/FindMaya.cmake
+++ tools/ms_export_obj/src/cmake/Modules/FindMaya.cmake
@@ -88,7 +88,7 @@

 SET(_maya_TEST_VERSIONS)
-SET(_maya_KNOWN_VERSIONS "2008" "2009" "2010" "2011" "2012" "2013")
+SET(_maya_KNOWN_VERSIONS "2008" "2009" "2010" "2011" "2012" "2013" "2014")

 IF(APPLE)
   SET(MAYA_PLUGIN_SUFFIX ".bundle")
@@ -181,6 +181,9 @@
 ELSEIF(${MAYA_VERSION} STREQUAL "2013")
   SET(MAYA_QT_VERSION_SHORT CACHE STRING "4.7")
   SET(MAYA_QT_VERSION_LONG  CACHE STRING "4.7.1")
+ELSEIF(${MAYA_VERSION} STREQUAL "2014")
+  SET(MAYA_QT_VERSION_SHORT CACHE STRING "4.8")
+  SET(MAYA_QT_VERSION_LONG  CACHE STRING "4.8.2")
 ENDIF()

 # NOTE: the MAYA_LOCATION environment variable is often misunderstood.  On every OS it is expected to point


[WIP]

[WIP]

--- Modules/ManageMaintainerTargets.cmake
+++ Modules/ManageMaintainerTargets.cmake
@@ -242,8 +242,7 @@
 	    SET(_prevTarget "")
 	    FOREACH(_relTarget ${RELEASE_TARGETS})
 		IF(NOT _prevTarget STREQUAL "")
-		    MESSAGE("ADD_DEPENDENCIES(${_prevTarget} ${_relTarget})")
-		    ADD_DEPENDENCIES(${_prevTarget} ${_relTarget})
+		    ADD_DEPENDENCIES(${_relTarget} ${_prevTarget})
 		ENDIF(NOT _prevTarget STREQUAL "")
 		SET(_prevTarget ${_relTarget})
 	    ENDFOREACH(_relTarget ${RELEASE_TARGETS})


Update UseOsgEarth.cmake

Update UseOsgEarth.cmake

--- external/UseOsgEarth.cmake
+++ external/UseOsgEarth.cmake
@@ -19,7 +19,7 @@
 		 -DMINIZIP_INCLUDE_DIR=${MINIZIP_INCLUDE_DIR}
 		 -DMINIZIP_LIBRARY=${MINIZIP_LIBRARY}
 		${OSGEARTH_ARGS}
-	endif()
+	)
 endif()

 if(WIN32)


Find lapacke

Find lapacke

Former-commit-id: ebd4de0f2b4132165e55ff8d645230a0ad9b9984

--- cmake-modules/FindLAPACKE.cmake
+++ cmake-modules/FindLAPACKE.cmake
@@ -24,7 +24,7 @@
 if(NOT LAPACKE_FOUND AND LAPACKE_FROM_OPENBLAS)
     set(LAPACKE_LIBRARY      ${BLAS_LIBRARIES})
     set(LAPACKE_INCLUDE_DIRS ${BLAS_INCLUDE_DIRS})
-    set(LAPECKE_FOUND TRUE)
+    set(LAPACKE_FOUND TRUE)
     message(STATUS "Found LAPACKE in OpenBLAS")
 #    target_link_libraries(${PROJECT_NAME} PRIVATE ${LAPACKE_LIBRARY})
 #    target_include_directories(${PROJECT_NAME} PRIVATE ${LAPACKE_INCLUDE_DIRS})
@@ -47,7 +47,7 @@
 #            NO_DEFAULT_PATH
             )
     if(LAPACKE_LIBRARY AND LAPACKE_INCLUDE_DIRS)
-        set(LAPECKE_FOUND TRUE)
+        set(LAPACKE_FOUND TRUE)
         message(STATUS "Found LAPACKE as a module")
 #        target_link_libraries(${PROJECT_NAME} PRIVATE ${LAPACKE_LIBRARY})
 #        target_include_directories(${PROJECT_NAME} PRIVATE ${LAPACKE_INCLUDE_DIRS})
@@ -70,7 +70,7 @@
 #            NO_DEFAULT_PATH
             )
     if(LAPACKE_LIBRARY AND LAPACKE_INCLUDE_DIRS)
-        set(LAPECKE_FOUND TRUE)
+        set(LAPACKE_FOUND TRUE)
         message(STATUS "Found LAPACKE in system")
 #        target_link_libraries(${PROJECT_NAME} PRIVATE ${LAPACKE_LIBRARY})
 #        target_include_directories(${PROJECT_NAME} PRIVATE ${LAPACKE_INCLUDE_DIRS})


Fix find module when using pkg-config

Fix find module when using pkg-config

--- cmake-modules/FindOrcania.cmake
+++ cmake-modules/FindOrcania.cmake
@@ -65,6 +65,10 @@
         REQUIRED_VARS ORCANIA_LIBRARY ORCANIA_INCLUDE_DIR
         VERSION_VAR ORCANIA_VERSION_STRING)

+if (PC_ORCANIA_FOUND)
+    set(ORCANIA_FOUND 1)
+endif ()
+
 if (ORCANIA_FOUND)
     set(ORCANIA_LIBRARIES ${ORCANIA_LIBRARY})
     set(ORCANIA_INCLUDE_DIRS ${ORCANIA_INCLUDE_DIR})


Find libintl on mac properly

Find libintl on mac properly

--- cmake-scripts/FindLibintl.cmake
+++ cmake-scripts/FindLibintl.cmake
@@ -15,12 +15,23 @@
 #
 # Redistribution and use is allowed according to the terms of the BSD license.
 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
+
+
+SET(LIBINTL_SEARCH_PATHS
+    /usr/local/opt/
+    /usr/local/
+    /usr/
+)
+
 if(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND)
   set(Libintl_FIND_QUIETLY TRUE)
 endif(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND)

-find_path(LIBINTL_INCLUDE_DIR libintl.h)
+find_path(LIBINTL_INCLUDE_DIR libintl.h
+    HINTS
+    PATH_SUFFIXES gettext/include
+    PATHS ${LIBINTL_SEARCH_PATHS}
+)

 set(LIBINTL_LIB_FOUND FALSE)

@@ -32,7 +43,15 @@
     set(LIBINTL_LIBRARIES)
     set(LIBINTL_LIB_FOUND TRUE)
   else (LIBINTL_LIBC_HAS_DGETTEXT)
-    find_library(LIBINTL_LIBRARIES NAMES intl libintl )
+    find_library(LIBINTL_LIBRARIES NAMES intl  )
+
+    find_library(LIBINTL_LIBRARIES
+      NAMES intl libintl
+      HINTS
+      PATH_SUFFIXES gettext/lib
+      PATHS ${LIBINTL_SEARCH_PATHS}
+    )
+
     if(LIBINTL_LIBRARIES)
       set(LIBINTL_LIB_FOUND TRUE)
     endif(LIBINTL_LIBRARIES)


Eliminated gcc-specific compiler flags in Debug.

--- cmake/DOConfigureCompiler.cmake
+++ cmake/DOConfigureCompiler.cmake
@@ -60,7 +60,7 @@
   # Additional flags for Release builds.
   set(CMAKE_CXX_RELEASE_FLAGS "-03 -ffast-math")
   # Additional flags for Debug builds, which include code coverage.
-  set(CMAKE_CXX_FLAGS_DEBUG "-g -O0 -g -DDEBUG -D_DEBUG --coverage -fprofile-arcs -ftest-coverage -fno-inline -fno-inline-small-functions -fno-default-inline")
+  set(CMAKE_CXX_FLAGS_DEBUG "-g -O0 -g -DDEBUG -D_DEBUG --coverage -fprofile-arcs -ftest-coverage -fno-inline")
 endif ()


- Some notes  - Fix framework version string to standard

--- cmake/Modules/MacAppBuild.cmake
+++ cmake/Modules/MacAppBuild.cmake
@@ -16,8 +16,11 @@
     set_target_properties( ${TARGET} PROPERTIES
 	MACOSX_RPATH "."
 	FRAMEWORK ON
-	FRAMEWORK_VERSION ${VERSION_CODE}
+	FRAMEWORK_VERSION "A"
 	)
+
+    # TODO: Process resource files
+    # TODO: Process header files

     install(
 	TARGETS


bug: Fix dependencies for googleapis. (#2947)

When compiling googleapis-c++::* as external projects we need to set the
right depedencies for all the libraries.

--- cmake/external/googleapis.cmake
+++ cmake/external/googleapis.cmake
@@ -132,19 +132,20 @@
 endfunction ()

 function (gooogleapis_project_create_all_libraries)
-    foreach (lib
-             api_http
-             api_annotations
-             api_auth
-             api_resource
-             type_expr
-             rpc_status
-             rpc_error_details
-             longrunning_operations
-             iam_v1_policy
-             iam_v1_iam_policy
-             bigtable
-             spanner)
+    set(all_libs
+        api_http
+        api_annotations
+        api_auth
+        api_resource
+        type_expr
+        rpc_status
+        rpc_error_details
+        longrunning_operations
+        iam_v1_policy
+        iam_v1_iam_policy
+        bigtable
+        spanner)
+    foreach (lib ${all_libs})
         googleapis_project_create_lib(${lib})
     endforeach ()

@@ -198,21 +199,14 @@
                           googleapis-c++::iam_v1_iam_policy_protos
                           googleapis-c++::rpc_status_protos)

-    foreach (lib
-             api_http
-             api_annotations
-             api_auth
-             rpc_status
-             rpc_error_details
-             longrunning_operations
-             iam_v1_policy
-             iam_v1_iam_policy
-             bigtable
-             spanner)
+    foreach (lib ${all_libs})
         set(scoped_name "googleapis-c++::${lib}_protos")
         set_property(TARGET ${scoped_name}
                      APPEND
-                     PROPERTY INTERFACE_LINK_LIBRARIES gRPC::grpc++
+                     PROPERTY INTERFACE_LINK_LIBRARIES
+                              gRPC::grpc++
+                              gRPC::grpc
+                              gRPC::gpr
                               protobuf::libprotobuf)
     endforeach ()
 endfunction ()


Use find_package_handle_standard_args() in FindGObject.cmake.

This properly caches the variables and hides the messages
if GObject has already been found.

--- cmake/modules/FindGObject.cmake
+++ cmake/modules/FindGObject.cmake
@@ -58,21 +58,7 @@
 SET (GOBJECT_LIBRARIES ${PKG_GOBJECT2_LIBRARIES})
 ENDIF (WIN32)

-IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-   SET(GOBJECT_FOUND TRUE)
-ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-   SET(GOBJECT_FOUND FALSE)
-ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
+MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES)

-IF (GOBJECT_FOUND)
-   IF (NOT GObject_FIND_QUIETLY)
-      MESSAGE(STATUS "Found GObject libraries: ${GOBJECT_LIBRARIES}")
-      MESSAGE(STATUS "Found GObject includes : ${GOBJECT_INCLUDE_DIR}")
-   ENDIF (NOT GObject_FIND_QUIETLY)
-ELSE (GOBJECT_FOUND)
-    IF (GObject_FIND_REQUIRED)
-      MESSAGE(STATUS "Could NOT find GObject")
-    ENDIF(GObject_FIND_REQUIRED)
-ENDIF (GOBJECT_FOUND)
-
-MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES)
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(GObject DEFAULT_MSG GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES)


Added ${PYTHIA6_DIR} from command line as a location for Pythia6

--- cmake/modules/FindPythia6.cmake
+++ cmake/modules/FindPythia6.cmake
@@ -9,8 +9,8 @@

 find_library(PYTHIA6_LIBRARY NAMES pythia6 Pythia6 PATHS
-  $ENV{PYTHIA6_DIR}/lib
-  /cern/pro/lib
+  ${PYTHIA6_DIR}/lib $ENV{PYTHIA6_DIR}/lib
+  /cern/pro/lib
   /opt/pythia
   /opt/pythia6
   /usr/lib/pythia


Clean up CMake file

Clean up CMake file

Signed-off-by: José Simões <1616ff7a83d123f98f8f38fa2524eab406644781@eclo.solutions>

--- CMake/Modules/FindnanoFramework.Networking.Sntp.cmake
+++ CMake/Modules/FindnanoFramework.Networking.Sntp.cmake
@@ -5,13 +5,9 @@

 # set include directories
-# list(APPEND nanoFramework.Networking.Sntp_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/src/CLR/Core")
-# list(APPEND nanoFramework.Networking.Sntp_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/src/CLR/Include")
 list(APPEND CHIBIOS_LWIP_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/ext/lwip/src/include/lwip)
 list(APPEND nanoFramework.Networking.Sntp_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/src/HAL/Include")
-# list(APPEND nanoFramework.Networking.Sntp_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/src/PAL/Include")
 list(APPEND nanoFramework.Networking.Sntp_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/src/DeviceInterfaces/Networking.Sntp")
-# list(APPEND nanoFramework.Networking.Sntp_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/${BASE_PATH_FOR_THIS_MODULE}")

 # source files


Fix for initial config case with no backend specified

Was trying to use an undefined var

--- CMake/vtkGroups.cmake
+++ CMake/vtkGroups.cmake
@@ -15,7 +15,7 @@
   message(STATUS "Group ${group} modules: ${VTK_GROUP_${group}_MODULES}")
   # Set the default group option - Rendering ON (if there is a backend)
   if(${group} MATCHES "^Rendering|^StandAlone")
-    if(${group} MATCHES "^Rendering" AND "None" STREQUAL ${VTK_RENDERING_BACKEND})
+    if(${group} MATCHES "^Rendering" AND "None" STREQUAL VTK_RENDERING_BACKEND)
       set(_default OFF)
     else()
       set(_default ON)


Add OTBTemporalGapFilling

Add OTBTemporalGapFilling

--- CI/main_superbuild.cmake
+++ CI/main_superbuild.cmake
@@ -128,7 +128,7 @@
 include ( "${CMAKE_CURRENT_LIST_DIR}/configure_option.cmake" )

 # For superbuild we need remote module
-foreach(remote_module SertitObject Mosaic otbGRM DiapOTBModule)
+foreach(remote_module SertitObject Mosaic otbGRM DiapOTBModule OTBTemporalGapFilling)
     set ( CONFIGURE_OPTIONS
       "${CONFIGURE_OPTIONS}-DModule_${remote_module}:BOOL=ON;")
 endforeach()


Let boost auto-detect msvc toolset version

--- Superbuild/Projects/win32/boost.cmake
+++ Superbuild/Projects/win32/boost.cmake
@@ -9,6 +9,6 @@
   CONFIGURE_COMMAND
     <SOURCE_DIR>/bootstrap.bat
   BUILD_COMMAND <SOURCE_DIR>/b2
-    toolset=msvc-9.0 address-model=${boost_address_model} --prefix=<INSTALL_DIR> --with-regex --with-system --with-date_time --with-program_options --with-iostreams --with-filesystem --with-thread install
+    address-model=${boost_address_model} --prefix=<INSTALL_DIR> --with-regex --with-system --with-date_time --with-program_options --with-iostreams --with-filesystem --with-thread install
   INSTALL_COMMAND ""
 )


ENH: update DTI-Reg version

ENH: update DTI-Reg version

--- CMake/FindExternalTools.cmake
+++ CMake/FindExternalTools.cmake
@@ -491,7 +491,7 @@
   SVN_REPOSITORY "https://www.nitrc.org/svn/dtireg/trunk"
   SVN_USERNAME slicerbot
   SVN_PASSWORD slicer
-  SVN_REVISION -r 27 # 01/09/2013
+  SVN_REVISION -r 28 # 01/10/2013
   )
 set( CMAKE_ExtraARGS
   -DANTSTOOL:PATH=${ANTSPath}


[OSX] Add macosx to library search path

[OSX] Add macosx to library search path

--HG--
branch : v1-9

--- CMake/Packages/FindOGRE.cmake
+++ CMake/Packages/FindOGRE.cmake
@@ -119,7 +119,11 @@
   endforeach(dir)
   foreach(dir ${OGRE_PREFIX_BUILD})
     set(OGRE_INC_SEARCH_PATH ${dir}/include ${OGRE_INC_SEARCH_PATH})
-    set(OGRE_LIB_SEARCH_PATH ${dir}/lib ${OGRE_LIB_SEARCH_PATH})
+    if(APPLE AND NOT OGRE_BUILD_PLATFORM_APPLE_IOS)
+        set(OGRE_LIB_SEARCH_PATH ${dir}/lib/macosx ${OGRE_LIB_SEARCH_PATH})
+    else()
+        set(OGRE_LIB_SEARCH_PATH ${dir}/lib ${OGRE_LIB_SEARCH_PATH})
+    endif()

     if (OGRE_BUILD_PLATFORM_APPLE_IOS)
         set(OGRE_LIB_SEARCH_PATH ${dir}/lib/iphoneos ${dir}/lib/iphonesimulator ${OGRE_LIB_SEARCH_PATH})


list boost addition version from latest to older

--- ConfigureChecks.cmake
+++ ConfigureChecks.cmake
@@ -11,7 +11,7 @@
 # set BOOST_ROOT to select a boost installation

 # This is required to enable the new version
-SET(Boost_ADDITIONAL_VERSIONS 1.37 1.37.0 1.38 1.38.0 1.39 1.39.0)
+SET(Boost_ADDITIONAL_VERSIONS 1.39 1.39.0 1.38 1.38.0 1.37 1.37.0)
 # find unit_test_framework in boost >= 1.35, it's optional and only
 # used in unit testcases
 FIND_PACKAGE(Boost 1.35.0 COMPONENTS unit_test_framework)


COMP: activated QmitkSliceWidget

COMP: activated QmitkSliceWidget

--- Modules/QmitkExt/files.cmake
+++ Modules/QmitkExt/files.cmake
@@ -49,7 +49,7 @@

  #QmitkLevelWindowPresetDefinitionDialog.cpp
  # QmitkLevelWindowWidgetContextMenu.cpp
- # QmitkSliceWidget.cpp
+ QmitkSliceWidget.cpp
  # QmitkStdMultiWidget.cpp
  QmitkTransferFunctionWidget.cpp
  QmitkSelectableGLWidget.cpp
@@ -102,7 +102,7 @@
  QmitkStandardViews.h
  QmitkStepperAdapter.h
  QmitkSliderNavigatorWidget.h
- # QmitkSliceWidget.h
+ QmitkSliceWidget.h
  QmitkSlicesInterpolator.h
  QmitkColorTransferFunctionCanvas.h
  QmitkPiecewiseFunctionCanvas.h
@@ -131,7 +131,7 @@
   # QmitkLevelWindowRangeChange.ui
   # QmitkLevelWindowPresetDefinition.ui
   # QmitkLevelWindowWidget.ui
-  # QmitkSliceWidget.ui
+  QmitkSliceWidget.ui
   QmitkTransferFunctionWidget.ui
   QmitkSelectableGLWidget.ui
   QmitkPrimitiveMovieNavigatorWidget.ui


corrected .gitignore auto generated file path

--- Plugins/PluginTemplate.cmake
+++ Plugins/PluginTemplate.cmake
@@ -118,7 +118,7 @@
       FILE(WRITE ${link_file_path} "${external_include_file}")
     endif()

-    FILE(WRITE "${CMAKE_CURRENT_LIST_DIR}/${tgt}/src/.gitignore" "Aquila\n${tgt}Export.hpp\nprecompiled.hpp")
+    FILE(WRITE "${CMAKE_CURRENT_LIST_DIR}/src/.gitignore" "Aquila\n${tgt}Export.hpp\nprecompiled.hpp\nplugin_config.cpp")

     INSTALL(TARGETS ${tgt}
             LIBRARY DESTINATION bin/Plugins


Ensure HALIDE_SHARED is defined for Generators

Former-commit-id: 50bdf1bdb92e402d567e943bd84d17c2cee992dd

--- HalideGenerator.cmake
+++ HalideGenerator.cmake
@@ -214,6 +214,7 @@
   set(OBJLIB "${NAME}.objlib")
   add_library("${OBJLIB}" OBJECT ${args_SRCS})
   add_dependencies("${OBJLIB}" Halide)
+  target_compile_definitions("${OBJLIB}" PRIVATE "-DHalide_${HALIDE_LIBRARY_TYPE}")
   target_include_directories("${OBJLIB}" PRIVATE "${CMAKE_BINARY_DIR}/include")
   if (NOT MSVC)
     target_compile_options("${OBJLIB}" PRIVATE "-std=c++11") # Halide clients need C++11


Fix should now find OIS which is not taken from repository

git-svn-id: 65dd0ccd495961f396d5302e5521154b071f0302@947 5b2332b8-efa3-11de-8684-7d64432d61a3

--- CMakeModules/OIS.cmake
+++ CMakeModules/OIS.cmake
@@ -2,25 +2,65 @@
 # Find is already called in the top-level CMakeLists

 macro (FIND_OIS)
-	if (NOT MSVC)
-		find_package (PkgConfig)
-		pkg_search_module (OIS OIS)
-		if (NOT OIS_INCLUDE_DIRS AND NOT OIS_LIBRARIES)
-			message (FATAL_ERROR "OIS not found by pkg-config")
-		endif (NOT OIS_INCLUDE_DIRS AND NOT OIS_LIBRARIES)
-		separate_arguments (OIS_INCLUDE_DIRS)
-		separate_arguments (OIS_LIBRARIES)
-	endif (NOT MSVC)
+
+  if (NOT MSVC)
+
+    find_package (PkgConfig)
+    pkg_search_module (OIS OIS)
+    if (NOT OIS_INCLUDE_DIRS AND NOT OIS_LIBRARIES)
+
+      message (STATUS "OIS was not found by pkg-config")
+
+      set(OIS_PREFIX_GUESSES
+	/opt/OIS
+	/opt/ois
+	/usr/local
+	/usr/lib/ois
+	/usr/lib/OIS
+	/usr/local/ois
+	/usr/local/OIS
+	/usr/local/include/OIS
+	$ENV{HOME}/ois
+	$ENV{HOME}/OIS
+	$ENV{REX_DEP_PATH}/ois
+	$ENV{REX_DEP_PATH}/OIS)
+
+      set(OIS_PREFIX_PATH
+	${OIS_HOME} $ENV{OIS_HOME} ${OIS_PREFIX_GUESSES})
+
+      create_search_paths(OIS)
+      message(STATUS "try to find ois from guessed paths")
+
+      find_path(OIS_INCLUDE_DIR OIS.h HINTS ${OIS_INC_SEARCH_PATH} ${OIS_PKGC_INCLUDE_DIRS})
+      find_path(OIS_LIBRARY_DIR libOIS.so HINTS ${OIS_LIB_SEARCH_PATH})
+
+      set(OIS_INCLUDE_DIRS ${OIS_INCLUDE_DIR})
+      set(OIS_LIBDIR ${OIS_LIBRARY_DIR})
+      set(OIS_LIBRARIES "OIS")
+
+      if (NOT OIS_INCLUDE_DIR OR NOT OIS_LIBRARY_DIR)
+	message(STATUS "Ois was not found either from guessed paths or pkg-config. Please set OIS_HOME enviroment variable")
+      endif()
+
+    endif (NOT OIS_INCLUDE_DIRS AND NOT OIS_LIBRARIES)
+
+    #separate_arguments (OIS_INCLUDE_DIRS)
+    #separate_arguments (OIS_LIBRARIES)
+
+  endif (NOT MSVC)
+
 endmacro (FIND_OIS)

 macro (INCLUDE_OIS)
-	if (MSVC)
-		include_directories (${REX_DEP_PATH}/ois/includes)
-		link_directories (${REX_DEP_PATH}/ois/dll)
-	else (MSVC)
-		include_directories (${OIS_INCLUDE_DIRS})
-		link_directories (${OIS_LIBDIR})
-	endif (MSVC)
+
+  if (MSVC)
+    include_directories (${REX_DEP_PATH}/ois/includes)
+    link_directories (${REX_DEP_PATH}/ois/dll)
+  else (MSVC)
+    include_directories (${OIS_INCLUDE_DIRS})
+    link_directories (${OIS_LIBDIR})
+  endif (MSVC)
+
 endmacro (INCLUDE_OIS)

 macro (LINK_OIS)


Add libprotobuf-lite.a when install. (#6340)

* Add libprotobuf-lite.a when install.

* Fix protobuf.cmake

* Bug fix

--- cmake/external/protobuf.cmake
+++ cmake/external/protobuf.cmake
@@ -253,9 +253,9 @@
     IF(WITH_C_API)
         INSTALL(DIRECTORY ${PROTOBUF_INCLUDE_DIR} DESTINATION third_party/protobuf)
         IF(ANDROID)
-            INSTALL(FILES ${PROTOBUF_LIBRARY} DESTINATION third_party/protobuf/lib/${ANDROID_ABI})
+            INSTALL(FILES ${PROTOBUF_LITE_LIBRARY} DESTINATION third_party/protobuf/lib/${ANDROID_ABI})
         ELSE()
-            INSTALL(FILES ${PROTOBUF_LIBRARY} DESTINATION third_party/protobuf/lib)
+            INSTALL(FILES ${PROTOBUF_LITE_LIBRARY} DESTINATION third_party/protobuf/lib)
         ENDIF()
     ENDIF()


provided by cmake

provided by cmake

svn path=/trunk/KDE/kdepim/; revision=657847


changed statismo-config.cmake to look for hdf5 library in statismo 3rdparty dir (currently linux only)

--- statismo-config.cmake
+++ statismo-config.cmake
@@ -1,18 +1,33 @@

 # hdf5 stuff

-SET(HDF5_USE_STATIC_LIBRARIES FALSE)
-IF(WIN32)
-  FIND_PACKAGE(HDF5 COMPONENTS CXX REQUIRED NO_MODULE)
-ELSE(WIN32)
-  FIND_PACKAGE(HDF5 COMPONENTS CXX )
-  IF (NOT HDF5_FOUND)
-  FIND_PACKAGE(HDF5 COMPONENTS CXX REQUIRED NO_MODULE)
-  ENDIF(NOT HDF5_FOUND)
-ENDIF(WIN32)
-
+SET (HDF5_INCLUDE_DIR ${STATISMO_DIR}/3rdParty/hdf5/include)
+SET (HDF5_INCLUDE_DIR_CPP ${HDF5_INCLUDE_DIR}/cpp)

+IF(${CMAKE_SYSTEM_NAME} MATCHES "WIN32")
+	if(CMAKE_SIZEOF_VOID_P MATCHES 4)
+		SET (HDF5_LIBRARY_DIR ${STATISMO_DIR}/3rdParty/hdf5/lib/win32)
+   else()
+		SET (HDF5_LIBRARY_DIR ${STATISMO_DIR}/3rdParty/hdf5/lib/win64)
+   endif()
+	SET (HDF5_LIBRARIES hdf5 hdf5_cpp)
+ELSEIF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
+	if(CMAKE_SIZEOF_VOID_P MATCHES 4)
+		SET (HDF5_LIBRARY_DIR ${STATISMO_DIR}/3rdParty/hdf5/lib/linux32)
+	else()
+		SET (HDF5_LIBRARY_DIR ${STATISMO_DIR}/3rdParty/hdf5/lib/linux64)
+	endif()
+	SET (HDF5_LIBRARIES hdf5 hdf5_cpp)
+ELSE()
+	message(FATAL_ERROR
+		"The system ${CMAKE_SYSTEM_NAME} is currently not supported by the build system."
+		"The problem is that the hdf5 libraries are not yet included in the statismo distribution."
+		"You can change this yourself, by copy the necessary hdf5 libraries in ${STATISMO_DIR}/3rdParty/hdf5/lib/YOUR_SYSTEM"
+		" and adapt the ${STATISMO_DIR}/statismo-config.cmake file. Please also report to the developers,"
+		"such that your system can be supported in future versions")
+ENDIF()

 SET(STATISMO_LIBRARIES   ${HDF5_LIBRARIES})
 SET(STATISMO_INCLUDE_DIR ${STATISMO_DIR} ${STATISMO_DIR}/3rdParty ${HDF5_INCLUDE_DIR} ${HDF5_INCLUDE_DIR_CPP})
 SET(STATISMO_LIBRARY_DIR  ${HDF5_LIBRARY_DIR})
+


New version: 0.4.16

New version: 0.4.16

--- VERSION.cmake
+++ VERSION.cmake
@@ -1,3 +1,3 @@
 SET(HAWKEY_MAJOR "0")
 SET(HAWKEY_MINOR "4")
-SET(HAWKEY_PATCH "15")
+SET(HAWKEY_PATCH "16")


Bump DTK version to 3.1

Bump DTK version to 3.1

--- Version.cmake
+++ Version.cmake
@@ -1,5 +1,5 @@
-SET(DataTransferKit_VERSION 3.0.0)
+SET(DataTransferKit_VERSION 3.1.0)
 SET(DataTransferKit_MAJOR_VERSION 3)
-SET(DataTransferKit_MAJOR_MINOR_VERSION 030000)
-SET(DataTransferKit_VERSION_STRING "3.0.0 (Dev)")
+SET(DataTransferKit_MAJOR_MINOR_VERSION 030100)
+SET(DataTransferKit_VERSION_STRING "3.1.0 (Dev)")
 SET(DataTransferKit_ENABLE_DEVELOPMENT_MODE_DEFAULT ON) # Change to 'OFF' for a release


Remove reduntant sota.service.cmake

Remove reduntant sota.service.cmake

--- distribution/sota.service.cmake
+++ distribution/sota.service.cmake
@@ -1,11 +0,0 @@
-[Unit]
-Description=Aktualizr SOTA Client
-After=network.target
-
-[Service]
-Type=simple
-ExecStart=${CMAKE_INSTALL_PREFIX}/bin/aktualizr -c /etc/sota.conf
-Restart=always
-
-[Install]
-WantedBy=multi-user.target


added new line at end of file

added new line at end of file

--- libxml2.cmake
+++ libxml2.cmake
@@ -36,4 +36,5 @@
     TEST_COMMAND        ${BUILDEM_ENV_STRING} make check

-  endif(NOT libxml2_NAME)+  endif(NOT libxml2_NAME)
+


Cleaning up build directory: Moving cxx11_* temp stuff to subdirectory.

--- cmake/CheckCXX11Features.cmake
+++ cmake/CheckCXX11Features.cmake
@@ -89,7 +89,7 @@

 function(cxx11_check_feature FEATURE_NAME RESULT_VAR)
     if (NOT DEFINED ${RESULT_VAR})
-        set(_bindir "${CMAKE_CURRENT_BINARY_DIR}/cxx11_${FEATURE_NAME}")
+        set(_bindir "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CMakeTmp/cxx11_${FEATURE_NAME}")

         set(_SRCFILE_BASE ${CMAKE_CURRENT_LIST_DIR}/CheckCXX11Features/cxx11-test-${FEATURE_NAME})
         set(_LOG_NAME "\"${FEATURE_NAME}\"")


Add missing include for ExternalProject

Add missing include for ExternalProject

Hadn't tested this if-path on Windows. Sorry.

--- cmake/modules/FindPython.cmake
+++ cmake/modules/FindPython.cmake
@@ -7,6 +7,7 @@
 	if(WIN32)
 		message(WARNING "Building Python on Windows is not supported at the moment. You will probably run into problems.")
 	endif(WIN32)
+	include(ExternalProject)
 	ExternalProject_Add(Python
 		URL https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
 		URL_HASH SHA512=248B3EF2DEFEE7C013E8AC7472B9F2828B1C5B07A2F091EAD46EBDF209BE11DD37911978B590367699D9FAD50F1B98B998BCEEC34FA8369BA30950D3A5FB596F


ilastik.cmake: Don't add pgmlink dependency unless CPLEX is installed.

--- ilastik.cmake
+++ ilastik.cmake
@@ -57,12 +57,20 @@

 message ("Installing ${ilastik_NAME}/${ILASTIK_VERSION} into FlyEM build area: ${BUILDEM_DIR} ...")

+set (ilastik_dependencies ${vigra_NAME} ${h5py_NAME} ${psutil_NAME}
+                            ${blist_NAME} ${greenlet_NAME} ${yapsy_NAME}
+                            ${cylemon_NAME} ${scikit-learn_NAME})
+
+if (NOT "${CMAKE_CPLEX_ROOT_DIR}" STREQUAL "")
+    # Tracking depends on pgmlink, which depends on CPLEX.
+    # Most people don't have CPLEX installed on their system.
+    set (ilastik_dependencies ${ilastik_dependencies}  ${pgmlink_NAME})
+endif()
+
 if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
     # On Mac OS X, building drtile requires explicitly setting several cmake cache variables
     ExternalProject_Add(${ilastik_NAME}
-        DEPENDS             ${vigra_NAME} ${h5py_NAME} ${psutil_NAME}
-                            ${blist_NAME} ${greenlet_NAME} ${yapsy_NAME}
-                            ${cylemon_NAME} ${scikit-learn_NAME} ${pgmlink_NAME}
+        DEPENDS             ${ilastik_dependencies}
         SOURCE_DIR          ${ilastik_SRC_DIR}
         GIT_REPOSITORY      ${ilastik_URL}
         UPDATE_COMMAND      ${ILASTIK_UPDATE_COMMAND}
@@ -84,9 +92,7 @@
     # On Linux, building drtile requires less explicit configuration
     # The explicit configuration above would probably work, but let's keep this simple...
     ExternalProject_Add(${ilastik_NAME}
-        DEPENDS             ${vigra_NAME} ${h5py_NAME} ${psutil_NAME}
-                            ${blist_NAME} ${greenlet_NAME} ${yapsy_NAME}
-                            ${cylemon_NAME} ${scikit-learn_NAME} ${pgmlink_NAME}
+        DEPENDS             ${ilastik_dependencies}
         SOURCE_DIR          ${ilastik_SRC_DIR}
         GIT_REPOSITORY      ${ilastik_URL}
         UPDATE_COMMAND      ${ILASTIK_UPDATE_COMMAND}


fixed env var str comparison

fixed env var str comparison

--- include.cmake
+++ include.cmake
@@ -56,15 +56,9 @@
 # Project file version defines
 add_definitions(-DAPI_VERSION="${VERSION}")

-message("a $ENV{GAMS_FOR_LINUX}")
-message("b $ENV{GAMS_CORE_PATH}")
-message("c $ENV{GAMS_BUILD_ENV}")
-
 # GAMS_CORE_PATH is Jenkins build switch
 if(NOT EXISTS ${PWD}/gamsinclude.pri)
-    message("RGDBG1: $ENV{GAMS_CORE_TMP}")
-    if(NOT DEFINED $ENV{GAMS_CORE_PATH})
-        message("-- NOT DEFINED")
+    if("$ENV{GAMS_CORE_PATH}" STREQUAL "")
         if(APPLE)
             set(GAMS_DISTRIB /Library/Frameworks/GAMS.framework/Versions/${GAMS_DISTRIB_MAJOR}/Resources)
             set(GAMSINC
@@ -87,12 +81,12 @@
 GAMS_DISTRIB_CPP_API=${GAMS_DISTRIB}/apifiles/C++/api")
         endif()
     else()
-        message("-- YES DEFINED")
         set(GAMSINC
-"GAMS_DISTRIB=${GAMS_CORE_PATH}\n\
-GAMS_DISTRIB_C_API=${GAMS_DISTRIB}/apifiles/C/api\n\
-GAMS_DISTRIB_CPP_API=${GAMS_DISTRIB}/apifiles/C++/api")
+"GAMS_DISTRIB=$ENV{GAMS_CORE_PATH}\n\
+GAMS_DISTRIB_C_API=$ENV{GAMS_CORE_PATH}/apifiles/C/api\n\
+GAMS_DISTRIB_CPP_API=$ENV{GAMS_CORE_PATH}/apifiles/C++/api")
     endif()
+
     file(WRITE ${PWD}/gamsinclude.pri ${GAMSINC})
 endif()

@@ -101,8 +95,7 @@
 endif()

 # GAMS_BUILD is GAMS distrib build switch
-if(NOT DEFINED $ENV{GAMS_BUILD_ENV})
-    message("RGDBG2: NOT DEFINED $ENV{GAMS_BUILD_ENV}")
+if("$ENV{GAMS_BUILD_ENV}" STREQUAL "")
     include_directories(${GAMS_DISTRIB_C_API})

     set(SOURCE ${SOURCE} ${GAMS_DISTRIB_C_API}/gclgms.c
@@ -122,7 +115,6 @@
                              PARENT_SCOPE)
     endif()
 else()
-    message("RGDBG2: YES DEFINED $ENV{GAMS_BUILD_ENV}")
     set(GSYS_ENV ${GSYS})
     if (${GSYS_ENV} STREQUALS "wei")
         add_definitions(WEI CIA_WEX)


Add check for the required VTK version. Closes #17

--- CMake/IRTKBuildDeps.cmake
+++ CMake/IRTKBuildDeps.cmake
@@ -48,6 +48,9 @@
                      vtkIOPLY
                      vtkIOXML)
   find_package(VTK COMPONENTS ${VTK_COMPONENTS} NO_MODULE REQUIRED)
+  if("${VTK_VERSION_MAJOR}.${VTK_VERSION_MINOR}" VERSION_LESS 6.0)
+    message(FATAL_ERROR "IRTK requires VTK version 6 or later.")
+  endif()
   include_directories(${VTK_INCLUDE_DIRS})
   link_libraries(${VTK_LIBRARIES})
   add_definitions(-DHAS_VTK -DHAVE_VTK)


Fix FFMPEG try_compile link failures.

Fix FFMPEG try_compile link failures.

When using older ffmpeg on the Mac the try_compiles are failing because a link error and thus were not producing accurate configuration results.

--- CMake/vtkTestFFMPEG.cmake
+++ CMake/vtkTestFFMPEG.cmake
@@ -25,7 +25,7 @@
         ${VTK_BINARY_DIR}/CMakeTmp
         ${VTK_CMAKE_DIR}/vtkFFMPEGTestImgConvert.cxx
         CMAKE_FLAGS "-DINCLUDE_DIRECTORIES:STRING=${FFMPEG_INCLUDE_DIR}"
-          "-DLINK_LIBRARIES:STRING=${FFMPEG_avcodec_LIBRARY}"
+          "-DLINK_LIBRARIES:STRING=${FFMPEG_avcodec_LIBRARY};${FFMPEG_avutil_LIBRARY}"
           -DCOMPILE_DEFINITIONS:STRING=-D${VTK_FFMPEG_CDEFS}
         OUTPUT_VARIABLE OUTPUT)
       IF(VTK_FFMPEG_HAS_IMG_CONVERT)
@@ -56,9 +56,7 @@
         ${VTK_CMAKE_DIR}/vtkFFMPEGTestURLFClose.cxx
         CMAKE_FLAGS "-DINCLUDE_DIRECTORIES:STRING=${FFMPEG_INCLUDE_DIR}"
           -DCOMPILE_DEFINITIONS:STRING=-D${VTK_FFMPEG_CDEFS}
-          "-DLINK_LIBRARIES:STRING=${FFMPEG_avformat_LIBRARY}"
-        OUTPUT_VARIABLE OUTPUT)
-
+          "-DLINK_LIBRARIES:STRING=${FFMPEG_avformat_LIBRARY};${FFMPEG_avutil_LIBRARY};${FFMPEG_avcodec_LIBRARY}"
         IF(VTK_FFMPEG_OLD_URL_FCLOSE)
           MESSAGE(STATUS "Checking if FFMPEG uses old API for url_fclose - found")
           FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
@@ -88,7 +86,6 @@
           -DCOMPILE_DEFINITIONS:STRING=-D${VTK_FFMPEG_CDEFS}
           "-DLINK_LIBRARIES:STRING=${FFMPEG_avformat_LIBRARY}"
         OUTPUT_VARIABLE OUTPUT)
-
         IF(VTK_FFMPEG_NEW_ALLOC)
           MESSAGE(STATUS "Checking if FFMPEG has avformat_alloc_context - found")
           FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log


Disable build of docbook manpages

Disable build of docbook manpages

--- CMakeExternals/GDCM.cmake
+++ CMakeExternals/GDCM.cmake
@@ -49,6 +49,7 @@
        ${ep_common_args}
        ${additional_args}
        -DGDCM_BUILD_SHARED_LIBS:BOOL=ON
+       -DGDCM_BUILD_DOCBOOK_MANPAGES:BOOL=OFF
        ${${proj}_CUSTOM_CMAKE_ARGS}
      CMAKE_CACHE_ARGS
        ${ep_common_cache_args}


ManageFile: Fix the program install

ManageFile: Fix the program install

--- Modules/ManageFile.cmake
+++ Modules/ManageFile.cmake
@@ -106,16 +106,16 @@
 	    ENDIF(_arg STREQUAL "DEST_SUBDIR")
 	ENDFOREACH(_arg ${ARGN})

-	IF(fileType STREQUAL "SYSCONF_NO_REPLACE")
+	IF("${fileType}" STREQUAL "SYSCONF_NO_REPLACE")
 	    SET(_destDir "${SYSCONF_DIR}/${_subDir}")
 	    _MANAGE_FILE_INSTALL_FILE_OR_DIR()
-	ELSEIF(fileType STREQUAL "BIN")
+	ELSEIF("${fileType}" STREQUAL "BIN")
 	    SET(_destDir "${${fileType}_DIR}/${_subDir}")
 	    INSTALL(PROGRAMS ${_fileList} DESTINATION "${_destDir}" ${_argList})
-	ELSE(fileType STREQUAL "SYSCONF_NO_REPLACE")
+	ELSE("${fileType}" STREQUAL "SYSCONF_NO_REPLACE")
 	    SET(_destDir "${${fileType}_DIR}/${_subDir}")
 	    _MANAGE_FILE_INSTALL_FILE_OR_DIR()
-	ENDIF(fileType STREQUAL "SYSCONF_NO_REPLACE")
+	ENDIF("${fileType}" STREQUAL "SYSCONF_NO_REPLACE")

 	IF(_subDir)
 	    FOREACH(_f ${_fileList})


Source added map.

Source added map.

--- CPM.cmake
+++ CPM.cmake
@@ -86,6 +86,13 @@
 #                                 the parent_scope when CPM_INIT_MODULE is
 #                                 called and at the end of the AddModule
 #                                 function.
+#  CPM_KV_SOURCE_ADDED_MAP_*    - Key/value added source map. Ensures we don't
+#                                 add the same module twice.
+#                                 Key: Full unique path.
+#                                 Value: Always TRUE.
+#  CPM_KV_LIST_SOURCE_ADDED_MAP - A list of entries in CPM_KV_SOURCE_ADDED_MAP.
+#                                 Used to ensure we don't issue duplicate
+#                                 add_subdirectory calls.
 #  CPM_KV_PREPROC_NS_MAP_*      - A key/value C preprocessor namespace mapping.
 #                                 Key: C Preprocessor name.
 #                                 Val: The *full* unique ID of the module.
@@ -407,6 +414,21 @@
   endif()
 endmacro()

+macro(_cpm_propogate_source_added_map_up)
+  # Use CPM_KV_LIST_MOD_VERSION_MAP to propogate constraints up into the
+  # parent CPM_AddModule function's namespace. CPM_AddModule will
+  # propogate the versioning information up again to it's parent's namespace.
+  if (NOT CPM_HIERARCHY_LEVEL EQUAL 0)
+    foreach(_cpm_kvName IN LISTS CPM_KV_LIST_SOURCE_ADDED_MAP)
+      set(CPM_KV_SOURCE_ADDED_MAP_${_cpm_kvName} ${CPM_KV_MOD_VERSION_MAP_${_cpm_kvName}} PARENT_SCOPE)
+    endforeach()
+    set(_cpm_kvName) # Clear kvName
+
+    # Now propogate the list itself upwards.
+    set(CPM_KV_LIST_MOD_VERSION_MAP ${CPM_KV_LIST_MOD_VERSION_MAP} PARENT_SCOPE)
+  endif()
+endmacro()
+
 # This macro initializes a CPM module. We use a macro for this code so that
 # we can set variables in the parent namespace (if any).
 # name - Same as the name parameter in CPM_AddModule. A preprocessor definition
@@ -738,6 +760,7 @@
   set(CPM_FORCE_ONLY_ONE_MODULE_VERSION)
   set(__CPM_NEW_GIT_TAG)

+
   # Setup the project.
   message("Adding subdir: ${__CPM_MODULE_SOURCE_DIR} -- ${__CPM_MODULE_BIN_DIR}")
   add_subdirectory("${__CPM_MODULE_SOURCE_DIR}" "${__CPM_MODULE_BIN_DIR}")


r9238/sofa : FIX: cmake SofaComponentCommon

Former-commit-id: eac1fb8b2a54b43d06982f4c3dc83acd4e5af004

--- modules/sofa/component/SofaComponentCommon.cmake
+++ modules/sofa/component/SofaComponentCommon.cmake
@@ -6,21 +6,19 @@

 set(HEADER_FILES

-    init.h
     initComponentCommon.h

     )

 set(SOURCE_FILES

-    init.cpp
     initComponentCommon.cpp

     )

 add_library(${PROJECT_NAME} SHARED ${HEADER_FILES} ${SOURCE_FILES})

-set(COMPILER_DEFINES "SOFA_BUILD_COMPONENT_COMMON;SOFA_BUILD_COMPONENT")
-set(LINKER_DEPENDENCIES SofaLoader SofaDeformable SofaSimpleFem SofaObjectInteraction SofaExplicitOdeSolver SofaImplicitOdeSolver SofaEigen2Solver SofaMeshCollision SofaComponentBase SofaComponentMisc SofaComponentGeneral SofaComponentAdvanced)
+set(COMPILER_DEFINES "SOFA_BUILD_COMPONENT_COMMON")
+set(LINKER_DEPENDENCIES SofaLoader SofaDeformable SofaSimpleFem SofaObjectInteraction SofaExplicitOdeSolver SofaImplicitOdeSolver SofaEigen2Solver SofaMeshCollision)

 include(${SOFA_CMAKE_DIR}/post.cmake)


Added iso-country-flags 3rd-party

Added iso-country-flags 3rd-party

--- ThirdPartyLibraries.cmake
+++ ThirdPartyLibraries.cmake
@@ -182,6 +182,7 @@
 add_target(IMAP_2007F imap-2007f)
 add_target(ISO_3166 iso_3166)
 add_target(ISO_639 iso_639)
+add_target(ISO_COUNTRY_FLAGS iso-country-flags)
 add_target(IWYU iwyu)
 add_target(JSONCPP jsoncpp)
 add_target(LDAP ldap)
@@ -1677,6 +1678,18 @@
   INSTALL_COMMAND ${NOP})

 ################################################################################
+# iso-country-flags.
+add_external_project(
+  ${ISO_COUNTRY_FLAGS_TARGET}
+  PREFIX ${ISO_COUNTRY_FLAGS_PREFIX}
+  DOWNLOAD_DIR ${ISO_COUNTRY_FLAGS_PREFIX}
+  DOWNLOAD_COMMAND
+      ${SVN} export --force https://github.com/koppi/iso-country-flags-svg-collection/trunk/svg/country-squared data
+  CONFIGURE_COMMAND ${NOP}
+  BUILD_COMMAND ${NOP}
+  INSTALL_COMMAND ${NOP})
+
+################################################################################
 # iwyu.
 set(IWYU_LINKER_FLAGS "-L${CLANG_PREFIX}/lib")
 add_external_project(


fix runtime output directory

fix runtime output directory

--- tools/cmake/common.cmake
+++ tools/cmake/common.cmake
@@ -106,6 +106,10 @@
 	${OGRE_Overlay_INCLUDE_DIRS}
 )

+if(MINGW OR UNIX)
+  set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/dist/bin)
+endif(MINGW OR UNIX)
+
 add_executable(${APP} WIN32 ${HDRS} ${SRCS})

 set_target_properties(${APP} PROPERTIES DEBUG_POSTFIX _d)
@@ -123,10 +127,6 @@
 		COMMAND copy \"$(TargetPath)\" .\\dist\\bin )
 endif(WIN32 AND NOT MINGW)

-if(MINGW OR UNIX)
-	set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/dist/bin)
-endif(MINGW OR UNIX)
-
 if(WIN32)

 	install(TARGETS ${APP}


Oops, earlier "fixes" clobbered the VariableList

--- lib/OpenCogAtomTypes.cmake
+++ lib/OpenCogAtomTypes.cmake
@@ -139,11 +139,11 @@
         STRING(REGEX MATCH "NODE$" ISNODE ${TYPE})
         STRING(REGEX MATCH "LINK$" ISLINK ${TYPE})

-        # If not named as a node or a link, assume its a value.
-        # This is kind of hacky, but I don't know what else to do ...
-        IF (NOT ISNODE STREQUAL "NODE" AND NOT ISLINK STREQUAL "LINK")
-            SET(ISVALUE "VALUE")
-        ENDIF (NOT ISNODE STREQUAL "NODE" AND NOT ISLINK STREQUAL "LINK")
+        # If not explicitly named, assume its a link. This is kind of
+        # hacky, but is needed for e.g. "VariableList" ...
+        IF (NOT ISNODE STREQUAL "NODE" AND NOT ISVALUE STREQUAL "VALUE")
+            SET(ISLINK "LINK")
+        ENDIF (NOT ISNODE STREQUAL "NODE" AND NOT ISVALUE STREQUAL "VALUE")

         # Print out the scheme definitions
         FILE(APPEND "${SCM_FILE}" "(define-public ${TYPE_NAME}Type (cog-type->int '${TYPE_NAME}))\n")


Fixed bug when expanding target

Fixed bug when expanding target

Former-commit-id: 9ccfca90b3ee6d58126484293ea012f468732f98

--- cmake-modules/getExpandedTarget.cmake
+++ cmake-modules/getExpandedTarget.cmake
@@ -38,7 +38,7 @@
         set(repl ${tgt})
         foreach(lib ${target_expanded}) # Has no duplicates -> match only happens once
             if("${tgt}" STREQUAL "${lib}")
-                message(STATUS "Replacing ${repl} with ${target_expanded_${lib}}")
+                #message(STATUS "Replacing ${repl} with ${target_expanded_${lib}}")
                 set(repl ${target_expanded_${lib}})
             endif()
         endforeach()


tweak the pkg_config_variable macro to set cache values

--- cmake/Modules/PkgConfigVariable.cmake
+++ cmake/Modules/PkgConfigVariable.cmake
@@ -1,10 +1,14 @@
 include(FindPkgConfig)

 macro(pkg_config_variable MODULE VARIABLE OUTPUT_VARIABLE)
+	set(_output)
+
 	execute_process(
 		COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=${VARIABLE} ${MODULE}
-		OUTPUT_VARIABLE ${OUTPUT_VARIABLE}
+		OUTPUT_VARIABLE ${_output}
 		OUTPUT_STRIP_TRAILING_WHITESPACE
 	)
+
+	set(${OUTPUT_VARIABLE} ${_output} CACHE FILEPATH "${MODULE} ${VARIABLE}")
 endmacro(pkg_config_variable)


Update AddSwiftUnittests.cmake

Update AddSwiftUnittests.cmake

--- cmake/modules/AddSwiftUnittests.cmake
+++ cmake/modules/AddSwiftUnittests.cmake
@@ -48,8 +48,10 @@
       "${android_system_libs}")
     set_property(TARGET "${test_dirname}" APPEND PROPERTY LINK_LIBRARIES "log")
   elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
-    set_property(TARGET "${test_dirname}" APPEND PROPERTY COMPILE_FLAGS
-      " -march=core2")
+    if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64")
+      set_property(TARGET "${test_dirname}" APPEND_STRING PROPERTY COMPILE_FLAGS
+        " -march=core2")
+    endif()
   endif()

   find_program(LDLLD_PATH "ld.lld")


Use --color-diagnostics instead of -color-diagnostics.

Solaris ld interprets -color-diagnostics as a -c option, so it is
better to use --color-diagnostics instead. lld accepts both.

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

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

--- cmake/modules/HandleLLVMOptions.cmake
+++ cmake/modules/HandleLLVMOptions.cmake
@@ -686,8 +686,8 @@
 # lld doesn't print colored diagnostics when invoked from Ninja
 if (UNIX AND CMAKE_GENERATOR STREQUAL "Ninja")
   include(CheckLinkerFlag)
-  check_linker_flag("-Wl,-color-diagnostics" LINKER_SUPPORTS_COLOR_DIAGNOSTICS)
-  append_if(LINKER_SUPPORTS_COLOR_DIAGNOSTICS "-Wl,-color-diagnostics"
+  check_linker_flag("-Wl,--color-diagnostics" LINKER_SUPPORTS_COLOR_DIAGNOSTICS)
+  append_if(LINKER_SUPPORTS_COLOR_DIAGNOSTICS "-Wl,--color-diagnostics"
     CMAKE_EXE_LINKER_FLAGS CMAKE_MODULE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS)
 endif()


refs #5280 Intel compiler has some warnings for -WeffC++.  Temporarily removing till warnings are fixed

git-svn-id: b5c078ec0b4d3a50497e9dd3081db18a5b4f16e5@45982 c7de825b-a66e-492c-adef-691d508d4ae1

--- cmake_modules/TokuSetupCompiler.cmake
+++ cmake_modules/TokuSetupCompiler.cmake
@@ -85,7 +85,7 @@
   -Wno-error=missing-format-attribute
   -Wpacked
   )
-set_cflags_if_supported_named("-Weffc++" -Weffcpp)
+## set_cflags_if_supported_named("-Weffc++" -Weffcpp)
 set_ldflags_if_supported(
   -Wno-error=strict-overflow
   )


refs #4871 use gcov47 when possible

refs #4871 use gcov47 when possible

git-svn-id: b5c078ec0b4d3a50497e9dd3081db18a5b4f16e5@46020 c7de825b-a66e-492c-adef-691d508d4ae1

--- cmake_modules/TokuSetupCompiler.cmake
+++ cmake_modules/TokuSetupCompiler.cmake
@@ -30,6 +30,7 @@
   if (NOT CMAKE_CXX_COMPILER_ID MATCHES GNU)
     message(FATAL_ERROR "Must use the GNU compiler to compile for test coverage.")
   endif ()
+  find_path(COVERAGE_COMMAND NAMES gcov47 gcov)
 endif (USE_GCOV)

 include(CheckCCompilerFlag)


[GLES2] Improve PowerVR SDK discovery on Windows and add support for the paths in the 3.0 sdk.

--HG--
branch : v1-9

--- CMake/Packages/FindOpenGLES2.cmake
+++ CMake/Packages/FindOpenGLES2.cmake
@@ -30,27 +30,27 @@
     IF(BORLAND)
       SET (OPENGLES2_gl_LIBRARY import32 CACHE STRING "OpenGL ES 2.x library for win32")
     ELSE(BORLAND)
-		#MS compiler - todo - fix the following line:
-		SET (OPENGLES2_gl_LIBRARY ${OGRE_DEPENDENCIES_DIR}/lib/release/libGLESv2.lib CACHE STRING "OpenGL ES 2.x library for win32")
-		SET (EGL_egl_LIBRARY      ${OGRE_DEPENDENCIES_DIR}/lib/release/libEGL.lib CACHE STRING "EGL library for win32")
-
-		SET(POWERVR_SDK_PATH "C:/Imagination Technologies/PowerVR Insider SDK/OGLES2_WINDOWS_X86EMULATION_2.10/Builds/OGLES2")
+		SET(POWERVR_SDK_PATH "C:/Imagination/PowerVR/GraphicsSDK/SDK_3.0/Builds/OGLES2")
 		FIND_PATH(OPENGLES2_INCLUDE_DIR GLES2/gl2.h
 			${POWERVR_SDK_PATH}/Include
-		)
-
+            "C:/Imagination Technologies/PowerVR Insider SDK/OGLES2_WINDOWS_X86EMULATION_2.10/Builds/OGLES2/Include"
+		)
+
 	    FIND_PATH(EGL_INCLUDE_DIR EGL/egl.h
-			${POWERVR_SDK_PATH}/Include
+			${POWERVR_SDK_PATH}/Include
+            "C:/Imagination Technologies/PowerVR Insider SDK/OGLES2_WINDOWS_X86EMULATION_2.10/Builds/OGLES2/Include"
 		)
-
+
 		FIND_LIBRARY(OPENGLES2_gl_LIBRARY
-			NAMES GLESv2
-			PATHS ${POWERVR_SDK_PATH}/WindowsX86/Lib
+			NAMES libGLESv2
+			PATHS ${POWERVR_SDK_PATH}/Windows_x86_32/Lib
+            "C:/Imagination Technologies/PowerVR Insider SDK/OGLES2_WINDOWS_X86EMULATION_2.10/Builds/OGLES2/WindowsX86/Lib"
 		)
-
+
 		FIND_LIBRARY(EGL_egl_LIBRARY
-			NAMES EGL
-			PATHS ${POWERVR_SDK_PATH}/WindowsX86/Lib
+			NAMES libEGL
+			PATHS ${POWERVR_SDK_PATH}/Windows_x86_32/Lib
+            "C:/Imagination Technologies/PowerVR Insider SDK/OGLES2_WINDOWS_X86EMULATION_2.10/Builds/OGLES2/WindowsX86/Lib"
 		)
     ENDIF(BORLAND)


Sets KRISLIBRARY_LIBRARY depending on debug or otpimized build

--- CMakeModules/FindKrisLibrary.cmake
+++ CMakeModules/FindKrisLibrary.cmake
@@ -27,6 +27,11 @@
   FIND_LIBRARY(KRISLIBRARY_LIBRARY_RELEASE
 	NAMES KrisLibrary
 	PATHS ${KRISLIBRARY_ROOT})
+
+	#this is used to pick between RELEASE and DEBUG library
+    include(SelectLibraryConfigurations)
+    select_library_configurations(KRISLIBRARY)
+
   find_package_handle_standard_args(KRISLIBRARY
 	DEFAULT_MSG
 	KRISLIBRARY_INCLUDE_DIR


Add option to build with ASAN on OSS build

Summary:
Environment variable WITH_ASAN can be set to enable building
 with ASAN options.

 Ran into issues with getdeps.py extensions P137131160.
 Once that is resolved will do away with the ENV approach

 Requires building folly lib also with ASAN to avoid linking issues

Reviewed By: shri-khare

Differential Revision: D22860508

fbshipit-source-id: 48dea49378319972894f69b11bac6fa63ee20db9

--- CMake/folly-deps.cmake
+++ CMake/folly-deps.cmake
@@ -194,6 +194,12 @@
   "Build folly with Address Sanitizer enabled."
   OFF
 )
+
+if ($ENV{WITH_ASAN})
+  message(STATUS "ENV WITH_ASAN is set")
+  set (FOLLY_LIBRARY_SANITIZE_ADDRESS ON)
+endif()
+
 if (FOLLY_LIBRARY_SANITIZE_ADDRESS)
   if ("${CMAKE_CXX_COMPILER_ID}" MATCHES GNU)
     set(FOLLY_LIBRARY_SANITIZE_ADDRESS ON)


优先使用wget而不是curl，wget更稳点

优先使用wget而不是curl，wget更稳点

--- project/cmake/modules/FindConfigurePackage.cmake
+++ project/cmake/modules/FindConfigurePackage.cmake
@@ -58,13 +58,13 @@
 #  License text for the above reference.)

 function(FindConfigurePackageDownloadFile from to)
-    find_program (CURL_FULL_PATH curl)
-    if(CURL_FULL_PATH)
-        execute_process(COMMAND ${CURL_FULL_PATH} --insecure -L ${from} -o ${to})
+    find_program (WGET_FULL_PATH wget)
+    if(WGET_FULL_PATH)
+        execute_process(COMMAND ${WGET_FULL_PATH} --no-check-certificate -v ${from} -O ${to})
     else()
-        find_program (WGET_FULL_PATH wget)
-        if(WGET_FULL_PATH)
-        execute_process(COMMAND ${WGET_FULL_PATH} --no-check-certificate -v ${from} -O ${to})
+        find_program (CURL_FULL_PATH curl)
+        if(CURL_FULL_PATH)
+            execute_process(COMMAND ${CURL_FULL_PATH} --insecure -L ${from} -o ${to})
         else()
             file(DOWNLOAD ${from} ${to} SHOW_PROGRESS)
         endif()


Add more mumps compiler options

Add more mumps compiler options

Add EMBED_SOURCE and DYNAMIC_LITERALS mumps compiler options enabled
by default for the generated shared objects

--- ydbcmake/CMakeMUMPSInformation.cmake
+++ ydbcmake/CMakeMUMPSInformation.cmake
@@ -29,12 +29,23 @@

 # Option to suppress mumps compiler warnings
 option(MUMPS_NOWARNING "Disable warnings and ignore status code from MUMPS compiler")
+option(MUMPS_EMBED_SOURCE "Embed source code in generated shared object" ON)
+option(MUMPS_DYNAMIC_LITERALS "Enable dynamic loading of source code literals" OFF)
+
 set(CMAKE_MUMPS_COMPILE_OBJECT "LC_ALL=\"${LC_ALL}\" ydb_chset=\"${ydb_chset}\" ydb_icu_version=\"${icu_version}\" <CMAKE_MUMPS_COMPILER> -object=<OBJECT>")

+if(MUMPS_EMBED_SOURCE)
+  set(CMAKE_MUMPS_COMPILE_OBJECT "${CMAKE_MUMPS_COMPILE_OBJECT} -embed_source")
+endif()
+
+if(MUMPS_DYNAMIC_LITERALS)
+  set(CMAKE_MUMPS_COMPILE_OBJECT "${CMAKE_MUMPS_COMPILE_OBJECT} -dynamic_literals")
+endif()
+
 if(MUMPS_NOWARNING)
-  set(CMAKE_MUMPS_COMPILE_OBJECT "${CMAKE_MUMPS_COMPILE_OBJECT}  -nowarning <SOURCE> || true")
+  set(CMAKE_MUMPS_COMPILE_OBJECT "${CMAKE_MUMPS_COMPILE_OBJECT} -nowarning <SOURCE> || true")
 else()
-  set(CMAKE_MUMPS_COMPILE_OBJECT "${CMAKE_MUMPS_COMPILE_OBJECT}  <SOURCE>")
+  set(CMAKE_MUMPS_COMPILE_OBJECT "${CMAKE_MUMPS_COMPILE_OBJECT} <SOURCE>")
 endif()

 set(CMAKE_MUMPS_LINK_EXECUTABLE "")


ENH: Bump TubeTK to offer updated examples and improved tube seg

Added helper functions that automate the segmentation of tubes
from grey scale and binary images.

Updated and re-organized examples

--- Modules/Remote/TubeTK.remote.cmake
+++ Modules/Remote/TubeTK.remote.cmake
@@ -48,5 +48,5 @@
   "http://www.tubetk.org"
   MODULE_COMPLIANCE_LEVEL 3
   GIT_REPOSITORY ${git_protocol}://github.com/InsightSoftwareConsortium/ITKTubeTK.git
-  GIT_TAG c9ef785c6b581e09b7752fd034dd1c97a783f4f2
+  GIT_TAG 69a8397085f7732493fb634dabbfb0ccd49ad2e1
   )


Remove use of --target in favour alternate installation paths

--- src/rezplugins/build_system/cmake_files/RezPipInstall.cmake
+++ src/rezplugins/build_system/cmake_files/RezPipInstall.cmake
@@ -54,6 +54,16 @@
         set(bindir "bin")
     endif(NOT bindir)

+    list(GET PIPINST_INCLUDEDIR 0 incdir)
+    if(NOT incdir)
+        set(incdir "include")
+    endif(NOT incdir)
+
+    list(GET PIPINST_DATADIR 0 datadir)
+    if(NOT datadir)
+        set(datadir "")
+    endif(NOT datadir)
+
     # --------------------------------------------------------------------------
     # build/install
     #
@@ -61,8 +71,12 @@
     # --------------------------------------------------------------------------

     set(stagingpath "${CMAKE_BINARY_DIR}/staging")
+
     set(destpath "${stagingpath}/${pydir}")
     set(destbinpath "${stagingpath}/${bindir}")
+    set(destincpath "${stagingpath}/${incdir}")
+    set(destdatapath "${stagingpath}/${datadir}")
+

     if(${REZ_BUILD_INSTALL})
         set(install_cmd ${CMAKE_COMMAND} -E copy_directory ${stagingpath} ${CMAKE_INSTALL_PREFIX} )
@@ -81,11 +95,13 @@
         BUILD_COMMAND
             COMMAND ${CMAKE_COMMAND} -E make_directory ${destpath}
             COMMAND ${CMAKE_COMMAND} -E make_directory ${destbinpath}
+            COMMAND ${CMAKE_COMMAND} -E make_directory ${destincpath}
+            COMMAND ${CMAKE_COMMAND} -E make_directory ${destdatapath}

             # Note the lack of double quotes where you would expect around --install-scripts=.
             # CMake escapes the quotes if I try; fortunately it works without.
             #
-            COMMAND pip install --no-deps --target ${destpath} --install-option=--install-scripts=${destbinpath} .
+            COMMAND pip install --no-deps --install-option=--install-scripts=${destbinpath} --install-option=--install-lib=${destpath} --install-option=--install-headers=${destincpath} --install-option=--install-data=${destdatapath} .
     )

-endmacro (rez_pip_install)
+endmacro (rez_pip_install)


Added possibility to override the force_build flag.

--- CMake/MITKDashboardDriverScript.cmake
+++ CMake/MITKDashboardDriverScript.cmake
@@ -106,6 +106,10 @@

   ctest_start(${model})
   ctest_update(SOURCE "${CTEST_CHECKOUT_DIR}" RETURN_VALUE res)
+
+  if(COMMAND MITK_OVERRIDE_FORCE_BUILD)
+    MITK_OVERRIDE_FORCE_BUILD(force_build)
+  endif()

   # force a build if this is the first run and the build dir is empty
   if(NOT EXISTS "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt")


Continuous clients now run forever.

Continuous clients now run forever.

--- CMake/MITKDashboardDriverScript.cmake
+++ CMake/MITKDashboardDriverScript.cmake
@@ -65,7 +65,7 @@
   set(force_build TRUE)
   set(model Experimental)
 elseif (SCRIPT_MODE STREQUAL "continuous")
-  set(empty_binary_directory TRUE)
+  set(empty_binary_directory FALSE)
   set(force_build FALSE)
   set(model Continuous)
 elseif (SCRIPT_MODE STREQUAL "nightly")
@@ -338,12 +338,11 @@
 endmacro()

 if(SCRIPT_MODE STREQUAL "continuous")
-  while(${CTEST_ELAPSED_TIME} LESS 68400)
-    set(START_TIME ${CTEST_ELAPSED_TIME})
+  while(1)
     run_ctest()
     # Loop no faster than once every 5 minutes
     message("Wait for 5 minutes ...")
-    ctest_sleep(${START_TIME} 300 ${CTEST_ELAPSED_TIME})
+    ctest_sleep(300)
   endwhile()
 else()
   run_ctest()


Made the varialb BUILD_OSSIM_VIDEO instead of BUILD_OSSIMVIDEO

--- cmake/CMakeModules/OssimCommonVariables.cmake
+++ cmake/CMakeModules/OssimCommonVariables.cmake
@@ -220,9 +220,9 @@
    ENDIF(NOT OSSIM_DEPENDENCIES)

    #################################### ADd some common options for all modules to use ###################################
-   OPTION(BUILD_OSSIMVIDEO "Set to ON to build the video decoding library.  Use OFF to skip this module." OFF)
-   OPTION(BUILD_OSSIMPLANET "Set to ON to build the 3-D visualization module.  Use OFF to skip this module." OFF)
-   OPTION(BUILD_OSSIMGUI "Set to ON to build the new ossimGui library and geocell application." ON)
+   OPTION(BUILD_OSSIM_VIDEO "Set to ON to build the video decoding library.  Use OFF to skip this module." OFF)
+   OPTION(BUILD_OSSIM_PLANET "Set to ON to build the 3-D visualization module.  Use OFF to skip this module." OFF)
+   OPTION(BUILD_OSSIM_GUI "Set to ON to build the new ossimGui library and geocell application." ON)
    OPTION(BUILD_MRSID_PLUGIN "Set to ON to build the MrSID plugin library." ON)
    OPTION(BUILD_KAKADU_PLUGIN "Set to ON to build the Kakadu plugin library." ON)
    OPTION(BUILD_PDAL_PLUGIN "Set to ON to build the PDAL plugin library." ON)


BUG: better solution for the mercurial problem in the package

--- CMake/FindMercurial.cmake
+++ CMake/FindMercurial.cmake
@@ -28,19 +28,19 @@
     EXECUTE_PROCESS(COMMAND ${Mercurial_HG_EXECUTABLE} version
       WORKING_DIRECTORY ${dir}
       OUTPUT_VARIABLE Mercurial_VERSION_HG
-      OUTPUT_STRIP_TRAILING_WHITESPACE)
+      OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)

     EXECUTE_PROCESS(COMMAND ${Mercurial_HG_EXECUTABLE} identify ${dir}
       OUTPUT_VARIABLE ${prefix}_WC_IDENTIFY
-      ERROR_VARIABLE Mercurial_hg_identify_error
-      RESULT_VARIABLE Mercurial_hg_identify_result
-      OUTPUT_STRIP_TRAILING_WHITESPACE)
+#      ERROR_VARIABLE Mercurial_hg_identify_error
+#      RESULT_VARIABLE Mercurial_hg_identify_result
+      OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)

     EXECUTE_PROCESS(COMMAND ${Mercurial_HG_EXECUTABLE} status -m ${dir}
       OUTPUT_VARIABLE ${prefix}_WC_STATUS
-      ERROR_VARIABLE Mercurial_hg_status_error
-      RESULT_VARIABLE Mercurial_hg_status_result
-      OUTPUT_STRIP_TRAILING_WHITESPACE)
+#      ERROR_VARIABLE Mercurial_hg_status_error
+#      RESULT_VARIABLE Mercurial_hg_status_result
+      OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)

     IF(NOT ${Mercurial_hg_identify_result} EQUAL 0)
       MESSAGE(SEND_ERROR "Command \"${Mercurial_HG_EXECUTABLE} identify ${dir}\" failed with output:\n${Mercurial_hg_identify_error}")


Add routines to find the install dir, and the config file

--- lib/FindHyperTable.cmake
+++ lib/FindHyperTable.cmake
@@ -19,6 +19,25 @@
 	/usr/local/hypertable/0.9.2.4/include
 	/opt/hypertable/0.9.2.4/include
 )
+
+# Look for the config file .. this is needed by the C++ code ...
+FIND_FILE(HYPERTABLE_CONFIG_FILE conf/hypertable.cfg
+	/usr/include
+	/usr/local/include
+	/usr/hypertable/0.9.2.4
+	/usr/local/hypertable/0.9.2.4
+	/opt/hypertable/0.9.2.4
+)
+
+# Assume that the base path is the install path
+FIND_PATH(HYPERTABLE_INSTALL_DIR conf/hypertable.cfg
+	/usr/include
+	/usr/local/include
+	/usr/hypertable/0.9.2.4
+	/usr/local/hypertable/0.9.2.4
+	/opt/hypertable/0.9.2.4
+)
+

 # Look for the libraries
 set(HYPER_LIB_PATHS
@@ -44,6 +63,11 @@
 	SET(HYPERTABLE_INCLUDE_DIRS ${HYPERTABLE_INCLUDE_DIR})

 	MESSAGE(STATUS "Found these hypertable libs: ${HYPERTABLE_LIBRARIES}")
+	MESSAGE(STATUS "Found hypertable install path: ${HYPERTABLE_INSTALL_DIR}")
+	MESSAGE(STATUS "Found hypertable config file: ${HYPERTABLE_CONFIG_FILE}")
+
+	ADD_DEFINITIONS(-DHYPERTABLE_INSTALL_DIR=\\"${HYPERTABLE_INSTALL_DIR}/\\")
+	ADD_DEFINITIONS(-DHYPERTABLE_CONFIG_FILE=\\"${HYPERTABLE_CONFIG_FILE}/\\")

 ELSE(HYPERTABLE_INCLUDE_DIR AND HYPERTABLE_LIBRARY)
 	SET(HYPERTABLE_FOUND 0)


Include version suffix in lua executable search

--- CMake/FindLuaInterp.cmake
+++ CMake/FindLuaInterp.cmake
@@ -10,8 +10,18 @@
 #   LUA_EXECUTABLE_FOUND          - If false, don't attempt to use lua
 #   LUA_EXECUTABLE_VERSION_STRING - version of lua found

+
+set(_NAMES lua)
+
+if(NOT LuaInterp_FIND_VERSION_MAJOR EQUAL 0)
+  list(INSERT _NAMES 0 lua${LuaInterp_FIND_VERSION_MAJOR})
+  if(NOT LuaInterp_FIND_VERSION_MINOR EQUAL 0)
+    list(INSERT _NAMES 0 lua${LuaInterp_FIND_VERSION_MAJOR}.${LuaInterp_FIND_VERSION_MINOR})
+  endif()
+endif()
+
 find_program(LUA_EXECUTABLE
-  NAMES lua
+  NAMES ${_NAMES}
   )

 if(LUA_EXECUTABLE)


#31 Find also required vtkImagingStencil component. Closes #31.

--- CMake/IRTKBuildDeps.cmake
+++ CMake/IRTKBuildDeps.cmake
@@ -43,6 +43,7 @@
                      vtkFiltersGeneral
                      vtkFiltersGeometry
                      vtkFiltersParallel
+                     vtkImagingStencil
                      vtkIOGeometry
                      vtkIOLegacy
                      vtkIOPLY


Fix Linux config directory as well

Fix Linux config directory as well

--- CMakeExternals/HDF5.cmake
+++ CMakeExternals/HDF5.cmake
@@ -47,7 +47,7 @@
     if(WIN32)
       set(HDF5_DIR ${install_dir}/cmake/)
     else()
-      set(HDF5_DIR ${install_dir}/share/cmake/hdf5)
+      set(HDF5_DIR ${install_dir}/share/cmake)
     endif()

   else()


changed lib folder path

changed lib folder path

git-svn-id: 65dd0ccd495961f396d5302e5521154b071f0302@978 5b2332b8-efa3-11de-8684-7d64432d61a3

--- CMakeModules/Python.cmake
+++ CMakeModules/Python.cmake
@@ -16,7 +16,7 @@

   if (MSVC)
     include_directories (${REX_DEP_PATH}/Python/include)
-    link_directories (${REX_DEP_PATH}/Python)
+    link_directories (${REX_DEP_PATH}/Python/lib)
   else()
     include_directories(${python_INCLUDE_DIRS})
     link_directories(${python_LIBRARY_DIRS})


Add GUILE_SITE_DIR definition

Add GUILE_SITE_DIR definition

--- cmake/OpenCogFunctions.cmake
+++ cmake/OpenCogFunctions.cmake
@@ -19,6 +19,7 @@
         OUTPUT_VARIABLE GUILE_SITE_DIR
         OUTPUT_STRIP_TRAILING_WHITESPACE)
 ENDIF()
+ADD_DEFINITIONS(-DGUILE_SITE_DIR=\\"${GUILE_SITE_DIR}\\")

 # ----------------------------------------------------------------------------
 # This configures the install and binary paths for each file, passed to it,


pedantic is enabled by default now

pedantic is enabled by default now

--- cmake/ViennaGridCommon.cmake
+++ cmake/ViennaGridCommon.cmake
@@ -31,7 +31,7 @@

 option(BUILD_EXAMPLES "Build example programs" ON)

-option(ENABLE_PEDANTIC_FLAGS "Enable pedantic compiler flags" OFF)
+option(ENABLE_PEDANTIC_FLAGS "Enable pedantic compiler flags" ON)

 option(ENABLE_VIENNADATA "Enable ViennaData for advanced accessors" OFF)


Temporarily fix for libxml2 build issue

Temporarily fix for libxml2 build issue

--- cmake/external/libxml2.cmake
+++ cmake/external/libxml2.cmake
@@ -33,8 +33,8 @@
 include (ExternalProject)
 ExternalProject_Add(${LIBXML2_TARGET}
     PREFIX ${LIBXML2_TARGET}
-    GIT_REPOSITORY https://gitlab.gnome.org/GNOME/libxml2
-    GIT_TAG master
+    GIT_REPOSITORY https://gitlab.gnome.org/vitalybuka/libxml2
+    GIT_TAG patch-2
     UPDATE_COMMAND ""
     CONFIGURE_COMMAND ${LIBXML2_SRC_DIR}/autogen.sh --without-python
                                                     --prefix=${LIBXML2_INSTALL_DIR}


[OCaml] Respect CMAKE_C_FLAGS for OCaml C files

Pass the values of CMAKE_C_FLAGS and CMAKE_C_FLAGS_${CMAKE_BUILD_TYPE}
as -ccopt to ocamlc. This enforces the specific flags used for the LLVM
build to be used for OCaml bindings as well, notably -O and -march
flags.

This also solves the issue of the user being unable to force specific
flags for OCaml bindings builds. Gentoo needs this to enforce -DNDEBUG
consistently between the LLVM build and the split OCaml bindings build.

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

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

--- cmake/modules/AddOCaml.cmake
+++ cmake/modules/AddOCaml.cmake
@@ -83,7 +83,7 @@
   endforeach()

   string(REPLACE ";" " " ARG_CFLAGS "${ARG_CFLAGS}")
-  set(c_flags "${ARG_CFLAGS} ${LLVM_DEFINITIONS}")
+  set(c_flags "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_${uppercase_CMAKE_BUILD_TYPE}} ${ARG_CFLAGS} ${LLVM_DEFINITIONS}")
   foreach( include_dir ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR} )
     set(c_flags "${c_flags} -I${include_dir}")
   endforeach()


[CMake] Swift target libraries should depend on clang in non-standalone builds

When building non-standalone and using the in-tree clang all TARGET_LIBRARIES should depend on clang. This ensures clang is built before the build tries to use it.

--- cmake/modules/AddSwift.cmake
+++ cmake/modules/AddSwift.cmake
@@ -1199,6 +1199,8 @@

   if(NOT SWIFTLIB_TARGET_LIBRARY)
     set(SWIFTLIB_INSTALL_IN_COMPONENT dev)
+  elseif(NOT SWIFT_BUILD_RUNTIME_WITH_HOST_COMPILER AND NOT SWIFT_BUILT_STANDALONE)
+    list(APPEND SWIFTLIB_DEPENDS clang)
   endif()

   # If target SDKs are not specified, build for all known SDKs.


[CMake] Replace manual fatal error messages in AddSwift.cmake with preconditions

--- cmake/modules/AddSwift.cmake
+++ cmake/modules/AddSwift.cmake
@@ -16,9 +16,7 @@
       "" # single-value args
       "TARGETS;DEPENDS" # multi-value args
       ${ARGN})
-  if(NOT "${ADMT_UNPARSED_ARGUMENTS}" STREQUAL "")
-    message(FATAL_ERROR "unrecognized arguments: ${ADMT_UNPARSED_ARGUMENTS}")
-  endif()
+  precondition(ADMT_UNPARSED_ARGUMENTS NEGATE MESSAGE "unrecognized arguments: ${ADMT_UNPARSED_ARGUMENTS}")

   if(NOT "${ADMT_DEPENDS}" STREQUAL "")
     foreach(target ${ADMT_TARGETS})
@@ -297,13 +295,8 @@
     ""
     ${ARGN})

-  if("${LFLAGS_SDK}" STREQUAL "")
-    message(FATAL_ERROR "Should specify an SDK")
-  endif()
-
-  if("${LFLAGS_ARCH}" STREQUAL "")
-    message(FATAL_ERROR "Should specify an architecture")
-  endif()
+  precondition(LFLAGS_SDK MESSAGE "Should specify an SDK")
+  precondition(LFLAGS_SDK MESSAGE "Should specify an architecture")

   set(result ${${LFLAGS_RESULT_VAR_NAME}})
   set(library_search_directories ${${LFLAGS_LIBRARY_SEARCH_DIRECTORIES_VAR_NAME}})
@@ -592,17 +585,9 @@
   translate_flags(SWIFTLIB_SINGLE "${SWIFTLIB_SINGLE_options}")

   # Check arguments.
-  if ("${SWIFTLIB_SINGLE_SDK}" STREQUAL "")
-    message(FATAL_ERROR "Should specify an SDK")
-  endif()
-
-  if ("${SWIFTLIB_SINGLE_ARCHITECTURE}" STREQUAL "")
-    message(FATAL_ERROR "Should specify an architecture")
-  endif()
-
-  if("${SWIFTLIB_SINGLE_INSTALL_IN_COMPONENT}" STREQUAL "")
-    message(FATAL_ERROR "INSTALL_IN_COMPONENT is required")
-  endif()
+  precondition(SWIFTLIB_SINGLE_SDK MESSAGE "Should specify an SDK")
+  precondition(SWIFTLIB_SINGLE_ARCHITECTURE MESSAGE "Should specify an architecture")
+  precondition(SWIFTLIB_SINGLE_INSTALL_IN_COMPONENT MESSAGE "INSTALL_IN_COMPONENT is required")

   if(NOT SWIFTLIB_SINGLE_SHARED AND
      NOT SWIFTLIB_SINGLE_STATIC AND
@@ -1394,10 +1379,7 @@
   endif()

   translate_flags(SWIFTLIB "${SWIFTLIB_options}")
-
-  if("${SWIFTLIB_INSTALL_IN_COMPONENT}" STREQUAL "")
-    message(FATAL_ERROR "INSTALL_IN_COMPONENT is required")
-  endif()
+  precondition(SWIFTLIB_INSTALL_IN_COMPONENT MESSAGE "INSTALL_IN_COMPONENT is required")

   if(NOT SWIFTLIB_SHARED AND
      NOT SWIFTLIB_STATIC AND
@@ -1630,10 +1612,7 @@

         # Determine the subdirectory where this library will be installed.
         set(resource_dir_sdk_subdir "${SWIFT_SDK_${sdk}_LIB_SUBDIR}")
-
-        if("${resource_dir_sdk_subdir}" STREQUAL "")
-          message(FATAL_ERROR "internal error: the variable should be non-empty")
-        endif()
+        precondition(resource_dir_sdk_subdir)

         if(SWIFTLIB_TARGET_LIBRARY)
           if(SWIFTLIB_SHARED)
@@ -1803,13 +1782,8 @@
       SWIFTEXE_SINGLE_EXCLUDE_FROM_ALL_FLAG)

   # Check arguments.
-  if (NOT SWIFTEXE_SINGLE_SDK)
-    message(FATAL_ERROR "Should specify an SDK")
-  endif()
-
-  if (NOT SWIFTEXE_SINGLE_ARCHITECTURE)
-    message(FATAL_ERROR "Should specify an architecture")
-  endif()
+  precondition(SWIFTEXE_SINGLE_SDK MESSAGE "Should specify an SDK")
+  precondition(SWIFTEXE_SINGLE_ARCHITECTURE MESSAGE "Should specify an architecture")

   # Determine compiler flags.
   set(c_compile_flags)


Added USE_NCCL_LIB_PATH option to enable user to set NCCL_LIBRARY during build  (#6310)

Description: To enable user to set NCCL_LIBRARY during build

--- cmake/modules/FindNccl.cmake
+++ cmake/modules/FindNccl.cmake
@@ -22,19 +22,24 @@
 #
 #  NCCL_ROOT - When set, this path is inspected instead of standard library
 #              locations as the root of the NCCL installation.
-#              The environment variable NCCL_ROOT overrides this veriable.
+#              The environment variable NCCL_ROOT overrides this variable.
 #
 # This module defines
 #  Nccl_FOUND, whether nccl has been found
 #  NCCL_INCLUDE_DIR, directory containing header
 #  NCCL_LIBRARY, directory containing nccl library
 #  NCCL_LIB_NAME, nccl library name
+#  USE_NCCL_LIB_PATH, when set, NCCL_LIBRARY path is also inspected for the
+#                     location of the nccl library. This would disable
+#                     switching between static and shared.
 #
 # This module assumes that the user has already called find_package(CUDA)

 if (NCCL_LIBRARY)
-  # Don't cache NCCL_LIBRARY to enable switching between static and shared.
-  unset(NCCL_LIBRARY CACHE)
+  if(NOT USE_NCCL_LIB_PATH)
+    # Don't cache NCCL_LIBRARY to enable switching between static and shared.
+    unset(NCCL_LIBRARY CACHE)
+  endif(NOT USE_NCCL_LIB_PATH)
 endif()

 if (BUILD_WITH_SHARED_NCCL)


NATIVE tablegen needs to depend on target tablegen

This dependency was removed in  r357486, which has lead to a stream of difficult to diagnose bugs.

Without this dependency, when building with `LLVM_OPTIMIZED_TABLEGEN=On` the native tablegen executible may not be rebuilt at all, and often won't get rebuilt before targets that use the tablegen headers. In the best case this results in a build-time failure, in the worst case it results in runtime failures.

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

--- cmake/modules/TableGen.cmake
+++ cmake/modules/TableGen.cmake
@@ -125,7 +125,7 @@

   if(LLVM_USE_HOST_TOOLS)
     if( ${${project}_TABLEGEN} STREQUAL "${target}" )
-      build_native_tool(${target} ${project}_TABLEGEN_EXE)
+      build_native_tool(${target} ${project}_TABLEGEN_EXE DEPENDS ${target})
       set(${project}_TABLEGEN_EXE ${${project}_TABLEGEN_EXE} PARENT_SCOPE)

       add_custom_target(${project}-tablegen-host DEPENDS ${${project}_TABLEGEN_EXE})


Fixed a build bug

Fixed a build bug

--- cmake/segwayrmp_serial.cmake
+++ cmake/segwayrmp_serial.cmake
@@ -5,7 +5,7 @@
   set(SEGWAYRMP_USE_SERIAL FALSE)
   if(serial_FOUND)
     set(SEGWAYRMP_USE_SERIAL TRUE)
-    include_directories(serial_INCLUDE_DIRS)
+    include_directories(${serial_INCLUDE_DIRS})
     list(APPEND SEGWAYRMP_LINK_LIBS ${serial_LIBRARIES})
   else()
     # Could not find serial either through find_package or ROS


Updated FindCorrade.cmake from Corrade repository.

--- modules/FindCorrade.cmake
+++ modules/FindCorrade.cmake
@@ -194,7 +194,7 @@
 set(CORRADE_TESTSUITE_LIBRARIES ${CORRADE_TESTSUITE_LIBRARY} ${CORRADE_UTILITY_LIBRARIES})

 # At least static build needs this
-if(UNIX OR CORRADE_TARGET_NACL_GLIBC)
+if((UNIX OR CORRADE_TARGET_NACL) AND NOT CORRADE_TARGET_NACL_NEWLIB)
     set(CORRADE_PLUGINMANAGER_LIBRARIES ${CORRADE_PLUGINMANAGER_LIBRARIES} ${CMAKE_DL_LIBS})
 endif()


[CMake] Export Qt dependencies.

[CMake] Export Qt dependencies.

--- cmake-module/qt.cmake
+++ cmake-module/qt.cmake
@@ -1,14 +1,14 @@
 MACRO(ADD_QT_DEPENDENCY)
   IF(PROJECT_USE_QT4)
     #FIND_PACKAGE(Qt4 REQUIRED QtXml)
-    FIND_PACKAGE(Qt4 REQUIRED QtCore QtGui QtOpenGL QtNetwork QtXml)
+    ADD_PROJECT_DEPENDENCY(Qt4 REQUIRED QtCore QtGui QtOpenGL QtNetwork QtXml)
     SET(PROJECT_QT_LIBS Qt4::QtCore Qt4::QtGui Qt4::QtOpenGL Qt4::QtNetwork Qt4::QtXml)
     SET(GEPETTO_VIEWER_QTVERSION "${QT_VERSION_MAJOR}.${QT_VERSION_MINOR}.${QT_VERSION_PATCH}")
     INCLUDE(${QT_USE_FILE})
     SET(PROJECT_QT_INCLUDE_DIRS ${QT_INCLUDE_DIRS})
   ELSE()
     FOREACH (component "Xml" "Core" "Widgets" "Gui" "OpenGL" "Network" "Concurrent")
-      FIND_PACKAGE ("Qt5${component}" REQUIRED)
+      ADD_PROJECT_DEPENDENCY ("Qt5${component}" REQUIRED)
       LIST(APPEND PROJECT_QT_INCLUDE_DIRS ${Qt5${component}_INCLUDE_DIRS})
       LIST(APPEND PROJECT_QT_LIBS Qt5::${component})
     ENDFOREACH ()


cmake stuff

cmake stuff

--- cmake/DuneUtils.cmake
+++ cmake/DuneUtils.cmake
@@ -90,6 +90,10 @@

 ADD_CXX_FLAGS( "-DHAVE_CMAKE_CONFIG" )

+INCLUDE (CheckIncludeFileCXX)
+CHECK_INCLUDE_FILE_CXX("tr1/array" HAVE_TR1_ARRAY)
+CHECK_INCLUDE_FILE_CXX("malloc.h" HAVE_MALLOC_H)
+
 SET( CUSTOM_FLAGS
 	-Wall -Wextra -pedantic -O3 -DDNDEBUG -funroll-loops -g -ggdb -DENABLE_ADAPTIVE=1 -DADAPTIVE_SOLVER -DUSE_BFG_CG_SCHEME -fno-strict-aliasing -std=c++0x CACHE LIST
 	"CUSTOM FLAGS")


Make Expat detection more verbose.

Make Expat detection more verbose.

svn path=/trunk/kdesupport/strigi/; revision=638915

--- cmake/FindExpat.cmake
+++ cmake/FindExpat.cmake
@@ -37,6 +37,7 @@

 IF(EXPAT_INCLUDE_DIR AND EXPAT_LIBRARY)
   SET(Expat_FOUND 1 CACHE BOOL "Found expat library")
+  MESSAGE(STATUS "Found Expat: ${EXPAT_LIBRARY}")
 ELSE(EXPAT_INCLUDE_DIR AND EXPAT_LIBRARY)
   SET(Expat_FOUND 0 CACHE BOOL "Not found expat library")
 ENDIF(EXPAT_INCLUDE_DIR AND EXPAT_LIBRARY)


Update FindNumPy.cmake

Update FindNumPy.cmake

Improve FindNumpy.cmake to work with new virtual environments.

--- cmake/FindNumPy.cmake
+++ cmake/FindNumPy.cmake
@@ -39,6 +39,9 @@
       list(APPEND _NUMPY_LIB_PATHS "${d}/numpy/core")
     endforeach()

+    get_filename_component(NUMPY_ROOT_PATH ${NUMPY_PATH} DIRECTORY)
+    list(APPEND _NUMPY_LIB_PATHS ${NUMPY_ROOT_PATH})
+
     find_library (NUMPY_NPYMATH_LIBRARY npymath
       HINTS ${_NUMPY_LIB_PATHS}
       PATH_SUFFIXES lib)


Check env-var UNITY_ROOT_DIR as well during build (#455)

Currently the build script would automatically find the latest version of Unity unless it is passed with `-unity_root=` parameter.

This change make sure that the build script also check environment variable UNITY_ROOT_DIR before searching for the latest version of Unity.

--- cmake/FindUnity.cmake
+++ cmake/FindUnity.cmake
@@ -20,18 +20,23 @@
   # Make our best attempt to find the latest unity installed on the system.
   # Note that Unity <=2018 include mono 2.x which causes compilation errors.
   # Minimum supported version of mono is 3.5.
-  if(CMAKE_HOST_WIN32)
-    set(editordir "C:/Program Files/Unity/Hub/Editor")
-  elseif(CMAKE_HOST_APPLE)
-    set(editordir "/Applications/Unity/Hub/Editor")
-  elseif(CMAKE_HOST_UNIX) # Linux
-    set(editordir "$ENV{HOME}/Unity/Hub/Editor")
-  endif()
-  file(GLOB unity_versions RELATIVE ${editordir} ${editordir}/*)
-  list(SORT unity_versions ORDER DESCENDING)
-  list(GET unity_versions 0 latest_unity_version)
-  set(UNITY_ROOT_DIR ${editordir}/${latest_unity_version})
-  message(STATUS "Auto detected latest Unity version: ${UNITY_ROOT_DIR}")
+  if (EXISTS "$ENV{UNITY_ROOT_DIR}")
+    set(UNITY_ROOT_DIR "$ENV{UNITY_ROOT_DIR}")
+    message(STATUS "Detected Unity version from env-var 'UNITY_ROOT_DIR': ${UNITY_ROOT_DIR}")
+  else()
+    if(CMAKE_HOST_WIN32)
+        set(editordir "C:/Program Files/Unity/Hub/Editor")
+    elseif(CMAKE_HOST_APPLE)
+        set(editordir "/Applications/Unity/Hub/Editor")
+    elseif(CMAKE_HOST_UNIX) # Linux
+        set(editordir "$ENV{HOME}/Unity/Hub/Editor")
+    endif()
+    file(GLOB unity_versions RELATIVE ${editordir} ${editordir}/*)
+    list(SORT unity_versions ORDER DESCENDING)
+    list(GET unity_versions 0 latest_unity_version)
+    set(UNITY_ROOT_DIR ${editordir}/${latest_unity_version})
+    message(STATUS "Auto detected latest Unity version: ${UNITY_ROOT_DIR}")
+  endif()
 endif()

 if(FIREBASE_INCLUDE_UNITY)
@@ -95,7 +100,7 @@

   message(STATUS "UNITY_MONO_EXE is ${UNITY_MONO_EXE}")
   message(STATUS "UNITY_CSHARP_BUILD_EXE is ${UNITY_CSHARP_BUILD_EXE}")
-
+
   if(NOT EXISTS UNITY_MONO_EXE OR
     NOT EXISTS UNITY_CSHARP_BUILD_EXE)
     set(FIND_TOOL_OPTIONS


Fixed a missing ChibiOS file causing link errors when using serial_usb module.

--- cmake/ChibiOS16_HAL.cmake
+++ cmake/ChibiOS16_HAL.cmake
@@ -19,6 +19,10 @@
   IF(${module} STREQUAL mmcsd)
     SET(CHIBIOS_${module}_SOURCES hal_mmcsd.c)
   ENDIF()
+
+  IF(${module} STREQUAL serial_usb)
+    SET(CHIBIOS_${module}_SOURCES ${CHIBIOS_${module}_SOURCES} hal_buffers.c)
+  ENDIF()
 ENDFOREACH()

 FOREACH(module ${CHIBIOS_HAL_LIB_MODULES})


Fix include path in the Doxygen output. (#316)

The Doxygen output was not including the full path of the headers.
The name of the option to enable this is counterintuitive:

https://stackoverflow.com/questions/2422755/how-can-i-force-doxygen-to-show-full-include-path

--- cmake/DoxygenCommon.cmake
+++ cmake/DoxygenCommon.cmake
@@ -40,3 +40,4 @@
 set(DOXYGEN_MACRO_EXPANSION YES)
 set(DOXYGEN_EXPAND_ONLY_PREDEF YES)
 set(DOXYGEN_HTML_TIMESTAMP )
+set(DOXYGEN_STRIP_FROM_INC_PATH "${PROJECT_SOURCE_DIR}")


Updated eigen to latest version due to compile error with latest visual studio 16.8.3

--- cmake/ExternalEigen.cmake
+++ cmake/ExternalEigen.cmake
@@ -5,7 +5,7 @@
 ExternalProject_Add(eigen
         PREFIX ${FAST_EXTERNAL_BUILD_DIR}/eigen
         BINARY_DIR ${FAST_EXTERNAL_BUILD_DIR}/eigen
-        URL "https://gitlab.com/libeigen/eigen/-/archive/master/b4890dc.tar.gz"
+        URL "https://gitlab.com/libeigen/eigen/-/archive/55967f87d1dc5cf2c33145ddcff73f349e406635/eigen-55967f87d1dc5cf2c33145ddcff73f349e406635.tar.gz"
         INSTALL_DIR ${FAST_EXTERNAL_INSTALL_DIR}
         CMAKE_CACHE_ARGS
             -DCMAKE_BUILD_TYPE:STRING=Release


updated link to xlink

updated link to xlink

--- cmake/Hunter/config.cmake
+++ cmake/Hunter/config.cmake
@@ -13,9 +13,9 @@

 hunter_config(
     XLink
-    VERSION "luxonis-2020.2test2"
+    VERSION "luxonis-2020.2test1"
     URL  "https://github.com/luxonis/XLink/archive/test_usb_info.zip"
-    SHA1 "a18464c81ac97352c2dddd1f2a025d8f91a6333f"
+    SHA1 "28b8b0e795659c4c8c7626394d968007026635bc"
     CMAKE_ARGS
         CMAKE_POSITION_INDEPENDENT_CODE=ON
 )


coverage: Cleaned up code-coverage.cmake and fixed some typos

--- cmake/code-coverage.cmake
+++ cmake/code-coverage.cmake
@@ -62,19 +62,15 @@
             --coverage
     )

-    get_property(
-        TARGET_BINARY_DIR
-        TARGET ${args_TARGET}
-        PROPERTY BINARY_DIR
-    )
+    get_target_property(TARGET_BINARY_DIR ${args_TARGET} BINARY_DIR)
+    get_target_property(TARGET_SOURCE_DIR ${args_TARGET} SOURCE_DIR)

     set(TARGET_COVERAGE ${args_TARGET}_coverage_analysis)
-    set(OUTPUT_DIR "${TARGET_BINARY_DIR}/${TARGET_COVERAGE}")
+    set(HTML_OUTPUT_DIR "${TARGET_BINARY_DIR}/${TARGET_COVERAGE}")
     set(GCOV_INFO_FILE "${args_TARGET}_coverage.info")
     set(GCOV_INFO_FILE_FILTERED "${args_TARGET}_coverage_filtered.info")

     # Root dir use to extract relevant coverage info (only include this targets sources' in report)
-    get_target_property(TARGET_SOURCE_DIR ${args_TARGET} SOURCE_DIR)

     add_custom_target( ${TARGET_COVERAGE}
         COMMAND ${CMAKE_COMMAND} -E make_directory ${TARGET_COVERAGE}
@@ -83,16 +79,14 @@
         # Run tests
         COMMAND "./$<TARGET_FILE_NAME:${args_TEST_RUNNER}>"
         # Create test coverage data
-        COMMAND ${LCOV} --directory . --capture --output-file "${GCOV_INFO_FILE}"
+        COMMAND ${LCOV} --directory . --capture --output-file ${GCOV_INFO_FILE}
         # Filter out relevant info
-        COMMAND ${LCOV} --directory . --extract "${GCOV_INFO_FILE}" "${TARGET_SOURCE_DIR}/*" --output-file "${GCOV_INFO_FILE_FILTERED}"
+        COMMAND ${LCOV} --directory . --extract ${GCOV_INFO_FILE} '${TARGET_SOURCE_DIR}/*' --output-file ${GCOV_INFO_FILE_FILTERED}
         # Generating report
-        COMMAND ${GENHTML} --output-directory "${OUTPUT_DIR}" "${GCOV_INFO_FILE}"
-        # Cleanup
-        COMMAND ${CMAKE_COMMAND} -E remove "${GCOV_INFO_FILE}"
+        COMMAND ${GENHTML} --output-directory "${HTML_OUTPUT_DIR}" ${GCOV_INFO_FILE_FILTERED}

         DEPENDS ${args_TEST_RUNNER}
-        WORKING_DIRECTORY ./ # Relative to the build tree directory corresponding to the current source directory
+        WORKING_DIRECTORY "${TARGET_BINARY_DIR}"
         COMMENT "Running code coverage analysis (gcov) and generating HTML report (genhtml)."
     )

@@ -101,7 +95,7 @@
     )

     install(
-        DIRECTORY "${OUTPUT_DIR}"
+        DIRECTORY "${HTML_OUTPUT_DIR}"
         DESTINATION ./reports
         OPTIONAL
     )


conan: macOS toolchain now uses new INCLUDE_PREFIX correctly

--- cmake/elf-toolchain.cmake
+++ cmake/elf-toolchain.cmake
@@ -19,7 +19,7 @@
 set(CMAKE_SYSTEM_PROCESSOR ${ARCH})

 # Bin directory
-set(INCLUDEOS_BIN $ENV{INCLUDEOS_PREFIX}/includeos/bin)
+set(INCLUDEOS_BIN $ENV{INCLUDEOS_PREFIX}/bin)

 # Set compiler to the one in includeos/bin (clang)
 set(CMAKE_C_COMPILER ${INCLUDEOS_BIN}/gcc)


add fatal error if using Embree v3.6.0

add fatal error if using Embree v3.6.0

--- cmake/ospray_macros.cmake
+++ cmake/ospray_macros.cmake
@@ -329,6 +329,10 @@
   endif()

   set(EMBREE_LIBRARIES ${EMBREE_LIBRARY})
+
+  if ("${EMBREE_VERSION}" STREQUAL "3.6.0")
+    message(FATAL_ERROR "Embree v3.6.0 is incompatible with OSPRay.")
+  endif()
 endmacro()

 macro(ospray_determine_embree_isa_support)