attempt to fix #9

attempt to fix #9

--- cmake/BoostLibInstaller.cmake
+++ cmake/BoostLibInstaller.cmake
@@ -173,8 +173,10 @@
     if(boost_libs)
         message(STATUS "Boost libs scheduled for build: ${boost_libs}")
         set(Boost_LIBRARIES "${boost_libs}" PARENT_SCOPE)
+        set(Boost_LIBRARY_DIR "${install_dir}/${stage_dir}/lib/" CACHE STRING "" FORCE)
     else()
         set(Boost_LIBRARIES "" PARENT_SCOPE)
+        set(Boost_LIBRARY_DIR "" CACHE STRING "" FORCE)
     endif()

     # b2 headers
@@ -188,6 +190,7 @@
         message(STATUS "Headers found.")
     endif()

+    set(Boost_INCLUDE_DIR "${install_dir}" CACHE STRING "" FORCE)
     set(Boost_INCLUDE_DIRS "${install_dir}" PARENT_SCOPE)
     set(Boost_FOUND TRUE PARENT_SCOPE)


fixing FindQhull on Windows

fixing FindQhull on Windows

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

--- cmake/Modules/FindQhull.cmake
+++ cmake/Modules/FindQhull.cmake
@@ -10,7 +10,7 @@
 set(QHULL_MAJOR_VERSION 6)

 find_path(QHULL_INCLUDE_DIR
-		  NAMES libqhull.h qhull.h
+		  NAMES libqhull/libqhull.h qhull.h
           HINTS ${QHULL_ROOT} "$ENV{PROGRAMFILES}/qhull 6.2.0.1373/include"
           PATH_SUFFIXES qhull src/libqhull libqhull)


Fixed order of searching for Gamma

Fixed order of searching for Gamma

--- cmake_modules/FindGamma.cmake
+++ cmake_modules/FindGamma.cmake
@@ -21,8 +21,8 @@
     NAMES
           Gamma/Gamma.h
     PATHS
+        ${CMAKE_SOURCE_DIR}/../Gamma
         ${CMAKE_SOURCE_DIR}/../../Gamma
-        ${CMAKE_SOURCE_DIR}/../Gamma
       /usr/include
       /usr/local/include
       /opt/local/include
@@ -34,8 +34,8 @@
 	  Gamma
 	  libGamma
     PATHS
+        ${CMAKE_SOURCE_DIR}/../Gamma/build/lib
 	${CMAKE_SOURCE_DIR}/../../Gamma/build/lib
-        ${CMAKE_SOURCE_DIR}/../Gamma/build/lib
       /usr/lib
       /opt/local/lib
       /usr/local/lib


Make log message more useful by showing target name

--- prosoft/core/config/cmake/config_sanitizer.cmake
+++ prosoft/core/config/cmake/config_sanitizer.cmake
@@ -45,7 +45,7 @@
         ps_core_config_xcode_asan()
         if(HAVE_XCODE_ADDRESS_SANITIZER)
             set (HAVE_ADDRESS_SANITIZER true)
-            message(STATUS "Xcode sanitizer enabled")
+            message(STATUS "Xcode sanitizer enabled: ${TARGET_NAME}")
         endif()
     endif()


Fixed compatibility theme.

Fixed compatibility theme.

--- client/Android/FreeRDPCore/AndroidManifest.xml.cmake
+++ client/Android/FreeRDPCore/AndroidManifest.xml.cmake
@@ -65,7 +65,7 @@
 				android:windowSoftInputMode="stateHidden">
 			</activity>
 			<activity android:name=".presentation.SessionActivity"
-				android:theme="@android:style/Theme.Black.NoTitleBar"
+				android:theme="@style/Theme.AppCompat"
 				android:configChanges="orientation|keyboardHidden|keyboard"
 				android:windowSoftInputMode="adjustResize">
 			</activity>


port to rosunit, #3112

port to rosunit, #3112

--- core/rosbuild/private.cmake
+++ core/rosbuild/private.cmake
@@ -148,17 +148,17 @@

   # Create target for this test
-  # We use rostest to call the executable to get process control, #1629
+  # We use rosunit to call the executable to get process control, #1629, #3112
   # But don't depend on the gtest executable if rosbuild_test_nobuild is set, #3008
   if(NOT rosbuild_test_nobuild)
     add_custom_target(test_${_testname}
-                      COMMAND rostest --bare --bare-name=${_testname} --bare-limit=${_gtest_TIMEOUT} ${EXECUTABLE_OUTPUT_PATH}/${exe}
+                      COMMAND ${rosunit_path}/bin/rosunit --name=${_testname} --time-limit=${_gtest_TIMEOUT} ${EXECUTABLE_OUTPUT_PATH}/${exe}
                       DEPENDS ${EXECUTABLE_OUTPUT_PATH}/${exe}
                       WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
                       VERBATIM)
   else(NOT rosbuild_test_nobuild)
     add_custom_target(test_${_testname}
-                      COMMAND rostest --bare --bare-name=${_testname} --bare-limit=${_gtest_TIMEOUT} ${EXECUTABLE_OUTPUT_PATH}/${exe}
+                      COMMAND ${rosunit_path}/bin/rosunit --name=${_testname} --time-limit=${_gtest_TIMEOUT} ${EXECUTABLE_OUTPUT_PATH}/${exe}
                       WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
                       VERBATIM)
   endif(NOT rosbuild_test_nobuild)
@@ -258,7 +258,7 @@
   # Create target for this test
   # We use rostest to call the executable to get process control, #1629
   add_custom_target(pyunit_${_testname}
-                    COMMAND rostest --bare --bare-name=${_testname} --bare-limit=${_pyunit_TIMEOUT} -- python ${file} ${_covarg}
+                    COMMAND ${rosunit_path}/bin/rosunit --name=${_testname} --time-limit=${_pyunit_TIMEOUT} -- ${file} ${_covarg}
                     DEPENDS ${file}
                     WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
                     VERBATIM)


cmake: remove debug message

cmake: remove debug message

--- cmake/ComplexLibrary.cmake
+++ cmake/ComplexLibrary.cmake
@@ -78,7 +78,6 @@
 		add_library(${${PREFIX}_MODULE} ${${PREFIX}_SOURCES})
 	endif()
 	if (${PREFIX}_EXPORT)
-		message("exporting ${${PREFIX}_MODULE}")
 		export_complex_library(LIBNAME ${${PREFIX}_MODULE})
 	endif()


fix boost include headers

fix boost include headers

--- cmake/External_boost.cmake
+++ cmake/External_boost.cmake
@@ -2,10 +2,9 @@
   PREFIX BOOST
   URL http://sourceforge.net/projects/boost/files/boost-binaries/1.50.0/boost_1_50_headers.zip/download
   URL_MD5 1605dc6085cb2dc778ef5ab6c0e59083
-  SOURCE_DIR ${INSTALL_DIR}/BOOST/include/
+  SOURCE_DIR ${INSTALL_DIR}/BOOST/include/boost
   CONFIGURE_COMMAND ""
   BUILD_COMMAND ""
   INSTALL_COMMAND "" )

-
 set(Boost_INCLUDE_DIRS ${INSTALL_DIR}/BOOST/include)


make boost library hosted on our server

make boost library hosted on our server

--- cmake/external/boost.cmake
+++ cmake/external/boost.cmake
@@ -17,7 +17,7 @@
 set(BOOST_PROJECT       "extern_boost")
 set(BOOST_VER           "1.41.0")
 set(BOOST_TAR           "boost_1_41_0")
-set(BOOST_URL           "http://sourceforge.net/projects/boost/files/boost/${BOOST_VER}/${BOOST_TAR}.tar.gz")
+set(BOOST_URL           "http://paddlepaddledeps.s3-website-us-west-1.amazonaws.com/${BOOST_TAR}.tar.gz")
 set(BOOST_SOURCES_DIR ${THIRD_PARTY_PATH}/boost)
 set(BOOST_DOWNLOAD_DIR  "${BOOST_SOURCES_DIR}/src/${BOOST_PROJECT}")
 set(BOOST_INCLUDE_DIR "${BOOST_DOWNLOAD_DIR}/${BOOST_TAR}" CACHE PATH "boost include directory." FORCE)


Remove the code to only build boringssl once.

--- cmake/external_rules.cmake
+++ cmake/external_rules.cmake
@@ -190,38 +190,33 @@
   message("Sub-build options: ${CMAKE_SUB_CONFIGURE_OPTIONS}")

   if(NOT ANDROID AND NOT IOS)
-    # Only build boringssl if libssl and libcrypto don't exist yet; otherwise CMake is perfectly capable of rebuilding them.
-    if (NOT EXISTS ${OPENSSL_SSL_LIBRARY} OR NOT EXISTS ${OPENSSL_CRYPTO_LIBRARY})
-      execute_process(
-        COMMAND ${ENV_COMMAND} cmake -DOPENSSL_NO_ASM=TRUE ${CMAKE_SUB_CONFIGURE_OPTIONS} ../boringssl/src
-        WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/external/src/boringssl-build
-        RESULT_VARIABLE boringssl_configure_status
-      )
-      if (boringssl_configure_status AND NOT boringssl_configure_status EQUAL 0)
-        message(FATAL_ERROR "BoringSSL configure failed: ${boringssl_configure_status}")
-      endif()
-
-      # Run builds in parallel if we know how
-      if(CMAKE_GENERATOR STREQUAL "Unix Makefiles")
-        set(cmake_build_args -j)
-      endif()
-
-      execute_process(
-        COMMAND ${ENV_COMMAND} cmake --build . ${CMAKE_SUB_BUILD_OPTIONS} --target ssl crypto -- ${cmake_build_args}
-        WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/external/src/boringssl-build
-        RESULT_VARIABLE boringssl_build_status
-      )
-      if (boringssl_build_status AND NOT boringssl_build_status EQUAL 0)
-        message(FATAL_ERROR "BoringSSL build failed: ${boringssl_build_status}")
-      endif()
-
-      # Also copy the built files into OPENSSL_ROOT_DIR to handle misconfigured
-      # subprojects.
-      file(INSTALL "${OPENSSL_CRYPTO_LIBRARY}" DESTINATION "${OPENSSL_ROOT_DIR}")
-      file(INSTALL "${OPENSSL_SSL_LIBRARY}" DESTINATION "${OPENSSL_ROOT_DIR}")
-    else()
-      message("Skipping BoringSSL build during configure step, libraries already exist.")
-    endif()
+    execute_process(
+      COMMAND ${ENV_COMMAND} cmake -DOPENSSL_NO_ASM=TRUE ${CMAKE_SUB_CONFIGURE_OPTIONS} ../boringssl/src
+      WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/external/src/boringssl-build
+      RESULT_VARIABLE boringssl_configure_status
+    )
+    if (boringssl_configure_status AND NOT boringssl_configure_status EQUAL 0)
+      message(FATAL_ERROR "BoringSSL configure failed: ${boringssl_configure_status}")
+    endif()
+
+    # Run builds in parallel if we know how
+    if(CMAKE_GENERATOR STREQUAL "Unix Makefiles")
+      set(cmake_build_args -j)
+    endif()
+
+    execute_process(
+      COMMAND ${ENV_COMMAND} cmake --build . ${CMAKE_SUB_BUILD_OPTIONS} --target ssl crypto -- ${cmake_build_args}
+      WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/external/src/boringssl-build
+      RESULT_VARIABLE boringssl_build_status
+    )
+    if (boringssl_build_status AND NOT boringssl_build_status EQUAL 0)
+      message(FATAL_ERROR "BoringSSL build failed: ${boringssl_build_status}")
+    endif()
+
+    # Also copy the built files into OPENSSL_ROOT_DIR to handle misconfigured
+    # subprojects.
+    file(INSTALL "${OPENSSL_CRYPTO_LIBRARY}" DESTINATION "${OPENSSL_ROOT_DIR}")
+    file(INSTALL "${OPENSSL_SSL_LIBRARY}" DESTINATION "${OPENSSL_ROOT_DIR}")
   endif()
 endfunction()


Tidy.

Tidy.

--- cmake/install_layout.cmake
+++ cmake/install_layout.cmake
@@ -14,54 +14,60 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

 # The purpose of this file is to set the default installation layout.
-# Currently, there are 2 different installation layouts ,
-# one is used in tar.gz packages (Windows zip is about the same), another one
-# in RPMs.
-
-# There are currently 2 layouts defines, named STANDALONE (tar.gz layout)
-# and UNIX (rpm layout). To force a directory layout when invoking cmake use
-# -DINSTALL_LAYOUT=[STANDALONE|UNIX].
-# This wil use a predefined layout. There is a possibility to further fine-tune
-# installation directories. Several variables are can be overwritten
 #
