support additional option

support additional option

--- tests/system_tests/run_system_tests.sh.cmake
+++ tests/system_tests/run_system_tests.sh.cmake
@@ -42,6 +42,7 @@
 MPIRUN=mpirun
 MPI_PROC_DIM="1,1x1,1x1x1" # use only 1 process by default; can be controlled by the -np option
 MPI_MACHINEFILE=""
+TIMEOPT=""

 EXECUTE_WITH_VALGRIND=0

@@ -265,6 +266,10 @@
 function generate_translation_configurations()
 {
     target=$1
+    if [  $# -ge 2 -a -n "$2" ] ; then
+      echo $2
+      return
+    fi
     case $target in
 	ref)
 	    generate_translation_configurations_ref
@@ -449,29 +454,31 @@
     echo  "[EXECUTE] Executing $exename"
     case $target in
 	ref)
-	    ./$exename > $exename.out
+	    ./$exename "$TIMEOPT" > $exename.out
 	    ;;
 	cuda)
-	    ./$exename > $exename.out
+	    ./$exename "$TIMEOPT" > $exename.out
 	    ;;
 	mpi)
-	    do_mpirun $3 $4  "$MPI_MACHINEFILE" ./$exename > $exename.out
+	    do_mpirun $3 $4  "$MPI_MACHINEFILE" ./$exename "$TIMEOPT" > $exename.out
 	    ;;
 	mpi-cuda)
-	    do_mpirun $3 $4 "$MPI_MACHINEFILE" ./$exename > $exename.out
+	    do_mpirun $3 $4 "$MPI_MACHINEFILE" ./$exename "$TIMEOPT" > $exename.out
 	    ;;
   opencl)
       exename=$(basename $1 .c).$target
-	    ./$exename > $exename.out
+	    ./$exename "$TIMEOPT" > $exename.out
 	    ;;
 	mpi-opencl)
       exename=$(basename $1 .c).$target
-	    do_mpirun $3 $4  "$MPI_MACHINEFILE" ./$exename > $exename.out
+	    do_mpirun $3 $4  "$MPI_MACHINEFILE" ./$exename "$TIMEOPT" > $exename.out
 	    ;;
 	*)
 	    exit_error "Unsupported target: $2"
 	    ;;
     esac
+
+
     if [ $? -ne 0 ]; then
 	return 1
     fi
@@ -522,10 +529,13 @@
     echo -e "\t\tTest only execution and its dependent tasks."
     echo -e "\t-m, --mpirun"
     echo -e "\t\tThe mpirun command for testing MPI-based runs."
+    echo -e "\t--config <file-path>"
+    echo -e "\t\tConfiguration file passed to the translator."
     echo -e "\t--proc-dim <proc-dim-list>"
     echo -e "\t\tProcess dimension. E.g., to run 16 processes, specify this \n\t\toption like '16,4x4,1x4x4'. This way, 16 processes are mapped\n\t\tto the overall problem domain with the decomposition for\n\t\th dimensionality. Multiple values can be passed with quotations."
     echo -e "\t--machinefile <file-path>"
     echo -e "\t\tThe MPI machinefile."
+    echo -e "\t--trace-time trace time elapsed"
     echo -e "\t--with-valgrind <translate|execute>"
     echo -e "\t\tExecute the given step with Valgrind. Excution with Valgrind\n\t\tis not yet supported."
     echo -e "\t--priority <level>"
@@ -569,8 +579,9 @@
     STAGE="ALL"

     TESTS=$(get_test_cases)
+    CONFIGFILE=""

-    TEMP=$(getopt -o ht:s:m:q --long help,targets:,source:,translate,compile,execute,mpirun,machinefile:,proc-dim:,quit,with-valgrind:,priority: -- "$@")
+    TEMP=$(getopt -o ht:s:m:q --long help,targets:,source:,translate,compile,execute,trace-time,mpirun,machinefile:,config:,proc-dim:,quit,with-valgrind:,priority: -- "$@")
     if [ $? != 0 ]; then
 	print_error "Invalid options: $@"
 	print_usage
@@ -605,6 +616,10 @@
 		MPIRUN=$2
 		shift 2
 		;;
+      --config)
+    CONFIGFILE=$(abs_path $2)
+    shift 2
+    ;;
 	    --proc-dim)
 		MPI_PROC_DIM=$2
 		shift 2
@@ -613,6 +628,10 @@
 		MPI_MACHINEFILE=$(abs_path $2)
 		shift 2
 		;;
+      --trace-time)
+    TIMEOPT=--physis-trace
+    shift
+    ;;
 	    -q|--quit)
 		DIE_IMMEDIATELY=1
 		shift
@@ -656,7 +675,7 @@
 	    SHORTNAME=$(basename $TEST)
 	    DESC=$(grep -o '\WTEST: .*$' $TEST | sed 's/\WTEST: \(.*\)$/\1/')
 	    DIM=$(grep -o '\WDIM: .*$' $TEST | sed 's/\WDIM: \(.*\)$/\1/')
-	    for CONFIG in $(generate_translation_configurations $TARGET); do
+	    for CONFIG in $(generate_translation_configurations $TARGET "$CONFIGFILE"); do
 		echo "Testing with $SHORTNAME ($DESC)"
 		echo "Configuration ($CONFIG):"
 		echo "Dimension: $DIM"
@@ -696,7 +715,7 @@
 		    sleep 5
 		fi
 		for np in $np_target; do
-		    if execute $SHORTNAME $TARGET $np $DIM; then
+		    if execute $SHORTNAME $TARGET $np $DIM ; then
 			echo "[EXECUTE] SUCCESS"
 			NUM_SUCCESS_EXECUTE=$(($NUM_SUCCESS_EXECUTE + 1))
 		    else


ctest: set PATH correctly when running integration tests

--- integration.cmake
+++ integration.cmake
@@ -2,5 +2,5 @@

 find_program(Cucumber cucumber)
 add_test(NAME DrafterIntegration COMMAND ${Cucumber} .)
-set_property(TEST DrafterIntegration PROPERTY ENVIRONMENT "PATH=${Drafter_BUILD_DIR}")
+set_property(TEST DrafterIntegration PROPERTY ENVIRONMENT "PATH=$ENV{PATH};${Drafter_BUILD_DIR}")


Various fixes taken from VV v1.3

Various fixes taken from VV v1.3

--- cmake/FindGengetopt.cmake
+++ cmake/FindGengetopt.cmake
@@ -2,7 +2,8 @@
 # Attempt to find gengetopt. If not found, compile it.
 FIND_PROGRAM(GENGETOPT gengetopt)
 IF (GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
-  ADD_SUBDIRECTORY(${CMAKE_CURRENT_LIST_DIR}/../utilities/gengetopt ${CMAKE_CURRENT_BINARY_DIR}/gengetopt)
+  GET_FILENAME_COMPONENT(CLITK_CMAKE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
+  ADD_SUBDIRECTORY(${CLITK_CMAKE_DIR}/../utilities/gengetopt ${CMAKE_CURRENT_BINARY_DIR}/gengetopt)
 ELSE(GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
   ADD_EXECUTABLE(gengetopt IMPORTED)
   SET_PROPERTY(TARGET gengetopt PROPERTY IMPORTED_LOCATION ${GENGETOPT})
@@ -32,6 +33,10 @@
   ENDFOREACH(GGO_FILE)
   SET_SOURCE_FILES_PROPERTIES(${${GGO_SRCS}} PROPERTIES GENERATED TRUE)
   IF(CMAKE_COMPILER_IS_GNUCXX)
-    SET_SOURCE_FILES_PROPERTIES(${${GGO_SRCS}} PROPERTIES COMPILE_FLAGS "-Wno-unused-but-set-variable")
+    FIND_PROGRAM(DEFAULT_GCC gcc)
+    EXEC_PROGRAM(${DEFAULT_GCC} ARGS "-dumpversion" OUTPUT_VARIABLE GCCVER)
+    IF("${GCCVER}" VERSION_GREATER "4.5.2")
+      SET_SOURCE_FILES_PROPERTIES(${${GGO_SRCS}} PROPERTIES COMPILE_FLAGS "-Wno-unused-but-set-variable")
+    ENDIF("${GCCVER}" VERSION_GREATER "4.5.2")
   ENDIF(CMAKE_COMPILER_IS_GNUCXX)
 ENDMACRO (WRAP_GGO)


Added missing Link directories for VTK.

Added missing Link directories for VTK.


[CMake] Explicitly add --target option to compiler flags

Summary:
Much of the non-Darwin build system assumes that COMPILER_RT_DEFAULT_TARGET_TRIPLE is the default target triple for the compiler being used. With clang as your compiler this isn't necessarily true.

To ensure that the rest of the build system behaves as expected this patch adds "--target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE}" to the compiler flags for C, CXX and ASM sources.

Reviewers: compnerd, rengolin, fjricci

Subscribers: llvm-commits

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

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

--- cmake/Modules/CompilerRTUtils.cmake
+++ cmake/Modules/CompilerRTUtils.cmake
@@ -227,6 +227,18 @@
     set(COMPILER_RT_DEFAULT_TARGET_TRIPLE ${COMPILER_RT_TEST_TARGET_TRIPLE})
   endif()

+  if(NOT APPLE)
+    # Much of the non-darwin compiler-rt build assumes that
+    # COMPILER_RT_DEFAULT_TARGET_TRIPLE is the default target of the compiler
+    # being used. That isn't always a safe assumption, but adding this here
+    # makes it all work.
+    # This doesn't prevent needing to set CMAKE_<LANG>_COMPILER_TARGET in some
+    # situations, so YMMV.
+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE}")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE}")
+    set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} --target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE}")
+  endif()
+
   string(REPLACE "-" ";" TARGET_TRIPLE_LIST ${COMPILER_RT_DEFAULT_TARGET_TRIPLE})
   list(GET TARGET_TRIPLE_LIST 0 COMPILER_RT_DEFAULT_TARGET_ARCH)
   list(GET TARGET_TRIPLE_LIST 1 COMPILER_RT_DEFAULT_TARGET_OS)


Support Intel Braswell detection

Support Intel Braswell detection

This is probably not the optimal -march flag (i.e. it falls back to
Westmere + RDRND). But since Haswell (after Westmere) includes AVX I
don't dare to take this as -march basis.

Thanks to RJVB for the detailed issue, making this an easy fix.

Fixes: gh-153

Signed-off-by: Matthias Kretz <372ea4eca737a13cd010ee806d4ce7b98ee71550@kde.org>

--- cmake/OptimizeForArchitecture.cmake
+++ cmake/OptimizeForArchitecture.cmake
@@ -119,6 +119,8 @@
             set(TARGET_ARCHITECTURE "skylake-avx512")
          elseif(_cpu_model EQUAL 78 OR _cpu_model EQUAL 94) # 4E, 5E
             set(TARGET_ARCHITECTURE "skylake")
+         elseif(_cpu_model EQUAL 61 OR _cpu_model EQUAL 76)
+            set(TARGET_ARCHITECTURE "braswell")
          elseif(_cpu_model EQUAL 61 OR _cpu_model EQUAL 71 OR _cpu_model EQUAL 86)
             set(TARGET_ARCHITECTURE "broadwell")
          elseif(_cpu_model EQUAL 60 OR _cpu_model EQUAL 69 OR _cpu_model EQUAL 70 OR _cpu_model EQUAL 63)
@@ -183,7 +185,7 @@
 Setting the value to \"auto\" will try to optimize for the architecture where cmake is called. \
 Other supported values are: \"none\", \"generic\", \"core\", \"merom\" (65nm Core2), \
 \"penryn\" (45nm Core2), \"nehalem\", \"westmere\", \"sandy-bridge\", \"ivy-bridge\", \
-\"haswell\", \"broadwell\", \"skylake\", \"skylake-avx512\", \"cannonlake\", \"silvermont\", \
+\"haswell\", \"broadwell\", \"braswell\", \"skylake\", \"skylake-avx512\", \"cannonlake\", \"silvermont\", \
 \"goldmont\", \"knl\" (Knights Landing), \"atom\", \"k8\", \"k8-sse3\", \"barcelona\", \
 \"istanbul\", \"magny-cours\", \"bulldozer\", \"interlagos\", \"piledriver\", \
 \"AMD 14h\", \"AMD 16h\".")
@@ -213,6 +215,11 @@
    macro(_westmere)
       list(APPEND _march_flag_list "westmere")
       _nehalem()
+   endmacro()
+   macro(_braswell)
+      list(APPEND _march_flag_list "braswell")
+      _westmere()
+      list(APPEND _available_vector_units_list "rdrnd")
    endmacro()
    macro(_sandybridge)
       list(APPEND _march_flag_list "sandybridge")
@@ -282,6 +289,8 @@
       _skylake_avx512()
    elseif(TARGET_ARCHITECTURE STREQUAL "skylake")
       _skylake()
+   elseif(TARGET_ARCHITECTURE STREQUAL "braswell")
+      _braswell()
    elseif(TARGET_ARCHITECTURE STREQUAL "broadwell")
       _broadwell()
    elseif(TARGET_ARCHITECTURE STREQUAL "haswell")


[CMake] Add LLDB_ALLOW_STATIC_BINDINGS to upstream Apple-lldb-Linux.cmake

--- cmake/caches/Apple-lldb-Linux.cmake
+++ cmake/caches/Apple-lldb-Linux.cmake
@@ -1,4 +1,8 @@
 include(${CMAKE_CURRENT_LIST_DIR}/Apple-lldb-base.cmake)
+
+# Begin Swift Mods
+set(LLDB_ALLOW_STATIC_BINDINGS ON CACHE BOOL "")
+# End Swift Mods

 set(LLVM_DISTRIBUTION_COMPONENTS
   lldb


Introduce extra CMake variables for Android

--- cmake/modules/hunter_finalize.cmake
+++ cmake/modules/hunter_finalize.cmake
@@ -6,6 +6,7 @@
 include(hunter_calculate_self)
 include(hunter_create_cache_file)
 include(hunter_fatal_error)
+include(hunter_internal_error)
 include(hunter_sanity_checks)
 include(hunter_status_debug)
 include(hunter_status_print)
@@ -140,4 +141,48 @@
         " https://docs.hunter.sh/en/latest/quick-start/cmake.html"
     )
   endif()
+
+  if(ANDROID)
+    # Extra Android variables that can't be set in toolchain
+    # (some variables available only after toolchain processed).
+    # Needed in 'hunter_autotools_project'.
+    set(
+        CMAKE_C_PREPROCESSOR
+        "${CMAKE_CXX_ANDROID_TOOLCHAIN_PREFIX}cpp${CMAKE_CXX_ANDROID_TOOLCHAIN_SUFFIX}"
+        CACHE
+        FILEPATH
+        "Path to preprocessor"
+    )
+    if(NOT EXISTS "${CMAKE_C_PREPROCESSOR}")
+      hunter_internal_error("File not found: ${CMAKE_C_PREPROCESSOR}")
+    endif()
+
+    # Needed in 'hunter_autotool_project'
+    get_filename_component(
+        ANDROID_TOOLCHAIN_MACHINE_NAME
+        "${CMAKE_CXX_ANDROID_TOOLCHAIN_PREFIX}"
+        NAME
+    )
+    string(
+        REGEX
+        REPLACE
+        "-$"
+        ""
+        ANDROID_TOOLCHAIN_MACHINE_NAME
+        "${ANDROID_TOOLCHAIN_MACHINE_NAME}"
+    )
+
+    # Rejected: https://gitlab.kitware.com/cmake/cmake/merge_requests/74
+    set(
+        ANDROID_GDBSERVER
+        "${CMAKE_ANDROID_NDK}/prebuilt/android-${CMAKE_ANDROID_ARCH}/gdbserver/gdbserver"
+        CACHE
+        FILEPATH
+        "Path to gdbserver"
+    )
+
+    if(NOT EXISTS "${ANDROID_GDBSERVER}")
+      hunter_internal_error("gdbserver not found: ${ANDROID_GDBSERVER}")
+    endif()
+  endif()
 endmacro()


Make sure we always build static libraries.

--- CPM.cmake
+++ CPM.cmake
@@ -752,6 +752,10 @@

   # Add the project's source code.
   if (NOT DEFINED CPM_KV_SOURCE_ADDED_MAP_${__CPM_FULL_UNID})
+    # Ensure we do not build dynamic libraries.
+    set(BUILD_SHARED_LIBS OFF)
+
+    # Add the module's code.
     add_subdirectory("${__CPM_MODULE_SOURCE_DIR}" "${__CPM_MODULE_BIN_DIR}")

     # Parse the arguments once again after adding the subdirectory (since we


also set _SYSTEM_FOUND to false, with recursive calls the inner might fail and the outer succeed!

Change-Id: I5a286565233b0de64b3412eb87b7932dffd5ba95

