mkl config gix

mkl config gix

--- cmake/FindMKL.cmake
+++ cmake/FindMKL.cmake
@@ -49,10 +49,9 @@
 if(DEFINED INTEL_ROOT AND NOT EXISTS "${INTEL_ROOT}")
     message(WARNING "The path INTEL_ROOT: ${INTEL_ROOT} does not exist")
   else()
-    file(GLOB irootL "/*/intel/compilers_and_*")
-    #file(GLOB irootC "/*/intel/parallel*/compilers_and_*")
-    file(GLOB irootW "C:/Program Files (x86)/IntelSWTools/compilers_and_*")
-    find_path(INTEL_ROOT "mkl" PATHS /opt/intel "${irootL}" "${irootL}/linux" "${irootW}" "${irootL}/windows")
+    file(GLOB irootL "/*/intel/compilers_and_*" "/*/intel/parallel*/compilers_and_*")
+    file(GLOB irootW "C:/Program Files (x86)/IntelSWTools/compilers_and_*" "C:/Program Files (x86)/Intel/Composer*")
+    find_path(INTEL_ROOT "mkl" PATHS /opt/intel "${irootL}" "${irootL}/linux" "${irootW}" "${irootW}/windows")
     message(STATUS "Intel root: ${INTEL_ROOT}")
 endif()

@@ -141,7 +140,7 @@
       find_library(MKL_BLACS_LIBRARY NAMES mkl_blacs_openmpi${ARCH_PREFIX} mkl_blacs_intelmpi${ARCH_PREFIX} PATHS ${MKL_ROOT}/lib/${MPL_ARCH})
     endif()
     else(GISMO_WITH_MPI)
-      message(STATUS "MKL Cluster parallelization with MPI is DISABLED (use GISMO_WITH_MPI=ON to enable it)")
+      message(STATUS "MKL cluster parallelization with MPI is DISABLED (use GISMO_WITH_MPI=ON to enable it)")
     endif(GISMO_WITH_MPI)

     # VML: avx512_mic, mc2, mc, acx512, avx, mc3, cmpt, avx2, def
@@ -167,7 +166,7 @@
 if(MKL_FOUND)
     message(STATUS "Found Intel MKL libraries")
     if(Threads_FOUND)
-      set(MKL_LIBRARIES ${MKL_LIBRARY} Threads::Threads)
+      set(MKL_LIBRARIES ${MKL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT})
     else()
       set(MKL_LIBRARIES ${MKL_LIBRARY})
     endif()


Show build type on build.

Show build type on build.

--- cmake/Options.cmake
+++ cmake/Options.cmake
@@ -1,3 +1,10 @@
+
+if( CMAKE_BUILD_TYPE )
+    message(STATUS "Build Type : ${CMAKE_BUILD_TYPE}")
+else()
+    message(STATUS "Build Type : None")
+endif()
+

 macro(_print_option _option _name)
     message(STATUS "${_name} : ${${_option}}")


Fixing build.

Fixing build.

--- cmake/duktape.cmake
+++ cmake/duktape.cmake
@@ -64,7 +64,7 @@
     add_library(duk_console STATIC
         ${CMAKE_SOURCE_DIR}/duktape-2.3.0/extras/console/duk_console.c
         ${CMAKE_SOURCE_DIR}/duktape-2.3.0/extras/console/duk_console.h)
-    target_include_directories(duk_console PRIVATE ${DUKTAPE_INCLUDE_DIR})
+    target_include_directories(duk_console PRIVATE ${DUKTAPE_INCLUDE_DIRS})
     if(UNIX)
         target_compile_options(duk_console PRIVATE -fPIC)
     endif()


test=develop

test=develop

--- cmake/generic.cmake
+++ cmake/generic.cmake
@@ -447,10 +447,10 @@
     set(multiValueArgs SRCS DEPS)
     cmake_parse_arguments(nv_test "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
     cuda_add_executable(${TARGET_NAME} ${nv_test_SRCS})
+    target_link_libraries(${TARGET_NAME} ${nv_test_DEPS} paddle_gtest_main lod_tensor memory gtest gflags glog)
     if(WIN32)
-      list(APPEND nv_test_DEPS shlwapi)
+      target_link_libraries(${TARGET_NAME} shlwapi)
     endif(WIN32)
-    target_link_libraries(${TARGET_NAME} ${nv_test_DEPS} paddle_gtest_main lod_tensor memory gtest gflags glog)
     add_dependencies(${TARGET_NAME} ${nv_test_DEPS} paddle_gtest_main lod_tensor memory gtest gflags glog)
     common_link(${TARGET_NAME})
     add_test(${TARGET_NAME} ${TARGET_NAME})


Add NaN check functions for trapezoidal matrices (Reference-LAPACK PR738+742)

--- cmake/lapacke.cmake
+++ cmake/lapacke.cmake
@@ -2481,6 +2481,8 @@
   lapacke_ctp_nancheck.c          lapacke_dtr_trans.c             lapacke_str_trans.c             lapacke_ztp_trans.c
   lapacke_ctp_trans.c             lapacke_lsame.c                 lapacke_xerbla.c                lapacke_ztr_nancheck.c
   lapacke_ctr_nancheck.c          lapacke_make_complex_double.c   lapacke_z_nancheck.c            lapacke_ztr_trans.c
+  lapacke_ctz_nancheck.c          lapacke_ctz_trans.c             lapacke_dtz_nancheck.c          lapacke_dtz_trans.c
+  lapacke_stz_nancheck.c          lapacke_stz_trans.c             lapacke_ztz_nancheck.c          lapacke_ztz_trans.c
 )

 set(LAPACKE_REL_SRC "")


need to include CheckMicCompilerFlag unconditionally because MIC_NATIVE_FOUND is not tested for at this point

--- cmake/AddCompilerFlag.cmake
+++ cmake/AddCompilerFlag.cmake
@@ -38,10 +38,8 @@
 get_filename_component(_currentDir "${CMAKE_CURRENT_LIST_FILE}" PATH)
 include("${_currentDir}/CheckCCompilerFlag.cmake")
 include("${_currentDir}/CheckCXXCompilerFlag.cmake")
-if(MIC_NATIVE_FOUND)
-   include("${_currentDir}/CheckMicCCompilerFlag.cmake")
-   include("${_currentDir}/CheckMicCXXCompilerFlag.cmake")
-endif()
+include("${_currentDir}/CheckMicCCompilerFlag.cmake")
+include("${_currentDir}/CheckMicCXXCompilerFlag.cmake")

 macro(AddCompilerFlag _flag)
    string(REGEX REPLACE "[-.+/:= ]" "_" _flag_esc "${_flag}")


ConfigureChecks: libutil is now optional. See #163

--- cmake/ConfigureChecks.cmake
+++ cmake/ConfigureChecks.cmake
@@ -358,7 +358,9 @@
   set(HAVE_LIBUTIL 1)
 else()
   find_library(HAVE_LIBUTIL util)
-  set(LIBUTIL_LIBRARIES ${HAVE_LIBUTIL})
+  if(HAVE_LIBUTIL)
+    set(LIBUTIL_LIBRARIES ${HAVE_LIBUTIL})
+  endif()
 endif()

 if(APPLE)


cmake: Suppress the stderr from 'git describe' on successfull runs

A confusing warning has popped up since 3.13. It can be observed as
so:

Zephyr version: 1.13.99
Parsing Kconfig tree in /home/sebo/zephyr/Kconfig
Merging /home/sebo/zephyr/samples/hello_world/prj.conf
warning: tag 'zephyr-v1.13.0' is really 'v1.13.0' here
-- Generating zephyr/include/generated/generated_dts_board.h

This warning is more confusing than useful so we suppress stderr from
'git describe' when the command runs successfully.

Signed-off-by: Sebastian Bøe <edee888afd63e94916688495334700803eba20a0@nordicsemi.no>

--- cmake/app/boilerplate.cmake
+++ cmake/app/boilerplate.cmake
@@ -262,7 +262,15 @@
   execute_process(COMMAND ${GIT_EXECUTABLE} describe
     WORKING_DIRECTORY ${ZEPHYR_BASE}
     OUTPUT_VARIABLE BUILD_VERSION
-    OUTPUT_STRIP_TRAILING_WHITESPACE)
+    OUTPUT_STRIP_TRAILING_WHITESPACE
+    ERROR_VARIABLE stderr
+    RESULT_VARIABLE return_code
+    )
+  if(return_code)
+    message(FATAL_ERROR "${stderr}")
+  elseif(CMAKE_VERBOSE_MAKEFILE)
+    message(STATUS "git describe stderr: ${stderr}")
+  endif()
 endif()

 set(SOC_NAME ${CONFIG_SOC})


Checking Qt version to include declarative layer.

--- cmake/dtkDependencies.cmake
+++ cmake/dtkDependencies.cmake
@@ -4,9 +4,9 @@
 ## Copyright (C) 2008 - Julien Wintz, Inria.
 ## Created: Fri Apr  2 09:11:53 2010 (+0200)
 ## Version: $Id$
-## Last-Updated: Thu Oct 14 20:58:04 2010 (+0200)
+## Last-Updated: Sun Oct 17 18:00:56 2010 (+0200)
 ##           By: Julien Wintz
-##     Update #: 47
+##     Update #: 49
 ######################################################################
 ##
 ### Commentary:
@@ -27,19 +27,16 @@
 set(QT_USE_QTHELP        TRUE)
 set(QT_USE_QTNETWORK     TRUE)
 set(QT_USE_QTWEBKIT      TRUE)
+if(${QT_VERSION_MAJOR} EQUAL 4 AND ${QT_VERSION_MINOR} GREATER 6)
+  set(QT_USE_QTDECLARATIVE TRUE)
+endif(${QT_VERSION_MAJOR} EQUAL 4 AND ${QT_VERSION_MINOR} GREATER 6)

 if(WIN32)
   set(QT_USE_QTMAIN TRUE)
 endif(WIN32)

 find_package(Qt4 4.6.0 REQUIRED)
-
-if(${QT_VERSION_MAJOR} EQUAL 4 AND ${QT_VERSION_MINOR} GREATER 6)
-    set(QT_USE_QTDECLARATIVE TRUE)
-endif(${QT_VERSION_MAJOR} EQUAL 4 AND ${QT_VERSION_MINOR} GREATER 6)
-
 include(${QT_USE_FILE})
-

 mark_as_advanced(QT_QMAKE_EXECUTABLE)
 mark_as_advanced(QT_QTMOTIF_INCLUDE_DIR)


Readded *.def and *.rc source file extensions

--- cmake/internal/config.cmake
+++ cmake/internal/config.cmake
@@ -98,7 +98,7 @@
 SET(CONFIG_BUILD_GLOBAL_TEST_EXECUTABLE    	 0  CACHE BOOL     "enable building of one test executable")

 SET(GLOBAL_HEADER_FILE_EXTENSIONS 	"h;hpp;inc" 	CACHE STRING "file extension of header files.")
-SET(GLOBAL_SOURCE_FILE_EXTENSIONS 	"cpp;c;cxx"		CACHE STRING "file extension of source files.")
+SET(GLOBAL_SOURCE_FILE_EXTENSIONS 	"cpp;c;cxx;def;rc"		CACHE STRING "file extension of source files.")

 SET(GLOBAL_TEST_LIBS                ""  			CACHE INTERNAL "collect test libs")
 SET(GLOBAL_TEST_SOURCE              ""  			CACHE INTERNAL "collect test source")


CMake: Add sources for the doxygen-doc target

--- cmake/modules/Doxygen.cmake
+++ cmake/modules/Doxygen.cmake
@@ -38,7 +38,25 @@
     set(GENERATE_XML     NO)
     set(GENERATE_QHP     ${QHELPGENERATOR_FOUND})
     configure_file(doxygen.cfg.in ${CMAKE_BINARY_DIR}/doxygen.cfg)
-    add_custom_target(doxygen-doc ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/doxygen.cfg)
+    add_custom_target(doxygen-doc
+        ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/doxygen.cfg
+        SOURCES
+            doxygen.cfg.in
+            TelepathyQt/account-capability-filter.dox
+            TelepathyQt/and-filter.dox
+            TelepathyQt/async-model.dox
+            TelepathyQt/callbacks.dox
+            TelepathyQt/examples.dox
+            TelepathyQt/filter.dox
+            TelepathyQt/generic-capability-filter.dox
+            TelepathyQt/generic-property-filter.dox
+            TelepathyQt/groups.dox
+            TelepathyQt/main.dox
+            TelepathyQt/method-invocation-context.dox
+            TelepathyQt/not-filter.dox
+            TelepathyQt/or-filter.dox
+            TelepathyQt/shared-ptr.dox
+    )
 else()
     # Suppress cmake policy CMP0046 warnings.
     # This target is being used as a dependency in other targets,


Fix FindLUG.cmake to correctly failed if we don't find the resources dir

--- cmake/modules/FindLUG.cmake
+++ cmake/modules/FindLUG.cmake
@@ -72,10 +72,6 @@
 endif()

 set(LUG_FOUND TRUE) # will be set to false if one of the required modules is not found
-
-if(NOT LUG_INCLUDE_DIR)
-    set(LUG_FOUND FALSE)
-endif()

 if(LUG_OS_ANDROID)
     # this will append `lug-main` to the components to find if we are on WINDOWS or ANDROID
@@ -180,17 +176,11 @@

 endforeach()

+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(LUG DEFAULT_MSG LUG_INCLUDE_DIR LUG_LIBRARIES LUG_RESOURCES_DIR)
+
 if (LUG_FOUND)
     message(STATUS "Found Lugdunum headers in ${LUG_INCLUDE_DIR}")
     message(STATUS "Found Lugdunum libraries in ${LUG_LIBRARIES}")
     message(STATUS "Found Lugdunum resources in ${LUG_RESOURCES_DIR}")
-else()
-    # include directory or library not found
-    set(FIND_LUG_ERROR "Could NOT find Lugdunum (missing: ${FIND_LUG_MISSING})")
-
-    if(LUG_FIND_REQUIRED)
-        message(FATAL_ERROR ${FIND_LUG_ERROR})
-    else()
-        message("${FIND_LUG_ERROR}")
-    endif()
 endif()


Orion Poplawski summarized the situation as follows:

The point is that the nothing in plplot *itself* requires XML::SAX::Expat,
not that XML::SAX::Expat is needed at all.  You just need the db2x_*
utilities.  Whatever packages provides those need to be concerned about
XML::SAX::Expat, not plplot.

I (AWI) agree with this reasoning so I have removed the build dependence on
XML::SAX::Expat as suggested by Orion.

svn path=/trunk/; revision=7740

--- cmake/modules/docbook.cmake
+++ cmake/modules/docbook.cmake
@@ -56,7 +56,6 @@
 # Check for required programs and perl libraries.
 if(BUILD_DOC)
   if(PERL_FOUND)
-    check_perl_modules(PERL_XML_SAX XML::SAX::Expat)
     check_perl_modules(PERL_XML_PARSER XML::Parser)
     check_perl_modules(PERL_XML_DOM XML::DOM)
   endif(PERL_FOUND)
@@ -99,13 +98,13 @@
   set(BUILD_HTML ON)
   set(BUILD_PRINT ON)