-# - INSTALL_BINDIR     (directory with client executables and Unix shell scripts)
-# - INSTALL_SBINDIR    (directory with mysqld)
-# - INSTALL_LIBDIR     (directory with client end embedded libraries)
-# - INSTALL_PLUGINDIR  (directory for plugins)
-# - INSTALL_INCLUDEDIR (directory for MySQL headers)
-# - INSTALL_DOCDIR     (documentation)
-# - INSTALL_MANDIR     (man pages)
-# - INSTALL_SCRIPTDIR  (several scripts, rarely used)
-# - INSTALL_MYSQLSHAREDIR (MySQL character sets and localized error messages)
-# - INSTALL_SHAREDIR  (location of aclocal/mysql.m4)
-# - INSTALL_SQLBENCHDIR (sql-bench)
-# - INSTALL_MYSQLTESTDIR (mysql-test)
-# - INSTALL_DOCREADMEDIR (readme and similar)
+# The current choices of installation layout are:
+#
+#  STANDALONE
+#    Build with prefix=/usr/local/mysql, create tarball with install prefix="."
+#    and relative links.  Windows zip uses the same tarball layout but without
+#    the build prefix.
+#
+#  RPM
+#    Build as per default RPM layout, with prefix=/usr
+#
+#  SVR4
+#    Solaris package layout suitable for pkg* tools, prefix=/opt/mysql/mysql
+#
+# To force a directory layout, use -DINSTALL_LAYOUT=<layout>.
+#
+# The default is STANDALONE.
+#
+# There is the possibility to further fine-tune installation directories.
+# Several variables can be overwritten:
+#
+# - INSTALL_BINDIR          (directory with client executables and scripts)
+# - INSTALL_SBINDIR         (directory with mysqld)
+# - INSTALL_LIBDIR          (directory with client end embedded libraries)
+# - INSTALL_PLUGINDIR       (directory for plugins)
+# - INSTALL_INCLUDEDIR      (directory for MySQL headers)
+# - INSTALL_DOCDIR          (documentation)
+# - INSTALL_MANDIR          (man pages)
+# - INSTALL_SCRIPTDIR       (several scripts, rarely used)
+# - INSTALL_MYSQLSHAREDIR   (MySQL character sets and localized error messages)
+# - INSTALL_SHAREDIR        (location of aclocal/mysql.m4)
+# - INSTALL_SQLBENCHDIR     (sql-bench)
+# - INSTALL_MYSQLTESTDIR    (mysql-test)
+# - INSTALL_DOCREADMEDIR    (readme and similar)
 # - INSTALL_SUPPORTFILESDIR (used only in standalone installer)

-# Default installation layout on Unix is UNIX (kent wants it so)
 IF(NOT INSTALL_LAYOUT)
-  IF(WIN32)
-    SET(DEFAULT_INSTALL_LAYOUT "STANDALONE")
-  ELSE()
-    SET(DEFAULT_INSTALL_LAYOUT "UNIX")
-  ENDIF()
+  SET(DEFAULT_INSTALL_LAYOUT "STANDALONE")
 ENDIF()

-SET(INSTALL_LAYOUT "${DEFAULT_INSTALL_LAYOUT}"
-CACHE STRING  "Installation directory layout. Options are: STANDALONE (as in zip or tar.gz installer) or UNIX")
+SET(INSTALL_LAYOUT "${DEFAULT_INSTALL_LAYOUT}"
+CACHE STRING "Installation directory layout. Options are: STANDALONE (as in zip or tar.gz installer) or UNIX")

-IF(NOT INSTALL_LAYOUT MATCHES "STANDALONE")
-  IF(NOT INSTALL_LAYOUT MATCHES "UNIX")
-    # XXX not keen on this, how many more will we need? prefer to just bail...
-    IF(NOT INSTALL_LAYOUT MATCHES "SVR4")
-      SET(INSTALL_LAYOUT "${DEFAULT_INSTALL_LAYOUT}")
-    ENDIF()
-  ENDIF()
-ENDIF()
+#IF(NOT INSTALL_LAYOUT MATCHES "STANDALONE")
+#  IF(NOT INSTALL_LAYOUT MATCHES "UNIX")
+#    # XXX not keen on this, how many more will we need? prefer to just bail...
+#    IF(NOT INSTALL_LAYOUT MATCHES "SVR4")
+#      SET(INSTALL_LAYOUT "${DEFAULT_INSTALL_LAYOUT}")
+#    ENDIF()
+#  ENDIF()
+#ENDIF()

 IF(UNIX)
-  IF(INSTALL_LAYOUT MATCHES "UNIX")
+  IF(INSTALL_LAYOUT MATCHES "UNIX")
     SET(default_prefix "/usr")
   ELSEIF(INSTALL_LAYOUT MATCHES "SVR4")
     SET(default_prefix "/opt/mysql/mysql")
@@ -69,67 +75,64 @@
     SET(default_prefix "/usr/local/mysql")
   ENDIF()
   IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
-    SET(CMAKE_INSTALL_PREFIX ${default_prefix}
+    SET(CMAKE_INSTALL_PREFIX ${default_prefix}
       CACHE PATH "install prefix" FORCE)
   ENDIF()
-  SET(SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc"
+  SET(SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc"
     CACHE PATH "config directory (for my.cnf)")
   MARK_AS_ADVANCED(SYSCONFDIR)
 ENDIF()

-
-
- # STANDALONE layout
- SET(INSTALL_BINDIR_STANDALONE "bin")
- SET(INSTALL_SBINDIR_STANDALONE "bin")
- SET(INSTALL_LIBDIR_STANDALONE "lib")
- SET(INSTALL_INCLUDEDIR_STANDALONE "include")
- SET(INSTALL_PLUGINDIR_STANDALONE "lib/plugin")
- SET(INSTALL_DOCDIR_STANDALONE "docs")
- SET(INSTALL_MANDIR_STANDALONE "man")
- SET(INSTALL_MYSQLSHAREDIR_STANDALONE "share")
- SET(INSTALL_SHAREDIR_STANDALONE "share")
- SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
- SET(INSTALL_MYSQLTESTDIR_STANDALONE "mysql-test")
- SET(INSTALL_SQLBENCHROOTDIR_STANDALONE ".")
- SET(INSTALL_DOCREADMEDIR_STANDALONE ".")
- SET(INSTALL_SUPPORTFILESDIR_STANDALONE "support-files")
- SET(INSTALL_MYSQLDATADIR_STANDALONE "data")
-
- # SVR4 layout
- SET(INSTALL_BINDIR_SVR4 "bin")
- SET(INSTALL_SBINDIR_SVR4 "bin")
- SET(INSTALL_LIBDIR_SVR4 "lib")
- SET(INSTALL_INCLUDEDIR_SVR4 "include")
- SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
- SET(INSTALL_DOCDIR_SVR4 "docs")
- SET(INSTALL_MANDIR_SVR4 "man")
- SET(INSTALL_MYSQLSHAREDIR_SVR4 "share")
- SET(INSTALL_SHAREDIR_SVR4 "share")
- SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
- SET(INSTALL_MYSQLTESTDIR_SVR4 "mysql-test")
- SET(INSTALL_SQLBENCHROOTDIR_SVR4 ".")
- SET(INSTALL_DOCREADMEDIR_SVR4 ".")
- SET(INSTALL_SUPPORTFILESDIR_SVR4 "support-files")
- SET(MYSQL_DATADIR "/var/lib/mysql")
-
- # UNIX layout
- SET(INSTALL_BINDIR_UNIX "bin")
- SET(INSTALL_SBINDIR_UNIX "sbin")
- SET(INSTALL_LIBDIR_UNIX "lib/mysql")
- SET(INSTALL_PLUGINDIR_UNIX "lib/mysql/plugin")
- SET(INSTALL_DOCDIR_UNIX "share/mysql/doc/MySQL-server-${MYSQL_NO_DASH_VERSION}")
- SET(INSTALL_MANDIR_UNIX "share/mysql/man")
- SET(INSTALL_INCLUDEDIR_UNIX "include/mysql")
- SET(INSTALL_MYSQLSHAREDIR_UNIX "share/mysql")
- SET(INSTALL_SHAREDIR_UNIX "share")
- SET(INSTALL_SCRIPTDIR_UNIX "bin")
- SET(INSTALL_MYSQLTESTDIR_UNIX "mysql-test")
- SET(INSTALL_SQLBENCHROOTDIR_UNIX "")
- SET(INSTALL_DOCREADMEDIR_UNIX "share/mysql/doc/MySQL-server-${MYSQL_NO_DASH_VERSION}")
- SET(INSTALL_SUPPORTFILESDIR_UNIX "")
- SET(INSTALL_MYSQLDATADIR_UNIX "var")
+# STANDALONE layout
+SET(INSTALL_BINDIR_STANDALONE "bin")
+SET(INSTALL_SBINDIR_STANDALONE "bin")
+SET(INSTALL_LIBDIR_STANDALONE "lib")
+SET(INSTALL_INCLUDEDIR_STANDALONE "include")
+SET(INSTALL_PLUGINDIR_STANDALONE "lib/plugin")
+SET(INSTALL_DOCDIR_STANDALONE "docs")
+SET(INSTALL_MANDIR_STANDALONE "man")
+SET(INSTALL_MYSQLSHAREDIR_STANDALONE "share")
+SET(INSTALL_SHAREDIR_STANDALONE "share")
+SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
+SET(INSTALL_MYSQLTESTDIR_STANDALONE "mysql-test")
+SET(INSTALL_SQLBENCHROOTDIR_STANDALONE ".")
+SET(INSTALL_DOCREADMEDIR_STANDALONE ".")
+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_LIBDIR_RPM "lib/mysql")
+SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
+SET(INSTALL_DOCDIR_RPM "share/mysql/doc/MySQL-server-${MYSQL_NO_DASH_VERSION}")
+SET(INSTALL_MANDIR_RPM "share/mysql/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 "")
+SET(INSTALL_MYSQLDATADIR_RPM "var")
+
+# SVR4 layout
+SET(INSTALL_BINDIR_SVR4 "bin")
+SET(INSTALL_SBINDIR_SVR4 "bin")
+SET(INSTALL_LIBDIR_SVR4 "lib")
+SET(INSTALL_INCLUDEDIR_SVR4 "include")
+SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
+SET(INSTALL_DOCDIR_SVR4 "docs")
+SET(INSTALL_MANDIR_SVR4 "man")
+SET(INSTALL_MYSQLSHAREDIR_SVR4 "share")
+SET(INSTALL_SHAREDIR_SVR4 "share")
+SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
+SET(INSTALL_MYSQLTESTDIR_SVR4 "mysql-test")
+SET(INSTALL_SQLBENCHROOTDIR_SVR4 ".")
+SET(INSTALL_DOCREADMEDIR_SVR4 ".")
+SET(INSTALL_SUPPORTFILESDIR_SVR4 "support-files")
+SET(MYSQL_DATADIR "/var/lib/mysql")

 # Clear cached variables if install layout was changed
 IF(OLD_INSTALL_LAYOUT)
@@ -139,12 +142,12 @@
 ENDIF()
 SET(OLD_INSTALL_LAYOUT ${INSTALL_LAYOUT} CACHE INTERNAL "")

-# Set INSTALL_FOODIR variables for chosen  layout
-# (for example,  INSTALL_BINDIR will be defined  as
-# ${INSTALL_BINDIR_STANDALONE} by  default if STANDALONE layout is chosen)
-FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
+# Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
+# will be defined  as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
+# layout is chosen)
+FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
   MYSQLTEST SQLBENCHROOT DOCREADME SUPPORTFILES MYSQLDATA)
-  SET(INSTALL_${var}DIR  ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
+  SET(INSTALL_${var}DIR  ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
   CACHE STRING "${var} installation directory" ${FORCE})
   MARK_AS_ADVANCED(INSTALL_${var}DIR)
 ENDFOREACH()


Fix compilation on new versions of cmake

Recent cmake has changed the argument count to
qt4_create_moc_command, we need to adjust accordingly

Reviewed-by: Dario Freddi <13766fedd7fab95772ad5dbaab26aa09796881e8@ispirata.com>

--- cmake/modules/FindQt.cmake
+++ cmake/modules/FindQt.cmake
@@ -74,10 +74,18 @@

 MACRO(QT_CREATE_MOC_COMMAND infile outfile moc_flags moc_options)
   IF(QT_VERSION_MAJOR MATCHES 4)
-    QT4_CREATE_MOC_COMMAND(${infile} ${outfile} "${moc_flags}" "${moc_options}")
+    IF(CMAKE_VERSION VERSION_GREATER 2.8.11.20130607)
+      QT4_CREATE_MOC_COMMAND(${infile} ${outfile} "${moc_flags}" "${moc_options}" "")
+    ELSE(CMAKE_VERSION VERSION_GREATER 2.8.11.20130607)
+      QT4_CREATE_MOC_COMMAND(${infile} ${outfile} "${moc_flags}" "${moc_options}")
+    ENDIF(CMAKE_VERSION VERSION_GREATER 2.8.11.20130607)
   ELSE(QT_VERSION_MAJOR MATCHES 4)
     IF(QT_VERSION_MAJOR MATCHES 5)
-      QT5_CREATE_MOC_COMMAND(${infile} ${outfile} "${moc_flags}" "${moc_options}")
+      IF(CMAKE_VERSION VERSION_GREATER 2.8.11.20130607)
+        QT5_CREATE_MOC_COMMAND(${infile} ${outfile} "${moc_flags}" "${moc_options}" "")
+      ELSE(CMAKE_VERSION VERSION_GREATER 2.8.11.20130607)
+        QT5_CREATE_MOC_COMMAND(${infile} ${outfile} "${moc_flags}" "${moc_options}")
+      ENDIF(CMAKE_VERSION VERSION_GREATER 2.8.11.20130607)
     ENDIF(QT_VERSION_MAJOR MATCHES 5)
   ENDIF(QT_VERSION_MAJOR MATCHES 4)
 ENDMACRO(QT_CREATE_MOC_COMMAND)


reverting iostreams for now until we find a solution (installer)

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

--- cmake/pcl_find_boost.cmake
+++ cmake/pcl_find_boost.cmake
@@ -4,7 +4,7 @@
   set(Boost_USE_STATIC_LIBS ON)
 endif(NOT PCL_SHARED_LIBS OR WIN32)

-find_package(Boost 1.40.0 COMPONENTS system filesystem thread date_time iostreams)
+find_package(Boost 1.40.0 COMPONENTS system filesystem thread date_time)

 if(Boost_FOUND)
   # Obtain diagnostic information about Boost's automatic linking outputted


Target: don't call qi_use_lib with no depends

Change-Id: Iec4c0653884ae84ae120df92405505e7c54f308a
Reviewed-on: http://gerrit.aldebaran.lan:8080/10323
Reviewed-by: ckilner <3484075e8fc074f79e3af104726e0e82624120eb@aldebaran-robotics.com>
Tested-by: gerrit

--- cmake/qibuild/target.cmake
+++ cmake/qibuild/target.cmake
@@ -84,7 +84,9 @@

   add_executable("${name}" ${_SRC})

-  qi_use_lib("${name}" ${ARG_DEPENDS})
+  if (NOT "${ARG_DEPENDS}" STREQUAL "")
+    qi_use_lib("${name}" ${ARG_DEPENDS})
+  endif()

   #make install rules
   if(NOT ARG_NO_INSTALL)
@@ -254,7 +256,9 @@
     endif()
   endif()

-  qi_use_lib("${name}" ${ARG_DEPENDS})
+  if (NOT "${ARG_DEPENDS}" STREQUAL "")
+    qi_use_lib("${name}" ${ARG_DEPENDS})
+  endif()

   if (MSVC)
     # always postfix debug lib/bin with _d ...


COMP: removing non-existing file from list

--- openCherry/Bundles/org.opencherry.ui.qt/files.cmake
+++ openCherry/Bundles/org.opencherry.ui.qt/files.cmake
@@ -66,7 +66,7 @@
   src/internal/cherryQtDisplay.h
   src/internal/cherryQtGlobalEventFilter.h
   src/internal/cherryQtMainWindowControl.h
-  src/internal/cherryQtOpenPerspectiveAction.h
+  #src/internal/cherryQtOpenPerspectiveAction.h
   src/internal/cherryQtSash.h
   src/internal/cherryQtShowViewAction.h
   src/internal/cherryQtStylePreferencePage.h


cmake: LIBDIR in a string

cmake: LIBDIR in a string

--- cmake/Modules/LibVsLib64.cmake
+++ cmake/Modules/LibVsLib64.cmake
@@ -11,5 +11,4 @@
   set (_libdir_def "lib")
 endif()

-set (LIBDIR "${_libdir_def}" CACHE PATH "Library Directory")
-mark_as_advanced (LIBDIR)
+set (LIBDIR "${_libdir_def}" CACHE STRING "Name of library directory (not the path)")


fix: minor typo in CMakeCVDetectPython

fix: minor typo in CMakeCVDetectPython

--- cmake/OpenCVDetectPython.cmake
+++ cmake/OpenCVDetectPython.cmake
@@ -78,10 +78,10 @@
         AND NOT DEFINED ${executable}
     )
       if(NOT OPENCV_SKIP_PYTHON_WARNING)
-        message(WARNING "CMake's 'find_host_package(PythonInterp ${__python_package_version})' founds wrong Python version:\n"
+        message(WARNING "CMake's 'find_host_package(PythonInterp ${__python_package_version})' found wrong Python version:\n"
                         "PYTHON_EXECUTABLE=${PYTHON_EXECUTABLE}\n"
                         "PYTHON_VERSION_STRING=${PYTHON_VERSION_STRING}\n"
-                        "Consider specify '${executable}' variable via CMake command line or environment variables\n")
+                        "Consider providing the '${executable}' variable via CMake command line or environment variables\n")
       endif()
       ocv_clear_vars(PYTHONINTERP_FOUND PYTHON_EXECUTABLE PYTHON_VERSION_STRING PYTHON_VERSION_MAJOR PYTHON_VERSION_MINOR PYTHON_VERSION_PATCH)
       if(NOT CMAKE_VERSION VERSION_LESS "3.12")


fix cross-compilation issue with Numpy

fix cross-compilation issue with Numpy

--- cmake/OpenCVDetectPython.cmake
+++ cmake/OpenCVDetectPython.cmake
@@ -80,14 +80,29 @@
     endif()
     SET(PYTHON_PACKAGES_PATH "${_PYTHON_PACKAGES_PATH}" CACHE PATH "Where to install the python packages.")

-    if(NOT PYTHON_NUMPY_INCLUDE_DIR)
-      # Attempt to discover the NumPy include directory. If this succeeds, then build python API with NumPy
-      execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import os; os.environ['DISTUTILS_USE_SDK']='1'; import numpy.distutils; print numpy.distutils.misc_util.get_numpy_include_dirs()[0]"
-                      RESULT_VARIABLE PYTHON_NUMPY_PROCESS
-                      OUTPUT_VARIABLE PYTHON_NUMPY_INCLUDE_DIR
-                      OUTPUT_STRIP_TRAILING_WHITESPACE)
+    if(NOT CMAKE_CROSSCOMPILING)
+      if(NOT PYTHON_NUMPY_INCLUDE_DIR)
+        # Attempt to discover the NumPy include directory. If this succeeds, then build python API with NumPy
+        execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import os; os.environ['DISTUTILS_USE_SDK']='1'; import numpy.distutils; print numpy.distutils.misc_util.get_numpy_include_dirs()[0]"
+                        RESULT_VARIABLE PYTHON_NUMPY_PROCESS
+                        OUTPUT_VARIABLE PYTHON_NUMPY_INCLUDE_DIR
+                        OUTPUT_STRIP_TRAILING_WHITESPACE)

