Add useful (but currently commented out) pkgconfig debugging messages.

svn path=/trunk/; revision=7208

--- cmake/modules/FindAGG.cmake
+++ cmake/modules/FindAGG.cmake
@@ -20,6 +20,10 @@
     INCLUDE(UsePkgConfig)

     PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags)
+    #message(STATUS "_AGGIncDir = ${_AGGIncDir}")
+    #message(STATUS "_AGGLinkDir = ${_AGGLinkDir}")
+    #message(STATUS "_AGGLinkFlags = ${_AGGLinkFlags}")
+    #message(STATUS "_AGGCflags = ${_AGGCflags}")

     set(AGG_DEFINITIONS ${_AGGCflags})
   endif(PKGCONFIG_EXECUTABLE)


Proper copy target for Linux x64 libpng.

--- indra/cmake/Copy3rdPartyLibs.cmake
+++ indra/cmake/Copy3rdPartyLibs.cmake
@@ -332,10 +332,22 @@
         libuuid.so.16.0.22
         libssl.so.1.0.0
         libfontconfig.so.1.4.4
-        libpng15.so.15
-        libpng15.so.15.13.0
+#        libpng15.so.15
+#        libpng15.so.15.13.0
         #libnotify.so # *TODO test/fix/get linux libnotify(growl)
        )
+
+    if( NOT ND_BUILD64BIT_ARCH )
+      set(release_files ${release_files}
+          libpng15.so.15
+          libpng15.so.15.13.0
+        )
+    else( NOT ND_BUILD64BIT_ARCH )
+      set(release_files ${release_files}
+          libpng15.so.15
+          libpng15.so.15.1.0
+        )
+    endif( NOT ND_BUILD64BIT_ARCH )

     if (USE_TCMALLOC)
       set(release_files ${release_files} "libtcmalloc_minimal.so")


PKG: add system framework and libgcc_s.dylib to system dlls

--- SuperBuild/CMake/PackageHelper.cmake
+++ SuperBuild/CMake/PackageHelper.cmake
@@ -42,12 +42,21 @@
   libGLU.so*
   )

+# libgcc_s.*dylib and other *.framework are dragged by QT
 set(APPLE_SYSTEM_DLLS
-  libSystem.*
-  libiconv.*
-  libc\\+\\+
+  libSystem.*dylib
+  libiconv.*dylib
+  libc\\+\\+.*dylib
   libstdc.*dylib
   libobjc.*dylib
+  ApplicationServices.framework
+  CoreFoundation.framework
+  CoreServices.framework
+  Security.framework
+  Carbon.framework
+  AppKit.framework
+  Foundation.framework
+  libgcc_s.*dylib
   )

 if(UNIX)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

--- Utilities/kwsys/kwsysDateStamp.cmake
+++ Utilities/kwsys/kwsysDateStamp.cmake
@@ -4,7 +4,7 @@
 SET(KWSYS_DATE_STAMP_YEAR  2009)

 # KWSys version date month component.  Format is MM.
-SET(KWSYS_DATE_STAMP_MONTH 01)
+SET(KWSYS_DATE_STAMP_MONTH 02)

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


emscripten: added SAFE_HEAP cmake option (FIPS_EMSCRIPTEN_USE_SAFE_HEAP)

--- cmake-toolchains/emscripten.toolchain.cmake
+++ cmake-toolchains/emscripten.toolchain.cmake
@@ -41,6 +41,7 @@
 option(FIPS_EMSCRIPTEN_USE_DFE "emscripten: enable Duplicate Function Elimination" OFF)
 option(FIPS_EMSCRIPTEN_USE_WASM "emscripten: enable WebAssembly (experimental)" OFF)
 option(FIPS_EMSCRIPTEN_USE_WASM_ASMJS "emscripten: enable WebAssembly with asm.js fallback (experimental)" OFF)
+option(FIPS_EMSCRIPTEN_USE_SAFE_HEAP "emscripten: enable SAFE_HEAP checks" OFF)
 set(FIPS_EMSCRIPTEN_TOTAL_MEMORY 134217728 CACHE STRING "emscripten: total heap size in bytes")
 set(FIPS_EMSCRIPTEN_LTO_LEVEL 1 CACHE STRING "emscripten: Link-time-optimization level (0..3)")
 set(FIPS_EMSCRIPTEN_OUTLINING_LIMIT 60000 CACHE STRING "emscripten: outlining limit")
@@ -61,6 +62,11 @@
 else()
     set(EMSCRIPTEN_TRACING 0)
     set(EMSCRIPTEN_TRACING_OPTION "")
+endif()
+if (FIPS_EMSCRIPTEN_USE_SAFE_HEAP)
+    set(EMSCRIPTEN_SAFE_HEAP 1)
+else()
+    set(EMSCRIPTEN_SAFE_HEAP 0)
 endif()

 set(EMSCRIPTEN_TOTAL_MEMORY_WORKER 16777216)
@@ -131,6 +137,7 @@
 message("EMSCRIPTEN_NO_FILESYSTEM: ${EMSCRIPTEN_NO_FILESYSTEM}")
 message("EMSCRIPTEN_DFE: ${EMSCRIPTEN_DFE}")
 message("EMSCRIPTEN_TRACING: ${EMSCRIPTEN_TRACING}")
+message("EMSCRIPTEN_SAFE_HEAP: ${EMSCRIPTEN_SAFE_HEAP}")

 set(CMAKE_SYSTEM_NAME Linux)
 set(CMAKE_SYSTEM_VERSION 1)
@@ -223,7 +230,7 @@
 set(CMAKE_C_FLAGS_PROFILING "${EMSCRIPTEN_OPT} -DNDEBUG --profiling")

 # linker flags
-set(CMAKE_EXE_LINKER_FLAGS "${EMSCRIPTEN_CONFIG_OPTION} ${EMSCRIPTEN_CACHE_OPTION} ${EMSCRIPTEN_TRACING_OPTION} --memory-init-file ${EMSCRIPTEN_MEMORY_INIT_FLAG} -s MEM_INIT_METHOD=${FIPS_EMSCRIPTEN_MEM_INIT_METHOD} -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s TOTAL_MEMORY=${FIPS_EMSCRIPTEN_TOTAL_MEMORY} -s EXPORTED_FUNCTIONS=\"${FIPS_EMSCRIPTEN_EXPORTED_FUNCTIONS}\" -s DISABLE_EXCEPTION_CATCHING=${EMSCRIPTEN_DISABLE_EXCEPTION_CATCHING} -s NO_FILESYSTEM=${EMSCRIPTEN_NO_FILESYSTEM} -s ELIMINATE_DUPLICATE_FUNCTIONS=${EMSCRIPTEN_DFE} -s ELIMINATE_DUPLICATE_FUNCTIONS_DUMP_EQUIVALENT_FUNCTIONS=${EMSCRIPTEN_DFE_DUMP} -s NO_EXIT_RUNTIME=1 ${EMSCRIPTEN_WASM_FLAGS}")
+set(CMAKE_EXE_LINKER_FLAGS "${EMSCRIPTEN_CONFIG_OPTION} ${EMSCRIPTEN_CACHE_OPTION} ${EMSCRIPTEN_TRACING_OPTION} --memory-init-file ${EMSCRIPTEN_MEMORY_INIT_FLAG} -s MEM_INIT_METHOD=${FIPS_EMSCRIPTEN_MEM_INIT_METHOD} -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s TOTAL_MEMORY=${FIPS_EMSCRIPTEN_TOTAL_MEMORY} -s EXPORTED_FUNCTIONS=\"${FIPS_EMSCRIPTEN_EXPORTED_FUNCTIONS}\" -s DISABLE_EXCEPTION_CATCHING=${EMSCRIPTEN_DISABLE_EXCEPTION_CATCHING} -s NO_FILESYSTEM=${EMSCRIPTEN_NO_FILESYSTEM} -s ELIMINATE_DUPLICATE_FUNCTIONS=${EMSCRIPTEN_DFE} -s ELIMINATE_DUPLICATE_FUNCTIONS_DUMP_EQUIVALENT_FUNCTIONS=${EMSCRIPTEN_DFE_DUMP} -s SAFE_HEAP=${EMSCRIPTEN_SAFE_HEAP} -s NO_EXIT_RUNTIME=1 ${EMSCRIPTEN_WASM_FLAGS}")
 set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${EMSCRIPTEN_OPT} --llvm-lto ${FIPS_EMSCRIPTEN_LTO_LEVEL} -s VERBOSE=${EMSCRIPTEN_BUILD_VERBOSE} -s ASSERTIONS=${EMSCRIPTEN_ASSERTIONS} -s OUTLINING_LIMIT=${FIPS_EMSCRIPTEN_OUTLINING_LIMIT} --closure ${EMSCRIPTEN_USE_CLOSURE}")
 set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${EMSCRIPTEN_OPT} -g -s VERBOSE=${EMSCRIPTEN_BUILD_VERBOSE}")
 set(CMAKE_EXE_LINKER_FLAGS_PROFILING "--profiling ${EMSCRIPTEN_OPT} --llvm-lto ${FIPS_EMSCRIPTEN_LTO_LEVEL} -s VERBOSE=${EMSCRIPTEN_BUILD_VERBOSE} -s ASSERTIONS=${EMSCRIPTEN_ASSERTIONS} -s OUTLINING_LIMIT=${FIPS_EMSCRIPTEN_OUTLINING_LIMIT}")
@@ -232,7 +239,7 @@
 set(CMAKE_STATIC_LINKER_FLAGS "${EMSCRIPTEN_CONFIG_OPTION}")

 # dynamic lib linker flags
-set(CMAKE_SHARED_LINKER_FLAGS "-shared ${EMSCRIPTEN_CONFIG_OPTIONS} ${EMSCRIPTEN_CACHE_OPTION} ${EMSCRIPTEN_TRACING_OPTION} --memory-init-file 0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s TOTAL_MEMORY=${FIPS_EMSCRIPTEN_TOTAL_MEMORY_WORKER} -s BUILD_AS_WORKER=1 -s EXPORTED_FUNCTIONS=\"${FIPS_EMSCRIPTEN_EXPORTED_FUNCTIONS}\" -s DISABLE_EXCEPTION_CATCHING=${EMSCRIPTEN_DISABLE_EXCEPTION_CATCHING} -s NO_FILESYSTEM=${EMSCRIPTEN_NO_FILESYSTEM} -s ELIMINATE_DUPLICATE_FUNCTIONS=${EMSCRIPTEN_DFE} -s ELIMINATE_DUPLICATE_FUNCTIONS_DUMP_EQUIVALENT_FUNCTIONS=${EMSCRIPTEN_DFE_DUMP} -s NO_EXIT_RUNTIME=1 ${EMSCRIPTEN_WASM_FLAGS}")
+set(CMAKE_SHARED_LINKER_FLAGS "-shared ${EMSCRIPTEN_CONFIG_OPTIONS} ${EMSCRIPTEN_CACHE_OPTION} ${EMSCRIPTEN_TRACING_OPTION} --memory-init-file 0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s TOTAL_MEMORY=${FIPS_EMSCRIPTEN_TOTAL_MEMORY_WORKER} -s BUILD_AS_WORKER=1 -s EXPORTED_FUNCTIONS=\"${FIPS_EMSCRIPTEN_EXPORTED_FUNCTIONS}\" -s DISABLE_EXCEPTION_CATCHING=${EMSCRIPTEN_DISABLE_EXCEPTION_CATCHING} -s NO_FILESYSTEM=${EMSCRIPTEN_NO_FILESYSTEM} -s ELIMINATE_DUPLICATE_FUNCTIONS=${EMSCRIPTEN_DFE} -s ELIMINATE_DUPLICATE_FUNCTIONS_DUMP_EQUIVALENT_FUNCTIONS=${EMSCRIPTEN_DFE_DUMP} -s SAFE_HEAP=${EMSCRIPTEN_SAFE_HEAP} -s NO_EXIT_RUNTIME=1 ${EMSCRIPTEN_WASM_FLAGS}")
 set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${EMSCRIPTEN_OPT} --llvm-lto ${FIPS_EMSCRIPTEN_LTO_LEVEL} -s VERBOSE=${EMSCRIPTEN_BUILD_VERBOSE} -s ASSERTIONS=${EMSCRIPTEN_ASSERTIONS} -s OUTLINING_LIMIT=${FIPS_EMSCRIPTEN_OUTLINING_LIMIT} --closure ${EMSCRIPTEN_USE_CLOSURE}")
 set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${EMSCRIPTEN_OPT} -g -s VERBOSE=${EMSCRIPTEN_BUILD_VERBOSE} --closure 0")
 set(CMAKE_SHARED_LINKER_FLAGS_PROFILING "--profiling ${EMSCRIPTEN_OPT} --llvm-lto ${FIPS_EMSCRIPTEN_LTO_LEVEL} -s VERBOSE=${EMSCRIPTEN_BUILD_VERBOSE} -s ASSERTIONS=${EMSCRIPTEN_ASSERTIONS} -s OUTLINING_LIMIT=${FIPS_EMSCRIPTEN_OUTLINING_LIMIT}")


fix: Output directory of compiled script modules [BASIS]

--- CMake/Basis/TargetTools.cmake
+++ CMake/Basis/TargetTools.cmake
@@ -2680,9 +2680,12 @@
   if (SUFFIX)
     set (OUTPUT_NAME "${OUTPUT_NAME}${SUFFIX}")
   endif ()
-  if ((MODULE AND COMPILE) OR CMAKE_GENERATOR MATCHES "Visual Studio|Xcode")
+  if (CMAKE_GENERATOR MATCHES "Visual Studio|Xcode")
     set (OUTPUT_FILE "${BUILD_DIR}/build/${OUTPUT_NAME}")
     set (OUTPUT_DIR  "${OUTPUT_DIRECTORY}/$<CONFIGURATION>")
+  elseif (MODULE AND COMPILE)
+    set (OUTPUT_FILE "${BUILD_DIR}/build/${OUTPUT_NAME}")
+    set (OUTPUT_DIR  "${OUTPUT_DIRECTORY}")
   else ()
     set (OUTPUT_FILE "${OUTPUT_DIRECTORY}/${OUTPUT_NAME}")
     unset (OUTPUT_DIR)


BUG: _Python3_EXECUTABLE -> _specified_Python3_EXECUTABLE

Incomplete refactoring seems to have been performed to
change the variable name.

--- CMake/ITKSetPython3Vars.cmake
+++ CMake/ITKSetPython3Vars.cmake
@@ -21,7 +21,7 @@
 else() # if not PYTHON_DEVELOPMENT_REQUIRED, just find some version of Python (don't need to be as specific)
   find_package(Python3 COMPONENTS Interpreter)
 endif()
