Fix aarch64/arm detection

Fix aarch64/arm detection

--- CMake/unix_config.cmake
+++ CMake/unix_config.cmake
@@ -7,11 +7,11 @@
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-switch -Wno-multichar -Wsequence-point -Wformat -Wformat-security")

     execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpmachine OUTPUT_VARIABLE MACHINE)
-    if(${MACHINE} MATCHES "arm-linux-gnueabihf")
+    if(${MACHINE} MATCHES "arm-*")
         set(CMAKE_C_FLAGS   "${CMAKE_C_FLAGS}   -mfpu=neon -mfloat-abi=hard -ftree-vectorize -latomic")
         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpu=neon -mfloat-abi=hard -ftree-vectorize -latomic")
         add_definitions(-DRASPBERRY_PI)
-    elseif(${MACHINE} MATCHES "aarch64-linux-gnu")
+    elseif(${MACHINE} MATCHES "aarch64-*")
         set(CMAKE_C_FLAGS   "${CMAKE_C_FLAGS}   -mstrict-align -ftree-vectorize")
         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mstrict-align -ftree-vectorize")
     elseif(${MACHINE} MATCHES "powerpc64(le)?-linux-gnu")
@@ -21,7 +21,7 @@
         set(CMAKE_C_FLAGS   "${CMAKE_C_FLAGS}   -mssse3")
         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mssse3")
         set(LRS_TRY_USE_AVX true)
-    endif(${MACHINE} MATCHES "arm-linux-gnueabihf")
+    endif(${MACHINE} MATCHES "arm-*")

     if(BUILD_WITH_OPENMP)
         find_package(OpenMP REQUIRED)


Split off 7.12.108

Split off 7.12.108

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

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


Nagios Monitoring 5.0.6 Release Candidate 1

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

--- version.cmake
+++ version.cmake
@@ -3,7 +3,7 @@
 ###
 set ( HPCC_NM_MAJOR 5 )
 set ( HPCC_NM_MINOR 0 )
-set ( HPCC_NM_POINT 4 )
-set ( HPCC_NM_MATURITY "release" )
+set ( HPCC_NM_POINT 6 )
+set ( HPCC_NM_MATURITY "rc" )
 set ( HPCC_NM_SEQUENCE 1 )
 ###


CMake: Bump verison

CMake: Bump verison

--- version.cmake
+++ version.cmake
@@ -2,9 +2,9 @@
 	set(PROJECT_NAME "mGBA")
 endif()
 set(LIB_VERSION_MAJOR 0)
-set(LIB_VERSION_MINOR 10)
+set(LIB_VERSION_MINOR 11)
 set(LIB_VERSION_PATCH 0)
-set(LIB_VERSION_ABI 0.10)
+set(LIB_VERSION_ABI 0.11)
 set(LIB_VERSION_STRING ${LIB_VERSION_MAJOR}.${LIB_VERSION_MINOR}.${LIB_VERSION_PATCH})
 set(SUMMARY "${PROJECT_NAME} Game Boy Advance Emulator")


Fix: 2021-10-29

Fix: 2021-10-29