-  if(NOT PERL_FOUND OR NOT PERL_XML_SAX OR NOT DB2X_TEXIXML OR NOT DB2X_XSLTPROC OR NOT MAKEINFO)
+  if(NOT PERL_FOUND OR NOT DB2X_TEXIXML OR NOT DB2X_XSLTPROC OR NOT MAKEINFO)
     set(BUILD_INFO OFF)
     message(STATUS
     "WARNING: Not building info documentation - "
     "required programs are missing"
     )
-  endif(NOT PERL_FOUND OR NOT PERL_XML_SAX OR NOT DB2X_TEXIXML OR NOT DB2X_XSLTPROC OR NOT MAKEINFO)
+  endif(NOT PERL_FOUND OR NOT DB2X_TEXIXML OR NOT DB2X_XSLTPROC OR NOT MAKEINFO)

   if(NOT PERL_FOUND OR NOT PERL_XML_PARSER OR NOT PERL_XML_DOM)
     set(BUILD_MAN OFF)


SVN_SILENT made messages (.desktop file)

--- vlc/vlc.desktop.cmake
+++ vlc/vlc.desktop.cmake
@@ -29,6 +29,7 @@
 Name[sr@ijekavianlatin]=VLC
 Name[sr@latin]=VLC
 Name[sv]=VLC
+Name[ug]=VLC
 Name[uk]=VLC
 Name[x-test]=xxVLCxx
 Name[zh_TW]=VLC


New version: 0.5.0

New version: 0.5.0

--- hawkey/VERSION.cmake
+++ hawkey/VERSION.cmake
@@ -1,3 +1,3 @@
 SET(HAWKEY_MAJOR "0")
-SET(HAWKEY_MINOR "4")
-SET(HAWKEY_PATCH "19")
+SET(HAWKEY_MINOR "5")
+SET(HAWKEY_PATCH "0")


COMP: Only use -fvisibility=hidden with gcc > 4.4

--- CMake/mitkMacroCreateModule.cmake
+++ CMake/mitkMacroCreateModule.cmake
@@ -101,7 +101,14 @@
     SET(module_compile_flags )
     # MinGW does not export all symbols automatically, so no need to set flags
     IF(CMAKE_COMPILER_IS_GNUCXX AND NOT MINGW AND NOT MODULE_GCC_DEFAULT_VISIBILITY)
-      SET(module_compile_flags "${module_compile_flags} -fvisibility=hidden -fvisibility-inlines-hidden")
+      IF(${GCC_VERSION} VERSION_GREATER "4.5.0")
+        # With gcc < 4.5, type_info objects need special care. Especially exceptions
+        # and inline definitions of classes from 3rd party libraries would need
+        # to be wrapped with pragma GCC visibility statements if the library is not
+        # prepared to handle hidden visibility. This would need too many changes in
+        # MITK and would be too fragile.
+        SET(module_compile_flags "${module_compile_flags} -fvisibility=hidden -fvisibility-inlines-hidden")
+      ENDIF()
     ENDIF()

 	  IF(NOT MODULE_QT_MODULE)


Provide adapted cmake config script

Provide adapted cmake config script

--- libzeug-config.cmake
+++ libzeug-config.cmake
@@ -1,175 +1,48 @@

-# LIBZEUG_FOUND
-# LIBZEUG_LIBRARIES
-# LIBZEUG_INCLUDE_DIRS
-# LIBZEUG_BINARIES                  (win32 only)
-# LIBZEUG_BINARY_[RELEASE|DEBUG]    (win32 only)
+# This config script tries to locate the project either in its source tree
+# of from an install location.
+#
+# Please adjust the list of submodules to search for.

-# LIBZEUG_IO_LIBRARIES
-# LIBZEUG_IO_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_IO_INCLUDE_DIR
-# LIBZEUG_IO_BINARIES               (win32 only)
-# LIBZEUG_IO_BINARY_[RELEASE|DEBUG] (win32 only)

-# LIBZEUG_LOGGING_LIBRARIES
-# LIBZEUG_LOGGING_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_LOGGING_INCLUDE_DIR
-# LIBZEUG_LOGGING_BINARIES               (win32 only)
-# LIBZEUG_LOGGING_BINARY_[RELEASE|DEBUG] (win32 only)
+# List of modules
+set(MODULE_NAMES
+    iozeug
+    loggingzeug
+    propertyguizeug
+    reflectionzeug
+    scriptzeug
+    signalzeug
+    stringzeug
+    threadingzeug
+    widgetzeug
+)

-# LIBZEUG_PROPERTYGUI_LIBRARIES
-# LIBZEUG_PROPERTYGUI_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_PROPERTYGUI_INCLUDE_DIR
-# LIBZEUG_PROPERTYGUI_BINARIES               (win32 only)
-# LIBZEUG_PROPERTYGUI_BINARY_[RELEASE|DEBUG] (win32 only)

-# LIBZEUG_REFLECTION_LIBRARIES
-# LIBZEUG_REFLECTION_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_REFLECTION_INCLUDE_DIR
-# LIBZEUG_REFLECTION_BINARIES               (win32 only)
-# LIBZEUG_REFLECTION_BINARY_[RELEASE|DEBUG] (win32 only)
+# Macro to search for a specific module
+macro(find_module FILENAME)
+    if(EXISTS "${FILENAME}")
+        set(MODULE_FOUND TRUE)
+        include("${FILENAME}")
+    endif()
+endmacro()

-# LIBZEUG_SCRIPT_LIBRARIES
-# LIBZEUG_SCRIPT_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_SCRIPT_INCLUDE_DIR
-# LIBZEUG_SCRIPT_BINARIES               (win32 only)
-# LIBZEUG_SCRIPT_BINARY_[RELEASE|DEBUG] (win32 only)
-
-# LIBZEUG_SIGNAL_LIBRARIES
-# LIBZEUG_SIGNAL_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_SIGNAL_INCLUDE_DIR
-# LIBZEUG_SIGNAL_BINARIES               (win32 only)
-# LIBZEUG_SIGNAL_BINARY_[RELEASE|DEBUG] (win32 only)
-
-# LIBZEUG_THREADING_LIBRARIES
-# LIBZEUG_THREADING_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_THREADING_INCLUDE_DIR
-# LIBZEUG_THREADING_BINARIES               (win32 only)
-# LIBZEUG_THREADING_BINARY_[RELEASE|DEBUG] (win32 only)
-
-# LIBZEUG_WIDGET_LIBRARIES
-# LIBZEUG_WIDGET_LIBRARY_[RELEASE|DEBUG]
-# LIBZEUG_WIDGET_INCLUDE_DIR
-# LIBZEUG_WIDGET_BINARIES               (win32 only)
-# LIBZEUG_WIDGET_BINARY_[RELEASE|DEBUG] (win32 only)
-
-macro (find LIB_NAME HEADER)
-    set(HINT_PATHS ${ARGN})
-
-    string(TOUPPER LIBZEUG_${LIB_NAME} LIB_NAME_UPPER)
-    set(LIBNAME ${LIB_NAME}zeug)
-
-    find_path(${LIB_NAME_UPPER}_INCLUDE_DIR ${HEADER}
-        ${ENVLIBZEUG_DIR}/include
-        ${ENVLIBZEUG_DIR}/source/${LIBNAME}/include
-        ${LIBZEUG_DIR}/include
-        ${LIBZEUG_DIR}/source/${LIBNAME}/include
-        ${ENVPROGRAMFILES}/libzeug/include
-        /usr/include
-        /usr/local/include
-        /sw/include
-        /opt/local/include
-        DOC "The directory where ${HEADER} resides")
-
-    find_library(${LIB_NAME_UPPER}_LIBRARY_RELEASE
-        NAMES ${LIBNAME}
-        PATHS ${HINT_PATHS}
-        DOC "The ${LIB_NAME} library")
-    find_library(${LIB_NAME_UPPER}_LIBRARY_DEBUG
-        NAMES ${LIBNAME}d
-        PATHS ${HINT_PATHS}
-        DOC "The ${LIB_NAME} debug library")
-
-    if(${LIB_NAME_UPPER}_LIBRARY_RELEASE AND ${LIB_NAME_UPPER}_LIBRARY_DEBUG)
-        set(${LIB_NAME_UPPER}_LIBRARIES "optimized" ${${LIB_NAME_UPPER}_LIBRARY_RELEASE} "debug" ${${LIB_NAME_UPPER}_LIBRARY_DEBUG})
-    elseif(${LIB_NAME_UPPER}_LIBRARY_RELEASE)
-        set(${LIB_NAME_UPPER}_LIBRARIES ${${LIB_NAME_UPPER}_LIBRARY_RELEASE})
-    elseif(${LIB_NAME_UPPER}_LIBRARY_DEBUG)
-        set(${LIB_NAME_UPPER}_LIBRARIES ${${LIB_NAME_UPPER}_LIBRARY_DEBUG})
-    endif()
-
-    # find binaries
-    if (WIN32 AND ${LIB_NAME_UPPER}_LIBRARIES)
-        set(${LIB_NAME_UPPER}_BINARIES "")
-
-        find_file(${LIB_NAME_UPPER}_BINARY_RELEASE
-            NAMES ${LIBNAME}.dll
-            PATHS
-            ${LIBZEUG_DIR}/bin
-            ${LIBZEUG_DIR}/build/Release
-            ${LIBZEUG_DIR}/build-release
-            DOC "The ${LIB_NAME_UPPER} binary")
-
-        find_file(${LIB_NAME_UPPER}_BINARY_DEBUG
-            NAMES ${LIBNAME}d.dll
-            PATHS
-            ${LIBZEUG_DIR}/bin
-            ${LIBZEUG_DIR}/build/Debug
-            ${LIBZEUG_DIR}/build-debug
-            DOC "The ${LIB_NAME_UPPER} debug binary")
-
-        if(NOT ${LIB_NAME_UPPER}_BINARY_RELEASE STREQUAL "${LIB_NAME_UPPER}_BINARY_RELEASE-NOTFOUND")
-            list(APPEND ${LIB_NAME_UPPER}_BINARIES ${${LIB_NAME_UPPER}_BINARY_RELEASE})
-        endif()
-
-        if(NOT ${LIB_NAME_UPPER}_BINARY_DEBUG STREQUAL "${LIB_NAME_UPPER}_BINARY_DEBUG-NOTFOUND")
-            list(APPEND ${LIB_NAME_UPPER}_BINARIES ${${LIB_NAME_UPPER}_BINARY_DEBUG})
-        endif()
-    endif()
-
-    list(APPEND LIBZEUG_INCLUDE_DIRS ${${LIB_NAME_UPPER}_INCLUDE_DIR})
-    list(APPEND LIBZEUG_LIBRARIES ${${LIB_NAME_UPPER}_LIBRARIES})
-    list(APPEND LIBZEUG_BINARIES ${${LIB_NAME_UPPER}_BINARIES})
-
-    # DEBUG
-    #message("${LIB_NAME_UPPER}_INCLUDE_DIR     = ${${LIB_NAME_UPPER}_INCLUDE_DIR}")
-    #message("${LIB_NAME_UPPER}_LIBRARY_RELEASE = ${${LIB_NAME_UPPER}_LIBRARY_RELEASE}")
-    #message("${LIB_NAME_UPPER}_LIBRARY_DEBUG   = ${${LIB_NAME_UPPER}_LIBRARY_DEBUG}")
-    #message("${LIB_NAME_UPPER}_LIBRARY         = ${${LIB_NAME_UPPER}_LIBRARY}")
-
+# Macro to search for all modules
+macro(find_modules PREFIX)
+    foreach(module_name ${MODULE_NAMES})
+        find_module("${CMAKE_CURRENT_LIST_DIR}/${PREFIX}/${module_name}/${module_name}-export.cmake")
+    endforeach(module_name)
 endmacro()

-if(CMAKE_CURRENT_LIST_FILE)
-    get_filename_component(LIBZEUG_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
+# Try install location
+set(MODULE_FOUND FALSE)
+find_modules("cmake")
+
+if(MODULE_FOUND)
+    return()
 endif()

-file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" ENVPROGRAMFILES)
-file(TO_CMAKE_PATH "$ENV{LIBZEUG_DIR}"  ENVLIBZEUG_DIR)
-
-set(LIB_PATHS
-    ${LIBZEUG_DIR}/build
-    ${LIBZEUG_DIR}/build/Release
-    ${LIBZEUG_DIR}/build/Debug
-    ${LIBZEUG_DIR}/build-release
-    ${LIBZEUG_DIR}/build-debug
-    ${ENVLIBZEUG_DIR}/lib
-    ${LIBZEUG_DIR}/lib
-    ${ENVPROGRAMFILES}/libzeug/lib
-    /usr/lib
-    /usr/local/lib
-    /sw/lib
-    /opt/local/lib
-    /usr/lib64
-    /usr/local/lib64
-    /sw/lib64
-    /opt/local/lib64
-)
-
-find(io          iozeug/iozeug_api.h                   ${LIB_PATHS})
-find(logging     loggingzeug/loggingzeug_api.h         ${LIB_PATHS})
-find(propertygui propertyguizeug/propertyguizeug_api.h ${LIB_PATHS})
-find(reflection  reflectionzeug/reflectionzeug_api.h   ${LIB_PATHS})
-find(script      scriptzeug/scriptzeug_api.h           ${LIB_PATHS})
-find(signal      signalzeug/signalzeug_api.h           ${LIB_PATHS})
-find(string      stringzeug/stringzeug_api.h           ${LIB_PATHS})
-find(threading   threadingzeug/threadingzeug_api.h     ${LIB_PATHS})
-find(widget      widgetzeug/widgetzeug_api.h           ${LIB_PATHS})
-
-# DEBUG
-#message("LIBZEUG_INCLUDE_DIRS  = ${LIBZEUG_INCLUDE_DIRS}")
-#message("LIBZEUG_LIBRARIES = ${LIBZEUG_LIBRARIES}")
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(LIBZEUG DEFAULT_MSG LIBZEUG_LIBRARIES LIBZEUG_INCLUDE_DIRS)
-mark_as_advanced(LIBZEUG_FOUND)
+# Try common build locations
+find_modules("build/cmake")
+find_modules("build-debug/cmake")


--- plasma-runner-ktp-contact.desktop.cmake
+++ plasma-runner-ktp-contact.desktop.cmake
@@ -1,5 +1,6 @@
 [Desktop Entry]
 Name=Instant Messaging
+Name[ast]=Mensaxería nel intre
 Name[bs]=Brze poruke
 Name[ca]=Missatgeria instantània
 Name[ca@valencia]=Missatgeria instantània


--- plasma-runner-ktp-contact.desktop.cmake
+++ plasma-runner-ktp-contact.desktop.cmake
@@ -15,6 +15,7 @@
 Name[sr@ijekavianlatin]=Brzo glasništvo
 Name[sr@latin]=Brzo glasništvo
 Name[sv]=Direktmeddelandekontakter
+Name[ug]=مۇڭداشقۇ
 Name[uk]=Миттєвий обмін повідомленнями
 Name[x-test]=xxInstant Messagingxx
 Comment=Start a chat with any of your IM contacts or change your IM status


with ternary instructions it is fine if the source registers are swapped

--- tests/abi.cmake
+++ tests/abi.cmake
@@ -7,13 +7,13 @@
    OUTPUT_VARIABLE asm)
 string(STRIP "${asm}" asm)
 if("${IMPL}" STREQUAL SSE)