--- external/vigra_cmake/VigraAddDep.cmake
+++ external/vigra_cmake/VigraAddDep.cmake
@@ -285,9 +285,16 @@
 function(vad_system_default _VAD_NAME)
   message(STATUS "Invoking the default implementation of vad_system() for dependency ${_VAD_NAME}.")
   find_package_plus(${_VAD_NAME} ${ARGN})
+endfunction()
+
+function(vad_system_call _VAD_NAME)
+  vad_system(${_VAD_NAME} ${ARGN})
   # Check the FOUND flag.
   if(NOT ${_VAD_NAME}_FOUND)
     set(VAD_${_VAD_NAME}_SYSTEM_NOT_FOUND TRUE CACHE INTERNAL "")
+  else()
+    # for recursive calls the inner might fail and the outer succeed
+    set(VAD_${_VAD_NAME}_SYSTEM_NOT_FOUND FALSE CACHE INTERNAL "")
   endif()
 endfunction()

@@ -456,7 +463,7 @@
     # endless recursion protection vad system might call find_package again...
     string(LENGTH "${_vigra_add_dep_running_${_VAD_NAME}_ARGS}" _vad_add_dep_prot_args_len)
     list(APPEND _vigra_add_dep_running_${_VAD_NAME}_ARGS "VAD_PROT_REC_START${ARGN}VAD_PROT_REC_STOP")
-    vad_system(${_VAD_NAME} ${ARG_VAD_${_VAD_NAME}_UNPARSED_ARGUMENTS})
+    vad_system_call(${_VAD_NAME} ${ARG_VAD_${_VAD_NAME}_UNPARSED_ARGUMENTS})
     string(SUBSTRING "${_vigra_add_dep_running_${_VAD_NAME}_ARGS}" 0 ${_vad_add_dep_prot_args_len} _vigra_add_dep_running_${_VAD_NAME}_ARGS)

     if(VAD_${_VAD_NAME}_SYSTEM_NOT_FOUND)


CMake: Removed unused FindCurl.cmake file.

--- src/slave/cmake/FindCurl.cmake
+++ src/slave/cmake/FindCurl.cmake
@@ -1,103 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-###############################################################
-# **NOTE:** I (darroyo) have copied a *lot* of stuff in this
-# file from code I found at in the FindAPR.cmake[1] project. The
-# original version[2] of this file was also released under the
-# Apache 2.0 license, and licensed to the ASF, making it fully
-# compatible with the Mesos project.
-#  [1] 3rdparty/stout/cmake/FindApr.cmake
-#  [2] https://github.com/akumuli/Akumuli/blob/master/cmake/FindAPR.cmake
-
-# This module helps to find the cURL library.
-#
-# USAGE: to use this module, add the following line to your CMake project:
-#   find_package(Curl)
-#
-# To make linking to cURL simple, this module defines:
-#   * CURL_FOUND            (if false, linking build will fail)
-#   * CURL_INCLUDE_DIR      (defineswhere to find apr.h, etc.)
-#   * CURL_LIBS             (binaries for cURL and friends)
-#
-# Also defined, but not for general use are:
-#   * CURL_LIB        (where to find the cURL library)
-
-# CONFIGURE THE CURL SEARCH. Specify what we're looking for, and which
-# directories we're going to look through to find them.
-#############################################################################
-set(POSSIBLE_CURL_INCLUDE_DIRS
-  ${POSSIBLE_CURL_INCLUDE_DIRS}
-  /usr/include/curl
-  )
-
-find_path(CURL_INCLUDE_DIR curl.h ${POSSIBLE_CURL_INCLUDE_DIRS})
-
-# SEARCH FOR CURL LIBRARIES.
-############################
-set(POSSIBLE_CURL_LIB_DIRS
-  ${POSSIBLE_CURL_LIB_DIRS}
-  /usr/lib
-  /usr/lib/x86_64-linux-gnu
-  /usr/local/lib
-  )
-
-find_library(
-  CURL_LIB
-  NAMES curl
-  PATHS ${POSSIBLE_CURL_LIB_DIRS}
-  )
-
-# Did we find the include directory?
-string(
-  COMPARE NOTEQUAL
-  "CURL_INCLUDE_DIR-NOTFOUND"
-  ${CURL_INCLUDE_DIR} # Value set to CURL_INCLUDE_DIR-NOTFOUND if not found.
-  CURL_INCLUDE_DIR_FOUND
-  )
-
-# Did we find the library?
-string(
-  COMPARE NOTEQUAL
-  "CURL_LIB-NOTFOUND"
-  ${CURL_LIB} # Value set to `CURL_LIB-NOTFOUND` if not found.
-  CURL_LIB_FOUND
-  )
-
-# cURL is considered "found" if we've both an include directory and a cURL
-# binary.
-if ("${CURL_LIB_FOUND}" AND "${CURL_INCLUDE_DIR_FOUND}")
-  set(CURL_LIBS ${CURL_LIB})
-  set(CURL_FOUND 1)
-else ("${CURL_LIB_FOUND}" AND "${CURL_INCLUDE_DIR_FOUND}")
-  set(CURL_FOUND 0)
-endif ("${CURL_LIB_FOUND}" AND "${CURL_INCLUDE_DIR_FOUND}")
-
-# Results.
-if (CURL_FOUND)
-  if (NOT Curl_FIND_QUIETLY)
-    message(STATUS "Found cURL headers: ${CURL_INCLUDE_DIR}")
-    message(STATUS "Found cURL library: ${CURL_LIBS}")
-  endif (NOT Curl_FIND_QUIETLY)
-else (CURL_FOUND)
-  if (Curl_FIND_REQUIRED)
-    message(FATAL_ERROR "Could not find cURL library")
-  endif (Curl_FIND_REQUIRED)
-endif (CURL_FOUND)
-
-# (Deprecated declarations.)
-set(NATIVE_CURL_INCLUDE_PATH ${CURL_INCLUDE_DIR})
-get_filename_component(NATIVE_CURL_LIB_PATH ${CURL_LIB} PATH)


* [lpng] BugFix: Correct some compiler warnings associated with lpng and SSE optimizations. This also enables SSE when available for lpng.

--- Tools/CMake/libraries/lpng.cmake
+++ Tools/CMake/libraries/lpng.cmake
@@ -29,6 +29,11 @@
 set(PNG_ARM_NEON off CACHE STRING "")
 add_definitions(-DPNG_ARM_NEON_OPT=0)

+# Enables SSE for libpng - also takes care of compiler warnings.
+# If we don't want SSE, we should set it to off/0.
+set(PNG_INTEL_SSE on CACHE STRING "")
+add_definitions(-DPNG_INTEL_SSE_OPT=1)
+
 addInclude(${libDir}/zlib)

 finishLibrary("${libDir}/${PROJECT_NAME}")


FindMKL: check with CXX

FindMKL: check with CXX


fixed Python version/home detect for windows


Flip to libuv v1.28.0

Flip to libuv v1.28.0

PiperOrigin-RevId: 277756334


Update sources

Update sources


disable bat scripts for now

disable bat scripts for now

--- VigraAddDep.cmake
+++ VigraAddDep.cmake
@@ -20,9 +20,9 @@
   variable_watch(_VAD_LIBRARY_DIR_LIST VAD_CREATE_ACTIVATE)
   set_property(GLOBAL PROPERTY VigraAddDepIncludedOnce TRUE)
   if(WIN32)
-    file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/vad_activate_$<CONFIG>.bat" INPUT "${CMAKE_CURRENT_BINARY_DIR}/.vad/vad_activate.bat.generate")
-    file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/vad_deactivate.bat" INPUT "${VigraAddDepPath}/vad_deactivate.bat.in")
-    file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/.vad/vad_path_$<CONFIG>" INPUT "${CMAKE_CURRENT_BINARY_DIR}/.vad/vad_path.generate")
+    #file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/vad_activate_$<CONFIG>.bat" INPUT "${CMAKE_CURRENT_BINARY_DIR}/.vad/vad_activate.bat.generate")
+    #file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/vad_deactivate.bat" INPUT "${VigraAddDepPath}/vad_deactivate.bat.in")
+    #file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/.vad/vad_path_$<CONFIG>" INPUT "${CMAKE_CURRENT_BINARY_DIR}/.vad/vad_path.generate")
   endif()
 endif()


Quickfix.

Quickfix.

--- gcc_stm32.cmake
+++ gcc_stm32.cmake
@@ -88,7 +88,12 @@
     CONFIGURE_FILE(${STM32_LINKER_SCRIPT} ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld)

     GET_TARGET_PROPERTY(TARGET_LD_FLAGS ${TARGET} LINK_FLAGS)
-    SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_FLAGS "-T${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld ${TARGET_LD_FLAGS}")
+    IF(TARGET_LD_FLAGS)
+        SET(TARGET_LD_FLAGS "-T${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld ${TARGET_LD_FLAGS}")
+    ELSE()
+        SET(TARGET_LD_FLAGS "-T${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld")
+    ENDIF()
+    SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_FLAGS ${TARGET_LD_FLAGS})
 ENDFUNCTION()

 FUNCTION(STM32_SET_FLASH_PARAMS TARGET FLASH_SIZE RAM_SIZE)
@@ -125,7 +130,12 @@
     CONFIGURE_FILE(${STM32_LINKER_SCRIPT} ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld)

     GET_TARGET_PROPERTY(TARGET_LD_FLAGS ${TARGET} LINK_FLAGS)
-    SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_FLAGS "-T${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld ${TARGET_LD_FLAGS}")
+    IF(TARGET_LD_FLAGS)
+        SET(TARGET_LD_FLAGS "-T${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld ${TARGET_LD_FLAGS}")
+    ELSE()
+        SET(TARGET_LD_FLAGS "-T${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_flash.ld")
+    ENDIF()
+    SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_FLAGS ${TARGET_LD_FLAGS})
 ENDFUNCTION()

 FUNCTION(STM32_SET_TARGET_PROPERTIES TARGET)


[Build] Added support for the run-path/rpath in the installed binaries.

--- project_config_embeddable.cmake
+++ project_config_embeddable.cmake
@@ -57,9 +57,13 @@

 ##
 # Set a few options:
-#  * BUILD_SHARED_LIBS   - Whether or not to build shared libraries
-#  * CMAKE_BUILD_TYPE    - Debug or release
-#  * CMAKE_INSTALL_PREFIX
+#  * BUILD_SHARED_LIBS    - Whether or not to build shared libraries
+#  * CMAKE_BUILD_TYPE     - Debug or release
+#  * CMAKE_INSTALL_PREFIX - Where to install the deliverable parts
+#  * CMAKE_INSTALL_RPATH  - The list of paths to be used by the linker
+#  * CMAKE_INSTALL_RPATH_USE_LINK_PATH
+#                         - Whether or not to set the run-path/rpath within
+#                           the (executable and library) binaries
 #  * INSTALL_DOC         - Whether or not to build and install the documentation
 #  * INSTALL_LIB_DIR     - Installation directory for the libraries
 #  * INSTALL_BIN_DIR     - Installation directory for the binaries
@@ -108,6 +112,19 @@
       set (${var} "${CMAKE_INSTALL_PREFIX}/${${var}}")
     endif ()
   endforeach (_path_type)
+
+  # When the install directory is the canonical one (i.e., /usr), the
+  # run-path/rpath must be set in all the (executable and library)
+  # binaries, so that the dynamic loader can find the dependencies
+  # without the user having to set the LD_LIBRARY_PATH environment
+  # variable.
+  if (CMAKE_INSTALL_PREFIX STREQUAL "/usr")
+    set (CMAKE_INSTALL_RPATH "")
+    set (CMAKE_INSTALL_RPATH_USE_LINK_PATH OFF)
+  else()
+    set (CMAKE_INSTALL_RPATH ${INSTALL_LIB_DIR})
+    set (CMAKE_INSTALL_RPATH_USE_LINK_PATH ON)
+  endif()

   # Define STDAIR_SAMPLE_DIR if the project is STDAIR
   if ("${PROJECT_NAME}" STREQUAL "stdair")
@@ -140,21 +157,26 @@
   # Force some variables that could be defined in the command line to be
   # written to cache
   set (PACKAGE_VERSION "${PACKAGE_VERSION}" CACHE STRING
-  "Version of the project/package")
+    "Version of the project/package")
   set (BUILD_SHARED_LIBS "${BUILD_SHARED_LIBS}" CACHE BOOL
-	"Set to OFF to build static libraries" FORCE)
+    "Set to OFF to build static libraries" FORCE)
   set (CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" CACHE PATH
-	"Where to install ${PROJECT_NAME}" FORCE)
+    "Where to install ${PROJECT_NAME}" FORCE)
+  set (CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_RPATH}" CACHE PATH
+    "Run-path for the library/executable binaries" FORCE)
+  set (CMAKE_INSTALL_RPATH_USE_LINK_PATH "${CMAKE_INSTALL_RPATH_USE_LINK_PATH}"
+    CACHE BOOL
+    "Whether to set the run-path for the library/executable binaries" FORCE)
   set (CMAKE_BUILD_TYPE "${CMAKE_BUILD_TYPE}" CACHE STRING
-	"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE)
+    "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE)
   set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" CACHE STRING
-	"C++ compilation flags" FORCE)
+    "C++ compilation flags" FORCE)
   set (COMPILE_FLAGS "${COMPILE_FLAGS}" CACHE STRING
-	"Supplementary C++ compilation flags" FORCE)
+    "Supplementary C++ compilation flags" FORCE)
   set (CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" CACHE PATH
-	"Path to custom CMake Modules" FORCE)
+    "Path to custom CMake Modules" FORCE)
   set (INSTALL_DOC "${INSTALL_DOC}" CACHE BOOL
-	"Set to OFF to skip build/install Documentation" FORCE)
+    "Set to OFF to skip build/install Documentation" FORCE)
 endmacro (store_in_cache)

@@ -345,6 +367,10 @@
       get_simcrs (${_arg_version})
     endif (${_arg_lower} STREQUAL "simcrs")

+    if (${_arg_lower} STREQUAL "dsim")
+      get_dsim (${_arg_version})
+    endif (${_arg_lower} STREQUAL "dsim")
+
     if (${_arg_lower} STREQUAL "doxygen")
       get_doxygen (${_arg_version})
     endif (${_arg_lower} STREQUAL "doxygen")
@@ -982,6 +1008,38 @@
   endif (SimCRS_FOUND)

 endmacro (get_simcrs)
+
+# ~~~~~~~~~~ DSim ~~~~~~~~~
+macro (get_dsim)
+  unset (_required_version)
+  if (${ARGC} GREATER 0)
+    set (_required_version ${ARGV0})
+    message (STATUS "Requires DSim-${_required_version}")
+  else (${ARGC} GREATER 0)
+    message (STATUS "Requires DSim without specifying any version")
+  endif (${ARGC} GREATER 0)
+
+  find_package (DSim ${_required_version} REQUIRED
+	HINTS ${WITH_DSIM_PREFIX})
+  if (DSim_FOUND)
+    #
+    message (STATUS "Found DSim version: ${DSIM_VERSION}")
+
+    # Update the list of include directories for the project
+    include_directories (${DSIM_INCLUDE_DIRS})
+
+    # Update the list of dependencies for the project
+    set (PROJ_DEP_LIBS_FOR_LIB ${PROJ_DEP_LIBS_FOR_LIB} ${DSIM_LIBRARIES})
+
+  else (DSim_FOUND)
+    set (ERROR_MSG "The DSim library cannot be found. If it is installed in")
+    set (ERROR_MSG "${ERROR_MSG} a in a non standard directory, just invoke")
+    set (ERROR_MSG "${ERROR_MSG} 'cmake' specifying the -DWITH_DSIM_PREFIX=")
+    set (ERROR_MSG "${ERROR_MSG}<DSim install path> variable.")
+    message (FATAL_ERROR "${ERROR_MSG}")
+  endif (DSim_FOUND)
+
+endmacro (get_dsim)

 ##############################################
@@ -1002,8 +1060,10 @@
 	#set (CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic -Werror")
 	set (CMAKE_CXX_FLAGS "-Wall -Werror")
   endif (NOT CMAKE_CXX_FLAGS)
-  # Tell the source code the version of Boost
-  set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DBOOST_VERSION=${Boost_VERSION}")
+  # Tell the source code the version of Boost (only once)
+  if (NOT "${CMAKE_CXX_FLAGS}" MATCHES "-DBOOST_VERSION=")
+    set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DBOOST_VERSION=${Boost_VERSION}")
+  endif (NOT "${CMAKE_CXX_FLAGS}" MATCHES "-DBOOST_VERSION=")

   #
   include_directories (BEFORE ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR})
@@ -1219,9 +1279,10 @@
   endif (_publish_all_headers_flag)

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

 endmacro (module_library_add_standard)

@@ -1873,10 +1934,10 @@
 macro (display_doxygen)
   message (STATUS)
   message (STATUS "* Doxygen:")