--- xbinary.cmake
+++ xbinary.cmake
@@ -1,3 +1,4 @@
+# TODO guard
 include_directories(${CMAKE_CURRENT_LIST_DIR})

 set(XBINARY_SOURCES


Fix dependencies in AddPBJTarget.

Fix dependencies in AddPBJTarget.

Fix the AddPBJTarget to specify the correct command as generating the
pbj.cpp file. This makes the dependencies work properly so that the
correct commands are run for pbj files. This fixes the longstanding
problem where pbj files appeared to sometimes make to need
reprocessing if you re-ran make without changing anything. Also
removes the --delay command from the pbj calls as they are no longer
needed.

--- build/modules/AddPBJTarget.cmake
+++ build/modules/AddPBJTarget.cmake
@@ -122,7 +122,7 @@
       SET(PBJ_PBJFPP_FILES ${PBJ_PBJFPP_FILES} ${PBJ_PBJFPP_FILE})
       SET(PBJ_OUTPUTS ${PBJ_H_FILE} ${PBJ_CPP_FILE} ${PBJ_PBJHPP_FILE} ${PBJ_PBJN_FILE} ${PBJ_PBJFPP_FILE})
       SET(PBJ_ALL_OUTPUTS ${PBJ_ALL_OUTPUTS} ${PBJ_OUTPUTS})
-      ADD_CUSTOM_COMMAND(OUTPUT ${PBJ_H_FILE} ${PBJ_CPP_FILE} ${PBJ_PBJN_FILE} ${PBJ_PBJFPP_FILE}
+      ADD_CUSTOM_COMMAND(OUTPUT ${PBJ_H_FILE} ${PBJ_CPP_FILE} ${PBJ_PBJFPP_FILE}
                          COMMAND ${PROTOCOLBUFFERS_COMPILER} -I${PBJ_OUTPUTDIR} ${PBJ_OPTIONS} ${PBJ_PROTO_FILE}
                          DEPENDS ${PBJ_PROTO_FILE} ${PBJ_DEPENDS}
                          COMMENT "Building ${PBJ_PROTO_FILE} -> ${PBJ_H_FILE} ${PBJ_CPP_FILE}")
@@ -181,13 +181,13 @@
     SET(INTERNAL_GENERATED_CPP_FILES ${INTERNAL_GENERATED_CPP_FILES} ${PBJ_CPP_FILE} ${PBJ_PBJN_FILE})

     IF(PBJ_EXPORTMACRO)
-      ADD_CUSTOM_COMMAND(OUTPUT ${PBJ_PBJHPP_FILE} ${PBJ_PROTO_FILE} ${PBJ_PBJCS_FILE} ${PBJ_PBJFPP_FILE}
-                       COMMAND ${PBJ_RUNABLE} ${PBJ_PBJ_FILE} ${PBJ_PROTO_FILE}  --delay --hpp=${PBJ_PBJHPP_FILE} --cpp=${PBJ_PBJN_FILE} --fpp=${PBJ_PBJFPP_FILE} --export_macro=${PBJ_EXPORTMACRO} ${CS_COMMAND} ${PBJ_NAMESPACE} ${PBJ_PREFIX}
+      ADD_CUSTOM_COMMAND(OUTPUT ${PBJ_PBJHPP_FILE} ${PBJ_PROTO_FILE} ${PBJ_PBJCS_FILE} ${PBJ_PBJFPP_FILE} ${PBJ_PBJN_FILE}
+                       COMMAND ${PBJ_RUNABLE} ${PBJ_PBJ_FILE} ${PBJ_PROTO_FILE}  --hpp=${PBJ_PBJHPP_FILE} --cpp=${PBJ_PBJN_FILE} --fpp=${PBJ_PBJFPP_FILE} --export_macro=${PBJ_EXPORTMACRO} ${CS_COMMAND} ${PBJ_NAMESPACE} ${PBJ_PREFIX}
                        DEPENDS ${PBJ_PBJ_FILE} ${PBJ_DEPENDS} ${PBJ_BINARY}
                        COMMENT "Building ${PBJ_PBJ_FILE} -> ${PBJ_PBJHPP_FILE} ${PBJ_PROTO_FILE} ${PBJ_PBJCS_FILE} ${PBJ_PBJN_FILE} ${PBJ_PBJFPP_FILE}")
     ELSE()
-      ADD_CUSTOM_COMMAND(OUTPUT ${PBJ_PBJHPP_FILE} ${PBJ_PROTO_FILE} ${PBJ_PBJCS_FILE} ${PBJ_PBJFPP_FILE}
-                       COMMAND ${PBJ_RUNABLE} ${PBJ_PBJ_FILE} ${PBJ_PROTO_FILE}  --delay --hpp=${PBJ_PBJHPP_FILE} --cpp=${PBJ_PBJN_FILE} --fpp=${PBJ_PBJFPP_FILE}  ${CS_COMMAND} ${PBJ_NAMESPACE} ${PBJ_PREFIX}
+      ADD_CUSTOM_COMMAND(OUTPUT ${PBJ_PBJHPP_FILE} ${PBJ_PROTO_FILE} ${PBJ_PBJCS_FILE} ${PBJ_PBJFPP_FILE} ${PBJ_PBJN_FILE}
+                       COMMAND ${PBJ_RUNABLE} ${PBJ_PBJ_FILE} ${PBJ_PROTO_FILE}  --hpp=${PBJ_PBJHPP_FILE} --cpp=${PBJ_PBJN_FILE} --fpp=${PBJ_PBJFPP_FILE}  ${CS_COMMAND} ${PBJ_NAMESPACE} ${PBJ_PREFIX}
                        DEPENDS ${PBJ_PBJ_FILE} ${PBJ_DEPENDS} ${PBJ_BINARY}
                        COMMENT "Building ${PBJ_PBJ_FILE} -> ${PBJ_PBJHPP_FILE} ${PBJ_PROTO_FILE} ${PBJ_PBJCS_FILE} ${PBJ_PBJN_FILE} ${PBJ_PBJFPP_FILE}")


Build for armv7, arm64

Build for armv7, arm64

--- build/shared/Toolchain_ios.cmake
+++ build/shared/Toolchain_ios.cmake
@@ -148,7 +148,7 @@
 # set the architecture for iOS
 # NOTE: Currently both ARCHS_STANDARD_32_BIT and ARCHS_UNIVERSAL_IPHONE_OS set armv7 only, so set both manually
 if (${IOS_PLATFORM} STREQUAL "OS")
-	set (IOS_ARCH armv6 armv7)
+	set (IOS_ARCH armv7 arm64)
 else (${IOS_PLATFORM} STREQUAL "OS")
 	set (IOS_ARCH i386)
 endif (${IOS_PLATFORM} STREQUAL "OS")


Give FindNETGEN a path hint so that it ACTUALLY works with the standard Fedora 28 netgen package.

--- cMake/FindNETGEN.cmake
+++ cMake/FindNETGEN.cmake
@@ -15,7 +15,7 @@

 find_package(Netgen CONFIG)
 if(Netgen_FOUND)
-  set(NGLIB_INCLUDE_DIR ${NETGEN_INCLUDE_DIR} PATH_SUFFIXES netgen-mesher)
+  set(NGLIB_INCLUDE_DIR ${NETGEN_INCLUDE_DIR})
   set(NGLIB_LIBRARIES nglib)
   set(NETGEN_DEFINITIONS -DNO_PARALLEL_THREADS -DOCCGEOMETRY)
   # for external smesh only the following two variables are needed:
@@ -82,18 +82,18 @@
           ENDIF(NOT NETGENDATA)
       ENDIF()

-      FIND_PATH(NGLIB_INCLUDE_DIR NAMES nglib.h PATHS ${NETGEN_INCLUDEDIR} /usr/include)
-      FIND_LIBRARY(NGLIB_LIBNGLIB nglib PATHS ${NETGEN_LIBDIR} /usr/lib /usr/local/lib)
+      FIND_PATH(NGLIB_INCLUDE_DIR NAMES nglib.h PATHS ${NETGEN_INCLUDEDIR} /usr/include /usr/include/netgen-mesher)
+      FIND_LIBRARY(NGLIB_LIBNGLIB nglib PATHS ${NETGEN_LIBDIR} /usr/lib /usr/lib64 /usr/local/lib)
       SET(NGLIB_LIBRARIES ${NGLIB_LIBNGLIB})
-      FIND_LIBRARY(NGLIB_LIBMESH mesh PATHS ${NETGEN_LIBDIR} /usr/lib /usr/local/lib)
+      FIND_LIBRARY(NGLIB_LIBMESH  NAMES mesh ngmesh PATHS ${NETGEN_LIBDIR} /usr/lib /usr/lib64 /usr/local/lib)
       IF(NGLIB_LIBMESH)
           SET(NGLIB_LIBRARIES ${NGLIB_LIBRARIES} ${NGLIB_LIBMESH})
       ENDIF()
-      FIND_LIBRARY(NGLIB_LIBOCC occ PATHS ${NETGEN_LIBDIR} /usr/lib /usr/local/lib)
+      FIND_LIBRARY(NGLIB_LIBOCC NAMES occ ngocc PATHS ${NETGEN_LIBDIR} /usr/lib /usr/lib64 /usr/local/lib)
       IF(NGLIB_LIBOCC)
           SET(NGLIB_LIBRARIES ${NGLIB_LIBRARIES} ${NGLIB_LIBOCC})
       ENDIF()
-      FIND_LIBRARY(NGLIB_LIBINTERFACE interface PATHS ${NETGEN_LIBDIR} /usr/lib /usr/local/lib)
+      FIND_LIBRARY(NGLIB_LIBINTERFACE NAMES interface nginterface PATHS ${NETGEN_LIBDIR} /usr/lib /usr/lib64 /usr/local/lib)
       IF(NGLIB_LIBINTERFACE)
           SET(NGLIB_LIBRARIES ${NGLIB_LIBRARIES} ${NGLIB_LIBINTERFACE})
       ENDIF()
@@ -104,15 +104,15 @@

   ENDIF(DEFINED MACPORTS_PREFIX OR DEFINED HOMEBREW_PREFIX)

-  FIND_PATH(NETGEN_DIR_include NAMES mydefs.hpp     PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/include)
-  FIND_PATH(NETGEN_DIR_csg     NAMES csg.hpp        PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/csg)
-  FIND_PATH(NETGEN_DIR_gen     NAMES array.hpp      PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/general)
-  FIND_PATH(NETGEN_DIR_geom2d  NAMES geom2dmesh.hpp PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/geom2d)
-  FIND_PATH(NETGEN_DIR_gprim   NAMES gprim.hpp      PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/gprim)
-  FIND_PATH(NETGEN_DIR_la      NAMES linalg.hpp     PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/linalg)
-  FIND_PATH(NETGEN_DIR_mesh    NAMES meshing.hpp    PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/meshing)
-  FIND_PATH(NETGEN_DIR_occ     NAMES occgeom.hpp    PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/occ)
-  FIND_PATH(NETGEN_DIR_stlgeom NAMES stlgeom.hpp    PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NETGENDATA}/stlgeom)
+  FIND_PATH(NETGEN_DIR_include NAMES mydefs.hpp     PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/include ${NETGENDATA}/include)
+  FIND_PATH(NETGEN_DIR_csg     NAMES csg.hpp        PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/csg     ${NETGENDATA}/csg)
+  FIND_PATH(NETGEN_DIR_gen     NAMES array.hpp      PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/general ${NETGENDATA}/general)
+  FIND_PATH(NETGEN_DIR_geom2d  NAMES geom2dmesh.hpp PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/geom2d  ${NETGENDATA}/geom2d)
+  FIND_PATH(NETGEN_DIR_gprim   NAMES gprim.hpp      PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/gprim   ${NETGENDATA}/gprim)
+  FIND_PATH(NETGEN_DIR_la      NAMES linalg.hpp     PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/linalg  ${NETGENDATA}/linalg)
+  FIND_PATH(NETGEN_DIR_mesh    NAMES meshing.hpp    PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/meshing ${NETGENDATA}/meshing)
+  FIND_PATH(NETGEN_DIR_occ     NAMES occgeom.hpp    PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/occ     ${NETGENDATA}/occ)
+  FIND_PATH(NETGEN_DIR_stlgeom NAMES stlgeom.hpp    PATHS ${NETGEN_INCLUDEDIR} ${NGLIB_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR}/stlgeom ${NETGENDATA}/stlgeom)

   IF(NOT NGLIB_INCLUDE_DIR AND NOT NETGEN_DIR_include)
       MESSAGE(STATUS "Cannot find NETGEN header files.")


Updated ios_app to better follow lowercase target names convention

--- Googlify.cmake
+++ Googlify.cmake
@@ -366,15 +366,14 @@
   set(${OUT} "${TARGET_NAME}" PARENT_SCOPE)
 endfunction(get_target_name)

-function(ios_app TARGET)
+function(ios_app TARGET NAME)
   get_full_target(${TARGET} FULL_TARGET)
   if (NOT IOS_BUILD AND NOT IOS_SIMULATOR_BUILD)
     add_custom_target(${FULL_TARGET})
     set_target_properties(${FULL_TARGET} PROPERTIES IS_IOS_APP TRUE)
     return()
   endif ()
-  underscores_to_camel_case(${TARGET} DIR_NAME)
-  set(DIR_PATH "${CMAKE_CURRENT_BINARY_DIR}/${DIR_NAME}.app")
+  set(DIR_PATH "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.app")
   add_custom_target(${FULL_TARGET} ALL)
   add_custom_command(
     TARGET ${FULL_TARGET} PRE_BUILD


update STIR and SIRF default tags

update STIR and SIRF default tags

closes #114

--- version_config.cmake
+++ version_config.cmake
@@ -116,11 +116,11 @@
   set(DEFAULT_glog_TAG v035)

 else()
-  set(DEFAULT_SIRF_TAG v1.0.0)
+  set(DEFAULT_SIRF_TAG v1.1.0-rc.1)

   ## STIR
   set(DEFAULT_STIR_URL https://github.com/UCL/STIR )
-  set(DEFAULT_STIR_TAG 5710d438090a972bd7b0636ff6de5315519b78e9 )
+  set(DEFAULT_STIR_TAG cc7c16451abe1af7d0c02cc790f5d0752c2a7b68 )

   ## Gadgetron
   set(DEFAULT_Gadgetron_URL https://github.com/gadgetron/gadgetron )


Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee. Don't commit before coffee.  Don't commit before coffee.

--- cmake/ectoMacros.cmake
+++ cmake/ectoMacros.cmake
@@ -43,6 +43,7 @@
   endif()
   if(APPLE)
     set_target_properties(${NAME}_ectomodule
+      PROPERTIES
       SUFFIX ".so"
       )
   endif()


BUG: Add ITKCommon to DEPENDS.

BUG: Add ITKCommon to DEPENDS.

This fixes the HeaderTest build error.

--- itk-module.cmake
+++ itk-module.cmake
@@ -12,8 +12,9 @@

 # define the dependencies of the include module and the tests
 itk_module(ModuleTemplate
+  DEPENDS
+    ITKCommon
   COMPILE_DEPENDS
-    ITKCommon
     ITKImageSources
   TEST_DEPENDS
     ITKTestKernel


cleanups in icc.cmake

cleanups in icc.cmake

--- common/cmake/icc.cmake
+++ common/cmake/icc.cmake
@@ -24,11 +24,13 @@
 SET(FLAGS_AVX512KNL "-xMIC-AVX512")

 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fPIC -std=c++11 -no-ansi-alias -static-intel -fasm-blocks")
+
 SET(CMAKE_CXX_FLAGS_DEBUG          "-DDEBUG  -g -O0")
-##SET(CMAKE_CXX_FLAGS_RELEASE        "-DNDEBUG    -O3 -restrict -g -debug inline-debug-info")
 SET(CMAKE_CXX_FLAGS_RELEASE        "-DNDEBUG    -O3 -restrict -no-inline-max-total-size -inline-factor=200")
 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-DDEBUG  -g -O3 -restrict -no-inline-max-total-size -inline-factor=200")
-SET(CMAKE_EXE_LINKER_FLAGS "-g")
+
+#SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -g -debug inline-debug-info")
+#SET(CMAKE_EXE_LINKER_FLAGS "-g")

 IF (NOT RTCORE_EXPORT_ALL_SYMBOLS)
   SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden -fvisibility=hidden")


Update tf_tests.cmake

Update tf_tests.cmake

--- tensorflow/contrib/cmake/tf_tests.cmake
+++ tensorflow/contrib/cmake/tf_tests.cmake
@@ -267,6 +267,8 @@
       "${tensorflow_source_dir}/tensorflow/python/kernel_tests/variable_scope_test.py"
       "${tensorflow_source_dir}/tensorflow/python/kernel_tests/functional_ops_test.py"
       "${tensorflow_source_dir}/tensorflow/python/kernel_tests/py_func_test.py"
+      # Flaky on Windows cpu with py36 (b/73556968)
+      "${tensorflow_source_dir}/tensorflow/python/kernel_tests/sparse_reshape_op_test.py"
       # Windows file management related issues.
       "${tensorflow_source_dir}/tensorflow/python/training/evaluation_test.py"
       # training tests


Bugfix: Avoid a race condition between concurrent invocations of the
same test with different mpirun processes

git-svn-id: 59f82343654cec32357d3b049d399063e4e4cfc7@31000 0785d39b-7218-0410-832d-ea1e28bc413d

--- tests/cmake/macros/macro_add_test.cmake
+++ tests/cmake/macros/macro_add_test.cmake
@@ -74,24 +74,27 @@
       #
       # Setup a bunch of variables describing the test:
       #
+
       STRING(TOLOWER ${_build} _build_lowercase)
-      SET(_test_short ${_test_name}.${_build_lowercase}) # short test name
-      SET(_target ${_category}-${_test_short}) # the target name for the executable

       # If _n_cpu is equal to "0", a normal, sequental test will be run,
       # otherwise run the test with mpirun:
       IF("${_n_cpu}" STREQUAL "0")
-        SET(_diff_target ${_target}.diff) # diff target name
-        SET(_test_full ${_category}/${_test_name}.${_build_lowercase}) # full test name
-        SET(_test_directory ${CMAKE_CURRENT_BINARY_DIR}/${_test_short}) # directory to run the test in
-        SET(_run_command ${_target}) # the command to issue
+        SET(_target ${_test_name}.${_build_lowercase}) # the target name for the executable
+        SET(_run_command) # the first part of the command to issue
         SET(_n_cpu 1) # set it to one, we'll still occupy one processor to run a test ;-)
       ELSE()
-        SET(_diff_target ${_category}-${_test_name}.mpirun${_n_cpu}.${_build_lowercase}.diff) # diff target name
-        SET(_test_full ${_category}/${_test_name}.mpirun=${_n_cpu}.${_build_lowercase}) # full test name
-        SET(_test_directory ${CMAKE_CURRENT_BINARY_DIR}/${_test_short}/mpirun=${_n_cpu}) # directory to run the test in
-        SET(_run_command mpirun -np ${_n_cpu} ${CMAKE_CURRENT_BINARY_DIR}/${_test_short}/${_target}) # the command to issue
+        SET(_target ${_test_name}.mpirun=${_n_cpu}.${_build_lowercase}) # the target name for the executable
+        SET(_run_command mpirun -np ${_n_cpu}) # the first part of the command to issue
       ENDIF()
+
+      SET(_test_full ${_category}/${_target}) # full test name
+      SET(_test_directory ${CMAKE_CURRENT_BINARY_DIR}/${_target}) # directory to run the test in
+
+      # avoid "=" in target names:
+      STRING(REGEX REPLACE "=" "" _target "${_target}")
+      LIST(APPEND _run_command ${_target}) # the second part of the command to issue
+      SET(_diff_target ${_target}.diff) # diff target name

       FILE(MAKE_DIRECTORY ${_test_directory})

@@ -99,27 +102,24 @@
       # Add an executable for the current test and set up compile
       # definitions and the full link interface:
       #
-      IF(NOT TARGET ${_target})
-        # only add the target once

-        ADD_EXECUTABLE(${_target} EXCLUDE_FROM_ALL ${_test_name}.cc)
+      ADD_EXECUTABLE(${_target} EXCLUDE_FROM_ALL ${_test_name}.cc)

-        SET_TARGET_PROPERTIES(${_target} PROPERTIES
-          LINK_FLAGS "${DEAL_II_LINKER_FLAGS} ${DEAL_II_LINKER_FLAGS_${_build}}"
-          COMPILE_DEFINITIONS "${DEAL_II_USER_DEFINITIONS};${DEAL_II_USER_DEFINITIONS_${_build}}"
-          COMPILE_FLAGS "${DEAL_II_CXX_FLAGS} ${DEAL_II_CXX_FLAGS_${_build}}"
-          LINKER_LANGUAGE "CXX"
-          RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${_test_short}"
-          )
-        SET_PROPERTY(TARGET ${_target} APPEND PROPERTY
-          INCLUDE_DIRECTORIES "${DEAL_II_INCLUDE_DIRS}"
-          )
-        SET_PROPERTY(TARGET ${_target} APPEND PROPERTY
-          COMPILE_DEFINITIONS
-            SOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}"
-          )
-        TARGET_LINK_LIBRARIES(${_target} ${DEAL_II_TARGET_${_build}})
-      ENDIF()
+      SET_TARGET_PROPERTIES(${_target} PROPERTIES
+        LINK_FLAGS "${DEAL_II_LINKER_FLAGS} ${DEAL_II_LINKER_FLAGS_${_build}}"
+        COMPILE_DEFINITIONS "${DEAL_II_USER_DEFINITIONS};${DEAL_II_USER_DEFINITIONS_${_build}}"
+        COMPILE_FLAGS "${DEAL_II_CXX_FLAGS} ${DEAL_II_CXX_FLAGS_${_build}}"
+        LINKER_LANGUAGE "CXX"
+        RUNTIME_OUTPUT_DIRECTORY "${_test_directory}"
+        )
+      SET_PROPERTY(TARGET ${_target} APPEND PROPERTY
+        INCLUDE_DIRECTORIES "${DEAL_II_INCLUDE_DIRS}"
+        )
+      SET_PROPERTY(TARGET ${_target} APPEND PROPERTY
+        COMPILE_DEFINITIONS
+          SOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}"
+        )
+      TARGET_LINK_LIBRARIES(${_target} ${DEAL_II_TARGET_${_build}})

       #
       # Add a top level target to run and compare the test:


CI: workaround recent failures

CI: workaround recent failures

--- ci-build.cmake
+++ ci-build.cmake
@@ -82,7 +82,7 @@

     set(OTHER
         ${CROSS}
-        -DCMAKE_CXX_FLAGS=-Werror
+        -DCMAKE_CXX_FLAGS="-Werror -Wno-unused-command-line-argument"
         -DOGRE_BUILD_ANDROID_JNI_SAMPLE=TRUE
         -DOGRE_DEPENDENCIES_DIR=${CMAKE_CURRENT_SOURCE_DIR}/ogredeps)
     set(BUILD_DEPS TRUE)


SVN_SILENT made messages (.desktop file)

--- src/vlc.desktop.cmake
+++ src/vlc.desktop.cmake
@@ -28,6 +28,7 @@
 Name[it]=VLC
 Name[kk]=VLC
 Name[ko]=VLC
+Name[lt]=VLC
 Name[nb]=VLC
 Name[nds]=VLC
 Name[nl]=VLC
@@ -70,6 +71,7 @@
 Comment[it]=Motore VLC di Phonon
 Comment[kk]=Phonon VLC тетігі
 Comment[ko]=Phonon VLC 백엔드
+Comment[lt]=Phonon VLC galinė sąsaja
 Comment[nb]=Phonon VLC-motor
 Comment[nds]=VLC-Hülpprogramm för Phonon
 Comment[nl]=VLC-backend van Phonon


Update to Python 2.7.11

Update to Python 2.7.11

--- CMake/Externals/External_python.cmake
+++ CMake/Externals/External_python.cmake
@@ -41,7 +41,7 @@
    OR NOT DEFINED PYTHON_LIBRARY
    OR NOT DEFINED PYTHON_EXECUTABLE) AND NOT ${CMAKE_PROJECT_NAME}_USE_SYSTEM_${proj})

-  set(python_SOURCE_DIR "${CMAKE_BINARY_DIR}/Python-2.7.3")
+  set(python_SOURCE_DIR "${CMAKE_BINARY_DIR}/Python-2.7.11")

   set(EXTERNAL_PROJECT_OPTIONAL_ARGS)
   if(MSVC)
@@ -53,8 +53,8 @@
   endif()

   ExternalProject_Add(python-source
-    URL "https://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz"
-    URL_MD5 "2cf641732ac23b18d139be077bd906cd"
+    URL "https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz"
+    URL_MD5 "6b6076ec9e93f05dd63e47eb9c15728b"
     DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}
     SOURCE_DIR ${python_SOURCE_DIR}
     ${EXTERNAL_PROJECT_OPTIONAL_ARGS}
@@ -89,6 +89,17 @@
   if(APPLE)
     list(APPEND EXTERNAL_PROJECT_OPTIONAL_CMAKE_ARGS
       -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=ON
+      )
+  endif()
+
+  # Force modules that statically link to zlib to not be built-in.  Otherwise,
+  # when building in Debug configuration, the Python library--which we force to
+  # build in Release configuration--would mix Debug and Release C runtime
+  # libraries.
+  if(WIN32)
+    list(APPEND EXTERNAL_PROJECT_OPTIONAL_CMAKE_ARGS
+        -DBUILTIN_BINASCII:BOOL=OFF
+        -DBUILTIN_ZLIB:BOOL=OFF
       )
   endif()

@@ -105,8 +116,8 @@

   ExternalProject_Add(${proj}
     ${${proj}_EP_ARGS}
-    GIT_REPOSITORY "${git_protocol}://github.com/davidsansome/python-cmake-buildsystem.git"
-    GIT_TAG "0a5127ba682c4ef033aa5468c01e8fb69f874a98"
+    GIT_REPOSITORY "${git_protocol}://github.com/python-cmake-buildsystem/python-cmake-buildsystem.git"
+    GIT_TAG "b012e1e718250b8d94256beca97dcbca24d463db"
     SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
     BINARY_DIR ${proj}-build
     CMAKE_CACHE_ARGS
@@ -119,6 +130,9 @@
       -DBUILD_SHARED:BOOL=ON
       -DBUILD_STATIC:BOOL=OFF
       -DUSE_SYSTEM_LIBRARIES:BOOL=OFF
+      -DSRC_DIR:PATH=${python_SOURCE_DIR}
+      -DDOWNLOAD_SOURCES:BOOL=OFF
+      -DINSTALL_WINDOWS_TRADITIONAL:BOOL=OFF
       -DZLIB_INCLUDE_DIR:PATH=${ZLIB_INCLUDE_DIR}
       -DZLIB_LIBRARY:FILEPATH=${ZLIB_LIBRARY}
       -DENABLE_TKINTER:BOOL=${Slicer_USE_PYTHONQT_WITH_TCL}
@@ -312,3 +326,4 @@
     DEPENDEES install
     )
 endfunction()
+


BUG: fix set result to 0

BUG: fix set result to 0

--- CMake/vtkCompileCMakeExtensions.cmake
+++ CMake/vtkCompileCMakeExtensions.cmake
@@ -10,7 +10,6 @@
     TRY_COMPILE("${result_var}" "${build_dir}" "${source_dir}"
                 VTK_LOADED_COMMANDS
                 OUTPUT_VARIABLE VTK_COMPILE_CMAKE_EXTENSIONS_OUTPUT)
-    SET(${result_var} 0)
     IF("${result_var}")
       MESSAGE(STATUS "Compiling VTK CMake commands - done")
     ELSE("${result_var}")


COMP: -W3 warning is for msvc not mingw

COMP: -W3 warning is for msvc not mingw

--- CMake/OTBSetStandardCompilerFlags.cmake
+++ CMake/OTBSetStandardCompilerFlags.cmake
@@ -73,7 +73,7 @@
   ## is reporting 1000's of wanings in windows
   ## header files, for now, limit the number of
   ## warnings to level 3
-  if( WIN32 )
+  if( MSVC )
     set(VerboseWarningsFlag -W3 )
     ## A better solution would be to use -Wall,
     ## and then disable warnings one by one


flags update

flags update

--- modules/Arduino.cmake
+++ modules/Arduino.cmake
@@ -10,12 +10,13 @@
 enable_language(ASM)

 # C only fine tunning
-set(TUNING_FLAGS "-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wl,--gc-sections -ffunction-sections -fdata-sections")
+set(TUNING_FLAGS "-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wl,--gc-sections -ffunction-sections -fdata-sections -fno-tree-scev-cprop")
+set(WARNING_FLAGS "-Wall -pedantic -Wundef -Werror")

 # Compilation flags
 set(CMAKE_ASM_FLAGS "-mmcu=${ARDUINO_MCU} -DF_CPU=${ARDUINO_FCPU}")
-set(CMAKE_CXX_FLAGS "${CMAKE_ASM_FLAGS} ${TUNING_FLAGS} -Os")
-set(CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS} ${TUNING_FLAGS} -Wall -std=gnu99")
+set(CMAKE_CXX_FLAGS "${CMAKE_ASM_FLAGS} ${TUNING_FLAGS} ${WARNING_FLAGS} -std=gnu++14 -Os -DNDEBUG")
+set(CMAKE_C_FLAGS "${CMAKE_ASM_FLAGS} ${TUNING_FLAGS} ${WARNING_FLAGS} --std=gnu99 -Os -DNDEBUG")

 # Find arduino root path
 if(ARDUINO_ROOT)


DOC: Bump SphinxExample remote module version to 2015-07-02.

Change-Id: I36771afa140132b9d2d1f656709ef77b954f2821

--- Modules/Remote/SphinxExamples.remote.cmake
+++ Modules/Remote/SphinxExamples.remote.cmake
@@ -2,6 +2,6 @@
 itk_fetch_module(SphinxExamples
   "This module builds the examples found at http://itk.org/ITKExamples/"
   GIT_REPOSITORY http://itk.org/ITKExamples.git
-  # 2014-12-03
-  GIT_TAG f23b2857bdba605a4b87df77926d3558e18bb540
+  # 2015-07-02
+  GIT_TAG 890667eaa7dbab6111aabd51432d1aeadca738f9
   )


FIX: need vtkConfig.cmake to be configured *not* in IMMEDIATE mode, otherwise some vars set in subdirs are not expanded (TCL_TK_ stuff)

--- vtkGenerateVTKConfig.cmake
+++ vtkGenerateVTKConfig.cmake
@@ -95,7 +95,7 @@
 #-----------------------------------------------------------------------------
 # Configure VTKConfig.cmake for the build tree.
 CONFIGURE_FILE(${VTK_SOURCE_DIR}/VTKConfig.cmake.in
-               ${VTK_BINARY_DIR}/VTKConfig.cmake @ONLY IMMEDIATE)
+               ${VTK_BINARY_DIR}/VTKConfig.cmake @ONLY)

 # Hack to give source tree access for a build tree configuration.
 STRING(ASCII 35 VTK_STRING_POUND)
@@ -203,4 +203,4 @@
 #-----------------------------------------------------------------------------
 # Configure VTKConfig.cmake for the install tree.
 CONFIGURE_FILE(${VTK_SOURCE_DIR}/VTKConfig.cmake.in
-               ${VTK_BINARY_DIR}/Utilities/VTKConfig.cmake @ONLY IMMEDIATE)
+               ${VTK_BINARY_DIR}/Utilities/VTKConfig.cmake @ONLY)


Fix detection of VULKAN_SDK env variable

--- 3rdparty/3rdparty.cmake
+++ 3rdparty/3rdparty.cmake
@@ -15,9 +15,11 @@
 #########################

 find_package(Vulkan)
-if ($ENV{VULKAN_SDK})
-    set(VULKAN_INCLUDE $ENV{VULKAN_SDK})
+if (DEFINED $ENV{VULKAN_SDK})
+    message(STATUS "Vulkan environment variable: $ENV{VULKAN_SDK}")
+    set(VULKAN_INCLUDE "$ENV{VULKAN_SDK}")
 else()
+    message(STATUS "Vulkan environment variable: undefined")
     set(VULKAN_INCLUDE "")
 endif()


Change git URLs for public repositories to be HTTPS instead of SSH, keep SSH for private repositories

--- software/externals/cmake/externals.cmake
+++ software/externals/cmake/externals.cmake
@@ -73,7 +73,7 @@
 set(common_utils_revision bf0c9223e02a193a3cfef4034ef82a94219f116a)
 set(common_utils_depends Eigen_pod libbot occ-map octomap)

-set(frsm_url ssh://git@github.com/openhumanoids/frsm.git)
+set(frsm_url https://github.com/openhumanoids/frsm.git)
 set(frsm_revision 0fb51ac1580a7f6ce3b5f4d7afc302caa976246f)
 set(frsm_depends libbot)

@@ -89,7 +89,7 @@
 set(bullet_revision 24b0a184e177c793a1b2f37f55d3544f2a7c33ae)
 set(bullet_depends)

-set(fovis_url ssh://git@github.com/fovis/fovis.git)
+set(fovis_url https://github.com/fovis/fovis.git)
 #set(fovis_revision 2862e080dee2519932585b46cc301a38d8cad1f4) # this is the newer version, but removes fovis-bot2
 set(fovis_revision ee2fe6593ed9e7e5ce2b2f6f1c64b627da119090)
 set(fovis_depends libbot)
@@ -106,7 +106,7 @@
 set(apriltags_revision ed2972f01e00d9b5a4afa2612b018374d889641f)
 set(apriltags_depends)

-set(spotless_url ssh://git@github.com/RobotLocomotion/spotless-pod.git)
+set(spotless_url https://github.com/RobotLocomotion/spotless-pod.git)
 set(spotless_revision 91e1e3970e62b8dd8d74bbc4446504b11990f598)
 set(spotless_depends)

@@ -119,7 +119,7 @@
 set(gurobi-private_depends)
 set(gurobi-private_external_args ${download_only_args})

-set(gurobi_url ssh://git@github.com/RobotLocomotion/gurobi.git)
+set(gurobi_url https://github.com/RobotLocomotion/gurobi.git)
 set(gurobi_revision b95a186b4d988db00ada55bd8efb08c651a83fe7)
 if(APPLE)
   set(gurobi_distro_file ${source_prefix}/gurobi-private/gurobi5.6.2_mac64.pkg)
@@ -145,7 +145,7 @@
   SOURCE_DIR ${source_prefix}/../drivers/flycapture
   )

-set(swigmake_url ssh://git@github.com/rdeits/swigmake.git)
+set(swigmake_url https://github.com/rdeits/swigmake.git)
 set(swigmake_revision ab03741a0627e99589ecbc1c088a4db05755e3c2)
 set(swigmake_depends )

@@ -158,11 +158,11 @@
     -DIRIS_WITH_EIGEN:BOOL=OFF
   )

-set(pypolyhedron_url ssh://git@github.com/rdeits/pypolyhedron.git)
+set(pypolyhedron_url https://github.com/rdeits/pypolyhedron.git)
 set(pypolyhedron_revision 1f110addf89398f62644830bf69a69930db8c4d0)
 set(pypolyhedron_depends)

-set(kinematics-utils_url ssh://git@github.com/ipab-slmc/kinematics-utils.git)
+set(kinematics-utils_url https://github.com/ipab-slmc/kinematics-utils.git)
 set(kinematics-utils_revision 062e36b056eaa0b5ddc38ed7c738999b9bb5831b)
 set(kinematics-utils_depends Eigen_pod)

@@ -197,7 +197,7 @@
     ${eigen_args}
   )

-set(hokuyo_url ssh://git@github.com/openhumanoids/hokuyo.git)
+set(hokuyo_url https://github.com/openhumanoids/hokuyo.git)
 set(hokuyo_revision 6fc1b804d80838ae314d162929bb0a25a231ca35)
 set(hokuyo_depends libbot)


Fix test build on Windows

Fix test build on Windows

--- test/HalideGenerator.cmake
+++ test/HalideGenerator.cmake
@@ -27,10 +27,9 @@

   # Add a custom target to output the Halide generated static library
   if (WIN32)
-    # TODO(srj): this has not yet been tested on Windows.
     add_custom_command(OUTPUT "${FILTER_LIB}" "${FILTER_HDR}"
       DEPENDS "${gen_target}"
-      COMMAND "${CMAKE_BINARY_DIR}/bin/${BUILD_TYPE}/${gen_target}${CMAKE_EXECUTABLE_SUFFIX}" "-g" "${gen_name}" "-f" "${func_name}" "-o" "${SCRATCH_DIR}" ${ARGN}
+      COMMAND "${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/${gen_target}${CMAKE_EXECUTABLE_SUFFIX}" "-g" "${gen_name}" "-f" "${func_name}" "-o" "${SCRATCH_DIR}" ${ARGN}
       COMMAND "lib.exe" "/OUT:${FILTER_LIB}" "${SCRATCH_DIR}\\${func_name}.o"
       WORKING_DIRECTORY "${SCRATCH_DIR}"
       )


enable our own ctest dashboard

enable our own ctest dashboard

--- CTestConfig.cmake
+++ CTestConfig.cmake
@@ -5,9 +5,9 @@
 ##   ENABLE_TESTING()
 ##   INCLUDE(CTest)
 set(CTEST_PROJECT_NAME "Eigen")
-set(CTEST_NIGHTLY_START_TIME "05:00:00 UTC")
+set(CTEST_NIGHTLY_START_TIME "06:00:00 UTC")

 set(CTEST_DROP_METHOD "http")
-set(CTEST_DROP_SITE "my.cdash.org")
-set(CTEST_DROP_LOCATION "/submit.php?project=Eigen")
+set(CTEST_DROP_SITE "eigen.tuxfamily.org")
+set(CTEST_DROP_LOCATION "/CDash/submit.php?project=Eigen")
 set(CTEST_DROP_SITE_CDASH TRUE)


update cdash url

update cdash url

--- CTestConfig.cmake
+++ CTestConfig.cmake
@@ -2,6 +2,6 @@
 set(CTEST_NIGHTLY_START_TIME "00:00:00 EDT")

 set(CTEST_DROP_METHOD "http")
-set(CTEST_DROP_SITE "128.30.27.135")
+set(CTEST_DROP_SITE "patmarion.synology.me")
 set(CTEST_DROP_LOCATION "/submit.php?project=director")
 set(CTEST_DROP_SITE_CDASH TRUE)


we have a new server for hosting CDash reports.

--- CTestConfig.cmake
+++ CTestConfig.cmake
@@ -8,6 +8,6 @@
 set(CTEST_NIGHTLY_START_TIME "00:00:00 UTC")

 set(CTEST_DROP_METHOD "http")
-set(CTEST_DROP_SITE "eigen.tuxfamily.org")
+set(CTEST_DROP_SITE "manao.inria.fr")
 set(CTEST_DROP_LOCATION "/CDash/submit.php?project=Eigen")
 set(CTEST_DROP_SITE_CDASH TRUE)


refs #5127 ignore warnings generated by compiling jemalloc source

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

--- CTestCustom.cmake
+++ CTestCustom.cmake
@@ -223,6 +223,8 @@
   "xz-4.999.9beta/src/liblzma"
   # don't complain about clang missing warnings from xz code
   "clang: warning: unknown warning option"
+  # don't complain about warnings in jemalloc source
+  "jemalloc-3.2.0/src"
   # don't complain about ranlib on empty archive
   "ranlib:"
   )


Working configure without option

Working configure without option

--- CI/main_ci.cmake
+++ CI/main_ci.cmake
@@ -2,15 +2,15 @@
 set (ENV{LANG} "C") # Only ascii output
 # Create build directory
 get_filename_component(OTB_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR} DIRECTORY)
-file (MAKE_DIRECTORY ${OTB_SOURCE_DIR}/build/)

 #Ctest setting
 set (CTEST_BUILD_CONFIGURATION "Release")
 set (CTEST_SOURCE_DIRECTORY "${OTB_SOURCE_DIR}")
 set (CTEST_BINARY_DIRECTORY "${OTB_SOURCE_DIR}/build/")
+set (CMAKE_COMMAND "cmake")
+set (PROJECT_SOURCE_DIR "${OTB_SOURCE_DIR}")

-set (CTEST_CONFIGURE_COMMAND "cmake" )
-set (CTEST_BUILD_COMMAND "make")
+# set (CTEST_BUILD_COMMAND "make")

 set (CTEST_CMAKE_GENERATOR "Unix Makefiles")
 set (CTEST_BUILD_NAME "CI_TEST")
@@ -43,9 +43,12 @@
 BUILD_TESTING:BOOL=OFF
 ")

-# ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}"
-#     OPTIONS "${CONFIGURE_OPTIONS}"
-#     RETURN_VALUE _configure_rv)
+set(CONFIGURE_OPTIONS  "")
+
+ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}"
+    SOURCE "${OTB_SOURCE_DIR}"
+    OPTIONS "${CONFIGURE_OPTIONS}"
+    RETURN_VALUE _configure_rv)

 if ( _configure_rv EQUAL -1 )
   message("An error occurs during ctest_configure ${_configure_rv}")


Cleanup

Cleanup

--- DoxygenRule.cmake
+++ DoxygenRule.cmake
@@ -20,10 +20,12 @@

 include(GithubOrganization)
 if(GIT_ORIGIN_ORG)
+  set(GIT_DOCUMENTATION_DIR
+    ${CMAKE_SOURCE_DIR}/../${GIT_ORIGIN_org}/${PROJECT_NAME}-${VERSION_MAJOR}.${VERSION_MINOR})
   add_custom_target(github
-    COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_SOURCE_DIR}/../${GIT_ORIGIN_org}/${PROJECT_NAME}-${VERSION_MAJOR}.${VERSION_MINOR}
-    COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_BINARY_DIR}/doc/html ${CMAKE_SOURCE_DIR}/../${GIT_ORIGIN_org}/${PROJECT_NAME}-${VERSION_MAJOR}.${VERSION_MINOR}
-    COMMENT "Copying API documentation to ${GIT_ORIGIN_org}.github.com/${PROJECT_NAME}-${VERSION_MAJOR}.${VERSION_MINOR}"
+    COMMAND ${CMAKE_COMMAND} -E remove_directory ${GIT_DOCUMENTATION_DIR}
+    COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_BINARY_DIR}/doc/html ${GIT_DOCUMENTATION_DIR}
+    COMMENT "Copying API documentation to ${GIT_DOCUMENTATION_DIR}"
     VERBATIM)
   add_dependencies(github doxygen)
 endif()


修改leveldb打印消息的错误

修改leveldb打印消息的错误

--- FindLevelDb.cmake
+++ FindLevelDb.cmake
@@ -20,7 +20,7 @@
     LEVELDB_LIBRARY LEVELDB_INCLUDE_DIR)

 if (LEVELDB_FOUND)
-    message(STATUS "found leveldb: ${LEVELDB_LIBRARY} ${CETTY_INCLUDE_DIR}")
+    message(STATUS "found leveldb: ${LEVELDB_LIBRARY} ${LEVELDB_INCLUDE_DIR}")
 endif (LEVELDB_FOUND)

 mark_as_advanced(LEVELDB_LIBRARY LEVELDB_INCLUDE_DIR)


Support third-party modules that use CamelCase

Add logic to third-party 'module' support to also work with external
packages that use CamelCase for their package "standard" variables (i.e.
<name>_{FOUND,LIBRARIES,INCLUDE_DIRS}). In particular, ParaView requires
this to use external QtTesting.

Change-Id: I645d2374ec2503eac7d226ef948f6f4b01f8de01

--- CMake/vtkModuleMacros.cmake
+++ CMake/vtkModuleMacros.cmake
@@ -631,15 +631,21 @@
       endif()
     endif()
     find_package(${_pkg} REQUIRED ${__extra_args})
-    if(NOT ${_upper}_FOUND)
+    if(NOT ${_upper}_FOUND AND NOT ${_pkg}_FOUND)
       message(FATAL_ERROR "VTK_USE_SYSTEM_${_upper} is ON but ${_pkg} is not found!")
     endif()
-    if(${_upper}_INCLUDE_DIRS)
+    if(${_pkg}_INCLUDE_DIRS)
+      set(vtk${_lower}_SYSTEM_INCLUDE_DIRS ${${_pkg}_INCLUDE_DIRS})
+    elseif(${_upper}_INCLUDE_DIRS)
       set(vtk${_lower}_SYSTEM_INCLUDE_DIRS ${${_upper}_INCLUDE_DIRS})
     else()
       set(vtk${_lower}_SYSTEM_INCLUDE_DIRS ${${_upper}_INCLUDE_DIR})
     endif()
-    set(vtk${_lower}_LIBRARIES "${${_upper}_LIBRARIES}")
+    if(${_pkg}_LIBRARIES)
+      set(vtk${_lower}_LIBRARIES "${${_pkg}_LIBRARIES}")
+    else()
+      set(vtk${_lower}_LIBRARIES "${${_upper}_LIBRARIES}")
+    endif()
     set(vtk${_lower}_INCLUDE_DIRS "")
   else()
     if(_nolibs)


CR #423

CR #423

--- SubProject.cmake
+++ SubProject.cmake
@@ -259,8 +259,6 @@
       list(REMOVE_AT SUBPROJECT_DEPENDS 0 1 2)
       list(LENGTH SUBPROJECT_DEPENDS SUBPROJECT_DEPENDS_LEFT)

-      # Skip find in git_subproject after add_subproject
-      set(${SUBPROJECT_DEPENDS_DIR}_SKIP_FIND ON)
       git_subproject(${SUBPROJECT_DEPENDS_DIR} ${SUBPROJECT_DEPENDS_REPO}
         ${SUBPROJECT_DEPENDS_TAG})
     endwhile()


BUG: Fix SuperBuild.cmake - ctk_*_bool_vars were generated using the wrong list.

"CTK_{LIBS, PLUGINS, APPLICATIONS}_SUBDIRS" is now used instead of "ctk_{libs, plugins, applications}"

--- SuperBuild.cmake
+++ SuperBuild.cmake
@@ -327,17 +327,17 @@
 # Generate cmake variable name corresponding to Libs, Plugins and Applications
 #
 SET(ctk_libs_bool_vars)
-FOREACH(lib ${ctk_libs})
+FOREACH(lib ${CTK_LIBS_SUBDIRS})
   LIST(APPEND ctk_libs_bool_vars CTK_LIB_${lib})
 ENDFOREACH()

 SET(ctk_plugins_bool_vars)
-FOREACH(plugin ${ctk_plugins})
+FOREACH(plugin ${CTK_PLUGINS_SUBDIRS})
   LIST(APPEND ctk_plugins_bool_vars CTK_PLUGIN_${plugin})
 ENDFOREACH()

 SET(ctk_applications_bool_vars)
-FOREACH(app ${ctk_applications})
+FOREACH(app ${CTK_APPLICATIONS_SUBDIRS})
   LIST(APPEND ctk_applications_bool_vars CTK_APP_${app})
 ENDFOREACH()

@@ -368,6 +368,11 @@
   ctk_set_superbuild_boolean_arg(${ctk_cmake_arg})
   LIST(APPEND ctk_superbuild_boolean_args -D${ctk_cmake_arg}:BOOL=${superbuild_${ctk_cmake_arg}})
 ENDFOREACH()
+
+# MESSAGE("CMake args:")
+# FOREACH(arg ${ctk_superbuild_boolean_args})
+#   MESSAGE("  ${arg}")
+# ENDFOREACH()

 #-----------------------------------------------------------------------------
 # CTK Configure


Fixed outdated builds on VS2012

Fixed outdated builds on VS2012

High-level build did not build external projects in VS2012.
The BUILD_ALWAYS flag is a relatively new CMake feature (added in 3.1),
therefore the following workaround was added into SuperBuild.cmake:

ExternalProject_Add_Step(${proj} forcebuild
  COMMAND ${CMAKE_COMMAND} -E remove
    ${CMAKE_CURRENT_BINARY_DIR}/${proj}-prefix/src/${proj}-stamp/${proj}-build
  COMMENT "Forcing build step for '${proj}'"
  DEPENDEES build
  ALWAYS 1
  )

This does not work with Visual Studio, where the stamp file is in Debug/Release/etc. subdirectory:
${CMAKE_CURRENT_BINARY_DIR}/${proj}-prefix/src/${proj}-stamp/${CMAKE_CFG_INTDIR}/${proj}CTK-build

Co-authored-by: Jean-Christophe Fillion-Robin <859d3fd8ca46de62a08fca56c64958e301f5352c@kitware.com>

--- SuperBuild.cmake
+++ SuperBuild.cmake
@@ -55,9 +55,19 @@

 # This custom external project step forces the build and later
 # steps to run whenever a top level build is done...
+#
+# BUILD_ALWAYS flag is available in CMake 3.1 that allows force build
+# of external projects without this workaround. Remove this workaround
+# and use the CMake flag instead, when CTK's required minimum CMake
+# version will be at least 3.1.
+#
+if(CMAKE_CONFIGURATION_TYPES)
+  set(BUILD_STAMP_FILE "${CMAKE_CURRENT_BINARY_DIR}/${proj}-prefix/src/${proj}-stamp/${CMAKE_CFG_INTDIR}/${proj}-build")
+else()
+  set(BUILD_STAMP_FILE "${CMAKE_CURRENT_BINARY_DIR}/${proj}-prefix/src/${proj}-stamp/${proj}-build")
+endif()
 ExternalProject_Add_Step(${proj} forcebuild
-  COMMAND ${CMAKE_COMMAND} -E remove
-    ${CMAKE_CURRENT_BINARY_DIR}/${proj}-prefix/src/${proj}-stamp/${proj}-build
+  COMMAND ${CMAKE_COMMAND} -E remove ${BUILD_STAMP_FILE}
   COMMENT "Forcing build step for '${proj}'"
   DEPENDEES build
   ALWAYS 1


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


Fixes a stability issue bug that affected PoE devices mostly

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

 # "full commit hash of device side binary"
-set(DEPTHAI_DEVICE_SIDE_COMMIT "f81a69c4d259004213234511738af9df1142c2c7")
+set(DEPTHAI_DEVICE_SIDE_COMMIT "506d21b14b9187347704093d40c04936df153142")

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


Update FW: fix default camera orientation for OAK-1-PoE, was rotated

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

 # "full commit hash of device side binary"
-set(DEPTHAI_DEVICE_SIDE_COMMIT "a78b518e8a08f2a6b55b7b2e926685b6539d7a71")
+set(DEPTHAI_DEVICE_SIDE_COMMIT "c5303ecec4c30a752a7f362589239b9d1784a0d3")

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


Use PCRE from an internal installation and not from the build location (like the other builtin packages)

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -109,21 +109,26 @@
       CONFIGURE_COMMAND ""
       BUILD_COMMAND ${CMAKE_COMMAND} nmake -nologo -f Makefile.msc
                                      CFG=${pcrebuild} NMCXXFLAGS=${CMAKE_CC_FLAGS}
-      INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_if_different libpcre-8.37.lib .libs/pcre.lib
+      INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_if_different libpcre-8.37.lib  <INSTALL_DIR>/lib/pcre.lib
+              COMMAND ${CMAKE_COMMAND} -E copy_if_different pcre.h  <INSTALL_DIR>/include
+              COMMAND ${CMAKE_COMMAND} -E copy_if_different pcre_scanner.h  <INSTALL_DIR>/include
+              COMMAND ${CMAKE_COMMAND} -E copy_if_different pcre_stringpiece.h  <INSTALL_DIR>/include
+              COMMAND ${CMAKE_COMMAND} -E copy_if_different pcrecpp.h  <INSTALL_DIR>/include
+              COMMAND ${CMAKE_COMMAND} -E copy_if_different pcrecpparg.h  <INSTALL_DIR>/include
+              COMMAND ${CMAKE_COMMAND} -E copy_if_different pcreposix.h  <INSTALL_DIR>/include
       LOG_DOWNLOAD 1 LOG_CONFIGURE 1 LOG_BUILD 1 LOG_INSTALL 1 BUILD_IN_SOURCE 1)
   else()
     set(_pcre_cflags -O)
     ExternalProject_Add(
       PCRE
       URL ${CMAKE_SOURCE_DIR}/core/pcre/src/pcre-${pcre_version}.tar.gz
-      CONFIGURE_COMMAND ./configure --with-pic --disable-shared
+      INSTALL_DIR ${CMAKE_BINARY_DIR}
+      CONFIGURE_COMMAND ./configure --prefix <INSTALL_DIR> --with-pic --disable-shared
                         CC=${CMAKE_C_COMPILER} CFLAGS=${_pcre_cflags}
-      INSTALL_COMMAND ""
       LOG_DOWNLOAD 1 LOG_CONFIGURE 1 LOG_BUILD 1 LOG_INSTALL 1 BUILD_IN_SOURCE 1)
   endif()
-  ExternalProject_Get_Property(PCRE SOURCE_DIR)
-  set(PCRE_INCLUDE_DIR ${SOURCE_DIR})
-  set(PCRE_LIBRARY ${SOURCE_DIR}/.libs/${CMAKE_STATIC_LIBRARY_PREFIX}pcre${CMAKE_STATIC_LIBRARY_SUFFIX})
+  set(PCRE_INCLUDE_DIR ${CMAKE_BINARY_DIR}/include)
+  set(PCRE_LIBRARY ${CMAKE_BINARY_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}pcre${CMAKE_STATIC_LIBRARY_SUFFIX})
   set(PCRE_LIBRARIES ${PCRE_LIBRARY})
 endif()


Add ZSTD external.

Add ZSTD external.

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -241,6 +241,43 @@
 if(builtin_xxhash)
   list(APPEND ROOT_BUILTINS xxHash)
   add_subdirectory(builtins/xxhash)
+endif()
+
+#---Check for ZSTD-------------------------------------------------------------------
+# Potentially, this if() block will enable builtin_zstd.
+if (NOT builtin_zstd)
+  message(STATUS "Looking for ZSTD")
+  find_package(ZSTD)
+  if (NOT ZSTD_FOUND)
+    message(STATUS "System ZSTD not found. Switching on builtin_zstd option")
+    set(builtin_zstd ON CACHE BOOL "" FORCE)
+  endif()
+endif()
+
+if (builtin_zstd)
+  set(zstd_version v1.4.0)
+  message(STATUS "Building ZSTD version ${zstd_version} included in ROOT itself")
+  set(ZSTD_URL https://github.com/facebook/zstd/archive/${zstd_version}.tar.gz)
+  set(ZSTD_SHA256 63be339137d2b683c6d19a9e34f4fb684790e864fee13c7dd40e197a64c705c1)
+  set(ZSTD_LIBRARIES ${CMAKE_BINARY_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}zstd${CMAKE_STATIC_LIBRARY_SUFFIX})
+  if(NOT MSVC)
+    set(ZSTD_C_FLAGS "-fPIC -Wno-unused-variable -O3")
+  endif()
+  ExternalProject_Add(
+    ZSTD
+    URL ${ZSTD_URL}
+    URL_HASH SHA256=${ZSTD_SHA256}
+    INSTALL_DIR ${CMAKE_BINARY_DIR}
+    SOURCE_SUBDIR build/cmake
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
+               -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
+               -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
+               -DCMAKE_C_FLAGS=${ZSTD_C_FLAGS}
+               -DCMAKE_AR=${CMAKE_AR}
+    LOG_DOWNLOAD 1 LOG_CONFIGURE 1 LOG_BUILD 1 LOG_INSTALL 1 BUILD_IN_SOURCE 1
+    BUILD_BYPRODUCTS ${ZSTD_LIBRARIES})
+  set(ZSTD_INCLUDE_DIR ${CMAKE_BINARY_DIR}/include)
+  set(ZSTD_DEFINITIONS -DBUILTIN_ZSTD)
 endif()

 #---Check for LZ4--------------------------------------------------------------------


[ntuple] enable building with libdaos_mock if `testing` is set

In order to enable RNTuple DAOS unit tests, RNTuple is built with libdaos_mock
if `testing` is set and the user did not enable explicit DAOS support, i.e.
`-Ddaos=ON`.  This allows for testing the DAOS backend in an environment that
lacks a real DAOS deployment.

Note that this is disabled for Windows, as both `libdaos` and `libdaos_mock`
depend on libuuid (which is not tipically there on these platforms).

--- cmake/modules/SearchInstalledSoftware.cmake
+++ cmake/modules/SearchInstalledSoftware.cmake
@@ -1195,6 +1195,9 @@
 #---Check for DAOS----------------------------------------------------------------
 if (daos AND daos_mock)
   message(FATAL_ERROR "Options `daos` and `daos_mock` are mutually exclusive; only one of them should be specified.")
+endif()
+if (testing AND NOT daos AND NOT WIN32)
+  set(daos_mock ON CACHE BOOL "Enable `daos_mock` if `testing` option was set" FORCE)
 endif()

 if (daos OR daos_mock)


Fix gloperate find script

Fix gloperate find script

--- gloperate-config.cmake
+++ gloperate-config.cmake
@@ -58,9 +58,9 @@

     find_path(${LIB_NAME_UPPER}_INCLUDE_DIR ${HEADER}
         ${ENVGLOPERATE_DIR}/include
-        ${ENVGLOPERATE_DIR}/source/${LIBNAME}/include
+        ${ENVGLOPERATE_DIR}/source/${LIB_NAME}/include
         ${GLOPERATE_DIR}/include
-        ${GLOPERATE_DIR}/source/${LIBNAME}/include
+        ${GLOPERATE_DIR}/source/${LIB_NAME}/include
         ${ENVPROGRAMFILES}/gloperate/include
         /usr/include
         /usr/local/include
@@ -69,11 +69,11 @@
         DOC "The directory where ${header} resides")

     find_library(${LIB_NAME_UPPER}_LIBRARY_RELEASE
-        NAMES ${LIBNAME}
+        NAMES ${LIB_NAME}
         PATHS ${HINT_PATHS}
         DOC "The ${LIB_NAME} library")
     find_library(${LIB_NAME_UPPER}_LIBRARY_DEBUG
-        NAMES ${LIBNAME}d
+        NAMES ${LIB_NAME}d
         PATHS ${HINT_PATHS}
         DOC "The ${LIB_NAME} debug library")

@@ -98,7 +98,7 @@
 find(gloperate gloperate/gloperate_api.h ${LIB_PATHS})

 # add dependencies
-find_package(globjects REQUIRED COMPONENTS core)
+find_package(globjects REQUIRED)
 list(APPEND GLOPERATE_INCLUDES ${GLOBJECTS_INCLUDES})
 list(APPEND GLOPERATE_LIBRARIES ${GLOBJECTS_LIBRARIES})


Tried to fix cmake configuration for qt4 dependencies

--- test/cmake/qtest.cmake
+++ test/cmake/qtest.cmake
@@ -9,6 +9,6 @@
 if(Qt5Core_FOUND AND Qt5Sql_FOUND AND Qt5Test_FOUND)
     set (EXTRA_LIBS ${EXTRA_LIBS} Qt5::Core Qt5::Sql Qt5::Test)
 else()
-    find_package(Qt4 REQUIRED QtCore QtSql)
-    set (EXTRA_LIBS ${EXTRA_LIBS} Qt4::QtCore Qt4::QtSql)
+    find_package(Qt4 REQUIRED QtCore QtSql QtTest)
+    set (EXTRA_LIBS ${EXTRA_LIBS} Qt4::QtCore Qt4::QtSql Qt4::QtTest)
 endif()


Added QtDBus4

Added QtDBus4

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

--- CMakeModules/Qt.cmake
+++ CMakeModules/Qt.cmake
@@ -103,6 +103,7 @@
       ${QT_QTUITOOLS_LIBRARY}
       ${QT_QTXML_LIBRARY}
       ${QT_QTSCRIPT_LIBRARY}
+      ${QT_QTDBUS_LIBRARY}
       )
   elseif (NOT MSVC AND QT4_FOUND)
     target_link_libraries (${TARGET_NAME} ${QT_LIBRARIES} ${QT_QTGUI_LIBRARY}
@@ -113,9 +114,10 @@
       ${QT_QTUITOOLS_LIBRARY}
       ${QT_QTXML_LIBRARY}
       ${QT_QTSCRIPT_LIBRARY}
+      ${QT_QTDBUS_LIBRARY}
       )
   else()
-    target_link_libraries(${TARGET_NAME} QtCore QtGui  qtmain  QtNetwork  QtWebKit QtUitools QtXml QtScript)
+    target_link_libraries(${TARGET_NAME} QtCore QtGui  qtmain  QtNetwork  QtWebKit QtUitools QtXml QtScript QtDbus4)
   endif (MSVC)

 endmacro (LINK_QT4)


Fix flatc_target

Fix flatc_target

--- Findflatbuffers.cmake
+++ Findflatbuffers.cmake
@@ -29,7 +29,7 @@
         ARGS -c -o "${PROJECT_BINARY_DIR}/" ${FILE}
         COMMENT "Building C++ header for ${FILE}"
         DEPENDS ${FILE}
-        WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+        WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
     endforeach()
     set(${Name}_OUTPUTS ${FLATC_OUTPUTS} PARENT_SCOPE)
   endfunction()
@@ -39,4 +39,3 @@
 else()
   set(FLATBUFFERS_INCLUDE_DIR)
 endif()
-


Add option MITK_VTK_DEBUG_LEAKS in superbuild

This builds VTK with VTK_DEBUG_LEAKS enabled and forces unit tests to
fail if they have any unfreed vtkObjects left at application exit.

Contributed by Taylor Braun-Jones <taylor.braun-jones@ge.com>, see
previous commits

--- CMakeExternals/VTK.cmake
+++ CMakeExternals/VTK.cmake
@@ -27,6 +27,14 @@
         -DVTK_USE_VIDEO4WINDOWS:BOOL=OFF # no header files provided by MinGW
         )
   endif()
+
+  # Optionally enable memory leak checks for any objects derived from vtkObject. This
+  # will force unit tests to fail if they have any of these memory leaks.
+  option(MITK_VTK_DEBUG_LEAKS OFF)
+  mark_as_advanced(MITK_VTK_DEBUG_LEAKS)
+  set(additional_cmake_args
+      -DVTK_DEBUG_LEAKS:BOOL=${MITK_VTK_DEBUG_LEAKS}
+      )

   if(MITK_USE_Python)
     list(APPEND additional_cmake_args


Remove errant MESSAGE() stmts

Remove errant MESSAGE() stmts

Former-commit-id: b46ded6a587bfed2eca43c528dcd934b5d9285ca

--- HalideGenerator.cmake
+++ HalideGenerator.cmake
@@ -41,11 +41,9 @@
   set(multiValueArgs GENERATOR_ARGS GENERATOR_OUTPUTS)
   cmake_parse_arguments(args "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})

-MESSAGE("args_GENERATED_FUNCTION ${args_GENERATED_FUNCTION}")
   if (args_GENERATED_FUNCTION STREQUAL "")
     set(args_GENERATED_FUNCTION ${args_GENERATOR_NAME})
   endif()
-MESSAGE("args_GENERATED_FUNCTION ${args_GENERATED_FUNCTION}")

   # Create a directory to contain generator specific intermediate files
   halide_aot_scratch_dir(${AOT_LIBRARY_TARGET} SCRATCH_DIR)


Fix incorrect unit test resource file list, for mesh integral test. https://tracker.physiomeproject.org/show_bug.cgi?id=2896

--- test_resources.h.cmake
+++ test_resources.h.cmake
@@ -22,7 +22,7 @@
 		FIELDIMAGE_BLOCKCOLOURS_RESOURCE = 11,
 		HEART_EXNODE_GZ = 12,
 		HEART_EXELEM_GZ = 13,
-		FIELDMODULE_TWO_CUBES_RESOURCE = 14
+		FIELDMODULE_TWO_CUBES_RESOURCE = 14,
 		FIELDMODULE_ALLSHAPES_RESOURCE = 15
 	};


ENH:  Update ITK for B-spline esilon.

ENH:  Update ITK for B-spline esilon.

--- SuperBuild/External_ITKv4.cmake
+++ SuperBuild/External_ITKv4.cmake
@@ -154,7 +154,7 @@
   ### --- End Project specific additions
   set(${proj}_REPOSITORY ${git_protocol}://itk.org/ITK.git)
   set(${proj}_REPOSITORY "https://github.com/InsightSoftwareConsortium/ITK.git")
-  set(${proj}_GIT_TAG 042875b0246b0b2da1c1c58bf2f606b9590f6979)
+  set(${proj}_GIT_TAG 8dcc50abc770199638f0cec8fa8429b41e261039)
   set(ITK_VERSION_ID ITK-4.8) ### NOTE: When updating GIT_TAG, also update ITK_VERSION_ID

   ExternalProject_Add(${proj}


switch Xcode c++ standard to c++17

switch Xcode c++ standard to c++17

--- toolchains/apple.cmake
+++ toolchains/apple.cmake
@@ -15,9 +15,9 @@
 set( CMAKE_XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH NO                  )

 set( CMAKE_XCODE_ATTRIBUTE_GCC_C_LANGUAGE_STANDARD     gnu11   )
-set( CMAKE_XCODE_ATTRIBUTE_GCC_CXX_LANGUAGE_STANDARD   gnu++14 )
-set( CMAKE_XCODE_ATTRIBUTE_GCC_C++_LANGUAGE_STANDARD   gnu++14 )
-set( CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD gnu++14 )
+set( CMAKE_XCODE_ATTRIBUTE_GCC_CXX_LANGUAGE_STANDARD   gnu++17 )
+set( CMAKE_XCODE_ATTRIBUTE_GCC_C++_LANGUAGE_STANDARD   gnu++17 )
+set( CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD gnu++17 )

 # https://cmake.org/cmake/help/latest/policy/CMP0025.html
 # Required to distinguish AppleClang from true Clang on Apple platform


fixes issue 679
+ wait for 2nd nudge before killing infloop
+ wait for 3rd summary on linux before checking results

SVN-Revision: 605

--- tests/runtest.cmake
+++ tests/runtest.cmake
@@ -203,7 +203,8 @@
   if (TOOL_DR_HEAPSTAT)
     set(lookfor "Received nudge.*Received nudge")
   else ()
-    set(lookfor "for details\\)\n.*Details: ")
+    set(one_nudge "for details\\)\n.*Details: ")
+    set(lookfor "${one_nudge}.*${one_nudge}")
   endif ()
   file(READ "${out}" output)
   set(iters 0)
@@ -259,6 +260,21 @@
     message(FATAL_ERROR "*** kill failed (${kill_result}): ${kill_err}***\n")
   endif (kill_result)

+  # wait for end-of-run summary from postprocess
+  if (UNIX AND NOT TOOL_DR_HEAPSTAT)
+    set(lookfor "for details\\)\n.*Details: ")
+    file(READ "${out}" output)
+    set(iters 0)
+    while (NOT "${output}" MATCHES "${one_nudge}.*${one_nudge}.*${one_nudge}")
+      execute_process(COMMAND ${SLEEP_SHORT})
+      file(READ "${out}" output)
+      math(EXPR iters "${iters} + 1")
+      if ("${iters}" STREQUAL "${TIMEOUT_SHORT}")
+        message(FATAL_ERROR "Timed out waiting for final summary output")
+      endif ()
+    endwhile()
+  endif()
+
   file(READ "${out}" cmd_err)

 else ()


SVN_SILENT made messages (.desktop file)

--- vlc/vlc.desktop.cmake
+++ vlc/vlc.desktop.cmake
@@ -31,6 +31,7 @@
 Name[sv]=VLC
 Name[uk]=VLC
 Name[x-test]=xxVLCxx
+Name[zh_TW]=VLC

 Comment=Phonon VLC backend
 Comment[ca]=Dorsal del VLC pel Phonon
@@ -54,3 +55,4 @@
 Comment[sv]=Phonon VLC-gränssnitt
 Comment[uk]=Модуль VLC Phonon
 Comment[x-test]=xxPhonon VLC backendxx
+Comment[zh_TW]=Phonon VLC 後端介面


FIX: we *need* OPENGL_INCLUDE_DIR, since OPENGL_INCLUDE_PATH is *not* in the cache

--- vtkCMakeOptions.cmake
+++ vtkCMakeOptions.cmake
@@ -125,6 +125,12 @@
   ENDIF(WIN32)
 ENDIF(CMAKE_COMPILER_IS_GNUCXX)

+IF (OPENGL_INCLUDE_DIR)
+  INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
+ENDIF(OPENGL_INCLUDE_DIR)
+
+# This one because OPENGL_INCLUDE_PATH is also defined for backward compatibility
+
 IF (OPENGL_INCLUDE_PATH)
   INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_PATH})
 ENDIF(OPENGL_INCLUDE_PATH)


Updating eigen to newest

Updating eigen to newest

--- modules/LookUpEigen3.cmake
+++ modules/LookUpEigen3.cmake
@@ -22,19 +22,19 @@
       find_package(Wget)
       if(WGET_FOUND)
           execute_process(COMMAND ${WGET_EXECUTABLE}
-            http://bitbucket.org/eigen/eigen/get/3.2.4.tar.gz
+            http://bitbucket.org/eigen/eigen/get/3.2.5.tar.gz
             -O ${EXTERNAL_ROOT}/eigen.tgz
           )
       else()
           find_program(CURL_EXECUTABLE curl)
           execute_process(COMMAND ${CURL_EXECUTABLE}
-            -L http://bitbucket.org/eigen/eigen/get/3.2.4.tar.gz
+            -L http://bitbucket.org/eigen/eigen/get/3.2.5.tar.gz
             -o ${EXTERNAL_ROOT}/eigen.tgz
           )
       endif()
   endif()
   set(Eigen3_URL "${EXTERNAL_ROOT}/eigen.tgz")
-  set(Eigen3_MD5 4d0d77e06fef87b4fcd2c9b72cc8dc55)
+  set(Eigen3_MD5 21a928f6e0f1c7f24b6f63ff823593f5)
 endif()
 if(NOT Eigen3_BUILD_TYPE)
     set(Eigen3_BUILD_TYPE Release)


[GL3+] Mark GL3+ as experimental in the feature summary.

--HG--
branch : v1-9

--- CMake/FeatureSummary.cmake
+++ CMake/FeatureSummary.cmake
@@ -79,7 +79,7 @@
 	set(_rendersystems "${_rendersystems}  + OpenGL\n")
 endif ()
 if (OGRE_BUILD_RENDERSYSTEM_GL3PLUS)
-	set(_rendersystems "${_rendersystems}  + OpenGL 3+\n")
+	set(_rendersystems "${_rendersystems}  + OpenGL 3+ (EXPERIMENTAL)\n")
 endif ()
 if (OGRE_BUILD_RENDERSYSTEM_GLES)
 	set(_rendersystems "${_rendersystems}  + OpenGL ES 1.x\n")


support disabling tests in cmake under apple

Reviewed By: Orvid

Differential Revision: D27555992

fbshipit-source-id: d68dc183f7c7b7c64975ede21e6f3018575fb7c9

--- CMake/FollyFunctions.cmake
+++ CMake/FollyFunctions.cmake
@@ -228,6 +228,8 @@
                 list(APPEND test_${cur_test}_tag "SLOW")
               elseif ("x${ARGV${currentArg}}" STREQUAL "xWINDOWS_DISABLED")
                 list(APPEND test_${cur_test}_tag "WINDOWS_DISABLED")
+              elseif ("x${ARGV${currentArg}}" STREQUAL "xAPPLE_DISABLED")
+                list(APPEND test_${cur_test}_tag "APPLE_DISABLED")
               else()
                 message(FATAL_ERROR "Unknown test tag '${ARGV${currentArg}}'!")
               endif()
@@ -271,6 +273,7 @@
       AND (test_${cur_test}_tag MATCHES "\\bSLOW\\b" OR BUILD_SLOW_TESTS)
       AND (test_${cur_test}_tag MATCHES "\\bHANGING\\b" OR BUILD_HANGING_TESTS)
       AND (test_${cur_test}_tag MATCHES "\\bWINDOWS_DISABLED\\b" OR NOT WIN32)
+      AND (test_${cur_test}_tag MATCHES "\\bAPPLE_DISABLED\\b" OR NOT APPLE)
     )
       set(cur_test_name ${test_${cur_test}_name})
       set(cur_dir_name ${directory_${test_${cur_test}_directory}_name})


Improve error message when configuration fails.

Only suggest optional download on windows, otherwise suggest enabling
C++11.

--- CMake/sitkCheckCXX11.cmake
+++ CMake/sitkCheckCXX11.cmake
@@ -98,10 +98,20 @@

 if ( (NOT SITK_HAS_TR1_FUNCTIONAL AND NOT SITK_HAS_CXX11_FUNCTIONAL)
     OR
-    (NOT SITK_HAS_TR1_TYPE_TRAITS AND NOT SITK_HAS_CXX11_TYPE_TRAITS) )
-  message( FATAL_ERROR
-    "SimpleITK requires usage of C++11 or C++ Technical Report 1 (TR1).\n"
-    "It may be available as an optional download for your compiler or difference CXX_FLAGS."
-    "Please see the FAQs for details."
-    "http://simpleitk.readthedocs.io/en/master/Documentation/docs/source/faq.html#do-i-need-to-download-an-option-package-for-tr1-support\n")
-endif ( )
+    (NOT SITK_HAS_TR1_TYPE_TRAITS AND NOT SITK_HAS_CXX11_TYPE_TRAITS)
+    )
+  if (MSVC)
+    message( FATAL_ERROR
+      "SimpleITK requires usage of C++11 or C++ Technical Report 1 (TR1).\n"
+      "It may be available as an optional download for your compiler or difference CXX_FLAGS."
+      "Please see the FAQs for details."
+      "http://simpleitk.readthedocs.io/en/master/Documentation/docs/source/faq.html#do-i-need-to-download-an-option-package-for-tr1-support\n")
+  else()
+      message( FATAL_ERROR
+        "SimpleITK requires usage of C++11 or C++ Technical Report 1 "
+        "(TR1), but were neither able to detect TR1 nor automatically "
+        "enable C++11. Please review your configuration settings and "
+        "enable C++11.\n")
+
+  endif()
+endif ()


Remove MKL_ThreadingLibrary from required var. Sequential doesn have one

--- CMakeModules/FindMKL.cmake
+++ CMakeModules/FindMKL.cmake
@@ -357,8 +357,7 @@
   REQUIRED_VARS MKL_INCLUDE_DIR
                 MKL_Core_LINK_LIBRARY
                 MKL_Interface_LINK_LIBRARY
-                MKL_ThreadLayer_LINK_LIBRARY
-                MKL_ThreadingLibrary_LINK_LIBRARY)
+                MKL_ThreadLayer_LINK_LIBRARY)

 find_package_handle_standard_args(MKL_Static
   FAIL_MESSAGE "Could NOT find MKL: Source the compilervars.sh or mklvars.sh scripts included with your installation of MKL. This script searches for the libraries in MKLROOT, LIBRARY_PATHS(Linux), and LIB(Windows) environment variables"
@@ -366,8 +365,7 @@
   REQUIRED_VARS MKL_INCLUDE_DIR
                 MKL_Core_STATIC_LINK_LIBRARY
                 MKL_Interface_STATIC_LINK_LIBRARY
-                MKL_ThreadLayer_STATIC_LINK_LIBRARY
-                MKL_ThreadingLibrary_LINK_LIBRARY)
+                MKL_ThreadLayer_STATIC_LINK_LIBRARY)

 if(NOT WIN32)
   find_library(M_LIB m)


Backward - Disables use of additional stack unwinding libs

--- cmake/depthaiDependencies.cmake
+++ cmake/depthaiDependencies.cmake
@@ -38,7 +38,11 @@

     # Backward
     if(DEPTHAI_ENABLE_BACKWARD)
+        # Disable automatic check for additional stack unwinding libraries
+        # Just use the default compiler one
+        set(STACK_DETAILS_AUTO_DETECT FALSE)
         find_package(Backward ${_QUIET} CONFIG REQUIRED)
+        set(STACK_DETAILS_AUTO_DETECT)
     endif()

 endif()


Update googletest to release-1.11.0

Update googletest to release-1.11.0

--- cmake/external/googletest.cmake
+++ cmake/external/googletest.cmake
@@ -44,7 +44,7 @@
 ExternalProject_Add(${GTEST_TARGET}
     PREFIX ${GTEST_TARGET}
     GIT_REPOSITORY https://github.com/google/googletest.git
-    GIT_TAG 3f05f651ae3621db58468153e32016bc1397800b
+    GIT_TAG release-1.11.0
     UPDATE_COMMAND ""
     CMAKE_CACHE_ARGS -DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
                      -DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}


Update copyright notice with my email.

Update copyright notice with my email.

--- cmake/modules/FindLibGCal.cmake
+++ cmake/modules/FindLibGCal.cmake
@@ -8,7 +8,7 @@
 #	LIBGCAL_FOUND
 #	LIBGCAL_LIBRARY
 #
-# Copyright Mike Arthur 2009.
+# Copyright (c) 2009 Mike Arthur <mike@mikearthur.co.uk>
 find_path(LIBGCAL_INCLUDE_DIR gcal.h)

 set(LIBGCAL_NAMES ${LIBGCAL_NAMES} gcal)


Fix for ROOT-6208

Fix for ROOT-6208

--- cmake/modules/FindPythia8.cmake
+++ cmake/modules/FindPythia8.cmake
@@ -1,36 +1,52 @@
 # Find the Pythia8 includes and library.
 #
 # This module defines
-# PYTHIA8_INCLUDE_DIR, where to locate Pythia.h file
-# PYTHIA8_LIBRARIES, the libraries to link against to use Pythia6
-# PYTHIA8_FOUND.  If false, you cannot build anything that requires Pythia6.
-# PYTHIA8_LIBRARY, where to find the libpythia8 library.
+# PYTHIA8_INCLUDE_DIR   where to locate Pythia.h file
+# PYTHIA8_LIBRARY       where to find the libpythia8 library
+# PYTHIA8_<lib>_LIBRARY Addicional libraries
+# PYTHIA8_LIBRARIES     (not cached) the libraries to link against to use Pythia8
+# PYTHIA8_FOUND         if false, you cannot build anything that requires Pythia8
+# PYTHIA8_VERSION       version of Pythia8 if found

-set(PYTHIA8_FOUND 0)
+set(_pythia8dirs ${PYTHIA8_DIR} $ENV{PYTHIA8_DIR} /usr /opt/pythia8)

-find_path(PYTHIA8_INCLUDE_DIR Pythia.h
-  $ENV{PYTHIA8_DIR}/include
-  /opt/pythia8/include
-  /usr/local/include
-  /usr/include
-  /usr/include/pythia
-  DOC "Specify the directory containing Pythia.h."
-)
+find_path(PYTHIA8_INCLUDE_DIR
+          NAMES Pythia.h Pythia8/Pythia.h
+          PATHS ${_pythia8dirs}
+          PATH_SUFFIXES include
+          DOC "Specify the directory containing Pythia.h.")

-find_library(PYTHIA8_LIBRARY NAMES Pythia8 pythia8 PATHS
-  $ENV{PYTHIA8_DIR}/lib
-  /opt/pythia8/lib
-  /usr/local/lib
-  /usr/lib
-  DOC "Specify the Pythia8 library here."
-)
+find_library(PYTHIA8_LIBRARY
+             NAMES pythia8 Pythia8
+             PATHS ${_pythia8dirs}
+             PATH_SUFFIXES lib
+             DOC "Specify the Pythia8 library here.")

-if(PYTHIA8_INCLUDE_DIR AND PYTHIA8_LIBRARY)
-  set(PYTHIA8_FOUND 1 )
-  message(STATUS "Found Pythia8 library at ${PYTHIA8_LIBRARY}")
+find_library(PYTHIA8_hepmcinterface_LIBRARY
+             NAMES hepmcinterface pythia8tohepmc
+             PATHS ${_pythia8dirs}
+             PATH_SUFFIXES lib)
+
+find_library(PYTHIA8_lhapdfdummy_LIBRARY
+             NAMES lhapdfdummy
+             PATHS ${_pythia8dirs}
+             PATH_SUFFIXES lib)
+
+foreach(_lib PYTHIA8_LIBRARY PYTHIA8_hepmcinterface_LIBRARY PYTHIA8_lhapdfdummy_LIBRARY)
+  if(${_lib})
+    set(PYTHIA8_LIBRARIES ${PYTHIA8_LIBRARIES} ${${_lib}})
+  endif()
+endforeach()
+
+# handle the QUIETLY and REQUIRED arguments and set PYTHIA8_FOUND to TRUE if
+# all listed variables are TRUE
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(Pythia8 DEFAULT_MSG PYTHIA8_INCLUDE_DIR PYTHIA8_LIBRARY)
+mark_as_advanced(PYTHIA8_INCLUDE_DIR PYTHIA8_LIBRARY PYTHIA8_hepmcinterface_LIBRARY PYTHIA8_lhapdfdummy_LIBRARY)
+
+if(PYTHIA8_FOUND)
+  file(READ ${PYTHIA8_INCLUDE_DIR}/../xmldoc/Version.xml versionstr)
+  string(REGEX REPLACE ".*Pythia:versionNumber.*default.*[0-9][.]([0-9]+).*" "\\1" PYTHIA8_VERSION "${versionstr}")
 endif()

-
-set(PYTHIA8_LIBRARIES ${PYTHIA8_LIBRARY})
-
-MARK_AS_ADVANCED( PYTHIA8_FOUND PYTHIA8_LIBRARY PYTHIA8_INCLUDE_DIR)


TK_LIBRARY is not a suitable replacement for ITK_LIBRARY. This causes
the tk build to fail on debian testing with cmake 2.6.0 (although it
seems ok on my older system with cmake 2.4).

svn path=/trunk/; revision=8518

--- cmake/modules/tcl-related.cmake
+++ cmake/modules/tcl-related.cmake
@@ -152,7 +152,7 @@
         message(STATUS "Looking for itk library")
         set(itk_library_versions 3.4 3.3 3.2 3.1 3.0 2.1 2.0)
         foreach(version ${itk_library_versions})
-          find_library(ITK_LIBRARY itk${version} ${TK_LIBRARY}
+          find_library(ITK_LIBRARY itk${version}
                        PATH_SUFFIXES itk${version})
         endforeach(version ${itk_library_versions})
         if(ITK_LIBRARY)


zorbacmd depends on check_core_uris.

zorbacmd depends on check_core_uris.

--- cmake_modules/ZorbaModule.cmake
+++ cmake_modules/ZorbaModule.cmake
@@ -523,11 +523,15 @@
       ENDIF (_is_core)
     ENDWHILE (copy_rules)

+    # Targets and dependencies:
+    #   ALL depends on check_uris; check_uris depends on check_core_uris;
+    #   zorbacmd depends on check_core_uris.
     ADD_CUSTOM_TARGET (check_core_uris
       DEPENDS ${_core_output_files} VERBATIM)
     ADD_CUSTOM_TARGET (check_uris ALL
       DEPENDS ${_noncore_output_files} VERBATIM)
     ADD_DEPENDENCIES(check_uris check_core_uris)
+    ADD_DEPENDENCIES(zorbacmd check_core_uris)
     SET_TARGET_PROPERTIES(check_core_uris PROPERTIES FOLDER "Modules")
     SET_TARGET_PROPERTIES(check_uris PROPERTIES FOLDER "Modules")
     SET_PROPERTY (GLOBAL PROPERTY ZORBA_URI_FILES)


Update to eigen 3.3.4

Update to eigen 3.3.4

--- cmakemodules/script_eigen.cmake
+++ cmakemodules/script_eigen.cmake
@@ -23,8 +23,8 @@
 	include(ExternalProject)
 	# download Eigen from bitbucket
 	ExternalProject_Add(eigen3
-	  URL               "https://bitbucket.org/eigen/eigen/get/3.3.3.tar.bz2"
-	  URL_MD5           "b2ddade41040d9cf73b39b4b51e8775b"
+	  URL               "https://bitbucket.org/eigen/eigen/get/3.3.4.tar.bz2"
+	  URL_MD5           "a7aab9f758249b86c93221ad417fbe18"
 	  SOURCE_DIR        "${MRPT_SOURCE_DIR}/otherlibs/eigen3/"
 	  CONFIGURE_COMMAND ""
 	  BUILD_COMMAND     ""


improve packaging config

improve packaging config

--- CMake/CPackConfig.cmake
+++ CMake/CPackConfig.cmake
@@ -33,7 +33,8 @@
   set(CPACK_PACKAGE_FILE_NAME "qtshanoir-${QTSHANOIR_VERSION_MAJOR}.${QTSHANOIR_VERSION_MINOR}.${QTSHANOIR_VERSION_PATCH}")
   set(CPACK_SOURCE_PACKAGE_FILE_NAME "qtshanoir-${QTSHANOIR_VERSION_MAJOR}.${QTSHANOIR_VERSION_MINOR}.${QTSHANOIR_VERSION_PATCH}-src")
   if(NOT WIN32)
-    set(CMAKE_INSTALL_PREFIX "/usr")
+#     set(CMAKE_INSTALL_PREFIX "/usr")
+    set(CPACK_PACKAGING_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
     if(BUILD_PACKAGE_DEBIAN)
       include(${QTSHANOIR_SOURCE_DIR}/CMake/CPackDebConfig.cmake)
     endif(BUILD_PACKAGE_DEBIAN)


bintools: append ; to > to ensure a space

Ensure > is an independent argument.
The ; will ensure that the `>` and `outfile` are given as two arguments
and thus ensure correct behavior in all cases.

Signed-off-by: Torsten Rasmussen <a7c5b1d5a1f41fce6edfa3f7c2392ae0c59deafe@nordicsemi.no>

--- cmake/bintools/gnu/target_bintools.cmake
+++ cmake/bintools/gnu/target_bintools.cmake
@@ -68,7 +68,7 @@
 set_property(TARGET bintools PROPERTY disassembly_flag_all -SDz)

 set_property(TARGET bintools PROPERTY disassembly_flag_infile "")
-set_property(TARGET bintools PROPERTY disassembly_flag_outfile > )
+set_property(TARGET bintools PROPERTY disassembly_flag_outfile ">;" )

 #
 # - strip: Name of command for stripping symbols
@@ -114,7 +114,7 @@
 set_property(TARGET bintools PROPERTY readelf_flag_headers -e)

 set_property(TARGET bintools PROPERTY readelf_flag_infile "")
-set_property(TARGET bintools PROPERTY readelf_flag_outfile > )
+set_property(TARGET bintools PROPERTY readelf_flag_outfile ">;" )

 # Example on how to support dwarfdump instead of readelf
 #set_property(TARGET bintools PROPERTY readelf_command dwarfdump)


cmake: Python 2.6 compatibility fix

cmake: Python 2.6 compatibility fix

--- config/FindVIGRANUMPY_DEPENDENCIES.cmake
+++ config/FindVIGRANUMPY_DEPENDENCIES.cmake
@@ -7,7 +7,7 @@
 IF(PYTHONINTERP_FOUND)
     # check that Python version 2.x is used
     execute_process(COMMAND ${PYTHON_EXECUTABLE} -c
-                         "import sys; print sys.version_info.major"
+                         "import sys; print sys.version[0]"
                           OUTPUT_VARIABLE PYTHON_MAJOR_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
     IF(${PYTHON_MAJOR_VERSION} EQUAL 2)
         SET(PYTHONINTERP_V2_FOUND 1)


minor fix

minor fix

--- Examples/Examples.cmake
+++ Examples/Examples.cmake
@@ -161,6 +161,8 @@
 	find_package(NumPy)
 	if(PYTHONLIBS_FOUND AND PYTHON_NUMPY_FOUND)
 		execute_process (COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())" OUTPUT_VARIABLE MTF_PY_INSTALL_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
+		message(STATUS "MDP_PY_INSTALL_DIR: ${MDP_PY_INSTALL_DIR}")
+
 		# if(PYTHONLIBS_VERSION_STRING VERSION_LESS 3.0.0)
 			add_library(pyMTF MODULE Examples/cpp/pyMTF.cc)
 			set_target_properties(pyMTF PROPERTIES PREFIX "")


FIX (#1139): reverting archive and library dest to bin

--- BlueBerry/CMake/MacroInstallPlugin.cmake
+++ BlueBerry/CMake/MacroInstallPlugin.cmake
@@ -48,9 +48,9 @@
                         PROPERTIES INSTALL_RPATH "${_target_install_rpath}")

   INSTALL(TARGETS ${_INSTALL_TARGETS}
-                  RUNTIME DESTINATION ${_plugin_install_dir}/bin
-          LIBRARY DESTINATION ${_plugin_install_dir}/lib
-          ARCHIVE DESTINATION ${_plugin_install_dir}/lib
+          RUNTIME DESTINATION ${_plugin_install_dir}/bin
+          LIBRARY DESTINATION ${_plugin_install_dir}/bin
+          ARCHIVE DESTINATION ${_plugin_install_dir}/bin
      )

 ENDMACRO()


Update FindMOAB.cmake

Update FindMOAB.cmake

--- FindMoab/FindMOAB.cmake
+++ FindMoab/FindMOAB.cmake
@@ -67,10 +67,10 @@
           ${HDF5_CXX_LIBRARIES}
           ${HDF5_HL_LIBRARIES})
   endif()
-
-  set(MOAB_INCLUDE_DIRS ${ZLIB_INCLUDE_DIR})
-  set(MOAB_LIBRARIES ${ZLIB_LIBRARY})
 endif()
+
+set(MOAB_INCLUDE_DIRS ${MOAB_INCLUDE_DIR})
+set(MOAB_LIBRARIES ${MOAB_LIBRARY})

 mark_as_advanced(MOAB_INCLUDE_DIR MOAB_LIBRARY)


Windows: Removed `/debug:fastlink` linker flag.

With Visual Studio 2017, `fastlink` is now the default, so this is
superfluous. Morever, this particular CMake variable also passes the
flag to `lib.exe` when generating a static library, and this emits a
warning because `lib.exe` does not accept this flag. It was intended to
be sent to the `link.exe` linker, and so should not have included
`STATIC` in the list of types.

--- cmake/CompilationConfigure.cmake
+++ cmake/CompilationConfigure.cmake
@@ -264,12 +264,6 @@
 # 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 (type EXE SHARED STATIC MODULE)
-    string(APPEND CMAKE_${type}_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.
   string(APPEND CMAKE_CXX_FLAGS " /bigobj /vd2 /permissive-")


Fix a bug where pkgs with msgs and python source were not handled correctly

--- cmake/catkin_export_python.cmake
+++ cmake/catkin_export_python.cmake
@@ -20,6 +20,8 @@
     endif()
   endforeach()

+  # Put in parent scope so we can check if catkin_export_python have been called already
+  set(PACKAGE_PYTHONPATH ${PACKAGE_PYTHONPATH} PARENT_SCOPE)

   configure_file(${catkin_EXTRAS_DIR}/templates/__init__.py.in
     ${CMAKE_BINARY_DIR}/gen/py/${pkg_name}/__init__.py


rttr on master now

rttr on master now

--- cmake/external/FindRTTRLib.cmake
+++ cmake/external/FindRTTRLib.cmake
@@ -21,7 +21,7 @@

         ExternalProject_Add(rttr
                             GIT_REPOSITORY      https://github.com/gabyx/rttr.git
-                            GIT_TAG             disable-warnings
+                            GIT_TAG             master
                             GIT_SHALLOW         ON
                             PREFIX              "${ExecutionGraph_EXTERNAL_BUILD_DIR}/rttr"
                             TIMEOUT 10


Make sure intltool-merge cache is created only once

Similar to https://gitlab.gnome.org/GNOME/evolution/issues/196
when intltool-merge is called in parallel, it could either rewrite
the ongoing attempt to build it or use an incomplete data, which
results in broken output files (.desktop, .metainfo and so on).
This change ensures the intltool-merge cache is created only once
and any other requests which would use it will wait until it's created.

--- cmake/modules/FindIntltool.cmake
+++ cmake/modules/FindIntltool.cmake
@@ -176,9 +176,18 @@
 			DEPENDS ${_in}
 		)
 	else(_has_no_translations)
+		if(NOT TARGET intltool-merge-cache)
+			add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/po/.intltool-merge-cache
+				COMMAND ${INTLTOOL_MERGE} ${_args} --quiet --cache="${CMAKE_BINARY_DIR}/po/.intltool-merge-cache" "${GETTEXT_PO_DIR}" "${_in}" "${_out}"
+				DEPENDS ${_in}
+			)
+			add_custom_target(intltool-merge-cache ALL
+				DEPENDS ${CMAKE_BINARY_DIR}/po/.intltool-merge-cache)
+		endif(NOT TARGET intltool-merge-cache)
+
 		add_custom_command(OUTPUT ${_out}
 			COMMAND ${INTLTOOL_MERGE} ${_args} --quiet --cache="${CMAKE_BINARY_DIR}/po/.intltool-merge-cache" "${GETTEXT_PO_DIR}" "${_in}" "${_out}"
-			DEPENDS ${_in}
+			DEPENDS ${_in} intltool-merge-cache
 		)
 	endif(_has_no_translations)
 endmacro(intltool_merge)


Split info message on mac.

Split info message on mac.

--- cmake/setup_custom_targets.cmake
+++ cmake/setup_custom_targets.cmake
@@ -99,19 +99,6 @@
   COMMENT "Indenting all files in the deal.II directories"
   )

-#
-# Provide "relocate" target to run install_name_tool on all external libraries
-# under ${DEAL_II_CPACK_EXTERNAL_LIBS_TREE}
-#
-IF(CMAKE_SYSTEM_NAME MATCHES "Darwin" AND
-  NOT "${DEAL_II_CPACK_EXTERNAL_LIBS_TREE}" STREQUAL "")
-  ADD_CUSTOM_TARGET(relocate
-    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
-    COMMAND ./contrib/utilities/relocate_libraries.py
-    COMMENT "Running install_name_tool under ${DEAL_II_CPACK_EXTERNAL_LIBS_TREE}"
-    )
-ENDIF()
-

 #
 # Provide an "info" target to print a help message:
@@ -152,12 +139,30 @@
 #    prune_tests    - remove all testsuite subprojects
 #
 #    indent         - indent all headers and source file
+")
+
 #
-#    relocate       - (only available on Darwin machines) fix RPATH for external
-#                     libraries, if packaging was requested
+# Provide "relocate" target to run install_name_tool on all external libraries
+# under ${DEAL_II_CPACK_EXTERNAL_LIBS_TREE}
 #
+IF(CMAKE_SYSTEM_NAME MATCHES "Darwin" AND
+  NOT "${DEAL_II_CPACK_EXTERNAL_LIBS_TREE}" STREQUAL "")
+  ADD_CUSTOM_TARGET(relocate
+    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
+    COMMAND ./contrib/utilities/relocate_libraries.py
+    COMMENT "Running install_name_tool under ${DEAL_II_CPACK_EXTERNAL_LIBS_TREE}"
+    )
+  FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/print_info.cmake
+  "#
+#    relocate       - fix RPATH for external libraries, if packaging was requested
+"
+   )
+ENDIF()
+
+FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/print_info.cmake
+"#
 ###\")"
-  )
+)

 ADD_CUSTOM_TARGET(info
   COMMAND ${CMAKE_COMMAND} -P ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/print_info.cmake


Propagate CMAKE_MAKE_PROGRAM to superbuild probjects

This cmake variable is needed for the Ninja generator.

Change-Id: Ifee647078ea91a408b9263a016147fa352353e3c

--- SuperBuild/SuperBuild.cmake
+++ SuperBuild/SuperBuild.cmake
@@ -165,6 +165,7 @@
 list( APPEND ep_common_list
   MAKECOMMAND
   CMAKE_BUILD_TYPE
+  CMAKE_MAKE_PROGRAM

   CMAKE_C_COMPILER
   CMAKE_C_COMPILER_ARG1


Propagate CMAKE_DISABLE_FIND_PACKAGE_* to SimpleITK superbuild

Calling find_package for all languages can have side effects, such as
on OSX, displaying a prompt to install Java. There must be a way to
disable searching for wrapped languages. This patch enables a standard
CMake variable to disable finding languages.

Suggested-by: Jean-Christophe Fillion-Robin <859d3fd8ca46de62a08fca56c64958e301f5352c@kitware.com>

--- SuperBuild/SuperBuild.cmake
+++ SuperBuild/SuperBuild.cmake
@@ -386,6 +386,8 @@
          _varName MATCHES "^BUILD_DOXYGEN$"
        OR
          _varName MATCHES "^DOXYGEN_"
+       OR
+         _varName MATCHES "^CMAKE_DISABLE_FIND_PACKAGE_"
          )
     message( STATUS "Passing variable \"${_varName}=${${_varName}}\" to SimpleITK external project.")
     list(APPEND SimpleITK_VARS ${_varName})


fix update command

fix update command

git-svn-id: 8b72b58fb31a931b6e9a2bd3bb08bc6614045fb1@3416 c330d7e9-fc0c-0410-a5b3-fd85c6f5aa8f

--- test/openVibeTests.cmake
+++ test/openVibeTests.cmake
@@ -74,7 +74,7 @@
 endif(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}")

 ## -- Update Command
-set(CTEST_UPDATE_COMMAND               "${CTEST_SVN_COMMAND} update")
+set(CTEST_UPDATE_COMMAND               "${CTEST_SVN_COMMAND}")


Add the generated/include output directory into mbedOS.cmake

--- CMake/Platform/mbedOS.cmake
+++ CMake/Platform/mbedOS.cmake
@@ -14,6 +14,9 @@
 set(CMAKE_ASM_OUTPUT_EXTENSION ".o")
 set(CMAKE_CXX_OUTPUT_EXTENSION ".o")

+include_directories("${CMAKE_BINARY_DIR}/generated/include")
+file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/generated/include")
+
 # adjust the default behaviour of the FIND_XXX() commands:
 # search headers and libraries in the target environment, search
 # programs in the host environment


Module macros cleanup.

Module macros cleanup.

Projects sometimes want to add modules directly i.e. have the vtk_module(..) and
vtk_module_library(..) calls directly added in the same CMakeLists.txt file
without using a module.cmake at all. This is needed especially for modules that
tend to depend on "all enabled" modules. This change ensures that
vtkModuleMacros work even when module.cmake is missing.

Change-Id: I11122a330cb31b3f8785435fddd44d44df9bd236

--- CMake/vtkModuleMacros.cmake
+++ CMake/vtkModuleMacros.cmake
@@ -97,7 +97,7 @@
 # This macro provides module implementation, setting up important variables
 # necessary to build a module. It assumes we are in the directory of the module.
 macro(vtk_module_impl)
-  include(module.cmake) # Load module meta-data
+  include(module.cmake OPTIONAL) # Load module meta-data

   vtk_module_config(_dep ${${vtk-module}_DEPENDS})
   if(_dep_INCLUDE_DIRS)


add lib64 to search path

add lib64 to search path

git-svn-id: 7720f8ced686bbe1e9a8fc98aef2dd4d5d9a3e92@52 995b7d7e-cf50-0410-b6c9-9f4ebe303554

--- CMakeModules/FindlibSquish.cmake
+++ CMakeModules/FindlibSquish.cmake
@@ -4,7 +4,7 @@
 #  LIBSQUISH_LIBRARIES

 FIND_PATH(LIBSQUISH_INCLUDE_DIR squish.h PATHS . squish .. ../squish DOC "Directory containing libSquish headers")
-FIND_LIBRARY(LIBSQUISH_LIBRARY NAMES squish libsquish PATHS . squish .. ../squish PATH_SUFFIXES lib release minsizerel relwithdebinfo DOC "Path to libSquish library")
+FIND_LIBRARY(LIBSQUISH_LIBRARY NAMES squish libsquish PATHS . squish .. ../squish PATH_SUFFIXES lib lib64 release minsizerel relwithdebinfo DOC "Path to libSquish library")

 SET(LIBSQUISH_LIBRARIES ${LIBSQUISH_LIBRARY})


COMP: update shark version to use RF with node id

--- SuperBuild/CMake/External_shark.cmake
+++ SuperBuild/CMake/External_shark.cmake
@@ -30,8 +30,8 @@

 ExternalProject_Add(SHARK
   PREFIX SHARK
-  URL "https://github.com/Shark-ML/Shark/archive/a7346060ba50edaf7d31e2677058258ad7d11692.zip"
-  URL_MD5 120b7ea9d93e329ddaf310985c295c5e
+  URL "https://github.com/Shark-ML/Shark/archive/75eac83266e3713e00af2d1ca1264fc6e44322b8.zip"
+  URL_MD5 bfbdf1fe8e0563dbf8af87da9419dc0f
   SOURCE_DIR ${SHARK_SB_SRC}
   BINARY_DIR ${SHARK_SB_BUILD_DIR}
   INSTALL_DIR ${SB_INSTALL_PREFIX}


BUG: Mantis-1419: FindOpenCV.cmake supports multiarch paths (spotted by Bas Couwenberg <sebastic@debian.org>)

--- CMake/FindOpenCV.cmake
+++ CMake/FindOpenCV.cmake
@@ -116,7 +116,7 @@
   OPENCV_core_LIBRARY
   NAMES ${opencv_core_NAMES}
   PATHS ${OPENCV_SEARCH_PATH}
-  PATH_SUFFIXES "lib" "lib64" "lib/x86_64-linux-gnu"
+  PATH_SUFFIXES "lib" "lib64" "lib/${CMAKE_LIBRARY_ARCHITECTURE}"
   NO_DEFAULT_PATH
   DOC "Path to opencv_core library")

@@ -124,7 +124,7 @@
   OPENCV_ml_LIBRARY
   NAMES ${opencv_ml_NAMES}
   PATHS ${OPENCV_SEARCH_PATH}
-  PATH_SUFFIXES "lib" "lib64" "lib/x86_64-linux-gnu"
+  PATH_SUFFIXES "lib" "lib64" "lib/${CMAKE_LIBRARY_ARCHITECTURE}"
   NO_DEFAULT_PATH
   DOC "Path to opencv_ml library")


ENH: Bump the ITK CMake version to 5.1.0

--- CMake/itkVersion.cmake
+++ CMake/itkVersion.cmake
@@ -1,4 +1,4 @@
 # ITK version number components.
 set(ITK_VERSION_MAJOR "5")
 set(ITK_VERSION_MINOR "2")
-set(ITK_VERSION_PATCH "0")
+set(ITK_VERSION_PATCH "1")


ENH : Add option for compilation

ENH : Add option for compilation

--- spharm-pdm.cmake
+++ spharm-pdm.cmake
@@ -25,7 +25,11 @@
   #${CLAPACK_DIR}/SRC
   #${CLAPACK_DIR}/BLAS/SRC
   ${CLAPACK_DIR}/F2CLIBS/libf2c)