-   set(reference "^(addps %xmm1,%xmm0 retq|vaddps %xmm1,%xmm0,%xmm0 retq)$")
+   set(reference "^(addps %xmm1,%xmm0 retq|vaddps %xmm(0,%xmm1|1,%xmm0),%xmm0 retq)$")
 elseif("${IMPL}" STREQUAL AVX)
-   set(reference "^vaddps %ymm1,%ymm0,%ymm0 retq$")
+   set(reference "^vaddps %ymm(0,%ymm1|1,%ymm0),%ymm0 retq$")
 elseif("${IMPL}" STREQUAL AVX2)
-   set(reference "^vaddps %ymm1,%ymm0,%ymm0 retq$")
+   set(reference "^vaddps %ymm(0,%ymm1|1,%ymm0),%ymm0 retq$")
 elseif("${IMPL}" STREQUAL MIC)
-   set(reference "^vaddps %zmm1,%zmm0,%zmm0 retq$")
+   set(reference "^vaddps %zmm(0,%zmm1|1,%zmm0),%zmm0 retq$")
 endif()

 if("${asm}" MATCHES "${reference}")


Fixed indentation

Fixed indentation

--- config.h.cmake
+++ config.h.cmake
@@ -24,11 +24,13 @@

 #define GTK_THEME_DIR "@GTK_THEME_DIR@/gtk-2.0"
 #ifndef OXYGEN_DEBUG
-#   define OXYGEN_DEBUG @OXYGEN_DEBUG@
+#define OXYGEN_DEBUG @OXYGEN_DEBUG@
 #endif
+
 #ifndef OXYGEN_DEBUG_INNERSHADOWS
-#   define OXYGEN_DEBUG_INNERSHADOWS @OXYGEN_DEBUG_INNERSHADOWS@
+#define OXYGEN_DEBUG_INNERSHADOWS @OXYGEN_DEBUG_INNERSHADOWS@
 #endif
+
 #define OXYGEN_ICON_HACK @OXYGEN_ICON_HACK@
 #define OXYGEN_FORCE_KDE_ICONS_AND_FONTS @OXYGEN_FORCE_KDE_ICONS_AND_FONTS@
 #define HAVE_DBUS @HAVE_DBUS@


removed not more needed file

removed not more needed file

--- src/libhttppp.cmake
+++ src/libhttppp.cmake
@@ -1,3 +0,0 @@
- get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
- include(${SELF_DIR}/httppp-targets.cmake)
- get_filename_component(httppp_INCLUDE_DIRS "${SELF_DIR}/../../../include/libhttppp" ABSOLUTE)


ANGLE: revert to last working commit

ANGLE: revert to last working commit