-  message (STATUS "  - DOXYGEN_VERSION .............. : ${DOXYGEN_VERSION}")
-  message (STATUS "  - DOXYGEN_EXECUTABLE ........... : ${DOXYGEN_EXECUTABLE}")
-  message (STATUS "  - DOXYGEN_DOT_EXECUTABLE ....... : ${DOXYGEN_DOT_EXECUTABLE}")
-  message (STATUS "  - DOXYGEN_DOT_PATH ............. : ${DOXYGEN_DOT_PATH}")
+  message (STATUS "  - DOXYGEN_VERSION ............... : ${DOXYGEN_VERSION}")
+  message (STATUS "  - DOXYGEN_EXECUTABLE ............ : ${DOXYGEN_EXECUTABLE}")
+  message (STATUS "  - DOXYGEN_DOT_EXECUTABLE ........ : ${DOXYGEN_DOT_EXECUTABLE}")
+  message (STATUS "  - DOXYGEN_DOT_PATH .............. : ${DOXYGEN_DOT_PATH}")
 endmacro (display_doxygen)

 # Python
@@ -1884,12 +1945,12 @@
   if (PYTHONLIBS_FOUND)
     message (STATUS)
 	message (STATUS "* Python:")
-	message (STATUS "  - PYTHONLIBS_VERSION ......... : ${PYTHONLIBS_VERSION}")
-	message (STATUS "  - PYTHON_LIBRARIES ........... : ${PYTHON_LIBRARIES}")
-	message (STATUS "  - PYTHON_INCLUDE_PATH ........ : ${PYTHON_INCLUDE_PATH}")
-	message (STATUS "  - PYTHON_INCLUDE_DIRS ........ : ${PYTHON_INCLUDE_DIRS}")
-	message (STATUS "  - PYTHON_DEBUG_LIBRARIES ..... : ${PYTHON_DEBUG_LIBRARIES}")
-	message (STATUS "  - Python_ADDITIONAL_VERSIONS . : ${Python_ADDITIONAL_VERSIONS}")
+	message (STATUS "  - PYTHONLIBS_VERSION ............ : ${PYTHONLIBS_VERSION}")
+	message (STATUS "  - PYTHON_LIBRARIES .............. : ${PYTHON_LIBRARIES}")
+	message (STATUS "  - PYTHON_INCLUDE_PATH ........... : ${PYTHON_INCLUDE_PATH}")
+	message (STATUS "  - PYTHON_INCLUDE_DIRS ........... : ${PYTHON_INCLUDE_DIRS}")
+	message (STATUS "  - PYTHON_DEBUG_LIBRARIES ........ : ${PYTHON_DEBUG_LIBRARIES}")
+	message (STATUS "  - Python_ADDITIONAL_VERSIONS .... : ${Python_ADDITIONAL_VERSIONS}")
   endif (PYTHONLIBS_FOUND)
 endmacro (display_python)

@@ -1898,9 +1959,9 @@
   if (ZEROMQ_FOUND)
     message (STATUS)
 	message (STATUS "* ZeroMQ:")
-	message (STATUS "  - ZeroMQ_VERSION ............. : ${ZeroMQ_VERSION}")
-	message (STATUS "  - ZeroMQ_LIBRARIES ........... : ${ZeroMQ_LIBRARIES}")
-	message (STATUS "  - ZeroMQ_INCLUDE_DIR ......... : ${ZeroMQ_INCLUDE_DIR}")
+	message (STATUS "  - ZeroMQ_VERSION ................ : ${ZeroMQ_VERSION}")
+	message (STATUS "  - ZeroMQ_LIBRARIES .............. : ${ZeroMQ_LIBRARIES}")
+	message (STATUS "  - ZeroMQ_INCLUDE_DIR ............ : ${ZeroMQ_INCLUDE_DIR}")
   endif (ZEROMQ_FOUND)
 endmacro (display_zeromq)

@@ -1909,12 +1970,12 @@
   if (Boost_FOUND)
     message (STATUS)
     message (STATUS "* Boost:")
-    message (STATUS "  - Boost_VERSION .............. : ${Boost_VERSION}")
-    message (STATUS "  - Boost_LIB_VERSION .......... : ${Boost_LIB_VERSION}")
-    message (STATUS "  - Boost_HUMAN_VERSION ........ : ${Boost_HUMAN_VERSION}")
-    message (STATUS "  - Boost_INCLUDE_DIRS ......... : ${Boost_INCLUDE_DIRS}")
-    message (STATUS "  - Boost required components .. : ${BOOST_REQUIRED_COMPONENTS}")
-    message (STATUS "  - Boost required libraries ... : ${BOOST_REQUIRED_LIBS}")
+    message (STATUS "  - Boost_VERSION ................. : ${Boost_VERSION}")
+    message (STATUS "  - Boost_LIB_VERSION ............. : ${Boost_LIB_VERSION}")
+    message (STATUS "  - Boost_HUMAN_VERSION ........... : ${Boost_HUMAN_VERSION}")
+    message (STATUS "  - Boost_INCLUDE_DIRS ............ : ${Boost_INCLUDE_DIRS}")
+    message (STATUS "  - Boost required components ..... : ${BOOST_REQUIRED_COMPONENTS}")
+    message (STATUS "  - Boost required libraries ...... : ${BOOST_REQUIRED_LIBS}")
   endif (Boost_FOUND)
 endmacro (display_boost)

@@ -1922,10 +1983,10 @@
 macro (display_xapian)
   if (XAPIAN_FOUND)
     message (STATUS)
-	message (STATUS "* Xapian:")
-	message (STATUS "  - XAPIAN_VERSION ............. : ${XAPIAN_VERSION}")
-	message (STATUS "  - XAPIAN_LIBRARIES ........... : ${XAPIAN_LIBRARIES}")
-	message (STATUS "  - XAPIAN_INCLUDE_DIR ......... : ${XAPIAN_INCLUDE_DIR}")
+    message (STATUS "* Xapian:")
+    message (STATUS "  - XAPIAN_VERSION ................ : ${XAPIAN_VERSION}")
+    message (STATUS "  - XAPIAN_LIBRARIES .............. : ${XAPIAN_LIBRARIES}")
+    message (STATUS "  - XAPIAN_INCLUDE_DIR ............ : ${XAPIAN_INCLUDE_DIR}")
   endif (XAPIAN_FOUND)
 endmacro (display_xapian)

@@ -1934,9 +1995,9 @@
   if (READLINE_FOUND)
     message (STATUS)
     message (STATUS "* Readline:")
-    message (STATUS "  - READLINE_VERSION ........... : ${READLINE_VERSION}")
-    message (STATUS "  - READLINE_INCLUDE_DIR ....... : ${READLINE_INCLUDE_DIR}")
-    message (STATUS "  - READLINE_LIBRARY ........... : ${READLINE_LIBRARY}")
+    message (STATUS "  - READLINE_VERSION .............. : ${READLINE_VERSION}")
+    message (STATUS "  - READLINE_INCLUDE_DIR .......... : ${READLINE_INCLUDE_DIR}")
+    message (STATUS "  - READLINE_LIBRARY .............. : ${READLINE_LIBRARY}")
   endif (READLINE_FOUND)
 endmacro (display_readline)

@@ -1945,9 +2006,9 @@
   if (MYSQL_FOUND)
     message (STATUS)
     message (STATUS "* MySQL:")
-    message (STATUS "  - MYSQL_VERSION .............. : ${MYSQL_VERSION}")
-    message (STATUS "  - MYSQL_INCLUDE_DIR .......... : ${MYSQL_INCLUDE_DIR}")
-    message (STATUS "  - MYSQL_LIBRARIES ............ : ${MYSQL_LIBRARIES}")
+    message (STATUS "  - MYSQL_VERSION ................. : ${MYSQL_VERSION}")
+    message (STATUS "  - MYSQL_INCLUDE_DIR ............. : ${MYSQL_INCLUDE_DIR}")
+    message (STATUS "  - MYSQL_LIBRARIES ............... : ${MYSQL_LIBRARIES}")
   endif (MYSQL_FOUND)
 endmacro (display_mysql)

@@ -1956,13 +2017,13 @@
   if (SOCI_FOUND)
     message (STATUS)
     message (STATUS "* SOCI:")
-    message (STATUS "  - SOCI_VERSION ............... : ${SOCI_VERSION}")
-    message (STATUS "  - SOCI_LIB_VERSION ........... : ${SOCI_LIB_VERSION}")
-    message (STATUS "  - SOCI_HUMAN_VERSION ......... : ${SOCI_HUMAN_VERSION}")
-    message (STATUS "  - SOCI_INCLUDE_DIR ........... : ${SOCI_INCLUDE_DIR}")
-    message (STATUS "  - SOCIMYSQL_INCLUDE_DIR ...... : ${SOCIMYSQL_INCLUDE_DIR}")
-    message (STATUS "  - SOCI_LIBRARIES ............. : ${SOCI_LIBRARIES}")
-    message (STATUS "  - SOCIMYSQL_LIBRARIES ........ : ${SOCIMYSQL_LIBRARIES}")
+    message (STATUS "  - SOCI_VERSION .................. : ${SOCI_VERSION}")
+    message (STATUS "  - SOCI_LIB_VERSION .............. : ${SOCI_LIB_VERSION}")
+    message (STATUS "  - SOCI_HUMAN_VERSION ............ : ${SOCI_HUMAN_VERSION}")
+    message (STATUS "  - SOCI_INCLUDE_DIR .............. : ${SOCI_INCLUDE_DIR}")
+    message (STATUS "  - SOCIMYSQL_INCLUDE_DIR ......... : ${SOCIMYSQL_INCLUDE_DIR}")
+    message (STATUS "  - SOCI_LIBRARIES ................ : ${SOCI_LIBRARIES}")
+    message (STATUS "  - SOCIMYSQL_LIBRARIES ........... : ${SOCIMYSQL_LIBRARIES}")
   endif (SOCI_FOUND)
 endmacro (display_soci)

@@ -1971,13 +2032,13 @@
   if (StdAir_FOUND)
     message (STATUS)
     message (STATUS "* StdAir:")
-    message (STATUS "  - STDAIR_VERSION ............. : ${STDAIR_VERSION}")
-    message (STATUS "  - STDAIR_BINARY_DIRS ......... : ${STDAIR_BINARY_DIRS}")
-    message (STATUS "  - STDAIR_EXECUTABLES ......... : ${STDAIR_EXECUTABLES}")
-    message (STATUS "  - STDAIR_LIBRARY_DIRS ........ : ${STDAIR_LIBRARY_DIRS}")
-    message (STATUS "  - STDAIR_LIBRARIES ........... : ${STDAIR_LIBRARIES}")
-    message (STATUS "  - STDAIR_INCLUDE_DIRS ........ : ${STDAIR_INCLUDE_DIRS}")
-    message (STATUS "  - STDAIR_SAMPLE_DIR .......... : ${STDAIR_SAMPLE_DIR}")
+    message (STATUS "  - STDAIR_VERSION ................ : ${STDAIR_VERSION}")
+    message (STATUS "  - STDAIR_BINARY_DIRS ............ : ${STDAIR_BINARY_DIRS}")
+    message (STATUS "  - STDAIR_EXECUTABLES ............ : ${STDAIR_EXECUTABLES}")
+    message (STATUS "  - STDAIR_LIBRARY_DIRS ........... : ${STDAIR_LIBRARY_DIRS}")
+    message (STATUS "  - STDAIR_LIBRARIES .............. : ${STDAIR_LIBRARIES}")
+    message (STATUS "  - STDAIR_INCLUDE_DIRS ........... : ${STDAIR_INCLUDE_DIRS}")
+    message (STATUS "  - STDAIR_SAMPLE_DIR ............. : ${STDAIR_SAMPLE_DIR}")
   endif (StdAir_FOUND)
 endmacro (display_stdair)

@@ -1986,12 +2047,12 @@
   if (SEvMgr_FOUND)
     message (STATUS)
     message (STATUS "* SEvMgr:")
-    message (STATUS "  - SEVMGR_VERSION ............. : ${SEVMGR_VERSION}")
-    message (STATUS "  - SEVMGR_BINARY_DIRS ......... : ${SEVMGR_BINARY_DIRS}")
-    message (STATUS "  - SEVMGR_EXECUTABLES ......... : ${SEVMGR_EXECUTABLES}")
-    message (STATUS "  - SEVMGR_LIBRARY_DIRS ........ : ${SEVMGR_LIBRARY_DIRS}")
-    message (STATUS "  - SEVMGR_LIBRARIES ........... : ${SEVMGR_LIBRARIES}")
-    message (STATUS "  - SEVMGR_INCLUDE_DIRS ........ : ${SEVMGR_INCLUDE_DIRS}")
+    message (STATUS "  - SEVMGR_VERSION ................ : ${SEVMGR_VERSION}")
+    message (STATUS "  - SEVMGR_BINARY_DIRS ............ : ${SEVMGR_BINARY_DIRS}")
+    message (STATUS "  - SEVMGR_EXECUTABLES ............ : ${SEVMGR_EXECUTABLES}")
+    message (STATUS "  - SEVMGR_LIBRARY_DIRS ........... : ${SEVMGR_LIBRARY_DIRS}")
+    message (STATUS "  - SEVMGR_LIBRARIES .............. : ${SEVMGR_LIBRARIES}")
+    message (STATUS "  - SEVMGR_INCLUDE_DIRS ........... : ${SEVMGR_INCLUDE_DIRS}")
   endif (SEvMgr_FOUND)
 endmacro (display_sevmgr)

@@ -2000,12 +2061,12 @@
   if (TraDemGen_FOUND)
     message (STATUS)
     message (STATUS "* TraDemGen:")
-    message (STATUS "  - TRADEMGEN_VERSION .......... : ${TRADEMGEN_VERSION}")
-    message (STATUS "  - TRADEMGEN_BINARY_DIRS ...... : ${TRADEMGEN_BINARY_DIRS}")
-    message (STATUS "  - TRADEMGEN_EXECUTABLES ...... : ${TRADEMGEN_EXECUTABLES}")
-    message (STATUS "  - TRADEMGEN_LIBRARY_DIRS ..... : ${TRADEMGEN_LIBRARY_DIRS}")
-    message (STATUS "  - TRADEMGEN_LIBRARIES ........ : ${TRADEMGEN_LIBRARIES}")
-    message (STATUS "  - TRADEMGEN_INCLUDE_DIRS ..... : ${TRADEMGEN_INCLUDE_DIRS}")
+    message (STATUS "  - TRADEMGEN_VERSION ............. : ${TRADEMGEN_VERSION}")
+    message (STATUS "  - TRADEMGEN_BINARY_DIRS ......... : ${TRADEMGEN_BINARY_DIRS}")
+    message (STATUS "  - TRADEMGEN_EXECUTABLES ......... : ${TRADEMGEN_EXECUTABLES}")
+    message (STATUS "  - TRADEMGEN_LIBRARY_DIRS ........ : ${TRADEMGEN_LIBRARY_DIRS}")
+    message (STATUS "  - TRADEMGEN_LIBRARIES ........... : ${TRADEMGEN_LIBRARIES}")
+    message (STATUS "  - TRADEMGEN_INCLUDE_DIRS ........ : ${TRADEMGEN_INCLUDE_DIRS}")
   endif (TraDemGen_FOUND)
 endmacro (display_trademgen)

@@ -2014,12 +2075,12 @@
   if (TravelCCM_FOUND)
     message (STATUS)
     message (STATUS "* TravelCCM:")
-    message (STATUS "  - TRAVELCCM_VERSION .......... : ${TRAVELCCM_VERSION}")
-    message (STATUS "  - TRAVELCCM_BINARY_DIRS ...... : ${TRAVELCCM_BINARY_DIRS}")
-    message (STATUS "  - TRAVELCCM_EXECUTABLES ...... : ${TRAVELCCM_EXECUTABLES}")
-    message (STATUS "  - TRAVELCCM_LIBRARY_DIRS ..... : ${TRAVELCCM_LIBRARY_DIRS}")
-    message (STATUS "  - TRAVELCCM_LIBRARIES ........ : ${TRAVELCCM_LIBRARIES}")
-    message (STATUS "  - TRAVELCCM_INCLUDE_DIRS ..... : ${TRAVELCCM_INCLUDE_DIRS}")
+    message (STATUS "  - TRAVELCCM_VERSION ............. : ${TRAVELCCM_VERSION}")
+    message (STATUS "  - TRAVELCCM_BINARY_DIRS ......... : ${TRAVELCCM_BINARY_DIRS}")
+    message (STATUS "  - TRAVELCCM_EXECUTABLES ......... : ${TRAVELCCM_EXECUTABLES}")
+    message (STATUS "  - TRAVELCCM_LIBRARY_DIRS ........ : ${TRAVELCCM_LIBRARY_DIRS}")
+    message (STATUS "  - TRAVELCCM_LIBRARIES ........... : ${TRAVELCCM_LIBRARIES}")
+    message (STATUS "  - TRAVELCCM_INCLUDE_DIRS ........ : ${TRAVELCCM_INCLUDE_DIRS}")
   endif (TravelCCM_FOUND)
 endmacro (display_travelccm)