-set(CLAPACK_LIBRARIES lapack blas f2c)
+if(WIN32)
+  set(CLAPACK_LIBRARIES lapack blas libf2c)
+else()
+  set(CLAPACK_LIBRARIES lapack blas f2c)
+endif()

 link_directories( ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY} )
 link_directories(${CLAPACK_LIBRARY_DIRECTORIES})


BUG: Missing INSTALL_*_DIRECTORY if not build as an extension

--- FiberViewerLight.cmake
+++ FiberViewerLight.cmake
@@ -80,6 +80,12 @@
     generateclp(Launcher_CLP FiberViewerLight.xml )
     add_executable( FiberViewerLightLauncher Launcher.cxx ${Launcher_CLP} )
   endif()
+else()
+  set( INSTALL_RULES
+       INSTALL_RUNTIME_DESTINATION bin
+       INSTALL_LIBRARY_DESTINATION lib
+       INSTALL_ARCHIVE_DESTINATION lib
+     )
 endif()

 QT4_WRAP_CPP(MOC_FILES FiberViewerLightGUI.h FVLengthGUI.h FVDistributionGUI.h FVPanelGUI.h FVDisplayClassGUI.h FVCutterGUI.h FVNormalizedCutGUI.h PlanSetting.h FiberDisplay.h)