--- packages/angle.cmake
+++ packages/angle.cmake
@@ -7,6 +7,7 @@
 ExternalProject_Add(angle
     DEPENDS gcc
     GIT_REPOSITORY https://chromium.googlesource.com/angle/angle
+    GIT_TAG 1a1ae0f85eb60bc287768d0e5a7e95c9514a787a
     UPDATE_COMMAND ""
     PATCH_COMMAND ${EXEC} git am ${CMAKE_CURRENT_SOURCE_DIR}/angle-*.patch
     CONFIGURE_COMMAND ${CMAKE_COMMAND} -E remove_directory <SOURCE_DIR>/generated


Allow location of OSMesa install to be specified

Allow the location of an OSMesa install to be specified and
search there first for includes and library. The location
can be specified by setting OSMESA_ROOT.

Change-Id: I0afe52b9f81a70a990d36d6895a3ce50720706a9

--- CMake/FindOSMesa.cmake
+++ CMake/FindOSMesa.cmake
@@ -7,19 +7,38 @@

 if(NOT OSMESA_INCLUDE_DIR)
-  find_path(OSMESA_INCLUDE_DIR GL/osmesa.h
-    /usr/openwin/share/include
-    /opt/graphics/OpenGL/include
-  )
+
+  # If we have a root defined look there first
+  if(OSMESA_ROOT)
+    find_path(OSMESA_INCLUDE_DIR GL/osmesa.h PATHS ${OSMESA_ROOT}/include
+      NO_DEFAULT_PATH
+    )
+  endif()
+
+  if(NOT OSMESA_INCLUDE_DIR)
+    find_path(OSMESA_INCLUDE_DIR GL/osmesa.h PATHS
+      /usr/openwin/share/include
+      /opt/graphics/OpenGL/include
+    )
+  endif()
 endif()

 # This may be left blank if OSMesa symbols are included
 # in the main Mesa library
 if(NOT OSMESA_LIBRARY)
-  find_library(OSMESA_LIBRARY OSMesa
-    /opt/graphics/OpenGL/lib
-    /usr/openwin/lib
-  )
+  # If we have a root defined look there first
+  if(OSMESA_ROOT)
+    find_library(OSMESA_LIBRARY OSMesa PATHS ${OSMESA_ROOT}/lib
+      NO_DEFAULT_PATH
+    )
+  endif()
+
+  if(NOT OSMESA_LIBRARY)
+    find_library(OSMESA_LIBRARY OSMesa PATHS
+      /opt/graphics/OpenGL/lib
+      /usr/openwin/lib
+    )
+  endif()
 endif()

 include(FindPackageHandleStandardArgs)


updated version number to next one (0.9.6)

--- CMake/config.cmake
+++ CMake/config.cmake
@@ -28,7 +28,7 @@
 # setup version numbers
 set(RTTR_VERSION_MAJOR 0)
 set(RTTR_VERSION_MINOR 9)
-set(RTTR_VERSION_PATCH 5)
+set(RTTR_VERSION_PATCH 6)
 set(RTTR_VERSION ${RTTR_VERSION_MAJOR}.${RTTR_VERSION_MINOR}.${RTTR_VERSION_PATCH})
 set(RTTR_VERSION_STR "${RTTR_VERSION_MAJOR}.${RTTR_VERSION_MINOR}.${RTTR_VERSION_PATCH}")
 math(EXPR RTTR_VERSION_CALC "${RTTR_VERSION_MAJOR}*1000 + ${RTTR_VERSION_MINOR}*100 + ${RTTR_VERSION_PATCH}")


Addresses peer review comments.

Addresses peer review comments.

--- rosidl_typesupport_introspection_c/cmake/rosidl_typesupport_introspection_c_generate_interfaces.cmake
+++ rosidl_typesupport_introspection_c/cmake/rosidl_typesupport_introspection_c_generate_interfaces.cmake
@@ -89,7 +89,8 @@

 add_custom_command(
   OUTPUT ${_generated_msg_header_files} ${_generated_msg_source_files}
-          ${_generated_srv_header_files} ${_generated_srv_source_files}
+         ${_generated_srv_header_files} ${_generated_srv_source_files}
+         ${_generated_action_header_files} ${_generated_action_source_files}
   COMMAND ${PYTHON_EXECUTABLE} ${rosidl_typesupport_introspection_c_BIN}
   --generator-arguments-file "${generator_arguments_file}"
   DEPENDS ${target_dependencies}


Obtain GIT_STATE silent, set to no-tag on error

--- GitInfo.cmake
+++ GitInfo.cmake
@@ -26,7 +26,7 @@
       OUTPUT_VARIABLE GIT_REVISION OUTPUT_STRIP_TRAILING_WHITESPACE)
     execute_process( COMMAND ${GIT_EXECUTABLE} describe --long --tags --dirty
       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-      OUTPUT_VARIABLE GIT_STATE OUTPUT_STRIP_TRAILING_WHITESPACE)
+      OUTPUT_VARIABLE GIT_STATE OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
     execute_process( COMMAND ${GIT_EXECUTABLE} config --get remote.origin.url
       OUTPUT_VARIABLE GIT_ORIGIN_URL OUTPUT_STRIP_TRAILING_WHITESPACE
       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
@@ -39,6 +39,9 @@
     if(NOT GIT_ROOT_URL)
       set(GIT_ROOT_URL ${GIT_ORIGIN_URL})
     endif()
+    if(NOT GIT_STATE)
+       set(GIT_STATE "<no-tag>")
+    endif()
     message(STATUS "git revision ${GIT_REVISION} state ${GIT_STATE}")
   else()
     message(STATUS "No revision version support, git not found")


[AddSwiftSourceKit.cmake] Add dependency to the module map file due to the custom pre-build command

--- tools/SourceKit/cmake/modules/AddSwiftSourceKit.cmake
+++ tools/SourceKit/cmake/modules/AddSwiftSourceKit.cmake
@@ -238,6 +238,7 @@

   if(SOURCEKITFW_MODULEMAP)
     set(modulemap "${CMAKE_CURRENT_SOURCE_DIR}/${SOURCEKITFW_MODULEMAP}")
+    set_property(TARGET ${name} APPEND PROPERTY LINK_DEPENDS "${modulemap}")
     if (SOURCEKIT_DEPLOYMENT_OS MATCHES "^macosx")
       set(modules_dir "${framework_location}/Versions/A/Modules")
       add_custom_command(TARGET ${name} PRE_BUILD


updated find cyclus to match cycamore

updated find cyclus to match cycamore

--- CMake/FindCyclus.cmake
+++ CMake/FindCyclus.cmake
@@ -1,6 +1,7 @@
 #  CYCLUS_CORE_FOUND - system has the Cyclus Core library
 #  CYCLUS_CORE_INCLUDE_DIR - the Cyclus include directory
 #  CYCLUS_CORE_LIBRARIES - The libraries needed to use the Cyclus Core Library
+#  CYCLUS_AGENT_TEST_LIBRARIES - The libraries needed to run Cyclus agent unit tests

 # Check if we have an environment variable to cyclus root
 IF(DEFINED ENV{CYCLUS_ROOT_DIR})
@@ -43,7 +44,6 @@
 # Look for the header files
 FIND_PATH(CYCLUS_CORE_SHARE_DIR cyclus.rng.in
   HINTS "${CYCLUS_ROOT_DIR}" "${CYCLUS_ROOT_DIR}/cyclus"
-        "${CYCLUS_ROOT_DIR}/share" "${CYCLUS_ROOT_DIR}/share/cyclus"
   /usr/local/cyclus /opt/local/cyclus
   PATH_SUFFIXES cyclus/share share)

@@ -55,6 +55,13 @@
   PATH_SUFFIXES cyclus/lib lib)

 # Look for the library
+FIND_LIBRARY(CYCLUS_AGENT_TEST_LIBRARY NAMES agenttests
+  HINTS "${CYCLUS_ROOT_DIR}" "${CYCLUS_ROOT_DIR}/cyclus"
+  /usr/local/cyclus/lib /usr/local/cyclus
+  /opt/local /opt/local/cyclus
+  PATH_SUFFIXES cyclus/lib lib lib/cyclus)
+
+# Look for the library
 FIND_LIBRARY(CYCLUS_GTEST_LIBRARY NAMES gtest
   HINTS "${CYCLUS_ROOT_DIR}" "${CYCLUS_ROOT_DIR}/cyclus"
   "${CYCLUS_ROOT_DIR}/lib"  "${CYCLUS_CORE_SHARE_DIR}/../lib"
@@ -64,9 +71,11 @@

 # Copy the results to the output variables.
 IF (CYCLUS_CORE_INCLUDE_DIR AND CYCLUS_CORE_TEST_INCLUDE_DIR
-    AND CYCLUS_CORE_LIBRARY AND CYCLUS_GTEST_LIBRARY AND CYCLUS_CORE_SHARE_DIR)
+    AND CYCLUS_CORE_LIBRARY AND CYCLUS_GTEST_LIBRARY AND CYCLUS_CORE_SHARE_DIR
+    AND CYCLUS_AGENT_TEST_LIBRARY)
   SET(CYCLUS_CORE_FOUND 1)
   SET(CYCLUS_CORE_LIBRARIES ${CYCLUS_CORE_LIBRARY})
+  SET(CYCLUS_AGENT_TEST_LIBRARIES ${CYCLUS_AGENT_TEST_LIBRARY})
   SET(CYCLUS_GTEST_LIBRARIES ${CYCLUS_GTEST_LIBRARY})
   SET(CYCLUS_CORE_INCLUDE_DIRS "${CYCLUS_CORE_INCLUDE_DIR}")
   SET(CYCLUS_CORE_TEST_INCLUDE_DIRS "${CYCLUS_CORE_TEST_INCLUDE_DIR}")
@@ -74,6 +83,7 @@
 ELSE ()
   SET(CYCLUS_CORE_FOUND 0)
   SET(CYCLUS_CORE_LIBRARIES)
+  SET(CYCLUS_AGENT_TEST_LIBRARIES)
   SET(CYCLUS_GTEST_LIBRARIES)
   SET(CYCLUS_CORE_INCLUDE_DIRS)
   SET(CYCLUS_CORE_TEST_INCLUDE_DIRS)
@@ -90,11 +100,15 @@
     ${CYCLUS_CORE_SHARE_DIRS} )
   SET(CYCLUS_CORE_LIB_MESSAGE "Found Cyclus Core Library : "
     ${CYCLUS_CORE_LIBRARIES} )
+  SET(CYCLUS_AGENT_TEST_LIB_MESSAGE "Found Cyclus Agent Test Library : "
+    ${CYCLUS_AGENT_TEST_LIBRARIES} )
   SET(CYCLUS_GTEST_LIB_MESSAGE "Found Cyclus GTest Library : "
     ${CYCLUS_GTEST_LIBRARIES} )
   MESSAGE(STATUS ${CYCLUS_CORE_DIR_MESSAGE})
+  MESSAGE(STATUS ${CYCLUS_CORE_TEST_DIR_MESSAGE})
   MESSAGE(STATUS ${CYCLUS_CORE_SHARE_MESSAGE})
-  MESSAGE(STATUS ${CYCLUS_CORE_LIB_MESSAGE})
+  MESSAGE(STATUS ${CYCLUS_CORE_LIB_MESSAGE})
+  MESSAGE(STATUS ${CYCLUS_AGENT_TEST_LIB_MESSAGE})
   MESSAGE(STATUS ${CYCLUS_GTEST_LIB_MESSAGE})
 ELSE (CYCLUS_CORE_FOUND)
 	SET(CYCLUS_CORE_DIR_MESSAGE
@@ -103,8 +117,8 @@
 	  MESSAGE(STATUS "${CYCLUS_CORE_DIR_MESSAGE}")
 	  MESSAGE(STATUS "CYCLUS_CORE_SHARE_DIR was set to : ${CYCLUS_CORE_SHARE_DIR}")
 	  MESSAGE(STATUS "CYCLUS_CORE_LIBRARY was set to : ${CYCLUS_CORE_LIBRARY}")
+	  MESSAGE(STATUS "CYCLUS_AGENT_TEST_LIBRARY was set to : ${CYCLUS_AGENT_TEST_LIBRARY}")
 	  MESSAGE(STATUS "CYCLUS_GTEST_LIBRARY was set to : ${CYCLUS_GTEST_LIBRARY}")
-
       IF (cyclus_FIND_REQUIRED)
         MESSAGE(FATAL_ERROR "${cyclus_DIR_MESSAGE}")
       ENDIF (cyclus_FIND_REQUIRED)


Fix a WinDDK include path detection issue

--- CMake/FindWinDDK.cmake
+++ CMake/FindWinDDK.cmake
@@ -47,7 +47,7 @@
 # Search for header files

 SET(WINDDK_INCLUDE_SEARCH_DIRS ${WINDDK_DIR}/inc )
-FIND_PATH(WINDDK_INCLUDE_DIR api #hidpi.h
+FIND_PATH(WINDDK_INCLUDE_DIR api/hidpi.h
 	PATHS ${WINDDK_INCLUDE_SEARCH_DIRS} )
 SET(WINDDK_INCLUDE_DIR ${WINDDK_INCLUDE_DIR}
 	CACHE STRING "Directory containing Ms WinDDK header files")


CMake: reduce compile time by building less libraries

[ ] May break build
[ ] May break existing applications (see CHANGES.txt)
[ ] Bugfix
[ ] New Feature
[x] Cleanup
[ ] Optimization
[ ] Documentation

--- PurpleAddLibrary.cmake
+++ PurpleAddLibrary.cmake
@@ -19,7 +19,7 @@
     HEADERS_PREFIX
     LINK_LIBRARIES
     INCLUDE_ALL_HEADER
-	PRECOMPILE_HEADERS
+    PRECOMPILE_HEADERS
     )

   set(OPTION_NAMES


version 0.0.0.5

version 0.0.0.5

--- PluginConfig.cmake
+++ PluginConfig.cmake
@@ -11,13 +11,13 @@

 # ActiveX constants:
 set(FBTYPELIB_NAME FBVLCLib)
-set(FBTYPELIB_DESC "FBVLC 0.0.0.4 Type Library")
+set(FBTYPELIB_DESC "FBVLC 0.0.0.5 Type Library")
 set(IFBControl_DESC "FBVLC Control Interface")
 set(FBControl_DESC "FBVLC Control Class")
 set(IFBComJavascriptObject_DESC "FBVLC IComJavascriptObject Interface")
 set(FBComJavascriptObject_DESC "FBVLC ComJavascriptObject Class")
 set(IFBComEventSource_DESC "FBVLC IFBComEventSource Interface")
-set(AXVERSION_NUM "0.0.0.4")
+set(AXVERSION_NUM "0.0.0.5")

 # NOTE: THESE GUIDS *MUST* BE UNIQUE TO YOUR PLUGIN/ACTIVEX CONTROL!  YES, ALL OF THEM!
 set(FBTYPELIB_GUID a6283703-2b52-5487-b262-119d9bf8c79c)
@@ -34,7 +34,7 @@
 # strings
 set(FBSTRING_CompanyName "RSATom")
 set(FBSTRING_PluginDescription "VLC Web Plugin (powered by FireBreath)")
-set(FBSTRING_PLUGIN_VERSION "0.0.0.4")
+set(FBSTRING_PLUGIN_VERSION "0.0.0.5")
 set(FBSTRING_LegalCopyright "Copyright 2012 RSATom")
 set(FBSTRING_PluginFileName "np${PLUGIN_NAME}.dll")
 set(FBSTRING_ProductName "FireBreathed VLC")


Reduce CAmkES per-component heap allocation.

Set the per-component static heap size to 8KB. The heap is only used by
CAmkES RPC for marhsaling dynamic array & string parameters. We mostly
use the former and no more than 4KB at a time so 8KB should be fine until
we can redirect C use to the Rust heap allocator (or replace the C code).

BUG=224069025

Change-Id: I600854c5cb41ed268087f4b2294b70c3384973c2
GitOrigin-RevId: 177a353e6873f2c048cf4b446114534d9dcffc94

--- easy-settings.cmake
+++ easy-settings.cmake
@@ -7,6 +7,7 @@
 set(KernelSel4Arch "riscv32" CACHE STRING "Specifies 32-bit branch of the seL4 spike platform")
 set(KernelIsMCS ON CACHE BOOL "Enable seL4 MCS support")
 set(KernelPrinting ON CACHE BOOL "Enable seL4 console output support")
+set(CAmkESDefaultHeapSize "8192" CACHE STRING "CAmkES per-component heap size (bytes)")

 set(LibUtilsDefaultZfLogLevel 5 CACHE STRING "seL4 internal logging level (0-5).")
 set(SIMULATION ON CACHE BOOL "Whether to build simulate script")


Install JAR files even if we only have service messages

--- rosidl_generator_java/cmake/rosidl_generator_java_generate_interfaces.cmake
+++ rosidl_generator_java/cmake/rosidl_generator_java_generate_interfaces.cmake
@@ -297,11 +297,7 @@

 if(NOT rosidl_generate_interfaces_SKIP_INSTALL)
   set(_install_jar_dir "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}")
-  if(NOT "${_generated_msg_java_files} " STREQUAL " ")
-    list(GET _generated_msg_java_files 0 _msg_file)
-    get_filename_component(_msg_package_dir "${_msg_file}" DIRECTORY)
-    get_filename_component(_msg_package_dir "${_msg_package_dir}" DIRECTORY)
-
+  if(NOT "${_generated_msg_java_files} " STREQUAL " " OR NOT "${_generated_srv_java_files} " STREQUAL " ")
     install_jar("${PROJECT_NAME}_messages_jar" "share/${PROJECT_NAME}/java")
     ament_export_jars("share/${PROJECT_NAME}/java/${PROJECT_NAME}_messages.jar")
   endif()


Define API_VERSION

Define API_VERSION

--- VERSION.cmake
+++ VERSION.cmake
@@ -43,6 +43,12 @@
 # 6) If any interfaces have been removed since the last public release, then
 #    set COMPATMINOR to MINOR. (binary incompatible change)
 #
+
+# Package version 2.3.0
 SET(OPENWSMAN_MAJOR "2")
 SET(OPENWSMAN_MINOR "3")
 SET(OPENWSMAN_PATCH "0")
+
+# Plugin API 2.2
+SET(OPENWSMAN_PLUGIN_API_MAJOR "2")
+SET(OPENWSMAN_PLUGIN_API_MINOR "2")


New version: 0.3.8

New version: 0.3.8

--- VERSION.cmake
+++ VERSION.cmake
@@ -1,3 +1,3 @@
 SET(HAWKEY_MAJOR "0")
 SET(HAWKEY_MINOR "3")
-SET(HAWKEY_PATCH "7")
+SET(HAWKEY_PATCH "8")


New version: 0.4.10

New version: 0.4.10

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


let's increase against factory

let's increase against factory

--- VERSION.cmake
+++ VERSION.cmake
@@ -46,5 +46,5 @@

 SET(LIBSATSOLVER_MAJOR "0")
 SET(LIBSATSOLVER_MINOR "0")
-SET(LIBSATSOLVER_PATCH "9")
+SET(LIBSATSOLVER_PATCH "10")


FindPackageHandleStandardArgs.cmake ships with CMake from version 2.8 onwards, since we require CMake 2.8.5 delete the outdated copy.

--- CMake/FindPackageHandleStandardArgs.cmake
+++ CMake/FindPackageHandleStandardArgs.cmake
@@ -1,296 +0,0 @@
-# FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> ... )
-#
-# This function is intended to be used in FindXXX.cmake modules files.
-# It handles the REQUIRED, QUIET and version-related arguments to FIND_PACKAGE().
-# It also sets the <UPPERCASED_NAME>_FOUND variable.
-# The package is considered found if all variables <var1>... listed contain
-# valid results, e.g. valid filepaths.
-#
-# There are two modes of this function. The first argument in both modes is
-# the name of the Find-module where it is called (in original casing).
-#
-# The first simple mode looks like this:
-#    FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> (DEFAULT_MSG|"Custom failure message") <var1>...<varN> )
-# If the variables <var1> to <varN> are all valid, then <UPPERCASED_NAME>_FOUND
-# will be set to TRUE.
-# If DEFAULT_MSG is given as second argument, then the function will generate
-# itself useful success and error messages. You can also supply a custom error message
-# for the failure case. This is not recommended.
-#
-# The second mode is more powerful and also supports version checking:
-#    FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME [REQUIRED_VARS <var1>...<varN>]
-#                                           [VERSION_VAR   <versionvar>]
-#                                           [HANDLE_COMPONENTS]
-#                                           [CONFIG_MODE]
-#                                           [FAIL_MESSAGE "Custom failure message"] )
-#
-# As above, if <var1> through <varN> are all valid, <UPPERCASED_NAME>_FOUND
-# will be set to TRUE.
-# After REQUIRED_VARS the variables which are required for this package are listed.
-# Following VERSION_VAR the name of the variable can be specified which holds
-# the version of the package which has been found. If this is done, this version
-# will be checked against the (potentially) specified required version used
-# in the find_package() call. The EXACT keyword is also handled. The default
-# messages include information about the required version and the version
-# which has been actually found, both if the version is ok or not.
-# If the package supports components, use the HANDLE_COMPONENTS option to enable
-# handling them. In this case, find_package_handle_standard_args() will report
-# which components have been found and which are missing, and the <NAME>_FOUND
-# variable will be set to FALSE if any of the required components (i.e. not the
-# ones listed after OPTIONAL_COMPONENTS) are missing.
-# Use the option CONFIG_MODE if your FindXXX.cmake module is a wrapper for
-# a find_package(... NO_MODULE) call.  In this case VERSION_VAR will be set
-# to <NAME>_VERSION and the macro will automatically check whether the
-# Config module was found.
-# Via FAIL_MESSAGE a custom failure message can be specified, if this is not
-# used, the default message will be displayed.
-#
-# Example for mode 1:
-#
-#    FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2  DEFAULT_MSG  LIBXML2_LIBRARY LIBXML2_INCLUDE_DIR)
-#
-# LibXml2 is considered to be found, if both LIBXML2_LIBRARY and
-# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE.
-# If it is not found and REQUIRED was used, it fails with FATAL_ERROR,
-# independent whether QUIET was used or not.
-# If it is found, success will be reported, including the content of <var1>.
-# On repeated Cmake runs, the same message won't be printed again.
-#
-# Example for mode 2:
-#
-#    FIND_PACKAGE_HANDLE_STANDARD_ARGS(BISON  REQUIRED_VARS BISON_EXECUTABLE
-#                                             VERSION_VAR BISON_VERSION)
-# In this case, BISON is considered to be found if the variable(s) listed
-# after REQUIRED_VAR are all valid, i.e. BISON_EXECUTABLE in this case.
-# Also the version of BISON will be checked by using the version contained
-# in BISON_VERSION.
-# Since no FAIL_MESSAGE is given, the default messages will be printed.
-#
-# Another example for mode 2:
-#
-#    FIND_PACKAGE(Automoc4 QUIET NO_MODULE HINTS /opt/automoc4)
-#    FIND_PACKAGE_HANDLE_STANDARD_ARGS(Automoc4  CONFIG_MODE)
-# In this case, FindAutmoc4.cmake wraps a call to FIND_PACKAGE(Automoc4 NO_MODULE)
-# and adds an additional search directory for automoc4.
-# The following FIND_PACKAGE_HANDLE_STANDARD_ARGS() call produces a proper
-# success/error message.
-
-#=============================================================================
-# Copyright 2007-2009 Kitware, Inc.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-#  License text for the above reference.)
-
-INCLUDE(FindPackageMessage)
-INCLUDE(CMakeParseArguments)
-
-# internal helper macro
-MACRO(_FPHSA_FAILURE_MESSAGE _msg)
-  IF (${_NAME}_FIND_REQUIRED)
-    MESSAGE(FATAL_ERROR "${_msg}")
-  ELSE (${_NAME}_FIND_REQUIRED)
-    IF (NOT ${_NAME}_FIND_QUIETLY)
-      MESSAGE(STATUS "${_msg}")
-    ENDIF (NOT ${_NAME}_FIND_QUIETLY)
-  ENDIF (${_NAME}_FIND_REQUIRED)
-ENDMACRO(_FPHSA_FAILURE_MESSAGE _msg)
-
-
-# internal helper macro to generate the failure message when used in CONFIG_MODE:
-MACRO(_FPHSA_HANDLE_FAILURE_CONFIG_MODE)
-  # <name>_CONFIG is set, but FOUND is false, this means that some other of the REQUIRED_VARS was not found:
-  IF(${_NAME}_CONFIG)
-    _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: missing: ${MISSING_VARS} (found ${${_NAME}_CONFIG} ${VERSION_MSG})")
-  ELSE(${_NAME}_CONFIG)
-    # If _CONSIDERED_CONFIGS is set, the config-file has been found, but no suitable version.
-    # List them all in the error message:
-    IF(${_NAME}_CONSIDERED_CONFIGS)
-      SET(configsText "")
-      LIST(LENGTH ${_NAME}_CONSIDERED_CONFIGS configsCount)
-      MATH(EXPR configsCount "${configsCount} - 1")
-      FOREACH(currentConfigIndex RANGE ${configsCount})
-        LIST(GET ${_NAME}_CONSIDERED_CONFIGS ${currentConfigIndex} filename)
-        LIST(GET ${_NAME}_CONSIDERED_VERSIONS ${currentConfigIndex} version)
-        SET(configsText "${configsText}    ${filename} (version ${version})\n")
-      ENDFOREACH(currentConfigIndex)
-      _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} ${VERSION_MSG}, checked the following files:\n${configsText}")
-
-    ELSE(${_NAME}_CONSIDERED_CONFIGS)
-      # Simple case: No Config-file was found at all:
-      _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: found neither ${_NAME}Config.cmake nor ${_NAME_LOWER}-config.cmake ${VERSION_MSG}")
-    ENDIF(${_NAME}_CONSIDERED_CONFIGS)
-  ENDIF(${_NAME}_CONFIG)
-ENDMACRO(_FPHSA_HANDLE_FAILURE_CONFIG_MODE)
-
-
-FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG)
-
-# set up the arguments for CMAKE_PARSE_ARGUMENTS and check whether we are in
-# new extended or in the "old" mode:
-  SET(options CONFIG_MODE HANDLE_COMPONENTS)
-  SET(oneValueArgs FAIL_MESSAGE VERSION_VAR)
-  SET(multiValueArgs REQUIRED_VARS)
-  SET(_KEYWORDS_FOR_EXTENDED_MODE  ${options} ${oneValueArgs} ${multiValueArgs} )
-  LIST(FIND _KEYWORDS_FOR_EXTENDED_MODE "${_FIRST_ARG}" INDEX)
-
-  IF(${INDEX} EQUAL -1)
-    SET(FPHSA_FAIL_MESSAGE ${_FIRST_ARG})
-    SET(FPHSA_REQUIRED_VARS ${ARGN})
-    SET(FPHSA_VERSION_VAR)
-  ELSE(${INDEX} EQUAL -1)
-
-    CMAKE_PARSE_ARGUMENTS(FPHSA "${options}" "${oneValueArgs}" "${multiValueArgs}"  ${_FIRST_ARG} ${ARGN})
-
-    IF(FPHSA_UNPARSED_ARGUMENTS)
-      MESSAGE(FATAL_ERROR "Unknown keywords given to FIND_PACKAGE_HANDLE_STANDARD_ARGS(): \"${FPHSA_UNPARSED_ARGUMENTS}\"")
-    ENDIF(FPHSA_UNPARSED_ARGUMENTS)
-
-    IF(NOT FPHSA_FAIL_MESSAGE)
-      SET(FPHSA_FAIL_MESSAGE  "DEFAULT_MSG")
-    ENDIF(NOT FPHSA_FAIL_MESSAGE)
-  ENDIF(${INDEX} EQUAL -1)
-
-# now that we collected all arguments, process them
-
-  IF("${FPHSA_FAIL_MESSAGE}" STREQUAL "DEFAULT_MSG")
-    SET(FPHSA_FAIL_MESSAGE "Could NOT find ${_NAME}")
-  ENDIF("${FPHSA_FAIL_MESSAGE}" STREQUAL "DEFAULT_MSG")
-
-  # In config-mode, we rely on the variable <package>_CONFIG, which is set by find_package()
-  # when it successfully found the config-file, including version checking:
-  IF(FPHSA_CONFIG_MODE)
-    LIST(INSERT FPHSA_REQUIRED_VARS 0 ${_NAME}_CONFIG)
-    LIST(REMOVE_DUPLICATES FPHSA_REQUIRED_VARS)
-    SET(FPHSA_VERSION_VAR ${_NAME}_VERSION)
-  ENDIF(FPHSA_CONFIG_MODE)
-
-  IF(NOT FPHSA_REQUIRED_VARS)
-    MESSAGE(FATAL_ERROR "No REQUIRED_VARS specified for FIND_PACKAGE_HANDLE_STANDARD_ARGS()")
-  ENDIF(NOT FPHSA_REQUIRED_VARS)
-
-  LIST(GET FPHSA_REQUIRED_VARS 0 _FIRST_REQUIRED_VAR)
-
-  STRING(TOUPPER ${_NAME} _NAME_UPPER)
-  STRING(TOLOWER ${_NAME} _NAME_LOWER)
-
-  # collect all variables which were not found, so they can be printed, so the
-  # user knows better what went wrong (#6375)
-  SET(MISSING_VARS "")
-  SET(DETAILS "")
-  SET(${_NAME_UPPER}_FOUND TRUE)
-  # check if all passed variables are valid
-  FOREACH(_CURRENT_VAR ${FPHSA_REQUIRED_VARS})
-    IF(NOT ${_CURRENT_VAR})
-      SET(${_NAME_UPPER}_FOUND FALSE)
-      SET(MISSING_VARS "${MISSING_VARS} ${_CURRENT_VAR}")
-    ELSE(NOT ${_CURRENT_VAR})
-      SET(DETAILS "${DETAILS}[${${_CURRENT_VAR}}]")
-    ENDIF(NOT ${_CURRENT_VAR})
-  ENDFOREACH(_CURRENT_VAR)
-
-  # component handling
-  UNSET(FOUND_COMPONENTS_MSG)
-  UNSET(MISSING_COMPONENTS_MSG)
-
-  IF(FPHSA_HANDLE_COMPONENTS)
-    FOREACH(comp ${${_NAME}_FIND_COMPONENTS})
-      IF(${_NAME}_${comp}_FOUND)
-
-        IF(NOT DEFINED FOUND_COMPONENTS_MSG)
-          SET(FOUND_COMPONENTS_MSG "found components: ")
-        ENDIF()
-        SET(FOUND_COMPONENTS_MSG "${FOUND_COMPONENTS_MSG} ${comp}")
-
-      ELSE()
-
-        IF(NOT DEFINED MISSING_COMPONENTS_MSG)
-          SET(MISSING_COMPONENTS_MSG "missing components: ")
-        ENDIF()
-        SET(MISSING_COMPONENTS_MSG "${MISSING_COMPONENTS_MSG} ${comp}")
-
-        IF(${_NAME}_FIND_REQUIRED_${comp})
-          SET(${_NAME_UPPER}_FOUND FALSE)
-          SET(MISSING_VARS "${MISSING_VARS} ${comp}")
-        ENDIF()
-
-      ENDIF()
-    ENDFOREACH(comp)
-    SET(COMPONENT_MSG "${FOUND_COMPONENTS_MSG} ${MISSING_COMPONENTS_MSG}")
-    SET(DETAILS "${DETAILS}[c${COMPONENT_MSG}]")
-  ENDIF(FPHSA_HANDLE_COMPONENTS)
-
-  # version handling:
-  SET(VERSION_MSG "")
-  SET(VERSION_OK TRUE)
-  SET(VERSION ${${FPHSA_VERSION_VAR}} )
-  IF (${_NAME}_FIND_VERSION)
-
-    IF(VERSION)
-
-      IF(${_NAME}_FIND_VERSION_EXACT)       # exact version required
-        IF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}")
-          SET(VERSION_MSG "Found unsuitable version \"${VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
-          SET(VERSION_OK FALSE)
-        ELSE (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}")
-          SET(VERSION_MSG "(found suitable exact version \"${VERSION}\")")
-        ENDIF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}")
-
-      ELSE(${_NAME}_FIND_VERSION_EXACT)     # minimum version specified:
-        IF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}")
-          SET(VERSION_MSG "Found unsuitable version \"${VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"")
-          SET(VERSION_OK FALSE)
-        ELSE ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}")
-          SET(VERSION_MSG "(found suitable version \"${VERSION}\", required is \"${${_NAME}_FIND_VERSION}\")")
-        ENDIF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}")
-      ENDIF(${_NAME}_FIND_VERSION_EXACT)
-
-    ELSE(VERSION)
-
-      # if the package was not found, but a version was given, add that to the output:
-      IF(${_NAME}_FIND_VERSION_EXACT)
-         SET(VERSION_MSG "(Required is exact version \"${${_NAME}_FIND_VERSION}\")")
-      ELSE(${_NAME}_FIND_VERSION_EXACT)
-         SET(VERSION_MSG "(Required is at least version \"${${_NAME}_FIND_VERSION}\")")
-      ENDIF(${_NAME}_FIND_VERSION_EXACT)
-
-    ENDIF(VERSION)
-  ELSE (${_NAME}_FIND_VERSION)
-    IF(VERSION)
-      SET(VERSION_MSG "(found version \"${VERSION}\")")
-    ENDIF(VERSION)
-  ENDIF (${_NAME}_FIND_VERSION)
-
-  IF(VERSION_OK)
-    SET(DETAILS "${DETAILS}[v${VERSION}(${${_NAME}_FIND_VERSION})]")
-  ELSE(VERSION_OK)
-    SET(${_NAME_UPPER}_FOUND FALSE)
-  ENDIF(VERSION_OK)
-
-
-  # print the result:
-  IF (${_NAME_UPPER}_FOUND)
-    FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_FIRST_REQUIRED_VAR}} ${VERSION_MSG} ${COMPONENT_MSG}" "${DETAILS}")
-  ELSE (${_NAME_UPPER}_FOUND)
-
-    IF(FPHSA_CONFIG_MODE)
-      _FPHSA_HANDLE_FAILURE_CONFIG_MODE()
-    ELSE(FPHSA_CONFIG_MODE)
-      IF(NOT VERSION_OK)
-        _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_FIRST_REQUIRED_VAR}})")
-      ELSE(NOT VERSION_OK)
-        _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}")
-      ENDIF(NOT VERSION_OK)
-    ENDIF(FPHSA_CONFIG_MODE)
-
-  ENDIF (${_NAME_UPPER}_FOUND)
-
-  SET(${_NAME_UPPER}_FOUND ${${_NAME_UPPER}_FOUND} PARENT_SCOPE)
-
-ENDFUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _FIRST_ARG)