@@ -2028,12 +2089,12 @@
   if (AirSched_FOUND)
     message (STATUS)
     message (STATUS "* AirSched:")
-    message (STATUS "  - AIRSCHED_VERSION ........... : ${AIRSCHED_VERSION}")
-    message (STATUS "  - AIRSCHED_BINARY_DIRS ....... : ${AIRSCHED_BINARY_DIRS}")
-    message (STATUS "  - AIRSCHED_EXECUTABLES ....... : ${AIRSCHED_EXECUTABLES}")
-    message (STATUS "  - AIRSCHED_LIBRARY_DIRS ...... : ${AIRSCHED_LIBRARY_DIRS}")
-    message (STATUS "  - AIRSCHED_LIBRARIES ......... : ${AIRSCHED_LIBRARIES}")
-    message (STATUS "  - AIRSCHED_INCLUDE_DIRS ...... : ${AIRSCHED_INCLUDE_DIRS}")
+    message (STATUS "  - AIRSCHED_VERSION .............. : ${AIRSCHED_VERSION}")
+    message (STATUS "  - AIRSCHED_BINARY_DIRS .......... : ${AIRSCHED_BINARY_DIRS}")
+    message (STATUS "  - AIRSCHED_EXECUTABLES .......... : ${AIRSCHED_EXECUTABLES}")
+    message (STATUS "  - AIRSCHED_LIBRARY_DIRS ......... : ${AIRSCHED_LIBRARY_DIRS}")
+    message (STATUS "  - AIRSCHED_LIBRARIES ............ : ${AIRSCHED_LIBRARIES}")
+    message (STATUS "  - AIRSCHED_INCLUDE_DIRS ......... : ${AIRSCHED_INCLUDE_DIRS}")
   endif (AirSched_FOUND)
 endmacro (display_airsched)

@@ -2042,12 +2103,12 @@
   if (AirRAC_FOUND)
     message (STATUS)
     message (STATUS "* AirRAC:")
-    message (STATUS "  - AIRRAC_VERSION ............. : ${AIRRAC_VERSION}")
-    message (STATUS "  - AIRRAC_BINARY_DIRS ......... : ${AIRRAC_BINARY_DIRS}")
-    message (STATUS "  - AIRRAC_EXECUTABLES ......... : ${AIRRAC_EXECUTABLES}")
-    message (STATUS "  - AIRRAC_LIBRARY_DIRS ........ : ${AIRRAC_LIBRARY_DIRS}")
-    message (STATUS "  - AIRRAC_LIBRARIES ........... : ${AIRRAC_LIBRARIES}")
-    message (STATUS "  - AIRRAC_INCLUDE_DIRS ........ : ${AIRRAC_INCLUDE_DIRS}")
+    message (STATUS "  - AIRRAC_VERSION ................ : ${AIRRAC_VERSION}")
+    message (STATUS "  - AIRRAC_BINARY_DIRS ............ : ${AIRRAC_BINARY_DIRS}")
+    message (STATUS "  - AIRRAC_EXECUTABLES ............ : ${AIRRAC_EXECUTABLES}")
+    message (STATUS "  - AIRRAC_LIBRARY_DIRS ........... : ${AIRRAC_LIBRARY_DIRS}")
+    message (STATUS "  - AIRRAC_LIBRARIES .............. : ${AIRRAC_LIBRARIES}")
+    message (STATUS "  - AIRRAC_INCLUDE_DIRS ........... : ${AIRRAC_INCLUDE_DIRS}")
   endif (AirRAC_FOUND)
 endmacro (display_airrac)

@@ -2056,12 +2117,12 @@
   if (RMOL_FOUND)
     message (STATUS)
     message (STATUS "* RMOL:")
-    message (STATUS "  - RMOL_VERSION ............... : ${RMOL_VERSION}")
-    message (STATUS "  - RMOL_BINARY_DIRS ........... : ${RMOL_BINARY_DIRS}")
-    message (STATUS "  - RMOL_EXECUTABLES ........... : ${RMOL_EXECUTABLES}")
-    message (STATUS "  - RMOL_LIBRARY_DIRS .......... : ${RMOL_LIBRARY_DIRS}")
-    message (STATUS "  - RMOL_LIBRARIES ............. : ${RMOL_LIBRARIES}")
-    message (STATUS "  - RMOL_INCLUDE_DIRS .......... : ${RMOL_INCLUDE_DIRS}")
+    message (STATUS "  - RMOL_VERSION .................. : ${RMOL_VERSION}")
+    message (STATUS "  - RMOL_BINARY_DIRS .............. : ${RMOL_BINARY_DIRS}")
+    message (STATUS "  - RMOL_EXECUTABLES .............. : ${RMOL_EXECUTABLES}")
+    message (STATUS "  - RMOL_LIBRARY_DIRS ............. : ${RMOL_LIBRARY_DIRS}")
+    message (STATUS "  - RMOL_LIBRARIES ................ : ${RMOL_LIBRARIES}")
+    message (STATUS "  - RMOL_INCLUDE_DIRS ............. : ${RMOL_INCLUDE_DIRS}")
   endif (RMOL_FOUND)
 endmacro (display_rmol)

@@ -2070,12 +2131,12 @@
   if (AirInv_FOUND)
     message (STATUS)
     message (STATUS "* AirInv:")
-    message (STATUS "  - AIRINV_VERSION ............. : ${AIRINV_VERSION}")
-    message (STATUS "  - AIRINV_BINARY_DIRS ......... : ${AIRINV_BINARY_DIRS}")
-    message (STATUS "  - AIRINV_EXECUTABLES ......... : ${AIRINV_EXECUTABLES}")
-    message (STATUS "  - AIRINV_LIBRARY_DIRS ........ : ${AIRINV_LIBRARY_DIRS}")
-    message (STATUS "  - AIRINV_LIBRARIES ........... : ${AIRINV_LIBRARIES}")
-    message (STATUS "  - AIRINV_INCLUDE_DIRS ........ : ${AIRINV_INCLUDE_DIRS}")
+    message (STATUS "  - AIRINV_VERSION ................ : ${AIRINV_VERSION}")
+    message (STATUS "  - AIRINV_BINARY_DIRS ............ : ${AIRINV_BINARY_DIRS}")
+    message (STATUS "  - AIRINV_EXECUTABLES ............ : ${AIRINV_EXECUTABLES}")
+    message (STATUS "  - AIRINV_LIBRARY_DIRS ........... : ${AIRINV_LIBRARY_DIRS}")
+    message (STATUS "  - AIRINV_LIBRARIES .............. : ${AIRINV_LIBRARIES}")
+    message (STATUS "  - AIRINV_INCLUDE_DIRS ........... : ${AIRINV_INCLUDE_DIRS}")
   endif (AirInv_FOUND)
 endmacro (display_airinv)

@@ -2084,12 +2145,12 @@
   if (AvlCal_FOUND)
     message (STATUS)
     message (STATUS "* AvlCal:")
-    message (STATUS "  - AVLCAL_VERSION ............. : ${AVLCAL_VERSION}")
-    message (STATUS "  - AVLCAL_BINARY_DIRS ......... : ${AVLCAL_BINARY_DIRS}")
-    message (STATUS "  - AVLCAL_EXECUTABLES ......... : ${AVLCAL_EXECUTABLES}")
-    message (STATUS "  - AVLCAL_LIBRARY_DIRS ........ : ${AVLCAL_LIBRARY_DIRS}")
-    message (STATUS "  - AVLCAL_LIBRARIES ........... : ${AVLCAL_LIBRARIES}")
-    message (STATUS "  - AVLCAL_INCLUDE_DIRS ........ : ${AVLCAL_INCLUDE_DIRS}")
+    message (STATUS "  - AVLCAL_VERSION ................ : ${AVLCAL_VERSION}")
+    message (STATUS "  - AVLCAL_BINARY_DIRS ............ : ${AVLCAL_BINARY_DIRS}")
+    message (STATUS "  - AVLCAL_EXECUTABLES ............ : ${AVLCAL_EXECUTABLES}")
+    message (STATUS "  - AVLCAL_LIBRARY_DIRS ........... : ${AVLCAL_LIBRARY_DIRS}")
+    message (STATUS "  - AVLCAL_LIBRARIES .............. : ${AVLCAL_LIBRARIES}")
+    message (STATUS "  - AVLCAL_INCLUDE_DIRS ........... : ${AVLCAL_INCLUDE_DIRS}")
   endif (AvlCal_FOUND)
 endmacro (display_avlcal)

@@ -2098,12 +2159,12 @@
   if (SimFQT_FOUND)
     message (STATUS)
     message (STATUS "* SimFQT:")
-    message (STATUS "  - SIMFQT_VERSION ............. : ${SIMFQT_VERSION}")
-    message (STATUS "  - SIMFQT_BINARY_DIRS ......... : ${SIMFQT_BINARY_DIRS}")
-    message (STATUS "  - SIMFQT_EXECUTABLES ......... : ${SIMFQT_EXECUTABLES}")
-    message (STATUS "  - SIMFQT_LIBRARY_DIRS ........ : ${SIMFQT_LIBRARY_DIRS}")
-    message (STATUS "  - SIMFQT_LIBRARIES ........... : ${SIMFQT_LIBRARIES}")
-    message (STATUS "  - SIMFQT_INCLUDE_DIRS ........ : ${SIMFQT_INCLUDE_DIRS}")
+    message (STATUS "  - SIMFQT_VERSION ................ : ${SIMFQT_VERSION}")
+    message (STATUS "  - SIMFQT_BINARY_DIRS ............ : ${SIMFQT_BINARY_DIRS}")
+    message (STATUS "  - SIMFQT_EXECUTABLES ............ : ${SIMFQT_EXECUTABLES}")
+    message (STATUS "  - SIMFQT_LIBRARY_DIRS ........... : ${SIMFQT_LIBRARY_DIRS}")
+    message (STATUS "  - SIMFQT_LIBRARIES .............. : ${SIMFQT_LIBRARIES}")
+    message (STATUS "  - SIMFQT_INCLUDE_DIRS ........... : ${SIMFQT_INCLUDE_DIRS}")
   endif (SimFQT_FOUND)
 endmacro (display_simfqt)

@@ -2112,12 +2173,12 @@
   if (SimLFS_FOUND)
     message (STATUS)
     message (STATUS "* SimLFS:")
-    message (STATUS "  - SIMLFS_VERSION ............. : ${SIMLFS_VERSION}")
-    message (STATUS "  - SIMLFS_BINARY_DIRS ......... : ${SIMLFS_BINARY_DIRS}")
-    message (STATUS "  - SIMLFS_EXECUTABLES ......... : ${SIMLFS_EXECUTABLES}")
-    message (STATUS "  - SIMLFS_LIBRARY_DIRS ........ : ${SIMLFS_LIBRARY_DIRS}")
-    message (STATUS "  - SIMLFS_LIBRARIES ........... : ${SIMLFS_LIBRARIES}")
-    message (STATUS "  - SIMLFS_INCLUDE_DIRS ........ : ${SIMLFS_INCLUDE_DIRS}")
+    message (STATUS "  - SIMLFS_VERSION ................ : ${SIMLFS_VERSION}")
+    message (STATUS "  - SIMLFS_BINARY_DIRS ............ : ${SIMLFS_BINARY_DIRS}")
+    message (STATUS "  - SIMLFS_EXECUTABLES ............ : ${SIMLFS_EXECUTABLES}")
+    message (STATUS "  - SIMLFS_LIBRARY_DIRS ........... : ${SIMLFS_LIBRARY_DIRS}")
+    message (STATUS "  - SIMLFS_LIBRARIES .............. : ${SIMLFS_LIBRARIES}")
+    message (STATUS "  - SIMLFS_INCLUDE_DIRS ........... : ${SIMLFS_INCLUDE_DIRS}")
   endif (SimLFS_FOUND)
 endmacro (display_simlfs)

@@ -2126,25 +2187,39 @@
   if (SimCRS_FOUND)
     message (STATUS)
     message (STATUS "* SimCRS:")
-    message (STATUS "  - SIMCRS_VERSION ............. : ${SIMCRS_VERSION}")
-    message (STATUS "  - SIMCRS_BINARY_DIRS ......... : ${SIMCRS_BINARY_DIRS}")
-    message (STATUS "  - SIMCRS_EXECUTABLES ......... : ${SIMCRS_EXECUTABLES}")
-    message (STATUS "  - SIMCRS_LIBRARY_DIRS ........ : ${SIMCRS_LIBRARY_DIRS}")
-    message (STATUS "  - SIMCRS_LIBRARIES ........... : ${SIMCRS_LIBRARIES}")
-    message (STATUS "  - SIMCRS_INCLUDE_DIRS ........ : ${SIMCRS_INCLUDE_DIRS}")
+    message (STATUS "  - SIMCRS_VERSION ................ : ${SIMCRS_VERSION}")
+    message (STATUS "  - SIMCRS_BINARY_DIRS ............ : ${SIMCRS_BINARY_DIRS}")
+    message (STATUS "  - SIMCRS_EXECUTABLES ............ : ${SIMCRS_EXECUTABLES}")
+    message (STATUS "  - SIMCRS_LIBRARY_DIRS ........... : ${SIMCRS_LIBRARY_DIRS}")
+    message (STATUS "  - SIMCRS_LIBRARIES .............. : ${SIMCRS_LIBRARIES}")
+    message (STATUS "  - SIMCRS_INCLUDE_DIRS ........... : ${SIMCRS_INCLUDE_DIRS}")
   endif (SimCRS_FOUND)
 endmacro (display_simcrs)
+
+# DSim
+macro (display_dsim)
+  if (DSim_FOUND)
+    message (STATUS)
+    message (STATUS "* DSim:")
+    message (STATUS "  - DSIM_VERSION .................. : ${DSIM_VERSION}")
+    message (STATUS "  - DSIM_BINARY_DIRS .............. : ${DSIM_BINARY_DIRS}")
+    message (STATUS "  - DSIM_EXECUTABLES .............. : ${DSIM_EXECUTABLES}")
+    message (STATUS "  - DSIM_LIBRARY_DIRS ............. : ${DSIM_LIBRARY_DIRS}")
+    message (STATUS "  - DSIM_LIBRARIES ................ : ${DSIM_LIBRARIES}")
+    message (STATUS "  - DSIM_INCLUDE_DIRS ............. : ${DSIM_INCLUDE_DIRS}")
+  endif (DSim_FOUND)
+endmacro (display_dsim)

 ##
 macro (display_status_all_modules)
   message (STATUS)
   foreach (_module_name ${PROJ_ALL_MOD_FOR_BLD})
-    message (STATUS "* Module ....................... : ${_module_name}")
-    message (STATUS "  + Layers to build ............ : ${${_module_name}_ALL_LAYERS}")
-    message (STATUS "  + Dependencies on other layers : ${${_module_name}_INTER_TARGETS}")
-    message (STATUS "  + Libraries to build/install . : ${${_module_name}_ALL_LIBS}")
-    message (STATUS "  + Executables to build/install : ${${_module_name}_ALL_EXECS}")
-    message (STATUS "  + Tests to perform ........... : ${${_module_name}_ALL_TESTS}")
+    message (STATUS "* Module .......................... : ${_module_name}")
+    message (STATUS "  + Layers to build ............... : ${${_module_name}_ALL_LAYERS}")
+    message (STATUS "  + Dependencies on other layers .. : ${${_module_name}_INTER_TARGETS}")
+    message (STATUS "  + Libraries to build/install .... : ${${_module_name}_ALL_LIBS}")
+    message (STATUS "  + Executables to build/install .. : ${${_module_name}_ALL_EXECS}")
+    message (STATUS "  + Tests to perform .............. : ${${_module_name}_ALL_TESTS}")
   endforeach (_module_name)
 endmacro (display_status_all_modules)

@@ -2152,65 +2227,67 @@
 macro (display_status)
   message (STATUS)
   message (STATUS "=============================================================")