-      if(PYTHON_NUMPY_PROCESS EQUAL 0)
+        if(PYTHON_NUMPY_PROCESS EQUAL 0)
+          file(TO_CMAKE_PATH "${PYTHON_NUMPY_INCLUDE_DIR}" _PYTHON_NUMPY_INCLUDE_DIR)
+          set(PYTHON_NUMPY_INCLUDE_DIR ${_PYTHON_NUMPY_INCLUDE_DIR} CACHE PATH "Path to numpy headers")
+        endif()
+      endif()
+    else()
+      if(NOT PYTHON_NUMPY_INCLUDE_DIR)
+        message(STATUS "Cannot probe for Python/Numpy support (because we are cross-compiling OpenCV)")
+        message(STATUS "If you want to enable Python/Numpy support, set the following variables:")
+        message(STATUS "  PYTHON_EXECUTABLE")
+        message(STATUS "  PYTHON_INCLUDE_DIR")
+        message(STATUS "  PYTHON_LIBRARY")
+        message(STATUS "  PYTHON_NUMPY_INCLUDE_DIR")
+        message(STATUS "  PYTHON_NUMPY_VERSION")
+      else()
         file(TO_CMAKE_PATH "${PYTHON_NUMPY_INCLUDE_DIR}" _PYTHON_NUMPY_INCLUDE_DIR)
         set(PYTHON_NUMPY_INCLUDE_DIR ${_PYTHON_NUMPY_INCLUDE_DIR} CACHE PATH "Path to numpy headers")
       endif()
@@ -95,10 +110,16 @@

     if(PYTHON_NUMPY_INCLUDE_DIR)
       set(PYTHON_USE_NUMPY TRUE)
-      execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import numpy; print numpy.version.version"
+      if(NOT CMAKE_CROSSCOMPILING)
+        execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import numpy; print numpy.version.version"
                         RESULT_VARIABLE PYTHON_NUMPY_PROCESS
                         OUTPUT_VARIABLE PYTHON_NUMPY_VERSION
                         OUTPUT_STRIP_TRAILING_WHITESPACE)
+      else()
+        if(NOT PYTHON_NUMPY_VERSION)
+          set(PYTHON_NUMPY_VERSION "undefined - cannot be probed because of the cross-compilation")
+        endif()
+      endif()
     endif()
   endif(NOT ANDROID AND NOT IOS)


Only append -l to lib entries with no path and no -l or -L of their own

--- cmake/OpenCVGenPkgconfig.cmake
+++ cmake/OpenCVGenPkgconfig.cmake
@@ -58,7 +58,13 @@
 set(OpenCV_LIB_COMPONENTS ${OpenCV_LIB_COMPONENTS_})
 if(OpenCV_EXTRA_COMPONENTS)
   foreach(extra_component ${OpenCV_EXTRA_COMPONENTS})
-    set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} -l${extra_component}")
+    if(extra_component MATCHES "-[lL](.*)" )
+      set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} ${extra_component}")
+    elseif(extra_component MATCHES "/")
+      set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} ${extra_component}")
+    else()
+      set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} -l${extra_component}")
+    endif()
   endforeach()
 endif()


:loud_sound: add compiler version output

--- cmake/download_test_data.cmake
+++ cmake/download_test_data.cmake
@@ -42,7 +42,7 @@

 # determine the compiler (for debug and support purposes)
 if (MSVC)
-    execute_process(COMMAND ${CMAKE_CXX_COMPILER} OUTPUT_VARIABLE CXX_VERSION_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+    execute_process(COMMAND ${CMAKE_CXX_COMPILER} OUTPUT_VARIABLE CXX_VERSION_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE CXX_VERSION_RESULT ERROR_STRIP_TRAILING_WHITESPACE)
     set(CMAKE_CXX_COMPILER "${CXX_VERSION_RESULT}; MSVC_VERSION=${MSVC_VERSION}; MSVC_TOOLSET_VERSION=${MSVC_TOOLSET_VERSION}")
 else()
     execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version OUTPUT_VARIABLE CXX_VERSION_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)


Change case in FindOracle.cmake

Change case in FindOracle.cmake

Before this change, "REQUIRED" was not respected.

--- cmake/modules/FindOracle.cmake
+++ cmake/modules/FindOracle.cmake
@@ -76,6 +76,6 @@
 # Handle the QUIETLY and REQUIRED arguments and set ORACLE_FOUND to TRUE
 # if all listed variables are TRUE
 include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(ORACLE DEFAULT_MSG ORACLE_LIBRARY ORACLE_INCLUDE_DIR)
+find_package_handle_standard_args(Oracle DEFAULT_MSG ORACLE_LIBRARY ORACLE_INCLUDE_DIR)

 mark_as_advanced(ORACLE_INCLUDE_DIR ORACLE_LIBRARY)


Default to dynamically linked runtime for MSVC.

--- cmake/oskar_build_macros.cmake
+++ cmake/oskar_build_macros.cmake
@@ -348,9 +348,9 @@

 macro(OSKAR_SET_MSVC_RUNTIME)
     if (MSVC)
-        # Default to statically-linked runtime.
+        # Default to dynamically-linked runtime.
         if ("${MSVC_RUNTIME}" STREQUAL "")
-            set (MSVC_RUNTIME "static")
+            set (MSVC_RUNTIME "dynamic")
         endif ()
         # Set compiler options.
         set(vars
@@ -364,19 +364,19 @@
             CMAKE_CXX_FLAGS_RELWITHDEBINFO
         )
         if (${MSVC_RUNTIME} STREQUAL "static")
-            message(STATUS "MSVC: using statically-linked runtime.")
+            message(STATUS "MSVC: Using statically-linked runtime.")
             foreach (var ${vars})
                 if (${var} MATCHES "/MD")
                     string(REGEX REPLACE "/MD" "/MT" ${var} "${${var}}")
                 endif ()
             endforeach ()
         else ()
-            message(STATUS "MSVC: using dynamically-linked runtime.")
+            message(STATUS "MSVC: Using dynamically-linked runtime.")
             foreach (var ${vars})
                 if (${var} MATCHES "/MT")
                     string(REGEX REPLACE "/MT" "/MD" ${var} "${${var}}")
                 endif ()
-             endforeach ()
+            endforeach ()
         endif ()
     endif ()
 endmacro()


Allow to install Netgen to /Applications/custom_name on MacOS

--- cmake_modules/SuperBuild.cmake
+++ cmake_modules/SuperBuild.cmake
@@ -45,8 +45,8 @@
 #######################################################################
 # find netgen
 if(APPLE)
-  set(INSTALL_DIR /Applications CACHE PATH "Install path")
-  set(CMAKE_INSTALL_PREFIX "${INSTALL_DIR}/Netgen.app/Contents/Resources" CACHE INTERNAL "Prefix prepended to install directories" FORCE)
+  set(INSTALL_DIR /Applications/Netgen.app CACHE PATH "Install path")
+  set(CMAKE_INSTALL_PREFIX "${INSTALL_DIR}/Contents/Resources" CACHE INTERNAL "Prefix prepended to install directories" FORCE)
 else(APPLE)
   set(INSTALL_DIR /opt/netgen CACHE PATH "Install path")
   set(CMAKE_INSTALL_PREFIX "${INSTALL_DIR}" CACHE INTERNAL "Prefix prepended to install directories" FORCE)


xc7-arch: disable pin feasibility filter once agai

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

--- xc7/make/arch_define.cmake
+++ xc7/make/arch_define.cmake
@@ -24,6 +24,7 @@
       --router_lookahead connection_box_map \
       --disable_check_route on \
       --strict_checks off \
+      --clustering_pin_feasibility_filter off \
       --allow_dangling_combinational_nodes on \
       --disable_errors check_unbuffered_edges:check_route \
       --congested_routing_iteration_threshold 0.8 \


px4_fmuv5x:Fix GPS

px4_fmuv5x:Fix GPS

--- boards/px4/fmu-v5x/default.cmake
+++ boards/px4/fmu-v5x/default.cmake
@@ -12,7 +12,7 @@
 	UAVCAN_INTERFACES 2

 	SERIAL_PORTS
-		GPS1:/dev/ttyS1
+		GPS1:/dev/ttyS0
 		TEL1:/dev/ttyS6
 		TEL2:/dev/ttyS4
 		TEL3:/dev/ttyS2


may have fixed problem with paths that have spaces. At least switching from platform specific-copy to cmake builtin copy command. SHould make things more robust

--- build/modules/AddPBJTarget.cmake
+++ build/modules/AddPBJTarget.cmake
@@ -139,14 +139,10 @@
   IF(PBJ_OUTPUTCPPFILE)
     FILE(TO_NATIVE_PATH ${PBJ_GenFile} PBJ_src)
     FILE(TO_NATIVE_PATH ${PBJ_OUTPUTCPPFILE} PBJ_dst)