Check for cblas using pkg config first

Check for cblas using pkg config first

--- modules/FindCBLAS.cmake
+++ modules/FindCBLAS.cmake
@@ -1,3 +1,14 @@
+# First attempts using pkg-config. It is not unlikely to work and should be
+# quite reliable on linuxes.
+include(FindPkgConfig)
+pkg_search_module(CBLAS cblas)
+if(NOT CBLAS_FOUND AND PKG_CONFIG_FOUND)
+	pkg_search_module(ATLAS atlas)
+else()
+	set(BLAS_LIBRARIES ${CBLAS_LIBRARIES})
+	set(BLAS_INCLUDE_DIR ${CBLAS_INCLUDE_DIRS})
+endif()
+
 # Corrects for deficiencies in cmake find_package(BLAS)
 find_package(BLAS QUIET)

@@ -27,13 +38,15 @@
 function(include_directories_from_library_paths OUTVAR)
     set(results)
     foreach(path ${ARGN})
-        string(REGEX REPLACE "(.*)/lib/.*" "\\1/include" current "${path}")
+		string(REGEX REPLACE "(.*)/lib(64)?/.*" "\\1/include" current "${path}")
         if(NOT "${current}" STREQUAL "/include" AND IS_DIRECTORY "${current}")
             list(APPEND results "${current}")
         endif()
     endforeach()
-    list(REMOVE_DUPLICATES results)
-    set(${OUTVAR} ${results} PARENT_SCOPE)
+	if(NOT "${results}" STREQUAL "")
+        list(REMOVE_DUPLICATES results)
+        set(${OUTVAR} ${results} PARENT_SCOPE)
+	endif()
 endfunction()
 # find_package blas does not look for cblas.h
 if(NOT BLAS_INCLUDE_DIR AND BLAS_LIBRARIES)


Disable -Wreturn-stack-address for Clang

--- cmake/CompileOptions.cmake
+++ cmake/CompileOptions.cmake
@@ -119,7 +119,7 @@
         $<$<CXX_COMPILER_ID:Clang>:
             -Wpedantic

-            -Wreturn-stack-address
+            # -Wreturn-stack-address # gives false positives
         >

         $<$<PLATFORM_ID:Darwin>:


Changed compile flags.

Changed compile flags.

--- cmake/CompilerConfig.cmake
+++ cmake/CompilerConfig.cmake
@@ -9,7 +9,7 @@

 set(CMAKE_POSITION_INDEPENDENT_CODE ON)
 set(EXTRA_CXX_FLAGS "-Werror -Wall -Wpedantic -Wextra")
-# set(CMAKE_CXX_FLAGS_RELEASE "-Ofast -flto -O3 -DRELEASE -DNDEBUG")
+set(CMAKE_CXX_FLAGS_RELEASE "-Ofast -O3 -DRELEASE -DNDEBUG") #-flto
 #set(CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE} "-ggdb -fno-omit-frame-pointer")

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


Fixed MSVC 2013 Win32 Debug... again. Added /bigobj definitions to all msvc compiler flags. For more details look here https://github.com/AscEmu/AscEmu/commit/4924017d5e39ebd74d558f7572f6e0f42b05b2ad

--- cmake/Compilers/msvc.cmake
+++ cmake/Compilers/msvc.cmake
@@ -9,14 +9,11 @@
 add_definitions(-D_CRT_SECURE_NO_WARNINGS -DHAS_CXX0X)

 #set defines for msvc
-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /EHa /MP")
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHa /MP")
+set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /EHa /MP /bigobj")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHa /MP /bigobj")

 # set build platform specific settings (x86/x64)
-if(IS_64BIT)
-	set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /bigobj")
-	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj")
-else()
+if(NOT IS_64BIT)
 	set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LARGEADDRESSAWARE")
 endif()


adding support for usdGenSchema.py

adding support for usdGenSchema.py

--- cmake/FindHoudiniUsd.cmake
+++ cmake/FindHoudiniUsd.cmake
@@ -104,5 +104,17 @@
         usdGenSchema
         PATHS
         ${HOUDINI_ROOT}/bin
-        REQUIRED
-        )+        )
+
+# Fallback to py script, remove after 18.5.519 release and add REQUIORED to usdGenSchema find_program
+
+if(NOT USD_SCHEMA_GENERATOR)
+    find_program(USD_SCHEMA_GENERATOR
+            NAMES
+            usdGenSchema.py
+            PATHS
+            ${HOUDINI_ROOT}/bin
+            REQUIRED
+            )
+    list(PREPEND USD_SCHEMA_GENERATOR hython)
+endif()


cmake/MyPackageStart.cmake: fix

cmake/MyPackageStart.cmake: fix