@@ -109,6 +115,7 @@
   TARGET_LIBRARIES ${FVL_LIBRARIES}
   LINK_DIRECTORIES ${VTK_LIBRARY_DIRS}
   INCLUDE_DIRECTORIES ${QT_INCLUDE_DIR} ${FiberViewerLight_BINARY_DIR} ${FiberViewerLight_SOURCE_DIR} ${QWT_INCLUDE_DIR} ${VTK_INCLUDE_DIRS}
+  ${INSTALL_RULES}
   )

 if( EXTENSION )


COMP: Updated CMake driver script to consider the new git repository

Changed from github.com/pieper to github.com/commontk

--- CMake/ctkDashboardDriverScript.cmake
+++ CMake/ctkDashboardDriverScript.cmake
@@ -95,7 +95,7 @@
 endif()

 if(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}")
-  set(CTEST_CHECKOUT_COMMAND "${CTEST_GIT_COMMAND} clone http://github.com/pieper/CTK.git ${CTEST_SOURCE_DIRECTORY}")
+  set(CTEST_CHECKOUT_COMMAND "${CTEST_GIT_COMMAND} clone http://github.com/commontk/CTK.git ${CTEST_SOURCE_DIRECTORY}")
 endif()

 set(CTEST_UPDATE_COMMAND "${CTEST_GIT_COMMAND}")