-    IF(WIN32)
-      SET(PBJ_COPYCOMMAND cmd /c type "${PBJ_src}" ">" "${PBJ_dst}")
-    ELSE()
-      SET(PBJ_COPYCOMMAND cp "${PBJ_src}" "${PBJ_dst}")
-    ENDIF()
+

     ADD_CUSTOM_COMMAND(OUTPUT ${PBJ_OUTPUTCPPFILE}
-                       COMMAND ${PBJ_COPYCOMMAND}
+                       COMMAND ${CMAKE_COMMAND} -E copy ${PBJ_src} ${PBJ_dst}
                        DEPENDS ${PBJ_CPP_FILES}
                        COMMENT "Creating protocol buffers cpp file")
   ENDIF()


More work.

More work.

--- mod_cmake/ModularDeps.cmake
+++ mod_cmake/ModularDeps.cmake
@@ -40,7 +40,8 @@
   add_subdirectory("${PROJECT_SOURCE_DIR}/deps/${DEP_NAME}")

   # Mark the dependency as satisfied.
-  set(${DEP_NAME}_DEP_SATISFIED YES PARENT_SCOPE)
+  set(${DEP_NAME}_DEP_SATISFIED YES CACHE)
+  mark_as_advanced(${DEP_NAME}_DEP_SATISFIED)
 endfunction()

 # Mark as included.


Revert "cmake: RequireC++11: Set minimum GCC version to 4.6"

This reverts commit 9ab49c37195bb24bb74a4a0b6a3511861a6971ab.

--- cmake/Modules/RequireC++11.cmake
+++ cmake/Modules/RequireC++11.cmake
@@ -1,8 +1,8 @@
 # Make sure the current compiler has proper C++11 support
 if(CMAKE_COMPILER_IS_GNUCXX)
 	execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
-	if(GCC_VERSION VERSION_LESS 4.6)
-		message(FATAL_ERROR "You need GCC 4.6 or later")
+	if(GCC_VERSION VERSION_LESS 4.4.1)
+		message(FATAL_ERROR "You need GCC 4.4.1 or later")
 	endif()
 	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
 elseif(MSVC)


From Pere:
Add -Od compiler option (disable optimisation) when building in Debug mode.

git-svn-id: ecbadac9c76e8cf640a0bca86f6bd796c98521e3@48231 27541ba8-7e3a-0410-8455-c3a389f83636

--- cmake/modules/SetUpWindows.cmake
+++ cmake/modules/SetUpWindows.cmake
@@ -15,10 +15,10 @@
 #---Select compiler flags----------------------------------------------------------------
 set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -Z7")
 set(CMAKE_CXX_FLAGS_RELEASE        "-O2")
-set(CMAKE_CXX_FLAGS_DEBUG          "-Z7")
+set(CMAKE_CXX_FLAGS_DEBUG          "-Od -Z7")
 set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -Z7")
 set(CMAKE_C_FLAGS_RELEASE          "-O2")
-set(CMAKE_C_FLAGS_DEBUG            "-Z7")
+set(CMAKE_C_FLAGS_DEBUG            "-Od -Z7")

 if(winrtdebug)
   set(BLDCXXFLAGS "-MDd -GR")


COMP: Use relative path for generate output header parameter

To work around CMake issue 12645:
http://www.cmake.org/Bug/view.php?id=12645

the generated header must be a relative path not an absolute. This has
been fixed in CMake 2.8.8, but the work around is easy enough not to
force a cmake upgrade.

Change-Id: Ie69235b8215e6056a14ddbe09e2e8bcd1942c8cb

--- CMake/ITKModuleMacros.cmake
+++ CMake/ITKModuleMacros.cmake
@@ -136,9 +136,15 @@

   if( ITK_MODULE_${itk-module}_ENABLE_SHARED )
+
+    # Need to use relative path to work around CMake ISSUE 12645 fixed
+    # in CMake 2.8.8, to support older versions
+    set(_export_header_file "${ITKCommon_BINARY_DIR}/${itk-module}Export.h")
+    file(RELATIVE_PATH _export_header_file ${CMAKE_CURRENT_BINARY_DIR} ${_export_header_file} )
+
     # Generate the export macro header for symbol visibility/Windows DLL declspec
     generate_export_header(${itk-module}
-      EXPORT_FILE_NAME ${ITKCommon_BINARY_DIR}/${itk-module}Export.h
+      EXPORT_FILE_NAME ${_export_header_file}
       EXPORT_MACRO_NAME ${itk-module}_EXPORT
       NO_EXPORT_MACRO_NAME ${itk-module}_HIDDEN
       STATIC_DEFINE ITK_STATIC )


Fix checking of CMake define

Fix checking of CMake define

--- src/corehost/cli/setup.cmake
+++ src/corehost/cli/setup.cmake
@@ -98,7 +98,7 @@
       endif()
 endif ()

-if (DEFINED CLI_CMAKE_PORTABLE_BUILD)
+if (CLI_CMAKE_PORTABLE_BUILD)
     add_definitions(-DFEATURE_PORTABLE_BUILD=1)
 endif ()


Add the pedantic switch via ADD_BALL_DEFINITIONS

This was not done for the MinGW platform

--- cmake/BALLCompilerSpecific.cmake
+++ cmake/BALLCompilerSpecific.cmake
@@ -91,7 +91,7 @@
 	ADD_DEFINITIONS(-Wall -Wextra -Wno-long-long)

 	IF(USE_PEDANTIC)
-		ADD_DEFINITIONS(-pedantic)
+		ADD_BALL_DEFINITIONS(-pedantic)
 	ENDIF()

 ELSEIF(MSVC)


improve finding logic in case of pkg-config not working

--- cmake/Modules/FindCppUTest.cmake
+++ cmake/Modules/FindCppUTest.cmake
@@ -26,6 +26,8 @@
                 ${PC_CPPUTEST_INCLUDE_DIRS} /usr/include)
 if(CPPUTEST_INCLUDE_DIRS MATCHES "^.*-NOTFOUND")
   set(CPPUTEST_FOUND 0)
+else()
+  set(CPPUTEST_FOUND 1)
 endif()

 # find library path


Use libc++ instead of libstdc++ for emscripten

--- cmake/emscripten.toolchain.cmake
+++ cmake/emscripten.toolchain.cmake
@@ -91,7 +91,7 @@
 set(CMAKE_SYSTEM_INCLUDE_PATH "${EMSCRIPTEN_ROOT_PATH}/system/include")

 # c++ compiler flags
-set(CMAKE_CXX_FLAGS "${ORYOL_PLATFORM_DEFINES} -std=c++11 -stdlib=libstdc++ -fno-exceptions -fstrict-aliasing -Wall -Wno-warn-absolute-paths -Wno-multichar -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -Wno-ignored-qualifiers -Wno-long-long -Wno-overloaded-virtual -Wno-deprecated-writable-strings -Wno-unused-volatile-lvalue")
+set(CMAKE_CXX_FLAGS "${ORYOL_PLATFORM_DEFINES} -std=c++11 -stdlib=libc++ -fno-exceptions -fstrict-aliasing -Wall -Wno-warn-absolute-paths -Wno-multichar -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -Wno-ignored-qualifiers -Wno-long-long -Wno-overloaded-virtual -Wno-deprecated-writable-strings -Wno-unused-volatile-lvalue")
 set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
 set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -D_DEBUG_ -D_DEBUG -DORYOL_DEBUG=1")


Never mind.  Non-working -dev tk was a dependency issue.

svn path=/trunk/; revision=10779

--- cmake/modules/drivers-init.cmake
+++ cmake/modules/drivers-init.cmake
@@ -220,8 +220,7 @@
   #"versaterm:tek:OFF:I:OFF"
   #"vlt:tek:OFF:I:OFF"
   #"xterm:tek:OFF:I:OFF"
-  # Temporarily turn off -dev tk by default until it works again.
-  "tk:tk:OFF:I:OFF"
+  "tk:tk:ON:I:OFF"
   "tkwin:tkwin:ON:E:OFF"
   "wingcc:wingcc:ON:I:OFF"
   "wxwidgets:wxwidgets:ON:I:OFF"


add debian 9

add debian 9

--- cmake/EnumerateSystem.cmake
+++ cmake/EnumerateSystem.cmake
@@ -54,6 +54,9 @@
         if(${LINUX_VER} MATCHES "8")
           set(LINUX_VER "jessie")
         endif()
+        if(${LINUX_VER} MATCHES "9")
+          set(LINUX_VER "stretch")
+        endif()
         if(${LINUX_VER} MATCHES "98")
           set(LINUX_VER "testing")
         endif()


#7 Remove un-needed curly braces

#7 Remove un-needed curly braces

--- cmake/Modules/FindASS.cmake
+++ cmake/Modules/FindASS.cmake
@@ -52,7 +52,7 @@

 # On Windows we assume that only static version of libass is used (this is the default build type)
 # so we also link against its dependencies (libass does not provide any Find*.cmake script to simplify this aspect)
-if (${CMAKE_HOST_WIN32})
+if (CMAKE_HOST_WIN32)
   find_library(FREETYPE_LIBRARY NAMES freetype
                PATHS ${LIBRARY_SEARCH_PATHS} ${FREETYPE_ROOT} $ENV{FREETYPE_ROOT}
                HINTS ${PC_LIBASS_LIBDIR} ${PC_LIBASS_LIBRARY_DIRS})


Copy glut32 on windows to installer and if doc target has been build, add it to installer too

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

--- cmake/OpenMeshPackage.cmake
+++ cmake/OpenMeshPackage.cmake
@@ -89,13 +89,6 @@
   # TODO: fillme
   # set (CPACK_NSIS_CONTACT "")

-  #set (CPACK_NSIS_CREATE_ICONS
-  #     "CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\OpenFlipper.lnk\\\" \\\"$INSTDIR\\\\OpenFlipper.exe\\\""
-  #    )
-  #set (CPACK_NSIS_DELETE_ICONS
-  #     "Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\OpenFlipper.lnk\\\""
-  #    )
-
   # Copy all shared Qt files to build binary dir
   if ( NOT Q_WS_MAC)
       if (DEFINED QT_QMAKE_EXECUTABLE)
@@ -124,6 +117,27 @@
           endif()
       endif(DEFINED QT_QMAKE_EXECUTABLE)
   endif()
+
+  # copy the glut library if it exists on windows
+  IF ( WIN32)
+    if (EXISTS ${CMAKE_BINARY_DIR}/Build/glut32.dll)
+	    install(FILES ${CMAKE_BINARY_DIR}/Build/glut32.dll
+	    DESTINATION ./
+           COMPONENT Applications
+           )
+    endif()
+  endif()
+
+   # copy the documentation if it exists
+   IF ( WIN32)
+     if (EXISTS ${CMAKE_BINARY_DIR}/Build/Doc)
+	     install(DIRECTORY ${CMAKE_BINARY_DIR}/Build/Doc
+	     DESTINATION ./
+            COMPONENT Applications
+            )
+     endif()
+   endif()
+

   # append dll's to installed package
   #if (EXISTS ${CMAKE_SOURCE_DIR}/WIN)


Fix behavior of VFSPP_USECXX11

Fix behavior of VFSPP_USECXX11

--- cmake/compiler_checks.cmake
+++ cmake/compiler_checks.cmake
@@ -18,6 +18,8 @@

 int main() {return 0;}
 	" HAS_CXX11_OVERRIDE)
+else(VFSPP_USECXX11)
+	set(HAS_CXX11_OVERRIDE FALSE)
 endif(VFSPP_USECXX11)

 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/compiler.h.in ${CMAKE_CURRENT_BINARY_DIR}/compiler.h)