--- cmake/MyPackageStart.cmake
+++ cmake/MyPackageStart.cmake
@@ -144,13 +144,19 @@
   # unless it is starting with an '_'.
   #
   FILE (GLOB_RECURSE _include include/*.h include/*.hpp)
-  FOREACH (_file ${_include} )
+  FOREACH (_file ${_include})
+    IF (MYPACKAGE_DEBUG)
+      MESSAGE (STATUS "[${PROJECT_NAME}-START-DEBUG] Checking include ${_file}")
+    ENDIF ()
     #
     # Hiden file
     #
     GET_FILENAME_COMPONENT(_basename ${_file} NAME)
     STRING (REGEX MATCH "^_" _hiden ${_basename})
     IF ("${_hiden}" STREQUAL "_")
+      IF (MYPACKAGE_DEBUG)
+        MESSAGE (STATUS "[${PROJECT_NAME}-START-DEBUG] Skipping hiden include ${_file}")
+      ENDIF ()
       CONTINUE ()
     ENDIF ()
     #
@@ -159,6 +165,9 @@
     GET_FILENAME_COMPONENT(_directory ${_file} DIRECTORY)
     STRING (REGEX MATCH "/internal/?" _internal ${_directory})
     IF (("${_internal}" STREQUAL "/internal") OR ("${_internal}" STREQUAL "/internal/"))
+      IF (MYPACKAGE_DEBUG)
+        MESSAGE (STATUS "[${PROJECT_NAME}-START-DEBUG] Skipping internal include ${_file}")
+      ENDIF ()
       CONTINUE ()
     ENDIF ()
     #
@@ -166,9 +175,10 @@
     #
     FILE (RELATIVE_PATH _relfile ${PROJECT_SOURCE_DIR} ${_file})
     GET_FILENAME_COMPONENT(_dir ${_relfile} DIRECTORY)
-    IF (${packageName}_CAN_INSTALL)
-      INSTALL(FILES ${_file} DESTINATION ${_dir} COMPONENT HeaderComponent)
-      SET (_HAVE_HEADERCOMPONENT TRUE CACHE INTERNAL "Have HeaderComponent" FORCE)
+    INSTALL(FILES ${_file} DESTINATION ${_dir} COMPONENT HeaderComponent)
+    SET (_HAVE_HEADERCOMPONENT TRUE CACHE INTERNAL "Have HeaderComponent" FORCE)
+    IF (MYPACKAGE_DEBUG)
+      MESSAGE (STATUS "[${PROJECT_NAME}-START-DEBUG] Adding install rule for ${_file}")
     ENDIF ()
   ENDFOREACH()
   #


flag for disable warnings

flag for disable warnings

--- cmake/XercesWarnings.cmake
+++ cmake/XercesWarnings.cmake
@@ -19,6 +19,8 @@

 # compiler warnings

+option(show-warnings "Enable compiler warnings" ON)
+
 # These are annoyingly verbose, produce false positives or don't work
 # nicely with all supported compiler versions, so are disabled unless
 # explicitly enabled.
@@ -31,59 +33,61 @@
 # flags, and enable them if supported.  This greatly improves the
 # quality of the build by checking for a number of common problems,
 # some of which are quite serious.
-if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR
-   CMAKE_CXX_COMPILER_ID MATCHES "Clang")
-  set(test_flags
-      -Wall
-      -Wcast-align
-      -Wcast-qual
-      -Wctor-dtor-privacy
-      -Wextra
-      -Wformat=2
-      -Wimplicit-atomic-properties
-      -Wmissing-declarations
-      -Wno-long-long
-      -Woverlength-strings
-      -Woverloaded-virtual
-      -Wredundant-decls
-      -Wreorder
-      -Wswitch-default
-      -Wunused-variable
-      -Wwrite-strings
-      -Wno-variadic-macros
-      -fstrict-aliasing)
-  if(extra-warnings)
-    list(APPEND test_flags
-        -Wfloat-equal
-        -Wmissing-prototypes
-        -Wunreachable-code)
+if (show_warnings)
+  if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR
+     CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+    set(test_flags
+        -Wall
+        -Wcast-align
+        -Wcast-qual
+        -Wctor-dtor-privacy
+        -Wextra
+        -Wformat=2
+        -Wimplicit-atomic-properties
+        -Wmissing-declarations
+        -Wno-long-long
+        -Woverlength-strings
+        -Woverloaded-virtual
+        -Wredundant-decls
+        -Wreorder
+        -Wswitch-default
+        -Wunused-variable
+        -Wwrite-strings
+        -Wno-variadic-macros
+        -fstrict-aliasing)
+    if(extra-warnings)
+      list(APPEND test_flags
+          -Wfloat-equal
+          -Wmissing-prototypes
+          -Wunreachable-code)
+    endif()
+    if(fatal-warnings)
+      list(APPEND test_flags
+           -Werror)
+    endif()
+  elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
+    set(test_flags)
+    if(extra-warnings)
+      list(APPEND test_flags
+           /W4)
+    else()
+      list(APPEND test_flags
+           /W3)
+    endif()
+    if (fatal-warnings)
+      list(APPEND test_flags
+           /WX)
+    endif()
   endif()
-  if(fatal-warnings)
-    list(APPEND test_flags
-         -Werror)
-  endif()
-elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
-  set(test_flags)
-  if(extra-warnings)
-    list(APPEND test_flags
-         /W4)
-  else()
-    list(APPEND test_flags
-         /W3)
-  endif()
-  if (fatal-warnings)
-    list(APPEND test_flags
-         /WX)
-  endif()
-endif()

-include(CheckCXXCompilerFlag)
+  include(CheckCXXCompilerFlag)

-foreach(flag ${test_flags})
-  string(REGEX REPLACE "[^A-Za-z0-9]" "_" flag_var "${flag}")
-  set(test_c_flag "CXX_FLAG${flag_var}")
-  CHECK_CXX_COMPILER_FLAG(${flag} "${test_c_flag}")
-  if (${test_c_flag})
-     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
-  endif (${test_c_flag})
-endforeach(flag ${test_flags})
+  foreach(flag ${test_flags})
+    string(REGEX REPLACE "[^A-Za-z0-9]" "_" flag_var "${flag}")
+    set(test_c_flag "CXX_FLAG${flag_var}")
+    CHECK_CXX_COMPILER_FLAG(${flag} "${test_c_flag}")
+    if (${test_c_flag})
+       set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
+    endif (${test_c_flag})
+  endforeach(flag ${test_flags})
+endif ()


CMake: Eigen is header-only so skip configure, build and install steps (#682)

--- cmake/external_eigen.cmake
+++ cmake/external_eigen.cmake
@@ -21,7 +21,7 @@
 set(EIGEN_GIT_URL https://github.com/NervanaSystems/eigen)

 #----------------------------------------------------------------------------------------------------------
-# Download and install Eigen
+# Download Eigen
 #----------------------------------------------------------------------------------------------------------

 # The 'BUILD_BYPRODUCTS' argument was introduced in CMake 3.2.
@@ -31,7 +31,9 @@
         GIT_REPOSITORY ${EIGEN_GIT_URL}
         GIT_TAG ${EIGEN_GIT_TAG}
         UPDATE_COMMAND ""
-        CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${EXTERNAL_PROJECTS_ROOT}/eigen -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
+        CONFIGURE_COMMAND ""
+        BUILD_COMMAND ""
+        INSTALL_COMMAND ""
         TMP_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/tmp"
         STAMP_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/stamp"
         DOWNLOAD_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/download"
@@ -45,17 +47,19 @@
         GIT_REPOSITORY ${EIGEN_GIT_URL}
         GIT_TAG ${EIGEN_GIT_TAG}
         UPDATE_COMMAND ""
-        CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${EXTERNAL_PROJECTS_ROOT}/eigen -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
+        CONFIGURE_COMMAND ""
+        BUILD_COMMAND ""
+        INSTALL_COMMAND ""
         TMP_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/tmp"
         STAMP_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/stamp"
         DOWNLOAD_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/download"
         SOURCE_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/src"
         BINARY_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/build"
         INSTALL_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen"
-        BUILD_BYPRODUCTS "${EXTERNAL_PROJECTS_ROOT}/eigen/include/eigen3"
+        BUILD_BYPRODUCTS "${EXTERNAL_PROJECTS_ROOT}/eigen/src/Eigen/Core"
         )
 endif()

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

-set(EIGEN_INCLUDE_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/include/eigen3" PARENT_SCOPE)
+set(EIGEN_INCLUDE_DIR "${EXTERNAL_PROJECTS_ROOT}/eigen/src" PARENT_SCOPE)


Fix mysql-test directory in RPMs.

Fix mysql-test directory in RPMs.

While here:

 - split INSTALL_*DIR variables into two sections, first set the major
   variables, then second set the minor ones, using the major where
   appropriate.

 - format the settings for easier parsing (at least with a wide terminal)

--- cmake/install_layout.cmake
+++ cmake/install_layout.cmake
@@ -107,26 +107,29 @@
 SET(INSTALL_SUPPORTFILESDIR_STANDALONE "support-files")
 SET(INSTALL_MYSQLDATADIR_STANDALONE "data")

+#
 # RPM layout
-SET(INSTALL_BINDIR_RPM "bin")
-SET(INSTALL_SBINDIR_RPM "sbin")
+#
+SET(INSTALL_BINDIR_RPM              "bin")
+SET(INSTALL_INCLUDEDIR_RPM          "include/mysql")
 IF(64BIT)
-  SET(INSTALL_LIBDIR_RPM "lib64")
+  SET(INSTALL_LIBDIR_RPM            "lib64")
 ELSE()
-  SET(INSTALL_LIBDIR_RPM "lib")
+  SET(INSTALL_LIBDIR_RPM            "lib")
 ENDIF()
-SET(INSTALL_PLUGINDIR_RPM "${INSTALL_LIBDIR_RPM}/mysql/plugin")
-SET(INSTALL_DOCDIR_RPM "share/mysql/doc/MySQL-server-${MYSQL_NO_DASH_VERSION}")
-SET(INSTALL_MANDIR_RPM "share/man")
-SET(INSTALL_INCLUDEDIR_RPM "include/mysql")
-SET(INSTALL_MYSQLSHAREDIR_RPM "share/mysql")
-SET(INSTALL_SHAREDIR_RPM "share")
-SET(INSTALL_SCRIPTDIR_RPM "bin")
-SET(INSTALL_MYSQLTESTDIR_RPM "mysql-test")
-SET(INSTALL_SQLBENCHROOTDIR_RPM "")
-SET(INSTALL_DOCREADMEDIR_RPM "share/mysql/doc/MySQL-server-${MYSQL_NO_DASH_VERSION}")
-SET(INSTALL_SUPPORTFILESDIR_RPM "share/mysql")
-SET(INSTALL_MYSQLDATADIR_RPM "var")
+SET(INSTALL_SBINDIR_RPM             "sbin")
+SET(INSTALL_SHAREDIR_RPM            "share")
+#
+SET(INSTALL_DOCDIR_RPM              "${INSTALL_SHAREDIR_RPM}/mysql/doc/MySQL-server-${MYSQL_NO_DASH_VERSION}")
+SET(INSTALL_DOCREADMEDIR_RPM        "${INSTALL_DOCDIR_RPM}")
+SET(INSTALL_MANDIR_RPM              "${INSTALL_SHAREDIR_RPM}/man")
+SET(INSTALL_MYSQLDATADIR_RPM        "var")
+SET(INSTALL_MYSQLSHAREDIR_RPM       "${INSTALL_SHAREDIR_RPM}/mysql")
+SET(INSTALL_MYSQLTESTDIR_RPM        "${INSTALL_SHAREDIR_RPM}/mysql-test")
+SET(INSTALL_PLUGINDIR_RPM           "${INSTALL_LIBDIR_RPM}/mysql/plugin")
+SET(INSTALL_SCRIPTDIR_RPM           "${INSTALL_BINDIR_RPM}")
+SET(INSTALL_SQLBENCHROOTDIR_RPM     "")
+SET(INSTALL_SUPPORTFILESDIR_RPM     "${INSTALL_SHAREDIR_RPM}/mysql")

 # DEB layout
 SET(INSTALL_BINDIR_DEB "bin")


cmake update

cmake update

--- cmake/modules/Findrp.cmake
+++ cmake/modules/Findrp.cmake
@@ -10,9 +10,9 @@

 FIND_LIBRARY(WIRINGPI_LIBRARIES NAMES rp
    PATHS
-   /usr
-   /usr/local
-   /opt
+   /usr/lib
+   /usr/local/lib
+   /opt/lib
    )


Use UNCOMPRESSED as flag instead of NONCOMPRESSED (awkward phrasing)

--- cmake_toolchain/vita.cmake
+++ cmake_toolchain/vita.cmake
@@ -19,14 +19,14 @@
 ## Generate a SELF from an ARM EABI ELF
 ##   vita_create_self(target source
 ##                    [CONFIG file]
-##                    [NONCOMPRESSED]
+##                    [UNCOMPRESSED]
 ##                    [UNSAFE])
 ##
 ## @param target
 ##   A CMake custom target of this given name
 ## @param source
 ##   The ARM EABI ELF target (from add_executable for example)
-## @param[opt] NONCOMPRESSED
+## @param[opt] UNCOMPRESSED
 ##   Do NOT compress the result SELF (compression is default)
 ## @param[opt] UNSAFE
 ##   The homebrew uses private/system APIs and requires extended permissions
@@ -37,14 +37,14 @@
   set(VITA_ELF_CREATE_FLAGS "${VITA_ELF_CREATE_FLAGS}" CACHE STRING "vita-elf-create flags")
   set(VITA_MAKE_FSELF_FLAGS "${VITA_MAKE_FSELF_FLAGS}" CACHE STRING "vita-make-fself flags")

-  set(options NONCOMPRESSED UNSAFE)
+  set(options UNCOMPRESSED UNSAFE)
   set(oneValueArgs CONFIG)
   cmake_parse_arguments(vita_create_self "${options}" "${oneValueArgs}" "" ${ARGN})

   if(vita_create_self_CONFIG)
     set(VITA_ELF_CREATE_FLAGS "${VITA_ELF_CREATE_FLAGS} -e ${vita_create_self_CONFIG}")
   endif()
-  if(NOT vita_create_self_NONCOMPRESSED)
+  if(NOT vita_create_self_UNCOMPRESSED)
     set(VITA_MAKE_FSELF_FLAGS "${VITA_MAKE_FSELF_FLAGS} -c")
   endif()
   if(NOT vita_create_self_UNSAFE)


Update ProjectBuildOption.cmake

Update ProjectBuildOption.cmake

--- project/cmake/ProjectBuildOption.cmake
+++ project/cmake/ProjectBuildOption.cmake
@@ -56,12 +56,16 @@
 # openssl
 if (CRYPTO_USE_OPENSSL OR CRYPTO_USE_LIBRESSL OR CRYPTO_USE_BORINGSSL)
     find_package(OpenSSL)
-    if (NOT OPENSSL_FOUND)
+    if (OPENSSL_FOUND)
+        include_directories(${OPENSSL_INCLUDE_DIR})
+    else()
         message(FATAL_ERROR "CRYPTO_USE_OPENSSL,CRYPTO_USE_LIBRESSL,CRYPTO_USE_BORINGSSL is set but openssl not found")
     endif()
 elseif (CRYPTO_USE_MBEDTLS)
     find_package(MbedTLS)
-    if (NOT MBEDTLS_FOUND)
+    if (MBEDTLS_FOUND)
+        include_directories(${MbedTLS_INCLUDE_DIRS})
+    else()
         message(FATAL_ERROR "CRYPTO_USE_MBEDTLS is set but mbedtls not found")
     endif()
 else ()
@@ -70,11 +74,13 @@
     if (OPENSSL_FOUND)
         message(STATUS "Crypto enabled.(openssl found)")
         set(CRYPTO_USE_OPENSSL 1)
+        include_directories(${OPENSSL_INCLUDE_DIR})
     else ()
         find_package(MbedTLS)
         if (MBEDTLS_FOUND)
             message(STATUS "Crypto enabled.(mbedtls found)")
             set(CRYPTO_USE_MBEDTLS 1)
+            include_directories(${MbedTLS_INCLUDE_DIRS})
         endif()
     endif()
 endif()


cmake: fix JNI configuration problem for Android samples

Some CMake 3.x (2.8.12.2 is fine) provides broken build configurations
with following build error message:
    ld: fatal error: -soname: must take a non-empty argument

Linker command line sample contains this:
"-shared -Wl,-soname, -o"


Disable compiler extensions

Disable compiler extensions

--- prosoft/core/config/cmake/config_cpp.cmake
+++ prosoft/core/config/cmake/config_cpp.cmake
@@ -29,6 +29,7 @@

 macro(ps_core_config_cpp_version TARGET_NAME)
 	include(CheckCXXSourceCompiles)
+	set_property(TARGET ${TARGET_NAME} PROPERTY CXX_EXTENSIONS OFF) # Don't use GNU extensions. They are not portable.
 	if(NOT MSVC)
 		include(CheckCXXCompilerFlag)
 		check_cxx_compiler_flag("-std=c++11" HAVE_STD_CPP11_FLAG)


fpga_interchange: Add site router tests

fpga_interchange: Add site router tests

Signed-off-by: Tomasz Michalak <a2fdaa543b4cc5e3d6cd8672ec412c0eb393b86e@antmicro.com>

--- fpga_interchange/family.cmake
+++ fpga_interchange/family.cmake
@@ -58,3 +58,6 @@
     target_link_libraries(gui_${family} extra_capnp)
     target_link_libraries(gui_${family} z)
 endif()
+if (BUILD_TESTS)
+    add_subdirectory(tests/${family}/site_router_tests)
+endif()


Trigger a build, prep for 1.0.0-rc1

Trigger a build, prep for 1.0.0-rc1

--- cmake/DetermineTomvizVersion.cmake
+++ cmake/DetermineTomvizVersion.cmake
@@ -7,7 +7,7 @@
 #   tomviz_version
 #   tomviz_version_long

-set(hardcoded_tomviz_version "0.9.3")
+set(hardcoded_tomviz_version "1.0.0-rc1")

 function(_set_version_vars versiontext)
   string(REGEX MATCH "([0-9]+)\\.([0-9]+)\\.([0-9]+)[-]*(.*)" version_matches "${versiontext}")


fix detect package is already downloaded

--- facts/facts.cmake
+++ facts/facts.cmake
@@ -130,7 +130,8 @@
 	set(depends_dir "${DEPENDS_PATH}")
 	set(depends_bin_package "${depends_dir}/${PACKAGE}-${VERSION}")
 	set(depends_package "${CMAKE_PREFIX_PATH}/${PACKAGE}-${VERSION}")
-	if(NOT EXISTS "${depends_package}" OR "${NO_USE_CACHE_LOCAL}")
+	set(depends_package_platform "${CMAKE_PREFIX_PATH}/${PACKAGE}-${VERSION}/${CMAKI_PLATFORM}.cmake")
+	if(NOT EXISTS "${depends_package_platform}" OR "${NO_USE_CACHE_LOCAL}")
 		# pido un paquete, en funcion de:
 		#		- paquete
 		#		- version


Enabled MingW packages for windows.

Enabled MingW packages for windows.

--- packages/packages.cmake
+++ packages/packages.cmake
@@ -1,38 +1,49 @@
 SET(BPKG_64BIT OFF)
 SET(BPKG_DEBUG OFF)
-
 IF (${CMAKE_SIZEOF_VOID_P} MATCHES 8)
     MESSAGE("Building in 64bit")
     SET(BPKG_64BIT ON)
 ENDIF ()
-
 IF (${CMAKE_BUILD_TYPE} MATCHES Debug)
     SET(BPKG_DEBUG ON)
 ENDIF ()
+IF (${MINGW})
+    MESSAGE("Using MINGW")
+ENDIF ()
+SET(ANTLR4_JAR_LOCATION "${CMAKE_HOME_DIRECTORY}/packages/tools/antlr4/antlr-4.7.2-complete.jar")
+IF (${CMAKE_HOST_SYSTEM_NAME} STREQUAL Windows)

-SET(ANTLR4_JAR_LOCATION "${CMAKE_HOME_DIRECTORY}/packages/tools/antlr4/antlr-4.7.2-complete.jar")
-
-IF (${CMAKE_HOST_SYSTEM_NAME} STREQUAL Windows)
-    SET(ENV{BOOST_ROOT} "${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-win")
-    INCLUDE_DIRECTORIES("${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-win/include/boost-1_70")
-    LINK_DIRECTORIES("${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-win/lib")
-
-    IF (${BPKG_64BIT})
-        IF (${BPKG_DEBUG})
-            SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/debug/lib/cmake/antlr4")
-            SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/debug/lib/cmake/antlr4")
-        ELSE ()
-            SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/release/lib/cmake/antlr4")
-            SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/release/lib/cmake/antlr4")
+    IF (${MSVC})
+        SET(ENV{BOOST_ROOT} "${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-win")
+        INCLUDE_DIRECTORIES("${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-win/include/boost-1_70")
+        LINK_DIRECTORIES("${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-win/lib")
+        IF (${MSVC})
+            IF (${BPKG_64BIT})
+                IF (${BPKG_DEBUG})
+                    SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/debug/lib/cmake/antlr4")
+                    SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/debug/lib/cmake/antlr4")
+                ELSE ()
+                    SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/release/lib/cmake/antlr4")
+                    SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x64/release/lib/cmake/antlr4")
+                ENDIF ()
+            ELSE ()
+                IF (${BPKG_DEBUG})
+                    SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/debug/lib/cmake/antlr4")
+                    SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/debug/lib/cmake/antlr4")
+                ELSE ()
+                    SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/release/lib/cmake/antlr4")
+                    SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/release/lib/cmake/antlr4")
+                ENDIF ()
+            ENDIF ()
         ENDIF ()
-    ELSE ()
-        IF (${BPKG_DEBUG})
-            SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/debug/lib/cmake/antlr4")
-            SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/debug/lib/cmake/antlr4")
-        ELSE ()
-            SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/release/lib/cmake/antlr4")
-            SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-win/x86/release/lib/cmake/antlr4")
-        ENDIF ()
+    ELSEIF (${MINGW})
+        SET(ENV{BOOST_ROOT} "${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-mingw")
+        INCLUDE_DIRECTORIES("${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-mingw/include")
+        LINK_DIRECTORIES("${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-mingw/lib")
+        LIST(APPEND Boost_LIBRARIES libboost_filesystem.a
+                libboost_regex.a)
+        SET(antlr4-runtime_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-mingw/x64/lib/cmake/antlr4")
+        SET(antlr4-generator_DIR "${CMAKE_HOME_DIRECTORY}/packages/libs/antlr4-runtime-cpp-4.7.2-mingw/x64/lib/cmake/antlr4")
     ENDIF ()
 ELSEIF (${CMAKE_HOST_SYSTEM_NAME} STREQUAL Linux)
     SET(ENV{BOOST_ROOT} "${CMAKE_HOME_DIRECTORY}/packages/libs/boost-1.70.0-linux")


Added better debug output when rospack fails

--- core/rosbuild/public.cmake
+++ core/rosbuild/public.cmake
@@ -107,6 +107,7 @@
   if (_rospack_failed)
     #set(_rospack_${_varname} "")
     #set(${_prefix}_${_varname} "" CACHE INTERNAL "")
+    message("Failed to invoke ${ROSPACK_EXE} ${ARGN} ${pkgname}")
     message("${_rospack_err_ignore}")
     message("${_rospack_invoke_result}")
     message(FATAL_ERROR "\nFailed to invoke rospack to get compile flags for package '${pkgname}'.  Look above for errors from rospack itself.  Aborting.  Please fix the broken dependency!\n")


Split off 7.12.18

Split off 7.12.18

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

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


CR #421

CR #421

--- CommonDate.cmake
+++ CommonDate.cmake
@@ -2,11 +2,9 @@
 if(NOT COMMON_DATE)
   if(WIN32)
     execute_process(COMMAND "cmd" " /C date /T" OUTPUT_VARIABLE COMMON_DATE)
-    string(REGEX REPLACE "(..)/(..)/..(..).*" "\\1/\\2/\\3"
-      COMMON_DATE ${COMMON_DATE})
   else()
     execute_process(COMMAND "date" "+%d/%m/%Y" OUTPUT_VARIABLE COMMON_DATE)
-    string(REGEX REPLACE "(..)/(..)/..(..).*" "\\1/\\2/\\3"
-      COMMON_DATE ${COMMON_DATE})
   endif()
+  string(REGEX REPLACE "(..)/(..)/..(..).*" "\\1/\\2/\\3"
+    COMMON_DATE ${COMMON_DATE})
 endif()


moved DartConfig.cmake to top-level (workaround)

--- DartConfig.cmake
+++ DartConfig.cmake
@@ -1,5 +0,0 @@
-SET (DROP_METHOD xmlrpc)
-SET (DROP_SITE "http://makalu:8081")
-SET (DROP_LOCATION "MITK")
-SET (BUILDNAME NewBuildSystem)
-


Fixed FindOpenSG for VS 2012.

Fixed FindOpenSG for VS 2012.

--- FindOpenSG.cmake
+++ FindOpenSG.cmake
@@ -121,7 +121,6 @@

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

-
 IF(__OpenSG_IN_CACHE)
 	# values are already in the cache

@@ -132,26 +131,11 @@
 		SET(OpenSG_LIBRARIES ${OpenSG_LIBRARIES} ${OpenSG_${COMPONENT}_LIBRARY})
 	ENDFOREACH(COMPONENT)

-	SET(OpenSG_INCLUDE_DIRS "${OpenSG_INCLUDE_DIR}" "${OpenSG_INCLUDE_DIR}/OpenSG")
+	SET(OpenSG_INCLUDE_DIRS "${OpenSG_INCLUDE_DIR}" "${OpenSG_INCLUDE_DIR}/OpenSG" CACHE STRING "")

 ELSE(__OpenSG_IN_CACHE)
 	# need to search for libs
-
-	# Visual Studio x32
-	if (VS32)
-	  # Visual Studio x32
-	  SET( __OpenSG_INCLUDE_SEARCH_DIRS
-		$ENV{OPENSG_ROOT}/include
-		${OPENSG_ROOT}/include
-		${LIBRARIES_DIR}/opensg/include
-		${CMAKE_SOURCE_DIR}/../OpenSG/include )
-	  SET( __OpenSG_LIBRARIES_SEARCH_DIRS
-		$ENV{OPENSG_ROOT}/lib
-		${OPENSG_ROOT}/lib
-		${LIBRARIES_DIR}/opensg/lib
-		${CMAKE_SOURCE_DIR}/../opensg/lib )
-	else (VS32)
-	  if (VS64)
+	  if (WIN32)
 		# Visual Studio x64
 		SET( __OpenSG_INCLUDE_SEARCH_DIRS
 		$ENV{OPENSG_ROOT}/include
@@ -163,7 +147,7 @@
 		${OPENSG_ROOT}/lib
 		  ${LIBRARIES_DIR}/opensg_x64/lib
 		  ${CMAKE_SOURCE_DIR}/../opensg_x64/lib )
-	  else (VS64)
+	  else ()
 		# Linux or Mac
 		SET( __OpenSG_INCLUDE_SEARCH_DIRS
 		  "/usr/local"
@@ -174,10 +158,8 @@
 		  "/usr/local"
 		  "/usr/local/lib"
 		  "/opt/boxen/homebrew"
-		  "/opt/boxen/homebrew/lib" )
-	  endif(VS64)
-	endif (VS32)
-
+		 "/opt/boxen/homebrew/lib" )
+	endif()

 	# handle input variable OPENSG_INCLUDE_DIR
 	IF(OPENSG_INCLUDE_DIR)
@@ -260,7 +242,7 @@
 	#  End finding OpenSG libraries
 	# ------------------------------------------------------------------------

-	SET(OpenSG_INCLUDE_DIRS "${OpenSG_INCLUDE_DIR}" "${OpenSG_INCLUDE_DIR}/OpenSG")
+	SET(OpenSG_INCLUDE_DIRS "${OpenSG_INCLUDE_DIR}" "${OpenSG_INCLUDE_DIR}/OpenSG" CACHE STRING "")

 	SET(OpenSG_FOUND FALSE)


improved error messages

improved error messages

--- VigraAddExternal.cmake
+++ VigraAddExternal.cmake
@@ -44,7 +44,6 @@
     endif()

     # Try to check out the dependency.
-    message(STATUS "Cloning the '${AD_NAME}' dependency.")
     execute_process(COMMAND "${GIT_EXECUTABLE}" "clone" "${AD_REPO}" "${AD_NAME}"
       WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/external"
       RESULT_VARIABLE RES
@@ -53,7 +52,7 @@
     if(RES)
       message(FATAL_ERROR "The clone command for '${AD_NAME}' failed. The output is:\n====\n${OUT}\n====")
     endif()
-    message(STATUS "'${AD_NAME}' was successfully cloned. The git clone is located at '${PROJECT_SOURCE_DIR}/external/${AD_NAME}'")
+    message(STATUS "'${AD_NAME}' was successfully cloned into '${PROJECT_SOURCE_DIR}/external/${AD_NAME}'")

     if(AD_REPO)
       set(DEPENDENCY_${AD_NAME}_REPO "${AD_REPO}" CACHE STRING "")


another way to do this?

another way to do this?

--- prototype2/Utilities.cmake
+++ prototype2/Utilities.cmake
@@ -12,7 +12,7 @@
     ${EFU_COMMON_LIBS}
     eventlib)
   if(${CMAKE_COMPILER_IS_GNUCXX})
-    add_linker_flags(${module_name} "--no-as-needed")
+    add_linker_flags(${module_name} "-Wl,--no-as-needed")
   endif()
   enable_coverage(${module_name})
   install(TARGETS ${module_name} DESTINATION bin)


Loose version format parsing

Loose version format parsing

The CI can not set the version in a 0.0.0.0 format with
the PF_VERSION cmake variable. This is not consistent
with other internal project and not user friendly.

Allow the version tag to be any string composed of 4 numbers separated by any
non numeric character.

Signed-off-by: Kevin Rocard <f6672397850e914591889d29dcaf9077eb1a8a4f@intel.com>

--- SetVersion.cmake
+++ SetVersion.cmake
@@ -58,7 +58,7 @@
 endif()

 # Parse the version number to extract the various fields
-set(REGEX "^v([0-9]+)\\.([0-9]+)\\.([0-9]+)-([0-9]+)(-(g[0-9a-f]+)?)?(-(dirty)?)?$")
+set(REGEX "([0-9]+).([0-9]+).([0-9]+).([0-9]+)(-(g[0-9a-f]+)?)?(-(dirty)?)?")
 if(PF_VERSION MATCHES ${REGEX})
     set(PF_VERSION_MAJOR ${CMAKE_MATCH_1})
     set(PF_VERSION_MINOR ${CMAKE_MATCH_2})


r9649/sofa : ADD: CMake - Windows only : boost DLLs are automatically copied if boost is needed

Former-commit-id: bd8840b1c0889b1b6a84d2bb203a55a89e16b148

--- sofa-dependencies.cmake
+++ sofa-dependencies.cmake
@@ -130,6 +130,24 @@
 			file(COPY ${sharedObject} DESTINATION "${SOFA_BIN_DIR}")
 		endforeach()
 	endif()
+
+	## boost dlls
+	if(NOT SOFA-EXTERNAL_HAVE_BOOST STREQUAL "")
+		file(GLOB sharedObjects "${Boost_LIBRARY_DIRS}/boost_graph*.dll")
+		foreach(sharedObject ${sharedObjects})
+			file(COPY ${sharedObject} DESTINATION "${SOFA_BIN_DIR}")
+		endforeach()
+
+		file(GLOB sharedObjects "${Boost_LIBRARY_DIRS}/boost_thread*.dll")
+		foreach(sharedObject ${sharedObjects})
+			file(COPY ${sharedObject} DESTINATION "${SOFA_BIN_DIR}")
+		endforeach()
+
+		file(GLOB sharedObjects "${Boost_LIBRARY_DIRS}/boost_system*.dll")
+		foreach(sharedObject ${sharedObjects})
+			file(COPY ${sharedObject} DESTINATION "${SOFA_BIN_DIR}")
+		endforeach()
+	endif()
 endif()

 # copying default config files


r9294/sofa : ADD: automatic copy external and qt shared objects (dll) on Windows

Former-commit-id: 6bbc2dc6358c30b7ebeea5733c077f751dd068bd

--- sofa-dependencies.cmake
+++ sofa-dependencies.cmake
@@ -1,5 +1,5 @@
 cmake_minimum_required(VERSION 2.8)
-
+if(false)
 # extlibs
 add_subdirectory("${SOFA_EXTLIBS_DIR}/newmat")
 add_subdirectory("${SOFA_EXTLIBS_DIR}/tinyxml")
@@ -71,6 +71,22 @@
 endforeach()

 # dev-plugins
-foreach(devplugin ${SOFA_DEV_PLUGINS})
-	add_subdirectory("${${devplugin}}")
-endforeach()+foreach(devPlugin ${SOFA_DEV_PLUGINS})
+	add_subdirectory("${${devPlugin}}")
+endforeach()
+endif()
+
+# copy external shared objects (.dll) to the Sofa bin directory
+if(WIN32)
+	## common external dlls
+	file(GLOB sharedObjects "${SOFA_BIN_DIR}/dll_x86/*.dll")
+	foreach(sharedObject ${sharedObjects})
+		file(COPY ${sharedObject} DESTINATION "${SOFA_BIN_DIR}")
+	endforeach()
+
+	## qt dlls
+	file(GLOB sharedObjects "${EXTERNAL_QT_PATH}/bin/*.dll")
+	foreach(sharedObject ${sharedObjects})
+		file(COPY ${sharedObject} DESTINATION "${SOFA_BIN_DIR}")
+	endforeach()
+endif()


All: Bump version number

All: Bump version number

--- version.cmake
+++ version.cmake
@@ -2,9 +2,9 @@
 	set(PROJECT_NAME "mGBA")
 endif()
 set(LIB_VERSION_MAJOR 0)
-set(LIB_VERSION_MINOR 5)
+set(LIB_VERSION_MINOR 6)
 set(LIB_VERSION_PATCH 0)
-set(LIB_VERSION_ABI 0.5)
+set(LIB_VERSION_ABI 0.6)
 set(LIB_VERSION_STRING ${LIB_VERSION_MAJOR}.${LIB_VERSION_MINOR}.${LIB_VERSION_PATCH})
 set(SUMMARY "${PROJECT_NAME} Game Boy Advance Emulator")


Split off 8.0.8

Split off 8.0.8

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

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


Regex simplification & fixed typo.

Regex simplification & fixed typo.

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

 if (GIT_FOUND)
 	execute_process(
-		COMMAND ${GIT_EXECUTABLE} describe --always
+		COMMAND ${GIT_EXECUTABLE} describe --always --long
 		RESULT_VARIABLE GIT_DESCRIBE_EXIT
 		OUTPUT_VARIABLE MBC_VERSION
 		OUTPUT_STRIP_TRAILING_WHITESPACE
@@ -19,8 +19,7 @@
 	endif()
 endif()

-STRING(REGEX REPLACE "^v([0-9]+)\\.([0-9]+)-([0-9]+)-[a-f0-9]+$" "\\1.\\2.\\3" MBC_VERSION "${MBC_VERSION}")
-STRING(REGEX REPLACE "^v([0-9]+)\\.([0-9]+)$" "\\1.\\2.0" MBC_VERSION "${MBC_VERSION}")
+STRING(REGEX REPLACE "^v([0-9]+)\\.([0-9]+)-([0-9]+)-g[a-f0-9]+$" "\\1.\\2.\\3" MBC_VERSION "${MBC_VERSION}")
 STRING(REGEX REPLACE "^([a-f0-9]+)$" "#\\1" MBC_VERSION "${MBC_VERSION}")

 configure_file(version.c.in version.c ESCAPE_QUOTES @ONLY)


Split off 7.8.20

Split off 7.8.20

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

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


Fixes #25

Fixes #25

--- ios.toolchain.cmake
+++ ios.toolchain.cmake
@@ -197,16 +197,21 @@

 set(PLATFORM_INT "${PLATFORM}" CACHE STRING "Type of platform for which the build targets.")

+# Handle the case where we are targeting iOS and a version above 10.0 (32-bit support dropped officially)
+if(PLATFORM_INT STREQUAL "OS" AND DEPLOYMENT_TARGET VERSION_GREATER_EQUAL 10.0)
+  set(PLATFORM_INT "OS64")
+  message(STATUS "Targeting minimum SDK version ${DEPLOYMENT_TARGET}. Dropping 32-bit support.")
+elseif(PLATFORM_INT STREQUAL "SIMULATOR" AND DEPLOYMENT_TARGET VERSION_GREATER_EQUAL 10.0)
+  set(PLATFORM_INT "SIMULATOR64")
+  message(STATUS "Targeting minimum SDK version ${DEPLOYMENT_TARGET}. Dropping 32-bit support.")
+endif()
+
 # Determine the platform name and architectures for use in xcodebuild commands
 # from the specified PLATFORM name.
 if(PLATFORM_INT STREQUAL "OS")
   set(SDK_NAME iphoneos)
   if(NOT ARCHS)
-    if (XCODE_VERSION VERSION_GREATER 10.0)
-      set(ARCHS armv7 armv7s arm64) # Add arm64e when Apple have fixed the integration issues with it, libarclite_iphoneos.a is currently missung bitcode markers for example
-    else()
-      set(ARCHS armv7 armv7s arm64)
-    endif()
+    set(ARCHS armv7 armv7s arm64)
   endif()
 elseif(PLATFORM_INT STREQUAL "OS64")
   set(SDK_NAME iphoneos)


Added mingw support. (5)

Added mingw support. (5)

--- run_ctest.cmake
+++ run_ctest.cmake
@@ -70,10 +70,10 @@
             endif()
             if($ENV{CC} STREQUAL "x86_64-w64-mingw32-gcc" )
                 set(CC_ARCH "x86_64")
-                list(APPEND CONFIGURE_OPTIONS "-DCMAKE_TOOLCHAIN_FILE=ci-tools/toolchain/toolchain-x86_64-w64-mingw32.cmake")
+                list(APPEND CONFIGURE_OPTIONS "OPTIONS -DCMAKE_TOOLCHAIN_FILE=ci-tools/toolchain/toolchain-x86_64-w64-mingw32.cmake")
             elseif($ENV{CC} STREQUAL "i686-w64-mingw32-gcc")
                 set(CC_ARCH "x86")
-                list(APPEND CONFIGURE_OPTIONS "-DCMAKE_TOOLCHAIN_FILE=ci-tools/toolchain/toolchain-i686-w64-mingw32.cmake")
+                list(APPEND CONFIGURE_OPTIONS "OPTIONS -DCMAKE_TOOLCHAIN_FILE=ci-tools/toolchain/toolchain-i686-w64-mingw32.cmake")
             endif()
             #Warmup wine or test timings are going to be wrong
             exec_program(wine ARGS version OUTPUT_VARIABLE WINE_VERSION)
@@ -158,7 +158,6 @@
 set(CTEST_GIT_COMMAND "git")

 set(CTEST_CONFIGURATION_TYPE "Debug")
-list(APPEND CONFIGURE_OPTIONS "-DCI_FLAGS=-fno-omit-frame-pointer")

 # Default
 set(CTEST_BUILD_NAME "${CI_BUILD_NAME}-default")
@@ -166,7 +165,7 @@
 ctest_start(Continuous)
 ctest_update()
 ctest_read_custom_files(${CTEST_SOURCE_DIRECTORY})
-ctest_configure(OPTIONS ${CONFIGURE_OPTIONS})
+ctest_configure(${CONFIGURE_OPTIONS})
 ctest_build()
 ctest_test()
 ctest_submit(PARTS Start Update Configure Build Test Upload Submit)
@@ -267,7 +266,7 @@
     ctest_start(Continuous)
     ctest_update()
     ctest_read_custom_files(${CTEST_SOURCE_DIRECTORY})
-    ctest_configure(OPTIONS ${CONFIGURE_OPTIONS})
+    ctest_configure(${CONFIGURE_OPTIONS})
     ctest_build()
     ctest_test()
     ctest_memcheck()
@@ -319,7 +318,7 @@
     ctest_start(Continuous)
     ctest_update()
     ctest_read_custom_files(${CTEST_SOURCE_DIRECTORY})
-    ctest_configure(OPTIONS "-DCI_FLAGS=${CC_ASAN_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
+    ctest_configure(OPTIONS "-DCI_FLAGS=${CC_ASAN_FLAGS} -fsanitize=address")
     ctest_build()
     ctest_test()
     ctest_memcheck()
@@ -342,7 +341,7 @@
     ctest_start(Continuous)
     ctest_update()
     ctest_read_custom_files(${CTEST_SOURCE_DIRECTORY})
-    ctest_configure(OPTIONS "-DCI_FLAGS=-fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer")
+    ctest_configure(OPTIONS "-DCI_FLAGS=-fsanitize=memory -fsanitize-memory-track-origins")
     ctest_build()
     ctest_test()
     ctest_memcheck()
@@ -377,7 +376,7 @@
     ctest_start(Continuous)
     ctest_update()
     ctest_read_custom_files(${CTEST_SOURCE_DIRECTORY})
-    ctest_configure(OPTIONS "-DCI_FLAGS=${CC_TSAN_FLAGS} -fsanitize=thread -fno-omit-frame-pointer")
+    ctest_configure(OPTIONS "-DCI_FLAGS=${CC_TSAN_FLAGS} -fsanitize=thread")
     ctest_build()
     ctest_test()
     ctest_memcheck()
@@ -403,7 +402,7 @@
     ctest_start(Continuous)
     ctest_update()
     ctest_read_custom_files(${CTEST_SOURCE_DIRECTORY})
-    ctest_configure(OPTIONS "-DCI_FLAGS=${CC_UBSAN_FLAGS} -fno-omit-frame-pointer")
+    ctest_configure(OPTIONS "-DCI_FLAGS=${CC_UBSAN_FLAGS}")
     ctest_build()
     ctest_test()
     ctest_memcheck()


For Travis CI - Fix Emscripten CI build with Debug build configuration.

--- CMake/Modules/Urho3D-CMake-common.cmake
+++ CMake/Modules/Urho3D-CMake-common.cmake
@@ -699,8 +699,8 @@
         add_custom_command (TARGET ${TARGET_NAME} POST_BUILD COMMAND scp $<TARGET_FILE:${TARGET_NAME}> ${URHO3D_SCP_TO_TARGET} || exit 0
             COMMENT "Scp-ing ${TARGET_NAME} executable to target system")
     endif ()
+    # Need to check if the destination variable is defined first because this macro could be called by external project that does not wish to install anything
     if (DEST_RUNTIME_DIR)
-        # Need to check if the destination variable is defined first because this macro could be called by external project that does not wish to install anything
         if (EMSCRIPTEN)
             # todo: Just use generator-expression when CMake minimum version is 3.0
             if (CMAKE_VERSION VERSION_LESS 3.0)
@@ -710,10 +710,10 @@
                 set (LOCATION $<TARGET_FILE_DIR:${TARGET_NAME}>)
             endif ()
             unset (FILES)
-            foreach (EXT data html html.mem js)
+            foreach (EXT data html html.map html.mem js)
                 list (APPEND FILES ${LOCATION}/${TARGET_NAME}.${EXT})
             endforeach ()
-            install (FILES ${FILES} DESTINATION ${DEST_BUNDLE_DIR})
+            install (FILES ${FILES} DESTINATION ${DEST_BUNDLE_DIR} OPTIONAL)    # We get html.map or html.mem depend on the build configuration
         else ()
             install (TARGETS ${TARGET_NAME} RUNTIME DESTINATION ${DEST_RUNTIME_DIR} BUNDLE DESTINATION ${DEST_BUNDLE_DIR})
         endif ()


cmake: Use ${VULKAN_SDK} environment variable paths prior to the system default paths.

--- cmake/FindVulkan.cmake
+++ cmake/FindVulkan.cmake
@@ -31,21 +31,21 @@
 if(WIN32)
   find_path(Vulkan_INCLUDE_DIR
     NAMES vulkan/vulkan.h
-    PATHS
+    HINTS
       "$ENV{VULKAN_SDK}/Include"
     )

   if(CMAKE_SIZEOF_VOID_P EQUAL 8)
     find_library(Vulkan_LIBRARY
       NAMES vulkan-1
-      PATHS
+      HINTS
         "$ENV{VULKAN_SDK}/Lib"
         "$ENV{VULKAN_SDK}/Bin"
         )
   elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
     find_library(Vulkan_LIBRARY
       NAMES vulkan-1
-      PATHS
+      HINTS
         "$ENV{VULKAN_SDK}/Lib32"
         "$ENV{VULKAN_SDK}/Bin32"
         NO_SYSTEM_ENVIRONMENT_PATH
@@ -54,11 +54,11 @@
 else()
     find_path(Vulkan_INCLUDE_DIR
       NAMES vulkan/vulkan.h
-      PATHS
+      HINTS
         "$ENV{VULKAN_SDK}/include")
     find_library(Vulkan_LIBRARY
       NAMES vulkan
-      PATHS
+      HINTS
         "$ENV{VULKAN_SDK}/lib")
 endif()


Whitespace

Whitespace

--- cmake/ROCSMacros.cmake
+++ cmake/ROCSMacros.cmake
@@ -65,11 +65,11 @@
 	# Get and add linked module libraries
 	if(NOT "${ARG_LINK_MODULES}" STREQUAL "")
 		foreach(I IN LISTS ARG_LINK_MODULES)
-			add_dependencies(rocs_${ARG_NAME} rocs_${I})
+			add_dependencies(rocs_${ARG_NAME} rocs_${I})
 			target_link_libraries(rocs_${ARG_NAME} rocs_${I})
 		endforeach(I)
 	endif(NOT "${ARG_LINK_MODULES}" STREQUAL "")
-
+
 	# Install
 	install(TARGETS rocs_${ARG_NAME} LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
 	install(FILES ${_HEADERS_} DESTINATION include/rocs/${ARG_NAME})
@@ -120,18 +120,18 @@
 		add_executable(${_TEST_TARGET_} cpp/tests/${ARG_NAME}.cc)
 		target_link_libraries(${_TEST_TARGET_} boost_unit_test_framework)
 		target_link_libraries(${_TEST_TARGET_} rocs_${MODULE_NAME})
-
+
 		# Say where it should be built
 		set_target_properties(${_TEST_TARGET_} PROPERTIES
 				RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/tests/")

 		# Make output of CTest verbose on failure
- 		#$ENV{CTEST_OUTPUT_ON_FAILURE} = 1;
+ 		#$ENV{CTEST_OUTPUT_ON_FAILURE} = 1;

 		# Add the test
-		enable_testing()
-		get_target_property(LOC ${_TEST_TARGET_} LOCATION)
-		add_test(${_TEST_TARGET_} "${LOC}")
+		enable_testing()
+		get_target_property(LOC ${_TEST_TARGET_} LOCATION)
+		add_test(${_TEST_TARGET_} "${LOC}")

 	endif(ROCS_BUILD_TESTS)
 endmacro(add_rocs_cpp_test_suite)


cmake: create zephyr_get_targets() functions

Fixes: #28197

zephyr_get_targets() provides a mechanism for retrieving all CMake
targets for a given directory and below.

This is useful when including external modules where only libraries
required by Zephyr should be built.

For example, in openthread, this reduces the number of build steps and
build time significantly.

Before, 780 steps:
`time ninja -Cbuild`
[708/708] Linking CXX executable zephyr/zephyr.elf
135.08user 30.24system 0:46.21elapsed 357%CPU

After, 480 steps:
`time ninja -Cbuild`
[480/480] Linking CXX executable zephyr/zephyr.elf
84.02user 18.92system 0:30.72elapsed 335%CPU

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

--- cmake/extensions.cmake
+++ cmake/extensions.cmake
@@ -1746,3 +1746,30 @@
     set(${ARGV1} ${${ARGV1}} PARENT_SCOPE)
   endif()
 endfunction()
+
+# Usage:
+#   zephyr_get_targets(<directory> <types> <targets>)
+#
+# Get build targets for a given directory and sub-directories.
+#
+# This functions will traverse the build tree, starting from <directory>.
+# It will read the `BUILDSYSTEM_TARGETS` for each directory in the build tree
+# and return the build types matching the <types> list.
+# Example of types: OBJECT_LIBRARY, STATIC_LIBRARY, INTERFACE_LIBRARY, UTILITY.
+#
+# returns a list of targets in <targets> matching the required <types>.
+function(zephyr_get_targets directory types targets)
+    get_property(sub_directories DIRECTORY ${directory} PROPERTY SUBDIRECTORIES)
+    get_property(dir_targets DIRECTORY ${directory} PROPERTY BUILDSYSTEM_TARGETS)
+    foreach(dir_target ${dir_targets})
+      get_property(target_type TARGET ${dir_target} PROPERTY TYPE)
+      if(${target_type} IN_LIST types)
+        list(APPEND ${targets} ${dir_target})
+      endif()
+    endforeach()
+
+    foreach(directory ${sub_directories})
+        zephyr_get_targets(${directory} "${types}" ${targets})
+    endforeach()
+    set(${targets} ${${targets}} PARENT_SCOPE)
+endfunction()