-  message (STATUS "----------------------------------")
-  message (STATUS "---     Project Information    ---")
-  message (STATUS "----------------------------------")
-  message (STATUS "PROJECT_NAME ................... : ${PROJECT_NAME}")
-  message (STATUS "PACKAGE_PRETTY_NAME ............ : ${PACKAGE_PRETTY_NAME}")
-  message (STATUS "PACKAGE ........................ : ${PACKAGE}")
-  message (STATUS "PACKAGE_NAME ................... : ${PACKAGE_NAME}")
-  message (STATUS "PACKAGE_BRIEF .................. : ${PACKAGE_BRIEF}")
-  message (STATUS "PACKAGE_VERSION ................ : ${PACKAGE_VERSION}")
-  message (STATUS "GENERIC_LIB_VERSION ............ : ${GENERIC_LIB_VERSION}")
-  message (STATUS "GENERIC_LIB_SOVERSION .......... : ${GENERIC_LIB_SOVERSION}")
+  message (STATUS "-------------------------------------")
+  message (STATUS "---      Project Information      ---")
+  message (STATUS "-------------------------------------")
+  message (STATUS "PROJECT_NAME ...................... : ${PROJECT_NAME}")
+  message (STATUS "PACKAGE_PRETTY_NAME ............... : ${PACKAGE_PRETTY_NAME}")
+  message (STATUS "PACKAGE ........................... : ${PACKAGE}")
+  message (STATUS "PACKAGE_NAME ...................... : ${PACKAGE_NAME}")
+  message (STATUS "PACKAGE_BRIEF ..................... : ${PACKAGE_BRIEF}")
+  message (STATUS "PACKAGE_VERSION ................... : ${PACKAGE_VERSION}")
+  message (STATUS "GENERIC_LIB_VERSION ............... : ${GENERIC_LIB_VERSION}")
+  message (STATUS "GENERIC_LIB_SOVERSION ............. : ${GENERIC_LIB_SOVERSION}")
   message (STATUS)
-  message (STATUS "----------------------------------")
-  message (STATUS "---     Build Configuration    ---")
-  message (STATUS "----------------------------------")
-  message (STATUS "Modules to build ............... : ${PROJ_ALL_MOD_FOR_BLD}")
-  message (STATUS "Libraries to build/install ..... : ${PROJ_ALL_LIB_TARGETS}")
-  message (STATUS "Binaries to build/install ...... : ${PROJ_ALL_BIN_TARGETS}")
-  message (STATUS "Modules to test ................ : ${PROJ_ALL_MOD_FOR_TST}")
-  message (STATUS "Binaries to test ............... : ${PROJ_ALL_TST_TARGETS}")
+  message (STATUS "-------------------------------------")
+  message (STATUS "---       Build Configuration     ---")
+  message (STATUS "-------------------------------------")
+  message (STATUS "Modules to build .................. : ${PROJ_ALL_MOD_FOR_BLD}")
+  message (STATUS "Libraries to build/install ........ : ${PROJ_ALL_LIB_TARGETS}")
+  message (STATUS "Binaries to build/install ......... : ${PROJ_ALL_BIN_TARGETS}")
+  message (STATUS "Modules to test ................... : ${PROJ_ALL_MOD_FOR_TST}")
+  message (STATUS "Binaries to test .................. : ${PROJ_ALL_TST_TARGETS}")
   display_status_all_modules ()
   message (STATUS)
-  message (STATUS "BUILD_SHARED_LIBS .............. : ${BUILD_SHARED_LIBS}")
-  message (STATUS "CMAKE_BUILD_TYPE ............... : ${CMAKE_BUILD_TYPE}")
-  message (STATUS " * CMAKE_C_FLAGS ............... : ${CMAKE_C_FLAGS}")
-  message (STATUS " * CMAKE_CXX_FLAGS ............. : ${CMAKE_CXX_FLAGS}")
-  message (STATUS " * BUILD_FLAGS ................. : ${BUILD_FLAGS}")
-  message (STATUS " * COMPILE_FLAGS ............... : ${COMPILE_FLAGS}")
-  message (STATUS "CMAKE_MODULE_PATH .............. : ${CMAKE_MODULE_PATH}")
-  message (STATUS "CMAKE_INSTALL_PREFIX ........... : ${CMAKE_INSTALL_PREFIX}")
+  message (STATUS "BUILD_SHARED_LIBS ................. : ${BUILD_SHARED_LIBS}")
+  message (STATUS "CMAKE_BUILD_TYPE .................. : ${CMAKE_BUILD_TYPE}")
+  message (STATUS " * CMAKE_C_FLAGS .................. : ${CMAKE_C_FLAGS}")
+  message (STATUS " * CMAKE_CXX_FLAGS ................ : ${CMAKE_CXX_FLAGS}")
+  message (STATUS " * BUILD_FLAGS .................... : ${BUILD_FLAGS}")
+  message (STATUS " * COMPILE_FLAGS .................. : ${COMPILE_FLAGS}")
+  message (STATUS "CMAKE_MODULE_PATH ................. : ${CMAKE_MODULE_PATH}")
+  message (STATUS "CMAKE_INSTALL_PREFIX .............. : ${CMAKE_INSTALL_PREFIX}")
   display_doxygen ()
   message (STATUS)
-  message (STATUS "----------------------------------")
-  message (STATUS "--- Installation Configuration ---")
-  message (STATUS "----------------------------------")
-  message (STATUS "INSTALL_LIB_DIR ................ : ${INSTALL_LIB_DIR}")
-  message (STATUS "INSTALL_BIN_DIR ................ : ${INSTALL_BIN_DIR}")
-  message (STATUS "INSTALL_INCLUDE_DIR ............ : ${INSTALL_INCLUDE_DIR}")
-  message (STATUS "INSTALL_DATA_DIR ............... : ${INSTALL_DATA_DIR}")
-  message (STATUS "INSTALL_SAMPLE_DIR ............. : ${INSTALL_SAMPLE_DIR}")
-  message (STATUS "INSTALL_DOC .................... : ${INSTALL_DOC}" )
+  message (STATUS "-------------------------------------")
+  message (STATUS "---  Installation Configuration   ---")
+  message (STATUS "-------------------------------------")
+  message (STATUS "INSTALL_LIB_DIR ................... : ${INSTALL_LIB_DIR}")
+  message (STATUS "INSTALL_BIN_DIR ................... : ${INSTALL_BIN_DIR}")
+  message (STATUS "CMAKE_INSTALL_RPATH ............... : ${CMAKE_INSTALL_RPATH}")
+  message (STATUS "CMAKE_INSTALL_RPATH_USE_LINK_PATH . : ${CMAKE_INSTALL_RPATH_USE_LINK_PATH}")
+  message (STATUS "INSTALL_INCLUDE_DIR ............... : ${INSTALL_INCLUDE_DIR}")
+  message (STATUS "INSTALL_DATA_DIR .................. : ${INSTALL_DATA_DIR}")
+  message (STATUS "INSTALL_SAMPLE_DIR ................ : ${INSTALL_SAMPLE_DIR}")
+  message (STATUS "INSTALL_DOC ....................... : ${INSTALL_DOC}" )
   message (STATUS)
-  message (STATUS "----------------------------------")
-  message (STATUS "---   Packaging Configuration  ---")
-  message (STATUS "----------------------------------")
-  message (STATUS "CPACK_PACKAGE_CONTACT .......... : ${CPACK_PACKAGE_CONTACT}")
-  message (STATUS "CPACK_PACKAGE_VENDOR ........... : ${CPACK_PACKAGE_VENDOR}")
-  message (STATUS "CPACK_PACKAGE_VERSION .......... : ${CPACK_PACKAGE_VERSION}")
-  message (STATUS "CPACK_PACKAGE_DESCRIPTION_FILE . : ${CPACK_PACKAGE_DESCRIPTION_FILE}")
-  message (STATUS "CPACK_RESOURCE_FILE_LICENSE .... : ${CPACK_RESOURCE_FILE_LICENSE}")
-  message (STATUS "CPACK_GENERATOR ................ : ${CPACK_GENERATOR}")
-  message (STATUS "CPACK_DEBIAN_PACKAGE_DEPENDS ... : ${CPACK_DEBIAN_PACKAGE_DEPENDS}")
-  message (STATUS "CPACK_SOURCE_GENERATOR ......... : ${CPACK_SOURCE_GENERATOR}")
-  message (STATUS "CPACK_SOURCE_PACKAGE_FILE_NAME . : ${CPACK_SOURCE_PACKAGE_FILE_NAME}")
+  message (STATUS "-------------------------------------")
+  message (STATUS "---    Packaging Configuration    ---")
+  message (STATUS "-------------------------------------")
+  message (STATUS "CPACK_PACKAGE_CONTACT ............. : ${CPACK_PACKAGE_CONTACT}")
+  message (STATUS "CPACK_PACKAGE_VENDOR .............. : ${CPACK_PACKAGE_VENDOR}")
+  message (STATUS "CPACK_PACKAGE_VERSION ............. : ${CPACK_PACKAGE_VERSION}")
+  message (STATUS "CPACK_PACKAGE_DESCRIPTION_FILE .... : ${CPACK_PACKAGE_DESCRIPTION_FILE}")
+  message (STATUS "CPACK_RESOURCE_FILE_LICENSE ....... : ${CPACK_RESOURCE_FILE_LICENSE}")
+  message (STATUS "CPACK_GENERATOR ................... : ${CPACK_GENERATOR}")
+  message (STATUS "CPACK_DEBIAN_PACKAGE_DEPENDS ...... : ${CPACK_DEBIAN_PACKAGE_DEPENDS}")
+  message (STATUS "CPACK_SOURCE_GENERATOR ............ : ${CPACK_SOURCE_GENERATOR}")
+  message (STATUS "CPACK_SOURCE_PACKAGE_FILE_NAME .... : ${CPACK_SOURCE_PACKAGE_FILE_NAME}")
   #
   message (STATUS)
-  message (STATUS "---------------------------------")
-  message (STATUS "---     External libraries    ---")
-  message (STATUS "---------------------------------")
+  message (STATUS "------------------------------------")
+  message (STATUS "---      External libraries      ---")
+  message (STATUS "------------------------------------")
   #
   display_python ()
   display_zeromq ()
@@ -2231,6 +2308,7 @@
   display_simfqt ()
   display_simlfs ()
   display_simcrs ()
+  display_dsim ()
   #
   message (STATUS)
   message (STATUS "Change a value with: cmake -D<Variable>=<Value>" )


Fix ARM build error

Fix ARM build error


Removed mingw64.cmake due to MSVC-hosted compiling now working fine.

--- mingw64.cmake
+++ mingw64.cmake
@@ -1,9 +0,0 @@
-set(CMAKE_SYSTEM_NAME Windows)
-set(CMAKE_C_COMPILER /usr/bin/x86_64-w64-mingw32-gcc)
-set(CMAKE_CXX_COMPILER /usr/bin/x86_64-w64-mingw32-g++)
-set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32/sys-root/mingw/)
-set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
-set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
-set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
-set(CMAKE_EXE_LINKER_FLAGS_RELEASE "-static -static-libgcc -static-libstdc++")
-set(Boost_PROGRAM_OPTIONS_LIBRARY_RELEASE /usr/x86_64-w64-mingw32/sys-root/mingw/lib/libboost_program_options.a)


make sure the variables are different and set so that MIC_CXX_FLAGS works without MIC_CXX_RESULT

--- cmake/AddCompilerFlag.cmake
+++ cmake/AddCompilerFlag.cmake
@@ -70,12 +70,12 @@
          if(_arg STREQUAL "C_FLAGS")
             set(state 1)
             if(NOT DEFINED _c_result)
-               set(_c_result tmp)
+               set(_c_result tmp0)
             endif()
          elseif(_arg STREQUAL "CXX_FLAGS")
             set(state 2)
             if(NOT DEFINED _cxx_result)
-               set(_cxx_result tmp)
+               set(_cxx_result tmp1)
             endif()
          elseif(_arg STREQUAL "C_RESULT")
             set(state 3)
@@ -86,8 +86,14 @@
          elseif(_arg STREQUAL "MIC_CXX_RESULT")
             set(state 6)
          elseif(_arg STREQUAL "MIC_C_FLAGS")
+            if(NOT DEFINED _mic_c_result)
+               set(_mic_c_result tmp2)
+            endif()
             set(state 7)
          elseif(_arg STREQUAL "MIC_CXX_FLAGS")
+            if(NOT DEFINED _mic_cxx_result)
+               set(_mic_cxx_result tmp3)
+            endif()
             set(state 8)
          elseif(state EQUAL 1)
             set(_c_flags "${_arg}")


Change cmake variable for newer cmake versions

--- cmake/PVConfigProject.cmake
+++ cmake/PVConfigProject.cmake
@@ -5,7 +5,7 @@
 macro(pv_config_project)

   # The default build type if CMAKE_BUILD_TYPE is empty
-  set(CMAKE_DEFAULT_BUILD_TYPE "Release")
+  set(PV_DEFAULT_BUILD_TYPE "Release")

   # Intel Compiler defaults
   set(ICC_OPT_REPORT_LEVEL "-qopt-report=2")
@@ -189,7 +189,7 @@

   # Ensure that CMAKE_BUILD_TYPE is set
   if (NOT CMAKE_BUILD_TYPE)
-    set(CMAKE_BUILD_TYPE "${CMAKE_DEFAULT_BUILD_TYPE}")
+    set(CMAKE_BUILD_TYPE "${PV_DEFAULT_BUILD_TYPE}")
   endif()

   # Set up PV_SOURCE and INCLUDE_DIR.


Update default.cmake

Update default.cmake

--- cmake/configs/default.cmake
+++ cmake/configs/default.cmake
@@ -24,7 +24,7 @@

 # NOTE: no names with spaces!

-hunter_config(puffin-stream VERSION 0.2.0.0)
+hunter_config(puffin-stream VERSION 0.2.1.0)
 hunter_config(puffin-buffer VERSION 0.3.0.0)
 hunter_config(AllTheFlopsThreads VERSION 0.1-p0)
 hunter_config(Android-Apk VERSION 1.1.13)


[lldb][CMake] Fix framework-enabled build detail for Xcode

If debugserver or any other framework tool gets built first, its post-build copy operation was using 'Resources' as the file name instead of the destination directory. It was not a problem with Ninja, because here the framework structure was alreaady created at configuration time. With this fix, both generators are happy.

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

--- cmake/modules/AddLLDB.cmake
+++ cmake/modules/AddLLDB.cmake
@@ -204,7 +204,7 @@
   # Destination for the copy in the build-tree. While the framework target may
   # not exist yet, it will exist when the generator expression gets expanded.
   get_target_property(framework_build_dir liblldb LIBRARY_OUTPUT_DIRECTORY)
-  set(copy_dest "${framework_build_dir}/${subdir}")
+  set(copy_dest "${framework_build_dir}/${subdir}/$<TARGET_FILE_NAME:${name}>")

   # Copy into the given subdirectory for testing.
   add_custom_command(TARGET ${name} POST_BUILD


update re2c to 1.1

update re2c to 1.1

--- cmake/modules/GetRE2C.cmake
+++ cmake/modules/GetRE2C.cmake
@@ -14,7 +14,7 @@
             DOWNLOAD_DIR        ${CMAKE_SOURCE_DIR}/re2c-download
             BINARY_DIR          ${CMAKE_SOURCE_DIR}/re2c-build
             GIT_REPOSITORY      https://github.com/skvadrik/re2c.git
-            GIT_TAG             1.0.3
+            GIT_TAG             1.1
             ${UPDATE_DISCONNECTED_IF_AVAILABLE}
     )


[cmake] halモジュールの追加

[cmake] halモジュールの追加

--- mod_picox.cmake
+++ mod_picox.cmake
@@ -49,6 +49,11 @@
     ${picox_dir}/misc/xargparser.c
     ${picox_dir}/multitask/xfiber.c
     ${picox_dir}/multitask/xvtimer.c
+    ${picox_dir}/hal/xgpio.c
+    ${picox_dir}/hal/xuart.c
+    ${picox_dir}/hal/xspi.c
+    ${picox_dir}/hal/xi2c.c
+    ${picox_dir}/hal/xpwm.c
     ${sds_dir}/sds.c
     ${fatfs_dir}/ff.c
     ${spiffs_dir}/spiffs_cache.c


Ignore CMakeFiles directory when in source build

