fixed tabbing in createDoc.cmake

fixed tabbing in createDoc.cmake

--- cmake/createDoc.cmake
+++ cmake/createDoc.cmake
@@ -9,143 +9,143 @@
         COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/misc/createChangeLog/changeLogToMD.py -i ${PROJECT_SOURCE_DIR}/ChangeLog -o ${PROJECT_BINARY_DIR}/doc/changeLog/ChangeLog.md
     )

-	configure_file(${PROJECT_SOURCE_DIR}/doc/Doxyfile.in ${PROJECT_BINARY_DIR}/doc/Doxyfile @ONLY)
-	configure_file(${PROJECT_SOURCE_DIR}/doc/footer.html ${PROJECT_BINARY_DIR}/doc/footer.html @ONLY)
-	add_custom_command(
-		OUTPUT ${PROJECT_BINARY_DIR}/doc/html/index.html
-		OUTPUT ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
-		DEPENDS ${PROJECT_SOURCE_DIR}/src/api/tigl.h
-		DEPENDS ${PROJECT_SOURCE_DIR}/doc/usage.md
-		DEPENDS ${PROJECT_SOURCE_DIR}/doc/mainpage.md
-		DEPENDS ${PROJECT_SOURCE_DIR}/examples/README.md
-		DEPENDS ${PROJECT_BINARY_DIR}/doc/Doxyfile
-		DEPENDS ${PROJECT_BINARY_DIR}/doc/changeLog/ChangeLog.md
-		COMMAND ${DOXYGEN_EXECUTABLE}
-		ARGS ${PROJECT_BINARY_DIR}/doc/Doxyfile
-	)
+    configure_file(${PROJECT_SOURCE_DIR}/doc/Doxyfile.in ${PROJECT_BINARY_DIR}/doc/Doxyfile @ONLY)
+    configure_file(${PROJECT_SOURCE_DIR}/doc/footer.html ${PROJECT_BINARY_DIR}/doc/footer.html @ONLY)
+    add_custom_command(
+        OUTPUT ${PROJECT_BINARY_DIR}/doc/html/index.html
+        OUTPUT ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
+        DEPENDS ${PROJECT_SOURCE_DIR}/src/api/tigl.h
+        DEPENDS ${PROJECT_SOURCE_DIR}/doc/usage.md
+        DEPENDS ${PROJECT_SOURCE_DIR}/doc/mainpage.md
+        DEPENDS ${PROJECT_SOURCE_DIR}/examples/README.md
+        DEPENDS ${PROJECT_BINARY_DIR}/doc/Doxyfile
+        DEPENDS ${PROJECT_BINARY_DIR}/doc/changeLog/ChangeLog.md
+        COMMAND ${DOXYGEN_EXECUTABLE}
+        ARGS ${PROJECT_BINARY_DIR}/doc/Doxyfile
+    )

-	add_custom_target(html
-		DEPENDS ${PROJECT_BINARY_DIR}/doc/html/index.html
-	)
-
-	install(DIRECTORY ${PROJECT_BINARY_DIR}/doc/html
-			DESTINATION	share/doc/tigl
-			COMPONENT docu
-			OPTIONAL)
+    add_custom_target(html
+        DEPENDS ${PROJECT_BINARY_DIR}/doc/html/index.html
+    )
+
+    install(DIRECTORY ${PROJECT_BINARY_DIR}/doc/html
+            DESTINATION    share/doc/tigl
+            COMPONENT docu
+            OPTIONAL)