Update MKLDNN to v0.21 (#3641)

Update MKLDNN to v0.21 (#3641)

* Update MKLDNN to v0.21

* Changed for MKLML asset for WIN32

--- cmake/external_mkldnn.cmake
+++ cmake/external_mkldnn.cmake
@@ -18,11 +18,12 @@

 # Includes blas 3.8.0 in mkldnn
 set(NGRAPH_MKLDNN_SHORT_VERSION 0)
-set(NGRAPH_MKLDNN_FULL_VERSION 0.20)
-set(NGRAPH_MKLDNN_ASSET_VERSION "v0.20")
-set(NGRAPH_MKLDNN_VERSION "v0.20.2")
+set(NGRAPH_MKLDNN_FULL_VERSION 0.21)
+set(NGRAPH_MKLDNN_ASSET_VERSION "v0.21")
+set(NGRAPH_MKLDNN_VERSION "v0.21")
 set(NGRAPH_MKLDNN_MKLML_VERSION "2019.0.5.20190502")
-set(NGRAPH_MKLDNN_GIT_TAG "v0.20.2")
+set(NGRAPH_MKLDNN_MKLML_WIN32_VERSION "2020.0.20190813")
+set(NGRAPH_MKLDNN_GIT_TAG "v0.21")

 #------------------------------------------------------------------------------
 # Fetch and install MKL-DNN
@@ -91,6 +92,7 @@

 set(MKLURLROOT "https://github.com/intel/mkl-dnn/releases/download/${NGRAPH_MKLDNN_ASSET_VERSION}/")
 set(MKLVERSION ${NGRAPH_MKLDNN_MKLML_VERSION})
+set(MKLWIN32VERSION ${NGRAPH_MKLDNN_MKLML_WIN32_VERSION})
 if (LINUX)
     set(MKLPACKAGE "mklml_lnx_${MKLVERSION}.tgz")
     set(MKL_SHA1_HASH 6ab490f0b358124338d04ee9383c3cbc536969d8)
@@ -98,8 +100,8 @@
     set(MKLPACKAGE "mklml_mac_${MKLVERSION}.tgz")
     set(MKL_SHA1_HASH a1c42af04f990b0e515a1c31946424b2e68fccc9)
 elseif (WIN32)
-    set(MKLPACKAGE "mklml_win_${MKLVERSION}.zip")
-    set(MKL_SHA1_HASH 9d6ff4d5a486689338158093e96c43ee442b65f0)
+    set(MKLPACKAGE "mklml_win_${MKLWIN32VERSION}.zip")
+    set(MKL_SHA1_HASH cc117093e658d50a8e4e3d1cf192c300b6bac0fc)
 endif()
 set(MKL_LIBS ${MKLML_LIB} ${OMP_LIB})
 set(MKLURL ${MKLURLROOT}${MKLPACKAGE})


cmake: mystic bug fix....

cmake: mystic bug fix....

--- cmake/qibuild/general.cmake
+++ cmake/qibuild/general.cmake
@@ -64,5 +64,6 @@
 include("qibuild/doc")

 list(INSERT CMAKE_PREFIX_PATH 0 ${QI_SDK_DIR})
+qi_set_global(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH})

 _qi_autostrap_update()


build: set minimum wayland version to 1.3.0

--- cmake/FindWayland.cmake
+++ cmake/FindWayland.cmake
@@ -28,7 +28,7 @@
 # limitations under the License.
 #=============================================================================

-set(REQUIRED_WAYLAND_CLIENT_VERSION 0.95)
+set(REQUIRED_WAYLAND_CLIENT_VERSION 1.3.0)
 include(FindPkgConfig)

 if(PKG_CONFIG_FOUND)


fixing a typo in PCL_CUDA_ADD_LIBRARY

fixing a typo in PCL_CUDA_ADD_LIBRARY

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

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -110,7 +110,7 @@
     if(PCL_SHARED_LIBS)
         # to overcome a limitation in cuda_add_library, we add manually PCLAPI_EXPORTS macro
         cuda_add_library(${_name} ${PCL_LIB_TYPE} ${ARGN} OPTIONS -arch sm_20 -DPCLAPI_EXPORTS)
-    elseif(PCL_SHARED_LIBS)
+    else(PCL_SHARED_LIBS)
         cuda_add_library(${_name} ${PCL_LIB_TYPE} ${ARGN} OPTIONS -arch sm_20)
     endif(PCL_SHARED_LIBS)


qibuild/log.cmake : add an option to NOT print "deprectated" warnings

--- cmake/qibuild/log.cmake
+++ cmake/qibuild/log.cmake
@@ -50,7 +50,11 @@
 #! display a deprecated message
 # \argn: a message
 function(qi_deprecated)
-  message(WARNING "DEPRECATED: ${ARGN}")
+  if(NO_WARN_DEPRECATED)
+    return()
+  else()
+    message(WARNING "DEPRECATED: ${ARGN}")
+  endif()
 endfunction()

 #! display a warning message


cmake: sort shield list and improve indent

Currently, when usage.cmake is run, the shield list is in construction
order, making it difficult to locate the shield of interest. This sorts
the list upon display and also makes the display indent consistent.

Signed-off-by: Aleksandr Koltsoff <240e14c5384b9bdcf23fba63a01371082a765b43@iki.fi>

--- cmake/usage/usage.cmake
+++ cmake/usage/usage.cmake
@@ -49,8 +49,10 @@
 message("")
 message("Supported Shields:")
 message("")
-foreach(shield ${SHIELD_LIST})
-  message(" ${shield}")
+set(sorted_shield_list ${SHIELD_LIST})
+list(SORT sorted_shield_list)
+foreach(shield ${sorted_shield_list})
+  message("  ${shield}")
 endforeach()
 message("")
 message("Build flags:")


Updating rosserial_tivac for new TivaWare compilation flags (#260)

* Improving Hardware class. No more error of multiple static member definitions when including ros.h multiple times.

* Forgot includes on tivac_hardware headers.

* Small correction on write function. May dropped a byte when already sending

* Allow python's socket reuse. Removed RosSerialServer unused method

* As of TivaWare 2.1.3.156, compiling for hard float.

* TivaC optional argument for specifying programmer serial id.

--- rosserial_tivac/tivac-cmake/cmake/TivaCToolchain.cmake
+++ rosserial_tivac/tivac-cmake/cmake/TivaCToolchain.cmake
@@ -14,6 +14,7 @@
 # With Arguments:
 #     USB     - Optional argument, if you wish to have rosserial over USB CDC device.
 #     BOARD   - Required. Takes one argument, tm4c123gxl or tm4c1294xl.
+#     DEVICE_SERIAL  - Optional argument. Creates flash target for specific device.
 #     STARTUP - Optional argument. Takes the name of custom startup file.
 #     SRCS    - Required. List of source files to compile.
 #     INCS    - Optional. List of include directories.
@@ -69,7 +70,7 @@
 # enable_language(ASM)

 set(CPU "-mcpu=cortex-m4")
-set(FPU "-mfpu=fpv4-sp-d16 -mfloat-abi=softfp")
+set(FPU "-mfpu=fpv4-sp-d16 -mfloat-abi=hard")
 # Cache if it set before project command (e.g. in toolchain):
 set(CMAKE_ASM_FLAGS "-mthumb ${CPU}  ${FPU} -MD" CACHE STRING "" FORCE)
 set(CMAKE_C_FLAGS "-mthumb ${CPU} ${FPU} -std=gnu99 -Os -ffunction-sections -fdata-sections -MD -Wall -pedantic -fsingle-precision-constant" CACHE STRING "" FORCE)
@@ -114,7 +115,7 @@
 function(GENERATE_TIVAC_FIRMWARE)
   message(STATUS "[TIVAC] Generating firmware ${CMAKE_PROJECT_NAME}")
   set(options USB)
-  set(oneValueArgs BOARD STARTUP)
+  set(oneValueArgs BOARD STARTUP DEVICE_SERIAL)
   set(multiValueArgs SRCS INCS LIBS)
   cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})

@@ -184,8 +185,16 @@
     COMMAND ${CMAKE_SIZE} -A -x ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_PROJECT_NAME}.axf
   )

-  add_custom_target("flash" DEPENDS ${CMAKE_PROJECT_NAME}.axf
+  if(INPUT_DEVICE_SERIAL)
+    message(STATUS "[TIVAC] Creating flash target for the device ${INPUT_DEVICE_SERIAL} only.")
+    set(DEV_SERIAL "-s${INPUT_DEVICE_SERIAL}")
+  else()
+    set(DEV_SERIAL "")
+  endif()
+
+  add_custom_target("flash"
     COMMAND ${CMAKE_OBJCOPY} -O binary ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_PROJECT_NAME}.axf ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_PROJECT_NAME}.bin
-    COMMAND ${FLASH_EXECUTABLE} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_PROJECT_NAME}.bin
+    COMMAND ${FLASH_EXECUTABLE} ${DEV_SERIAL} ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_PROJECT_NAME}.bin
+    DEPENDS ${CMAKE_PROJECT_NAME}.axf
   )
 endfunction()


Make sure numpy is built before scipy

Make sure numpy is built before scipy

--- scipy.cmake
+++ scipy.cmake
@@ -12,6 +12,7 @@
 include (FortranSupport)

 include (python)
+include (numpy)
 include (nose)
 include (atlas)

@@ -35,7 +36,7 @@
 # Download and install scipy
 message ("Installing ${scipy_NAME} into FlyEM build area: ${FLYEM_BUILD_DIR} ...")
 ExternalProject_Add(${scipy_NAME}
-    DEPENDS             ${python_NAME} ${nose_NAME} ${atlas_NAME}
+    DEPENDS             ${python_NAME} ${numpy_NAME} ${nose_NAME} ${atlas_NAME}
     PREFIX              ${FLYEM_BUILD_DIR}
     URL                 ${scipy_URL}
     URL_MD5             ${scipy_MD5}


Disable filtering of SDL libraries since its completely filtering libraries on some platforms, breaking the build entirely.

--- build/modules/FindSDL.cmake
+++ build/modules/FindSDL.cmake
@@ -84,19 +84,19 @@
     ELSE(sdl_MINIMUM_VERSION)
       PKG_CHECK_MODULES(sdl sdl)  # will set sdl_FOUND
     ENDIF(sdl_MINIMUM_VERSION)
-    MESSAGE(STATUS "SDL LIBRARIES: " ${sdl_LIBRARIES})
-    MESSAGE(STATUS "SDL LDFLAGS: " ${sdl_LDFLAGS})
-    SET(sdl_LIBRARIES "")
-    SET(sdl_LDFLAGS_ORIG ${sdl_LDFLAGS})
-    SET(sdl_LDFLAGS "")
-    FOREACH (LIB ${sdl_LDFLAGS_ORIG})
-      IF(LIB STREQUAL "-lSDL")
-      ELSE()
-        SET(sdl_LDFLAGS ${sdl_LDFLAGS} ${LIB})
-      ENDIF()
-    ENDFOREACH (LIB)
-    MESSAGE(STATUS "SDL LIBRARIES: " ${sdl_LIBRARIES})
-    MESSAGE(STATUS "SDL LDFLAGS: " ${sdl_LDFLAGS})
+    # MESSAGE(STATUS "SDL LIBRARIES: " ${sdl_LIBRARIES})
+    # MESSAGE(STATUS "SDL LDFLAGS: " ${sdl_LDFLAGS})
+    # SET(sdl_LIBRARIES "")
+    # SET(sdl_LDFLAGS_ORIG ${sdl_LDFLAGS})
+    # SET(sdl_LDFLAGS "")
+    # FOREACH (LIB ${sdl_LDFLAGS_ORIG})
+    #   IF(LIB STREQUAL "-lSDL")
+    #   ELSE()
+    #     SET(sdl_LDFLAGS ${sdl_LDFLAGS} ${LIB})
+    #   ENDIF()
+    # ENDFOREACH (LIB)
+    # MESSAGE(STATUS "SDL LIBRARIES: " ${sdl_LIBRARIES})
+    # MESSAGE(STATUS "SDL LDFLAGS: " ${sdl_LDFLAGS})
   ENDIF(NOT PKG_CONFIG_FOUND)
   IF(sdl_FOUND)
   ENDIF()


Fix compiler warnings about redefinition of GL_GLEXT_LEGACY


use CMAKE_CXX_STANDARD if supported by cmake version

--- cmake/CaneyCxx14Flags.cmake
+++ cmake/CaneyCxx14Flags.cmake
@@ -1,4 +1,14 @@
-set(CMAKE_CXX14_FLAGS -std=c++14 CACHE STRING "flags to enable C++14")
-set_property(CACHE CMAKE_CXX14_FLAGS PROPERTY ADVANCED TRUE)
+if((${CMAKE_MAJOR_VERSION} GREATER 3) OR ((${CMAKE_MAJOR_VERSION} EQUAL 3) AND (${CMAKE_MINOR_VERSION} GREATER 0)))
+	# available since cmake 3.1
+	set(CMAKE_CXX_STANDARD 14)
+	set(CMAKE_CXX_STANDARD_REQUIRED ON)
+else()
+	set(CMAKE_CXX14_FLAGS -std=c++14 CACHE STRING "flags to enable C++14")
+	set_property(CACHE CMAKE_CXX14_FLAGS PROPERTY ADVANCED TRUE)

-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX14_FLAGS}")
+	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX14_FLAGS}")
+
+	mark_as_advanced(FORCE CMAKE_CXX14_FLAGS)
+endif()
+
+# add_definitions(-D_GLIBCXX_USE_CXX11_ABI=1)


Static lib removed.

Static lib removed.

--- cmake/EmbeddedContent.cmake
+++ cmake/EmbeddedContent.cmake
@@ -12,4 +12,5 @@
                         COMMENT "Generate embedded content"
                         )

-add_Library(embedded STATIC Embedded.cpp)
+add_Library(embedded Embedded.cpp)
+


remove pkg-config for SimModSuite

remove pkg-config for SimModSuite

--- cmake/FindSimModSuite.cmake
+++ cmake/FindSimModSuite.cmake
@@ -124,21 +124,3 @@
                                   SIMMODSUITE_LIBS SIMMODSUITE_INCLUDE_DIR)

 mark_as_advanced(SIMMODSUITE_INCLUDE_DIR SIMMODSUITE_LIBS)
-
-set(SIM_LINK_LIBS "")
-foreach(lib ${SIM_LIB_NAMES})
-  set(SIM_LINK_LIBS "${SIM_LINK_LIBS} -l${lib}")
-endforeach()
-
-#pkgconfig
-set(prefix "${SIMMODSUITE_INSTALL_DIR}")
-set(includedir "${SIMMODSUITE_INCLUDE_DIR}")
-configure_file(
-  "${CORE_SOURCE_DIR}/cmake/libSimModSuite.pc.in"
-  "${CMAKE_BINARY_DIR}/libSimModSuite.pc"
-  @ONLY)
-
-#is this OK for a package file????
-if(NOT BUILD_IN_TRILINOS)
-  INSTALL(FILES "${CMAKE_BINARY_DIR}/libSimModSuite.pc" DESTINATION lib/pkgconfig)
-endif()


Add ARM64 packaging support

Add ARM64 packaging support

--- cmake/OpenCVPackaging.cmake
+++ cmake/OpenCVPackaging.cmake
@@ -28,6 +28,9 @@
 elseif(ARM)
   set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "armhf")
   set(CPACK_RPM_PACKAGE_ARCHITECTURE "armhf")
+elseif(AARCH64)
+  set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "arm64")
+  set(CPACK_RPM_PACKAGE_ARCHITECTURE "aarch64")
 else()
   set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR})
   set(CPACK_RPM_PACKAGE_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR})


Put back original URL path variable.

Put back original URL path variable.