Set SITK_NOSHOW env var for Lua tests

Set SITK_NOSHOW env var for Lua tests

Set the SITK_NOSHOW environment variable when running Lua tests.
That way Lua tests know not to call the sitk Show function.

Change-Id: Ib0370bb9b5a533d7330163169721017117f5594b

--- CMake/sitkAddTest.cmake
+++ CMake/sitkAddTest.cmake
@@ -98,6 +98,9 @@
     )
   set_property(TEST Lua.${name}
     PROPERTY ENVIRONMENT LUA_CPATH=$<TARGET_FILE:SimpleITKLuaModule_LUA>
+    )
+  set_property(TEST Lua.${name}
+    PROPERTY ENVIRONMENT SITK_NOSHOW=YES
     )
 endfunction()


Added option to CMake to not auto-build llvm.

This greatly increases build speed on build systems that have
slow dependency resolution (make, msvc), but requires you to
manually build llvm_target any time it changes.

Change-Id: I2bd3f5cd3875e6ef6477656020ba346328327b37
Reviewed-on: https://wn-project.dnsalias.net/gerrit/93
Reviewed-by: Devon Powell <bef84a74f4a3947934cc58306a6aae518eaf1936@gmail.com>
Try: Andrew Woloszyn <2926f0436f8103ab8257713335cf26447d8bf68a@google.com>
Tested-by: WNBot <efa0942020584fb66fb8bea377b59e48fa0f85ef@gmail.com>