-if(NOT Python3_EXECUTABLE AND _Python3_EXECUTABLE) # workaround for cases where FindPython3 fails to set correctly
-  set(Python3_EXECUTABLE ${_Python3_EXECUTABLE} CACHE INTERNAL
+if(NOT Python3_EXECUTABLE AND _specified_Python3_EXECUTABLE) # workaround for cases where FindPython3 fails to set correctly
+  set(Python3_EXECUTABLE ${_specified_Python3_EXECUTABLE} CACHE INTERNAL
     "Path to the Python interpreter" FORCE)
 endif()


Attempt fix for Travis cmake

Attempt fix for Travis cmake

--- CMakeModules/FindNodeJS.cmake
+++ CMakeModules/FindNodeJS.cmake
@@ -67,5 +67,6 @@

 include(FindPackageHandleStandardArgs)
 find_package_handle_standard_args(NodeJS
+  FOUND_VAR NodeJS_FOUND
   REQUIRED_VARS NODE_EXECUTABLE NPM_EXECUTABLE
   VERSION_VAR NODE_VERSION)


Updated FindRaptor to use the new dependency directory naming scheme.

--- CMakeModules/FindRAPTOR.cmake
+++ CMakeModules/FindRAPTOR.cmake
@@ -38,6 +38,8 @@

 ENDMACRO ()

+string(TOUPPER ${PROJECT_NAME} _UPPER_PROJECT_NAME)
+set(_PROJECT_DEPENDENCY_DIR ${_UPPER_PROJECT_NAME}_DEPENDENCY_DIR)

 # Check if we have cached results in case the last round was successful.
@@ -48,7 +50,7 @@
     find_path(RAPTOR_INCLUDE_DIR raptor.h
 	    PATHS $ENV{RAPTOR_DIR}/include
 	          $ENV{RAPTOR_DIR}
-              ${COPASI_DEPENDENCY_DIR}/include
+              ${${_PROJECT_DEPENDENCY_DIR}}/include
 	          ~/Library/Frameworks
 	          /Library/Frameworks
 	          /sw/include        # Fink
@@ -67,7 +69,7 @@
 	    PATHS $ENV{RAPTOR_DIR}/${CMAKE_INSTALL_LIBDIR}
 	          $ENV{RAPTOR_DIR}/lib-dbg
 	          $ENV{RAPTOR_DIR}
-              ${COPASI_DEPENDENCY_DIR}/${CMAKE_INSTALL_LIBDIR}
+              ${${_PROJECT_DEPENDENCY_DIR}}/${CMAKE_INSTALL_LIBDIR}
 	          ~/Library/Frameworks
 	          /Library/Frameworks
 	          /sw/lib        # Fink


Split off 8.4.26

Split off 8.4.26

Signed-off-by: Richard Chapman <5900d56196fe29dba8e3ae556d57eae28e9f0195@hpccsystems.com>

--- version.cmake
+++ version.cmake
@@ -5,7 +5,7 @@
 set ( HPCC_PROJECT "nagios-monitoring" )
 set ( HPCC_MAJOR 8 )
 set ( HPCC_MINOR 4 )
-set ( HPCC_POINT 25 )
+set ( HPCC_POINT 27 )
 set ( HPCC_MATURITY "closedown" )
 set ( HPCC_SEQUENCE 0 )
 ###


Split off 7.10.66

Split off 7.10.66

Signed-off-by: Gavin Halliday <2edfa8aca9fb78974188e5b35be8b52d4e4967ae@lexisnexis.com>

--- version.cmake
+++ version.cmake
@@ -5,7 +5,7 @@
 set ( HPCC_PROJECT "nagios-monitoring" )
 set ( HPCC_MAJOR 7 )
 set ( HPCC_MINOR 10 )
-set ( HPCC_POINT 65 )
+set ( HPCC_POINT 67 )
 set ( HPCC_MATURITY "closedown" )
 set ( HPCC_SEQUENCE 0 )
 ###


Bump autowiring to version 0.2.6

Bump autowiring to version 0.2.6

--- version.cmake
+++ version.cmake
@@ -1 +1 @@
-set(autowiring_VERSION 0.2.5)
+set(autowiring_VERSION 0.2.6)


Bumped version number

Bumped version number

--- version.cmake
+++ version.cmake
@@ -1 +1 @@
-set(autowiring_VERSION 0.2.8)
+set(autowiring_VERSION 0.2.9)


Bump version number to match tomviz

Bump version number to match tomviz

--- projects/tomviz.bundle.common.cmake
+++ projects/tomviz.bundle.common.cmake
@@ -2,7 +2,7 @@
 # configure stage.
 set (tomviz_version_major 0)
 set (tomviz_version_minor 4)
-set (tomviz_version_patch 0)
+set (tomviz_version_patch 1)
 set (tomviz_version_suffix)
 set (tomviz_version "${tomviz_version_major}.${tomviz_version_minor}.${tomviz_version_patch}")


as noted by psiha, this should be in linux toolchain, not here

--- toolchains/gcc_compatibles.cmake
+++ toolchains/gcc_compatibles.cmake
@@ -24,9 +24,6 @@
 set( TNUN_compiler_optimize_for_size   -Os                                   )
 set( TNUN_compiler_report_optimization -ftree-vectorizer-verbose=6           )
 set( TNUN_compiler_release_flags       -DNDEBUG -fomit-frame-pointer -ffunction-sections -fmerge-all-constants -fno-stack-protector )
-if( ${CMAKE_SYSTEM_NAME} MATCHES "Linux" )
-    set( TNUN_linker_release_flags         -Wl,--gc-sections                     )
-endif()
 set( TNUN_default_warnings             -Wall -Wextra -Wstrict-aliasing       )
 set( TNUN_warnings_as_errors           -Werror                               )
 set( TNUN_disabled_warnings            -Wno-unknown-pragmas -Wno-unused-parameter -Wno-ignored-qualifiers -Wno-sign-conversion -Wno-clobbered -Wno-format-zero-length -Wno-error=deprecated-declarations     )


removed compiler flag not understood by OS X version of gcc

--- indra/cmake/00-Common.cmake
+++ indra/cmake/00-Common.cmake
@@ -216,7 +216,7 @@

 if (LINUX OR DARWIN)
-  set(GCC_WARNINGS "-Wall -Wno-unused-but-set-variable -Wno-sign-compare -Wno-trigraphs")
+  set(GCC_WARNINGS "-Wall -Wno-sign-compare -Wno-trigraphs")

   if (NOT GCC_DISABLE_FATAL_WARNINGS)
     set(GCC_WARNINGS "${GCC_WARNINGS} -Werror")


modifed hunter config

modifed hunter config

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

 hunter_config(
     XLink
-    VERSION "luxonis-2020.2-test-4"
-    URL "/Users/blackbird/Desktop/codes/Luxonis/new_build_system/XLink.zip"
-    SHA1 "ad1bbaccfa548860274a040f5d17b6c8533ae5fa"
+    VERSION "luxonis-2020.2-test_usb_info"
+    URL "https://github.com/luxonis/XLink/archive/test_usb_info.zip"
+    SHA1 "1ce5d55a3b0a0b9df85837afe5024986c857c57c"
     CMAKE_ARGS
         CMAKE_POSITION_INDEPENDENT_CODE=ON
 )


code analysis: Fixed some minor issues with code-analysis.cmake (probably caused by newer versions of cmake?). Argument related issues.

--- cmake/code-analysis.cmake
+++ cmake/code-analysis.cmake
@@ -71,21 +71,21 @@
     # -- CLEANUP INCLUDES

     set(TARGET_ANALYSIS ${TARGET}_static_analysis)
-    set(OUTPUT_FILE ${TARGET_BINARY_DIR}/${TARGET_ANALYSIS}.xml)
-    set(OUTPUT_FILE_JUNIT ${TARGET_BINARY_DIR}/${TARGET_ANALYSIS}-junit.xml)
+    set(OUTPUT_FILE "${TARGET_BINARY_DIR}/${TARGET_ANALYSIS}.xml")
+    set(OUTPUT_FILE_JUNIT "${TARGET_BINARY_DIR}/${TARGET_ANALYSIS}-junit.xml")
     set(OUTPUT_DIR_HTML "${CMAKE_CURRENT_BINARY_DIR}/${TARGET_ANALYSIS}_html")

     add_custom_target( ${TARGET_ANALYSIS}
         # Run cppcheck
-        COMMAND ${CPPCHECK} --xml-version=2 --enable=all --suppress=missingIncludeSystem --force -I${TARGET_INCLUDES} "${TARGET_SOURCES}" 2> "${OUTPUT_FILE}"
+        COMMAND ${CPPCHECK} --xml-version=2 --enable=all --suppress=missingIncludeSystem --force -I${TARGET_INCLUDES} ${TARGET_SOURCES} 2> "${OUTPUT_FILE}"
         # Below should (optionally? or always do both?) convert cppcheck format -> junit format.
         COMMAND ${CPPCHECK_JUNIT} "${OUTPUT_FILE}" "${OUTPUT_FILE_JUNIT}"
         COMMAND ${CPPCHECK_HTML} --report-dir=${OUTPUT_DIR_HTML};--title=${TARGET};--source-dir=${SOURCE_DIR};--file=${OUTPUT_FILE}

         DEPENDS ${TARGET}
-        WORKING_DIRECTORY ${TARGET_SOURCE_DIR}
+        WORKING_DIRECTORY "${TARGET_SOURCE_DIR}"
         VERBATIM
-        COMMENT "Running static analysis (cppcheck) on target '${TARGET}' and generating report."
+        COMMENT "Running static analysis (cppcheck) on target '${TARGET}' and generating report (cppcheck_junit, cppcheck-htmlreport)."
     )

     add_dependencies( ${ANALYSIS_ALL}


fix bug when compile CPU inference library (#24800)

--- cmake/inference_lib.cmake
+++ cmake/inference_lib.cmake
@@ -234,7 +234,11 @@
         )

 set(module "platform")
-set(platform_lib_deps profiler_proto error_codes_proto cuda_error_proto)
+set(platform_lib_deps profiler_proto error_codes_proto)
+if(WITH_GPU)
+  set(platform_lib_deps ${platform_lib_deps} cuda_error_proto)
+endif(WITH_GPU)
+
 add_dependencies(fluid_lib_dist ${platform_lib_deps})
 copy(fluid_lib_dist
         SRCS ${src_dir}/${module}/*.h ${src_dir}/${module}/dynload/*.h ${src_dir}/${module}/details/*.h ${PADDLE_BINARY_DIR}/paddle/fluid/platform/*.pb.h


MSBuild is used for Visual Studio 2013

MSBuild is used for Visual Studio 2013

--- common.cmake
+++ common.cmake
@@ -8,7 +8,7 @@
 option(TOOLS "Enable building of tools" ON)
 option(TOOLS_DEV "Enable building of tools-dev" ON)

-if(CMAKE_BUILD_TOOL MATCHES "(msdev|devenv|nmake)")
+if(CMAKE_BUILD_TOOL MATCHES "(msdev|devenv|nmake|MSBuild)")
     add_definitions("/W2")
 else()
     add_definitions("-Wall -Wextra")


Add travis clang build fix.

Add travis clang build fix.

--- Superbuild/BoostExternal.cmake
+++ Superbuild/BoostExternal.cmake
@@ -53,6 +53,7 @@
   "serialization"
   "system"
   "thread"
+  "wserialization"
   CACHE INTERNAL "Boost library name.")

 IF(BUILD_WITH_PYTHON)
@@ -60,6 +61,11 @@
   LIST(APPEND boost_Libraries python)
   LIST(APPEND boost_DEPENDENCIES Python_external)
   LIST(APPEND boost_CXX_Flag "-DBOOST_PYTHON_STATIC_MODULE" "-DBOOST_PYTHON_STATIC_LIB")
+ENDIF()
+
+# for travis clang builds--need a narrower test
+IF(UNIX)
+  ADD_DEFINITIONS(-DBOOST_NO_CXX11_ALLOCATOR)
 ENDIF()

 # TODO: set up 64-bit build detection


remove redundant initialization

remove redundant initialization

--- CMake/cotire.cmake
+++ CMake/cotire.cmake
@@ -1157,7 +1157,6 @@
 	if (NOT _option_COMPILER_VERSION)
 		set (_option_COMPILER_VERSION "${CMAKE_${_option_LANGUAGE}_COMPILER_VERSION}")
 	endif()
-	set (_cmd "${_option_COMPILER_EXECUTABLE}" ${_option_COMPILER_ARG1})
 	cotire_init_compile_cmd(_cmd "${_option_LANGUAGE}" "${_option_COMPILER_EXECUTABLE}" "${_option_COMPILER_ARG1}")
 	cotire_add_definitions_to_cmd(_cmd "${_option_LANGUAGE}" ${_option_COMPILE_DEFINITIONS})
 	cotire_add_compile_flags_to_cmd(_cmd ${_option_COMPILE_FLAGS})


update coverage module

update coverage module

--- CodeCoverage.cmake
+++ CodeCoverage.cmake
@@ -152,6 +152,8 @@
   )

   ADD_CUSTOM_TARGET(${_targetname}_info
+	DEPENDS ${_targetname}_generate_clean
+
     # Capturing lcov counters and generating report
     COMMAND ${LCOV_PATH} --gcov-tool ${GCOV_PATH} --directory . --capture --output-file ${_outputname}.info
     COMMAND ${LCOV_PATH} --gcov-tool ${GCOV_PATH} --remove ${_outputname}.info 'tests/*' '/usr/*' --output-file ${_outputname}.info.cleaned
@@ -160,7 +162,7 @@

 	if (COVERALLS_PATH)
 		ADD_CUSTOM_TARGET(${_targetname}_coveralls
-			DEPENDS ${_targetname}_generate_clean ${_targetname}_info
+			DEPENDS ${_targetname}_info
 			COMMAND ${COVERALLS_PATH} ${_outputname}.info
 			WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
 			COMMENT "Resetting code coverage counters to zero.\nProcessing code coverage counters and uploading report."
@@ -170,7 +172,7 @@
 	# Setup target
 	ADD_CUSTOM_TARGET(${_targetname}

-		DEPENDS ${_targetname}_generate_clean ${_targetname}_info
+		DEPENDS ${_targetname}_info

 		COMMAND ${CMAKE_COMMAND} -E remove_directory ${_outputname}
 		COMMAND ${GENHTML_PATH} -o ${_outputname} ${_outputname}.info


Disabling checkpoints in coverage.

Disabling checkpoints in coverage.

git-svn-id: a7f2a8f7432d210e972fb03898013d213e2b549b@9473 e6417c60-b987-48fd-844e-b20f0fcc1017

--- seqan/util/cmake/FindSeqAn.cmake
+++ seqan/util/cmake/FindSeqAn.cmake
@@ -227,12 +227,14 @@
         if (CMAKE_COMPILER_IS_GNUCXX OR COMPILER_IS_CLANG)
             set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage")
             set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
+            add_definitions(-DSEQAN_ENABLE_CHECKPOINTS=0)
         endif (CMAKE_COMPILER_IS_GNUCXX OR COMPILER_IS_CLANG)
     endif (MODEL STREQUAL "NightlyCoverage")
     if (MODEL STREQUAL "ExperimentalCoverage")
         if (CMAKE_COMPILER_IS_GNUCXX OR COMPILER_IS_CLANG)
             set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage")
             set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
+            add_definitions(-DSEQAN_ENABLE_CHECKPOINTS=0)
         endif (CMAKE_COMPILER_IS_GNUCXX OR COMPILER_IS_CLANG)
     endif (MODEL STREQUAL "ExperimentalCoverage")
 endmacro (seqan_setup_tests)


add version check and remove debug output

--- cmake/ConanInline.cmake
+++ cmake/ConanInline.cmake
@@ -15,7 +15,9 @@
   execute_process(COMMAND ${conan} --version
                   OUTPUT_VARIABLE CONAN_VERSION_OUTPUT)
   string(REGEX MATCHALL "[0-9.]+" CONAN_VERSION ${CONAN_VERSION_OUTPUT})
-  #message(STATUS "Conan version is ${CONAN_VERSION}")
+  if (CONAN_VERSION NOT VERSION_GREATER_EQUAL 1.36)
+  	message(FATAL_ERROR "Please upgrade your conan to a version greater or equal 1.36")
+  endif()

   if(NOT EXISTS ${CONAN_CMAKE_LIST_DIR}/conan.cmake)
     message("Downloading conan.cmake to ${CONAN_CMAKE_LIST_DIR}")
@@ -37,7 +39,6 @@
 	if(CMAKE_CXX_STANDARD)
 		set(settings ${settings} compiler.cppstd=${CMAKE_CXX_STANDARD})
 	endif()
-	message("Conan settings are ${settings}")
 	conan_cmake_install(PATH_OR_REFERENCE .
 	                    BUILD missing
 	                    REMOTE conan-center


Copy the fixed FindJsonCpp from RenderManager.

--- cmake/FindJsonCpp.cmake
+++ cmake/FindJsonCpp.cmake
@@ -54,11 +54,14 @@
 endmacro()

 include(FindPackageHandleStandardArgs)
+# Ensure that if this is TRUE later, it's because we set it.
+set(JSONCPP_FOUND FALSE)
+
+# See if we find a CMake config file.
+find_package(jsoncpp QUIET NO_MODULE)

 # We will always try first to get a config file.
 if(NOT JSONCPP_IMPORTED_LIBRARY)
-	# See if we find a CMake config file.
-	find_package(jsoncpp QUIET NO_MODULE)
 	if(jsoncpp_FOUND)
 		# OK, so we found something.
 		unset(JSONCPP_IMPORTED_LIBRARY_IS_SHARED)
@@ -79,9 +82,9 @@
 		elseif(TARGET jsoncpp_lib_static)
 			# Well, only one variant, but we know for sure that it's static.
 			set(JSONCPP_IMPORTED_LIBRARY_STATIC jsoncpp_lib_static CACHE INTERNAL "" FORCE)
-			set(JSONCPP_IMPORTED_LIBRARY ${JSONCPP_IMPORTED_LIBRARY_STATIC} CACHE INTERNAL "" FORCE)
+			set(JSONCPP_IMPORTED_LIBRARY jsoncpp_lib_static CACHE INTERNAL "" FORCE)
 			set(JSONCPP_IMPORTED_LIBRARY_IS_SHARED FALSE CACHE INTERNAL "" FORCE)
-		else() #elseif(TARGET jsoncpp_lib)
+		elseif(TARGET __jsoncpp_have_jsoncpplib)
 			# One variant, and we have no idea if this is just an old version or if
 			# this is shared based on the target name alone. Hmm.
 			# TODO figure out if this is shared or static?
@@ -102,29 +105,6 @@
 				set(JSONCPP_IMPORTED_INCLUDE_DIRS "${__jsoncpp_interface_include_dirs}" CACHE INTERNAL "" FORCE)
 			endif()
 		endif()
-		if(NOT JSONCPP_IMPORTED_INCLUDE_DIRS)
-			# OK, so we couldn't get it from the target... maybe we can figure it out from jsoncpp_DIR.
-
-			# take off the jsoncpp component
-			get_filename_component(__jsoncpp_import_root "${jsoncpp_DIR}/.." ABSOLUTE)
-			set(__jsoncpp_hints "${__jsoncpp_import_root}")
-			# take off the cmake component
-			get_filename_component(__jsoncpp_import_root "${__jsoncpp_import_root}/.." ABSOLUTE)
-			list(APPEND __jsoncpp_hints "${__jsoncpp_import_root}")
-			# take off the lib component
-			get_filename_component(__jsoncpp_import_root "${__jsoncpp_import_root}/.." ABSOLUTE)
-			list(APPEND __jsoncpp_hints "${__jsoncpp_import_root}")
-			# take off one more component in case of multiarch lib
-			get_filename_component(__jsoncpp_import_root "${__jsoncpp_import_root}/.." ABSOLUTE)
-			list(APPEND __jsoncpp_hints "${__jsoncpp_import_root}")
-
-			# Now, search.
-			find_path(JsonCpp_INCLUDE_DIR
-				NAMES
-				json/json.h
-				PATH_SUFFIXES include jsoncpp include/jsoncpp
-				HINTS ${__jsoncpp_hints})
-		endif()

 		# As a convenience...
 		if(TARGET jsoncpp_lib_static AND NOT TARGET jsoncpp_lib)
@@ -136,6 +116,27 @@

 if(JSONCPP_IMPORTED_LIBRARY)
 	if(NOT JSONCPP_IMPORTED_INCLUDE_DIRS)
+		# OK, so we couldn't get it from the target... maybe we can figure it out from jsoncpp_DIR.
+
+		# take off the jsoncpp component
+		get_filename_component(__jsoncpp_import_root "${jsoncpp_DIR}/.." ABSOLUTE)
+		set(__jsoncpp_hints "${__jsoncpp_import_root}")
+		# take off the cmake component
+		get_filename_component(__jsoncpp_import_root "${__jsoncpp_import_root}/.." ABSOLUTE)
+		list(APPEND __jsoncpp_hints "${__jsoncpp_import_root}")
+		# take off the lib component
+		get_filename_component(__jsoncpp_import_root "${__jsoncpp_import_root}/.." ABSOLUTE)
+		list(APPEND __jsoncpp_hints "${__jsoncpp_import_root}")
+		# take off one more component in case of multiarch lib
+		get_filename_component(__jsoncpp_import_root "${__jsoncpp_import_root}/.." ABSOLUTE)
+		list(APPEND __jsoncpp_hints "${__jsoncpp_import_root}")
+
+		# Now, search.
+		find_path(JsonCpp_INCLUDE_DIR
+			NAMES
+			json/json.h
+			PATH_SUFFIXES include jsoncpp include/jsoncpp
+			HINTS ${__jsoncpp_hints})
 		if(JsonCpp_INCLUDE_DIR)
 			mark_as_advanced(JsonCpp_INCLUDE_DIR)
 			# Note - this does not set it in the cache, in case we find it better at some point in the future!
@@ -149,26 +150,31 @@
 		JSONCPP_IMPORTED_INCLUDE_DIRS)
 endif()

-# Create any missing namespaced targets from the config module.
-if(__jsoncpp_have_namespaced_targets)
-	if(JSONCPP_IMPORTED_LIBRARY AND NOT TARGET JsonCpp::JsonCpp)
-		add_library(JsonCpp::JsonCpp INTERFACE IMPORTED)
-		set_property(TARGET JsonCpp::JsonCpp PROPERTY INTERFACE_LINK_LIBRARIES ${JSONCPP_IMPORTED_LIBRARY})
-	endif()
-
-	if(JSONCPP_IMPORTED_LIBRARY_SHARED AND NOT TARGET JsonCpp::JsonCppShared)
-		add_library(JsonCpp::JsonCppShared INTERFACE IMPORTED)
-		set_property(TARGET JsonCpp::JsonCppShared PROPERTY INTERFACE_LINK_LIBRARIES ${JSONCPP_IMPORTED_LIBRARY_SHARED})
-	endif()
-
-	if(JSONCPP_IMPORTED_LIBRARY_STATIC AND NOT TARGET JsonCpp::JsonCppStatic)
-		add_library(JsonCpp::JsonCppStatic INTERFACE IMPORTED)
-		set_property(TARGET JsonCpp::JsonCppStatic PROPERTY INTERFACE_LINK_LIBRARIES ${JSONCPP_IMPORTED_LIBRARY_STATIC})
-	endif()
-endif()
-
-# Set any non-cache variables from cache variables set by a config module parsed above.
-if(JSONCPP_FOUND AND JSONCPP_IMPORTED_LIBRARY)
+if(JSONCPP_FOUND)
+	# Create any missing namespaced targets from the config module.
+	if(__jsoncpp_have_namespaced_targets)
+		if(JSONCPP_IMPORTED_LIBRARY AND NOT TARGET JsonCpp::JsonCpp)
+			add_library(JsonCpp::JsonCpp INTERFACE IMPORTED)
+			set_target_properties(JsonCpp::JsonCpp PROPERTIES
+				INTERFACE_INCLUDE_DIRECTORIES "${JSONCPP_IMPORTED_INCLUDE_DIRS}"
+				INTERFACE_LINK_LIBRARIES "${JSONCPP_IMPORTED_LIBRARY}")
+		endif()
+
+		if(JSONCPP_IMPORTED_LIBRARY_SHARED AND NOT TARGET JsonCpp::JsonCppShared)
+			add_library(JsonCpp::JsonCppShared INTERFACE IMPORTED)
+			set_target_properties(JsonCpp::JsonCppShared PROPERTIES
+				INTERFACE_INCLUDE_DIRECTORIES "${JSONCPP_IMPORTED_INCLUDE_DIRS}"
+				INTERFACE_LINK_LIBRARIES "${JSONCPP_IMPORTED_LIBRARY_SHARED}")
+		endif()
+
+		if(JSONCPP_IMPORTED_LIBRARY_STATIC AND NOT TARGET JsonCpp::JsonCppStatic)
+			add_library(JsonCpp::JsonCppStatic INTERFACE IMPORTED)
+			set_target_properties(JsonCpp::JsonCppStatic PROPERTIES
+				INTERFACE_INCLUDE_DIRECTORIES "${JSONCPP_IMPORTED_INCLUDE_DIRS}"
+				INTERFACE_LINK_LIBRARIES "${JSONCPP_IMPORTED_LIBRARY_STATIC}")
+		endif()
+	endif()
+
 	set(JSONCPP_LIBRARY ${JSONCPP_IMPORTED_LIBRARY})
 	set(JSONCPP_INCLUDE_DIRS ${JSONCPP_IMPORTED_INCLUDE_DIRS})
 	if(DEFINED JSONCPP_IMPORTED_LIBRARY_IS_SHARED)
@@ -176,19 +182,18 @@
 	else()
 		unset(JSONCPP_LIBRARY_IS_SHARED)
 	endif()
-endif()
-
-if(JSONCPP_IMPORTED_LIBRARY_SHARED)
-	set(JSONCPP_LIBRARY_SHARED ${JSONCPP_IMPORTED_LIBRARY_SHARED})
-endif()
-
-if(JSONCPP_IMPORTED_LIBRARY_STATIC)
-	set(JSONCPP_LIBRARY_STATIC ${JSONCPP_IMPORTED_LIBRARY_STATIC})
-endif()
-
+
+	if(JSONCPP_IMPORTED_LIBRARY_SHARED)
+		set(JSONCPP_LIBRARY_SHARED ${JSONCPP_IMPORTED_LIBRARY_SHARED})
+	endif()
+
+	if(JSONCPP_IMPORTED_LIBRARY_STATIC)
+		set(JSONCPP_LIBRARY_STATIC ${JSONCPP_IMPORTED_LIBRARY_STATIC})
+	endif()
+endif()

 # Still nothing after looking for the config file: must go "old-school"
-if(NOT JSONCPP_FOUND OR NOT JSONCPP_IMPORTED_LIBRARY)
+if(NOT JSONCPP_FOUND)
 	# Invoke pkgconfig for hints
 	find_package(PkgConfig QUIET)
 	set(_JSONCPP_INCLUDE_HINTS)
@@ -269,13 +274,13 @@
 		PATHS libs
 		PATH_SUFFIXES ${_JSONCPP_PATHSUFFIXES}
 		HINTS ${_JSONCPP_LIB_HINTS})
-	include(FindPackageHandleStandardArgs)
+
 	find_package_handle_standard_args(JsonCpp
 		DEFAULT_MSG
 		JsonCpp_INCLUDE_DIR
 		JsonCpp_LIBRARY)
+
 	if(JSONCPP_FOUND)
-
 		# We already know that the target doesn't exist, let's make it.
 		# TODO don't know why we get errors like:
 		# error: 'JsonCpp::JsonCpp-NOTFOUND', needed by 'bin/osvr_json_to_c', missing and no known rule to make it


VFS-8828 Updated boost python cmake script

--- cmake/FindPython3.cmake
+++ cmake/FindPython3.cmake
@@ -46,7 +46,8 @@
                                         libboost_python3.so.1.67.0
                                         libboost_python35.so.1.67.0
                                         libboost_python36.so.1.67.0
-                                        libboost_python37.so.1.67.0)
+                                        libboost_python37.so.1.67.0
+                                        libboost_python39.so.1.77.0)

     execute_process(COMMAND bash -c "cat /etc/os-release | grep ID_LIKE" OUTPUT_VARIABLE OS_ID_LIKE)
     if($ENV{CONDA_BUILD})


cmake: don't undefine passed options

cmake: don't undefine passed options

--- cmake/OpenCVUtils.cmake
+++ cmake/OpenCVUtils.cmake
@@ -603,10 +603,12 @@
       option(${variable} "${description}" ${__value})
     endif()
   else()
-    if(DEFINED ${variable})
-      # TODO: message(WARNING "Option will be ignored: ${variable} (=${${variable}})")
-    endif()
-    unset(${variable} CACHE)
+    if(DEFINED ${variable} AND NOT OPENCV_HIDE_WARNING_UNSUPPORTED_OPTION)
+      message(WARNING "Unexpected option: ${variable} (=${${variable}})\nCondition: IF (${__condition})")
+    endif()
+    if(OPENCV_UNSET_UNSUPPORTED_OPTION)
+      unset(${variable} CACHE)
+    endif()
   endif()
   unset(__condition)
   unset(__value)


insert md5 hash for tinyxml

insert md5 hash for tinyxml

--- cmake/get-tinyxml.cmake
+++ cmake/get-tinyxml.cmake
@@ -23,6 +23,6 @@
   DOWNLOAD_DIR    ${DEPENDENCY_DOWNLOAD_DIR}
   DOWNLOAD_NAME   tinyxml-v${ZLIB_VERSION}.zip
   URL             https://sourceforge.net/projects/tinyxml/files/tinyxml/2.6.2/tinyxml_2_6_2.zip/download
-  URL_MD5         1
+  URL_MD5         2a0aaf609c9e670ec9748cd01ed52dae
   CMAKE_ARGS      ${TINYXML_CMAKE_ARGS}
 )


CMake: fix for encoding strings, closes inviwo/inviwo-dev#2085

* double quotes are now also encoded

--- cmake/globalutils.cmake
+++ cmake/globalutils.cmake
@@ -75,13 +75,15 @@
 # encodeLineBreaks(output strings)
 # encodes the contents of the string given as last argument and saves the
 # result in output.
-# Linebreaks ('\n') and semicolon (';') are replaced for better handling
+# Linebreaks ('\n'), semicolon (';'), and quotes ('"') are replaced for better handling
 # within CMAKE with __LINEBREAK__ and __SEMICOLON__, respectively.
 function(encodeLineBreaks output)
     # replace linebreaks
     string(REPLACE "\n" "__LINEBREAK__" _tmp_str "${ARGN}")
     # replace semicolon, as it is interpreted as a list separator by CMAKE
     string(REPLACE ";" "__SEMICOLON__" _tmp_str "${_tmp_str}")
+    # replace quotes as well
+    string(REPLACE "\"" "__QUOTE__" _tmp_str "${_tmp_str}")
     set(${output} "${_tmp_str}" PARENT_SCOPE)
 endfunction()

@@ -94,6 +96,8 @@
     string(REPLACE "__LINEBREAK__" "\n" _tmp_str "${ARGN}")
     # revert semicolon
     string(REPLACE "__SEMICOLON__" ";" _tmp_str "${_tmp_str}")
+    # revert quotes
+    string(REPLACE "__QUOTE__" "\"" _tmp_str "${_tmp_str}")
     set(${output} "${_tmp_str}" PARENT_SCOPE)
 endfunction()


build: macos: Don't strip trailing a newline and white space

This is because removing trailing newline should cause corrupted
certificates on concatenating.
OpenSSL's loading PEM format of certificates more strict than mbedTLS's
one.

Signed-off-by: Hiroshi Hatake <a476a6e5b5893650242fbf0b2961500a9bd9032e@calyptia.com>

--- cmake/macos-setup.cmake
+++ cmake/macos-setup.cmake
@@ -15,16 +15,14 @@
   COMMAND security find-certificate -a -p /Library/Keychains/System.keychain
   RESULT_VARIABLE SECURITY_SYSTEM_RESULT
   OUTPUT_VARIABLE SECURITY_SYSTEM_CERTS
-  OUTPUT_STRIP_TRAILING_WHITESPACE
-  )
+  ) # Don't strip trailing a white space and newline in the end of exported certificate.
 file(WRITE ${MACOS_ROOT_CERT} ${SECURITY_SYSTEM_CERTS})

 execute_process(
   COMMAND security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain
   RESULT_VARIABLE SECURITY_ROOT_RESULT
   OUTPUT_VARIABLE SECURITY_ROOT_CERTS
-  OUTPUT_STRIP_TRAILING_WHITESPACE
-  )
+  ) # Don't strip trailing a white space and newline in the end of exported certificate.
 file(APPEND ${MACOS_ROOT_CERT} ${SECURITY_ROOT_CERTS})

 install(FILES ${MACOS_ROOT_CERT} COMPONENT binary DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/certs)


Fix: cmake-2.8.4 doesn't like add_test without explicit arguments names

git-svn-id: 1af002208e930b4d920e7c2b948d1e98a012c795@700 a9d63959-f2ad-4865-b262-bf0e56cfafb6

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -90,7 +90,7 @@
     set_target_properties(${_name} PROPERTIES
         VERSION ${PCL_VERSION}
         SOVERSION ${PCL_MAJOR_VERSION}
-				DEFINE_SYMBOL "PCLAPI_EXPORTS")
+        DEFINE_SYMBOL "PCLAPI_EXPORTS")
     install(TARGETS ${_name} LIBRARY DESTINATION ${LIB_INSTALL_DIR}
         ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
         COMPONENT ${_component})
@@ -146,7 +146,12 @@
     #
     target_link_libraries(${_exename} ${GTEST_BOTH_LIBRARIES} ${PCL_ADD_TEST_LINK_WITH})
     PCL_LINK_OPENMP(${_exename})
-  	add_test(${_name} ${_exename} ${PCL_ADD_TEST_ARGUMENTS})
+
+    if(${CMAKE_VERSION} VERSION_LESS 2.8.4)
+      add_test(${_name} ${_exename} ${PCL_ADD_TEST_ARGUMENTS})
+    else(${CMAKE_VERSION} VERSION_LESS 2.8.4)
+      add_test(NAME ${_name} COMMAND ${_exename} ${PCL_ADD_TEST_ARGUMENTS})
+    endif(${CMAKE_VERSION} VERSION_LESS 2.8.4)
 endmacro(PCL_ADD_TEST)


don't need GLM here, may add live preview with SDL

--- cmake/FindGLM.cmake
+++ cmake/FindGLM.cmake
@@ -1,18 +0,0 @@
-# Find the OpenGL Mathematics library (GLM)
-# This is only really neede for Windows I think, since GLM installs
-# to the regular lib/include dirs on Linux so no extra work is needed
-# on Windows the GLM root dir should be set as an environment variable
-# named GLM
-
-find_path(GLM_INCLUDE_DIR glm/glm.hpp
-	HINTS $ENV{GLM}
-	PATH_SUFFIXES glm
-)
-
-set(GLM_INCLUDE_DIRS ${GLM_INCLUDE_DIR})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(GLM REQUIRED_VARS GLM_INCLUDE_DIR)
-
-mark_as_advanced(GLM_INCLUDE_DIR)
-


BUG: Creating initial cache should only be done after download

--- CMake/EXAMPLE_Windows_Build.cmake
+++ CMake/EXAMPLE_Windows_Build.cmake
@@ -48,7 +48,7 @@
 #
 # The following advanced variables should only be changed by experts
 #
-set( TUBETK_SCRIPT_DIR "${TUBETK_BINARY_DIR}/CMake" )
+set( TUBETK_SCRIPT_DIR "${TUBETK_SOURCE_DIR}/CMake" )

 set( SITE_CTEST_MODE "Experimental" )

@@ -94,26 +94,30 @@
 set( QT_QMAKE_EXECUTABLE "${SITE_QMAKE_COMMAND}" )

 if( NOT EXISTS "${TUBETK_SOURCE_DIR}/CMakeLists.txt" )
+
   execute_process( COMMAND
     "${SITE_GIT_COMMAND}"
     clone "${TUBETK_GIT_REPOSITORY}" "${TUBETK_SOURCE_DIR}" )
   ctest_run_script()
+
+else()
+
+  set( CTEST_BUILD_NAME "${SITE_BUILD_NAME}-BuildTest-New" )
+  configure_file(
+    ${TUBETK_SCRIPT_DIR}/InitCMakeCache.cmake.in
+    ${TUBETK_BINARY_DIR}/InitCMakeCache.cmake IMMEDIATE @ONLY )
+  set( CTEST_NOTES_FILES "${TUBETK_BINARY_DIR}/InitCMakeCache.cmake" )
+
+  ctest_start( "Experimental" )
+  ctest_update( SOURCE "${TUBETK_SOURCE_DIR}" )
+  ctest_configure( BUILD "${TUBETK_BINARY_DIR}"
+    SOURCE "${TUBETK_SOURCE_DIR}"
+    OPTIONS "-C${TUBETK_BINARY_DIR}/InitCMakeCache.cmake" )
+  ctest_read_custom_files( "${TUBETK_BINARY_DIR}" )
+  ctest_build( BUILD "${TUBETK_BINARY_DIR}" )
+  ctest_test( BUILD "${TUBETK_BINARY_DIR}/TubeTK-Build" )
+  ctest_submit( PARTS Notes Update Configure Build Test )
+
 endif()

-set( CTEST_BUILD_NAME "${SITE_BUILD_NAME}-BuildTest-New" )
-configure_file(
-  ${TUBETK_SCRIPT_DIR}/InitCMakeCache.cmake.in
-  ${TUBETK_BINARY_DIR}/InitCMakeCache.cmake IMMEDIATE @ONLY )
-set( CTEST_NOTES_FILES "${TUBETK_BINARY_DIR}/InitCMakeCache.cmake" )
-
-ctest_start( "Experimental" )
-ctest_update( SOURCE "${TUBETK_SOURCE_DIR}" )
-ctest_configure( BUILD "${TUBETK_BINARY_DIR}"
-  SOURCE "${TUBETK_SOURCE_DIR}"
-  OPTIONS "-C${TUBETK_BINARY_DIR}/InitCMakeCache.cmake" )
-ctest_read_custom_files( "${TUBETK_BINARY_DIR}" )
-ctest_build( BUILD "${TUBETK_BINARY_DIR}" )
-ctest_test( BUILD "${TUBETK_BINARY_DIR}/TubeTK-Build" )
-ctest_submit( PARTS Notes Update Configure Build Test )
-
 set(CTEST_RUN_CURRENT_SCRIPT 0)


Now included cmiss_interactive_tool.h in api_source_files.cmake. Tracker item 2841, https://tracker.physiomeproject.org/show_bug.cgi?id=2841

--- source/cmake/api_source_files.cmake
+++ source/cmake/api_source_files.cmake
@@ -40,6 +40,7 @@
 	source/api/cmiss_graphic.h
 	source/api/cmiss_graphics_window.h
 	source/api/cmiss_idle.h
+	source/api/cmiss_interactive_tool.h
 	source/api/cmiss_material.h
 	source/api/cmiss_node.h
 	source/api/cmiss_region.h


[ci skip] Disable C4189 warning message (caused by imgui)

--- Builds/CMake/CompileOptions.cmake
+++ Builds/CMake/CompileOptions.cmake
@@ -82,6 +82,7 @@
 		# /wd4592     # -> disable warning: 'identifier': symbol will be dynamically initialized (implementation limitation)
 		# /wd4201     # -> disable warning: nonstandard extension used: nameless struct/union (caused by GLM)
 		# /wd4127     # -> disable warning: conditional expression is constant (caused by Qt)
+		/wd4189       # -> disable warning: local variable is initialized but not referenced (caused by imgui)

 		#$<$<CONFIG:Debug>:
 		#/RTCc        # -> value is assigned to a smaller data type and results in a data loss


Use -Wno-error=* instead of -Wno-* flags.

Unknown -Wno-* flags are not rejected by the compiler and lead to
confusing error messages.

--- CMake/mitkMacroCreateModule.cmake
+++ CMake/mitkMacroCreateModule.cmake
@@ -142,8 +142,23 @@
               mitkFunctionCheckCompilerFlags("/WX" module_compile_flags)
             else()
               mitkFunctionCheckCompilerFlags("-Werror" module_compile_flags)
-              mitkFunctionCheckCompilerFlags("-Wno-c++0x-static-nonintegral-init" module_compile_flags)
-              mitkFunctionCheckCompilerFlags("-Wno-gnu" module_compile_flags)
+
+              # The flag "c++0x-static-nonintegral-init" has been renamed in newer Clang
+              # versions to "static-member-init", see
+              # http://clang-developers.42468.n3.nabble.com/Wc-0x-static-nonintegral-init-gone-td3999651.html
+              #
+              # Also, older Clang and seemingly all gcc versions do not warn if unknown
+              # "-no-*" flags are used, so CMake will happily append any -Wno-* flag to the
+              # command line. This may get confusing if unrelated compiler errors happen and
+              # the error output then additinally contains errors about unknown flags (which
+              # is not the case if there were no compile errors).
+              #
+              # So instead of using -Wno-* we use -Wno-error=*, which will be properly rejected by
+              # the compiler and if applicable, prints the specific warning as a real warning and
+              # not as an error (although -Werror was given).
+
+              mitkFunctionCheckCompilerFlags("-Wno-error=c++0x-static-nonintegral-init" module_compile_flags)
+              mitkFunctionCheckCompilerFlags("-Wno-error=gnu" module_compile_flags)
             endif()
           endif(MODULE_WARNINGS_AS_ERRORS)


BUG: Do not install pre-release Python packages in Superbuild

Until Issue #131 is addressed

--- Superbuild/External-Python.cmake
+++ Superbuild/External-Python.cmake
@@ -13,5 +13,5 @@
   DOWNLOAD_COMMAND ""
   CONFIGURE_COMMAND ""
   BUILD_COMMAND ${PYTHON_EXECUTABLE} -m venv "${_itk_venv}"
-  INSTALL_COMMAND ${ITKPYTHON_EXECUTABLE} -m pip install --pre itk sphinx
+  INSTALL_COMMAND ${ITKPYTHON_EXECUTABLE} -m pip install itk sphinx
   )


Consistent and optional use of static runtime (Windows)

--- common/cmake/msvc.cmake
+++ common/cmake/msvc.cmake
@@ -34,7 +34,14 @@
 SET(CMAKE_CXX_FLAGS_DEBUG          "${CMAKE_CXX_FLAGS_DEBUG} /MP")
 SET(CMAKE_CXX_FLAGS_RELEASE        "${CMAKE_CXX_FLAGS_RELEASE} ${ADDITIONAL_CXX_FLAGS}")
 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${ADDITIONAL_CXX_FLAGS}")
-# use static runtime library
-string (REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
+
+# optionally use static runtime library
+OPTION(USE_STATIC_RUNTIME "Use the static version of the C/C++ runtime library." OFF)
+IF (USE_STATIC_RUNTIME)
+  STRING(REPLACE "/MDd" "/MTd" CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG})
+  STRING(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_RELWITHDEBINFO ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})
+  STRING(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
+ENDIF()
+
 # remove define NDEBUG and instead set define DEBUG for config RelWithDebInfo
-string (REPLACE "NDEBUG" "DEBUG" CMAKE_CXX_FLAGS_RELWITHDEBINFO ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})
+STRING(REPLACE "NDEBUG" "DEBUG" CMAKE_CXX_FLAGS_RELWITHDEBINFO ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})


Debugging nvcc flags, keep asm flag, and turn resolve cuda symbols property on.  This allows developers to use cuda-gdb and the Eclipse w EE Plugins/NSight VSStudio visual debuggers.

--- CMake/GOMCCUDASetup.cmake
+++ CMake/GOMCCUDASetup.cmake
@@ -1,7 +1,15 @@
 # Find CUDA is enabled, set it up

 set(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS};-DGOMC_CUDA)
+######## For CUDA Debugging in Eclipse/cuda-gdb
+if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+	message("-- Debug build type detected, passing : '-g -G --keep' to nvcc")
+	set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS} -g -G --keep")
+endif()
+######## For CUDA Debugging in Eclipse/cuda-gdb
 set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS} -std=c++11")
+
+
 include_directories(src/GPU)
 #set(CUDA_VERBOSE_BUILD ON)
 set(CUDA_SEPARABLE_COMPILATION ON)
@@ -22,6 +30,12 @@
     set_target_properties(GPU_NVT PROPERTIES
         OUTPUT_NAME ${GPU_NVT_name}
         COMPILE_FLAGS "${GPU_NVT_flags}")
+######## For CUDA Debugging in Eclipse/cuda-gdb
+	if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+		message("-- Debug build type detected, GPU_NVT setting CUDA_RESOLVE_DEVICE_SYMBOLS ON")
+    	set_property(TARGET GPU_NVT PROPERTY CUDA_RESOLVE_DEVICE_SYMBOLS ON)
+	endif()
+######## For CUDA Debugging in Eclipse/cuda-gdb
     if(WIN32)
         #needed for hostname
         target_link_libraries(GPU_NVT ws2_32)
@@ -29,6 +43,7 @@
     if(MPI_FOUND)
 	target_link_libraries(GPU_NVT ${MPI_LIBRARIES})
     endif()
+
 endif()

 if(ENSEMBLE_GPU_GEMC)
@@ -37,6 +52,12 @@
     set_target_properties(GPU_GEMC PROPERTIES
         OUTPUT_NAME ${GPU_GE_name}
         COMPILE_FLAGS "${GPU_GE_flags}")
+######## For CUDA Debugging in Eclipse/cuda-gdb
+	if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+		message("-- Debug build type detected, GPU_GEMC setting CUDA_RESOLVE_DEVICE_SYMBOLS ON")
+    	set_property(TARGET GPU_GEMC PROPERTY CUDA_RESOLVE_DEVICE_SYMBOLS ON)
+	endif()
+######## For CUDA Debugging in Eclipse/cuda-gdb
     if(WIN32)
         #needed for hostname
         target_link_libraries(GPU_GEMC ws2_32)
@@ -52,6 +73,12 @@
     set_target_properties(GPU_GCMC PROPERTIES
         OUTPUT_NAME ${GPU_GC_name}
         COMPILE_FLAGS "${GPU_GC_flags}")
+######## For CUDA Debugging in Eclipse/cuda-gdb
+	if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+		message("-- Debug build type detected, GPU_GCMC setting CUDA_RESOLVE_DEVICE_SYMBOLS ON")
+    	set_property(TARGET GPU_GCMC PROPERTY CUDA_RESOLVE_DEVICE_SYMBOLS ON)
+	endif()
+######## For CUDA Debugging in Eclipse/cuda-gdb
     if(WIN32)
         #needed for hostname
         target_link_libraries(GPU_GCMC ws2_32)
@@ -67,6 +94,12 @@
     set_target_properties(GPU_NPT PROPERTIES
         OUTPUT_NAME ${GPU_NPT_name}
         COMPILE_FLAGS "${GPU_NPT_flags}")
+######## For CUDA Debugging in Eclipse/cuda-gdb
+	if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+		message("-- Debug build type detected, GPU_NPT setting CUDA_RESOLVE_DEVICE_SYMBOLS ON")
+    	set_property(TARGET GPU_NPT PROPERTY CUDA_RESOLVE_DEVICE_SYMBOLS ON)
+	endif()
+######## For CUDA Debugging in Eclipse/cuda-gdb
     if(WIN32)
         #needed for hostname
         target_link_libraries(GPU_NPT ws2_32)


[Linux/ARM32] Unifying the redundant usages of cross-toolchain

The name of toolchain name has been increasing gradually.
Let's unify the toolchain name of Linux/ARM32 to prevent the
increase of the fragmentation, and to the manatainability.

Signed-off-by: 3114592799174a94582c8660ec54dcf6a2166026@samsung.com
Signed-off-by: 1c00c485ef5834f59bb5a88e57bc2c4516891523@samsung.com
Signed-off-by: b4cb431ace74c0c632e7da94c8e49db850b1fab1@samsung.com

--- cross/arm/toolchain.cmake
+++ cross/arm/toolchain.cmake
@@ -4,14 +4,24 @@
 set(CMAKE_SYSTEM_VERSION 1)
 set(CMAKE_SYSTEM_PROCESSOR armv7l)

+## Specify the toolchain
+set(TOOLCHAIN "arm-linux-gnueabihf")
+set(TOOLCHAIN_PREFIX ${TOOLCHAIN}-)
+# set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}gcc)
+# set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}g++)
+# set(CMAKE_ASM_COMPILER ${TOOLCHAIN_PREFIX}as)
+#set(CMAKE_AR ${TOOLCHAIN_PREFIX}ar)
+#set(CMAKE_OBJCOPY ${TOOLCHAIN_PREFIX}objcopy)
+#set(CMAKE_OBJDUMP ${TOOLCHAIN_PREFIX}objdump)
+
 add_compile_options(-target armv7-linux-gnueabihf)
 add_compile_options(-mthumb)
 add_compile_options(-mfpu=vfpv3)
 add_compile_options(--sysroot=${CROSS_ROOTFS})

-set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -target arm-linux-gnueabihf")
-set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -B ${CROSS_ROOTFS}/usr/lib/gcc/arm-linux-gnueabihf")
-set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -L${CROSS_ROOTFS}/lib/arm-linux-gnueabihf")
+set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -target ${TOOLCHAIN}")
+set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -B ${CROSS_ROOTFS}/usr/lib/gcc/${TOOLCHAIN}")
+set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -L${CROSS_ROOTFS}/lib/${TOOLCHAIN}")
 set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} --sysroot=${CROSS_ROOTFS}")

 set(CMAKE_EXE_LINKER_FLAGS    "${CMAKE_EXE_LINKER_FLAGS}    ${CROSS_LINK_FLAGS}" CACHE STRING "" FORCE)
@@ -24,5 +34,5 @@
 set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
 set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)

-set(WITH_LLDB_LIBS "${CROSS_ROOTFS}/usr/lib/arm-linux-gnueabihf" CACHE STRING "")
-set(WITH_LLDB_INCLUDES "${CROSS_ROOTFS}/usr/lib/llvm-3.6/include" CACHE STRING "")+set(WITH_LLDB_LIBS "${CROSS_ROOTFS}/usr/lib/${TOOLCHAIN}" CACHE STRING "")
+set(WITH_LLDB_INCLUDES "${CROSS_ROOTFS}/usr/lib/llvm-3.6/include" CACHE STRING "")


Explicitly enable relro (#25473)

Explicitly enable relro (#25473)

* Explicitly enable relro

We need to enable relro explicitly because in some cases it isn't enabled by
default. For example, clang does it only for openSUSE, ubuntu, alpine and android.

--- configurecompiler.cmake
+++ configurecompiler.cmake
@@ -359,7 +359,7 @@

 if(CLR_CMAKE_PLATFORM_LINUX)
   add_compile_options($<$<COMPILE_LANGUAGE:ASM>:-Wa,--noexecstack>)
-  add_link_options(-Wl,--build-id=sha1)
+  add_link_options(-Wl,--build-id=sha1 -Wl,-z,relro,-z,now)
 endif(CLR_CMAKE_PLATFORM_LINUX)
 if(CLR_CMAKE_PLATFORM_FREEBSD)
   add_compile_options($<$<COMPILE_LANGUAGE:ASM>:-Wa,--noexecstack>)


Turn now deprecated castor to default=Off.

--- cmake/modules/RootBuildOptions.cmake
+++ cmake/modules/RootBuildOptions.cmake
@@ -100,7 +100,7 @@
 ROOT_BUILD_OPTION(builtin_xrootd OFF "Build XRootD internally (requires network)")
 ROOT_BUILD_OPTION(builtin_xxhash OFF "Build bundled copy of xxHash")
 ROOT_BUILD_OPTION(builtin_zlib OFF "Build bundled copy of zlib")
-ROOT_BUILD_OPTION(castor ON "Enable support for CASTOR (CERN Advanced STORage manager)")
+ROOT_BUILD_OPTION(castor OFF "Enable support for CASTOR (CERN Advanced STORage manager)")
 ROOT_BUILD_OPTION(ccache OFF "Enable ccache usage for speeding up builds")
 ROOT_BUILD_OPTION(cefweb OFF "Enable support for CEF (Chromium Embedded Framework) web-based display")
 ROOT_BUILD_OPTION(clad ON "Build clad, the cling automatic differentiation plugin")


cmake: check ZEPHYR_SDK_INSTALL_DIR is set

Check for ZEPHYR_SDK_INSTALL_DIR being invalid instead of
checking for SDK_VERSION being not defined. This change
relates to commit bb09c458c18f ("cmake: Prevent infinite
recursion").

Signed-off-by: Vinayak Kariappa Chettimada <e780c9f87dc729ad454f47292ad82c8652353064@nordicsemi.no>

--- cmake/toolchain/zephyr/generic.cmake
+++ cmake/toolchain/zephyr/generic.cmake
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: Apache-2.0

-if(NOT DEFINED SDK_VERSION)
-  message(FATAL_ERROR "SDK_VERSION must be set")
+if (NOT ZEPHYR_SDK_INSTALL_DIR)
+  message(FATAL_ERROR "ZEPHYR_SDK_INSTALL_DIR must be set")
 endif()

 include(${ZEPHYR_BASE}/cmake/toolchain/zephyr/${SDK_VERSION}/generic.cmake)


cmake: Detect libid3tag.

cmake: Detect libid3tag.

--- extras/buildsystem/cmake/include/config.cmake
+++ extras/buildsystem/cmake/include/config.cmake
@@ -594,6 +594,12 @@
   vlc_module_add_link_libraries(dvb     ${Dvbpsi_LIBRARIES})
 endif(Dvbpsi_FOUND)

+vlc_check_include_files (id3tag.h zlib.h)
+if(HAVE_ID3TAG_H AND HAVE_ZLIB_H)
+  vlc_enable_modules(id3tag)
+  vlc_module_add_link_libraries(id3tag  "id3tag;z")
+endif(HAVE_ID3TAG_H AND HAVE_ZLIB_H)
+
 set(CMAKE_REQUIRED_INCLUDES)

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


Win: Allow the BC compiler version to differ from the platform toolset (#323)

--- cmake/BCCompiler.cmake
+++ cmake/BCCompiler.cmake
@@ -193,8 +193,17 @@
       set(dependency_list_directive DEPENDS ${dependency_list})
     endif()

+    if(WIN32)
+      # We are actually using two different compilers; the LLVM platform toolset downloaded
+      # from the official LLVM download page and our own version from the cxx-common tarball.
+      #
+      # When the versions do not match, the compilation will fail; we don't really care about
+      # this, as the second compiler is only really used to output BC files.
+      set(additional_windows_settings "-D_ALLOW_COMPILER_AND_STL_VERSION_MISMATCH")
+    endif()
+
     add_custom_command(OUTPUT "${absolute_output_file_path}"
-      COMMAND "${CMAKE_BC_COMPILER}" ${include_directory_list} "-DADDRESS_SIZE_BITS=${address_size}" ${definition_list} ${DEFAULT_BC_COMPILER_FLAGS} ${bc_flag_list} ${source_file_option_list} -c "${absolute_source_file_path}" -o "${absolute_output_file_path}"
+      COMMAND "${CMAKE_BC_COMPILER}" ${include_directory_list} ${additional_windows_settings} "-DADDRESS_SIZE_BITS=${address_size}" ${definition_list} ${DEFAULT_BC_COMPILER_FLAGS} ${bc_flag_list} ${source_file_option_list} -c "${absolute_source_file_path}" -o "${absolute_output_file_path}"
       MAIN_DEPENDENCY "${absolute_source_file_path}"
       ${dependency_list_directive}
       COMMENT "Building BC object ${absolute_output_file_path}"


Make all warnings errors.

Make all warnings errors.

--- cmake/BuildFlags.cmake
+++ cmake/BuildFlags.cmake
@@ -47,7 +47,7 @@
 target_compile_options(cse_common_interface INTERFACE
   $<$<CXX_COMPILER_ID:MSVC>:
     /W3           #*Warning level
-    # /WX         # Turn all warnings into errors
+    /WX           # Turn all warnings into errors
     /GR           #*Enable Run-Time Type Information TODO: keep?
     /nologo       # Suppresses display of sign-on banner.
     /fp:precise   #+Specifies floating-point behavior.


RtAudio stuff needs threads on non mac/win

Signed-off-by: falkTX <d7e5958cbb080ba57e41fb602ade747e1a2da17c@falktx.com>

--- cmake/DPF-plugin.cmake
+++ cmake/DPF-plugin.cmake
@@ -209,18 +209,19 @@
   if(APPLE OR WIN32)
     target_compile_definitions("${NAME}" PUBLIC "HAVE_RTAUDIO")
   else()
+    find_package(Threads)
     pkg_check_modules(ALSA "alsa")
     pkg_check_modules(PULSEAUDIO "libpulse-simple")
     if(ALSA_FOUND)
       target_compile_definitions("${NAME}" PUBLIC "HAVE_ALSA")
       target_include_directories("${NAME}-jack" PRIVATE ${ALSA_INCLUDE_DIRS})
-      target_link_libraries("${NAME}-jack" PRIVATE ${ALSA_LIBRARIES})
+      target_link_libraries("${NAME}-jack" PRIVATE ${ALSA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
       dpf__target_link_directories("${NAME}-jack" ${ALSA_LIBRARY_DIRS})
     endif()
     if(PULSEAUDIO_FOUND)
       target_compile_definitions("${NAME}" PUBLIC "HAVE_PULSEAUDIO")
       target_include_directories("${NAME}-jack" PRIVATE ${PULSEAUDIO_INCLUDE_DIRS})
-      target_link_libraries("${NAME}-jack" PRIVATE ${PULSEAUDIO_LIBRARIES})
+      target_link_libraries("${NAME}-jack" PRIVATE ${PULSEAUDIO_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
       dpf__target_link_directories("${NAME}-jack" ${PULSEAUDIO_LIBRARY_DIRS})
     endif()
     if(ALSA_FOUND OR PULSEAUDIO_FOUND)


Improve handling of DEVBASE_DOXYGEN_INPUT

--- cmake/DoxygenDoc.cmake
+++ cmake/DoxygenDoc.cmake
@@ -6,6 +6,9 @@
     set(DEVBASE_DOXYGEN_GENERATE_TODOLIST "YES")
 endif()

+# DEVBASE_DOXYGEN_INPUT is a list of pathnames. Turn it into a string with
+# pathnames separated by spaces.
+string(REPLACE ";" " " DEVBASE_DOXYGEN_INPUT "${DEVBASE_DOXYGEN_INPUT}")

 set(DOXYGEN_TEMPLATE "
     ALWAYS_DETAILED_SEC     = YES


cmake: enable c++14 now

cmake: enable c++14 now

--- cmake/Compiler/GccCompatible.cmake
+++ cmake/Compiler/GccCompatible.cmake
@@ -8,9 +8,9 @@
 # we will use the std=c++0x flag until we run into any incompatibilty.
 # std=c++11 requires gcc-4.7+
 if(MINGW)
-  add_compiler_flags(CXX -std=gnu++0x)
+  add_compiler_flags(CXX -std=gnu++14)
 else()
-  add_compiler_flags(CXX -std=c++0x)
+  add_compiler_flags(CXX -std=c++14)
 endif()

 # having as-needed and -z,defs enabled is good practise (less issues with different environments)


[CMake] Fix include file OptParser.td not found

--- cmake/modules/LLDBStandalone.cmake
+++ cmake/modules/LLDBStandalone.cmake
@@ -25,7 +25,7 @@
   #  HINTS "${LLDB_PATH_TO_CLANG_BUILD}" NO_CMAKE_FIND_ROOT_PATH)

   # We set LLVM_MAIN_INCLUDE_DIR so that it gets included in TableGen flags.
-  #set(LLVM_MAIN_INCLUDE_DIR "${LLVM_BUILD_MAIN_INCLUDE_DIR}" CACHE PATH "Path to LLVM's source include dir")
+  set(LLVM_MAIN_INCLUDE_DIR "${LLVM_BUILD_MAIN_INCLUDE_DIR}" CACHE PATH "Path to LLVM's source include dir")
   # We set LLVM_CMAKE_PATH so that GetSVN.cmake is found correctly when building SVNVersion.inc
   set(LLVM_CMAKE_PATH ${LLVM_CMAKE_DIR} CACHE PATH "Path to LLVM CMake modules")

@@ -44,7 +44,6 @@
   list(APPEND CMAKE_MODULE_PATH "${LLDB_PATH_TO_SWIFT_SOURCE}/cmake/modules")
   set(LLVM_TOOLS_BINARY_DIR ${TOOLS_BINARY_DIR} CACHE PATH "Path to llvm/bin")
   set(LLVM_LIBRARY_DIR ${LIBRARY_DIR} CACHE PATH "Path to llvm/lib")
-  set(LLVM_MAIN_INCLUDE_DIR ${INCLUDE_DIR} CACHE PATH "Path to llvm/include")
   set(LLVM_DIR ${LLVM_OBJ_ROOT}/cmake/modules/CMakeFiles CACHE PATH "Path to LLVM build tree CMake files")
   set(LLVM_BINARY_DIR ${LLVM_OBJ_ROOT} CACHE PATH "Path to LLVM build tree")
   set(LLVM_MAIN_SRC_DIR ${MAIN_SRC_DIR} CACHE PATH "Path to LLVM source tree")


[CMake] Use LLVM_DIR and Clang_DIR for standalone builds.

When doing a standalone build, without setting LLDB_PATH_TO_LLVM_BUILD
or LLDB_PATH_TO_CLANG_BUILD, you get the following error.

```
CMake Error at cmake/modules/LLDBStandalone.cmake:23 (find_package):
  Could not find a package configuration file provided by "LLVM" with any of
  the following names:

    LLVMConfig.cmake
    llvm-config.cmake

  Add the installation prefix of "LLVM" to CMAKE_PREFIX_PATH or set
  "LLVM_DIR" to a directory containing one of the above files.  If "LLVM"
  provides a separate development package or SDK, be sure it has been
  installed.
```

This suggests setting LLVM_DIR to LLVM's install directory. However,
LLDBStandalone.cmake takes LLDB_PATH_TO_LLVM_BUILD as its hint. As
someone who isn't familiar with the standalone process, this is rather
confusing. This patch removes LLDB_PATH_TO_LLVM_BUILD and
LLDB_PATH_TO_CLANG_BUILD and instead use LLVM_DIR and Clang_DIR
respectively.

Differential revision: https://reviews.llvm.org/D64823

git-svn-id: 4c4cc70b1ef44ba2b7963015e681894188cea27e@366362 91177308-0d34-0410-b5e6-96231b3b80d8

--- cmake/modules/LLDBStandalone.cmake
+++ cmake/modules/LLDBStandalone.cmake
@@ -2,16 +2,8 @@

 option(LLVM_INSTALL_TOOLCHAIN_ONLY "Only include toolchain files in the 'install' target." OFF)

-set(LLDB_PATH_TO_LLVM_BUILD "" CACHE PATH "Path to LLVM build tree")
-set(LLDB_PATH_TO_CLANG_BUILD "${LLDB_PATH_TO_LLVM_BUILD}" CACHE PATH "Path to Clang build tree")
-
-file(TO_CMAKE_PATH "${LLDB_PATH_TO_LLVM_BUILD}" LLDB_PATH_TO_LLVM_BUILD)
-file(TO_CMAKE_PATH "${LLDB_PATH_TO_CLANG_BUILD}" LLDB_PATH_TO_CLANG_BUILD)
-
-find_package(LLVM REQUIRED CONFIG
-  HINTS "${LLDB_PATH_TO_LLVM_BUILD}" NO_CMAKE_FIND_ROOT_PATH)
-find_package(Clang REQUIRED CONFIG
-  HINTS "${LLDB_PATH_TO_CLANG_BUILD}" NO_CMAKE_FIND_ROOT_PATH)
+find_package(LLVM REQUIRED CONFIG HINTS "${LLVM_DIR}" NO_CMAKE_FIND_ROOT_PATH)
+find_package(Clang REQUIRED CONFIG HINTS "${Clang_DIR}" NO_CMAKE_FIND_ROOT_PATH)

 # We set LLVM_CMAKE_PATH so that GetSVN.cmake is found correctly when building SVNVersion.inc
 set(LLVM_CMAKE_PATH ${LLVM_CMAKE_DIR} CACHE PATH "Path to LLVM CMake modules")
@@ -40,7 +32,7 @@
 set(LLVM_DEFAULT_EXTERNAL_LIT ${lit_full_path} CACHE PATH "Path to llvm-lit")

 if(CMAKE_CROSSCOMPILING)
-  set(LLVM_NATIVE_BUILD "${LLDB_PATH_TO_LLVM_BUILD}/NATIVE")
+  set(LLVM_NATIVE_BUILD "${LLVM_BINARY_DIR}/NATIVE")
   if (NOT EXISTS "${LLVM_NATIVE_BUILD}")
     message(FATAL_ERROR
       "Attempting to cross-compile LLDB standalone but no native LLVM build


libjansson fix

libjansson fix

--- neulib_jansson.cmake
+++ neulib_jansson.cmake
@@ -7,7 +7,7 @@
   include(${BUILDEM_REPO_DIR}/neulib_com.cmake)

   SET(config_args --enable-shared --disable-fftw --disable-fftwf --disable-z --disable-xml --disable-png LIB_SUFFIX=_jansson)
-  SET(depends_args libjansson)
+  SET(depends_args ${libjansson_NAME})
   INSTALL_NEULIB(libneurolabi_jansson "${config_args}" "${depends_args}")

 endif (NOT libneurolabi_NAME)


Squashed 'cmake/yacma/' changes from 7379af6..ea80173

ea80173 Minor internal doc bits in yacma.

git-subtree-dir: cmake/yacma
git-subtree-split: ea801733ec3594506bda8994c6e7c412f2ed3fd1

--- YACMACompilerLinkerSettings.cmake
+++ YACMACompilerLinkerSettings.cmake
@@ -41,7 +41,7 @@
     message(STATUS "YACMA autodetected C++ debug flags: ${YACMA_CXX_FLAGS_DEBUG}")
 endfunction()

-# Enable conditionally a CXX flags, if supported by the compiler.
+# Enable conditionally a CXX flag, if supported by the compiler.
 # This is for flags intended to be enabled in all configurations.
 # NOTE: we use macros and go through temporary private variables
 # because it's apparently impossible to append to an internal
@@ -60,7 +60,7 @@
     unset(YACMA_CHECK_CXX_FLAG CACHE)
 endmacro()

-# Enable conditionally a debug CXX flags, is supported by the compiler.
+# Enable conditionally a debug CXX flag, is supported by the compiler.
 # This is for flags intended to be enabled in debug mode.
 macro(_YACMA_CHECK_ENABLE_DEBUG_CXX_FLAG flag)
     set(CMAKE_REQUIRED_QUIET TRUE)


cmake: fix linking errors on windows.

cmake: fix linking errors on windows.

--- src/cmake/precompiled_libs.cmake
+++ src/cmake/precompiled_libs.cmake
@@ -80,14 +80,14 @@
 	# On Windows we use precompiled GLEW and GLUT.
 	_set_default(GLEW_ROOT_DIR "${_lib_DIR}/opengl")
 	_set_default(CYCLES_GLUT "${_lib_DIR}/opengl")
-	set(GLUT_glut_LIBRARY "${_lib_DIR}/opengl/lib/freeglut_static.lib")
+	set(GLUT_LIBRARIES "${_lib_DIR}/opengl/lib/freeglut_static.lib")

 	set(Boost_USE_STATIC_RUNTIME ON)
 	set(Boost_USE_MULTITHREADED ON)
 	set(Boost_USE_STATIC_LIBS ON)

 	# Special tricks for precompiled PThreads.
-	set(PTHREADS_LIBRARIES "${_lib_DIR}/pthreads/lib/pthreadVC2.lib")
+	set(PTHREADS_LIBRARIES "${_lib_DIR}/pthreads/lib/pthreadVC3.lib")
 	include_directories("${_lib_DIR}/pthreads/include")

 	# We need to tell compiler we're gonna to use static versions


ARROW-2930: [C++] migrated MacOS specific code for shared library target

Static only build is failing on MacOS as shared library target is not available. Proposed PR sets the INSTALL_RPATH to the shared target accordingly within the "shared configuration" branch.

Author: Philipp Hoch <p.hoch@celonis.com>

Closes #2350 from philhoch/master and squashes the following commits:

89e96a8d <Philipp Hoch> ARROW-2930 migrated MacOS specific code which requires shared library build target to shared part

--- cpp/cmake_modules/BuildUtils.cmake
+++ cpp/cmake_modules/BuildUtils.cmake
@@ -154,6 +154,18 @@
             INSTALL_RPATH ${_lib_install_rpath})
     endif()

+    if (APPLE)
+      if (ARROW_INSTALL_NAME_RPATH)
+        set(_lib_install_name "@rpath")
+      else()
+        set(_lib_install_name "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
+      endif()
+      set_target_properties(${LIB_NAME}_shared
+        PROPERTIES
+        BUILD_WITH_INSTALL_RPATH ON
+        INSTALL_NAME_DIR "${_lib_install_name}")
+    endif()
+
     install(TARGETS ${LIB_NAME}_shared
       RUNTIME DESTINATION ${RUNTIME_INSTALL_DIR}
       LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
@@ -186,18 +198,6 @@
       RUNTIME DESTINATION ${RUNTIME_INSTALL_DIR}
       LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
       ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
-  endif()
-
-  if (APPLE)
-    if (ARROW_INSTALL_NAME_RPATH)
-      set(_lib_install_name "@rpath")
-    else()
-      set(_lib_install_name "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
-    endif()
-    set_target_properties(${LIB_NAME}_shared
-      PROPERTIES
-      BUILD_WITH_INSTALL_RPATH ON
-      INSTALL_NAME_DIR "${_lib_install_name}")
   endif()

 endfunction()


COMP: add missing cherryErrorViewPart.cpp

--- openCherry/Bundles/org.opencherry.ui/files.cmake
+++ openCherry/Bundles/org.opencherry.ui/files.cmake
@@ -111,6 +111,7 @@
   cherryEditorRegistryReader.cpp
   cherryEditorSashContainer.cpp
   cherryEditorSite.cpp
+  cherryErrorViewPart.cpp
   cherryFileEditorMapping.cpp
   cherryFolderLayout.cpp
   cherryIDragOverListener.cpp


Use FindOgre.cmake from CMAKE_MODULE_PATH (Fixes #15)

--- CMake/Packages/FindOGRE_Old.cmake
+++ CMake/Packages/FindOGRE_Old.cmake
@@ -28,7 +28,8 @@
 		if(WIN32 OR APPLE)
 			set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${OGRE_SOURCE_DIR}/CMake ${OGRE_SOURCE_DIR}/CMake/Packages)
 		else()
-			set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /usr/local/lib/OGRE/cmake)
+			set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /usr/local/lib/OGRE/cmake
+			/usr/share/OGRE/cmake/modules /usr/local/share/OGRE/cmake/modules)
 		endif()

 		IF (NOT OGRE_SOURCE_DIR)
@@ -40,8 +41,10 @@
 		endif ()

 		if (EXISTS ${OGRE_SOURCE_DIR}/CMake)
-			MESSAGE(STATUS "Original FindOGRE.cmake found, trying to use it")
+			MESSAGE(STATUS "Original FindOGRE.cmake found in OGRE_SOURCE_DIR, trying to use it")
 			set (OGRE_HOME ${OGRE_SOURCE_DIR})
+			FIND_PACKAGE(OGRE)
+		else()
 			FIND_PACKAGE(OGRE)
 		endif()


COMP: Pass TubeTK_BUILD_ALL_MODULES and TubeTK_BUILD_* to inner build

This commit makes use of "mark_as_superbuild" to ensure the
options TubeTK_BUILD_ALL_MODULES and TubeTK_BUILD_* are
associated with the TubeTK inner build.

Without this commit, disabling TubeTK_BUILD_ALL_MODULES at the superbuild
level would have no effect.

--- CMake/TubeTKMacroAddModules.cmake
+++ CMake/TubeTKMacroAddModules.cmake
@@ -54,6 +54,7 @@
   # Add Build all modules option
   option( TubeTK_BUILD_ALL_MODULES "Build all TubeTK modules or not" ON )
   mark_as_advanced( TubeTK_BUILD_ALL_MODULES )
+  mark_as_superbuild( TubeTK_BUILD_ALL_MODULES )

   # Add option for each module
   if( MY_TubeTK_MODULES )
@@ -65,6 +66,7 @@
         TubeTK_BUILD_${module} "Build ${module} or not. This does not take module dependencies into account." OFF
          "NOT TubeTK_BUILD_ALL_MODULES" ON )
       mark_as_advanced( TubeTK_BUILD_${module} )
+      mark_as_superbuild( TubeTK_BUILD_${module} )

       if( TubeTK_BUILD_${module} )
         list( APPEND tubetk_modules ${CMAKE_CURRENT_SOURCE_DIR}/${module} )


Added support for windows

Added support for windows

--- CMake/mathlink/FindMathLink.cmake
+++ CMake/mathlink/FindMathLink.cmake
@@ -5,6 +5,14 @@
 ENDIF( MathLink_FIND_VERSION )

 if (WIN32)
+    IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+      set (MathLink_SYS Windows)
+    ELSE(CMAKE_SIZEOF_VOID_P EQUAL 4)
+      set(MathLink_SYS Windows-x86-64)
+    ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+    set(MathLink_ROOT_DIR "$ENV{ProgramFiles}\\Wolfram Research\\Mathematica\\${MathLink_FIND_VERSION_MAJOR}.${MathLink_FIND_VERSION_MINOR}\\SystemFiles\\Links\\MathLink\\DeveloperKit\\${MathLink_SYS}")
+
+	MESSAGE("DBG MathLink_ROOT_DIR=${MathLink_ROOT_DIR}")
 endif(WIN32)

 if(UNIX)
@@ -20,17 +28,58 @@
   set(MathLink_ROOT_DIR /Applications/Mathematica.app/SystemFiles/Links/MathLink/DeveloperKit)
 endif(APPLE)

-set(MathLink_INCLUDE_DIRS ${MathLink_ROOT_DIR}/CompilerAdditions )
-set(MathLink_LIBRARY_DIRS ${MathLink_ROOT_DIR}/CompilerAdditions )
+find_path(MathLink_INCLUDE_DIR
+    NAMES	mathlink.h
+    PATHS   ${MathLink_ROOT_DIR}/CompilerAdditions
+            ${MathLink_ROOT_DIR}/CompilerAdditions/mldev32/include
+            ${MathLink_ROOT_DIR}/CompilerAdditions/mldev64/include
+        )
+
+IF(UNIX)
+  set(MathLink_LIBRARY_DIR ${MathLink_ROOT_DIR}/CompilerAdditions )
+ELSE(UNIX)
+  IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+    set(MathLink_LIBRARY_DIR ${MathLink_ROOT_DIR}\\CompilerAdditions\\mldev32\\lib )
+  ELSE(CMAKE_SIZEOF_VOID_P EQUAL 4)
+    set(MathLink_LIBRARY_DIR ${MathLink_ROOT_DIR}\\CompilerAdditions\\mldev64\\lib )
+  ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+
+  MESSAGE("DBG MathLink_LIBRARY_DIR=${MathLink_LIBRARY_DIR}")
+ENDIF(UNIX)

-find_program(MathLink_MPREP_EXECUTABLE NAME mprep
-  PATHS ${MathLink_ROOT_DIR}/CompilerAdditions
-  NO_DEFAULT_PATH)
+
+find_program(MathLink_MPREP_EXECUTABLE
+    NAME    mprep
+    PATHS   ${MathLink_ROOT_DIR}/CompilerAdditions
+			${MathLink_ROOT_DIR}\\CompilerAdditions\\mldev32\\bin
+            ${MathLink_ROOT_DIR}\\CompilerAdditions\\mldev64\\bin
+        )
 mark_as_advanced(MathLink_MPREP_EXECUTABLE)

+IF(WIN32)
+    IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+        FIND_LIBRARY( MathLink_ML_LIBRARY
+		  NAME ml32i3m
+          PATHS ${MathLink_LIBRARY_DIR}
+			${MathLink_ROOT_DIR}\\SystemAdditions
+        )
+    ELSE(CMAKE_SIZEOF_VOID_P EQUAL 4)
+        FIND_LIBRARY( MathLink_ML_LIBRARY
+		  NAME ml64i3m
+          PATHS ${MathLink_LIBRARY_DIR}
+			${MathLink_ROOT_DIR}\\SystemAdditions
+        )
+    ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+
+    SET( MathLink_LIBRARIES
+		${MathLink_ML_LIBRARY}
+		)
+ENDIF(WIN32)
+
 IF(APPLE)
-  FIND_LIBRARY( MathLink_ML_LIBRARY NAMES MLi3
-    PATHS ${MathLink_LIBRARY_DIRS}
+  FIND_LIBRARY( MathLink_ML_LIBRARY
+    NAME MLi3
+    PATH ${MathLink_LIBRARY_DIR}
     )

   SET( MathLink_LIBRARIES
@@ -41,12 +90,14 @@

 IF(UNIX AND NOT APPLE)
   IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
-    FIND_LIBRARY( MathLink_ML_LIBRARY NAMES ML32i3
-      PATHS ${MathLink_LIBRARY_DIRS}
+    FIND_LIBRARY( MathLink_ML_LIBRARY
+	  NAME ML32i3
+      PATH ${MathLink_LIBRARY_DIR}
     )
   ELSE(CMAKE_SIZEOF_VOID_P EQUAL 4)
-    FIND_LIBRARY( MathLink_ML_LIBRARY NAMES ML64i3
-      PATHS ${MathLink_LIBRARY_DIRS}
+    FIND_LIBRARY( MathLink_ML_LIBRARY
+	  NAME ML64i3
+      PATH ${MathLink_LIBRARY_DIR}
     )
   ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 4)

@@ -69,5 +120,5 @@
    MAIN_DEPENDENCY ${infile})
 ENDMACRO (MathLink_ADD_TM)

-MARK_AS_ADVANCED(MathLink_INCLUDE_DIRS MathLink_LIBRARY_DIRS)
+MARK_AS_ADVANCED(MathLink_LIBRARIES MathLink_INCLUDE_DIR MathLink_LIBRARY_DIR)


Added a short documentation about HEADERS_ONLY in modules

--- CMake/mitkMacroCreateModule.cmake
+++ CMake/mitkMacroCreateModule.cmake
@@ -16,10 +16,11 @@
 #!     [TARGET_DEPENDS <list of additional dependencies>
 #!     [EXPORT_DEFINE <declspec macro name for dll exports>]
 #!     [QT_MODULE]
+#!     [HEADERS_ONLY]
 #! \endcode
 #!
 #! \param MODULE_NAME_IN The name for the new module
-#
+#! \param HEADERS_ONLY specify this if the modules just contains header files.
 ##################################################################
 MACRO(MITK_CREATE_MODULE MODULE_NAME_IN)
   MACRO_PARSE_ARGUMENTS(MODULE


ITK4: Missing include directory

ITK4: Missing include directory

--- CMake/otbIncludeDirectories.cmake
+++ CMake/otbIncludeDirectories.cmake
@@ -32,6 +32,7 @@
   ${OTB_SOURCE_DIR}/Code/UtilitiesAdapters/OssimAdapters
   ${OTB_SOURCE_DIR}/Code/UtilitiesAdapters/TinyXMLAdapters
   ${OTB_SOURCE_DIR}/Code/UtilitiesAdapters/OGRAdapters
+  ${OTB_SOURCE_DIR}/Code/UtilitiesAdapters/ITKPendingPatches
   ${OTB_SOURCE_DIR}/Code/UtilitiesAdapters
   ${OTB_SOURCE_DIR}/Code/Visu
   ${OTB_SOURCE_DIR}/Code/Visualization


Fix a typo in the summary

Fix a typo in the summary

git-svn-id: fbbf69ba8011aca0e74e1c67904b11cccbdbe66b@26907 0785d39b-7218-0410-832d-ea1e28bc413d

--- deal.II/cmake/setup_finalize.cmake
+++ deal.II/cmake/setup_finalize.cmake
@@ -105,7 +105,7 @@
   ENDIF()
 ENDIF()

-MESSAGE("Configured Features ("
+MESSAGE("\nConfigured Features ("
   "DEAL_II_FEATURE_AUTODETECTION = ${DEAL_II_FEATURE_AUTODETECTION}, "
   "DEAL_II_ALLOW_BUNDLED = ${DEAL_II_ALLOW_BUNDLED}):"
   )


Add better C++11 management

Add better C++11 management

--- common.cmake
+++ common.cmake
@@ -1,9 +1,4 @@
 cmake_minimum_required (VERSION 2.8)
-project (${PROJECT})
-enable_testing()
-
-INCLUDE (CPack)
-INCLUDE (CTest)

 option(TODO "Enable TODO items that are in progress" OFF)
 option(TESTS "Enable building of extended test code in library" ON)
@@ -11,12 +6,33 @@
 option(TOOLS "Enable building of tools" ON)
 option(TOOLS_DEV "Enable building of tools-dev" ON)

-if(CMAKE_MAKE_PROGRAM MATCHES "(msdev|devenv|nmake|MSBuild)")
+project (${PROJECT})
+enable_testing()
+
+INCLUDE (CPack)
+INCLUDE (CTest)
+
+set(CMAKE_CXX_FLAGS                "-Wall -std=c++11")
+set(CMAKE_CXX_FLAGS_DEBUG          "-O0 -g")
+set(CMAKE_CXX_FLAGS_MINSIZEREL     "-Os -DNDEBUG")
+set(CMAKE_CXX_FLAGS_RELEASE        "-O4 -DNDEBUG")
+set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
+
+# Compiler-specific C++11 activation.
+if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU")
+    execute_process(
+        COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
+    if (NOT (GCC_VERSION VERSION_GREATER 4.7 OR GCC_VERSION VERSION_EQUAL 4.7))
+        message(FATAL_ERROR "${PROJECT_NAME} requires g++ 4.7 or greater.")
+    endif ()
+elseif ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
+elseif(CMAKE_MAKE_PROGRAM MATCHES "(msdev|devenv|nmake|MSBuild)")
     add_definitions("/W2")
-else()
-    add_definitions("-Wall -Wextra")
-    set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-std=c++11 -stdlib=libc++")
-endif()
+else ()
+    message(FATAL_ERROR "Your C++ compiler does not support C++11.")
+endif ()
+

 if(TODO MATCHES "ON")
    add_definitions("-DTODO=1")
@@ -26,16 +42,10 @@

 set(LIBS ${LIBS} ${CHECK_LIBRARIES} ${PROJECT})

-include_directories( include ${ADDITIONAL_INCLUDE_DIRECTORIES} )
+include_directories( include  )

-if(TESTS MATCHES "ON")
-   message(STATUS "Extended test code functions are enabled")
-   file(GLOB PROJECT_INCLUDES "include/*.hpp" "include/tests/*.hpp" "include/*.h" "include/tests/*.h" )
-   file(GLOB PROJECT_SRC "src/*.c" "src/test/*.c" "src/*.cpp" "src/test/*.cpp")
-else()
-   file(GLOB PROJECT_INCLUDES "include/*.h" "include/*.hpp")
-   file(GLOB PROJECT_SRC "src/*.c" "src/*.cpp" )
-endif()
+file(GLOB PROJECT_INCLUDES "include/*.hpp" "include/*/*.hpp")
+file(GLOB PROJECT_SRC "src/*.cpp" "src/*/*.cpp" )

 add_library (${PROJECT} ${PROJECT_SRC} ${PROJECT_INCLUDES})


Download JUnit JARs if not found in the system

--- rcljava_common/cmake/Modules/FindJavaExtra.cmake
+++ rcljava_common/cmake/Modules/FindJavaExtra.cmake
@@ -39,9 +39,60 @@
   endif()

   find_jar(JUNIT_JAR NAMES junit4)
-  if(NOT ${JUNIT_JAR})
+  if(${JUNIT_JAR})
+    ament_export_jars(${JUNIT_JAR})
+    set(${TARGET_NAME}_jar_dependencies "${JUNIT_JAR}")
+  else()
     find_jar(JUNIT_JAR NAMES junit VERSIONS 4)
+    if(${JUNIT_JAR})
+      ament_export_jars(${JUNIT_JAR})
+    else()
+      set(junit_version "4.12")
+
+      set(junit_sha256 "59721f0805e223d84b90677887d9ff567dc534d7c502ca903c0c2b17f05c116a")
+
+      set(junit_url "http://central.maven.org/maven2/junit/junit/${junit_version}/junit-${junit_version}.jar")
+
+      set(junit_jar_path "${CMAKE_CURRENT_BINARY_DIR}/jars/junit-${junit_version}.jar")
+
+      file(DOWNLOAD ${junit_url} ${junit_jar_path} EXPECTED_HASH SHA256=${junit_sha256})
+
+      install(FILES
+        ${junit_jar_path}
+        DESTINATION
+        "share/${PROJECT_NAME}/java")
+
+      ament_export_jars("share/${PROJECT_NAME}/java/junit-${junit_version}.jar")
+
+      set(JUNIT_JAR "${junit_jar_path}")
+    endif()
   endif()
+
+  find_jar(HAMCREST_JAR NAMES hamcrest-all)
+  if(${HAMCREST_JAR})
+    ament_export_jars(${HAMCREST_JAR})
+  else()
+    set(hamcrest_version "1.3")
+
+    set(hamcrest_sha256 "4877670629ab96f34f5f90ab283125fcd9acb7e683e66319a68be6eb2cca60de")
+
+    set(hamcrest_url "http://central.maven.org/maven2/org/hamcrest/hamcrest-all/${hamcrest_version}/hamcrest-all-${hamcrest_version}.jar")
+
+    set(hamcrest_jar_path "${CMAKE_CURRENT_BINARY_DIR}/jars/hamcrest-all-${hamcrest_version}.jar")
+
+    file(DOWNLOAD ${hamcrest_url} ${hamcrest_jar_path} EXPECTED_HASH SHA256=${hamcrest_sha256})
+
+    install(FILES
+      ${hamcrest_jar_path}
+      DESTINATION
+      "share/${PROJECT_NAME}/java")
+
+    ament_export_jars("share/${PROJECT_NAME}/java/hamcrest-all-${hamcrest_version}.jar")
+
+    set(HAMCREST_JAR "${hamcrest_jar_path}")
+  endif()
+
+  set(${TARGET_NAME}_jar_dependencies "${JUNIT_JAR}${SEPARATOR}${HAMCREST_JAR}")

   add_jar("${TARGET_NAME}_jar"
     "${_source_files}"
@@ -50,6 +101,7 @@
     INCLUDE_JARS
     "${_add_junit_tests_INCLUDE_JARS}"
     "${JUNIT_JAR}"
+    "${HAMCREST_JAR}"
   )

   get_property(_jar_test_file
@@ -57,18 +109,18 @@
     PROPERTY "JAR_FILE"
   )

-  set(${TARGET_NAME}_jar_dependencies "${JUNIT_JAR}${SEPARATOR}${_jar_test_file}")
+  set(${TARGET_NAME}_jar_dependencies "${${TARGET_NAME}_jar_dependencies}${SEPARATOR}${_jar_test_file}")
   foreach(_jar_dep ${_add_junit_tests_INCLUDE_JARS})
     set(${TARGET_NAME}_jar_dependencies "${${TARGET_NAME}_jar_dependencies}${SEPARATOR}${_jar_dep}")
   endforeach()

   string(REPLACE ";" ${SEPARATOR} _library_paths "${_add_junit_tests_LIBRARY_PATHS}")

-  add_test(NAME ${TARGET_NAME}
+  ament_add_test(
+    ${TARGET_NAME}
+    GENERATE_RESULT_FOR_RETURN_CODE_ZERO
     COMMAND ${Java_JAVA_EXECUTABLE}
     ${JVMARGS} -classpath ${${TARGET_NAME}_jar_dependencies} -Djava.library.path=${_library_paths}
     org.junit.runner.JUnitCore ${_add_junit_tests_TESTS}
   )
-
-#  add_dependencies(${TARGET_NAME} ${TARGET_NAME}_jar)
 endfunction()


Update version number

Update version number

--- CMake/version.cmake
+++ CMake/version.cmake
@@ -1,3 +1,3 @@
 set (VV_VERSION_MAJOR 1)
 set (VV_VERSION_MINOR 0)
-set (VV_VERSION_PATCH 4)
+set (VV_VERSION_PATCH 5)


Finding lapacke more robustly

Finding lapacke more robustly

Former-commit-id: 61ee8e567e57b8ef2b63d4357341a21e36d0b8ad

--- cmake-modules/FindLAPACKE.cmake
+++ cmake-modules/FindLAPACKE.cmake
@@ -94,9 +94,7 @@
 if (NOT TARGET lapacke)
     if (TARGET OpenBLAS)
         message(STATUS "Searching for Lapacke in OpenBLAS")
-        if(LAPACKE_OPENBLAS_LIBRARY AND LAPACKE_OPENBLAS_INCLUDE)
-            CheckLapackeCompiles("OpenBLAS" "" "" "" "" "OpenBLAS")
-        endif()
+        CheckLapackeCompiles("OpenBLAS" "" "" "" "" "OpenBLAS")
         if(LAPACKE_COMPILES_OpenBLAS)
             add_library(lapacke INTERFACE)
             target_link_libraries(lapacke INTERFACE OpenBLAS)
@@ -138,17 +136,34 @@
                 PATH_SUFFIXES
                     OpenBLAS openblas openblas/lib OpenBLAS/lib lapack lapack/lib blas blas/lib
                 )
-        if(LAPACKE_INCLUDE_DIR OR LAPACKE_LIBRARY)
+        if(LAPACKE_INCLUDE_DIR AND LAPACKE_LIBRARY)
             CheckLapackeCompiles("SYSTEM" " "   " "
                     "${LAPACKE_LIBRARY}"
                     "${LAPACKE_INCLUDE_DIR}"
                     "lapack"
                     )
+        if(NOT LAPACKE_COMPILES_SYSTEM AND LAPACKE_INCLUDE_DIR)
+            CheckLapackeCompiles("SYSTEM" " "   " "
+                    ""
+                    "${LAPACKE_INCLUDE_DIR}"
+                    "lapack"
+                    )
+        if(NOT LAPACKE_COMPILES_SYSTEM AND LAPACKE_LIBRARY)
+            CheckLapackeCompiles("SYSTEM" " "   " "
+                    "${LAPACKE_LIBRARY}"
+                    ""
+                    "lapack"
+                    )
         endif()
         if(LAPACKE_COMPILES_SYSTEM)
             add_library(lapacke INTERFACE IMPORTED)
-            target_link_libraries(lapacke INTERFACE ${LAPACKE_LIBRARY} lapack)
-            target_include_directories(lapacke SYSTEM INTERFACE ${LAPACKE_INCLUDE_DIR})
+            if(LAPACKE_LIBRARY)
+                target_link_libraries(lapacke INTERFACE ${LAPACKE_LIBRARY} lapack)
+            endif()
+            if(LAPACKE_INCLUDE_DIR)
+                target_include_directories(lapacke SYSTEM INTERFACE ${LAPACKE_INCLUDE_DIR})
+            endif()
+            target_link_libraries(lapacke INTERFACE lapack)
             message(STATUS "Searching for Lapacke in system - Success: ${LAPACKE_LIBRARY}")
         else()
             message(STATUS "Searching for Lapacke in system - failed")


fix: add missing -DCURLSTATICLIB for system static Curl on Windows (#9345)

We need to define CURL_STATICLIB when we use static Curl on Windows.
If we don't define CURL_STATICLIB for static Curl on Windows,
google-cloud-cpp refers wrong symbols.

For example, https://github.com/apache/arrow/pull/13404 encountered
this problem:

https://github.com/apache/arrow/runs/7004628336?check_suite_focus=true#step:11:751

    C:/rtools40/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.3.0/../../../../i686-w64-mingw32/bin/ld.exe:
    ../windows/arrow-8.0.0.9000/lib/i386/libarrow_bundled_dependencies.a(curl_wrappers.cc.obj):(.text+0x2):
    undefined reference to `_imp__curl_global_cleanup'

libarrow_bundled_dependencies.a includes libgoogle_cloud_cpp*.a and
curl_wrappers.cc.obj in the above log is a file in google-cloud-cpp.

I confirmed that this change solves this problem in
https://github.com/apache/arrow/pull/13404 .

--- cmake/FindCurlWithTargets.cmake
+++ cmake/FindCurlWithTargets.cmake
@@ -68,6 +68,10 @@
                 TARGET CURL::libcurl
                 APPEND
                 PROPERTY INTERFACE_LINK_LIBRARIES crypt32 wsock32 ws2_32)
+            set_property(
+                TARGET CURL::libcurl
+                APPEND
+                PROPERTY INTERFACE_COMPILE_DEFINITIONS "CURL_STATICLIB")
         endif ()
         if (APPLE)
             set_property(


Add toolchain verification after directory locking [skip ci]

--- cmake/modules/hunter_lock.cmake
+++ cmake/modules/hunter_lock.cmake
@@ -2,18 +2,24 @@
 # All rights reserved.

 include(hunter_fatal_error)
+include(hunter_status_debug)
 include(hunter_test_string_not_empty)
+include(hunter_verify_toolchain_info)

 function(hunter_lock)
   # sanity check
+  hunter_test_string_not_empty("${HUNTER_INSTALL_TAG}")
+  hunter_test_string_not_empty("${HUNTER_PACKAGE_NAME}")
   hunter_test_string_not_empty("${HUNTER_ROOT}")
-  hunter_test_string_not_empty("${HUNTER_PACKAGE_NAME}")
-  hunter_test_string_not_empty("${HUNTER_INSTALL_TAG}")
+  hunter_test_string_not_empty("${PROJECT_BINARY_DIR}")

   if(HUNTER_SKIP_LOCK)
+    # Building internal project. Already locked, toolchain verified.
     hunter_status_debug("Lock skipped")
     return()
   endif()
+
+  hunter_status_debug("lock directory")

   set(lock_file "${HUNTER_ROOT}/Base/hunter-build.lock")
   if(EXISTS "${lock_file}")
@@ -42,4 +48,6 @@
       "    Install tag: ${HUNTER_INSTALL_TAG}\n"
       "    Build start at: ${time_now}"
   )
+
+  hunter_verify_toolchain_info()
 endfunction()


Fix OpenMP flags not being passed to linker

--- common/cmake/CommonHeader.cmake
+++ common/cmake/CommonHeader.cmake
@@ -33,7 +33,9 @@

 find_package (OpenMP)
 if (OPENMP_FOUND)
-	add_compile_options(${OpenMP_CXX_FLAGS})
+	list (APPEND CMAKE_C_FLAGS       ${OpenMP_C_FLAGS})
+	list (APPEND CMAKE_CXX_FLAGS     ${OpenMP_CXX_FLAGS})
+	list (APPEND CMAKE_FORTRAN_FLAGS ${OpenMP_Fortran_FLAGS})
 endif (OPENMP_FOUND)

 if (MVSC)


COMP: Update paraview with build fixes

COMP: Update paraview with build fixes

--- Superbuild/versions.cmake
+++ Superbuild/versions.cmake
@@ -28,7 +28,7 @@

 add_revision(paraview
   GIT_REPOSITORY git://github.com/gcasey/ParaView.git
-  GIT_TAG c7e6a75ddbe0eddb338182b34926d160f50a0cac)
+  GIT_TAG 983cebbb5adc27cffb941add14052850017aa483)

 add_revision(veloview
     SOURCE_DIR ${CMAKE_SOURCE_DIR}/..


Fixed virtualenv profile check

Fixed virtualenv profile check

--- ThirdPartyLibraries.cmake
+++ ThirdPartyLibraries.cmake
@@ -2521,7 +2521,7 @@
     INSTALL_COMMAND
         cd ${VIRTUALENV_PREFIX} && ./bin/virtualenv env
     BUILD_IN_SOURCE 1)
-  set(LINE "source ${PROJECT_SOURCE_DIR}/.profile")
+  set(LINE "source ${CMAKE_CURRENT_LIST_DIR}/.profile")
   add_custom_command(TARGET ${VIRTUALENV_TARGET} POST_BUILD
     COMMAND
         grep -q "${LINE}" $ENV{HOME}/.profile && exit 0 ||


dia-sdk: fix for VS2013

dia-sdk: fix for VS2013

No mistake: VS2013 is VC12

Change-Id: Idae8abaa3e424261f551a48546e7e0c72f38744f
Reviewed-on: http://gerrit.aldebaran.lan/58078
Reviewed-by: dmerejkowsky <1e4b13000fa8777df4cefd2fd8215187e3deb062@aldebaran-robotics.com>
Tested-by: dmerejkowsky <1e4b13000fa8777df4cefd2fd8215187e3deb062@aldebaran-robotics.com>

--- cmake/qibuild/modules/dia_sdk-config.cmake
+++ cmake/qibuild/modules/dia_sdk-config.cmake
@@ -2,10 +2,17 @@

 clean(DIA_SDK)

-#FIXME: fix for vs2013
 # Path is c:\Program Files (x86)\Microsoft Visual Studio 10\Common7\Tools,
 # we want c:\Program Files (x86)\Microsoft Visual Studio 10\DIA SDK
-set(_comntools_path "$ENV{VS100COMNTOOLS}")
+# We cannot use VSINSTALLDIR because it's not set when using
+# 'Visual Studio ...' generators
+if(MSVC10)
+  set(_comntools_path "$ENV{VS100COMNTOOLS}")
+endif()
+if(MSVC12)
+  set(_comntools_path "$ENV{VS120COMNTOOLS}")
+endif()
+
 get_filename_component(_visual_studio_path "${_comntools_path}" DIRECTORY)
 get_filename_component(_visual_studio_path "${_visual_studio_path}" DIRECTORY)
 set(_dia_sdk_dir "${_visual_studio_path}/DIA SDK")


cmake: jsoncpp: fix include directory

cmake: jsoncpp: fix include directory

Avoid file collision with the package json-c.

Change-Id: I919244d825c6993e5cf9f3176cac8a63bf25b6c5
Reviewed-on: http://gerrit.aldebaran.lan:8080/7523
Reviewed-by: smartin <edaf33f3e53483e687d304aa81a03bb5a17b9ddf@aldebaran-robotics.com>
Tested-by: smartin <edaf33f3e53483e687d304aa81a03bb5a17b9ddf@aldebaran-robotics.com>

--- cmake/qibuild/modules/jsoncpp-config.cmake
+++ cmake/qibuild/modules/jsoncpp-config.cmake
@@ -3,6 +3,6 @@
 ## found in the COPYING file.

 clean(JSONCPP)
-fpath(JSONCPP json/json.h)
+fpath(JSONCPP jsoncpp/json/json.h)
 flib(JSONCPP jsoncpp)
 export_lib(JSONCPP)


[added] all include dirs to AddFortranTest

--- src/t123/cmake/AddFortranTest.cmake
+++ src/t123/cmake/AddFortranTest.cmake
@@ -31,6 +31,12 @@
     STRING(STRIP ${ADD_FORTRAN_TEST_INCLUDE_DIR} ADD_FORTRAN_TEST_INCLUDE_DIR)
     SET(includes -I${ADD_FORTRAN_TEST_INCLUDE_DIR} )
   ENDIF()
+  # Add locals.
+  GET_PROPERTY( dirs DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES )
+  FOREACH( dir ${dirs} )
+    STRING(STRIP ${dir} dir)
+    SET(includes "${includes} -I${dir}" )
+  ENDFOREACH()
   SET( copied_file "${CMAKE_CURRENT_BINARY_DIR}/${test_file}" )

   # This is a tricky way to deal with endsubroutine;endsubroutine being


- issue 2128: fix variable not expanded

- issue 2128: fix variable not expanded

--- copasi/bindings/perl/patch-swig-file.cmake
+++ copasi/bindings/perl/patch-swig-file.cmake
@@ -4,11 +4,12 @@
 # All rights reserved.

+
 if (NOT FILENAME OR NOT EXISTS ${FILENAME})
   message(FATAL_ERROR "Please specify the filename to the file to patch")
 endif()

-get_filename_component(NAME_ONLY FILENAME NAME)
+get_filename_component(NAME_ONLY ${FILENAME} NAME)
 file(READ "${FILENAME}" SOURCECODE)

 file(WRITE  "${FILENAME}" "// patched ${NAME_ONLY}\n")


fix(storage): disable MSVC C++17 deprecation warnings (#9143)

I think we may need to reimplement these functions to convert from
UTF-8 to UTF-16 (or is it UTF-32?).  For now, just disable the
deprecation warnings.

--- google/cloud/storage/google_cloud_cpp_storage.cmake
+++ google/cloud/storage/google_cloud_cpp_storage.cmake
@@ -266,6 +266,14 @@
         PROPERTY COMPILE_FLAGS "-Wno-maybe-uninitialized")
 endif ()

+if (MSVC)
+    set_property(
+        SOURCE internal/policy_document_request.cc
+        APPEND_STRING
+        PROPERTY COMPILE_FLAGS
+                 "-D_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING")
+endif ()
+
 set_target_properties(
     google_cloud_cpp_storage
     PROPERTIES EXPORT_NAME "google-cloud-cpp::storage"


Change name of version variable for substitution.

To avoid confusion, CVF_PACKAGE_VERSION is used instead
of PACKAGE_VERSION for substitution into the custom
ConfigVersion.cmake.in files.

--- PackageConfig.cmake
+++ PackageConfig.cmake
@@ -16,7 +16,7 @@
 #     to remove from the list of exported libraries
 #   ${UPPER_PROJECT_NAME}_CONFIG_VERSION_IN - If set, use this template in
 #     preference to CMake's BasicConfigVersion-SameMajorVersion.cmake.in.
-#     The PACKAGE_VERSION variable is set before performing the instantiation.
+#     The CVF_PACKAGE_VERSION variable is set before performing the instantiation.
 #
 # Output variables
 #   ${UPPER_PROJECT_NAME}_FOUND - Was the project and all of the specified
@@ -388,7 +388,7 @@

 # create and install ProjectConfigVersion.cmake
 if(${UPPER_PROJECT_NAME}_CONFIG_VERSION_IN)
-  set(PACKAGE_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}")
+  set(CVF_PACKAGE_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}")
   configure_file("${${UPPER_PROJECT_NAME}_CONFIG_VERSION_IN}" "${PROJECT_BINARY_DIR}/pkg/${PROJECT_NAME}ConfigVersion.cmake" @ONLY)
 else()
   write_basic_package_version_file(


Update UseBoost.cmake

Update UseBoost.cmake

--- Superbuild/UseBoost.cmake
+++ Superbuild/UseBoost.cmake
@@ -34,18 +34,20 @@
     if(${lib} MATCHES "boost_python-mt")
       if(WIN32)
 		    set(FULL_LIB_NAME_RELEASE "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}boost_python${USER_PYTHON_VERSION_MAJOR}${USER_PYTHON_VERSION_MINOR}-mt${CMAKE_STATIC_LIBRARY_SUFFIX}")
+        set(FULL_LIB_NAME_DEBUG "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}boost_python${USER_PYTHON_VERSION_MAJOR}${USER_PYTHON_VERSION_MINOR}-mt${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
       else()
         if (${USER_PYTHON_VERSION} VERSION_GREATER "3.7")
           set(FULL_LIB_NAME_RELEASE "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}boost_python${USER_PYTHON_VERSION_MAJOR}${USER_PYTHON_VERSION_MINOR}-mt${CMAKE_STATIC_LIBRARY_SUFFIX}")
+          set(FULL_LIB_NAME_DEBUG "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}boost_python${USER_PYTHON_VERSION_MAJOR}${USER_PYTHON_VERSION_MINOR}-mt${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
         else()
           set(FULL_LIB_NAME_RELEASE "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}boost_python3-mt${CMAKE_STATIC_LIBRARY_SUFFIX}")
+          set(FULL_LIB_NAME_DEBUG "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}boost_python3-mt${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
         endif()
       endif()
 	  else()
 		  set(FULL_LIB_NAME_RELEASE "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}${lib}${CMAKE_STATIC_LIBRARY_SUFFIX}")
+      set(FULL_LIB_NAME_DEBUG "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}${lib}${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
 	  endif()
-
-    set(FULL_LIB_NAME_DEBUG "${SCI_BOOST_LIBRARY_DIR}/${boost_LIB_PREFIX}${lib}${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}")
   endif()

   message(STATUS "Configure Boost library ${lib}")


COMP: Correcting version of ANTs because latest development version is unstable with new ITK

--- SuperBuild/FindExternalTools.cmake
+++ SuperBuild/FindExternalTools.cmake
@@ -102,7 +102,7 @@
 # VTK
 set(RecompileVTK OFF)
 set(VTK_DEPEND "")
-if(COMPILE_EXTERNAL_dtiprocessTK OR COMPILE_EXTERNAL_AtlasWerks OR COMPILE_EXTERNAL_BRAINS OR COMPILE_EXTERNAL_ANTS OR COMPILE_EXTERNAL_NIRALUtilities)
+if(COMPILE_EXTERNAL_dtiprocessTK OR COMPILE_EXTERNAL_AtlasWerks OR COMPILE_EXTERNAL_BRAINS OR COMPILE_EXTERNAL_NIRALUtilities)
   find_package(VTK QUIET)
   if (VTK_FOUND)
     set(VTK_USE_QVTK TRUE)
@@ -486,7 +486,7 @@
   # SVN_REPOSITORY "http://advants.svn.sourceforge.net/svnroot/advants/trunk"
   # SVN_REVISION -r 1685 # 12/13/2012
   GIT_REPOSITORY "${git_protocol}://github.com/stnava/ANTs.git"
-  GIT_TAG 0d8c4939b38199e1ef2bf691189bd0991563ff7c # 2013-07-22 Update to fix comp error due to ITK # "49a8e5911cc5cbd180f15c63ee8c545ebd3828f9" # 2013-04-11 Prevent Boost from compiling libs
+  GIT_TAG 6d082e02310077d17e84b6c3c9126759a96b87bc # 2013-05-02 Update to fix comp error due to new ITK # "49a8e5911cc5cbd180f15c63ee8c545ebd3828f9" # 2013-04-11 Prevent Boost from compiling libs
   )
 set( CMAKE_ExtraARGS
   -DBUILD_TESTING:BOOL=OFF


fix ctest -D Foo with MSVC 2008

fix ctest -D Foo with MSVC 2008

--- cmake/EigenConfigureTesting.cmake
+++ cmake/EigenConfigureTesting.cmake
@@ -30,7 +30,7 @@
   if(MSVC_VERSION EQUAL 1600) # MSVC 2010
     set(EIGEN_MAKECOMMAND_PLACEHOLDER "${CMAKE_MAKE_PROGRAM_SAVE} buildtests.vcxproj /p:Configuration=\${CTEST_CONFIGURATION_TYPE} \n# ")
   else() # MSVC 2008 (TODO check MSVC 2005)
-    set(EIGEN_MAKECOMMAND_PLACEHOLDER "${CMAKE_MAKE_PROGRAM_SAVE} /project buildtests")
+    set(EIGEN_MAKECOMMAND_PLACEHOLDER "${CMAKE_MAKE_PROGRAM_SAVE} Eigen.sln /build \"Release\" /project buildtests \n# ")
   endif()
 else()
   # for make and nmake


CELIX-335: Cleanup of unneeded commands/comments in Packaging.cmake

--- cmake/cmake_celix/Packaging.cmake
+++ cmake/cmake_celix/Packaging.cmake
@@ -71,8 +71,6 @@
         #This is simpeler than using the <current>:<revision>:<age> approach of libtool
         set_property(TARGET ${TARGET} PROPERTY VERSION "${VERSION}")
         set_property(TARGET ${TARGET} PROPERTY SOVERSION ${MAJOR})
-        #set_property(TARGET ${TARGET} PROPERTY VERSION "${VERSION}")
-        #message("target '${TARGET}' with provided version '${VERSION}' has version parts: '${MAJOR}' '${MINOR}' '${PATCH}'")
     else ()
         message(WARNING "set_library_version: Cannot set version info TARGET and/or VERSION not provided")
     endif ()
@@ -151,7 +149,6 @@
         add_library(${BUNDLE_TARGET_NAME} SHARED ${BUNDLE_SOURCES})
         set_library_version(${BUNDLE_TARGET_NAME} ${BUNDLE_VERSION})
         set_target_properties(${BUNDLE_TARGET_NAME} PROPERTIES "BUNDLE_TARGET_IS_LIB" TRUE)
-        add_dependencies(bundles ${BUNDLE_TARGET_NAME})
     else()
         add_custom_target(${BUNDLE_TARGET_NAME})
     endif()


Set the CXX_STANDARD_STRING to 201703L on Windows

--- cmake/modules/CheckCompiler.cmake
+++ cmake/modules/CheckCompiler.cmake
@@ -115,7 +115,7 @@
 # so we check the value of __cplusplus.
 # This default value can be overridden by specifying one at the prompt.
 if (MSVC)
-   set(CXX_STANDARD_STRING 2011)
+   set(CXX_STANDARD_STRING "201703L")
 else()
    execute_process(COMMAND echo __cplusplus
                    COMMAND ${CMAKE_CXX_COMPILER} -E -x c++ -


[cxxmodules] Resurrect cxx modules nightly builds.

When we build with -Dcxxmodules=On we should set the cpp_module otherwise
we get an incomplete modulemap.

--- cmake/modules/RootNewMacros.cmake
+++ cmake/modules/RootNewMacros.cmake
@@ -340,8 +340,8 @@
       set(newargs -s ${library_output_dir}/${library_name})
       set(pcm_name ${library_output_dir}/${libprefix}${ARG_MODULE}_rdict.pcm)
       set(rootmap_name ${library_output_dir}/${libprefix}${ARG_MODULE}.rootmap)
+      set(cpp_module ${ARG_MODULE})
       if(runtime_cxxmodules)
-        set(cpp_module ${ARG_MODULE})
         set(cpp_module_file ${library_output_dir}/${cpp_module}.pcm)
       endif()
     endif()


disabled a couple of  vc-sse tests for mac107

--- test/CTestCustom.cmake
+++ test/CTestCustom.cmake
@@ -20,8 +20,8 @@
   set(CTEST_CUSTOM_TESTS_IGNORE ${CTEST_CUSTOM_TESTS_IGNORE}
       vc-gather_VC_USE_BSF_GATHERS_sse
       vc-gather_VC_USE_SET_GATHERS_sse
-      vc-load-sse
-      vc-math-sse
+      vc-load_sse
+      vc-math_sse
       vc-math_VC_LOG_ILP2_sse
       vc-math_VC_LOG_ILP_sse
       vc-scalaraccess_sse


Fixed typo

Fixed typo

--- cmake-modules/FindProtobuf.cmake
+++ cmake-modules/FindProtobuf.cmake
@@ -48,7 +48,7 @@
 find_package_handle_standard_args(Protobuf DEFAULT_MSG
                                   Protobuf_LIBRARY Protobuf_INCLUDE_DIR)

-if(NOT Protobuf)
+if(NOT Protobuf_FOUND)
   return()
 endif()


CMake: Fixed `/debug:fastlink` on Windows.

A previous commit attempted to enable this option, but it was not
actually being used by the linker. This patch correctly adds the option
to each linker flag variable for static/shared libraries, modules, and
executables, and only for the debug configuration. This results in much
faster link times.

Also, the `/zc:inline` option was removed, as it is only relevant in
optimized builds (i.e. release configurations).

Review: https://reviews.apache.org/r/59155/

--- cmake/CompilationConfigure.cmake
+++ cmake/CompilationConfigure.cmake
@@ -74,11 +74,6 @@
         echo "ERROR: Environment variable 'PreferredToolArchitecture' must be set to 'x64', see MESOS-6720 for details" 1>&2 && EXIT 1
       )
     )
-
-  # Speed up incremental linking for the VS compiler/linker, for more info, see:
-  # https://blogs.msdn.microsoft.com/vcblog/2014/11/12/speeding-up-the-incremental-developer-build-scenario/
-  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:inline")
-  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /debug:FASTLINK")
 endif (WIN32)

@@ -239,6 +234,12 @@
 # WINDOWS CONFIGURATION.
 ########################
 if (WIN32)
+  # Speed up incremental linking for the VS compiler/linker, for more info, see:
+  # https://blogs.msdn.microsoft.com/vcblog/2014/11/12/speeding-up-the-incremental-developer-build-scenario/
+  foreach(t EXE SHARED STATIC MODULE)
+    string(APPEND CMAKE_${t}_LINKER_FLAGS_DEBUG " /debug:fastlink")
+  endforeach()
+
   # COFF/PE and friends are somewhat limited in the number of sections they
   # allow for an object file. We use this to avoid those problems.
   set(CMAKE_CXX_FLAGS


Build system: emergency temporary response to current wxwidgets build issues

I have temporarily disabled the wxwidgets device and library because
I cannot get those to build on Linux when the wxwidgets sofware version is
either 2.8.12 or 3.0.2.

Until these build issues are addressed, those who want to test
wxwidgets builds on any platform will have to specify
-DPLD_wxwidgets=ON.

--- cmake/modules/drivers-init.cmake
+++ cmake/modules/drivers-init.cmake
@@ -219,7 +219,7 @@
   "tk:tk:ON:I:OFF"
   "tkwin:tkwin:ON:E:OFF"
   "wingcc:wingcc:ON:I:OFF"
-  "wxwidgets:wxwidgets:ON:I:OFF"
+  "wxwidgets:wxwidgets:OFF:I:OFF"
   "wxpng:wxwidgets:OFF:F:ON"
   "xfig:xfig:ON:F:ON"
   "xwin:xwin:ON:I:OFF"