--- cmake/ThirdPartyMetis.cmake
+++ cmake/ThirdPartyMetis.cmake
@@ -6,7 +6,7 @@
     EXTERNALPROJECT_ADD(
         modmetis-5.1.0
         PREFIX ${TPSRC}
-        URL http://www.nektar.info/thirdparty/modmetis-5.1.0.tar.bz2
+        URL ${TPURL}/modmetis-5.1.0.tar.bz2
         URL_MD5 "8f8313a768e4611d1748d10f88f3d702"
         DOWNLOAD_DIR ${TPSRC}
         CONFIGURE_COMMAND ${CMAKE_COMMAND} -DCMAKE_INSTALL_PREFIX:PATH=${TPSRC}/dist -DCMAKE_C_FLAGS:STRING=-fPIC -DGKLIB_PATH:PATH=${TPSRC}/src/modmetis-5.1.0/GKlib ${TPSRC}/src/modmetis-5.1.0


upgrade to oneDNN2.2.1 (fix when prim descriptor or attr contain NaN) (#32227)

--- cmake/external/mkldnn.cmake
+++ cmake/external/mkldnn.cmake
@@ -20,7 +20,7 @@
 SET(MKLDNN_INSTALL_DIR    ${THIRD_PARTY_PATH}/install/mkldnn)
 SET(MKLDNN_INC_DIR        "${MKLDNN_INSTALL_DIR}/include" CACHE PATH "mkldnn include directory." FORCE)
 SET(MKLDNN_REPOSITORY     ${GIT_URL}/oneapi-src/oneDNN.git)
-SET(MKLDNN_TAG            72efa005effb49595933e033cc732f215ef0445a)
+SET(MKLDNN_TAG            f58682cd8bd0615f41d879f8afc8f1511ab42d24)

 # Introduce variables:
 # * CMAKE_INSTALL_LIBDIR


fix make warning compile with mkldnn

fix make warning compile with mkldnn

--- cmake/external/mkldnn.cmake
+++ cmake/external/mkldnn.cmake
@@ -54,8 +54,8 @@
     CONFIGURE_COMMAND   mkdir -p <SOURCE_DIR>/build
     BUILD_COMMAND       cd <SOURCE_DIR>/build
                         && cmake .. -DCMAKE_INSTALL_PREFIX=${MKLDNN_INSTALL_DIR} -DMKLROOT=${MKLDNN_MKLROOT}
-                        && make all -j${CPU_CORES}
-    INSTALL_COMMAND     cd <SOURCE_DIR>/build && make install
+                        && $(MAKE)
+    INSTALL_COMMAND     cd <SOURCE_DIR>/build && $(MAKE) install
     UPDATE_COMMAND      ""
 )


[CMake] More refactoring of symlink creation.

This refactoring is to enable clang to re-use this code.

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

--- cmake/modules/AddLLVM.cmake
+++ cmake/modules/AddLLVM.cmake
@@ -1023,6 +1023,20 @@
   endif()
 endfunction()

+function(llvm_install_symlink name dest)
+  install(SCRIPT ${CMAKE_SOURCE_DIR}/cmake/modules/install_symlink.cmake
+          CODE "install_symlink(${name} ${dest})"
+          COMPONENT ${name})
+
+  if (NOT CMAKE_CONFIGURATION_TYPES)
+    add_custom_target(install-${name}
+                      DEPENDS ${name} ${dest} install-${dest}
+                      COMMAND "${CMAKE_COMMAND}"
+                              -DCMAKE_INSTALL_COMPONENT=${name}
+                              -P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
+  endif()
+endfunction()
+
 function(add_llvm_tool_symlink name dest)
   if(UNIX)
     set(LLVM_LINK_OR_COPY create_symlink)
@@ -1040,6 +1054,8 @@

   add_custom_target(${name} ALL DEPENDS ${output_path})
   set_target_properties(${name} PROPERTIES FOLDER Tools)
+  set_property(DIRECTORY APPEND PROPERTY
+    ADDITIONAL_MAKE_CLEAN_FILES ${dest_binary})

   # Make sure the parent tool is a toolchain tool, otherwise exclude this tool
   list(FIND LLVM_TOOLCHAIN_TOOLS ${dest} LLVM_IS_${dest}_TOOLCHAIN_TOOL)
@@ -1053,18 +1069,8 @@
   # tool and its parent tool are in LLVM_TOOLCHAIN_TOOLS
   if (LLVM_IS_${name}_TOOLCHAIN_TOOL GREATER -1 OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
     if( LLVM_BUILD_TOOLS )
-      install(SCRIPT ${CMAKE_SOURCE_DIR}/cmake/modules/install_symlink.cmake
-              CODE "install_symlink(${name} ${dest})"
-              COMPONENT ${name})
-
-      if (NOT CMAKE_CONFIGURATION_TYPES)
-        add_custom_target(install-${name}
-                          DEPENDS ${name}
-                          COMMAND "${CMAKE_COMMAND}"
-                                  -DCMAKE_INSTALL_COMPONENT=${name}
-                                  -P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
-      endif()
-    endif()
-  endif()
-endfunction()
-
+      llvm_install_symlink(${name} ${dest})
+    endif()
+  endif()
+endfunction()
+


Make DOCBOOK_XML_BACKEND ON mandatory rather than an option.
This change effectively disables the old SGML/DSSSL backend tools that
were deprecated but still available for 5.9.10 and which were the
default for releases prior to 5.9.10.

svn path=/trunk/; revision=12581

--- cmake/modules/docbook.cmake
+++ cmake/modules/docbook.cmake
@@ -68,7 +68,14 @@

 # This option is used for the BUILD_DOC case below and elsewhere and also
 # for the PREBUILT_DOC case elsewhere (when stylesheet.css is configured).
-option(DOCBOOK_XML_BACKEND "Use DocBook XML/XSLT backend tools to generate our documentation from DocBook source" ON)
+# option(DOCBOOK_XML_BACKEND "Use DocBook XML/XSLT backend tools to generate our documentation from DocBook source" ON)
+
+# N.B., DOCBOOK_XML_BACKEND ON is mandatory now rather than an option
+# which effectively disables the old SGML/DSSSL backend tools that
+# were deprecated but still available for 5.9.10 and which were the
+# default for releases prior to 5.9.10.
+set(DOCBOOK_XML_BACKEND ON CACHE BOOL "" FORCE)
+

 # Check for required programs and perl libraries.
 if(BUILD_DOC)


Simplify cmake/project_version

Simplify cmake/project_version

[skip ci]

--- cmake/project_version.cmake
+++ cmake/project_version.cmake
@@ -1,32 +1,18 @@
 find_package(Git)
 if(GIT_EXECUTABLE)
   execute_process(
-    COMMAND ${GIT_EXECUTABLE} describe --match "v[0-9]*.[0-9]*.[0-9]*"
-    RESULT_VARIABLE exit_code
+    COMMAND ${GIT_EXECUTABLE} describe --match "v[0-9]*.[0-9]*.[0-9]*" --always --tags --dirty
     OUTPUT_VARIABLE PROJECT_VERSION
     ERROR_QUIET
   )
-  if(${exit_code} EQUAL 0)
-    # v{VERSION}-{N}-g{HASH} -> {VERSION}-{HASH}
-    string(REGEX REPLACE "^v" "" PROJECT_VERSION ${PROJECT_VERSION})
-    string(REGEX
-      REPLACE "^([^-]*)-[0-9]+-g([0-9a-f]*)" "\\1-\\2"
-      PROJECT_VERSION
-      ${PROJECT_VERSION}
-    )
-  else()
-    execute_process(
-      COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD
-      RESULT_VARIABLE exit_code
-      OUTPUT_VARIABLE PROJECT_VERSION
-      ERROR_QUIET
-    )
-    if(${exit_code})
-      set(PROJECT_VERSION "0.0.0")
-    endif()
-  endif()
+
+  # v{VERSION}-{N}-g{HASH} -> {VERSION}-{HASH}
+  string(STRIP ${PROJECT_VERSION} PROJECT_VERSION)
+  string(REGEX
+    REPLACE "^v?([0-9]*.[0-9]*.[0-9]*)-[0-9]+-g([0-9a-f]*)" "\\1-\\2"
+    PROJECT_VERSION
+    ${PROJECT_VERSION}
+  )
 else()
   set(PROJECT_VERSION "0.0.0")
 endif()
-
-string(STRIP ${PROJECT_VERSION} PROJECT_VERSION)


Add group for private template files

Add group for private template files

--- cmake/support/targets.cmake
+++ cmake/support/targets.cmake
@@ -149,6 +149,11 @@
     FILES ${ARGN})
 endfunction ()

+function (vistk_private_template_group)
+  source_group("Template Files\\Private"
+    FILES ${ARGN})
+endfunction ()
+
 function (vistk_install_headers subdir)
   vistk_install(
     FILES       ${ARGN}


Added -std=c++11 to osx.cmake so that C++11 projects compile with make and ninja

--- cmake-toolchains/osx.cmake
+++ cmake-toolchains/osx.cmake
@@ -30,7 +30,7 @@
 endif()

 # compiler flags
-set(CMAKE_CXX_FLAGS "-fstrict-aliasing -Wno-multichar -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -Wno-ignored-qualifiers -Wno-long-long -Wno-overloaded-virtual -Wno-unused-volatile-lvalue -Wno-deprecated-writable-strings")
+set(CMAKE_CXX_FLAGS "-std=c++11 -fstrict-aliasing -Wno-multichar -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -Wno-ignored-qualifiers -Wno-long-long -Wno-overloaded-virtual -Wno-unused-volatile-lvalue -Wno-deprecated-writable-strings")
 set(CMAKE_CXX_FLAGS_RELEASE "-O3 -msse3 -DNDEBUG")
 set(CMAKE_CXX_FLAGS_DEBUG "-O0 -D_DEBUG_ -D_DEBUG -DFIPS_DEBUG=1 -ggdb")


Use consistent syntax in ConfigurePaths module

--- cmake/ConfigurePaths.cmake
+++ cmake/ConfigurePaths.cmake
@@ -75,11 +75,11 @@
     _set_var("${_prefix}" "SYSCONFDIR"      "${SYSCONFDIR}"     "${${_prefix}_PREFIX}/etc"              "read-only single-machine data")
     _set_var("${_prefix}" "LOCALSTATEDIR"   "${LOCALSTATEDIR}"  "${${_prefix}_PREFIX}/var"              "modifiable single-machine data")
     _set_var("${_prefix}" "BINDIR"          "${BINDIR}"         "${${_prefix}_EPREFIX}/bin"             "user executables")
-	IF(WIN32)
-		_set_var("${_prefix}" "LIBDIR"          "${LIBDIR}"         "${${_prefix}_EPREFIX}/bin"             "object code libraries")
-	ELSE()
-		_set_var("${_prefix}" "LIBDIR"          "${LIBDIR}"         "${${_prefix}_EPREFIX}/lib"             "object code libraries")
-	ENDIF()
+if(WIN32)
+    _set_var("${_prefix}" "LIBDIR"          "${LIBDIR}"         "${${_prefix}_EPREFIX}/bin"             "object code libraries")
+else()
+    _set_var("${_prefix}" "LIBDIR"          "${LIBDIR}"         "${${_prefix}_EPREFIX}/lib"             "object code libraries")
+endif()
     _set_var("${_prefix}" "INCLUDEDIR"      "${INCLUDEDIR}"     "${${_prefix}_PREFIX}/include"          "C header files")
     _set_var("${_prefix}" "PKGCONFIGDIR"    "${PKGCONFIGDIR}"   "${${_prefix}_LIBDIR}/pkgconfig"        "pkg-config files")
     _set_var("${_prefix}" "TYPELIBDIR"      "${TYPELIBDIR}"     "${${_prefix}_LIBDIR}/girepository-1.0" "GObject run-time introspection data")


Update FindWindowsSDK.cmake

Update FindWindowsSDK.cmake

--- cmake/FindWindowsSDK.cmake
+++ cmake/FindWindowsSDK.cmake
@@ -73,10 +73,10 @@
 endmacro()

 set(_winsdk_win10vers
-        10.0.17763.0 # Windows 10 Version 1809
-        10.0.17134.0 # Windows 10 Version 1803 (April 2018 Update)
-        10.0.16299.0 # Windows 10 Version 1709 (Fall Creators Update)
-        10.0.15063.0 # Windows 10 Version 1703 (Creators Update)
+      10.0.17763.0 # Windows 10 Version 1809
+      10.0.17134.0 # Windows 10 Version 1803 (April 2018 Update)
+      10.0.16299.0 # Windows 10 Version 1709 (Fall Creators Update)
+      10.0.15063.0 # Windows 10 Version 1703 (Creators Update)
 	10.0.14393.0 # Redstone aka Win10 1607 "Anniversary Update"
 	10.0.10586.0 # TH2 aka Win10 1511
 	10.0.10240.0 # Win10 RTM


Update flags

Update flags

--- cmake/compiler-flags.cmake
+++ cmake/compiler-flags.cmake
@@ -24,6 +24,7 @@
 )

 set(CXX_ALL_WARNINGS
+  attributes
   ctor-dtor-privacy
   conversion
   cast-align


Check for Python_EXECUTABLE in pyxir.cmake to fix Vitis AI EP build (#8631)

Co-authored-by: Jorn Tuyls <85c685e37414b845ba44991b0e8faa2864fd1eb9@gmail.com>

--- cmake/external/pyxir.cmake
+++ cmake/external/pyxir.cmake
@@ -3,8 +3,8 @@

 set(PYXIR_SHARED_LIB libpyxir.so)

-if(PYTHONINTERP_FOUND)
-  execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c"
+if(Python_EXECUTABLE)
+  execute_process(COMMAND "${Python_EXECUTABLE}" "-c"
     "import pyxir as px; print(px.get_include_dir()); print(px.get_lib_dir());"
     RESULT_VARIABLE __result
     OUTPUT_VARIABLE __output
@@ -17,7 +17,7 @@
     list(GET __values 1 PYXIR_LIB_DIR)
   endif()
 else()
-  message(STATUS "To find Pyxir, Python interpretater is required to be found.")
+  message(STATUS "To find Pyxir, the Python Executable needs to be found.")
 endif()

 add_library(pyxir SHARED IMPORTED)


Fix OSX architecture to not emit the flag if it's blank.

--- cmake/external_rules.cmake
+++ cmake/external_rules.cmake
@@ -123,9 +123,11 @@
   set(CMAKE_SUBBUILD_OPTIONS -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}" -DOPENSSL_NO_ASM=1)
   if(APPLE)
     # Propagate MacOS build flags.
-    set(CMAKE_SUBBUILD_OPTIONS
-        ${CMAKE_SUBBUILD_OPTIONS}
-        -DCMAKE_OSX_ARCHITECTURES="${CMAKE_OSX_ARCHITECTURES}")
+    if(CMAKE_OSX_ARCHITECTURES)
+      set(CMAKE_SUBBUILD_OPTIONS
+          ${CMAKE_SUBBUILD_OPTIONS}
+          -DCMAKE_OSX_ARCHITECTURES="${CMAKE_OSX_ARCHITECTURES}")
+    endif()
   elseif(MSVC)
     # Propagate MSVC build flags.
     set(CMAKE_SUBBUILD_OPTIONS


Change TRANSFORM_VERSION from a macro to a function.  Make that function
much more robust against version string variations including ignoring
everything in the version string after any character that is not in [0-9.]
and replacing any patch, minor, or major substring that does not match
[0-9]+ with 0.

svn path=/trunk/; revision=10187

--- cmake/modules/plplot.cmake
+++ cmake/modules/plplot.cmake
@@ -28,23 +28,43 @@
 include(CheckSymbolExists)
 include(CheckPrototypeExists)

-# Useful macros go here.
-
-macro(TRANSFORM_VERSION _numerical_result _version)
-# _version must be a period-delimited triplet string of the form
-# "major.minor.patch".
-# This macro transforms that into a numerical result that can be compared.
-if(${_version} MATCHES "^[0-9]*\\.[0-9]*\\.[0-9]*$")
-  string(REGEX REPLACE "^([0-9]*)\\.[0-9]*\\.[0-9]*$" "\\1" _major ${_version})
-  string(REGEX REPLACE "^[0-9]*\\.([0-9]*)\\.[0-9]*$" "\\1" _minor ${_version})
-  string(REGEX REPLACE "^[0-9]*\\.[0-9]*\\.([0-9]*)$" "\\1" _patch ${_version})
-  math(EXPR ${_numerical_result}
-  "${_major}*1000000 + ${_minor}*1000 + ${_patch}
-  ")
-else(${_version} MATCHES "^[0-9]*\\.[0-9]*\\.[0-9]*$")
-  set(${_numerical_result} 0)
-endif(${_version} MATCHES "^[0-9]*\\.[0-9]*\\.[0-9]*$")
-endmacro(TRANSFORM_VERSION)
+# Useful functions go here.
+
+function(TRANSFORM_VERSION numerical_result version)
+  # internal_version ignores everything in version after any character that
+  # is not 0-9 or ".".  This should take care of the case when there is
+  # some non-numerical data in the patch version.
+  #message(STATUS "DEBUG: version = ${version}")
+  string(REGEX REPLACE "^([0-9.]+).*$" "\\1" internal_version ${version})
+
+  # internal_version is normally a period-delimited triplet string of the form
+  # "major.minor.patch", but patch and/or minor could be missing.
+  # Transform internal_version into a numerical result that can be compared.
+  string(REGEX REPLACE "^([0-9]*).+$" "\\1" major ${internal_version})
+  string(REGEX REPLACE "^[0-9]*\\.([0-9]*).*$" "\\1" minor ${internal_version})
+  string(REGEX REPLACE "^[0-9]*\\.[0-9]*\\.([0-9]*)$" "\\1" patch ${internal_version})
+
+  if(NOT patch MATCHES "[0-9]+")
+    set(patch 0)
+  endif(NOT patch MATCHES "[0-9]+")
+
+  if(NOT minor MATCHES "[0-9]+")
+    set(minor 0)
+  endif(NOT minor MATCHES "[0-9]+")
+
+  if(NOT major MATCHES "[0-9]+")
+    set(major 0)
+  endif(NOT major MATCHES "[0-9]+")
+  #message(STATUS "DEBUG: internal_version = ${internal_version}")
+  #message(STATUS "DEBUG: major = ${major}")
+  #message(STATUS "DEBUG: minor= ${minor}")
+  #message(STATUS "DEBUG: patch = ${patch}")
+  math(EXPR internal_numerical_result
+    "${major}*1000000 + ${minor}*1000 + ${patch}"
+    )
+  #message(STATUS "DEBUG: ${numerical_result} = ${internal_numerical_result}")
+  set(${numerical_result} ${internal_numerical_result} PARENT_SCOPE)
+endfunction(TRANSFORM_VERSION)

 # =======================================================================
 # Compilation and build options (PLFLT, install locations, and rpath)


fix typos

fix typos

--- cmake/vSMCFindThread.cmake
+++ cmake/vSMCFindThread.cmake
@@ -48,9 +48,10 @@
     SET (CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}
         ${CMAKE_THREAD_LIBS_INIT})
     CHECK_CXX_SOURCE_RUNS ("${VSMC_THREAD_TEST_SOURCE}" VSMC_THREAD_FOUND)
-    IF (VSMC_THREAD_STD_FOUND)
+    IF (VSMC_THREAD_FOUND)
         SET (VSMC_THREAD_LINK_LIBRARIES ${CMAKE_THREAD_LIBS_INIT}
             CACHE STRING "Link to thread")
-    ENDIF (VSMC_THREAD_STD_FOUND)
+        SET (VSMC_THREAD_FOUND TRUE CACHE BOOL "Found C++11 thread")
+    ENDIF (VSMC_THREAD_FOUND)
     SET (CMAKE_REQUIRED_LIBRARIES ${SAFE_CMAKE_REQUIRED_LIBRAREIS})
 ENDIF (NOT VSMC_THREAD_FOUND)


Fix for error in last commit

Fix for error in last commit

--- cmake/Modules/FindCXX11.cmake
+++ cmake/Modules/FindCXX11.cmake
@@ -34,7 +34,7 @@

 int main()
 {
-    int n[] = [4,7,6,1,2];
+    int n[] = {4,7,6,1,2};
     for (auto i : n)
         Matrix mat (3,5,1,2);
     return 0;


fix R paths

fix R paths

--- configure/cmake/FindR.cmake
+++ configure/cmake/FindR.cmake
@@ -6,26 +6,25 @@
 #  R_ROOT_DIR     - the R root directory
 #  R_INCLUDE_DIRS - the R include directories

-if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-  set(CMAKE_FIND_APPBUNDLE "LAST")
-endif()
+set(TEMP_CMAKE_FIND_APPBUNDLE ${CMAKE_FIND_APPBUNDLE})
+set(CMAKE_FIND_APPBUNDLE "NEVER")
+find_program(R_EXEC NAMES R R.exe)
+set(CMAKE_FIND_APPBUNDLE ${TEMP_CMAKE_FIND_APPBUNDLE})

-find_program(R_EXEC NAMES R R.exe)

 #---Find includes and libraries if R exists
 if(R_EXEC)

   set(R_FOUND TRUE)

-  EXECUTE_PROCESS(
-  COMMAND "${R_EXEC}" "--slave" "--no-save" "-e" "cat(R.home())"
-  OUTPUT_VARIABLE R_ROOT_DIR)
-
+  execute_process(WORKING_DIRECTORY .
+  COMMAND ${R_EXEC} RHOME
+  OUTPUT_VARIABLE R_ROOT_DIR
+  OUTPUT_STRIP_TRAILING_WHITESPACE)

   find_path(R_INCLUDE_DIRS R.h
-            HINTS ${R_ROOT_DIR}
-            PATHS /usr/local/lib /usr/local/lib64 /usr/share
-            PATH_SUFFIXES include R/include)
+            PATHS /usr/local/lib /usr/local/lib64 /usr/share /usr/include ${R_ROOT_DIR} PATH_SUFFIXES include R R/include)
+
 endif()

 mark_as_advanced(R_FOUND R_EXEC R_ROOT_DIR R_INCLUDE_DIRS)


ENH: Bump ITK to 2017-03-06 master

ENH: Bump ITK to 2017-03-06 master

Change-Id: I9f18b6194121cc808dc1bcafaa7b882877ae6c39

--- Superbuild/External-ITK.cmake
+++ Superbuild/External-ITK.cmake
@@ -2,8 +2,8 @@
 # Get and build itk

 if( NOT ITK_TAG )
-  # ITK master 2017-01-23
-  set( ITK_TAG "c510b1019499470f21861c724493f5623d06cf29" )
+  # ITK master 2017-03-06
+  set( ITK_TAG "08dd93f8844169d92f5649b342ca5a167cfd6849" )
 endif()

 set( _vtk_args )


look for tbb/version.h instead of stddef.h for newer tbb versions.

--- common/cmake/FindTBB.cmake
+++ common/cmake/FindTBB.cmake
@@ -50,7 +50,6 @@
 # These two are used to automatically find the root and include directories.
 set(_TBB_INCLUDE_SUBDIR "include")
 set(_TBB_HEADER "tbb/tbb.h")
-set(_TBB_VERSION_HEADER "tbb/tbb_stddef.h")

 # Initialize cache variable; but use existing non-cache variable as the default,
 # and fall back to the environment variable.
@@ -145,6 +144,14 @@

 macro(rk_tbb_check_version)
   # Extract the version we found in our root.
+  if (EXISTS "${TBB_INCLUDE_DIR}/tbb/tbb_stddef.h")
+    set(_TBB_VERSION_HEADER "tbb/tbb_stddef.h")
+  elseif(EXISTS "${TBB_INCLUDE_DIR}/tbb/version.h")
+    set(_TBB_VERSION_HEADER "tbb/version.h")
+  else()
+    rk_tbb_error("Missing TBB version information. Could not find"
+      "tbb/tbb_stddef.h or tbb/version.h in ${TBB_INCLUDE_DIR}")
+  endif()
   file(READ ${TBB_INCLUDE_DIR}/${_TBB_VERSION_HEADER} VERSION_HEADER_CONTENT)
   string(REGEX MATCH "#define TBB_VERSION_MAJOR ([0-9]+)" DUMMY "${VERSION_HEADER_CONTENT}")
   set(TBB_VERSION_MAJOR ${CMAKE_MATCH_1})
@@ -194,7 +201,7 @@
     endif()

     find_path(TBB_INCLUDE_DIR
-      NAMES "${_TBB_VERSION_HEADER}"
+      NAMES "${_TBB_HEADER}"
       PATHS "${TBB_INCLUDE_DIRS}")

     # Extract TBB_ROOT from the include path so that rk_tbb_check_version


dep openmp

dep openmp

--- cmake/Dependencies_core.cmake
+++ cmake/Dependencies_core.cmake
@@ -73,6 +73,8 @@
   find_library(OMP_LIB libomp PATH_SUFFIXES lib)
   message(STATUS ${OMP_LIB})
   SET(LIBS ${LIBS} ${OMP_LIB})
+elseif(SAIGA_CXX_MSVC)
+
 else()
   find_package(OpenMP)
   PackageHelper(OpenMP ${OPENMP_FOUND} "${OPENMP_INCLUDE_DIRS}" "${OPENMP_LIBRARIES}")


Allow switching OFF C++0x/C++11 support

Allow switching OFF C++0x/C++11 support

--- salome_adm/cmake_files/SalomeSetupPlatform.cmake
+++ salome_adm/cmake_files/SalomeSetupPlatform.cmake
@@ -166,16 +166,18 @@
   ENDIF()
 ENDIF()

-# C++11 support
-INCLUDE(CheckCXXCompilerFlag)
-CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
-CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
-IF(COMPILER_SUPPORTS_CXX11)
+IF(NOT NO_CXX11_SUPPORT)
+  # C++11 support
+  INCLUDE(CheckCXXCompilerFlag)
+  CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
+  CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
+  IF(COMPILER_SUPPORTS_CXX11)
     MESSAGE(STATUS "Enable C++11 support")
     SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
-ELSEIF(COMPILER_SUPPORTS_CXX0X)
+  ELSEIF(COMPILER_SUPPORTS_CXX0X)
     MESSAGE(STATUS "Enable C++0x support")
     SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
-ELSE()
+  ELSE()
     MESSAGE(WARNING "Compiler ${CMAKE_CXX_COMPILER} has no C++11 support.")
+  ENDIF()
 ENDIF()


ENH: Update EXPAT to version 2.4.1

ENH: Update EXPAT to version 2.4.1

--- SuperBuild/CMake/External_expat.cmake
+++ SuperBuild/CMake/External_expat.cmake
@@ -24,8 +24,8 @@

 ExternalProject_Add(EXPAT
   PREFIX EXPAT
-  URL "http://downloads.sourceforge.net/project/expat/expat/2.3.0/expat-2.3.0.tar.gz"
-  URL_MD5 fb89c9a3dcc1e00e0fe0d0200af692dc
+  URL "http://downloads.sourceforge.net/project/expat/expat/2.4.1/expat-2.4.1.tar.gz"
+  URL_MD5 8738ef9ed1c5dcc03207286ea84f4299
   BINARY_DIR ${EXPAT_SB_BUILD_DIR}
   INSTALL_DIR ${SB_INSTALL_PREFIX}
   DOWNLOAD_DIR ${DOWNLOAD_LOCATION}


Use the USE_SYSTEM_FFW3 variable for the FFTW3double as well

--- SuperBuild/External_FFTW3double.cmake
+++ SuperBuild/External_FFTW3double.cmake
@@ -36,7 +36,8 @@
 # Set external name (same as internal for now)
 set(externalProjName ${proj})

-if(NOT ( DEFINED "USE_SYSTEM_${externalProjName}" AND "${USE_SYSTEM_${externalProjName}}" ) )
+# use FFTW variable
+if(NOT ( DEFINED "USE_SYSTEM_FFTW3" AND "${USE_SYSTEM_FFTW3}" ) )
   if (WIN32)
     # don't do anything
     ExternalProject_Add_Empty(${proj})


fixed: support collada-dom 2.3.1 which installs headers in        <prefix>/include/collada-dom

--- CMake/FindCollada.cmake
+++ CMake/FindCollada.cmake
@@ -52,6 +52,7 @@

     SET(__COLLADA_INCLUDE_SEARCH_DIRS "${COLLADA_ROOT_DIR}/include"
                                       "${COLLADA_ROOT_DIR}/include/colladadom"
+                                      "${COLLADA_ROOT_DIR}/include/collada-dom"
                                       "${__COLLADA_INCLUDE_SEARCH_DIRS}")
     SET(__COLLADA_LIBRARY_SEARCH_DIRS "${COLLADA_ROOT_DIR}/lib"
                                       "${COLLADA_ROOT_DIR}/lib64"


removed debug message, #2671

removed debug message, #2671

--- core/rosbuild/rostoolchain.cmake
+++ core/rosbuild/rostoolchain.cmake
@@ -31,7 +31,6 @@
           PATHS ENV ROS_ROOT
           NO_DEFAULT_PATH)
 if(TOOLCHAINCONFIG)
-  message("including user's toolchain file: ${TOOLCHAINCONFIG}")
   include(${TOOLCHAINCONFIG})
 endif(TOOLCHAINCONFIG)
 #############################################################


*** empty log message ***

*** empty log message ***

git-svn-id: b7791fb0f5d07d96612766859ad70a13be88ea96@325 305cdda6-5ce1-45b3-a98d-dfc68c8b3305

--- library/FindBoost.cmake
+++ library/FindBoost.cmake
@@ -29,6 +29,8 @@
 IF( ${CMAKE_GENERATOR} STREQUAL "Visual Studio 8 2005" )
     SET(BoostFileSystemName "libboost_filesystem-vc80-mt")
     SET(BoostFileSystemDebugName "libboost_filesystem-vc80-mt-gd")
+    SET(BoostThreadName "boost_thread-vc80-mt")
+    SET(BoostThreadDebugName "boost_thread-vc80-mt-gd")
 ENDIF( ${CMAKE_GENERATOR} STREQUAL "Visual Studio 8 2005" )

 IF( ${CMAKE_GENERATOR} STREQUAL "Unix Makefiles" )


cmake: list items in component config via alphabetical component name

--- tools/cmake/kconfig.cmake
+++ tools/cmake/kconfig.cmake
@@ -77,9 +77,20 @@
     set(kconfigs)
     set(kconfigs_projbuild)

+    # Components are usually sorted (somewhat) topologically via their dependencies. This extends to the component
+    # paths list. Obtain an alphabetical list in order to present menus also in the same order.
+    set(components ${BUILD_COMPONENTS})
+    list(SORT components)
+
+    foreach(component ${components})
+        list(FIND BUILD_COMPONENTS ${component} idx)
+        list(GET BUILD_COMPONENT_PATHS ${idx} component_path)
+        list(APPEND component_paths ${component_path})
+    endforeach()
+
     # Find Kconfig and Kconfig.projbuild for each component as applicable
     # if any of these change, cmake should rerun
-    foreach(dir ${BUILD_COMPONENT_PATHS})
+    foreach(dir ${component_paths})
         file(GLOB kconfig "${dir}/Kconfig")
         if(kconfig)
             set(kconfigs "${kconfigs} ${kconfig}")


Enable DEC C atomic model for Tru64

Enable DEC C atomic model for Tru64

--- platforms/tru64-compaq/platform.cmake
+++ platforms/tru64-compaq/platform.cmake
@@ -2,6 +2,7 @@
 set (PLIBSYS_IPC_MODEL posix)
 set (PLIBSYS_TIME_PROFILER_MODEL posix)
 set (PLIBSYS_DIR_MODEL posix)
+set (PLIBSYS_ATOMIC_MODEL decc)

 set (PLIBSYS_PLATFORM_LINK_LIBRARIES -pthread rt)


Remove useless

Remove useless

--- deps/msgpack/cmake_install.cmake
+++ deps/msgpack/cmake_install.cmake
@@ -1,34 +0,0 @@
-# Install script for directory: /home/reeze/msgpack-hhvm/deps/msgpack
-
-# Set the install prefix
-IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-  SET(CMAKE_INSTALL_PREFIX "/usr/local")
-ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
-STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
-
-# Set the install configuration name.
-IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-  IF(BUILD_TYPE)
-    STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
-           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
-  ELSE(BUILD_TYPE)
-    SET(CMAKE_INSTALL_CONFIG_NAME "")
-  ENDIF(BUILD_TYPE)
-  MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
-ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
-
-# Set the component getting installed.
-IF(NOT CMAKE_INSTALL_COMPONENT)
-  IF(COMPONENT)
-    MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
-    SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
-  ELSE(COMPONENT)
-    SET(CMAKE_INSTALL_COMPONENT)
-  ENDIF(COMPONENT)
-ENDIF(NOT CMAKE_INSTALL_COMPONENT)
-
-# Install shared libraries without execute permission?
-IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
-  SET(CMAKE_INSTALL_SO_NO_EXE "1")
-ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
-


COM: Fix copyright header for S1TilingApps remote module

--- Modules/Remote/S1TilingSupportApplications.remote.cmake
+++ Modules/Remote/S1TilingSupportApplications.remote.cmake
@@ -1,7 +1,7 @@
 #
 # Copyright(C) 2005-2020 Centre National d'Etudes Spatiales(CNES)
 #
-# This file is part of S1Tiling remote module for Orfeo Toolbox
+# This file is part of Orfeo Toolbox
 #
 #     https: //www.orfeo-toolbox.org/
 #


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Modules/ThirdParty/KWSys/src/KWSys/kwsysDateStamp.cmake
+++ Modules/ThirdParty/KWSys/src/KWSys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 02)

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

--- Modules/ThirdParty/KWSys/src/KWSys/kwsysDateStamp.cmake
+++ Modules/ThirdParty/KWSys/src/KWSys/kwsysDateStamp.cmake
@@ -18,4 +18,4 @@
 SET(KWSYS_DATE_STAMP_MONTH 03)

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


MINIFICPP-1570 fix Azure SDK transient cmake patch failure by making patch command idempotent

Signed-off-by: Adam Debreceni <adebreceni@apache.org>

This closes #1086

--- cmake/BundledAzureSdkCpp.cmake
+++ cmake/BundledAzureSdkCpp.cmake
@@ -16,7 +16,8 @@
 # under the License.

 function(use_bundled_libazure SOURCE_DIR BINARY_DIR)
-    set(PC "${Patch_EXECUTABLE}" -p1 -i "${SOURCE_DIR}/thirdparty/azure-sdk-cpp-for-cpp/azure-sdk-for-cpp-old-compiler.patch")
+    set(PATCH_FILE "${SOURCE_DIR}/thirdparty/azure-sdk-cpp-for-cpp/azure-sdk-for-cpp-old-compiler.patch")
+    set(PC "${Patch_EXECUTABLE}" -R -p1 -s -f --dry-run -i "${PATCH_FILE}" || "${Patch_EXECUTABLE}" -p1 -i "${PATCH_FILE}")

     # Define byproducts
     if (WIN32)


build

build

--- modules/HdrHistogram.cmake
+++ modules/HdrHistogram.cmake
@@ -3,7 +3,7 @@
   # Module library
   file(GLOB SOURCE_FILES "HdrHistogram/src/*.c")
   if(NOT MSVC)
-    set_source_files_properties(${SOURCE_FILES} PROPERTIES COMPILE_FLAGS "${PEDANTIC_COMPILE_FLAGS} -Wno-incompatible-pointer-types")
+    set_source_files_properties(${SOURCE_FILES} PROPERTIES COMPILE_FLAGS "${COMMON_COMPILE_FLAGS} -Wno-incompatible-pointer-types")
   else()
     # C4146: unary minus operator applied to unsigned type, result still unsigned
     # C4200: nonstandard extension used : zero-sized array in struct/union


Remove unnecessary wxWidgets searches

Remove unnecessary wxWidgets searches

--- deps/wxWidgets/wxWidgets.cmake
+++ deps/wxWidgets/wxWidgets.cmake
@@ -1,6 +1,5 @@
 set(_wx_git_tag v3.1.4-patched)

-# set(_patch_command "")
 set(_wx_toolkit "")
 if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
     set(_gtk_ver 2)
@@ -13,7 +12,6 @@
 prusaslicer_add_cmake_project(wxWidgets
     GIT_REPOSITORY "https://github.com/prusa3d/wxWidgets"
     GIT_TAG ${_wx_git_tag}
-    # PATCH_COMMAND "${_patch_command}"
     DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG}
     CMAKE_ARGS
         -DwxBUILD_PRECOMP=ON
@@ -31,6 +29,8 @@
         -DwxUSE_LIBJPEG=builtin
         -DwxUSE_LIBTIFF=builtin
         -DwxUSE_EXPAT=sys
+        -DwxUSE_LIBSDL=OFF
+        -DwxUSE_XTEST=OFF
 )

 if (MSVC)


Updated cml flags

Updated cml flags

--- cmake/CMLFlags.cmake
+++ cmake/CMLFlags.cmake
@@ -1,11 +1,3 @@
-OPTION(CML_SINGLE_PRECISION "Use single-precision floating point values" BOOL:FALSE)
-IF(CML_SINGLE_PRECISION)
-	SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DCML_SINGLE_PRECISION=\"${CML_SINGLE_PRECISION}\"")
-	MESSAGE(STATUS "Using single-precision floating point values")
-ELSE()
-	MESSAGE(STATUS "Using double-precision floating point values")
-ENDIF()
-
 OPTION(CML_NO_ALIASES "Use math functions aliases" BOOL:FALSE)
 IF(CML_NO_ALIASES)
 	SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DCML_NO_ALIASES=\"${CML_NO_ALIASES}\"")


cmake: print warning message when building with VS > 2015

--- cmake/Compiler.cmake
+++ cmake/Compiler.cmake
@@ -9,6 +9,8 @@
     # Visual Studio 2015 or newer
     if(MSVC_VERSION LESS 1900)
         message(FATAL_ERROR "This version of Visual Studio is not supported")
+    elseif(MSVC_VERSION GREATER 1900)
+        message(WARNING "This version of Visual Studio is not yet supported")
     endif()

     add_definitions(-D_CRT_SECURE_NO_WARNINGS)


enable OsiCbc for recent coins

enable OsiCbc for recent coins

--- cmake/FindCOIN.cmake
+++ cmake/FindCOIN.cmake
@@ -2,6 +2,7 @@

 # Written by: Matthew Gidden
 # Last updated: 12/17/12
+# Last updated: 16/08/12

 # This cmake file is designed to locate coin-related
 # dependencies on a filesystem.
@@ -92,12 +93,12 @@
     )
 MESSAGE("\tCOIN OSI: ${COIN_OSI_LIBRARY}")

-# FIND_LIBRARY(COIN_OSI_CBC_LIBRARY
-#   NAMES OsiCbc libOsiCbc #libOsiCbc.so.0
-#   HINTS ${COIN_INCLUDE_DIR}/../../lib/
-#   HINTS "${COIN_ROOT_DIR}/lib"
-# )
-# MESSAGE("\tCOIN OSI CBC: ${COIN_OSI_CBC_LIBRARY}")
+FIND_LIBRARY(COIN_OSI_CBC_LIBRARY
+  NAMES OsiCbc libOsiCbc #libOsiCbc.so.0
+  HINTS ${COIN_INCLUDE_DIR}/../../lib/
+  HINTS "${COIN_ROOT_DIR}/lib"
+)
+MESSAGE("\tCOIN OSI CBC: ${COIN_OSI_CBC_LIBRARY}")

 FIND_LIBRARY(COIN_OSI_CLP_LIBRARY
     NAMES OsiClp libOsiClp libOsiClp.so.0
@@ -130,7 +131,7 @@
     COIN_COIN_UTILS_LIBRARY
     COIN_OSI_LIBRARY
     # Not required by cbc v2.5, but required by later versions
-    #  COIN_OSI_CBC_LIBRARY
+    COIN_OSI_CBC_LIBRARY
     COIN_OSI_CLP_LIBRARY
     COIN_ZLIB_LIBRARY
     COIN_BZ2_LIBRARY
@@ -150,8 +151,8 @@
     ENDIF(COIN_BZ2_LIBRARY)
     # Not required by cbc v2.5, but required by later versions in which case,
     # the lower line should be commented out and this line used
-    #SET(COIN_CBC_LIBRARIES "${COIN_CBC_LIBRARY};${COIN_CBC_SOLVER_LIBRARY};${COIN_CGL_LIBRARY};${COIN_OSI_LIBRARY};${COIN_OSI_CBC_LIBRARY};${COIN_OSI_CLP_LIBRARY};${COIN_CLP_LIBRARIES}")
-    SET(COIN_CBC_LIBRARIES "${COIN_CBC_LIBRARY};${COIN_CBC_SOLVER_LIBRARY};${COIN_CGL_LIBRARY};${COIN_OSI_LIBRARY};${COIN_OSI_CLP_LIBRARY};${COIN_CLP_LIBRARIES}")
+    SET(COIN_CBC_LIBRARIES "${COIN_CBC_LIBRARY};${COIN_CBC_SOLVER_LIBRARY};${COIN_CGL_LIBRARY};${COIN_OSI_LIBRARY};${COIN_OSI_CBC_LIBRARY};${COIN_OSI_CLP_LIBRARY};${COIN_CLP_LIBRARIES}")
+    #SET(COIN_CBC_LIBRARIES "${COIN_CBC_LIBRARY};${COIN_CBC_SOLVER_LIBRARY};${COIN_CGL_LIBRARY};${COIN_OSI_LIBRARY};${COIN_OSI_CLP_LIBRARY};${COIN_CLP_LIBRARIES}")
     SET(COIN_LIBRARIES ${COIN_CBC_LIBRARIES})
 ENDIF(COIN_FOUND)