--- test/claw_reference_test.cmake
+++ test/claw_reference_test.cmake
@@ -693,8 +693,8 @@
   file(GLOB children RELATIVE ${curdir} ${curdir}/*)
   set(dirlist "")
   foreach(child ${children})
-    if(IS_DIRECTORY ${curdir}/${child})
-      LIST(APPEND dirlist ${child})
+    if(IS_DIRECTORY ${curdir}/${child} AND NOT "${child}" STREQUAL "CMakeFiles")
+      list(APPEND dirlist ${child})
     endif()
   endforeach()
   set(${result} ${dirlist})


Attempting to make conflicting proprecssor error more clear.

--- CPM.cmake
+++ CPM.cmake
@@ -697,7 +697,7 @@
       message("CPM namespace conflict.")
       message("  Current module name: ${name}.")
       message("  Conflicting propressor macro: ${__CPM_LAST_MODULE_PREPROC}.")
-      message("  Current module UNID: ${__CPM_FULL_UNID}.")
+      message("  Current module UNID: ${fullUNID}.")
       message("  Conflicting module UNID: ${CPM_KV_PREPROC_NS_MAP_${__CPM_LAST_MODULE_PREPROC}}.")
       message(FATAL_ERROR "CPM cannot continue without resolving namespace conflict.")
     endif()


Removed FindOpenAL.cmake as it is provided

--- modules/CMakeModules/FindOpenAL.cmake
+++ modules/CMakeModules/FindOpenAL.cmake
@@ -1,20 +0,0 @@
-FIND_PATH(OPENAL_INCLUDE_DIR AL)
-
-FIND_LIBRARY(OPENAL_LIBRARY NAMES openal OpenAL32)
-IF(NOT OPENAL_LIBRARY)
-    MESSAGE(SEND_ERROR "OpenAL not found")
-ENDIF(NOT OPENAL_LIBRARY)
-
-IF(OPENAL_INCLUDE_DIR AND OPENAL_LIBRARY)
-   SET(OPENAL_FOUND TRUE)
-ENDIF(OPENAL_INCLUDE_DIR AND OPENAL_LIBRARY)
-
-IF(OPENAL_FOUND)
-   IF (NOT OpenAL_FIND_QUIETLY)
-      MESSAGE(STATUS "Found OpenAL: ${OPENAL_LIBRARY}")
-   ENDIF (NOT OpenAL_FIND_QUIETLY)
-ELSE(OPENAL_FOUND)
-   IF (OpenAL_FIND_REQUIRED)
-      MESSAGE(FATAL_ERROR "Could not find OpenAL")
-   ENDIF (OpenAL_FIND_REQUIRED)
-ENDIF(OPENAL_FOUND)


Bump to 1.5.0

Bump to 1.5.0

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


Bump to 1.7.19

Bump to 1.7.19

--- VERSION.cmake
+++ VERSION.cmake
@@ -1,3 +1,3 @@
 SET(LIBREPO_MAJOR "1")
 SET(LIBREPO_MINOR "7")
-SET(LIBREPO_PATCH "18")
+SET(LIBREPO_PATCH "19")


Update findJSONC

Update findJSONC

--- FindJSONC.cmake
+++ FindJSONC.cmake
@@ -4,7 +4,7 @@

 find_package(PkgConfig)

-pkg_search_module(PC_JSON_C QUIET json-c>=0.10 json>=0.10)
+pkg_search_module(PC_JSON_C QUIET json-c>=0.10 json>=0.10 json0>=0.10)

 find_path(JSON_C_INCLUDE_DIR json.h
 	HINTS ${PC_JSON_C_INCLUDEDIR} ${PC_JSON_C_INCLUDE_DIRS} ${PC_JSON_INCLUDE_DIRS} ${PC_JSON_INCLUDEDIR} PATH_SUFFIXES json-c json)


fixed a bug where dependencies of dependencies were not hidden

--- dist/WkLink.cmake
+++ dist/WkLink.cmake
@@ -99,8 +99,8 @@

 find_package( ${package_name} )
 #hiding depends variables from interface
-mark_as_advanced( ${package_name}_INCLUDE_DIR )
-mark_as_advanced( ${package_name}_LIBRARY )
+mark_as_advanced( ${package_var_name}_INCLUDE_DIR )
+mark_as_advanced( ${package_var_name}_LIBRARY )

 # Include directory might be needed by upper project if ${PROJECT_NAME} doesn totally encapsulate it.
 # NB : It shouldnt hurt if the upper project also define it as its own dependency


Reverting to r1268 FindBoost.cmake. The new one in CMake 2.6.2 doesn't work with BOOST_ROOT any better than the previous.

git-svn-id: 4ba210d0a933e3fb1aa9ab096f190cd38965d92a@1297 fa922fa7-2fde-0310-acd8-f43f465a7996

--- src/CMake/boost/FindBoost.cmake
+++ src/CMake/boost/FindBoost.cmake
@@ -286,18 +286,12 @@

   # Try to find Boost by stepping backwards through the Boost versions
   # we know about.
-  IF( NOT Boost_INCLUDE_DIR )
-    # Build a list of path suffixes for each version.
-    SET(_boost_PATH_SUFFIXES)
-    FOREACH(_boost_VER ${_boost_TEST_VERSIONS})
+  FOREACH(_boost_VER ${_boost_TEST_VERSIONS})
+    IF( NOT Boost_INCLUDE_DIR )
       # Add in a path suffix, based on the required version, ideally
       # we could read this from version.hpp, but for that to work we'd
       # need to know the include dir already
-      if (WIN32 AND NOT CYGWIN)
-        set(_boost_PATH_SUFFIX boost_${_boost_VER})
-      else (WIN32 AND NOT CYGWIN)
-        set(_boost_PATH_SUFFIX boost-${_boost_VER})
-      endif (WIN32 AND NOT CYGWIN)
+      set(_boost_PATH_SUFFIX ${_boost_VER})

       IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
           STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3"
@@ -306,16 +300,27 @@
           STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2"
             _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX})
       ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
-      LIST(APPEND _boost_PATH_SUFFIXES "${_boost_PATH_SUFFIX}")
-    ENDFOREACH(_boost_VER)
-
-    # Look for a standard boost header file.
-    FIND_PATH(Boost_INCLUDE_DIR
-      NAMES         boost/config.hpp
-      HINTS         ${_boost_INCLUDE_SEARCH_DIRS}
-      PATH_SUFFIXES ${_boost_PATH_SUFFIXES}
+
+	  if (BOOST_ROOT)
+      FIND_PATH(Boost_INCLUDE_DIR
+          NAMES         boost/config.hpp
+          HINTS         ${_boost_INCLUDE_SEARCH_DIRS}
+          PATH_SUFFIXES boost-${_boost_PATH_SUFFIX} boost_${_boost_PATH_SUFFIX}
+		  NO_CMAKE_PATH
+		  NO_CMAKE_ENVIRONMENT_PATH
+		  NO_SYSTEM_ENVIRONMENT_PATH
+		  NO_CMAKE_SYSTEM_PATH
       )
-  ENDIF( NOT Boost_INCLUDE_DIR )
+	  else (BOOST_ROOT)
+      FIND_PATH(Boost_INCLUDE_DIR
+          NAMES         boost/config.hpp
+          HINTS         ${_boost_INCLUDE_SEARCH_DIRS}
+          PATH_SUFFIXES boost-${_boost_PATH_SUFFIX} boost_${_boost_PATH_SUFFIX}
+      )
+	  endif(BOOST_ROOT)
+
+    ENDIF( NOT Boost_INCLUDE_DIR )
+  ENDFOREACH(_boost_VER)

   IF(Boost_INCLUDE_DIR)
     # Extract Boost_VERSION and Boost_LIB_VERSION from version.hpp


"add comment"

"add comment"

--- cmake/cudnn.cmake
+++ cmake/cudnn.cmake
@@ -47,8 +47,6 @@
           NO_DEFAULT_PATH
     DOC "Path to cuDNN library.")

-message("Include Dir" ${CUDNN_INCLUDE_DIR})
-message("Library Dir" ${CUDNN_LIBRARY})
 if(CUDNN_INCLUDE_DIR AND CUDNN_LIBRARY)
     set(CUDNN_FOUND ON)
 else()


Additional sanity check for empty CMake variable.

--- BlueBerry/CMake/FunctionCreateBlueBerryApplication.cmake
+++ BlueBerry/CMake/FunctionCreateBlueBerryApplication.cmake
@@ -144,7 +144,7 @@
 # executable is build.
 if(_APP_PLUGINS)
   ctkMacroGetAllProjectTargetLibraries("${_APP_PLUGINS}" _project_plugins)
-  if(_APP_EXCLUDE_PLUGINS)
+  if(_APP_EXCLUDE_PLUGINS AND _project_plugins)
     set(_exclude_targets)
     foreach(_exclude_plugin ${_APP_EXCLUDE_PLUGINS})
       string(REPLACE "." "_" _exclude_target ${_exclude_plugin})


fix compile check for SENDFILE_6

fix compile check for SENDFILE_6

--- src/Native/Unix/configure.cmake
+++ src/Native/Unix/configure.cmake
@@ -228,6 +228,7 @@

 check_cxx_source_compiles(
     "
+    #include <stdlib.h>
     #include <sys/types.h>
     #include <sys/socket.h>
     #include <sys/uio.h>


Patch Poco to properly check for ODBC development header.

--- CMakeExternals/PatchPoco-1.5.2-rc3.cmake
+++ CMakeExternals/PatchPoco-1.5.2-rc3.cmake
@@ -20,6 +20,33 @@
 # set variable CONTENTS, which is substituted in TEMPLATE_FILE
 set(CONTENTS ${sourceCode})
 configure_file(${CMAKE_CURRENT_LIST_DIR}/EmptyFileForPatching.dummy CMakeLists.txt @ONLY)
+
+# Fix check for ODBC, see https://github.com/pocoproject/poco/issues/285
+file(STRINGS cmake/FindODBC.cmake sourceCode NEWLINE_CONSUME)
+
+# Check if header files exist
+string(REPLACE
+
+"exec_program(\${UNIX_ODBC_CONFIG} ARGS \"--include-prefix\" OUTPUT_VARIABLE ODBC_INCLUDE_DIR)
+\tinclude_directories(\${ODBC_INCLUDE_DIR})
+\texec_program(\${UNIX_ODBC_CONFIG} ARGS \"--libs\" OUTPUT_VARIABLE ODBC_LINK_FLAGS)
+\tadd_definitions(-DPOCO_UNIXODBC)"
+
+"exec_program(\${UNIX_ODBC_CONFIG} ARGS \"--include-prefix\" OUTPUT_VARIABLE ODBC_INCLUDE_DIR)
+\tif(EXISTS \"\${ODBC_INCLUDE_DIR}/sqlext.h\")
+\t\tinclude_directories(\${ODBC_INCLUDE_DIR})
+\t\texec_program(\${UNIX_ODBC_CONFIG} ARGS \"--libs\" OUTPUT_VARIABLE ODBC_LINK_FLAGS)
+\t\tadd_definitions(-DPOCO_UNIXODBC)
+\telse()
+\t\tset(UNIX_ODBC_CONFIG \"UNIX_ODBC_CONFIG-NOTFOUND\")
+\tendif()"
+
+  sourceCode ${sourceCode})
+
+# set variable CONTENTS, which is substituted in TEMPLATE_FILE
+set(CONTENTS ${sourceCode})
+configure_file(${CMAKE_CURRENT_LIST_DIR}/EmptyFileForPatching.dummy cmake/FindODBC.cmake @ONLY)
+

 # For the next fixes, see https://github.com/pocoproject/poco/issues/274


Fix check on old assuan.h file

Fix check on old assuan.h file

svn path=/branches/work/kdab-post-4.0/kdepim/; revision=711116

--- kleopatra/ConfigureChecks.cmake
+++ kleopatra/ConfigureChecks.cmake
@@ -18,6 +18,21 @@
   endif( WIN32 AND ASSUAN_VANILLA_FOUND )

 endif( ASSUAN_FOUND )
+
+if ( USABLE_ASSUAN_FOUND )
+  # check if we don't have old assuan file which contains HAVE_W32_SYSTEM
+  # which is not define in .h file (old assuan.h)
+  check_cxx_source_compiles( "
+       #include <assuan.h>
+       int main() {
+           return 1;
+       }
+       "
+       HAVE_NEW_ASSUAN_FILE )
+   if( NOT HAVE_NEW_ASSUAN_FILE )
+     set(USABLE_ASSUAN_FOUND false)
+   endif( NOT HAVE_NEW_ASSUAN_FILE)
+endif( USABLE_ASSUAN_FOUND )

 if ( USABLE_ASSUAN_FOUND )


Update to Paraview 4.4

Update to Paraview 4.4

--- Superbuild/versions.cmake
+++ Superbuild/versions.cmake
@@ -36,10 +36,10 @@
   GIT_REPOSITORY git://github.com/commontk/PythonQt.git
   GIT_TAG patched-3)

-set(PARAVIEW_VERSION 4.3)
+set(PARAVIEW_VERSION 4.4)
 add_revision(paraview
-  GIT_REPOSITORY git://github.com/gcasey/ParaView.git
-  GIT_TAG origin/veloview)
+  GIT_REPOSITORY git@gitlab.kitware.com:bjacquet/paraview.git
+  GIT_TAG c4f38ffe17d2f95f4a634a7ad6ffbcf996ebb54f)

 add_revision(veloview
     SOURCE_DIR ${CMAKE_SOURCE_DIR}/..


* Added an if check for WINDOWS because steamworks names the library differently among the platforms. FindSTEAMWORKS should *now* work in Windows. Maybe.

--- cmake/Modules/FindSTEAMWORKS.cmake
+++ cmake/Modules/FindSTEAMWORKS.cmake
@@ -27,10 +27,17 @@
 		DOC "Include path for Steamworks"
 	)

-	FIND_LIBRARY(STEAMWORKS_LIBRARY NAMES steam_api
-		PATHS ${LIB_SEARCH_PATHS}
-		DOC "Steamworks library name"
-	)
+	if (Windows)
+		FIND_LIBRARY(STEAMWORKS_LIBRARY NAMES steam_api64
+			PATHS ${LIB_SEARCH_PATHS}
+			DOC "Steamworks library name"
+		)
+	else ()
+		FIND_LIBRARY(STEAMWORKS_LIBRARY NAMES steam_api
+			PATHS ${LIB_SEARCH_PATHS}
+			DOC "Steamworks library name"
+		)
+	endif ()
 	if (STEAMWORKS_LIBRARY)
 		set(STEAMWORKS_LIBRARIES ${STEAMWORKS_LIBRARY})
 	endif ()


DEL: removes the uneeded distro-based definitions

--- CMakeLists.unix.cmake
+++ CMakeLists.unix.cmake
@@ -12,17 +12,6 @@
 		set(CPP_LIBRARY_DIR "lib")
 	endif (CMAKE_SIZEOF_VOID_P EQUAL 8)

-	if(EXISTS "/etc/redhat-release")
-			add_definitions(-D__RH_DISTRO__)
-	endif(EXISTS "/etc/redhat-release")
-
-	if(EXISTS "/etc/debian_version")
-			add_definitions(-D__DEBIAN_DISTRO__)
-	endif(EXISTS "/etc/debian_version")
-
-	if(EXISTS "/etc/ubuntu-release")
-			add_definitions(-D__UBUNTU_DISTRO__)
-	endif(EXISTS "/etc/ubuntu-release")
 else (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
 	message(STATUS "Compiling for " ${CMAKE_SYSTEM_NAME} "")
 	set(CPP_LIBRARY_DIR "lib")


avoid use CMAKE_MODULE_PATH

avoid use CMAKE_MODULE_PATH

--- facts/facts.cmake
+++ facts/facts.cmake
@@ -2,9 +2,18 @@
 cmake_policy(SET CMP0011 NEW)
 cmake_policy(SET CMP0045 OLD)

+IF(NOT DEFINED ARTIFACTS_PATH)
+	set(ARTIFACTS_PATH ${CMAKE_CURRENT_SOURCE_DIR})
+ENDIF()
+
+IF(NOT DEFINED CMAKI_PATH)
+	set(CMAKI_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../cmaki)
+ENDIF()
+
 IF(NOT DEFINED CMAKE_PREFIX_PATH)
-	set(CMAKE_PREFIX_PATH ${CMAKE_MODULE_PATH}/../depends/cmakefiles)
+	set(CMAKE_PREFIX_PATH ${CMAKI_PATH}/../depends/cmakefiles)
 ENDIF()
+
 set(CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/bin)
 set(PACKAGE_BASE_URL "http://localhost/artifacts")

@@ -42,7 +51,7 @@
 ELSE()
 	execute_process(
 		COMMAND sh detect_operative_system.sh
-		WORKING_DIRECTORY "${CMAKE_MODULE_PATH}/ci"
+		WORKING_DIRECTORY "${CMAKI_PATH}/ci"
 		OUTPUT_VARIABLE RESULT_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
 	set(CMAKI_PLATFORM "${RESULT_VERSION}")
 ENDIF()
@@ -58,8 +67,8 @@
 	# llamar a check_remote_version
 	# dando el nombre recibo la version
 	execute_process(
-		COMMAND python ${CMAKE_MODULE_PATH}/check_remote_version.py --server=${PACKAGE_BASE_URL} --artifacts=${CMAKE_PREFIX_PATH} --platform=${CMAKI_PLATFORM} --name=${PACKAGE}
-		WORKING_DIRECTORY "${CMAKE_MODULE_PATH}"
+		COMMAND python ${ARTIFACTS_PATH}/check_remote_version.py --server=${PACKAGE_BASE_URL} --artifacts=${CMAKE_PREFIX_PATH} --platform=${CMAKI_PLATFORM} --name=${PACKAGE}
+		WORKING_DIRECTORY "${ARTIFACTS_PATH}"
 		OUTPUT_VARIABLE RESULT_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
 	#MESSAGE("RESULT_VERSION1 = ${RESULT_VERSION}")
 	list(GET RESULT_VERSION 0 PACKAGE_MODE)
@@ -90,8 +99,8 @@
 			# generar artefactos de una version determinada

 			execute_process(
-				COMMAND python ${CMAKE_MODULE_PATH}/build.py ${PACKAGE} --depends=${CMAKE_MODULE_PATH}/../depends.yml --cmakefiles=${CMAKE_MODULE_PATH} --prefix=${CMAKE_PREFIX_PATH} --third-party-dir=${CMAKE_PREFIX_PATH}
-				WORKING_DIRECTORY "${CMAKE_MODULE_PATH}"
+				COMMAND python ${ARTIFACTS_PATH}/build.py ${PACKAGE} --depends=${CMAKI_PATH}/../depends.yml --cmakefiles=${CMAKI_PATH} --prefix=${CMAKE_PREFIX_PATH} --third-party-dir=${CMAKE_PREFIX_PATH} -o -d
+				WORKING_DIRECTORY "${ARTIFACTS_PATH}"
 				RESULT_VARIABLE artifacts_result
 				)
 			if(artifacts_result)
@@ -102,8 +111,8 @@
 			# llamar a check_remote_version
 			# dando el nombre recibo la version
 			execute_process(
-				COMMAND python ${CMAKE_MODULE_PATH}/check_remote_version.py --server=${PACKAGE_BASE_URL} --artifacts=${CMAKE_PREFIX_PATH} --platform=${CMAKI_PLATFORM} --name=${PACKAGE}
-				WORKING_DIRECTORY "${CMAKE_MODULE_PATH}"
+				COMMAND python ${ARTIFACTS_PATH}/check_remote_version.py --server=${PACKAGE_BASE_URL} --artifacts=${CMAKE_PREFIX_PATH} --platform=${CMAKI_PLATFORM} --name=${PACKAGE}
+				WORKING_DIRECTORY "${ARTIFACTS_PATH}"
 				OUTPUT_VARIABLE RESULT_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
 			#MESSAGE("RESULT_VERSION2 = ${RESULT_VERSION}")
 			list(GET RESULT_VERSION 0 PACKAGE_MODE)
@@ -117,16 +126,16 @@
 			set(package_generated_file ${CMAKE_PREFIX_PATH}/${package_filename})
 			set(package_cmake_generated_file ${CMAKE_PREFIX_PATH}/${package_cmake_filename})
 			execute_process(
-				COMMAND python ${CMAKE_MODULE_PATH}/upload_package.py --url=${PACKAGE_BASE_URL}/upload.php --filename=${package_generated_file}
-				WORKING_DIRECTORY "${CMAKE_MODULE_PATH}"
+				COMMAND python ${ARTIFACTS_PATH}/upload_package.py --url=${PACKAGE_BASE_URL}/upload.php --filename=${package_generated_file}
+				WORKING_DIRECTORY "${ARTIFACTS_PATH}"
 				RESULT_VARIABLE upload_result1
 				)
 			if(upload_result1)
 				message(FATAL_ERROR "error in upload ${package_generated_file})")
 			endif()
 			execute_process(
-				COMMAND python ${CMAKE_MODULE_PATH}/upload_package.py --url=${PACKAGE_BASE_URL}/upload.php --filename=${package_cmake_generated_file}
-				WORKING_DIRECTORY "${CMAKE_MODULE_PATH}"
+				COMMAND python ${ARTIFACTS_PATH}/upload_package.py --url=${PACKAGE_BASE_URL}/upload.php --filename=${package_cmake_generated_file}
+				WORKING_DIRECTORY "${ARTIFACTS_PATH}"
 				RESULT_VARIABLE upload_result2
 				)
 			if(upload_result2)
@@ -185,8 +194,8 @@
 	# llamar a check_remote_version
 	# dando el nombre recibo la version
 	execute_process(
-		COMMAND python ${CMAKE_MODULE_PATH}/check_remote_version.py --artifacts=${CMAKE_PREFIX_PATH} --platform=${CMAKI_PLATFORM} --name=${PACKAGE_FIND_NAME} --version=${PACKAGE_FIND_VERSION}
-		WORKING_DIRECTORY "${CMAKE_MODULE_PATH}"
+		COMMAND python ${ARTIFACTS_PATH}/check_remote_version.py --artifacts=${CMAKE_PREFIX_PATH} --platform=${CMAKI_PLATFORM} --name=${PACKAGE_FIND_NAME} --version=${PACKAGE_FIND_VERSION}
+		WORKING_DIRECTORY "${ARTIFACTS_PATH}"
 		OUTPUT_VARIABLE RESULT_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
 	list(GET RESULT_VERSION 0 RESULT)
 	list(GET RESULT_VERSION 1 NAME)
@@ -253,7 +262,7 @@
 	# URL implicita
 	# strip implicito

-	set(depends_dir "${CMAKE_MODULE_PATH}/../depends")
+	set(depends_dir "${CMAKI_PATH}/../depends")
 	get_filename_component(depends_dir "${depends_dir}" ABSOLUTE)
 	set(package_compessed "${depends_dir}/${package_name}.tar.gz")
 	set(package_uncompressed_dir "${depends_dir}/${package_name}.tmp")


Add test data to MITK-Data. Set tag to the new hash value.

--- CMakeExternals/MITKData.cmake
+++ CMakeExternals/MITKData.cmake
@@ -13,7 +13,7 @@

 if(BUILD_TESTING)

-  set(revision_tag b96a5c62) # first 8 characters of hash-tag
+  set(revision_tag b6cf7fd6) # first 8 characters of hash-tag
 #                  ^^^^^^^^  these are just to check correct length of hash part

   ExternalProject_Add(${proj}


Update forge tag for af3.2.0

Update forge tag for af3.2.0

--- CMakeModules/build_forge.cmake
+++ CMakeModules/build_forge.cmake
@@ -22,7 +22,7 @@
 ExternalProject_Add(
     forge-ext
     GIT_REPOSITORY https://github.com/arrayfire/forge.git
-    GIT_TAG 823b00b38b7f10dbe7b6469ae60ebf9c11391fde
+    GIT_TAG af3.2.0
     PREFIX "${prefix}"
     INSTALL_DIR "${prefix}"
     UPDATE_COMMAND ""


Improved arch/platform dtection.

Improved arch/platform dtection.

--- run_ctest.cmake
+++ run_ctest.cmake
@@ -14,21 +14,23 @@

 # Compiler
 if(UNIX)
-    exec_program(uname ARGS -m OUTPUT_VARIABLE CC_ARCH)
     if(DEFINED ENV{CC})
         find_program(CC_FOUND NAMES $ENV{CC})
         if(NOT CC_FOUND)
-            message( FATAL_ERROR "Compiler $ENV{CC} not found." )
+            message( FATAL_ERROR "Compiler $ENV{CC} not found.")
         endif()
         get_filename_component(CC $ENV{CC} NAME)
         if(CC STREQUAL "icc")
             set(CC_NAME "icc")
             exec_program($ENV{CC} ARGS -dumpversion OUTPUT_VARIABLE CC_VERSION)
             exec_program($ENV{CC} ARGS -dumpmachine OUTPUT_VARIABLE CC_ARCH)
+            set(CC_PLATFORM "${CC_ARCH}")
         elseif(CC STREQUAL "tcc")
             set(CC_NAME "tcc")
             exec_program($ENV{CC} ARGS -v OUTPUT_VARIABLE CC_VERSION_VERBOSE)
             string(REGEX REPLACE ".*tcc version ([0-9]+\\.[0-9]+).*" "\\1" CC_VERSION ${CC_VERSION_VERBOSE})
+            set(CC_ARCH "${CC_VERSION_VERBOSE}")
+            set(CC_PLATFORM "${CC_VERSION_VERBOSE}")
         elseif(CC STREQUAL "x86_64-w64-mingw32-gcc" OR CC STREQUAL "i686-w64-mingw32-gcc" OR CC STREQUAL "x86_64-w64-mingw32.static-gcc" OR CC STREQUAL "i686-w64-mingw32.static-gcc")
             set(CC_NAME "mingw")
             exec_program($ENV{CC} ARGS -dumpversion OUTPUT_VARIABLE CC_VERSION)
@@ -40,11 +42,13 @@
             exec_program($ENV{CC} ARGS -dumpmachine OUTPUT_VARIABLE CC_ARCH)
             #Warmup wine or test timings are going to be wrong
             exec_program(wine ARGS version OUTPUT_VARIABLE WINE_VERSION)
+            set(CC_PLATFORM "${CC_ARCH}")
         elseif(CC STREQUAL "emcc")
             set(CC_NAME "emscripten")
-            set(CC_ARCH "asmjs")
             exec_program($ENV{CC} ARGS --version OUTPUT_VARIABLE CC_VERSION_VERBOSE)
             string(REGEX REPLACE ".*gcc\\/clang\\-like replacement\\) ([0-9]+\\.[0-9]+).*" "\\1" CC_VERSION ${CC_VERSION_VERBOSE})
+            set(CC_ARCH "asmjs")
+            set(CC_PLATFORM "web")
         else()
             string(SUBSTRING "$ENV{CC}" 0 3 CC)
             if(CC STREQUAL "gcc")
@@ -56,6 +60,7 @@
                     string(SUBSTRING "${CC_VERSION}" 0 3 CC_VERSION)
                 endif()
                 exec_program($ENV{CC} ARGS -dumpmachine OUTPUT_VARIABLE CC_ARCH)
+                set(CC_PLATFORM "${CC_ARCH}")
             endif()
             string(SUBSTRING "$ENV{CC}" 0 5 CC)
             if(CC STREQUAL "clang")
@@ -69,6 +74,7 @@
                     string(REGEX REPLACE ".*clang version ([0-9]+\\.[0-9]+).*" "\\1" CC_VERSION ${CC_VERSION_VERBOSE})
                 endif()
                 exec_program($ENV{CC} ARGS -dumpmachine OUTPUT_VARIABLE CC_ARCH)
+                set(CC_PLATFORM "${CC_ARCH}")
             endif()
         endif()
     else()
@@ -76,19 +82,47 @@
         exec_program(${CC_NAME} ARGS -dumpversion OUTPUT_VARIABLE CC_VERSION)
         string(SUBSTRING "${CC_VERSION}" 0 3 CC_VERSION)
         exec_program($ENV{CC_NAME} ARGS -dumpmachine OUTPUT_VARIABLE CC_ARCH)
+        set(CC_PLATFORM "${CC_ARCH}")
     endif()
     string(FIND "${CC_ARCH}" "x86_64" CC_ARCH_X86_64)
     string(FIND "${CC_ARCH}" "amd64" CC_ARCH_AMD64)
+    string(FIND "${CC_ARCH}" "i786" CC_ARCH_I786)
+    string(FIND "${CC_ARCH}" "i686" CC_ARCH_I686)
     string(FIND "${CC_ARCH}" "i586" CC_ARCH_I586)
-    string(FIND "${CC_ARCH}" "i686" CC_ARCH_I686)
-    string(FIND "${CC_ARCH}" "i786" CC_ARCH_I786)
+    string(FIND "${CC_ARCH}" "i486" CC_ARCH_I486)
+    string(FIND "${CC_ARCH}" "i386" CC_ARCH_I386)
+    string(FIND "${CC_ARCH}" "aarch64" CC_ARCH_AARCH64)
+    string(FIND "${CC_ARCH}" "arm" CC_ARCH_ARM)
     if(CC_ARCH_X86_64 GREATER_EQUAL 0 OR CC_ARCH_AMD64 GREATER_EQUAL 0)
         set(CC_ARCH "x86_64")
-    elseif(CC_ARCH_I586 GREATER_EQUAL 0 OR CC_ARCH_I686 GREATER_EQUAL 0 OR CC_ARCH_I786 GREATER_EQUAL 0)
+    elseif(CC_ARCH_I786 GREATER_EQUAL 0 OR CC_ARCH_I686 GREATER_EQUAL 0 OR CC_ARCH_I586 GREATER_EQUAL 0 OR CC_ARCH_I486 GREATER_EQUAL 0 OR CC_ARCH_I386 GREATER_EQUAL 0)
         set(CC_ARCH "x86")
+    elseif(CC_ARCH_AARCH64 GREATER_EQUAL 0)
+        set(CC_ARCH "arm64")
+    elseif(CC_ARCH_ARM GREATER_EQUAL 0)
+        set(CC_ARCH "arm")
+    endif()
+    string(FIND "${CC_PLATFORM}" "linux" CC_PLATFORM_LINUX)
+    if(CC_PLATFORM_LINUX GREATER_EQUAL 0)
+        set(CC_ARCH "linux")
+    endif()
+    string(FIND "${CC_PLATFORM}" "darwin" CC_PLATFORM_DARWIN)
+    if(CC_PLATFORM_DARWIN GREATER_EQUAL 0)
+        set(CC_ARCH "macos")
+    endif()
+    string(FIND "${CC_PLATFORM}" "Win64" CC_PLATFORM_WIN64)
+    string(FIND "${CC_PLATFORM}" "Win32" CC_PLATFORM_WIN32)
+    string(FIND "${CC_PLATFORM}" "mingw" CC_PLATFORM_MINGW)
+    if(CC_PLATFORM_WIN64 GREATER_EQUAL 0 OR CC_PLATFORM_WIN32 GREATER_EQUAL 0 OR CC_PLATFORM_MINGW GREATER_EQUAL 0)
+        set(CC_ARCH "windows")
+    endif()
+    string(FIND "${CC_PLATFORM}" "android" CC_PLATFORM_ANDROID)
+    if(CC_PLATFORM_ANDROID GREATER_EQUAL 0)
+        set(CC_ARCH "android")
     endif()
 else()
     set(CC_NAME "msvc")
+    set(CC_PLATFORM "windows")
     exec_program(cl OUTPUT_VARIABLE CC_VERSION_VERBOSE)
     string(FIND "${CC_VERSION_VERBOSE}" "19.10" CC_VERSION_2017)
     if(CC_VERSION_2017 GREATER_EQUAL 0)
@@ -119,7 +153,15 @@
         set(CC_ARCH "arm")
     endif()
 endif()
-set(CI_BUILD_NAME "${CC_NAME}-${CC_VERSION}-${CC_ARCH}")
+string(LENGTH "${CC_PLATFORM}" ${CC_PLATFORM_LENGTH})
+if(CC_PLATFORM_LENGTH GREATER 7)
+    message( FATAL_ERROR "Platform ${CC_PLATFORM} not supported.")
+endif()
+string(LENGTH "${CC_ARCH}" ${CC_ARCH_LENGTH})
+if(CC_ARCH_LENGTH GREATER 6)
+    message( FATAL_ERROR "Architecture ${CC_ARCH} not supported.")
+endif()
+set(CI_BUILD_NAME "${CC_NAME}-${CC_VERSION}-${CC_PLATFORM}-${CC_ARCH}")

 # CI service
 if(DEFINED ENV{APPVEYOR})


PKG: avoid complete qt install lib dir

PKG: avoid complete qt install lib dir

--- SuperBuild/Packaging/PackageHelper.cmake
+++ SuperBuild/Packaging/PackageHelper.cmake
@@ -209,7 +209,7 @@
     file(GLOB QT_EXTRA_DLL_FILES "${DEPENDENCIES_INSTALL_DIR}/qt/bin/*.dll")
     install(FILES ${QT_EXTRA_DLL_FILES} DESTINATION ${PKG_STAGE_DIR}/bin)

-    list(APPEND QT_REQ_DIRS lib)
+    #list(APPEND QT_REQ_DIRS lib)
     list(APPEND QT_REQ_DIRS include)
     list(APPEND QT_REQ_DIRS imports)


Make RunRemoteTest.cmake work (for a little while, at least) with Zorba core  from bazaar. No core changes will be submitted; this is a stop-gap for  supporting non-core module development.  Approved: Sorin Marian Nasoi

--- test/remote/RunRemoteTest.cmake
+++ test/remote/RunRemoteTest.cmake
@@ -60,14 +60,12 @@
   OUTPUT_VARIABLE datetime)
 string (REPLACE ":" "-" datetime "${datetime}")

-# Package up local changes for Zorba
+# Configure working directory for building submission
 set (workdir "${CMAKE_ZORBA_BUILD_DIR}/remotequeue/changes-${datetime}")
-svn_package ("${srcdir}" "${workdir}" "${changelist}" "${workdir}/zorba.tgz")

-# Save the local "svn info" so the remote queue easily knows what branch
-# we're working in
-execute_process (COMMAND "${svn}" info --xml
-  WORKING_DIRECTORY "${srcdir}" OUTPUT_FILE "${workdir}/zorba-info.xml")
+# Create a fake zorba-info.xml that points to the old SF zorba trunk
+file (WRITE "${workdir}/zorba-info.xml"
+  "<info><entry><url>http://zorba.svn.sourceforge.net/svnroot/zorba/trunk/zorba</url></entry></info>")

 # Extract ZORBA_MODULE_DIR. This seems like a kludgy approach, but
 # unfortunately load_cache() can't be called in CMake scripts.


[ament_cmake_cppcheck] Fix file exclusion behavior (#329)

The `EXCLUDE` argument of the `ament_cppcheck` CMake function is
a list, i.e. a multi-value keyword. As such, it needs to be placed
out of the one-value keywords from the `cmake_parse_arguments`
function call.

Signed-off-by: Abrar Rahman Protyasha <6764efe3f81be0ed6408c793ffae84bd7fbe557a@u.rochester.edu>

--- ament_cmake_cppcheck/cmake/ament_cppcheck.cmake
+++ ament_cmake_cppcheck/cmake/ament_cppcheck.cmake
@@ -35,7 +35,7 @@
 # @public
 #
 function(ament_cppcheck)
-  cmake_parse_arguments(ARG "" "EXCLUDE;LANGUAGE;TESTNAME" "LIBRARIES;INCLUDE_DIRS" ${ARGN})
+  cmake_parse_arguments(ARG "" "LANGUAGE;TESTNAME" "EXCLUDE;LIBRARIES;INCLUDE_DIRS" ${ARGN})
   if(NOT ARG_TESTNAME)
     set(ARG_TESTNAME "cppcheck")
   endif()


Fix windows build on travis.

Fix windows build on travis.

--- run_ctest.cmake
+++ run_ctest.cmake
@@ -181,6 +181,7 @@
     set(CTEST_SITE "Shippable CI")
 elseif(DEFINED ENV{TRAVIS})
     set(CTEST_SITE "Travis CI")
+    set(CTEST_SOURCE_DIRECTORY "$ENV{TRAVIS_BUILD_DIR}")
 elseif(DEFINED ENV{WERCKER_ROOT})
     set(CTEST_SITE "Wercker CI")
 elseif(DEFINED ENV{GIT_COMMIT} AND DEFINED ENV{BUILD_NUMBER} AND DEFINED ENV{WORKSPACE})
@@ -197,7 +198,9 @@
 string(UUID CI_BUILD_UUID NAMESPACE cd1ae0ac-17b9-4018-85da-921f0d3ae8d8 NAME ${CI_BUILD_UUID_RANDOM} TYPE SHA1)

 if(UNIX)
-    set(CTEST_SOURCE_DIRECTORY "$ENV{PWD}")
+    if(NOT DEFINED ${CTEST_SOURCE_DIRECTORY})
+        set(CTEST_SOURCE_DIRECTORY "$ENV{PWD}")
+    endif()
     set(CTEST_BINARY_DIRECTORY "$ENV{HOME}/build/${CI_BUILD_UUID}")
 else()
     set(CTEST_BINARY_DIRECTORY "$ENV{TMP}\\build\\${CI_BUILD_UUID}")


Add codecov.io support. (4)

Add codecov.io support. (4)

--- run_ctest.cmake
+++ run_ctest.cmake
@@ -296,7 +296,10 @@
     endif()
     ctest_coverage()
     if(UNIX)
-        execute_process(COMMAND curl -s https://codecov.io/bash COMMAND bash)
+        exec_program(curl $ENV{HOME} ARGS -s https://codecov.io/bash OUTPUT_VARIABLE CODECOV)
+        file(WRITE $ENV{HOME}/codecov.io "${CODECOV}")
+        exec_program(chmod $ENV{HOME} ARGS +x codecov.io)
+        exec_program($ENV{HOME}/codecov.io ${CTEST_SOURCE_DIRECTORY} ARGS -X gcov -s ${CTEST_BINARY_DIRECTORY})
     endif()
     ctest_submit(PARTS Start Update Configure Build Test Coverage Upload Submit)
 endif()


Updated version.

Updated version.

--- FindEigen3.cmake
+++ FindEigen3.cmake
@@ -66,16 +66,23 @@
   set(EIGEN3_FOUND ${EIGEN3_VERSION_OK})

 else (EIGEN3_INCLUDE_DIR)
+
+  # search first if an Eigen3Config.cmake is available in the system,
+  # if successful this would set EIGEN3_INCLUDE_DIR and the rest of
+  # the script will work as usual
+  find_package(Eigen3 ${Eigen3_FIND_VERSION} NO_MODULE QUIET)

-  find_path(EIGEN3_INCLUDE_DIR NAMES signature_of_eigen3_matrix_library
-      HINTS
-      ENV EIGEN3_ROOT
-      ENV EIGEN3_ROOT_DIR
-      PATHS
-      ${CMAKE_INSTALL_PREFIX}/include
-      ${KDE4_INCLUDE_DIR}
-      PATH_SUFFIXES eigen3 eigen
-    )
+  if(NOT EIGEN3_INCLUDE_DIR)
+    find_path(EIGEN3_INCLUDE_DIR NAMES signature_of_eigen3_matrix_library
+        HINTS
+        ENV EIGEN3_ROOT
+        ENV EIGEN3_ROOT_DIR
+        PATHS
+        ${CMAKE_INSTALL_PREFIX}/include
+        ${KDE4_INCLUDE_DIR}
+        PATH_SUFFIXES eigen3 eigen
+      )
+  endif(NOT EIGEN3_INCLUDE_DIR)

   if(EIGEN3_INCLUDE_DIR)
     _eigen3_check_version()


Update to CMake module (FindEigen3.cmake).

git-svn-id: 4d207786bcfdcf18f314dcbc6ac3fbe5f8a98c88@211 ac7aa084-b6da-11df-bf42-7fac39f0224f

--- External/CMake/FindEigen3.cmake
+++ External/CMake/FindEigen3.cmake
@@ -63,6 +63,7 @@

   find_path(EIGEN3_INCLUDE_DIR NAMES signature_of_eigen3_matrix_library
       PATHS
+      ${PROJECT_SOURCE_DIR}/External
       ${CMAKE_INSTALL_PREFIX}/include
       ${KDE4_INCLUDE_DIR}
       PATH_SUFFIXES eigen3 eigen


CodeGenerator: Make code generation depend on code generator changes

Change-Id: I6b46f586d882c7d7ac6e32f765a706a82e83d6c8

--- CMake/CodeGenerator.cmake
+++ CMake/CodeGenerator.cmake
@@ -239,13 +239,23 @@
     endforeach()
   else ()

-    add_custom_command(
-      OUTPUT  ${PARAM_INTERNAL_TEMPLATES_DIR}.generated ${GENERATED_SOURCE_FILES} ${GENERATED_HEADER_FILES}
-      COMMAND ${CMAKE_COMMAND} -E touch ${PARAM_INTERNAL_TEMPLATES_DIR}.generated
-      COMMAND ${KurentoModuleCreator_EXECUTABLE} ${COMMAND_LINE}
-      DEPENDS ${MODEL_FILES}
-      WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
-    )
+    if (TARGET kurento-module-creator)
+      add_custom_command(
+        OUTPUT  ${PARAM_INTERNAL_TEMPLATES_DIR}.generated ${GENERATED_SOURCE_FILES} ${GENERATED_HEADER_FILES}
+        COMMAND ${CMAKE_COMMAND} -E touch ${PARAM_INTERNAL_TEMPLATES_DIR}.generated
+        COMMAND ${KurentoModuleCreator_EXECUTABLE} ${COMMAND_LINE}
+        DEPENDS ${MODEL_FILES} kurento-module-creator ${KurentoModuleCreator_EXECUTABLE}
+        WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+      )
+    else()
+      add_custom_command(
+        OUTPUT  ${PARAM_INTERNAL_TEMPLATES_DIR}.generated ${GENERATED_SOURCE_FILES} ${GENERATED_HEADER_FILES}
+        COMMAND ${CMAKE_COMMAND} -E touch ${PARAM_INTERNAL_TEMPLATES_DIR}.generated
+        COMMAND ${KurentoModuleCreator_EXECUTABLE} ${COMMAND_LINE}
+        DEPENDS ${MODEL_FILES}
+        WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+      )
+    endif()
   endif()

   set (${PARAM_SOURCE_FILES_OUTPUT} ${${PARAM_SOURCE_FILES_OUTPUT}} ${GENERATED_SOURCE_FILES} PARENT_SCOPE)


doc: doxygen for admin_mocks (#9095)

doc: doxygen for admin_mocks (#9095)

--- cmake/GoogleCloudCppCommon.cmake
+++ cmake/GoogleCloudCppCommon.cmake
@@ -122,6 +122,7 @@
         "${CMAKE_CURRENT_SOURCE_DIR}/mocks"
         # The Bigtable and Spanner libraries have some public APIs in `admin`.
         "${CMAKE_CURRENT_SOURCE_DIR}/admin"
+        "${CMAKE_CURRENT_SOURCE_DIR}/admin/mocks"
         # The Storage library has some public APIs in `oauth2`.
         "${CMAKE_CURRENT_SOURCE_DIR}/oauth2"
         # Scan the examples, the directory name depends on the library


MinGW dependencies

MinGW dependencies

--- cmake/Qt5Core_HunterPlugin.cmake
+++ cmake/Qt5Core_HunterPlugin.cmake
@@ -55,5 +55,13 @@
   # defined: '_WSAAsyncSelect'
   _qt_cmake_extra_helpers_add_interface(Qt5::Core ws2_32)
 elseif(MINGW)
-  #
+  # defined: '_pcre16_compile2'
+  _qt_cmake_extra_helpers_add_interface_release_debug(
+      Qt5::Core
+      "${_qt_install_prefix}/lib/libqtpcre.a"
+      "${_qt_install_prefix}/lib/libqtpcred.a"
+  )
+
+  # defined: '_WSAAsyncSelect'
+  _qt_cmake_extra_helpers_add_interface(Qt5::Core ws2_32)
 endif()


cmake remove rsync dep

cmake remove rsync dep

--- cmake/nuttx/px4_impl_nuttx.cmake
+++ cmake/nuttx/px4_impl_nuttx.cmake
@@ -213,7 +213,9 @@
 	# copy
 	add_custom_command(OUTPUT nuttx_copy_${CONFIG}.stamp
 		COMMAND ${MKDIR} -p ${CMAKE_BINARY_DIR}/${CONFIG}
-		COMMAND rsync -a --exclude=.git ${CMAKE_SOURCE_DIR}/NuttX/ ${nuttx_src}/
+		COMMAND ${RM} -rf ${nuttx_src}
+		COMMAND ${CP} -r ${CMAKE_SOURCE_DIR}/NuttX ${nuttx_src}
+		COMMAND ${RM} -rf ${nuttx_src}/.git
 		COMMAND ${TOUCH} nuttx_copy_${CONFIG}.stamp
 		DEPENDS ${DEPENDS})
 	add_custom_target(__nuttx_copy_${CONFIG}


[t:5006] change what we search for so VALGRIND_PREFIX makes more sense

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

--- cmake_modules/FindValgrind.cmake
+++ cmake_modules/FindValgrind.cmake
@@ -10,10 +10,7 @@

 message(STATUS "Valgrind Prefix: ${VALGRIND_PREFIX}")

-find_path(VALGRIND_INCLUDE_DIR valgrind/memcheck.h
-  ${VALGRIND_PREFIX}/include ${VALGRIND_PREFIX}/include/valgrind
-  /usr/local/include /usr/local/include/valgrind
-  /usr/include /usr/include/valgrind)
+find_path(VALGRIND_INCLUDE_DIR include/valgrind/memcheck.h ${VALGRIND_PREFIX} /usr/local /usr)
 find_program(VALGRIND_PROGRAM NAMES valgrind PATH ${VALGRIND_PREFIX}/bin /usr/local/bin /usr/bin)

 find_package_handle_standard_args(VALGRIND DEFAULT_MSG


ManageTranslation: make clean can remove .pot and .gmo

--- Modules/ManageTranslation.cmake
+++ Modules/ManageTranslation.cmake
@@ -116,8 +116,8 @@
 		    IF(_stage STREQUAL "SRCS")
 			FILE(RELATIVE_PATH _relFile ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${_arg})
 			LIST(APPEND _src_list ${_relFile})
-			GET_FILENAME_COMPONENT(_absFile ${_arg} ABSOLUTE)
-			LIST(APPEND _src_list_abs ${_absFile})
+			GET_FILENAME_COMPONENT(_absPoFile ${_arg} ABSOLUTE)
+			LIST(APPEND _src_list_abs ${_absPoFile})
 		    ELSEIF(_stage STREQUAL "LOCALES")
 			LIST(APPEND _localeList ${_arg})
 		    ELSEIF(_stage STREQUAL "XGETTEXT_OPTIONS")
@@ -160,43 +160,43 @@
 		)

 	    ### Generating gmo files
-	    SET(_gmoFile_list "")
-	    SET(_absFileList "")
+	    SET(_gmoFileList "")
+	    SET(_absGmoFileList "")
+	    SET(_absPoFileList "")
 	    GET_FILENAME_COMPONENT(_potBasename ${_potFile} NAME_WE)
 	    GET_FILENAME_COMPONENT(_potDir ${_potFile} PATH)
 	    GET_FILENAME_COMPONENT(_absPotFile ${_potFile} ABSOLUTE)
 	    GET_FILENAME_COMPONENT(_absPotDir ${_absPotFile} PATH)
 	    FOREACH(_locale ${_localeList})
-		SET(_gmoFile ${_absPotDir}/${_locale}.gmo)
-		SET(_absFile ${_absPotDir}/${_locale}.po)
-
-		ADD_CUSTOM_COMMAND(OUTPUT ${_absFile}
+		SET(_absGmoFile ${_absPotDir}/${_locale}.gmo)
+		SET(_absPoFile ${_absPotDir}/${_locale}.po)
+
+		ADD_CUSTOM_COMMAND(OUTPUT ${_absPoFile}
 		    COMMAND ${GETTEXT_MSGMERGE_CMD}
-		    ${MANAGE_TRANSLATION_GETTEXT_MSGMERGE_OPTIONS} ${_absFile} ${_potFile}
+		    ${MANAGE_TRANSLATION_GETTEXT_MSGMERGE_OPTIONS} ${_absPoFile} ${_potFile}
 		    DEPENDS ${_potFile}
 		    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
-		    COMMENT "${GETTEXT_MSGMERGE_CMD} ${MANAGE_TRANSLATION_GETTEXT_MSGMERGE_OPTIONS} ${_absFile} ${_potFile}"
+		    COMMENT "${GETTEXT_MSGMERGE_CMD} ${MANAGE_TRANSLATION_GETTEXT_MSGMERGE_OPTIONS} ${_absPoFile} ${_potFile}"
 		    )

-		ADD_CUSTOM_COMMAND(OUTPUT ${_gmoFile}
-		    COMMAND ${GETTEXT_MSGFMT_CMD} -o ${_gmoFile} ${_absFile}
-		    DEPENDS ${_absFile}
+		ADD_CUSTOM_COMMAND(OUTPUT ${_absGmoFile}
+		    COMMAND ${GETTEXT_MSGFMT_CMD} -o ${_absGmoFile} ${_absPoFile}
+		    DEPENDS ${_absPoFile}
 		    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
-		    COMMENT "${GETTEXT_MSGFMT_CMD} -o ${_gmoFile} ${_absFile}"
+		    COMMENT "${GETTEXT_MSGFMT_CMD} -o ${_absGmoFile} ${_absPoFile}"
 		    )

-		#MESSAGE("_absFile=${_absFile} _absPotDir=${_absPotDir} _lang=${_lang} curr_bin=${CMAKE_CURRENT_BINARY_DIR}")
-		INSTALL(FILES ${_gmoFile} DESTINATION share/locale/${_locale}/LC_MESSAGES RENAME ${_potBasename}.mo)
-		LIST(APPEND _gmoFile_list ${_gmoFile})
-		LIST(APPEND _absFileList ${_absFile})
+		#MESSAGE("_absPoFile=${_absPoFile} _absPotDir=${_absPotDir} _lang=${_lang} curr_bin=${CMAKE_CURRENT_BINARY_DIR}")
+		INSTALL(FILES ${_absGmoFile} DESTINATION share/locale/${_locale}/LC_MESSAGES RENAME ${_potBasename}.mo)
+		LIST(APPEND _absGmoFileList ${_absGmoFile})
+		LIST(APPEND _absPoFileList ${_absPoFile})
 	    ENDFOREACH(_locale ${_localeList})
-	    M_MSG(${M_INFO2} "_gmoFile_list=${_gmoFile_list}")
-	    SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${_potFile}" ${_gmoFile_list})
-
-	    SET(MANAGE_TRANSLATION_GETTEXT_PO_FILES ${_absFileList} CACHE STRING "PO files")
+	    SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${_absGmoFileList};${_potFile}" )
+
+	    SET(MANAGE_TRANSLATION_GETTEXT_PO_FILES ${_absPoFileList} CACHE STRING "PO files")

 	    ADD_CUSTOM_TARGET(gmo_files ${_all}
-		DEPENDS ${_gmoFile_list}
+		DEPENDS ${_absGmoFileList}
 		COMMENT "Generate gmo files for translation"
 		)
 	ENDIF(NOT _gettext_dependency_missing)