-		# create start menu entries
-		SET(CPACK_NSIS_CREATE_ICONS_EXTRA ${CPACK_NSIS_CREATE_ICONS_EXTRA} "
+        # create start menu entries
+        SET(CPACK_NSIS_CREATE_ICONS_EXTRA ${CPACK_NSIS_CREATE_ICONS_EXTRA} "
         CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Documentation.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\tigl\\\\html\\\\index.html\\\"
-	    ")
-	    SET(CPACK_NSIS_DELETE_ICONS_EXTRA ${CPACK_NSIS_DELETE_ICONS_EXTRA} "
-	      !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
+        ")
+        SET(CPACK_NSIS_DELETE_ICONS_EXTRA ${CPACK_NSIS_DELETE_ICONS_EXTRA} "
+          !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
           Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\Documentation.lnk\\\"
-	    ")
+        ")

-	find_program(LATEX pdflatex)
+    find_program(LATEX pdflatex)

-	if(LATEX)
+    if(LATEX)
         # TIGL Reference PDF File
-		add_custom_command(
-			OUTPUT ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
-			DEPENDS ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
-			WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/latex/
-			COMMAND ${LATEX}
-			ARGS -quiet ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
-		    # run latex twice to get references right (normal use case of latex, don't ask why)
-			COMMAND ${LATEX}
-			ARGS -quiet ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
-			COMMAND ${CMAKE_COMMAND}
-			ARGS -E copy ${PROJECT_BINARY_DIR}/doc/latex/refman.pdf ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
-		)
-
+        add_custom_command(
+            OUTPUT ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
+            DEPENDS ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
+            WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/latex/
+            COMMAND ${LATEX}
+            ARGS -quiet ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
+            # run latex twice to get references right (normal use case of latex, don't ask why)
+            COMMAND ${LATEX}
+            ARGS -quiet ${PROJECT_BINARY_DIR}/doc/latex/refman.tex
+            COMMAND ${CMAKE_COMMAND}
+            ARGS -E copy ${PROJECT_BINARY_DIR}/doc/latex/refman.pdf ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
+        )
+
         # TIGL Guide
         # create latex build directory
-		add_custom_command(
-			OUTPUT ${PROJECT_BINARY_DIR}/doc/tiglGuide/
-			DEPENDS ${PROJECT_SOURCE_DIR}/doc/tiglGuide/tiglGuide.tex
-			COMMAND ${CMAKE_COMMAND}
-			ARGS -E copy_directory ${PROJECT_SOURCE_DIR}/doc/tiglGuide/ ${PROJECT_BINARY_DIR}/doc/tiglGuide
+        add_custom_command(
+            OUTPUT ${PROJECT_BINARY_DIR}/doc/tiglGuide/
+            DEPENDS ${PROJECT_SOURCE_DIR}/doc/tiglGuide/tiglGuide.tex
+            COMMAND ${CMAKE_COMMAND}
+            ARGS -E copy_directory ${PROJECT_SOURCE_DIR}/doc/tiglGuide/ ${PROJECT_BINARY_DIR}/doc/tiglGuide
         )
         # create pdf file
-		add_custom_command(
-			OUTPUT ${PROJECT_BINARY_DIR}/doc/tiglGuide/tiglGuide.pdf
-			DEPENDS ${PROJECT_SOURCE_DIR}/doc/tiglGuide/tiglGuide.tex ${PROJECT_BINARY_DIR}/doc/tiglGuide/
-			WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/tiglGuide/
+        add_custom_command(
+            OUTPUT ${PROJECT_BINARY_DIR}/doc/tiglGuide/tiglGuide.pdf
+            DEPENDS ${PROJECT_SOURCE_DIR}/doc/tiglGuide/tiglGuide.tex ${PROJECT_BINARY_DIR}/doc/tiglGuide/
+            WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/tiglGuide/
             # create directory for latex build
             # build pdf
-			COMMAND ${LATEX}
-			ARGS -quiet tiglGuide.tex
-			# run latex twice to get references right (normal use case of latex, don't ask why)
-		    COMMAND ${LATEX}
-			ARGS -quiet tiglGuide.tex
-		)
+            COMMAND ${LATEX}
+            ARGS -quiet tiglGuide.tex
+            # run latex twice to get references right (normal use case of latex, don't ask why)
+            COMMAND ${LATEX}
+            ARGS -quiet tiglGuide.tex
+        )

         # TIGL Changelog
         # create latex build directory
-		add_custom_command(
-			OUTPUT ${PROJECT_BINARY_DIR}/doc/changeLog/
-			DEPENDS ${PROJECT_SOURCE_DIR}/doc/changeLog/changeLog.tex
-			COMMAND ${CMAKE_COMMAND}
-			ARGS -E copy_directory ${PROJECT_SOURCE_DIR}/doc/changeLog/ ${PROJECT_BINARY_DIR}/doc/changeLog
+        add_custom_command(
+            OUTPUT ${PROJECT_BINARY_DIR}/doc/changeLog/
+            DEPENDS ${PROJECT_SOURCE_DIR}/doc/changeLog/changeLog.tex
+            COMMAND ${CMAKE_COMMAND}
+            ARGS -E copy_directory ${PROJECT_SOURCE_DIR}/doc/changeLog/ ${PROJECT_BINARY_DIR}/doc/changeLog
         )
         # create pdf file
-		add_custom_command(
-			OUTPUT ${PROJECT_BINARY_DIR}/doc/changeLog/changeLog.pdf
-			DEPENDS ${PROJECT_SOURCE_DIR}/doc/changeLog/changeLog.tex ${PROJECT_BINARY_DIR}/doc/changeLog/
-			WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/changeLog/
+        add_custom_command(
+            OUTPUT ${PROJECT_BINARY_DIR}/doc/changeLog/changeLog.pdf
+            DEPENDS ${PROJECT_SOURCE_DIR}/doc/changeLog/changeLog.tex ${PROJECT_BINARY_DIR}/doc/changeLog/
+            WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/changeLog/
             # create directory for latex build
             # build pdf
-			COMMAND ${LATEX}
-			ARGS -quiet changeLog.tex
-			# run latex twice to get references right (normal use case of latex, don't ask why)
-		    COMMAND ${LATEX}
-			ARGS -quiet changeLog.tex
-		)
+            COMMAND ${LATEX}
+            ARGS -quiet changeLog.tex
+            # run latex twice to get references right (normal use case of latex, don't ask why)
+            COMMAND ${LATEX}
+            ARGS -quiet changeLog.tex
+        )

-		add_custom_target(pdf
-			COMMENT "Generating PDF reference documentation with latex" VERBATIM
-			DEPENDS ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
-		)
+        add_custom_target(pdf
+            COMMENT "Generating PDF reference documentation with latex" VERBATIM
+            DEPENDS ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
+        )

-		add_custom_target(guide
-			COMMENT "Generating PDF Guide for TIGL with latex" VERBATIM
-			DEPENDS ${PROJECT_BINARY_DIR}/doc/tiglGuide/tiglGuide.pdf
-		)
+        add_custom_target(guide
+            COMMENT "Generating PDF Guide for TIGL with latex" VERBATIM
+            DEPENDS ${PROJECT_BINARY_DIR}/doc/tiglGuide/tiglGuide.pdf
+        )

-		add_custom_target(changeLog
+        add_custom_target(changeLog
             COMMENT "Generating PDF ChangeLog for TIGL with latex" VERBATIM
             DEPENDS ${PROJECT_BINARY_DIR}/doc/changeLog/changeLog.pdf
-		)
-		add_custom_target(doc
-			DEPENDS html pdf guide changeLog
-			COMMENT "Generating API documentation with Doxygen" VERBATIM
-		)
-
-		install(FILES ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
-				DESTINATION	share/doc/tigl
-				COMPONENT docu
-				OPTIONAL)
-
-
+        )
+        add_custom_target(doc
+            DEPENDS html pdf guide changeLog
+            COMMENT "Generating API documentation with Doxygen" VERBATIM
+        )
+
+        install(FILES ${PROJECT_BINARY_DIR}/doc/tiglRef.pdf
+                DESTINATION    share/doc/tigl
+                COMPONENT docu
+                OPTIONAL)
+
+
         install(FILES ${PROJECT_BINARY_DIR}/doc/changeLog/changeLog.pdf
-				DESTINATION	share/doc/tigl
-				COMPONENT docu
-				OPTIONAL)
+                DESTINATION    share/doc/tigl
+                COMPONENT docu
+                OPTIONAL)

-	    # create start menu entries
-	    SET(CPACK_NSIS_CREATE_ICONS_EXTRA ${CPACK_NSIS_CREATE_ICONS_EXTRA} "
-	      CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\TiGL-Reference.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\tigl\\\\tiglRef.pdf\\\"
-	    ")
-	    SET(CPACK_NSIS_DELETE_ICONS_EXTRA ${CPACK_NSIS_DELETE_ICONS_EXTRA} "
-	      !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
-	      Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\TiGL-Reference.lnk\\\"
-	    ")
-
-	else()
-		add_custom_target(doc
-			DEPENDS html
-			COMMENT "Generating API documentation with Doxygen" VERBATIM
-		)
-	endif()
+        # create start menu entries
+        SET(CPACK_NSIS_CREATE_ICONS_EXTRA ${CPACK_NSIS_CREATE_ICONS_EXTRA} "
+          CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\TiGL-Reference.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\tigl\\\\tiglRef.pdf\\\"
+        ")
+        SET(CPACK_NSIS_DELETE_ICONS_EXTRA ${CPACK_NSIS_DELETE_ICONS_EXTRA} "
+          !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
+          Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\TiGL-Reference.lnk\\\"
+        ")
+
+    else()
+        add_custom_target(doc
+            DEPENDS html
+            COMMENT "Generating API documentation with Doxygen" VERBATIM
+        )
+    endif()
 endif(DOXYGEN_FOUND AND PYTHONINTERP_FOUND)


[cmakeswitch to master branch for nd as external project

--- cmake/nd-config.cmake
+++ cmake/nd-config.cmake
@@ -12,7 +12,7 @@
   set(ND_GIT_REPOSITORY ssh://git@bitbucket.org/nclack/nd.git CACHE STRING "Location of the git repository for libnd.")
   ExternalProject_Add(libnd
     GIT_REPOSITORY ${ND_GIT_REPOSITORY}
-    GIT_TAG spin-off-plugins
+    # GIT_TAG spin-off-plugins
     # UPDATE_COMMAND ""
     # UPDATE_COMMAND ${GIT_EXECUTABLE} pull origin master
     LIST_SEPARATOR ^^


Appended "/pcl" to project-wide include install dir

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

--- cmake/pcl_utils.cmake
+++ cmake/pcl_utils.cmake
@@ -167,7 +167,7 @@
         set(LIB_INSTALL_DIR "lib")
     endif(OS_IS_64BIT)
     set(INCLUDE_INSTALL_DIR
-        "include/${PROJECT_NAME_LOWER}-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}")
+        "include/${PROJECT_NAME_LOWER}-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}/pcl")
     set(BIN_INSTALL_DIR "bin")
     set(PKGCFG_INSTALL_DIR "${LIB_INSTALL_DIR}/pkgconfig")
 endmacro(SET_INSTALL_DIRS)


Added search for poco debug libs.

Added search for poco debug libs.

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

--- CMakeModules/ConfigurePackages.cmake
+++ CMakeModules/ConfigurePackages.cmake
@@ -30,6 +30,8 @@
         NAMES Poco PoCo poco
         COMPONENTS Poco PocoFoundation PocoNet PocoUtil PocoXML
         PREFIXES ${ENV_NAALI_DEP_PATH})
+
+    find_debug_libraries (POCO "d")

     sagase_configure_report (POCO)
 endmacro (configure_poco)


Added Xinerama as a link dependency for GLFW

This is a recently introduced dependency in GLFW 3.1.x

Since Xinerama is widely supported, simply adding this as a required
dependency for now. If this turns out to be a problem then we can
make this dependency optional when using older versions of GLFW.

--- cmake/FindGLFW.cmake
+++ cmake/FindGLFW.cmake
@@ -154,7 +154,11 @@
             message(FATAL_ERROR "Xcursor library not found - required for GLFW")
         endif()

-        list(APPEND GLFW_x11_LIBRARY "${X11_Xrandr_LIB}" "${X11_Xxf86vm_LIB}" "${X11_Xcursor_LIB}" "${CMAKE_THREAD_LIBS_INIT}" -lrt -lXi)
+        if(NOT X11_Xinerama_FOUND)
+            message(FATAL_ERROR "Xinerama library not found - required for GLFW")
+        endif()
+
+        list(APPEND GLFW_x11_LIBRARY "${X11_Xrandr_LIB}" "${X11_Xxf86vm_LIB}" "${X11_Xcursor_LIB}" "${X11_Xinerama_LIB}" "${CMAKE_THREAD_LIBS_INIT}" -lrt -lXi)

         find_library( GLFW_glfw_LIBRARY
             NAMES


blarg, typo

blarg, typo

svn path=/trunk/KDE/kdebindings/smoke/; revision=833240

--- phonon/generate.pl.cmake
+++ phonon/generate.pl.cmake
@@ -103,7 +103,7 @@

 my @kdeheaders = ();
 $kdeprefix = "@KDE_PREFIX@";
-$kdeinc= ('@kde_includes@', '@PHONON_INCLUDE_DIR@' )
+$kdeinc= ('@kde_includes@', '@PHONON_INCLUDE_DIR@' );
 $kdeinc =~ s/\${prefix}/$kdeprefix/; # Remove ${prefix} in src != build
 -d $kdeinc or die "Couldn't process $kdeinc: $!\n";


added support for 64 bit linux in FindTIXI.cmake

--- contrib/FindTIXI.cmake
+++ contrib/FindTIXI.cmake
@@ -35,6 +35,7 @@
 FIND_LIBRARY(TIXI_LIBRARY NAMES
 	TIXI
 	HINTS
+	${TIXI_PATH}/lib64
 	${TIXI_PATH}/lib
 	PATHS
 	"[HKEY_LOCAL_MACHINE\\SOFTWARE\\www.dlr.de/sc\\TIXI]/lib"


fixed minor check in FindDSound.cmake

fixed minor check in FindDSound.cmake

--- cmake/FindDSound.cmake
+++ cmake/FindDSound.cmake
@@ -10,21 +10,23 @@

 if (WIN32)
   include(FindWindowsSDK)
-  get_windowssdk_library_dirs(${WINDOWSSDK_PREFERRED_DIR} WINSDK_LIB_DIRS)
-  get_windowssdk_include_dirs(${WINDOWSSDK_PREFERRED_DIR} WINSDK_INCLUDE_DIRS)
+  if (WINDOWSSDK_FOUND)
+    get_windowssdk_library_dirs(${WINDOWSSDK_PREFERRED_DIR} WINSDK_LIB_DIRS)
+    get_windowssdk_include_dirs(${WINDOWSSDK_PREFERRED_DIR} WINSDK_INCLUDE_DIRS)
+  endif()
 endif()

 # DSOUND_INCLUDE_DIR
 find_path(DSOUND_INCLUDE_DIR
           NAMES "dsound.h"
-          PATHS ${WINSDK_INCLUDE_DIRS} "${DXSDK_DIR}"
+          PATHS "${DXSDK_DIR}" ${WINSDK_INCLUDE_DIRS}
           PATH_SUFFIXES include
           DOC "The DirectSound include directory")

 # DSOUND_LIBRARY
 find_library(DSOUND_LIBRARY
              NAMES dsound
-             PATHS ${WINSDK_LIB_DIRS} "${DXSDK_DIR}"
+             PATHS "${DXSDK_DIR}" ${WINSDK_LIB_DIRS}
              PATH_SUFFIXES lib lib/x86 lib/x64
              DOC "The DirectSound library")


- corrected wrong sdk path.

- corrected wrong sdk path.

--- cmake/FindDeezer.cmake
+++ cmake/FindDeezer.cmake
@@ -20,6 +20,6 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 # THE SOFTWARE.

-set(DEEZER_SDK_INSTALL_DIR "${CMAKE_SOURCE_DIR}/../deezer-native-sdk-v1.2.0")
+set(DEEZER_SDK_INSTALL_DIR "${CMAKE_SOURCE_DIR}/../deezer-native-sdk-v1.2.10")
 set(DEEZER_SDK_INCLUDE_DIR "${DEEZER_SDK_INSTALL_DIR}/SDK/Include")
 set(DEEZER_SDK_LIBRARY_DIR "${DEEZER_SDK_INSTALL_DIR}/SDK/Bins/Platforms/Linux/${CMAKE_SYSTEM_PROCESSOR}")


Fix lapacke search process

Fix lapacke search process

--- cmake/FindLAPACK.cmake
+++ cmake/FindLAPACK.cmake
@@ -275,7 +275,7 @@

     ## Generic LAPACKE library ##
     if((NOT LAPACK_LIBRARIES)
-	AND ((NOT WITH_LAPACK) OR (WITH_LAPACK STREQUAL "lapacke")))
+	AND ((NOT WITH_LAPACK) OR (WITH_LAPACK STREQUAL "lapacke") OR (WITH_LAPACK STREQUAL "generic")))
       message(STATUS "Try to find a generic lapacke ...")
       if(LAPACKE_NAME)
 	message(STATUS "Using user-provided name ${LAPACKE_NAME}")


try fix Mac build

try fix Mac build

--- cmake/TaichiCore.cmake
+++ cmake/TaichiCore.cmake
@@ -92,12 +92,12 @@
     target_link_libraries(${CORE_LIBRARY_NAME} pthread stdc++)
     if (APPLE)
         # OS X
+        # Ask OS X to minic Linux dynamic linking hebavior
+        target_link_libraries(${CORE_LIBRARY_NAME} PRIVATE "-undefined dynamic_lookup")
     else()
         # Linux
         target_link_libraries(${CORE_LIBRARY_NAME} stdc++fs X11)
         target_link_libraries(${CORE_LIBRARY_NAME} -static-libgcc -static-libstdc++)
-        # Ask OS X to minic Linux dynamic linking hebavior
-        target_link_libraries(${CORE_LIBRARY_NAME} PRIVATE "-undefined dynamic_lookup")
     endif()
 endif ()
 message("PYTHON_LIBRARIES" ${PYTHON_LIBRARIES})


Update libpng to lastest version

Update libpng to lastest version

--- cmake/get-libpng.cmake
+++ cmake/get-libpng.cmake
@@ -1,13 +1,13 @@
 #------------------------------------------------------------------------------
 # External Project:     libpng
 # Website:              http://www.libpng.org/pub/png/libpng.html
-# Downloads:            ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/lpng1624.zip
+# Downloads:            https://github.com/glennrp/libpng/archive/v1.6.28.zip
 # Github:               https://github.com/glennrp/libpng
 #------------------------------------------------------------------------------

 include(ExternalProject)

-set(LIBPNG_VERSION "1.6.24")
+set(LIBPNG_VERSION "1.6.28")

 set(LIBPNG_CMAKE_ARGS ${COMMON_CMAKE_ARGS}
     -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
@@ -42,4 +42,4 @@
   #BUILD_COMMAND       msbuild libpng.sln /target:INSTALL /p:Platform=Win32 /p:Configuration=Release
   #INSTALL_COMMAND     msbuild libpng.sln /build Release /project INSTALL
   #CMAKE_ARGS   ${LIBPNG_CMAKE_ARGS}
-)+)


Disable clang documentation warnings due to SDL headers.

--- src/build_options.cmake
+++ src/build_options.cmake
@@ -129,6 +129,9 @@
           "-Wno-duplicate-enum"
           "-Wno-switch-enum"
           "-Wno-extra-tokens"
+
+          # Added because SDL2 headers have a ton of Doxygen warnings currently.
+          "-Wno-documentation"

           # This needs to be removed after fixing the VOGL_NO_ATOMICS, etc.
           "-Wno-undef"


CMake: fixed compat problem with CMake v2.8.11

--- cmake/CMakeALICE.cmake
+++ cmake/CMakeALICE.cmake
@@ -183,7 +183,11 @@
     # Prepare a distinct install command for each file, depending on its path
     foreach(_FILE ${_FILES})

-        get_filename_component(_FILEPREFIX ${_FILE} DIRECTORY)
+        if(CMAKE_VERSION VERSION_LESS "2.8.12")
+            get_filename_component(_FILEPREFIX ${_FILE} PATH)
+        else()
+            get_filename_component(_FILEPREFIX ${_FILE} DIRECTORY)
+        endif()
         #message(STATUS "[install_relative] ${_FILE} --> ${_FILEPREFIX}")

         string(SUBSTRING ${_FILE} 0 1 _FILE_FIRST)


Update Extensions module to support conditional requirements

This commit will allow to specify extension requirements of the following
form:

add_python_extension(bar
  [...]
  REQUIRES FOOLIBRARIES "HAVE_FOO_H OR HAVE_OTHER_FOO_H"
  [...]
)

--- cmake/Extensions.cmake
+++ cmake/Extensions.cmake
@@ -72,9 +72,10 @@
     # Check all the things we require are found.
     set(missing_deps "")
     foreach(dep ${ADD_PYTHON_EXTENSION_REQUIRES} ENABLE_${upper_name})
-        if(NOT ${dep})
+        string(REPLACE " " ";" list_dep ${dep})
+        if(NOT (${list_dep}))
             set(missing_deps "${missing_deps}${dep} ")
-        endif(NOT ${dep})
+        endif(NOT (${list_dep}))
     endforeach(dep)

     # If any dependencies were missing don't include this extension.


Delete FindCURLpp.cmake

Delete FindCURLpp.cmake

--- cmake/FindCURLpp.cmake
+++ cmake/FindCURLpp.cmake
@@ -1,23 +0,0 @@
-#~ finds curlpp
-
-find_package(CURL REQUIRED)
-
-set(store_cfls ${CMAKE_FIND_LIBRARY_SUFFIXES})
-set(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".so")
-set(CURLPP_FIND_NAMES curlpp libcurlpp)
-set(CURLPP_INCLUDE_PREFIX "curlpp/")
-#~ set(CURLPP_INCLUDE_SEARCHES "Easy.hpp" "cURLpp.hpp" "Info.hpp" "Infos.hpp" "Option.hpp" "Options.hpp" "Form.hpp")
-set(CURLPP_INCLUDE_SEARCHES "cURLpp.hpp")
-
-
-find_path(CURLPP_INCLUDE_DIR NAMES ${CURLPP_INCLUDE_SEARCHES} PATH_SUFFIXES ${CURLPP_INCLUDE_PREFIX})
-find_library(CURLPP_LIBRARY NAMES ${CURLPP_FIND_NAMES} PATHS "/usr/local/lib")
-
-set(CURLPP_LIBRARIES ${CURL_LIBRARIES} ${CURLPP_LIBRARY})
-set(CURLPP_INCLUDE_DIRS ${CURL_INCLUDE_DIRS} ${CURLPP_INCLUDE_DIR})
-
-include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake)
-find_package_handle_standard_args(CURLpp DEFAULT_MSG CURLPP_LIBRARY CURLPP_INCLUDE_DIR)
-
-mark_as_advanced(CURLPP_LIBRARY CURLPP_INCLUDE_DIR)
-set(CMAKE_FIND_LIBRARY_SUFFIXES "${store_cfls}")


Taken from ITK 4.2.0

Taken from ITK 4.2.0

--- cmake/FindOpenCL.cmake
+++ cmake/FindOpenCL.cmake
@@ -16,6 +16,12 @@
 SET (OPENCL_VERSION_MINOR 1)
 SET (OPENCL_VERSION_PATCH 0)

+SET(OPENCL_ROOT_DIR
+  "${OPENCL_ROOT_DIR}"
+  CACHE
+  PATH
+  "Path to search for opencl")
+
 IF (APPLE)

   FIND_LIBRARY(OPENCL_LIBRARIES OpenCL DOC "OpenCL lib for OSX")
@@ -26,40 +32,27 @@

   IF (WIN32)

- FIND_PATH(OPENCL_INCLUDE_DIRS CL/cl.h )
+    FIND_PATH(OPENCL_INCLUDE_DIRS CL/cl.h )
     FIND_PATH(_OPENCL_CPP_INCLUDE_DIRS CL/cl.hpp )

- # AMD
- IF( ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD" )
+    IF( ${OPENCL_INCLUDE_DIRS} STREQUAL "OPENCL_INCLUDE_DIRS-NOTFOUND" )
+     SET( SEARCH_PATH ${OPENCL_ROOT_DIR}/inc ${OPENCL_ROOT_DIR}/common/inc ${PATH} "C:/ProgramData/NVIDIA Corporation/NVIDIA GPU Computing SDK/OpenCL/common/inc" "$ENV{ATISTREAMSDKROOT}/include" "C:/Program Files (x86)/AMD APP/include")
+     FIND_PATH(OPENCL_INCLUDE_DIRS CL/cl.h PATHS ${SEARCH_PATH} )
+     FIND_PATH(_OPENCL_CPP_INCLUDE_DIRS CL/cl.hpp PATHS ${SEARCH_PATH} )
+    ENDIF( ${OPENCL_INCLUDE_DIRS} STREQUAL "OPENCL_INCLUDE_DIRS-NOTFOUND" )

-  # The AMD SDK currently installs both x86 and x86_64 libraries
-  # This is only a hack to find out architecture
-  IF( ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD64" )
-    SET(OPENCL_LIB_DIR "$ENV{ATISTREAMSDKROOT}/lib/x86_64")
-  ELSE (${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD64")
-    SET(OPENCL_LIB_DIR "$ENV{ATISTREAMSDKROOT}/lib/x86")
-  ENDIF( ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD64" )
+    SET(_OPENCL_BASE ${OPENCL_INCLUDE_DIRS}/..)

- # NVIDIA
- ELSE( ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD" )
+    IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
+     SET(OPENCL_LIB_DIR ${_OPENCL_BASE}/lib/x64 ${_OPENCL_BASE}/lib/x86_64)
+    ELSE(CMAKE_SIZEOF_VOID_P EQUAL 8)
+     SET(OPENCL_LIB_DIR ${_OPENCL_BASE}/lib/Win32 ${_OPENCL_BASE}/lib/x86)
+    ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 8)

-  IF( ${OPENCL_INCLUDE_DIRS} STREQUAL "OPENCL_INCLUDE_DIRS-NOTFOUND" )
-   SET( SEARCH_PATH ${PATH} "C:/ProgramData/NVIDIA Corporation/NVIDIA GPU Computing SDK/OpenCL/common/inc")
-   FIND_PATH(OPENCL_INCLUDE_DIRS CL/cl.h PATHS ${SEARCH_PATH} )
-   FIND_PATH(_OPENCL_CPP_INCLUDE_DIRS CL/cl.hpp PATHS ${SEARCH_PATH} )
-  ENDIF( ${OPENCL_INCLUDE_DIRS} STREQUAL "OPENCL_INCLUDE_DIRS-NOTFOUND" )
+    FIND_LIBRARY(OPENCL_LIBRARIES OpenCL.lib PATHS ${OPENCL_LIB_DIR})

-  IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
-   SET(OPENCL_LIB_DIR "C:/ProgramData/NVIDIA Corporation/NVIDIA GPU Computing SDK/OpenCL/common/lib/x64")
-  ELSE(CMAKE_SIZEOF_VOID_P EQUAL 8)
-   SET(OPENCL_LIB_DIR "C:/ProgramData/NVIDIA Corporation/NVIDIA GPU Computing SDK/OpenCL/common/lib/Win32")
-  ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 8)
-
- ENDIF( ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD" )
-
-    FIND_LIBRARY(OPENCL_LIBRARIES OpenCL.lib ${OPENCL_LIB_DIR})
-
-    GET_FILENAME_COMPONENT(_OPENCL_INC_CAND ${OPENCL_LIB_DIR}/../../include ABSOLUTE)
+    GET_FILENAME_COMPONENT(_OPENCL_INC_CAND_PRE ${OPENCL_LIBRARIES} PATH)
+    SET(_OPENCL_INC_CAND ${_OPENCL_INC_CAND_PRE}/../../include)

     # On Win32 search relative to the library
     FIND_PATH(OPENCL_INCLUDE_DIRS CL/cl.h PATHS "${_OPENCL_INC_CAND}")
@@ -69,11 +62,19 @@

     # Unix style platforms
     FIND_LIBRARY(OPENCL_LIBRARIES OpenCL
+      PATHS ${OPENCL_ROOT_DIR}/lib ${OPENCL_ROOT_DIR}/common/lib
       ENV LD_LIBRARY_PATH
       )

     GET_FILENAME_COMPONENT(OPENCL_LIB_DIR ${OPENCL_LIBRARIES} PATH)
     GET_FILENAME_COMPONENT(_OPENCL_INC_CAND ${OPENCL_LIB_DIR}/../../include ABSOLUTE)
+
+    SET(_OPENCL_INC_CAND
+        ${_OPENCL_INC_CAND}
+        ${OPENCL_ROOT_DIR}/include
+        ${OPENCL_ROOT_DIR}/inc
+        ${OPENCL_ROOT_DIR}/common/inc
+       )

     # The AMD SDK currently does not place its headers
     # in /usr/include, therefore also search relative


- adding Intel OpenCL kit in search paths

fixes #64

--- cmake/FindOpenCL.cmake
+++ cmake/FindOpenCL.cmake
@@ -97,18 +97,15 @@
             CL/cl.hpp
     )

-    if( ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD64" )
-        set(OPENCL_LIB_DIR "$ENV{ATISTREAMSDKROOT}/lib/x86_64")
-    else()
-        set(OPENCL_LIB_DIR "$ENV{ATISTREAMSDKROOT}/lib/x86")
-    endif()
-
     find_library( OPENCL_LIBRARIES
         NAMES
             OpenCL.lib
         PATHS
-            ${OPENCL_LIB_DIR}
             ENV OpenCL_LIBPATH
+            "$ENV{ATISTREAMSDKROOT}/lib/x86_64"
+            "$ENV{ATISTREAMSDKROOT}/lib/x86"
+            "C:/Program Files (x86)/Intel/OpenCL SDK/2.0/lib/x64"
+            "C:/Program Files (x86)/Intel/OpenCL SDK/2.0/lib/x86"
     )

     get_filename_component( _OPENCL_INC_CAND ${OPENCL_LIB_DIR}/../../include ABSOLUTE )


CMake : Do not use FindPkgConfig on Windows

Even if cmake can find pkg-config (e.g the one supplied with strawberry perl
), we cannot link with pkg-config-found libraries or use the headers -they
are mingw, 32bit-only.

--- cmake/systemd.cmake
+++ cmake/systemd.cmake
@@ -13,11 +13,10 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA

-INCLUDE(FindPkgConfig)
-# http://www.cmake.org/cmake/help/v3.0/module/FindPkgConfig.html
-
 MACRO(CHECK_SYSTEMD)
   IF(UNIX)
+    INCLUDE(FindPkgConfig)
+    # http://www.cmake.org/cmake/help/v3.0/module/FindPkgConfig.html
     SET(WITH_SYSTEMD "auto" CACHE STRING "Enable systemd scripts and notification support")
     IF(WITH_SYSTEMD STREQUAL "yes" OR WITH_SYSTEMD STREQUAL "auto")
       IF(PKG_CONFIG_FOUND)


SVN_SILENT made messages (.desktop file)

--- vlc/vlc.desktop.cmake
+++ vlc/vlc.desktop.cmake
@@ -21,6 +21,10 @@
 Name[nl]=VLC
 Name[pt]=VLC
 Name[pt_BR]=VLC
+Name[sr]=ВЛЦ
+Name[sr@ijekavian]=ВЛЦ
+Name[sr@ijekavianlatin]=VLC
+Name[sr@latin]=VLC
 Name[sv]=VLC
 Name[uk]=VLC
 Name[x-test]=xxVLCxx
@@ -37,6 +41,10 @@
 Comment[nl]=VLC-backend van Phonon
 Comment[pt]=Infra-estrutura do VLC para o Phonon
 Comment[pt_BR]=Infraestrutura do VLC para o Phonon
+Comment[sr]=ВЛЦ као позадина Фонона
+Comment[sr@ijekavian]=ВЛЦ као позадина Фонона
+Comment[sr@ijekavianlatin]=VLC kao pozadina Phonona
+Comment[sr@latin]=VLC kao pozadina Phonona
 Comment[sv]=Phonon VLC-gränssnitt
 Comment[uk]=Модуль VLC Phonon
 Comment[x-test]=xxPhonon VLC backendxx


ERR: Removed useless identity sets of some executable locations.

--- vtkCMakeOptions.cmake
+++ vtkCMakeOptions.cmake
@@ -192,16 +192,10 @@
 # VTK executable locations
 IF(VTK_WRAP_TCL)
   SET(VTK_TCL_EXE ${VTK_EXECUTABLE_PATH}/vtk)
-  SET(VTK_WRAP_TCL_EXE ${VTK_WRAP_TCL_EXE})
   SET(VTK_TCL_HOME ${VTK_SOURCE_DIR}/Wrapping/Tcl)
 ENDIF(VTK_WRAP_TCL)
 IF(VTK_WRAP_PYTHON)
-  SET(VTK_WRAP_PYTHON_EXE ${VTK_WRAP_PYTHON_EXE})
   IF(VTK_BUILD_PYTHON_EXECUTABLE)
     SET(VTK_PYTHON_EXE ${VTK_EXECUTABLE_PATH}/vtkpython)
   ENDIF(VTK_BUILD_PYTHON_EXECUTABLE)
 ENDIF(VTK_WRAP_PYTHON)
-IF(VTK_WRAP_JAVA)
-  SET(VTK_PARSE_JAVA_EXE ${VTK_PARSE_JAVA_EXE})
-  SET(VTK_WRAP_JAVA_EXE ${VTK_WRAP_JAVA_EXE})
-ENDIF(VTK_WRAP_JAVA)


CMake: Fix Cortex-A9 builds with GCC_ARM

Add the `-march` flag for Cortex-A9 GCC_ARM in order to
generate instructions for the armv7-a machine type.

--- tools/cmake/cores/Cortex-A9.cmake
+++ tools/cmake/cores/Cortex-A9.cmake
@@ -1,10 +1,11 @@
-# Copyright (c) 2020 ARM Limited. All rights reserved.
+# Copyright (c) 2020-2021 ARM Limited. All rights reserved.
 # SPDX-License-Identifier: Apache-2.0

 if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
     list(APPEND common_options
         "-mthumb-interwork"
         "-marm"
+        "-march=armv7-a"
         "-mfpu=vfpv3"
         "-mfloat-abi=hard"
         "-mno-unaligned-access"


Changed order of lapack/blas linking when using the system libraries.

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

--- library/NektarCommon.cmake
+++ library/NektarCommon.cmake
@@ -123,7 +123,7 @@
 	ENDIF( USE_ATLAS AND ATLAS_FOUND )

         IF( NEKTAR_USE_SYSTEM_BLAS_LAPACK )
-                 TARGET_LINK_LIBRARIES(${name} ${NATIVE_BLAS} ${NATIVE_LAPACK})
+                 TARGET_LINK_LIBRARIES(${name} ${NATIVE_LAPACK} ${NATIVE_BLAS})
         ENDIF( NEKTAR_USE_SYSTEM_BLAS_LAPACK )

         IF( NEKTAR_USE_METIS )


More variants of finding the date library

--- cmake/Modules/FindHinnantDate.cmake
+++ cmake/Modules/FindHinnantDate.cmake
@@ -53,7 +53,7 @@
 Maybe you need to adjust the search paths or HinnantDate_ROOT_DIR.")

 find_file(HinnantDate_INCLUDE_FILE
-    date.h date/date.h
+    date.h date/date.h include/date/date.h
     HINTS
       ${HinnantDate_ROOT_DIR}
       ${HinnantDate_ROOT_DIR}/include


Add variable HUNTER_USE_CACHE_SERVERS

Add variable HUNTER_USE_CACHE_SERVERS

--- cmake/modules/hunter_download.cmake
+++ cmake/modules/hunter_download.cmake
@@ -312,6 +312,11 @@
   file(
       APPEND
       "${HUNTER_DOWNLOAD_TOOLCHAIN}"
+      "set(HUNTER_USE_CACHE_SERVERS \"${HUNTER_USE_CACHE_SERVERS}\" CACHE INTERNAL \"\")\n"
+  )
+  file(
+      APPEND
+      "${HUNTER_DOWNLOAD_TOOLCHAIN}"
       "list(APPEND HUNTER_CACHE_SERVERS ${HUNTER_CACHE_SERVERS})\n"
   )


Add MinGW flags.

Add MinGW flags.

--- Tudat/External/CMake/compiler.cmake
+++ Tudat/External/CMake/compiler.cmake
@@ -60,11 +60,25 @@
         endif()
     endif()

-    set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
-    set(CMAKE_CXX_FLAGS_RELEASE        "-O2 -DNDEBUG")
+    set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-g")
+    set(CMAKE_CXX_FLAGS_RELEASE        "-g -DNDEBUG")
     set(CMAKE_CXX_FLAGS_DEBUG          "-g")

-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GLIBCXX_USE_CXX11_ABI=0 -Woverloaded-virtual -Wold-style-cast -Wnon-virtual-dtor")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wold-style-cast -Wnon-virtual-dtor")
+
+	# MinGW fixes
+	if( MINGW )
+	  # MinGW fails to build with O2 or O3 optimization on several math.h function
+	  # http://ehc.ac/p/mingw/bugs/2250/
+	  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__NO_INLINE__ -ftrack-macro-expansion=0")
+	  # MinGW gives some c11plus.xe out of memory messages:
+	  # http://sourceforge.net/p/mingw-w64/mailman/message/33182613/
+	  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftrack-macro-expansion=0")
+	  # MinGW32 4.8.1 has no defenitions for _aligned_malloc/realloc/free
+	  #
+	  add_definitions(-DEIGEN_MALLOC_ALREADY_ALIGNED=1)
+	  add_definitions(-DEIGEN_DONT_ALIGN=1)
+	endif()

 elseif( MSVC )
     message(STATUS "Using msvc compiler.")


Dependency upgrades.

Dependency upgrades.

--- build/cmake/versions.cmake
+++ build/cmake/versions.cmake
@@ -31,7 +31,7 @@
 set(LUAROCK_ICONV_VERSION 7-1)
 set(LUAROCK_INSPECT_VERSION 3.1.0-1)
 set(LUAROCK_LIBCIDR_VERSION 0.1.0-1)
-set(LUAROCK_LUACHECK_VERSION 0.14.0-1)
+set(LUAROCK_LUACHECK_VERSION 0.15.0-1)
 set(LUAROCK_LUAPOSIX_VERSION 33.4.0-1)
 set(LUAROCK_LUASOCKET_VERSION 2.0.2-6)
 set(LUAROCK_LUATZ_VERSION 0.3-1)
@@ -49,8 +49,8 @@
 set(LUA_RESTY_SHCACHE_HASH 5d3cbcf8fbad1954cdcb3826afa41afe)
 set(MAVEN_VERSION 3.3.9)
 set(MAVEN_HASH 516923b3955b6035ba6b0a5b031fbd8b)
-set(MONGODB_VERSION 3.0.11)
-set(MONGODB_HASH ce20c4caac31c49aaf10ca44c703a9ed)
+set(MONGODB_VERSION 3.0.12)
+set(MONGODB_HASH 73d7c7b74cd0617d1b6ea83a698f7baf)
 set(MORA_VERSION fea22d544a961ef5cd66dde405cf452b1ae33d2c)
 set(MORA_HASH 1e9c63acbbb0795ed00820a59c6cdcbc)
 set(NGX_DYUPS_VERSION f4bc212bdc64334c5eaf871015c9e21dae7d0c13)
@@ -65,10 +65,10 @@
 set(PCRE_HASH 00aabbfe56d5a48b270f999b508c5ad2)
 set(PERP_VERSION 2.07)
 set(PERP_HASH a2acc7425d556d9635a25addcee9edb5)
-set(PRESTO_VERSION 0.144.1)
-set(PRESTO_HASH 65c55e15fa69fcbf02afc631842aeb31)
-set(RUBY_VERSION 2.2.4)
-set(RUBY_HASH 31203696adbfdda6f2874a2de31f7c5a1f3bcb6628f4d1a241de21b158cd5c76)
+set(PRESTO_VERSION 0.147)
+set(PRESTO_HASH aee28b26897a9f51c1519eb0e0566b59)
+set(RUBY_VERSION 2.2.5)
+set(RUBY_HASH 22f0c6f34c0024e0bcaaa8e6831b7c0041e1ef6120c781618b833bde29626700)
 # Hold at rsyslog 8.14.0 until ElasticSearch issues are fixed (hopefully 8.18):
 # https://github.com/rsyslog/rsyslog/issues/748
 set(RSYSLOG_VERSION 8.14.0)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


fix detection of libdexela.

fix detection of libdexela.

--- cmake/FindDEXELA.cmake
+++ cmake/FindDEXELA.cmake
@@ -8,8 +8,8 @@

 find_package(PackageHandleStandardArgs)

-find_path(DEXELA_INCLUDE_DIRS dexela_api.h PATHS /root/Dexela/include)
-find_library(DEXELA_LIBRARIES dexela PATHS /root/Dexela/dexela-spike)
+find_path(DEXELA_INCLUDE_DIRS dexela_api.h PATHS /usr/include)
+find_library(DEXELA_LIBRARIES dexela)

 find_package_handle_standard_args(DEXELA DEFAULT_MSG DEXELA_LIBRARIES DEXELA_INCLUDE_DIRS)


fixed findMatlab cmake script to find MATLAB 2012b on OS X

--- cmake/FindMatlab.cmake
+++ cmake/FindMatlab.cmake
@@ -90,6 +90,8 @@
       /usr/local/matlab/bin/glnxa64/
       /data/MATLAB/R2011b/bin/glnxa64/
       /Applications/MATLAB_R2011a.app/bin/maci64
+      /Applications/MATLAB_R2012a.app/bin/maci64
+      /Applications/MATLAB_R2012b.app/bin/maci64
       )
   ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 4)

@@ -117,6 +119,8 @@
     /usr/local/matlab/extern/include/
     /data/MATLAB/R2011b/extern/include/
     /Applications/MATLAB_R2011a.app/extern/include/
+    /Applications/MATLAB_R2012a.app/extern/include/
+    /Applications/MATLAB_R2012b.app/extern/include/
     )
 ENDIF(WIN32)


check for PROGRAM_FILES32 before attempt to use in REPLACE

--- cmake/FindOCILib.cmake
+++ cmake/FindOCILib.cmake
@@ -17,7 +17,9 @@

   # read environment variables and change \ to /
   SET(PROGRAM_FILES_32 $ENV{ProgramFiles})
+  if (${PROGRAM_FILES_32})
   STRING(REPLACE "\\\\" "/" PROGRAM_FILES_32 ${PROGRAM_FILES_32})
+  endif(${PROGRAM_FILES_32})

   SET(PROGRAM_FILES_64 $ENV{ProgramW6432})
   if (${PROGRAM_FILES_64})


cmake: add zephyr_library_include_directories_ifdef()

The zephyr_library_* variant is missing the ability to
include directories based on kconfig. So add the function.

Signed-off-by: Daniel Leung <d94e04d205b5962d7873a139ef298b03c1717f72@intel.com>

--- cmake/extensions.cmake
+++ cmake/extensions.cmake
@@ -1448,6 +1448,12 @@
 function(zephyr_library_compile_definitions_ifdef feature_toggle item)
   if(${${feature_toggle}})
     zephyr_library_compile_definitions(${item} ${ARGN})
+  endif()
+endfunction()
+
+function(zephyr_library_include_directories_ifdef feature_toggle)
+  if(${${feature_toggle}})
+    zephyr_library_include_directories(${ARGN})
   endif()
 endfunction()


cmake: check_compiler_flag: Support empty-string options

This commits allows check_compiler_flag to accept the empty string as
an option. There are several use-cases for accepting no flag, one of
which is testing the toolchain itself.

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

--- cmake/extensions.cmake
+++ cmake/extensions.cmake
@@ -882,9 +882,9 @@
   string(MAKE_C_IDENTIFIER check${option}_${lang} ${ok})

   if(${lang} STREQUAL C)
-    check_c_compiler_flag(${option} ${${ok}})
+    check_c_compiler_flag("${option}" ${${ok}})
   else()
-    check_cxx_compiler_flag(${option} ${${ok}})
+    check_cxx_compiler_flag("${option}" ${${ok}})
   endif()

   if(${${${ok}}})


Bug#25611609 LINK WITH DYNAMIC RUNTIME LIBRARIES ON WINDOWS

Patch for 5.5 and 5.6
Use default runtime libraries on windows, i.e. build with /MD

--- cmake/os/Windows.cmake
+++ cmake/os/Windows.cmake
@@ -1,4 +1,4 @@
-# Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 2017, Oracle and/or its affiliates. All rights reserved.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -64,6 +64,7 @@
 ENDIF()

 IF(MSVC)
+  OPTION(LINK_STATIC_RUNTIME_LIBRARIES "Link with /MT" OFF)
   # Enable debug info also in Release build,
   # and create PDB to be able to analyze crashes.
   FOREACH(type EXE SHARED MODULE)
@@ -86,7 +87,9 @@
    CMAKE_C_FLAGS_DEBUG      CMAKE_C_FLAGS_DEBUG_INIT
    CMAKE_CXX_FLAGS_RELEASE  CMAKE_CXX_FLAGS_RELWITHDEBINFO
    CMAKE_CXX_FLAGS_DEBUG    CMAKE_CXX_FLAGS_DEBUG_INIT)
-   STRING(REPLACE "/MD"  "/MT" "${flag}" "${${flag}}")
+   IF(LINK_STATIC_RUNTIME_LIBRARIES)
+     STRING(REPLACE "/MD"  "/MT" "${flag}" "${${flag}}")
+   ENDIF()
    STRING(REPLACE "/Zi"  "/Z7" "${flag}" "${${flag}}")
   ENDFOREACH()


fix glm download problem (#69)

fix glm download problem (#69)

--- cmake/roboschool.cmake
+++ cmake/roboschool.cmake
@@ -22,6 +22,18 @@
 ExternalProject_Get_Property(assimp SOURCE_DIR)
 set(ASSIMP_INCLUDE_PATH "${SOURCE_DIR}/include")
 set(ASSIMP_LIBRARIES "${SOURCE_DIR}/lib/libassimp.so.4")
+
+# glm
+ExternalProject_Add(glm
+  GIT_REPOSITORY "https://github.com/g-truc/glm.git"
+  GIT_TAG "0.9.8"
+  LOG_DOWNLOAD ON
+  CMAKE_ARGS
+    -DCMAKE_INSTALL_PREFIX=<SOURCE_DIR>
+)
+
+ExternalProject_Get_Property(glm SOURCE_DIR)
+set(GLM_INCLUDE_PATH "${SOURCE_DIR}/include")

 ## bullet physics
 ExternalProject_Add(bullet
@@ -67,7 +79,7 @@
 )

 ## make roboschool
-set(ROBOSCHOOL_INCLUDE_DEPS ${ASSIMP_INCLUDE_PATH} ${BULLET_INCLUDE_PATHS})
+set(ROBOSCHOOL_INCLUDE_DEPS ${ASSIMP_INCLUDE_PATH} ${GLM_INCLUDE_PATH} ${BULLET_INCLUDE_PATHS})
 set(ROBOSCHOOL_LIB_DEPS ${ASSIMP_LIBRARIES} ${BULLET_LIBRARIES})

 ## custom make


Added WorkMail into SDK build

Added WorkMail into SDK build

--- cmake/sdksCommon.cmake
+++ cmake/sdksCommon.cmake
@@ -150,6 +150,7 @@
 list(APPEND C2J_LIST "waf-regional:2016-11-28")
 list(APPEND C2J_LIST "workspaces:2015-04-08")
 list(APPEND C2J_LIST "workdocs:2016-05-01")
+list(APPEND C2J_LIST "workmail:2017-10-01")
 list(APPEND C2J_LIST "xray:2016-04-12")

 set(HIGH_LEVEL_SDK_LIST "")


Gmock from source on Debian buster (#1022)

* Separate target creation from gtest/gmock finding

Signed-off-by: Shane Loretz <7fde345e8e2e22c78a1570a4807e4629866dc7de@osrfoundation.org>

* Prefer gmock/gtest from source if one unavailable

Signed-off-by: Shane Loretz <7fde345e8e2e22c78a1570a4807e4629866dc7de@osrfoundation.org>

* Add /usr/src as possible include path for gtest and misc refactor

Signed-off-by: Shane Loretz <7fde345e8e2e22c78a1570a4807e4629866dc7de@osrfoundation.org>

* or -> OR

Signed-off-by: Shane Loretz <7fde345e8e2e22c78a1570a4807e4629866dc7de@osrfoundation.org>

--- cmake/test/gtest.cmake
+++ cmake/test/gtest.cmake
@@ -234,6 +234,8 @@
   #Find GTest
   set(_gtest_include_paths "${include_path}/gtest")
   set(_gtest_source_paths "${src_path}/gtest/src")
+  list(APPEND _gtest_include_paths "${include_path}/googletest/googletest/include/gtest")
+  list(APPEND _gtest_source_paths "${src_path}/googletest/googletest/src")
   if(CATKIN_TOPLEVEL)
     # Ensure current workspace is searched before system path
     list(INSERT _gtest_include_paths 0 "${CMAKE_SOURCE_DIR}/googletest/googletest/include/gtest")
@@ -255,6 +257,8 @@
   #Find GMock
   set(_gmock_include_paths "${include_path}/gmock")
   set(_gmock_source_paths "${src_path}/gmock/src")
+  list(APPEND _gmock_include_paths "${include_path}/googletest/googlemock/include/gmock")
+  list(APPEND _gmock_source_paths "${src_path}/googletest/googlemock/src")
   if(CATKIN_TOPLEVEL)
     # Ensure current workspace is searched before system path
     list(INSERT _gmock_include_paths 0 "${CMAKE_SOURCE_DIR}/googletest/googlemock/include/gmock")
@@ -290,118 +294,131 @@
 endfunction()

 find_package(GMock QUIET)
-if(NOT GMOCK_FOUND)
-  find_package(GTest QUIET)
-  if(NOT GTEST_FOUND)
-    # only add gmock/gtest directory once per workspace
-    if(NOT TARGET gtest AND NOT TARGET gmock)
-      # Fall back to system-installed gmock source (e.g. Ubuntu)
-      set(_include_paths "/usr/include")
-      set(_source_paths "/usr/src")
-
-      catkin_find_google_test_source("${_include_paths}" "${_source_paths}" gtest_found
-                                     gtest_include_dir gtest_lib_dir gtest_libs gtest_main_libs
-                                     gmock_found gmock_include_dir gmock_lib_dir gmock_libs
-                                     gmock_main_libs base_dir)
-      if(gtest_found)
-        set(GTEST_FROM_SOURCE_FOUND ${gtest_found} CACHE INTERNAL "")
-        set(GTEST_FROM_SOURCE_INCLUDE_DIRS ${gtest_include_dir} CACHE INTERNAL "")
-        set(GTEST_FROM_SOURCE_LIBRARY_DIRS ${gtest_lib_dir} CACHE INTERNAL "")
-        set(GTEST_FROM_SOURCE_LIBRARIES ${gtest_libs} CACHE INTERNAL "")
-        set(GTEST_FROM_SOURCE_MAIN_LIBRARIES ${gtest_main_libs} CACHE INTERNAL "")
-        if(gmock_found)
-          set(GMOCK_FROM_SOURCE_FOUND ${gmock_found} CACHE INTERNAL "")
-          set(GMOCK_FROM_SOURCE_INCLUDE_DIRS ${gmock_include_dir} CACHE INTERNAL "")
-          set(GMOCK_FROM_SOURCE_LIBRARY_DIRS ${gmock_lib_dir} CACHE INTERNAL "")
-          set(GMOCK_FROM_SOURCE_LIBRARIES ${gmock_libs} CACHE INTERNAL "")
-          set(GMOCK_FROM_SOURCE_MAIN_LIBRARIES ${gmock_main_libs} CACHE INTERNAL "")
-          message(STATUS "Found gmock sources under '${base_dir}': gmock will be built")
-        endif()
-        if(base_dir)
-          # overwrite CMake install command to skip install rules for gtest targets
-          # which have been added in version 1.8.0
-          _use_custom_install()
-          set(_CATKIN_SKIP_INSTALL_RULES TRUE)
-          add_subdirectory(${base_dir} ${gtest_lib_dir})
-          set(_CATKIN_SKIP_INSTALL_RULES FALSE)
-          set_target_properties(${gtest_libs} ${gtest_main_libs}
-                                PROPERTIES EXCLUDE_FROM_ALL 1)
-          if(gmock_found)
-            set_target_properties(${gmock_libs} ${gmock_main_libs}
-                                  PROPERTIES EXCLUDE_FROM_ALL 1)
-          endif()
-        endif()
-        message(STATUS "Found gtest sources under '${base_dir}': gtests will be built")
-      else()
-        if(CATKIN_TOPLEVEL)
-          message(STATUS "gtest not found, C++ tests can not be built. Please install the gtest headers globally in your system or checkout gtest (by running 'git clone  https://github.com/google/googletest.git -b release-1.8.0' in the source space '${CMAKE_SOURCE_DIR}' of your workspace) to enable gtests")
-        else()
-          message(STATUS "gtest not found, C++ tests can not be built. Please install the gtest headers globally in your system to enable gtests")
-        endif()
+find_package(GTest QUIET)
+if(NOT GMOCK_FOUND OR NOT GTEST_FOUND)
+  # If we find one but not the other, see if we can get both from source
+  # only add gmock/gtest directory once per workspace
+  if(NOT TARGET gtest AND NOT TARGET gmock)
+    # Fall back to system-installed gmock source (e.g. Ubuntu)
+    set(_include_paths "/usr/include" "/usr/src")
+    set(_source_paths "/usr/src")
+
+    catkin_find_google_test_source("${_include_paths}" "${_source_paths}" gtest_found
+                                   gtest_include_dir gtest_lib_dir gtest_libs gtest_main_libs
+                                   gmock_found gmock_include_dir gmock_lib_dir gmock_libs
+                                   gmock_main_libs base_dir)
+    if (gtest_found AND gmock_found)
+      if(GMOCK_FOUND OR GTEST_FOUND)
+        message(STATUS "Forcing gtest/gmock from source, though one was otherwise available.")
       endif()
+      set(FORCE_GTEST_GMOCK_FROM_SOURCE TRUE)
     endif()
-
-    if(GMOCK_FROM_SOURCE_FOUND)
-      # set the same variables as find_package()
-      # do NOT set in the cache since when using gmock/gtest from source
-      # we must always add the subdirectory to have their targets defined
-      set(GMOCK_FOUND ${GMOCK_FROM_SOURCE_FOUND})
-      set(GMOCK_INCLUDE_DIRS ${GMOCK_FROM_SOURCE_INCLUDE_DIRS})
-      set(GMOCK_LIBRARY_DIRS ${GMOCK_FROM_SOURCE_LIBRARY_DIRS})
-      set(GMOCK_LIBRARIES ${GMOCK_FROM_SOURCE_LIBRARIES})
-      set(GMOCK_MAIN_LIBRARIES ${GMOCK_FROM_SOURCE_MAIN_LIBRARIES})
-      set(GMOCK_BOTH_LIBRARIES ${GMOCK_LIBRARIES} ${GMOCK_MAIN_LIBRARIES})
+  endif()
+endif()
+
+if(FORCE_GTEST_GMOCK_FROM_SOURCE OR (NOT GMOCK_FOUND AND NOT GTEST_FOUND))
+  if(gtest_found)
+    set(GTEST_FROM_SOURCE_FOUND ${gtest_found} CACHE INTERNAL "")
+    set(GTEST_FROM_SOURCE_INCLUDE_DIRS ${gtest_include_dir} CACHE INTERNAL "")
+    set(GTEST_FROM_SOURCE_LIBRARY_DIRS ${gtest_lib_dir} CACHE INTERNAL "")
+    set(GTEST_FROM_SOURCE_LIBRARIES ${gtest_libs} CACHE INTERNAL "")
+    set(GTEST_FROM_SOURCE_MAIN_LIBRARIES ${gtest_main_libs} CACHE INTERNAL "")
+    message(STATUS "Found gtest sources under '${base_dir}': gtests will be built")
+  endif()
+  if(gmock_found)
+    set(GMOCK_FROM_SOURCE_FOUND ${gmock_found} CACHE INTERNAL "")
+    set(GMOCK_FROM_SOURCE_INCLUDE_DIRS ${gmock_include_dir} CACHE INTERNAL "")
+    set(GMOCK_FROM_SOURCE_LIBRARY_DIRS ${gmock_lib_dir} CACHE INTERNAL "")
+    set(GMOCK_FROM_SOURCE_LIBRARIES ${gmock_libs} CACHE INTERNAL "")
+    set(GMOCK_FROM_SOURCE_MAIN_LIBRARIES ${gmock_main_libs} CACHE INTERNAL "")
+    message(STATUS "Found gmock sources under '${base_dir}': gmock will be built")
+  endif()
+  if(base_dir)
+    # overwrite CMake install command to skip install rules for gtest targets
+    # which have been added in version 1.8.0
+    _use_custom_install()
+    set(_CATKIN_SKIP_INSTALL_RULES TRUE)
+    add_subdirectory(${base_dir} ${gtest_lib_dir})
+    set(_CATKIN_SKIP_INSTALL_RULES FALSE)
+    set_target_properties(${gtest_libs} ${gtest_main_libs}
+                          PROPERTIES EXCLUDE_FROM_ALL 1)
+    if(gmock_found)
+      set_target_properties(${gmock_libs} ${gmock_main_libs}
+                            PROPERTIES EXCLUDE_FROM_ALL 1)
     endif()
-
-    if(GTEST_FROM_SOURCE_FOUND)
-      # set the same variables as find_package()
-      # do NOT set in the cache since when using gtest from source
-      # we must always add the subdirectory to have their targets defined
-      set(GTEST_FOUND ${GTEST_FROM_SOURCE_FOUND})
-      set(GTEST_INCLUDE_DIRS ${GTEST_FROM_SOURCE_INCLUDE_DIRS})
-      set(GTEST_LIBRARY_DIRS ${GTEST_FROM_SOURCE_LIBRARY_DIRS})
-      set(GTEST_LIBRARIES ${GTEST_FROM_SOURCE_LIBRARIES})
-      set(GTEST_MAIN_LIBRARIES ${GTEST_FROM_SOURCE_MAIN_LIBRARIES})
-      set(GTEST_BOTH_LIBRARIES ${GTEST_LIBRARIES} ${GTEST_MAIN_LIBRARIES})
-    endif()
-  else()
+  endif()
+
+  if(GMOCK_FROM_SOURCE_FOUND)
+    # set the same variables as find_package()
+    # do NOT set in the cache since when using gmock/gtest from source
+    # we must always add the subdirectory to have their targets defined
+    set(GMOCK_FOUND ${GMOCK_FROM_SOURCE_FOUND})
+    set(GMOCK_INCLUDE_DIRS ${GMOCK_FROM_SOURCE_INCLUDE_DIRS})
+    set(GMOCK_LIBRARY_DIRS ${GMOCK_FROM_SOURCE_LIBRARY_DIRS})
+    set(GMOCK_LIBRARIES ${GMOCK_FROM_SOURCE_LIBRARIES})
+    set(GMOCK_MAIN_LIBRARIES ${GMOCK_FROM_SOURCE_MAIN_LIBRARIES})
+    set(GMOCK_BOTH_LIBRARIES ${GMOCK_LIBRARIES} ${GMOCK_MAIN_LIBRARIES})
+  endif()
+
+  if(GTEST_FROM_SOURCE_FOUND)
+    # set the same variables as find_package()
+    # do NOT set in the cache since when using gtest from source
+    # we must always add the subdirectory to have their targets defined
+    set(GTEST_FOUND ${GTEST_FROM_SOURCE_FOUND})
+    set(GTEST_INCLUDE_DIRS ${GTEST_FROM_SOURCE_INCLUDE_DIRS})
+    set(GTEST_LIBRARY_DIRS ${GTEST_FROM_SOURCE_LIBRARY_DIRS})
+    set(GTEST_LIBRARIES ${GTEST_FROM_SOURCE_LIBRARIES})
+    set(GTEST_MAIN_LIBRARIES ${GTEST_FROM_SOURCE_MAIN_LIBRARIES})
+    set(GTEST_BOTH_LIBRARIES ${GTEST_LIBRARIES} ${GTEST_MAIN_LIBRARIES})
+  endif()
+else()
+  if(GMOCK_FOUND)
+    message(STATUS "Found gmock: gmock and gtests will be built")
+    set(GMOCK_FOUND ${GMOCK_FOUND} CACHE INTERNAL "")
+    set(GMOCK_INCLUDE_DIRS ${GMOCK_INCLUDE_DIRS} CACHE INTERNAL "")
+    set(GMOCK_LIBRARIES ${GMOCK_LIBRARIES} CACHE INTERNAL "")
+    set(GMOCK_MAIN_LIBRARIES ${GMOCK_MAIN_LIBRARIES} CACHE INTERNAL "")
+    set(GMOCK_BOTH_LIBRARIES ${GMOCK_BOTH_LIBRARIES} CACHE INTERNAL "")
+
+    set(GTEST_FOUND ${GMOCK_FOUND} CACHE INTERNAL "")
+    set(GTEST_INCLUDE_DIRS ${GMOCK_INCLUDE_DIRS} CACHE INTERNAL "")
+    set(GTEST_LIBRARY_DIRS ${GMOCK_LIBRARY_DIRS} CACHE INTERNAL "")
+    set(GTEST_LIBRARIES ${GMOCK_LIBRARIES} CACHE INTERNAL "")
+    set(GTEST_MAIN_LIBRARIES ${GMOCK_MAIN_LIBRARIES} CACHE INTERNAL "")
+    set(GTEST_BOTH_LIBRARIES ${GMOCK_BOTH_LIBRARIES} CACHE INTERNAL "")
+  elseif(GTEST_FOUND)
     message(STATUS "Found gtest: gtests will be built")
-    if(NOT TARGET gtest)
-      add_library(gtest SHARED IMPORTED)
-      set_target_properties(gtest PROPERTIES IMPORTED_LOCATION "${GTEST_LIBRARIES}")
-    endif()
-    if(NOT TARGET gtest_main)
-      add_library(gtest_main SHARED IMPORTED)
-      set_target_properties(gtest_main PROPERTIES IMPORTED_LOCATION "${GTEST_MAIN_LIBRARIES}")
-    endif()
     set(GTEST_FOUND ${GTEST_FOUND} CACHE INTERNAL "")
     set(GTEST_INCLUDE_DIRS ${GTEST_INCLUDE_DIRS} CACHE INTERNAL "")
     set(GTEST_LIBRARIES ${GTEST_LIBRARIES} CACHE INTERNAL "")
     set(GTEST_MAIN_LIBRARIES ${GTEST_MAIN_LIBRARIES} CACHE INTERNAL "")
     set(GTEST_BOTH_LIBRARIES ${GTEST_BOTH_LIBRARIES} CACHE INTERNAL "")
   endif()
-else()
-  message(STATUS "Found gmock: gmock and gtests will be built")
-  if(NOT TARGET gmock)
-    add_library(gmock UNKNOWN IMPORTED)
-    set_target_properties(gmock PROPERTIES IMPORTED_LOCATION "${GMOCK_LIBRARIES}")
-  endif()
-  if(NOT TARGET gmock_main)
-    add_library(gmock_main UNKNOWN IMPORTED)
-    set_target_properties(gmock_main PROPERTIES IMPORTED_LOCATION "${GMOCK_MAIN_LIBRARIES}")
-  endif()
-  set(GMOCK_FOUND ${GMOCK_FOUND} CACHE INTERNAL "")
-  set(GMOCK_INCLUDE_DIRS ${GMOCK_INCLUDE_DIRS} CACHE INTERNAL "")
-  set(GMOCK_LIBRARIES ${GMOCK_LIBRARIES} CACHE INTERNAL "")
-  set(GMOCK_MAIN_LIBRARIES ${GMOCK_MAIN_LIBRARIES} CACHE INTERNAL "")
-  set(GMOCK_BOTH_LIBRARIES ${GMOCK_BOTH_LIBRARIES} CACHE INTERNAL "")
-
-  set(GTEST_FOUND ${GMOCK_FOUND} CACHE INTERNAL "")
-  set(GTEST_INCLUDE_DIRS ${GMOCK_INCLUDE_DIRS} CACHE INTERNAL "")
-  set(GTEST_LIBRARY_DIRS ${GMOCK_LIBRARY_DIRS} CACHE INTERNAL "")
-  set(GTEST_LIBRARIES ${GMOCK_LIBRARIES} CACHE INTERNAL "")
-  set(GTEST_MAIN_LIBRARIES ${GMOCK_MAIN_LIBRARIES} CACHE INTERNAL "")
-  set(GTEST_BOTH_LIBRARIES ${GMOCK_BOTH_LIBRARIES} CACHE INTERNAL "")
+endif()
+
+if(NOT GTEST_FOUND)
+  if(CATKIN_TOPLEVEL)
+    message(STATUS "gtest not found, C++ tests can not be built. Please install the gtest headers globally in your system or checkout gtest (by running 'git clone  https://github.com/google/googletest.git -b release-1.8.0' in the source space '${CMAKE_SOURCE_DIR}' of your workspace) to enable gtests")
+  else()
+    message(STATUS "gtest not found, C++ tests can not be built. Please install the gtest headers globally in your system to enable gtests")
+  endif()
+endif()
+
+if(GMOCK_FOUND AND NOT TARGET gmock)
+  add_library(gmock UNKNOWN IMPORTED)
+  set_target_properties(gmock PROPERTIES IMPORTED_LOCATION "${GMOCK_LIBRARIES}")
+endif()
+if(GMOCK_FOUND AND NOT TARGET gmock_main)
+  add_library(gmock_main UNKNOWN IMPORTED)
+  set_target_properties(gmock_main PROPERTIES IMPORTED_LOCATION "${GMOCK_MAIN_LIBRARIES}")
+endif()
+if(GTEST_FOUND AND NOT TARGET gtest)
+  add_library(gtest SHARED IMPORTED)
+  set_target_properties(gtest PROPERTIES IMPORTED_LOCATION "${GTEST_LIBRARIES}")
+endif()
+if(GTEST_FOUND AND NOT TARGET gtest_main)
+  add_library(gtest_main SHARED IMPORTED)
+  set_target_properties(gtest_main PROPERTIES IMPORTED_LOCATION "${GTEST_MAIN_LIBRARIES}")
 endif()

 # For Visual C++, need to increase variadic template size to build gtest


search for newest cxxtestgen script first

If its not found, nly then search for the .py version, and if that's
not found, then search for the .pl version. I think this should
close bug #4

--- lib/FindCxxtest.cmake
+++ lib/FindCxxtest.cmake
@@ -14,7 +14,7 @@
 # for the Python version.
 FIND_PACKAGE(PythonInterp)
 IF (PYTHONINTERP_FOUND)
-	FIND_PATH(CXXTEST_PYTHON_BIN_DIR cxxtestgen.py
+	FIND_PATH(CXXTEST_PYTHON_BIN_DIR cxxtestgen
 		$ENV{CXXTEST_BIN_DIR}
 		/usr/bin
 		/usr/local/bin
@@ -22,13 +22,13 @@
 	)
 	IF (CXXTEST_PYTHON_BIN_DIR)
 		SET(CXXTEST_FOUND 1)
-		SET(CXXTEST_GEN "${CXXTEST_PYTHON_BIN_DIR}/cxxtestgen.py" CACHE FILEPATH "CxxTest binary filepath")
+		SET(CXXTEST_GEN "${CXXTEST_PYTHON_BIN_DIR}/cxxtestgen" CACHE FILEPATH "CxxTest binary filepath")
 	ENDIF (CXXTEST_PYTHON_BIN_DIR)

 	# Sometimes, the python version doesn't have a .py extension.
 	# repeat the above search, without the extension.
 	IF (NOT CXXTEST_FOUND)
-		FIND_PATH(CXXTEST_PYTHON_BIN_DIR cxxtestgen
+		FIND_PATH(CXXTEST_PYTHON_BIN_DIR cxxtestgen.py
 			$ENV{CXXTEST_BIN_DIR}
 			/usr/bin
 			/usr/local/bin
@@ -36,7 +36,7 @@
 		)
 		IF (CXXTEST_PYTHON_BIN_DIR)
 			SET(CXXTEST_FOUND 1)
-			SET(CXXTEST_GEN "${CXXTEST_PYTHON_BIN_DIR}/cxxtestgen" CACHE FILEPATH "CxxTest binary filepath")
+			SET(CXXTEST_GEN "${CXXTEST_PYTHON_BIN_DIR}/cxxtestgen.py" CACHE FILEPATH "CxxTest binary filepath")
 		ENDIF (CXXTEST_PYTHON_BIN_DIR)
 	ENDIF (NOT CXXTEST_FOUND)
 ENDIF (PYTHONINTERP_FOUND)


Fix a typo introduced in r168577: FlAGS -> FLAGS (note the lowercase ell)

Now we really pass -Wcovered-switch-default if the compiler supports it.

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

--- cmake/modules/HandleLLVMOptions.cmake
+++ cmake/modules/HandleLLVMOptions.cmake
@@ -197,11 +197,11 @@
     endif (LLVM_ENABLE_PEDANTIC)
     check_cxx_compiler_flag("-Werror -Wcovered-switch-default" CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG)
     if( CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG )
-      set( CMAKE_CXX_FlAGS "${CMAKE_CXX_FLAGS} -Wcovered-switch-default" )
+      set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wcovered-switch-default" )
     endif()
     check_c_compiler_flag("-Werror -Wcovered-switch-default" C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG)
     if( C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG )
-      set( CMAKE_C_FlAGS "${CMAKE_C_FLAGS} -Wcovered-switch-default" )
+      set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wcovered-switch-default" )
     endif()
   endif (LLVM_ENABLE_WARNINGS)
   if (LLVM_ENABLE_WERROR)


From Pere:
small fix for https://savannah.cern.ch/bugs/?98510

git-svn-id: acec3fd5b7ea1eb9e79d6329d318e8118ee2e14f@47487 27541ba8-7e3a-0410-8455-c3a389f83636

--- cmake/modules/RootConfiguration.cmake
+++ cmake/modules/RootConfiguration.cmake
@@ -423,6 +423,8 @@
 configure_file(${CMAKE_SOURCE_DIR}/config/memprobe.in ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/memprobe @ONLY)
 configure_file(${CMAKE_SOURCE_DIR}/config/thisroot.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/thisroot.sh @ONLY)
 configure_file(${CMAKE_SOURCE_DIR}/config/thisroot.csh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/thisroot.csh @ONLY)
+configure_file(${CMAKE_SOURCE_DIR}/config/setxrd.csh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/setxrd.csh COPYONLY)
+configure_file(${CMAKE_SOURCE_DIR}/config/setxrd.sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/setxrd.sh COPYONLY)
 configure_file(${CMAKE_SOURCE_DIR}/config/genreflex.in ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/genreflex @ONLY)
 configure_file(${CMAKE_SOURCE_DIR}/config/genreflex-rootcint.in ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/genreflex-rootcint @ONLY)
 configure_file(${CMAKE_SOURCE_DIR}/config/proofserv.in ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/proofserv @ONLY)
@@ -438,7 +440,9 @@
               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/memprobe
               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/thisroot.sh
               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/thisroot.csh
-			  ${thisrootbat}
+              ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/setxrd.csh
+              ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/setxrd.sh
+              ${thisrootbat}
               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/root-config
               ${CMAKE_SOURCE_DIR}/cmake/scripts/setenvwrap.csh
               ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/roots


cmake: Set the c/cxx flags to more sensible values for our build profiles

--- cmake/modules/TelepathyDefaults.cmake
+++ cmake/modules/TelepathyDefaults.cmake
@@ -15,16 +15,17 @@

 # Set compiler flags
 if(CMAKE_COMPILER_IS_GNUCXX)
-    set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DQT_NO_DEBUG -DQT_NO_CAST_FROM_ASCII")
-    set(CMAKE_CXX_FLAGS_RELEASE        "-O2 -DQT_NO_DEBUG -DQT_NO_CAST_FROM_ASCII")
-    set(CMAKE_CXX_FLAGS_DEBUG          "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline -DENABLE_DEBUG -DQT_NO_CAST_FROM_ASCII")
-    set(CMAKE_CXX_FLAGS_DEBUGFULL      "-g3 -fno-inline -DENABLE_DEBUG -DQT_NO_CAST_FROM_ASCII")
-    set(CMAKE_CXX_FLAGS_PROFILE        "-g3 -fno-inline -DENABLE_DEBUG -DQT_NO_CAST_FROM_ASCII")
-    set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -g -DQT_NO_DEBUG")
-    set(CMAKE_C_FLAGS_RELEASE          "-O2 -DQT_NO_DEBUG")
-    set(CMAKE_C_FLAGS_DEBUG            "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline -DENABLE_DEBUG")
-    set(CMAKE_C_FLAGS_DEBUGFULL        "-g3 -fno-inline -DENABLE_DEBUG")
-    set(CMAKE_C_FLAGS_PROFILE          "-g3 -fno-inline -DENABLE_DEBUG")
+    set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -ggdb")
+    set(CMAKE_CXX_FLAGS_RELEASE        "-O2 -DNDEBUG")
+    set(CMAKE_CXX_FLAGS_DEBUG          "-ggdb -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
+    set(CMAKE_CXX_FLAGS_DEBUGFULL      "-O0 -g3 -ggdb -fno-inline")
+    set(CMAKE_CXX_FLAGS_PROFILE        "-pg -g3 -ggdb -DNDEBUG")
+
+    set(CMAKE_C_FLAGS_RELWITHDEBINFO   "-O2 -ggdb")
+    set(CMAKE_C_FLAGS_RELEASE          "-O2 -DNDEBUG")
+    set(CMAKE_C_FLAGS_DEBUG            "-ggdb -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
+    set(CMAKE_C_FLAGS_DEBUGFULL        "-O0 -g3 -ggdb -fno-inline")
+    set(CMAKE_C_FLAGS_PROFILE          "-pg -g3 -ggdb -DNDEBUG")

     set(DISABLE_WERROR 0 CACHE BOOL "compile without -Werror (normally enabled in development builds)")


[t:4814] fix cmake error

[t:4814] fix cmake error

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

--- cmake_modules/TokuSetupCompiler.cmake
+++ cmake_modules/TokuSetupCompiler.cmake
@@ -66,7 +66,7 @@
       set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}")
     endif ()
   endforeach(flag)
-endfunction(set_flag_if_exists)
+endfunction(set_cflags_if_supported)

 ## disable some warnings
 set_cflags_if_supported(


BUG: missing end of line in nmake extra opt file

--- SuperBuild/CMake/External_gdal.cmake
+++ SuperBuild/CMake/External_gdal.cmake
@@ -113,11 +113,11 @@
     ${CMAKE_BINARY_DIR}/nmake_gdal_extra.opt)

   foreach(opt_line ${GDAL_SB_EXTRA_OPTIONS})
-    file(APPEND "${CMAKE_BINARY_DIR}/nmake_gdal_extra.opt" "${opt_line}")
+    file(APPEND "${CMAKE_BINARY_DIR}/nmake_gdal_extra.opt" "${opt_line}\r\n")
   endforeach()

   if(OTB_TARGET_SYSTEM_ARCH_IS_X64)
-    file(APPEND "${CMAKE_BINARY_DIR}/nmake_gdal_extra.opt" "WIN64=YES")
+    file(APPEND "${CMAKE_BINARY_DIR}/nmake_gdal_extra.opt" "WIN64=YES\r\n")
   endif()

   set(GDAL_CONFIGURE_COMMAND ${CMAKE_COMMAND} -E touch  ${CMAKE_BINARY_DIR}/configure)


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


STYLE: Nightly Date Stamp

STYLE: Nightly Date Stamp

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

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


KWSys Nightly Date Stamp

KWSys Nightly Date Stamp

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

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


fixed eigsolver test linking

fixed eigsolver test linking

Former-commit-id: aafdce5182c2529f4f15e0c6c0846ff75bbdedcd

--- cmake-modules/FindPackageHDF5.cmake
+++ cmake-modules/FindPackageHDF5.cmake
@@ -27,6 +27,10 @@
 set(HDF5_FIND_DEBUG OFF)
 if(NOT HDF5_WANT_VERSION)
     set(HDF5_WANT_VERSION 1.10)
+endif()
+
+if(NOT HDF5_ROOT AND $ENV{HDF5_ROOT})
+    set(HDF5_ROOT $ENV{HDF5_ROOT})
 endif()

 if(HDF5_REQUIRED)


Added uninstall target

Added uninstall target

Former-commit-id: f0d6eb0140236e6180ddeccd6ef9b44fd1782f01

--- cmake-modules/cmake_uninstall.cmake
+++ cmake-modules/cmake_uninstall.cmake
@@ -1,21 +0,0 @@
-if(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt")
-    message(FATAL_ERROR "Cannot find install manifest: @CMAKE_BINARY_DIR@/install_manifest.txt")
-endif()
-
-file(READ "@CMAKE_BINARY_DIR@/install_manifest.txt" files)
-string(REGEX REPLACE "\n" ";" files "${files}")
-foreach(file ${files})
-    message(STATUS "Uninstalling $ENV{DESTDIR}${file}")
-    if(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
-        exec_program(
-                "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
-                OUTPUT_VARIABLE rm_out
-                RETURN_VALUE rm_retval
-        )
-        if(NOT "${rm_retval}" STREQUAL 0)
-            message(FATAL_ERROR "Problem when removing $ENV{DESTDIR}${file}")
-        endif()
-    else(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
-        message(STATUS "File $ENV{DESTDIR}${file} does not exist.")
-    endif()
-endforeach()


Change generate_root_dictionaries to take include_dirs as parameter

--- cmake/JPetFramework-Utilities.cmake
+++ cmake/JPetFramework-Utilities.cmake
@@ -14,7 +14,7 @@
 # EXCLUDE or limiting to these given after INCLUDE.
 #
 function(generate_root_dictionaries OUT_VAR)
-  cmake_parse_arguments(ARG "" "" "SOURCES;EXCLUDE;INCLUDE" ${ARGN})
+  cmake_parse_arguments(ARG "" "" "SOURCES;EXCLUDE;INCLUDE;INCLUDE_DIRS" ${ARGN})
   # generate ROOT dictionaries for all other source files
   foreach(source ${ARG_SOURCES})
     get_filename_component(name ${source} NAME)
@@ -44,8 +44,7 @@
       file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/Dictionaries)
       set(dictionary
         ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/Dictionaries/${name}Dictionary)
-      get_directory_property(incdirs INCLUDE_DIRECTORIES)
-      set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "${incdirs};/")
+      set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "${ARG_INCLUDE_DIRS};/")
       string(REGEX REPLACE ^/ "" header "${header}")
       if(EXISTS ${linkdef})
         string(REGEX REPLACE ^/ "" linkdef "${linkdef}")
@@ -58,7 +57,7 @@
           OPTIONS -p
           )
       endif()
-      set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "${incdirs}")
+      set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "${ARG_INCLUDE_DIRS}")
       list(APPEND dictionaries ${dictionary}.cxx)
     endif()
   endforeach()


fix string

fix string

git-svn-id: 6b1c4fe79111c0bc0cce83313250759594f8984b@8885 e128ff1e-fa79-4151-a8cb-522299a2c450

--- cmake/OptimizeForArchitecture.cmake
+++ cmake/OptimizeForArchitecture.cmake
@@ -178,15 +178,7 @@
 endmacro()

 macro(OptimizeForArchitecture)
-   set(TARGET_ARCHITECTURE "auto" CACHE STRING "CPU architecture to optimize for. \
-Using an incorrect setting here can result in crashes of the resulting binary because of invalid instructions used. \
-Setting the value to \"auto\" will try to optimize for the architecture where cmake is called. \
-Other supported values are: \"none\", \"generic\", \"core\", \"merom\" (65nm Core2), \
-\"penryn\" (45nm Core2), \"nehalem\", \"westmere\", \"sandy-bridge\", \"ivy-bridge\", \
-\"haswell\", \"broadwell\", \"skylake\", \"skylake-avx512\", \"cannonlake\", \"silvermont\", \
-\"goldmont\", \"knl\" (Knights Landing), \"atom\", \"k8\", \"k8-sse3\", \"barcelona\", \
-\"istanbul\", \"magny-cours\", \"bulldozer\", \"interlagos\", \"piledriver\", \
-\"AMD 14h\", \"AMD 16h\".")
+   set(TARGET_ARCHITECTURE "auto" CACHE STRING "CPU architecture to optimize for. Using an incorrect setting here can result in crashes of the resulting binary because of invalid instructions used. Setting the value to \"auto\" will try to optimize for the architecture where cmake is called. Other supported values are: \"none\", \"generic\", \"core\", \"merom\" (65nm Core2), \"penryn\" (45nm Core2), \"nehalem\", \"westmere\", \"sandy-bridge\", \"ivy-bridge\", \"haswell\", \"broadwell\", \"skylake\", \"skylake-avx512\", \"cannonlake\", \"silvermont\", \"goldmont\", \"knl\" (Knights Landing), \"atom\", \"k8\", \"k8-sse3\", \"barcelona\", \"istanbul\", \"magny-cours\", \"bulldozer\", \"interlagos\", \"piledriver\", \"AMD 14h\", \"AMD 16h\".")
    set(_force)
    if(NOT _last_target_arch STREQUAL "${TARGET_ARCHITECTURE}")
       message(STATUS "target changed from \"${_last_target_arch}\" to \"${TARGET_ARCHITECTURE}\"")


Raise the error/warning limit.

Raise the error/warning limit.

--- CTestConfig.cmake
+++ CTestConfig.cmake
@@ -11,3 +11,7 @@
 set(CTEST_DROP_SITE "eigen.tuxfamily.org")
 set(CTEST_DROP_LOCATION "/CDash/submit.php?project=Eigen")
 set(CTEST_DROP_SITE_CDASH TRUE)
+
+## A tribute to Dynamic!
+set(CTEST_CUSTOM_MAXIMUM_NUMBER_OF_WARNINGS "33331")
+set(CTEST_CUSTOM_MAXIMUM_NUMBER_OF_ERRORS "33331")


Added a "lib" target for Win32. The target is a synonym for "fields", but abstracts away the component hierarchy -- thereby making documentation easier to write and providing increased OS symmetry. Convenience for the developer is just icing on the cake.

--- fields/component_definitions.cmake
+++ fields/component_definitions.cmake
@@ -46,6 +46,13 @@
     set(${COMPONENT}_IMPORT_LIBS ${GEOMETRY_IMPORT_LIBS}
         ${${COMPONENT}_IMPORT_LIB}
         CACHE STRING " Cumulative import libraries (win32) for ${PROJECT_NAME}" FORCE)
+
+    # Add a Win32 "lib" target
+    # Doing it here makes it a synonym for "Fields", but abstracts away
+    # the component hierarchy.
+    add_custom_target(lib)
+    add_dependencies(lib ${${COMPONENT}_IMPORT_LIBS})
+    set_target_properties(lib PROPERTIES FOLDER "Library Targets")

 else()


GitExternals: fix checkout-on-update

GitExternals: fix checkout-on-update

--- GitExternal.cmake
+++ GitExternal.cmake
@@ -174,9 +174,10 @@
   WORKING_DIRECTORY ${DIR})
 execute_process(
   COMMAND ${GIT_EXECUTABLE} show-ref --hash=7 refs/remotes/origin/master
-  OUTPUT_VARIABLE newref WORKING_DIRECTORY ${DIR})
+  OUTPUT_VARIABLE newref OUTPUT_STRIP_TRAILING_WHITESPACE
+  WORKING_DIRECTORY ${DIR})
 if(newref)
-  file(APPEND ${GIT_EXTERNALS} \"# ${DIR} ${REPO} \${newref}\")
+  file(APPEND ${GIT_EXTERNALS} \"# ${DIR} ${REPO} \${newref}\\n\")
   git_external(${DIR} ${REPO} \${newref})
 else()
   file(APPEND ${GIT_EXTERNALS} \"# ${DIR} ${REPO} ${TAG}\n\")


continuing work on DEV-41722 normalizing shared lib staging. started factoring out copying into common section while file lists are initialized above in platform specific sections.

--- indra/cmake/Copy3rdPartyLibs.cmake
+++ indra/cmake/Copy3rdPartyLibs.cmake
@@ -11,104 +11,59 @@
     set(SHARED_LIB_STAGING_DIR_RELWITHDEBINFO   "${SHARED_LIB_STAGING_DIR}/RelWithDebInfo")
     set(SHARED_LIB_STAGING_DIR_RELEASE          "${SHARED_LIB_STAGING_DIR}/Release")

-#*******************************
-# VIVOX - *NOTE: no debug version
-set(vivox_src_dir "${CMAKE_SOURCE_DIR}/newview/vivox-runtime/i686-win32")
-set(vivox_files
-    SLVoice.exe
-    alut.dll
-    vivoxsdk.dll
-    ortp.dll
-    wrap_oal.dll
-    )
-
-#*******************************
-# Misc shared libs
-
-# *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables
-set(debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/debug")
-set(debug_files
-    openjpegd.dll
-    libtcmalloc_minimal-debug.dll
-    libapr-1.dll
-    libaprutil-1.dll
-    libapriconv-1.dll
-    )
-
-# *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables
-set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release")
-set(release_files
-    openjpeg.dll
-    libtcmalloc_minimal.dll
-    libapr-1.dll
-    libaprutil-1.dll
-    libapriconv-1.dll
-    )
-
-if (FMOD_SDK_DIR)
-    set(fmod_files fmod.dll)
-    copy_if_different(
-        ${FMOD_SDK_DIR}
-        "${CMAKE_CURRENT_BINARY_DIR}/Debug"
-        out_targets
-        ${fmod_files}
-        )
-    set(all_targets ${all_targets} ${out_targets})
-    copy_if_different(
-        ${FMOD_SDK_DIR}
-        "${CMAKE_CURRENT_BINARY_DIR}/Release"
-        out_targets
-        ${fmod_files}
-        )
-    set(all_targets ${all_targets} ${out_targets})
-    copy_if_different(
-        ${FMOD_SDK_DIR}
-        "${CMAKE_CURRENT_BINARY_DIR}/RelWithDbgInfo"
-        out_targets
-        ${fmod_files}
-        )
-    set(all_targets ${all_targets} ${out_targets})
-endif (FMOD_SDK_DIR)
-
-
-#*******************************
-# LLKDU
-set(internal_llkdu_path "${CMAKE_SOURCE_DIR}/llkdu")
-if(NOT EXISTS ${internal_llkdu_path})
-    if (EXISTS "${debug_src_dir}/llkdu.dll")
-        set(debug_llkdu_src "${debug_src_dir}/llkdu.dll")
-        set(debug_llkdu_dst "${SHARED_LIB_STAGING_DIR_DEBUG}/llkdu.dll")
-        ADD_CUSTOM_COMMAND(
-            OUTPUT  ${debug_llkdu_dst}
-            COMMAND ${CMAKE_COMMAND} -E copy_if_different ${debug_llkdu_src} ${debug_llkdu_dst}
-            DEPENDS ${debug_llkdu_src}
-            COMMENT "Copying llkdu.dll ${SHARED_LIB_STAGING_DIR_DEBUG}"
-            )
-        set(third_party_targets ${third_party_targets} $} ${debug_llkdu_dst})
-    endif (EXISTS "${debug_src_dir}/llkdu.dll")
-
-    if (EXISTS "${release_src_dir}/llkdu.dll")
-        set(release_llkdu_src "${release_src_dir}/llkdu.dll")
-        set(release_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELEASE}/llkdu.dll")
-        ADD_CUSTOM_COMMAND(
-            OUTPUT  ${release_llkdu_dst}
-            COMMAND ${CMAKE_COMMAND} -E copy_if_different ${release_llkdu_src} ${release_llkdu_dst}
-            DEPENDS ${release_llkdu_src}
-            COMMENT "Copying llkdu.dll ${SHARED_LIB_STAGING_DIR_RELEASE}"
-            )
-        set(third_party_targets ${third_party_targets} ${release_llkdu_dst})
-
-        set(relwithdebinfo_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}/llkdu.dll")
-        ADD_CUSTOM_COMMAND(
-            OUTPUT  ${relwithdebinfo_llkdu_dst}
-            COMMAND ${CMAKE_COMMAND} -E copy_if_different ${release_llkdu_src} ${relwithdebinfo_llkdu_dst}
-            DEPENDS ${release_llkdu_src}
-            COMMENT "Copying llkdu.dll ${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}"
-            )
-        set(third_party_targets ${third_party_targets} ${relwithdebinfo_llkdu_dst})
-    endif (EXISTS "${release_src_dir}/llkdu.dll")
-
-endif (NOT EXISTS ${internal_llkdu_path})
+    #*******************************
+    # VIVOX - *NOTE: no debug version
+    set(vivox_src_dir "${CMAKE_SOURCE_DIR}/newview/vivox-runtime/i686-win32")
+    set(vivox_files
+        SLVoice.exe
+        alut.dll
+        vivoxsdk.dll
+        ortp.dll
+        wrap_oal.dll
+        )
+
+    #*******************************
+    # Misc shared libs
+
+    # *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables
+    set(debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/debug")
+    set(debug_files
+        openjpegd.dll
+        libtcmalloc_minimal-debug.dll
+        libapr-1.dll
+        libaprutil-1.dll
+        libapriconv-1.dll
+        )
+
+    # *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables
+    set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release")
+    set(release_files
+        openjpeg.dll
+        libtcmalloc_minimal.dll
+        libapr-1.dll
+        libaprutil-1.dll
+        libapriconv-1.dll
+        )
+
+    if (FMOD_SDK_DIR)
+        set(fmod_files fmod.dll)
+    endif (FMOD_SDK_DIR)
+
+    #*******************************
+    # LLKDU
+    set(internal_llkdu_path "${CMAKE_SOURCE_DIR}/llkdu")
+    if(NOT EXISTS ${internal_llkdu_path})
+        if (EXISTS "${debug_src_dir}/llkdu.dll")
+            set(debug_llkdu_src "${debug_src_dir}/llkdu.dll")
+            set(debug_llkdu_dst "${SHARED_LIB_STAGING_DIR_DEBUG}/llkdu.dll")
+        endif (EXISTS "${debug_src_dir}/llkdu.dll")
+
+        if (EXISTS "${release_src_dir}/llkdu.dll")
+            set(release_llkdu_src "${release_src_dir}/llkdu.dll")
+            set(release_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELEASE}/llkdu.dll")
+            set(relwithdebinfo_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}/llkdu.dll")
+        endif (EXISTS "${release_src_dir}/llkdu.dll")
+    endif (NOT EXISTS ${internal_llkdu_path})

 #*******************************
 # Copy MS C runtime dlls, required for packaging.
@@ -183,6 +138,25 @@
     set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib/release")
     set(release_files
        )
+
+    # fmod is statically linked on darwin
+    set(fmod_files "")
+
+    #*******************************
+    # LLKDU
+    set(internal_llkdu_path "${CMAKE_SOURCE_DIR}/llkdu")
+    if(NOT EXISTS ${internal_llkdu_path})
+        if (EXISTS "${debug_src_dir}/libllkdu.dylib")
+            set(debug_llkdu_src "${debug_src_dir}/libllkdu.dylib")
+            set(debug_llkdu_dst "${SHARED_LIB_STAGING_DIR_DEBUG}/libllkdu.dylib")
+        endif (EXISTS "${debug_src_dir}/libllkdu.dylib")
+
+        if (EXISTS "${release_src_dir}/libllkdu.dylib")
+            set(release_llkdu_src "${release_src_dir}/libllkdu.dylib")
+            set(release_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELEASE}/libllkdu.dylib")
+            set(relwithdebinfo_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}/libllkdu.dylib")
+        endif (EXISTS "${release_src_dir}/libllkdu.dylib")
+    endif (NOT EXISTS ${internal_llkdu_path})
 elseif(LINUX)
     set(vivox_src_dir "${CMAKE_SOURCE_DIR}/newview/vivox-runtime/i686-linux")
     set(vivox_files
@@ -195,19 +169,43 @@
     set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-linux/lib/release")
     set(release_files
        )
+
+    if (FMOD_SDK_DIR)
+        set(fmod_files "libfmod-3.75.so")
+    endif (FMOD_SDK_DIR)
+
+    #*******************************
+    # LLKDU
+    set(internal_llkdu_path "${CMAKE_SOURCE_DIR}/llkdu")
+    if(NOT EXISTS ${internal_llkdu_path})
+        if (EXISTS "${debug_src_dir}/libllkdu.so")
+            set(debug_llkdu_src "${debug_src_dir}/libllkdu.so")
+            set(debug_llkdu_dst "${SHARED_LIB_STAGING_DIR_DEBUG}/libllkdu.so")
+        endif (EXISTS "${debug_src_dir}/libllkdu.so")
+
+        if (EXISTS "${release_src_dir}/libllkdu.so")
+            set(release_llkdu_src "${release_src_dir}/libllkdu.so")
+            set(release_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELEASE}/libllkdu.so")
+            set(relwithdebinfo_llkdu_dst "${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}/libllkdu.so")
+        endif (EXISTS "${release_src_dir}/libllkdu.so")
 else(WINDOWS)
     message(STATUS "WARNING: unrecognized platform for staging 3rd party libs, skipping...")
     set(vivox_src_dir "${CMAKE_SOURCE_DIR}/newview/vivox-runtime/i686-linux")
-    set(vivox_files
-       )
+    set(vivox_files "")
     # *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables
     set(debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-linux/lib/debug")
-    set(debug_files
-       )
+    set(debug_files "")
     # *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables
     set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-linux/lib/release")
-    set(release_files
-       )
+    set(release_files "")
+
+    set(fmod_files "")
+
+    set(debug_llkdu_src "")
+    set(debug_llkdu_dst "")
+    set(release_llkdu_src "")
+    set(release_llkdu_dst "")
+    set(relwithdebinfo_llkdu_dst "")
 endif(WINDOWS)

@@ -261,6 +259,64 @@
     )
 set(third_party_targets ${third_party_targets} ${out_targets})

+if (FMOD_SDK_DIR)
+    copy_if_different(
+        ${FMOD_SDK_DIR}
+        "${CMAKE_CURRENT_BINARY_DIR}/Debug"
+        out_targets
+        ${fmod_files}
+        )
+    set(all_targets ${all_targets} ${out_targets})
+    copy_if_different(
+        ${FMOD_SDK_DIR}
+        "${CMAKE_CURRENT_BINARY_DIR}/Release"
+        out_targets
+        ${fmod_files}
+        )
+    set(all_targets ${all_targets} ${out_targets})
+    copy_if_different(
+        ${FMOD_SDK_DIR}
+        "${CMAKE_CURRENT_BINARY_DIR}/RelWithDbgInfo"
+        out_targets
+        ${fmod_files}
+        )
+    set(all_targets ${all_targets} ${out_targets})
+endif (FMOD_SDK_DIR)
+
+#*******************************
+# LLKDU
+set(internal_llkdu_path "${CMAKE_SOURCE_DIR}/llkdu")
+if(NOT EXISTS ${internal_llkdu_path})
+    if (EXISTS "${debug_llkdu_src}")
+        ADD_CUSTOM_COMMAND(
+            OUTPUT  ${debug_llkdu_dst}
+            COMMAND ${CMAKE_COMMAND} -E copy_if_different ${debug_llkdu_src} ${debug_llkdu_dst}
+            DEPENDS ${debug_llkdu_src}
+            COMMENT "Copying llkdu.dll ${SHARED_LIB_STAGING_DIR_DEBUG}"
+            )
+        set(third_party_targets ${third_party_targets} $} ${debug_llkdu_dst})
+    endif (EXISTS "${debug_llkdu_src}")
+
+    if (EXISTS "${release_llkdu_src}")
+        ADD_CUSTOM_COMMAND(
+            OUTPUT  ${release_llkdu_dst}
+            COMMAND ${CMAKE_COMMAND} -E copy_if_different ${release_llkdu_src} ${release_llkdu_dst}
+            DEPENDS ${release_llkdu_src}
+            COMMENT "Copying llkdu.dll ${SHARED_LIB_STAGING_DIR_RELEASE}"
+            )
+        set(third_party_targets ${third_party_targets} ${release_llkdu_dst})
+
+        ADD_CUSTOM_COMMAND(
+            OUTPUT  ${relwithdebinfo_llkdu_dst}
+            COMMAND ${CMAKE_COMMAND} -E copy_if_different ${release_llkdu_src} ${relwithdebinfo_llkdu_dst}
+            DEPENDS ${release_llkdu_src}
+            COMMENT "Copying llkdu.dll ${SHARED_LIB_STAGING_DIR_RELWITHDEBINFO}"
+            )
+        set(third_party_targets ${third_party_targets} ${relwithdebinfo_llkdu_dst})
+    endif (EXISTS "${release_llkdu_src}")
+
+endif (NOT EXISTS ${internal_llkdu_path})
+

 add_custom_target(stage_third_party_libs ALL
   DEPENDS


Stupid Bug...

Stupid Bug...

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

--- deal.II/contrib/cmake/configure/configure_trilinos.cmake
+++ deal.II/contrib/cmake/configure/configure_trilinos.cmake
@@ -84,7 +84,7 @@
     # of Epetra.
     #
     IF(EXISTS "${TRILINOS_INCLUDE_DIR}/Epetra_MpiComm.h")
-      SET(TRILINOS_WITH_MPICOMM TRUE)
+      SET(TRILINOS_WITH_MPI TRUE)
     ENDIF()

     IF( (TRILINOS_WITH_MPI AND NOT DEAL_II_COMPILER_SUPPORTS_MPI)


Fix detection of "std" flag in CMAKE_CXX_FLAGS

re-ordered the loop so that the "std" flag did not have to be the last
one to be detected.

--- CMake/sitkCheckRequiredFlags.cmake
+++ CMake/sitkCheckRequiredFlags.cmake
@@ -56,11 +56,13 @@
   "^-std=" # required to be last
 )

-foreach(f ${cmake_cxx_flags_list})
-  foreach( _r ${required_flags_regex_to_test} )
-    string(REGEX MATCH  ${_r} _HAS_FLAG ${f} )
-    if (_HAS_FLAG )
+foreach( _r ${required_flags_regex_to_test} )
+  set(_HAS_FLAG 0)
+  foreach(f ${cmake_cxx_flags_list})
+    string(REGEX MATCH  ${_r} _match ${f} )
+    if (_match )
       list(APPEND SimpleITK_PUBLIC_COMPILE_OPTIONS ${f})
+      set(_HAS_FLAG ${_match})
     endif()
   endforeach()
 endforeach()


check existance of uninstall target before creating it (#195)

Signed-off-by: Soragna, Alberto <e5bd1f4761c2b563b6f2a7f458b5fd7d80ebc746@gmail.com>

--- ament_cmake_core/ament_cmake_uninstall_target-extras.cmake
+++ ament_cmake_core/ament_cmake_uninstall_target-extras.cmake
@@ -35,8 +35,10 @@
     add_custom_target(uninstall)
   endif()

-  # register uninstall target to run generated CMake script
-  add_custom_target(${PROJECT_NAME}_uninstall
-    COMMAND ${CMAKE_COMMAND} -P "${AMENT_CMAKE_UNINSTALL_TARGET_UNINSTALL_SCRIPT}")
-  add_dependencies(uninstall ${PROJECT_NAME}_uninstall)
+  if (NOT TARGET ${PROJECT_NAME}_uninstall)
+    # register uninstall target to run generated CMake script
+    add_custom_target(${PROJECT_NAME}_uninstall
+      COMMAND ${CMAKE_COMMAND} -P "${AMENT_CMAKE_UNINSTALL_TARGET_UNINSTALL_SCRIPT}")
+    add_dependencies(uninstall ${PROJECT_NAME}_uninstall)
+  endif()
 endif()


msinttypes build support: whoops

msinttypes build support: whoops

--- CMake/FindFFMPEG.cmake
+++ CMake/FindFFMPEG.cmake
@@ -105,10 +105,10 @@

 #Locate msinttypes
-IF(MSVC)
+#IF(MSVC)
 SET(MSINTTYPES_FOUND "NO")
 FIND_PATH(MSINTTYPES_INCLUDE_DIR inttypes.h ${FFMPEG_INCLUDE_SEARCH_DIRS})
 IF(MSINTTYPES_INCLUDE_DIR)
 SET(MSINTTYPES_FOUND "YES")
 ENDIF(MSINTTYPES_INCLUDE_DIR)
-ENDIF(WIN32)
+ENDIF(MSVC)


STYLE: Remove tabs.

STYLE: Remove tabs.

--- CMake/FindFFMPEG.cmake
+++ CMake/FindFFMPEG.cmake
@@ -122,9 +122,9 @@
           ${FFMPEG_avformat_LIBRARY}
           ${FFMPEG_avutil_LIBRARY}
           )
-
-        # swscale is always a part of newer ffmpeg distros
-		IF(FFMPEG_swscale_LIBRARY)
+
+        # swscale is always a part of newer ffmpeg distros
+        IF(FFMPEG_swscale_LIBRARY)
           LIST(APPEND FFMPEG_BASIC_LIBRARIES ${FFMPEG_swscale_LIBRARY})
         ENDIF(FFMPEG_swscale_LIBRARY)


BUG: Fixed trigger site.

BUG: Fixed trigger site.

--- CTestConfig.cmake
+++ CTestConfig.cmake
@@ -9,5 +9,5 @@
   SET(CTEST_DROP_SITE "public.kitware.com")
   SET(CTEST_DROP_LOCATION "/cgi-bin/HTTPUploadDartFile.cgi")
   SET(CTEST_TRIGGER_SITE
-    "http://${DROP_SITE}/cgi-bin/Submit-Insight-TestingResults.cgi")
+    "http://${CTEST_DROP_SITE}/cgi-bin/Submit-Insight-TestingResults.cgi")
 ENDIF(CTEST_DROP_METHOD STREQUAL "http")


Junk commit to launch dashboard

Junk commit to launch dashboard


BUG: Fix duplicate variables in Windows

BUG: Fix duplicate variables in Windows

Updates the scifio-imageio hash to account for a fix from mabruce, removing
duplicate variable declarations in the Write method on Windows.

Change-Id: Id07006d70822fa689be71bb045033708e1cc7234

--- Modules/Remote/SCIFIO.remote.cmake
+++ Modules/Remote/SCIFIO.remote.cmake
@@ -1,5 +1,5 @@
 itk_fetch_module(SCIFIO
   "SCIFIO (Bioformats) ImageIO plugin for ITK"
   GIT_REPOSITORY https://github.com/scifio/scifio-imageio.git
-  GIT_TAG 99ccab489f9cd64ef4926cc4a539175e9207ac8d
+  GIT_TAG 71a701054bdb6e19fb21d7195e5878fc01179be4
   )


chore: cleanup cmake file and early exit if already defined

--- cmake/CMakePlatforms.cmake
+++ cmake/CMakePlatforms.cmake
@@ -1,20 +1,24 @@
-cmake_minimum_required (VERSION 3.2)
+cmake_minimum_required(VERSION 3.2)
+
+if(PLATFORM_NAME)
+	return()	# Already set
+endif()

 # Detect which platform we have
-if( ${CMAKE_SYSTEM_NAME} STREQUAL "Windows" )
+if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
 	set(PLATFORM_WINDOWS 1)
 	set(PLATFORM_NAME "Windows")
-elseif( ${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" )
+elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
 	if(PLATFORM_IOS)
 		set(PLATFORM_NAME "iOS")
 	else()
 		set(PLATFORM_OSX 1)
 		set(PLATFORM_NAME "OS X")
 	endif()
-elseif( ${CMAKE_SYSTEM_NAME} STREQUAL "Linux" )
+elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
 	set(PLATFORM_LINUX 1)
 	set(PLATFORM_NAME "Linux")
-elseif( ${CMAKE_SYSTEM_NAME} STREQUAL "Android" )
+elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Android")
 	set(PLATFORM_ANDROID 1)
 	set(PLATFORM_NAME "Android")
 else()


cmake: add LINK_ELEKTRA feature to add_gtest

--- cmake/Modules/LibAddTest.cmake
+++ cmake/Modules/LibAddTest.cmake
@@ -13,7 +13,7 @@
 	cmake_parse_arguments (ARG
 		"MEMLEAK;KDBTESTS;NO_MAIN;LINK_TOOLS" # optional keywords
 		"" # one value keywords
-		"LINK_LIBRARIES;SOURCES" # multi value keywords
+		"LINK_LIBRARIES;LINK_ELEKTRA;SOURCES" # multi value keywords
 		${ARGN}
 	)

@@ -22,9 +22,9 @@
 	add_executable (${source} ${SOURCES})

 	if (ARG_LINK_TOOLS)
-		target_link_elektratools(${source})
+		target_link_elektratools(${source} ${ARG_LINK_ELEKTRA})
 	else (ARG_LINK_TOOLS)
-		target_link_elektra(${source})
+		target_link_elektra(${source} ${ARG_LINK_ELEKTRA})
 	endif (ARG_LINK_TOOLS)

 	target_link_libraries (${source}


Add Test: Allow more than one environment variable

--- cmake/Modules/LibAddTest.cmake
+++ cmake/Modules/LibAddTest.cmake
@@ -79,8 +79,7 @@
 # 	This optional argument specifies environment variables defined while CTest executes the MSR test.
 function (add_s_test NAME FILE)
 	set (TEST_NAME testshell_markdown_${NAME})
-	set (oneValueArgs ENVIRONMENT)
-	set (multiValueArgs REQUIRED_PLUGINS)
+	set (multiValueArgs REQUIRED_PLUGINS ENVIRONMENT)
 	cmake_parse_arguments (ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})

 	foreach (plugin ${ARG_REQUIRED_PLUGINS})


fix python lib path for cmake

fix python lib path for cmake

--- cmake/Modules/SetupBoost.cmake
+++ cmake/Modules/SetupBoost.cmake
@@ -182,7 +182,7 @@
 MESSAGE("Boost librarydir: ${BOOST_LIBRARYDIR}")
 MESSAGE("Boost no system paths: ${Boost_NO_SYSTEM_PATHS}")

-SET(Boost_INCLUDE_DIRS "${BOOST_UNZIP_OUT}/include")
+SET(Boost_INCLUDE_DIRS "${BOOST_UNZIP_OUT}/include/boost")

 INSTALL(DIRECTORY "${BOOST_UNZIP_OUT}/stage/lib/" COMPONENT Development DESTINATION "lib/")
 INSTALL(DIRECTORY ${BOOST_UNZIP_OUT}/include/boost/boost COMPONENT Development DESTINATION include)


Fix open source C++ Firestore building with -DFIREBASE_IOS_BUILD_TESTS=OFF.

PiperOrigin-RevId: 316190122

--- cmake/external/firestore.cmake
+++ cmake/external/firestore.cmake
@@ -18,7 +18,11 @@
   return()
 endif()

-set(version Firestore-1.15.0)
+# Pin to the first revision that includes these changes:
+# https://github.com/firebase/firebase-ios-sdk/pull/5807.
+#
+# This should be released with the next version after Firestore-1.15.0.
+set(version 05026f3df92cdee7b91fccc72a7195be2618acdf)

 ExternalProject_Add(
   firestore


Update Build-zlib.cmake

Update Build-zlib.cmake

--- cmake/modules/Build-zlib.cmake
+++ cmake/modules/Build-zlib.cmake
@@ -5,42 +5,14 @@
   ${ZLIB_INSTALL_DIR}/libzlib.a
 )

-#if(WIN32 OR MINGW)
-#  if(MINGW)
-#    ExternalProject_Add(
-#      zlib
-#      URL https://www.zlib.net/zlib1211.zip
-#	  URL_HASH SHA256=d7510a8ee1918b7d0cad197a089c0a2cd4d6df05fee22389f67f115e738b178d
-#      #CONFIGURE_COMMAND ""
-#      #BUILD_COMMAND gcc -shared
-#      #<SOURCE_DIR>/adler32.c
-#      #<SOURCE_DIR>/compress.c
-#      #<SOURCE_DIR>/crc32.c
-#      #<SOURCE_DIR>/deflate.c
-#      #<SOURCE_DIR>/gzio.c
-#      #<SOURCE_DIR>/inffast.c
-#      #<SOURCE_DIR>/inflate.c
-#      #<SOURCE_DIR>/inftrees.c
-#      #<SOURCE_DIR>/trees.c
-#      #<SOURCE_DIR>/uncompr.c
-#      #<SOURCE_DIR>/zutil.c -o ${ZLIB_INSTALL_DIR}/zlib.a
-#      #BUILD_IN_SOURCE true
-#      BUILD_BYPRODUCTS ${_byproducts}
-#      #INSTALL_COMMAND ""
-#      INSTALL_DIR ${ZLIB_INSTALL_DIR}
-#    )
-#  else()
-    ExternalProject_Add(
-      zlib
-      URL https://www.zlib.net/zlib1211.zip
-	  URL_HASH SHA256=d7510a8ee1918b7d0cad197a089c0a2cd4d6df05fee22389f67f115e738b178d
-      CMAKE_ARGS -G${CMAKE_GENERATOR} -DCMAKE_INSTALL_PREFIX=${ZLIB_INSTALL_DIR}
-      BUILD_BYPRODUCTS ${_byproducts}
-      INSTALL_DIR ${ZLIB_INSTALL_DIR}
-    )
-#  endif()
-#endif()
-
+ExternalProject_Add(
+  zlib
+  URL https://www.zlib.net/zlib1212.zip
+  URL_HASH SHA256=173e89893dcb8b4a150d7731cd72f0602f1d6b45e60e2a54efdf7f3fc3325fd7
+  CMAKE_ARGS -G${CMAKE_GENERATOR} -DCMAKE_INSTALL_PREFIX=${ZLIB_INSTALL_DIR}
+  BUILD_BYPRODUCTS ${_byproducts}
+  INSTALL_DIR ${ZLIB_INSTALL_DIR}
+)

 ExternalProject_Get_Property(
   zlib
@@ -66,4 +38,4 @@
   set_target_properties(ZLIB::ZLIB PROPERTIES INTERFACE_LINK_LIBRARIES "${ZLIB_LIBRARIES}")
 endif()

-mark_as_advanced( ZLIB_INCLUDE_DIRS ZLIB_LIBRARIES ZLIB_LIBRARY ZLIB_LIBRARY_PATH )+mark_as_advanced( ZLIB_INCLUDE_DIRS ZLIB_LIBRARIES ZLIB_LIBRARY ZLIB_LIBRARY_PATH )


Bugfix: Second try...

Bugfix: Second try...

git-svn-id: 31d9d2f6432a47c86a3640814024c107794ea77c@31434 0785d39b-7218-0410-832d-ea1e28bc413d

--- deal.II/cmake/setup_testsuite.cmake
+++ deal.II/cmake/setup_testsuite.cmake
@@ -55,7 +55,7 @@
   )
   SET_IF_EMPTY(${_var} $ENV{${_var}})
   IF(NOT "${_var}" STREQUAL "")
-    SET(_var "${_var}" CACHE STRING "")
+    SET(${_var} "${${_var}}" CACHE STRING "")
   ENDIF()
 ENDFOREACH()


Define feature sets that correspond to different products (advanced, pro, enterprise etc)

--- cmake/build_configurations/mysql_release.cmake
+++ cmake/build_configurations/mysql_release.cmake
@@ -15,27 +15,95 @@

 # This file includes build settings used for MySQL release

-OPTION(WITH_INNOBASE_STORAGE_ENGINE "" ON)
-OPTION(WITH_ARCHIVE_STORAGE_ENGINE "" ON)
-OPTION(WITH_BLACKHOLE_STORAGE_ENGINE "" ON)
-OPTION(WITH_FEDERATED_STORAGE_ENGINE "" ON )
-OPTION(WITHOUT_EXAMPLE_STORAGE_ENGINE "" ON)
-OPTION(WITH_EMBEDDED_SERVER "" ON)
+
+SET(FEATURE_SET "community" CACHE STRING
+" Selection of features. Options are
+ - xsmall :
+ - small: embedded
+ - classic: embedded + archive + federated + blackhole
+ - large :  embedded + archive + federated + blackhole + innodb
+ - xlarge:  embedded + archive + federated + blackhole + innodb + partition
+ - community:  all  features (currently == xlarge)
+"
+)
+
+SET(FEATURE_SET_xsmall  1)
+SET(FEATURE_SET_small   2)
+SET(FEATURE_SET_classic 3)
+SET(FEATURE_SET_large   5)
+SET(FEATURE_SET_xlarge  6)
+SET(FEATURE_SET_community 7)
+
+IF(FEATURE_SET)
+  STRING(TOLOWER ${FEATURE_SET} feature_set)
+  SET(num ${FEATURE_SET_${feature_set}})
+  IF(NOT num)
+   MESSAGE(FATAL_ERROR "Invalid FEATURE_SET option '${feature_set}'.
+   Should be xsmall, small, classic, large, or community
+   ")
+  ENDIF()
+  SET(WITH_PARTITION_STORAGE_ENGINE OFF)
+  IF(num EQUAL FEATURE_SET_xsmall)
+    SET(WITH_NONE ON)
+  ENDIF()
+
+  IF(num GREATER FEATURE_SET_xsmall)
+    SET(WITH_EMBEDDED_SERVER ON CACHE BOOL "")
+  ENDIF()
+  IF(num GREATER FEATURE_SET_small)
+    SET(WITH_ARCHIVE_STORAGE_ENGINE  ON)
+    SET(WITH_BLACKHOLE_STORAGE_ENGINE ON)
+    SET(WITH_FEDERATED_STORAGE_ENGINE ON)
+  ENDIF()
+  IF(num GREATER FEATURE_SET_classic)
+    SET(WITH_INNOBASE_STORAGE_ENGINE ON)
+  ENDIF()
+  IF(num GREATER FEATURE_SET_large)
+    SET(WITH_PARTITION_STORAGE_ENGINE ON)
+  ENDIF()
+  IF(num GREATER FEATURE_SET_xlarge)
+   # OPTION(WITH_ALL ON)
+   # better no set this, otherwise server would be linked
+   # statically with experimental stuff like audit_null
+  ENDIF()
+
+  # Update cache with current values, remove engines we do not care about
+  # from build.
+  FOREACH(eng ARCHIVE BLACKHOLE FEDERATED INNOBASE PARTITION EXAMPLE)
+    IF(NOT WITH_${eng}_STORAGE_ENGINE)
+      SET(WITHOUT_${eng}_STORAGE_ENGINE ON CACHE BOOL "")
+      MARK_AS_ADVANCED(WITHOUT_${eng}_STORAGE_ENGINE)
+      SET(WITH_${eng}_STORAGE_ENGINE OFF CACHE BOOL "")
+    ELSE()
+     SET(WITH_${eng}_STORAGE_ENGINE ON CACHE BOOL "")
+	ENDIF()
+  ENDFOREACH()
+ENDIF()
+
+
 OPTION(ENABLE_LOCAL_INFILE "" ON)
 SET(WITH_SSL bundled CACHE STRING "")
 SET(WITH_ZLIB bundled CACHE STRING "")
-
+

 IF(NOT COMPILATION_COMMENT)
   SET(COMPILATION_COMMENT "MySQL Community Server (GPL)")
 ENDIF()

 IF(UNIX)
-  SET(CMAKE_INSTALL_PREFIX "/usr/local/mysql")
-  SET(WITH_EXTRA_CHARSETS complex CACHE STRING "")
-  OPTION(WITH_READLINE  "" ON)
-  OPTION(WITH_PIC "" ON)
-
+  SET(WITH_EXTRA_CHARSETS all CACHE STRING "")
+  IF(EXISTS "${CMAKE_SOURCE_DIR}/COPYING")
+    OPTION(WITH_READLINE  "" ON)
+  ELSE()
+    OPTION(WITH_LIBEDIT  "" ON)
+  ENDIF()
+
+  OPTION(WITH_PIC "" ON) # Why?
+ENDIF()
+
+
+# Compiler options
+IF(UNIX)
   # Default GCC flags
   IF(CMAKE_COMPILER_IS_GNUCXX)
    SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-g -O3 -static-libgcc -fno-omit-frame-pointer")
@@ -90,7 +158,6 @@
             "-g0 -xO3 -mt -fsimple=1 -ftrap=%none -nofstore -xbuiltin=%all -features=no%except -xlibmil -xlibmopt -xtarget=generic")
          ENDIF()
        ELSE()
-
           IF(CMAKE_SIZEOF_VOIDP EQUAL 4)
             # Solaris sparc 32 bit
             SET(CMAKE_C_FLAGS_RELWITHDEBINFO   "-g -xO3 -Xa -xstrconst -mt -xarch=sparc")


simplify use script: remove EIGEN_INCLUDE_DIR

issue https://github.com/smanders/externpro/issues/273

--- projects/use/usexp-eigen-config.cmake
+++ projects/use/usexp-eigen-config.cmake
@@ -1,6 +1,5 @@
 # EIGEN_FOUND - Eigen was found
 # EIGEN_VER - Eigen version
-# EIGEN_INCLUDE_DIR - the Eigen include directory
 set(prj eigen)
 # this file (-config) installed to share/cmake
 get_filename_component(XP_ROOTDIR ${CMAKE_CURRENT_LIST_DIR}/../.. ABSOLUTE)
@@ -8,18 +7,14 @@
 string(TOUPPER ${prj} PRJ)
 set(${PRJ}_VER "@VER@ [@PROJECT_NAME@]")
 set(verDir /${prj}_@VER@)
-unset(${PRJ}_INCLUDE_DIR CACHE)
-find_path(${PRJ}_INCLUDE_DIR eigen3/Eigen/Eigen PATHS ${XP_ROOTDIR}/include${verDir} NO_DEFAULT_PATH)
-list(APPEND ${PRJ}_INCLUDE_DIR ${XP_ROOTDIR}/include${verDir}/eigen3)
+set(includeDirs ${XP_ROOTDIR}/include${verDir} ${XP_ROOTDIR}/include${verDir}/eigen3)
 if(NOT TARGET xpro::eigen)
   add_library(xpro::eigen INTERFACE IMPORTED)
-  if(${PRJ}_INCLUDE_DIR)
-    set_target_properties(xpro::eigen PROPERTIES
-      INTERFACE_INCLUDE_DIRECTORIES "${${PRJ}_INCLUDE_DIR}"
-      )
-  endif()
+  set_target_properties(xpro::eigen PROPERTIES
+    INTERFACE_INCLUDE_DIRECTORIES "${includeDirs}"
+    )
 endif()
-set(reqVars ${PRJ}_VER ${PRJ}_INCLUDE_DIR)
+set(reqVars ${PRJ}_VER)
 include(FindPackageHandleStandardArgs)
 find_package_handle_standard_args(${prj} REQUIRED_VARS ${reqVars})
 mark_as_advanced(${reqVars})