--- Utilities/helpers.cmake
+++ Utilities/helpers.cmake
@@ -285,9 +285,15 @@

 llvm_map_components_to_libnames(WNScriptingLLVMLibs ${WNScriptingLLVMComponents})

-foreach (llvm_lib ${WNScriptingLLVMLibs})
-  add_dependencies(${llvm_lib} llvm_target)
-endforeach()
+option(WN_BUILD_LLVM_MANUALLY
+  "Do not automatically build llvm when a dependency is built"
+  ${WN_BUILD_LLVM_MANUALLY})
+
+if (NOT ${WN_BUILD_LLVM_MANUALLY})
+  foreach (llvm_lib ${WNScriptingLLVMLibs})
+    add_dependencies(${llvm_lib} llvm_target)
+  endforeach()
+endif()

 get_property(OLD_DIRECTORY TARGET llvm_target PROPERTY FOLDER)
 set_property(TARGET llvm_target PROPERTY FOLDER Externals/${OLD_DIRECTORY})


pass on CMAKE_CROSSCOMPILING_EMULATOR to python build

--- PyPort/compile-python.cmake
+++ PyPort/compile-python.cmake
@@ -11,6 +11,7 @@
 			-DCMAKE_INSTALL_PREFIX=${PYTHON_HOME}/
 			-DBUILD_EXTENSIONS_AS_BUILTIN=ON
 			-DCMAKE_DEBUG_POSTFIX=${CMAKE_DEBUG_POSTFIX}
+			-DCMAKE_CROSSCOMPILING_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}
 		CACHE STRING "cmake options to use when building using submodule to build Python"
 	)
 	if(NOT EXISTS "${PYTHON_SOURCE}/.git")


Supress Wuffs compiler warnings

Supress Wuffs compiler warnings

--- Source/cmake_core.cmake
+++ Source/cmake_core.cmake
@@ -265,7 +265,9 @@
             " $<$<NOT:$<CXX_COMPILER_ID:MSVC>>: -Wno-tautological-type-limit-compare>"
             " $<$<NOT:$<CXX_COMPILER_ID:MSVC>>: -Wno-cast-qual>"
             " $<$<CXX_COMPILER_ID:Clang>: -Wno-reserved-identifier>"
-            " $<$<CXX_COMPILER_ID:Clang>: -Wno-missing-prototypes>")
+            " $<$<CXX_COMPILER_ID:Clang>: -Wno-missing-prototypes>"
+            " $<$<CXX_COMPILER_ID:Clang>: -Wno-suggest-override>"
+            " $<$<CXX_COMPILER_ID:Clang>: -Wno-used-but-marked-unused>")

     set_source_files_properties(astcenccli_image_external.cpp
         PROPERTIES


refs #5889 fix O_DIRECT detection

refs #5889 fix O_DIRECT detection

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

--- cmake_modules/TokuFeatureDetection.cmake
+++ cmake_modules/TokuFeatureDetection.cmake
@@ -54,6 +54,9 @@
 ## check whether we have CLOCK_REALTIME
 check_symbol_exists(CLOCK_REALTIME "time.h" HAVE_CLOCK_REALTIME)
 ## check how to do direct I/O
+if (NOT CMAKE_SYSTEM_NAME STREQUAL FreeBSD)
+  set(CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE)
+endif ()
 check_symbol_exists(O_DIRECT "fcntl.h" HAVE_O_DIRECT)
 check_symbol_exists(F_NOCACHE "fcntl.h" HAVE_F_NOCACHE)


SVN_SILENT made messages (.desktop file) - always resolve ours

In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"

--- plasma-runner-ktp-contact.desktop.cmake
+++ plasma-runner-ktp-contact.desktop.cmake
@@ -1,6 +1,7 @@
 [Desktop Entry]
 Name=Instant Messaging
 Name[ar]=التّراسل المباشر
+Name[ast]=Mensaxería nel intre
 Name[bs]=Brze poruke
 Name[ca]=Missatgeria instantània
 Name[ca@valencia]=Missatgeria instantània
@@ -45,6 +46,7 @@
 Name[zh_TW]=即時訊息
 Comment=Start a chat with any of your IM contacts or change your IM status
 Comment[ar]=ابدأ محادثة بأيّ من متراسلي ت‌م أو غيّر حالة ت‌م
+Comment[ast]=Entama a charrar con cualesquier contautu MI de to o camuda la to presencia
 Comment[bs]=Pokrenite ćaskanje s bilo kojim od vaših IM kontakta ili promijenite svoj IM status
 Comment[ca]=Inicia un xat amb qualsevol dels vostres contactes de MI o canvia el vostre estat a la MI
 Comment[ca@valencia]=Inicia un xat amb qualsevol dels vostres contactes de MI o canvia el vostre estat a la MI


 Removed obsolete ftemplate-depth, as the defaults should be fine

git-svn-id: e0b5bbb11d0e9fdbbfcabba14dc32ad5d6b235bd@975 fdac6126-5c0c-442c-9429-916003d36597

--- cmake/ACGCompiler.cmake
+++ cmake/ACGCompiler.cmake
@@ -66,13 +66,15 @@
   list(APPEND ADDITIONAL_C_DEBUG_FLAGS            "-DINCLUDE_TEMPLATES" )
   list(APPEND ADDITIONAL_C_RELEASE_FLAGS          "-DINCLUDE_TEMPLATES" )
   list(APPEND ADDITIONAL_C_RELWITHDEBINFO_FLAGS   "-DINCLUDE_TEMPLATES" )
-
-  # Increase the template depth as this might be exceeded from time to time
-  IF( NOT CMAKE_SYSTEM MATCHES "SunOS*")
-    list(APPEND ADDITIONAL_CXX_DEBUG_FLAGS          "-ftemplate-depth-100" )
-    list(APPEND ADDITIONAL_CXX_RELEASE_FLAGS        "-ftemplate-depth-100" )
-    list(APPEND ADDITIONAL_CXX_RELWITHDEBINFO_FLAGS "-ftemplate-depth-100" )
-  ENDIF()
+
+#  Deprecated setting. Remove in future release, as the default template depth
+#  should be enough with state of the art compilers
+#  # Increase the template depth as this might be exceeded from time to time
+#  IF( NOT CMAKE_SYSTEM MATCHES "SunOS*")
+#    list(APPEND ADDITIONAL_CXX_DEBUG_FLAGS          "-ftemplate-depth-100" )
+#    list(APPEND ADDITIONAL_CXX_RELEASE_FLAGS        "-ftemplate-depth-100" )
+#    list(APPEND ADDITIONAL_CXX_RELWITHDEBINFO_FLAGS "-ftemplate-depth-100" )
+#  ENDIF()

   ################################################################################
   # OS Defines


Better check to see if CLucene was patched.

svn path=/trunk/playground/base/strigi/; revision=580519

--- cmake/FindCLucene.cmake
+++ cmake/FindCLucene.cmake
@@ -41,7 +41,7 @@
   # check if version 0.9.15 is patched
   IF (EXISTS ${CLUCENE_INCLUDE_DIR}/CLucene/util/streambase.h)
     FILE(READ ${CLUCENE_INCLUDE_DIR}/CLucene/util/streambase.h CLCONTENT)
-    STRING(REGEX MATCH "Apache" CLMATCH ${CLCONTENT})
+    STRING(REGEX MATCH "virtual int64_t mark" CLMATCH ${CLCONTENT})
     IF (CLMATCH)
       MESSAGE(FATAL_ERROR " CLucene 0.9.15 was not patched. Please read replace the files\n     streambase.h, bufferedstream.h, and inputstreambuffer.h\n in CLucene with those from Strigi. (See README)")
     ENDIF (CLMATCH)