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 11)

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


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   10)
+SET(KWSYS_DATE_STAMP_DAY   11)


CMake: also install dependencies on OSX

CMake: also install dependencies on OSX

--- CMake/InstallDependencies.cmake
+++ CMake/InstallDependencies.cmake
@@ -96,7 +96,7 @@
       install(FILES DESTINATION lib/relwithdebinfo CONFIGURATIONS RelWithDebInfo)
       install(FILES DESTINATION lib/release CONFIGURATIONS Release)
       install(FILES DESTINATION lib/minsizerel CONFIGURATIONS MinSizeRel)
-    elseif(UNIX AND NOT APPLE)
+    elseif(UNIX)
       if (EXISTS ${OGRE_DEP_DIR}/lib/)
         install(DIRECTORY ${OGRE_DEP_DIR}/lib/ DESTINATION ${OGRE_LIB_DIRECTORY})
       endif()


CMake: Android - only derive activity label if EXTRA_ACTIVITIES exist

--- CMake/Utils/AndroidMacros.cmake
+++ CMake/Utils/AndroidMacros.cmake
@@ -63,9 +63,13 @@
     file(MAKE_DIRECTORY "${NDKOUT}/app/src/main/res")

     foreach(ACTIVITY_NAME ${MAIN_ACTIVITY} ${EXTRA_ACTIVITIES})
-        string(FIND ${ACTIVITY_NAME} "." DOT REVERSE)
-        math(EXPR DOT "${DOT} + 1")
-        string(SUBSTRING ${ACTIVITY_NAME} ${DOT} -1 LABEL)
+        if(EXTRA_ACTIVITIES)
+            string(FIND ${ACTIVITY_NAME} "." DOT REVERSE)
+            math(EXPR DOT "${DOT} + 1")
+            string(SUBSTRING ${ACTIVITY_NAME} ${DOT} -1 LABEL)
+        else()
+            set(LABEL ${ANDROID_MOD_NAME})
+        endif()
         set(ANDROID_ACTIVITIES "${ANDROID_ACTIVITIES}
         <activity android:name=\"${ACTIVITY_NAME}\"
         android:label=\"${LABEL}\"


Issue #43: Illustrate where to put numpy if you want Boost.Numpy.

--- CMake/mpAddPythonBindings.cmake
+++ CMake/mpAddPythonBindings.cmake
@@ -41,6 +41,11 @@
     list(APPEND MYPROJECT_BOOST_LIBS "system")
     if (WITHIN_SUBBUILD)
       list(APPEND MYPROJECT_BOOST_LIBS "python${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
+
+	  # Add this if you want numpy. Depends on your build env.
+	  # I've left it out for now, as cloned projects can decide if they need it.
+	  # It doesn't warrant another top level flag.
+	  # list(APPEND MYPROJECT_BOOST_LIBS "numpy${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}")
     else()
       list(APPEND MYPROJECT_BOOST_LIBS "python")
     endif()


[FIX] reenabled demos tests under windows

git-svn-id: a7f2a8f7432d210e972fb03898013d213e2b549b@14512 e6417c60-b987-48fd-844e-b20f0fcc1017

--- util/cmake/SeqAnBuildSystem.cmake
+++ util/cmake/SeqAnBuildSystem.cmake
@@ -428,14 +428,14 @@
         endif()

         # Add the test.
-        if (NOT MINGW AND NOT MSVC)  # disable on Windows for now
+        #if (NOT MINGW AND NOT MSVC)  # disable on Windows for now
         find_package (PythonInterp)
         if (PYTHONINTERP_FOUND)
           add_test (NAME test_${EXECUTABLE}
                     COMMAND ${PYTHON_EXECUTABLE} ${CHECKER_PATH} ${ARGS})
           #message(STATUS "add_test (NAME test_${EXECUTABLE} COMMAND ${PYTHON_EXECUTABLE} ${CHECKER_PATH} ${ARGS})")
         endif (PYTHONINTERP_FOUND)
-        endif (NOT MINGW AND NOT MSVC)
+        #endif (NOT MINGW AND NOT MSVC)
     endif ()
 endmacro (_seqan_setup_demo_test CPP_FILE)


excluded ClangCL from Clang and included it in "Visual Studio" (#380)

--- conan.cmake
+++ conan.cmake
@@ -170,7 +170,10 @@
             conan_cmake_detect_unix_libcxx(_LIBCXX)
             set(_CONAN_SETTING_COMPILER_LIBCXX ${_LIBCXX})
         endif ()
-    elseif (${CMAKE_${LANGUAGE}_COMPILER_ID} STREQUAL Clang)
+    elseif (${CMAKE_${LANGUAGE}_COMPILER_ID} STREQUAL Clang
+                AND NOT "${CMAKE_${LANGUAGE}_COMPILER_FRONTEND_VARIANT}" STREQUAL "MSVC"
+                AND NOT "${CMAKE_${LANGUAGE}_SIMULATE_ID}" STREQUAL "MSVC")
+
         string(REPLACE "." ";" VERSION_LIST ${CMAKE_${LANGUAGE}_COMPILER_VERSION})
         list(GET VERSION_LIST 0 MAJOR)
         list(GET VERSION_LIST 1 MINOR)
@@ -190,7 +193,11 @@
             conan_cmake_detect_unix_libcxx(_LIBCXX)
             set(_CONAN_SETTING_COMPILER_LIBCXX ${_LIBCXX})
         endif ()
-    elseif(${CMAKE_${LANGUAGE}_COMPILER_ID} STREQUAL MSVC)
+    elseif(${CMAKE_${LANGUAGE}_COMPILER_ID} STREQUAL MSVC
+                OR (${CMAKE_${LANGUAGE}_COMPILER_ID} STREQUAL Clang
+                    AND "${CMAKE_${LANGUAGE}_COMPILER_FRONTEND_VARIANT}" STREQUAL "MSVC"
+                    AND "${CMAKE_${LANGUAGE}_SIMULATE_ID}" STREQUAL "MSVC"))
+
         set(_VISUAL "Visual Studio")
         _get_msvc_ide_version(_VISUAL_VERSION)
         if("${_VISUAL_VERSION}" STREQUAL "")


setup.cmake

setup.cmake

--- setup.cmake
+++ setup.cmake
@@ -15,6 +15,11 @@
 if(NOT DEFINED CTEST_SITE)
   set(CTEST_SITE ${CMAKE_SYSTEM_NAME})
 endif()
+
+# parallel test--use ctest_test(PARALLEL_LEVEL ${Ncpu} as setting CTEST_PARALLEL_LEVEL has no effect
+include(ProcessorCount)
+ProcessorCount(Ncpu)
+message(STATUS "${Ncpu} CPU cores detected")

 # test name is Fortran compiler in FC
 # Note: ctest scripts cannot read cache variables like CMAKE_Fortran_COMPILER
@@ -67,6 +72,18 @@
   RETURN_VALUE return_code
   CAPTURE_CMAKE_ERROR cmake_err)

+# if it's a generator or compiler mismatch, delete cache and try again
+if(NOT cmake_err EQUAL 0)
+  file(REMOVE ${CTEST_BINARY_DIRECTORY}/CMakeCache.txt)
+
+  ctest_configure(
+    BUILD ${CTEST_BINARY_DIRECTORY}
+    SOURCE ${CTEST_SOURCE_DIRECTORY}
+    OPTIONS "${_opts}"
+    RETURN_VALUE return_code
+    CAPTURE_CMAKE_ERROR cmake_err)
+endif()
+
 if(return_code EQUAL 0 AND cmake_err EQUAL 0)
   ctest_build(
     BUILD ${CTEST_BINARY_DIRECTORY}
@@ -84,9 +101,14 @@
   BUILD ${CTEST_BINARY_DIRECTORY}
   RETURN_VALUE return_code
   CAPTURE_CMAKE_ERROR ctest_err
+  PARALLEL_LEVEL ${Ncpu}
   )
 else()
   message(STATUS "SKIP: ctest_test(): returncode: ${return_code}; CMake error code: ${cmake_err}")
 endif()

 # ctest_submit()
+
+if(NOT (return_code EQUAL 0 AND Nerror EQUAL 0 AND cmake_err EQUAL 0 AND ctest_err EQUAL 0))
+  message(FATAL_ERROR "Build and test failed.")
+endif()


Require libatomic on RHEL 8.

Require libatomic on RHEL 8.

--- build_settings.cmake
+++ build_settings.cmake
@@ -54,16 +54,6 @@
   endif()
 else()
   set(CXX_SPECIFIC_WARN_OPTS "-Wnoexcept -Wsuggest-override -Wnon-virtual-dtor -Wformat-security")
-  if((CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64") AND
-      (VESPA_OS_DISTRO_COMBINED STREQUAL "centos 8" OR
-      (VESPA_OS_DISTRO STREQUAL "rocky" AND
-	VESPA_OS_DISTRO_VERSION VERSION_GREATER_EQUAL "8" AND
-	VESPA_OS_DISTRO_VERSION VERSION_LESS "9") OR
-      (VESPA_OS_DISTRO STREQUAL "rhel" AND
-	VESPA_OS_DISTRO_VERSION VERSION_GREATER_EQUAL "8" AND
-	VESPA_OS_DISTRO_VERSION VERSION_LESS "9")))
-      set(VESPA_ATOMIC_LIB "")
-  endif()
   set(VESPA_GCC_LIB "gcc")
   set(VESPA_STDCXX_FS_LIB "stdc++fs")
 endif()


Find DirectX 11.1 headers too.

Find DirectX 11.1 headers too.

--- cmake/FindDirectX.cmake
+++ cmake/FindDirectX.cmake
@@ -185,6 +185,21 @@
 		if (DirectX_D3DX11_INCLUDE_DIR AND DirectX_D3DX11_LIBRARY)
 			set (DirectX_D3DX11_FOUND 1)
 		endif ()
+	endif ()
+
+
+	find_path (DirectX_D3D11_1_INCLUDE_DIR d3d11_1.h
+		PATHS
+			"${DirectX_ROOT_DIR}/Include"
+		DOC "The directory where d3d11_1.h resides")
+
+	find_library (DirectX_D3D11_1_LIBRARY d3d11_1
+		PATHS
+			"${DirectX_ROOT_DIR}/Lib/${DirectX_ARCHITECTURE}"
+		DOC "The directory where d3d11_1 resides")
+
+	if (DirectX_D3D11_1_INCLUDE_DIR AND DirectX_D3D11_1_LIBRARY)
+		set (DirectX_D3D11_1_FOUND 1)
 	endif ()

@@ -219,6 +234,8 @@
 		DirectX_D3D11_LIBRARY
 		DirectX_D3DX11_INCLUDE_DIR
 		DirectX_D3DX11_LIBRARY
+		DirectX_D3D11_1_INCLUDE_DIR
+		DirectX_D3D11_1_LIBRARY
 	)

 endif ()
@@ -235,4 +252,5 @@
 	DirectX_D3D10_1_FOUND
 	DirectX_D3D11_FOUND
 	DirectX_D3DX11_FOUND
+	DirectX_D3D11_1_FOUND
 )


Fix: don't install unit tests and don't use different names

git-svn-id: e7ea667a1d39a4453c4efcc4ba7bca3d620c3f19@697 a9d63959-f2ad-4865-b262-bf0e56cfafb6

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -146,13 +146,9 @@
     #
     target_link_libraries(${_exename} ${GTEST_BOTH_LIBRARIES} ${PCL_ADD_TEST_LINK_WITH})
     PCL_LINK_OPENMP(${_exename})
-    set_target_properties(${_exename} PROPERTIES DEBUG_OUTPUT_NAME "${_exename}${CMAKE_DEBUG_POSTFIX}")
-    set_target_properties(${_exename} PROPERTIES RELEASE_OUTPUT_NAME "${_exename}${CMAKE_RELEASE_POSTFIX}")
-    install(TARGETS ${_exename} RUNTIME DESTINATION ${BIN_INSTALL_DIR}
-            COMPONENT ${_component})
 	add_test(${_name} ${_exename} ${PCL_ADD_TEST_ARGUMENTS})
 endmacro(PCL_ADD_TEST)
-###############################################################################
+

 ###############################################################################
 # Add compile flags to a target (because CMake doesn't provide something so


remove unset VSMC_MPI_FOUND

remove unset VSMC_MPI_FOUND

--- cmake/vSMCFindMPI.cmake
+++ cmake/vSMCFindMPI.cmake
@@ -29,7 +29,6 @@
 #  POSSIBILITY OF SUCH DAMAGE.
 # ============================================================================

-UNSET (VSMC_MPI_FOUND CACHE)
 IF (DEFINED VSMC_MPI_FOUND)
     RETURN ()
 ENDIF (DEFINED VSMC_MPI_FOUND)


Add org.mitk.gui.qt.ext plugin to whitelist

--- CMake/Whitelists/FlowBenchSegmentation.cmake
+++ CMake/Whitelists/FlowBenchSegmentation.cmake
@@ -44,6 +44,7 @@
 org.mitk.gui.qt.application
 org.mitk.gui.qt.common
 org.mitk.gui.qt.datamanager
+org.mitk.gui.qt.ext
 org.mitk.gui.qt.flow.segmentation
 org.mitk.gui.qt.flowapplication
 org.mitk.gui.qt.imagenavigator


Remove never used FEATURE_ASYNC_IO

Remove never used FEATURE_ASYNC_IO

--- clrdefinitions.cmake
+++ clrdefinitions.cmake
@@ -97,7 +97,6 @@
     add_definitions(-DFEATURE_ARRAYSTUB_AS_IL)
 endif()

-add_definitions(-DFEATURE_ASYNC_IO)
 add_definitions(-DFEATURE_COLLECTIBLE_TYPES)

 if(WIN32)


[external] Add VMA to the include path

[external] Add VMA to the include path

--- external/external.cmake
+++ external/external.cmake
@@ -73,6 +73,10 @@
 # Rex Core lib
 add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/rex)

+# VMA
+# Apparently they don't have an `include/` directory, you just include the src folder? Thanks AMD :|
+include_directories(${CMAKE_CURRENT_LIST_DIR}/VulkanMemoryAllocator/src)
+
 # Hide unnecessary targets from all

 set_property(TARGET glslang PROPERTY EXCLUDE_FROM_ALL True)


remove messages

remove messages

--- cmake/FindGLEW.cmake
+++ cmake/FindGLEW.cmake
@@ -25,9 +25,6 @@
 else()
     set(GLEW_BUILD_DIR Release/Win32)
 endif()
-
-MESSAGE(STATUS $ENV{CMAKE_PREFIX_PATH})
-MESSAGE(STATUS "MOEP: /lib/${GLEW_BUILD_DIR}")

 find_library(GLEW_LIBRARY NAMES GLEW glew glew32 glew32s


Removed gcov dependencie for ${TNAME}-coverage

--- cmake/Findgcov.cmake
+++ cmake/Findgcov.cmake
@@ -61,7 +61,7 @@
 		LINK_FLAGS "${COVERAGE_LINKER_FLAGS}"
 	)

-	# add gcov execution target
+	# add gcov evaluation
 	if (GCOV_FOUND)
 		add_gcov_target(${TNAME})
 	endif (GCOV_FOUND)
@@ -186,8 +186,7 @@
 		# add target for gcov evaluation of <TNAME>
 		add_custom_target(${TNAME}-gcov DEPENDS ${BUFFER})

-		# add evaluation target to <TNAME>-coverage and the global gcov target.
-		add_dependencies(${TNAME}-coverage ${TNAME}-gcov)
+		# add evaluation target to the global gcov target.
 		add_dependencies(gcov ${TNAME}-gcov)
 	endfunction (add_gcov_target)
 endif (GCOV_FOUND)


erthink: cmake: add cmake: add `-keep_dwarf_unwind` for OSX.

--- cmake/compiler.cmake
+++ cmake/compiler.cmake
@@ -592,6 +592,12 @@
     unset(config)
   endif()

+  if(CMAKE_COMPILER_IS_CLANG AND OSX_ARCHITECTURES)
+    set(EXE_LINKER_FLAGS "${EXE_LINKER_FLAGS} -Wl,-keep_dwarf_unwind")
+    set(SHARED_LINKER_FLAGS "${SHARED_LINKER_FLAGS} -Wl,-keep_dwarf_unwind")
+    set(MODULE_LINKER_FLAGS "${MODULE_LINKER_FLAGS} -Wl,-keep_dwarf_unwind")
+  endif()
+
   if(CMAKE_COMPILER_IS_CLANG AND LTO_ENABLED)
     if(CMAKE_${CMAKE_PRIMARY_LANG}_COMPILER_VERSION VERSION_LESS 3.9)
       set(CLANG_LTO_FLAG "-flto")


Minor comment fix in fips_osx.cmake

Minor comment fix in fips_osx.cmake

--- cmake/fips_osx.cmake
+++ cmake/fips_osx.cmake
@@ -144,7 +144,7 @@

 #-------------------------------------------------------------------------------
 #   fips_osx_add_target_properties(target)
-#   Setup setup special target properties for OSX/iOS.
+#   Setup special target properties for OSX/iOS.
 #
 macro(fips_osx_add_target_properties target)
     if (FIPS_IOS OR FIPS_OSX)


nxphlite-v3 cmake:Bring inline with master

--- cmake/configs/nuttx_nxphlite-v3_default.cmake
+++ cmake/configs/nuttx_nxphlite-v3_default.cmake
@@ -133,34 +133,39 @@
 	modules/logger
 	modules/sdlog2

-	#
+#
 	# Library modules
 	#
-	modules/dataman
 	modules/systemlib/param
 	modules/systemlib
 	modules/systemlib/mixer
 	modules/uORB
+	modules/dataman
+
+	# micro RTPS
+	modules/micrortps_bridge/micrortps_client
+

 	#
 	# Libraries
 	#
 	lib/controllib
-	lib/conversion
-	lib/DriverFramework/framework
+	lib/mathlib
+	lib/mathlib/math/filter
+	lib/rc
 	lib/ecl
 	lib/external_lgpl
 	lib/geo
 	lib/geo_lookup
+	lib/conversion
 	lib/launchdetection
 	lib/led
-	lib/mathlib
-	lib/mathlib/math/filter
-	lib/rc
+	lib/terrain_estimation
 	lib/runway_takeoff
 	lib/tailsitter_recovery
-	lib/terrain_estimation
 	lib/version
+	lib/DriverFramework/framework
+	lib/micro-CDR

 	#
 	# Platform
@@ -168,7 +173,6 @@
 	platforms/common
 	platforms/nuttx
 	platforms/nuttx/px4_layer
-	lib/micro-CDR

 	#
 	# OBC challenge
@@ -211,3 +215,12 @@
 	# EKF
 	examples/ekf_att_pos_estimator
 )
+
+
+set(config_rtps_send_topics
+   sensor_combined
+   )
+
+set(config_rtps_receive_topics
+   sensor_baro
+   )


trying to get gtest to work with azure

trying to get gtest to work with azure

--- external/external.cmake
+++ external/external.cmake
@@ -57,8 +57,8 @@
     googletest
     GIT_REPOSITORY https://github.com/google/googletest.git
     GIT_TAG master
-    SOURCE_DIR "${CMAKE_BINARY_DIR}/googletest-src"
-    BINARY_DIR "${CMAKE_BINARY_DIR}/googletest-build"
+    SOURCE_DIR "${CMAKE_BINARY_DIR}/gtestsrc"
+    BINARY_DIR "${CMAKE_BINARY_DIR}/gtestbuild"
     CONFIGURE_COMMAND ""
     BUILD_COMMAND ""
     INSTALL_COMMAND ""
@@ -73,7 +73,7 @@
 set(GTEST_LIBRARY ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}gtest.a)
 add_library(${GTEST_LIBRARY} UNKNOWN IMPORTED)
 set_target_properties(gtest PROPERTIES
-    IMPORTED_LOCATION ${binary_dir}/libgtest.a
+    IMPORTED_LOCATION ${GTEST_LIBRARY}
 )
 add_dependencies(${GTEST_LIBRARY} googletest)


Add ability to set a prefix for an aktualizr test

+ some refactor

Signed-off-by: Laurent Bonnans <0909bc0a3d1b0c91d8e00372b9633e8e9ea958de@here.com>

--- cmake-modules/AddAktualizrTest.cmake
+++ cmake-modules/AddAktualizrTest.cmake
@@ -1,14 +1,15 @@
 function(add_aktualizr_test)
     set(options PROJECT_WORKING_DIRECTORY NO_VALGRIND)
     set(oneValueArgs NAME)
-    set(multiValueArgs SOURCES LIBRARIES ARGS)
+    set(multiValueArgs SOURCES LIBRARIES ARGS LAUNCH_CMD)
     cmake_parse_arguments(AKTUALIZR_TEST "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
-    add_executable(t_${AKTUALIZR_TEST_NAME} EXCLUDE_FROM_ALL ${AKTUALIZR_TEST_SOURCES} ${PROJECT_SOURCE_DIR}/tests/test_utils.cc)
-    target_link_libraries(t_${AKTUALIZR_TEST_NAME}
+    set(TEST_TARGET t_${AKTUALIZR_TEST_NAME})
+    add_executable(${TEST_TARGET} EXCLUDE_FROM_ALL ${AKTUALIZR_TEST_SOURCES} ${PROJECT_SOURCE_DIR}/tests/test_utils.cc)
+    target_link_libraries(${TEST_TARGET}
         ${AKTUALIZR_TEST_LIBRARIES}
         aktualizr_static_lib
         ${TEST_LIBS})
-    target_include_directories(t_${AKTUALIZR_TEST_NAME} PUBLIC ${PROJECT_SOURCE_DIR}/tests)
+    target_include_directories(${TEST_TARGET} PUBLIC ${PROJECT_SOURCE_DIR}/tests)

     if(AKTUALIZR_TEST_PROJECT_WORKING_DIRECTORY)
         set(WD WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
@@ -16,17 +17,17 @@
         set(WD )
     endif()

-    # run tests under valgrind if the correct CMAKE_BUILD_TYPE is set
     if(TESTSUITE_VALGRIND AND (NOT AKTUALIZR_TEST_NO_VALGRIND))
-        add_test(NAME test_${AKTUALIZR_TEST_NAME}
-                 COMMAND ${RUN_VALGRIND} ${CMAKE_CURRENT_BINARY_DIR}/t_${AKTUALIZR_TEST_NAME} ${AKTUALIZR_TEST_ARGS} ${GOOGLE_TEST_OUTPUT}
-                 ${WD})
-    else()
-        add_test(NAME test_${AKTUALIZR_TEST_NAME}
-                 COMMAND t_${AKTUALIZR_TEST_NAME} ${AKTUALIZR_TEST_ARGS} ${GOOGLE_TEST_OUTPUT}
-                 ${WD})
+        list(INSERT CMD_PREFIX 0 ${RUN_VALGRIND})
     endif()

-    add_dependencies(build_tests t_${AKTUALIZR_TEST_NAME})
+    if(AKTUALIZR_TEST_LAUNCH_CMD)
+        list(INSERT CMD_PREFIX 0 ${AKTUALIZR_TEST_LAUNCH_CMD})
+    endif()
+
+    add_test(NAME test_${AKTUALIZR_TEST_NAME}
+             COMMAND ${CMD_PREFIX} $<TARGET_FILE:${TEST_TARGET}> ${AKTUALIZR_TEST_ARGS} ${GOOGLE_TEST_OUTPUT} ${WD})
+
+    add_dependencies(build_tests ${TEST_TARGET})
     set(TEST_SOURCES ${TEST_SOURCES} ${AKTUALIZR_TEST_SOURCES} PARENT_SCOPE)
 endfunction(add_aktualizr_test)


Potential fix for missing ifcopenshell legacy library

--- cmake/modules/FindIfcOpenShell.cmake
+++ cmake/modules/FindIfcOpenShell.cmake
@@ -7,11 +7,11 @@
 # IFCOPENSHELL_LIBRARY_DIRS - Directories containing the IfcOpenShell library.
 # IFCOPENSHELL_LIBRARIES - IfcOpenShell library files.

-find_path(IFCOPENSHELL_INCLUDE_DIR ifcgeom
+find_path(IFCOPENSHELL_INCLUDE_DIR ifcgeom3
     PATHS "/usr/include" "/usr/local/include" "$ENV{PROGRAMFILES}" "/usr/x86_64-w64-mingw32/include")

-find_library(IFCOPENSHELL_GEOM_LIBRARY_PATH IfcGeom PATHS "/usr/lib" "/usr/local/lib" "/usr/x86_64-w64-mingw32/lib")
-find_library(IFCOPENSHELL_PARSE_LIBRARY_PATH IfcParse PATHS "/usr/lib" "/usr/local/lib" "/usr/x86_64-w64-mingw32/lib")
+find_library(IFCOPENSHELL_GEOM_LIBRARY_PATH IfcGeom3 PATHS "/usr/lib" "/usr/local/lib" "/usr/x86_64-w64-mingw32/lib")
+find_library(IFCOPENSHELL_PARSE_LIBRARY_PATH IfcParse3 PATHS "/usr/lib" "/usr/local/lib" "/usr/x86_64-w64-mingw32/lib")

 if(EXISTS ${IFCOPENSHELL_GEOM_LIBRARY_PATH} AND EXISTS ${IFCOPENSHELL_PARSE_LIBRARY_PATH})
     get_filename_component(IFCOPENSHELL_GEOM_LIBRARY ${IFCOPENSHELL_GEOM_LIBRARY_PATH} NAME)


git-svn-id: svn://svn.code.sf.net/p/segs/code2@75 a19be42f-918d-4297-8077-ab25d1e4f51f

--- CMakeScripts/SEGS_Components.cmake
+++ CMakeScripts/SEGS_Components.cmake
@@ -4,7 +4,7 @@
 		IF("${LINK_TYPE}" STREQUAL "LIB")

             SET(target_INCLUDE_DIR ${target_INCLUDE_DIR} ${${component_name}_INCLUDE_DIR})
-			SET(target_DEPENDS ${target_DEPENDS} ${component_name})
+			SET(target_DEPENDS ${target_DEPENDS} ${component_name} ${${component_name}_DEPENDS})

 		ELSEIF("${LINK_TYPE}" STREQUAL "SOURCE")

@@ -36,7 +36,7 @@

         SET(${name}_VISITED TRUE CACHE INTERNAL "")
         SET(${name}_INCLUDE_DIR ${include_dir} CACHE INTERNAL "")
-
+        SET(${name}_DEPENDS ${target_DEPENDS} CACHE INTERNAL "") # warning! will pull in all current dependencies
         SET(${name}_CPP ${sources} CACHE INTERNAL "")
         SET(${name}_INCLUDE ${includes} CACHE INTERNAL "")
         SET(${name}_SOURCES ${${name}_CPP} ${${name}_INCLUDE} CACHE INTERNAL "")


CLANG: Add more errors

CLANG: Add more errors

--- cmake/toolchains/Toolchain-posix-clang-native.cmake
+++ cmake/toolchains/Toolchain-posix-clang-native.cmake
@@ -22,6 +22,7 @@
     -Werror=init-self
     -Werror=return-type
     -Werror=deprecated
+    -Werror=unused-private-field
     -Wno-packed
     -Wno-frame-larger-than=
     #-Wcast-qual  - generates spurious noreturn attribute warnings,


CMake: MSVC - use absolute resource paths so dependent projects work

otherwise autodiscovery via OgreConfigPaths.h fails

--- CMake/InstallResources.cmake
+++ CMake/InstallResources.cmake
@@ -17,13 +17,13 @@
     set(OGRE_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
     set(OGRE_TEST_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
   else()
-    set(OGRE_MEDIA_DIR_REL "../${OGRE_MEDIA_PATH}")
+    set(OGRE_MEDIA_DIR_REL "${CMAKE_INSTALL_PREFIX}/${OGRE_MEDIA_PATH}")
     set(OGRE_TEST_MEDIA_DIR_REL "../Tests/${OGRE_MEDIA_PATH}")
   endif()
-  set(OGRE_PLUGIN_DIR_REL ".")
-  set(OGRE_PLUGIN_DIR_DBG ".")
-  set(OGRE_SAMPLES_DIR_REL ".")
-  set(OGRE_SAMPLES_DIR_DBG ".")
+  set(OGRE_PLUGIN_DIR_REL "${CMAKE_INSTALL_PREFIX}/bin")
+  set(OGRE_PLUGIN_DIR_DBG "${CMAKE_INSTALL_PREFIX}/bin")
+  set(OGRE_SAMPLES_DIR_REL "${CMAKE_INSTALL_PREFIX}/bin")
+  set(OGRE_SAMPLES_DIR_DBG "${CMAKE_INSTALL_PREFIX}/bin")
   set(OGRE_CFG_INSTALL_PATH "bin")
 elseif (APPLE)
   set(OGRE_MEDIA_PATH "Media")


Allow OIS to be found in the OGRE_SDK location when building from outside

--- CMake/Packages/FindOIS.cmake
+++ CMake/Packages/FindOIS.cmake
@@ -19,6 +19,7 @@

 # Get path, convert backslashes as ${ENV_${var}}
 getenv_path(OIS_HOME)
+getenv_path(OGRE_SDK)
 getenv_path(OGRE_HOME)
 getenv_path(OGRE_SOURCE)

@@ -26,6 +27,7 @@
 set(OIS_PREFIX_PATH ${OIS_HOME} ${ENV_OIS_HOME}
   ${OGRE_SOURCE}/iPhoneDependencies ${ENV_OGRE_SOURCE}/iPhoneDependencies
   ${OGRE_SOURCE}/Dependencies ${ENV_OGRE_SOURCE}/Dependencies
+  ${OGRE_SDK} ${ENV_OGRE_SDK}
   ${OGRE_HOME} ${ENV_OGRE_HOME})
 create_search_paths(OIS)
 # redo search if prefix path changed


Allow running tests under valgrind on Linux.

--- CMake/SurgSimUtilities.cmake
+++ CMake/SurgSimUtilities.cmake
@@ -20,12 +20,23 @@
 #
 option(SURGSIM_TESTS_BUILD "Include the unit tests in the build" ON)
 option(SURGSIM_TESTS_RUN "Run the unit tests at the end of the build" ON)
+if(NOT WIN32)
+	option(SURGSIM_TESTS_RUN_WITH_VALGRIND "Run the unit tests under Valgrind" OFF)
+endif(NOT WIN32)
 option(SURGSIM_TESTS_ALL_IN_ONE
 	"Build a single binary with all unit tests.  [Does not work yet!]" OFF)
 option(SURGSIM_EXAMPLES_BUILD "Include the examples in the build" ON)
 mark_as_advanced(SURGSIM_TESTS_ALL_IN_ONE)  # hide it as long as it's broken

 set(SURGSIM_COPY_WARNING_ONCE TRUE)
+set(SURGSIM_TEST_RUN_PREFIX)
+if(NOT WIN32)
+	if(SURGSIM_TESTS_RUN_WITH_VALGRIND)
+		set(SURGSIM_TEST_RUN_PREFIX valgrind -v --error-exitcode=1
+			--fullpath-after= --leak-check=full --redzone-size=64)
+	endif(SURGSIM_TESTS_RUN_WITH_VALGRIND)
+endif(NOT WIN32)
+

 # Copy zero or more files to the location of a built target, after the
 # target is built successfully, but only if the condition (which
@@ -138,7 +149,8 @@
 #
 macro(surgsim_unit_test_run_only TESTNAME)
 	if(NOT SURGSIM_TESTS_ALL_IN_ONE)
-		add_custom_command(TARGET ${TESTNAME} POST_BUILD COMMAND ${TESTNAME}
+		add_custom_command(TARGET ${TESTNAME} POST_BUILD
+			COMMAND ${SURGSIM_TEST_RUN_PREFIX} $<TARGET_FILE:${TESTNAME}>
 			VERBATIM)
 	endif()
 endmacro()


Test related stuff.

Test related stuff.

--- CTestCustom.cmake
+++ CTestCustom.cmake
@@ -1,4 +1,5 @@
 IF(WIN32)
-#    SET(CTEST_CUSTOM_POST_TEST "type Testing/Temporary/LastTest.log")
-    SET(CTEST_CUSTOM_POST_TEST "cd")
+    SET(CTEST_CUSTOM_POST_TEST
+      "C:\Windows\System32\cmd /C type Testing\Temporary\LastTest.log")
+#    SET(CTEST_CUSTOM_POST_TEST "type Testing\Temporary\LastTest.log")
 ENDIF(WIN32)


android.toolchain.cmake: reintroduce fix to always force out-of-source build.

--- tools/build/cmake/toolchains/android.toolchain.cmake
+++ tools/build/cmake/toolchains/android.toolchain.cmake
@@ -1487,18 +1487,10 @@
 # setup output directories
 set( CMAKE_INSTALL_PREFIX "${ANDROID_TOOLCHAIN_ROOT}/user" CACHE STRING "path for installing" )

-if( DEFINED LIBRARY_OUTPUT_PATH_ROOT
-      OR EXISTS "${CMAKE_SOURCE_DIR}/AndroidManifest.xml"
-      OR (EXISTS "${CMAKE_SOURCE_DIR}/../AndroidManifest.xml" AND EXISTS "${CMAKE_SOURCE_DIR}/../jni/") )
-  set( LIBRARY_OUTPUT_PATH_ROOT ${CMAKE_SOURCE_DIR} CACHE PATH "Root for binaries output, set this to change where Android libs are installed to" )
-  if( NOT _CMAKE_IN_TRY_COMPILE )
-    if( EXISTS "${CMAKE_SOURCE_DIR}/jni/CMakeLists.txt" )
-      set( EXECUTABLE_OUTPUT_PATH "${LIBRARY_OUTPUT_PATH_ROOT}/bin/${ANDROID_NDK_ABI_NAME}" CACHE PATH "Output directory for applications" )
-    else()
-      set( EXECUTABLE_OUTPUT_PATH "${LIBRARY_OUTPUT_PATH_ROOT}/bin" CACHE PATH "Output directory for applications" )
-    endif()
-    set( LIBRARY_OUTPUT_PATH "${LIBRARY_OUTPUT_PATH_ROOT}/libs/${ANDROID_NDK_ABI_NAME}" CACHE PATH "Output directory for Android libs" )
-  endif()
+set( LIBRARY_OUTPUT_PATH_ROOT ${CMAKE_BINARY_DIR} CACHE PATH "Root for binaries output, set this to change where Android libs are installed to" )
+if( NOT _CMAKE_IN_TRY_COMPILE )
+  set( EXECUTABLE_OUTPUT_PATH "${LIBRARY_OUTPUT_PATH_ROOT}/bin/${ANDROID_NDK_ABI_NAME}" CACHE PATH "Output directory for applications" )
+  set( LIBRARY_OUTPUT_PATH "${LIBRARY_OUTPUT_PATH_ROOT}/libs/${ANDROID_NDK_ABI_NAME}" CACHE PATH "Output directory for Android libs" )
 endif()

 # copy shaed stl library to build directory


fix config.cmake

fix config.cmake

--- gloperate-config.cmake
+++ gloperate-config.cmake
@@ -17,6 +17,18 @@
 # GLOPERATE_QT_BINARIES
 # GLOPERATE_QT_BINARY_[RELEASE|DEBUG]

+# GLOPERATE_QTWIDGETS_LIBRARIES
+# GLOPERATE_QTWIDGETS_LIBRARY_[RELEASE|DEBUG]
+# GLOPERATE_QTWIDGETS_INCLUDE_DIR
+# GLOPERATE_QTWIDGETS_BINARIES
+# GLOPERATE_QTWIDGETS_BINARY_[RELEASE|DEBUG]
+
+# GLOPERATE_QTAPPLICATION_LIBRARIES
+# GLOPERATE_QTAPPLICATION_LIBRARY_[RELEASE|DEBUG]
+# GLOPERATE_QTAPPLICATION_INCLUDE_DIR
+# GLOPERATE_QTAPPLICATION_BINARIES
+# GLOPERATE_QTAPPLICATION_BINARY_[RELEASE|DEBUG]
+
 # GLOPERATE_GLFW_LIBRARIES
 # GLOPERATE_GLFW_LIBRARY_[RELEASE|DEBUG]
 # GLOPERATE_GLFW_INCLUDE_DIR
@@ -29,11 +41,11 @@
 # GLOPERATE_OSG_BINARIES
 # GLOPERATE_OSG_BINARY_[RELEASE|DEBUG]

-# GLOPERATE_QTWIDGETS_LIBRARIES
-# GLOPERATE_QTWIDGETS_LIBRARY_[RELEASE|DEBUG]
-# GLOPERATE_QTWIDGETS_INCLUDE_DIR
-# GLOPERATE_QTWIDGETS_BINARIES
-# GLOPERATE_QTWIDGETS_BINARY_[RELEASE|DEBUG]
+# GLOPERATE_ASSIMP_LIBRARIES
+# GLOPERATE_ASSIMP_LIBRARY_[RELEASE|DEBUG]
+# GLOPERATE_ASSIMP_INCLUDE_DIR
+# GLOPERATE_ASSIMP_BINARIES
+# GLOPERATE_ASSIMP_BINARY_[RELEASE|DEBUG]

 include(FindPackageHandleStandardArgs)
@@ -49,7 +61,7 @@
 set(GLOPERATE_LIBRARIES "")
 set(GLOPERATE_BINARIES "")

-set(LIB_PATHS
+set(LIB_PATHS
     ${GLOPERATE_DIR}/build
     ${GLOPERATE_DIR}/build/Release
     ${GLOPERATE_DIR}/build/Debug
@@ -73,7 +85,7 @@

     string(TOUPPER ${LIB_NAME} LIB_NAME_UPPER)
     string(REPLACE "-" "_" LIB_NAME_UPPER ${LIB_NAME_UPPER})
-
+
     find_path(${LIB_NAME_UPPER}_INCLUDE_DIR ${HEADER}
         ${ENVGLOPERATE_DIR}/include
         ${ENVGLOPERATE_DIR}/source/${LIB_NAME}/include
@@ -94,7 +106,7 @@
         NAMES ${LIB_NAME}d
         PATHS ${HINT_PATHS}
         DOC "The ${LIB_NAME} debug library")
-
+
     if(${LIB_NAME_UPPER}_LIBRARY_RELEASE AND ${LIB_NAME_UPPER}_LIBRARY_DEBUG)
         set(${LIB_NAME_UPPER}_LIBRARIES "optimized" ${${LIB_NAME_UPPER}_LIBRARY_RELEASE} "debug" ${${LIB_NAME_UPPER}_LIBRARY_DEBUG})
     elseif(${LIB_NAME_UPPER}_LIBRARY_RELEASE)
@@ -150,9 +162,11 @@

 find(gloperate gloperate/gloperate_api.h ${LIB_PATHS})
 find(gloperate-qt gloperate-qt/gloperate-qt_api.h ${LIB_PATHS})
+find(gloperate-qtwidgets gloperate-qtwidgets/gloperate-qtwidgets_api.h ${LIB_PATHS})
+find(gloperate-qtapplication gloperate-qtapplication/gloperate-qtapplication_api.h ${LIB_PATHS})
 find(gloperate-glfw gloperate-glfw/gloperate-glfw_api.h ${LIB_PATHS})
 find(gloperate-osg gloperate-osg/gloperate-osg_api.h ${LIB_PATHS})
-find(gloperate-qtwidgets gloperate-qtwidgets/gloperate-qtwidgets_api.h ${LIB_PATHS})
+find(gloperate-assimp gloperate-assimp/gloperate-assimp_api.h ${LIB_PATHS})

 # DEBUG
 # message("GLOPERATE_INCLUDES  = ${GLOPERATE_INCLUDES}")


Make Findcppnetlib subproject-capable

Make Findcppnetlib subproject-capable

--- Findcppnetlib.cmake
+++ Findcppnetlib.cmake
@@ -27,8 +27,8 @@
 #
 # =============================================================================
 #
-# CPPNETLIB
-#
+# CPPNETLIB
+#
 #==============================================================================
 # This module uses the following input variables:
 #
@@ -50,49 +50,54 @@
 # PATH ________________________________________________________________________

 if(NOT CPPNETLIB_PATH)
-    find_path(CPPNETLIB_PATH include/boost/network.hpp
-	HINTS ${CPPNETLIB_ROOT} $ENV{CPPNETLIB_ROOT}
-        /usr/local/
-        /usr/
-    )
-endif ()
+  find_path(CPPNETLIB_INCLUDE_DIR boost/network.hpp
+    HINTS ${CPPNETLIB_ROOT}/include $ENV{CPPNETLIB_ROOT}/include
+    ${CMAKE_SOURCE_DIR}/cppnetlib
+    /usr/local/include
+    /usr/include)
+  set(CPPNETLIB_PATH "${CPPNETLIB_INCLUDE_DIR}/..")
+endif()

 # HEADERS AND DYNAMIC LIBRARIES_________________________________________________

 if(CPPNETLIB_PATH)
-    set (CPPNETLIB_INCLUDE_DIR ${CPPNETLIB_PATH}/include)
-    mark_as_advanced (CPPNETLIB_INCLUDE_DIR)
+  mark_as_advanced (CPPNETLIB_INCLUDE_DIR)
+  set(__libraries
+    cppnetlib-client-connections cppnetlib-server-parsers cppnetlib-uri)

-    find_library(CPPNETLIB_LIBRARY1 NAMES cppnetlib-client-connections
-	HINTS ${CPPNETLIB_ROOT} $ENV{CPPNETLIB_ROOT}
-        PATHS ${CPPNETLIB_PATH}/lib64 ${CPPNETLIB_PATH}/lib
-    )
-    find_library(CPPNETLIB_LIBRARY2 NAMES cppnetlib-server-parsers
+  foreach(__library ${__libraries})
+    if(TARGET ${__library})
+      list(APPEND CPPNETLIB_LIBRARIES ${__library})
+    else()
+      find_library(${__library} NAMES ${__library}
         HINTS ${CPPNETLIB_ROOT} $ENV{CPPNETLIB_ROOT}
-        PATHS ${CPPNETLIB_PATH}/lib64 ${CPPNETLIB_PATH}/lib
-    )
-    find_library(CPPNETLIB_LIBRARY3 NAMES cppnetlib-uri
-        HINTS ${CPPNETLIB_ROOT} $ENV{CPPNETLIB_ROOT}
-        PATHS ${CPPNETLIB_PATH}/lib64 ${CPPNETLIB_PATH}/lib
-    )
-    SET(CPPNETLIB_LIBRARIES ${CPPNETLIB_LIBRARY1} ${CPPNETLIB_LIBRARY2} ${CPPNETLIB_LIBRARY3})
-    mark_as_advanced(CPPNETLIB_LIBRARIES)
+        PATHS ${CPPNETLIB_PATH}/lib64 ${CPPNETLIB_PATH}/lib)
+      list(APPEND CPPNETLIB_LIBRARIES ${${__library}})
+    endif()
+  endforeach()
+  mark_as_advanced(CPPNETLIB_LIBRARIES)
 endif()

 # FOUND _______________________________________________________________________
 if(CPPNETLIB_FIND_REQUIRED)
+  set(_cppnetlib_output 1)
+else()
+  if(NOT CPPNETLIB_FIND_QUIETLY)
     set(_cppnetlib_output 1)
-else()
-    if(NOT CPPNETLIB_FIND_QUIETLY)
-        set(_cppnetlib_output 1)
-    endif()
+  endif()
 endif()

 include(FindPackageHandleStandardArgs)
 find_package_handle_standard_args(CPPNETLIB DEFAULT_MSG CPPNETLIB_LIBRARIES CPPNETLIB_INCLUDE_DIR)

-set(CPPNETLIB_INCLUDE_DIRS ${CPPNETLIB_INCLUDE_DIR})
-
-if(CPPNETLIB_FOUND AND _cppnetlib_output )
-    message(STATUS "Found cpp-netlib in ${CPPNETLIB_INCLUDE_DIR};${CPPNETLIB_LIBRARIES}")
+if(CPPNETLIB_FOUND)
+  set(CPPNETLIB_INCLUDE_DIRS ${CPPNETLIB_INCLUDE_DIR})
+  if(_cppnetlib_output )
+    message(STATUS "Found cpp-netlib in ${CPPNETLIB_INCLUDE_DIR}:${CPPNETLIB_LIBRARIES}")
+  endif()
+else()
+  set(CPPNETLIB_FOUND)
+  set(CPPNETLIB_INCLUDE_DIR)
+  set(CPPNETLIB_INCLUDE_DIRS)
+  set(CPPNETLIB_LIBRARIES)
 endif()


repo(tudat-team) Migrated CI to tudat-team.


Find python3 before python

Find python3 before python

This is useful when using a locally installed python3 on a system where
/usr/bin/python is python2. This way, the newer version will be found
without needing to manually specify -DPYTHON_EXECUTABLE

--- CMake/hoomd/HOOMDPythonSetup.cmake
+++ CMake/hoomd/HOOMDPythonSetup.cmake
@@ -16,6 +16,10 @@
 endmacro(run_python)

 # find the python interpreter, first
+if (NOT PYTHON_SITEDIR)
+    find_program(PYTHON_EXECUTABLE NAMES python3 python)
+endif()
+
 find_package(PythonInterp REQUIRED)

 # get the python installation prefix and version


Fix shader generation

Fix shader generation

--- ApplicationTools.cmake
+++ ApplicationTools.cmake
@@ -52,7 +52,6 @@
   add_stage_rep(shader_${name} ${CMAKE_CURRENT_BINARY_DIR}/${dir}/shader_${name}.hpp)
   add_pipeline_rep(shader_${name} ${CMAKE_CURRENT_BINARY_DIR}/${dir}/shader_${name}.hpp UNIVERSAL)
   add_library(shader_${name} ${CMAKE_CURRENT_BINARY_DIR}/${dir}/shader_${name}.hpp ${CMAKE_CURRENT_BINARY_DIR}/${dir}/shader_${name}.cpp)
-  target_link_libraries(shader_${name} PUBLIC boo hecl-light)
   add_shader_target(shader_${name})
 endfunction()

@@ -60,6 +59,5 @@
   add_stage_rep(${name} ${name}.hpp)
   add_pipeline_rep(${name} ${name}.hpp UNIVERSAL)
   add_library(${name} ${name}.hpp ${ARGN})
-  target_link_libraries(${name} PUBLIC boo hecl-light)
   add_shader_target(${name})
 endfunction()


Update library file names `libpng12` -> `libpng16`

Signed-off-by: Yong Tang <765086fe2e0c1f980161f127fec596800f327f62@outlook.com>

--- tensorflow/contrib/cmake/external/png.cmake
+++ tensorflow/contrib/cmake/external/png.cmake
@@ -23,24 +23,24 @@
 if(WIN32)
   if(${CMAKE_GENERATOR} MATCHES "Visual Studio.*")
     set(png_STATIC_LIBRARIES
-      debug ${CMAKE_BINARY_DIR}/png/install/lib/libpng12_staticd.lib
-      optimized ${CMAKE_BINARY_DIR}/png/install/lib/libpng12_static.lib)
+      debug ${CMAKE_BINARY_DIR}/png/install/lib/libpng16_staticd.lib
+      optimized ${CMAKE_BINARY_DIR}/png/install/lib/libpng16_static.lib)
   else()
     if(CMAKE_BUILD_TYPE EQUAL Debug)
       set(png_STATIC_LIBRARIES
-        ${CMAKE_BINARY_DIR}/png/install/lib/libpng12_staticd.lib)
+        ${CMAKE_BINARY_DIR}/png/install/lib/libpng16_staticd.lib)
     else()
       set(png_STATIC_LIBRARIES
-        ${CMAKE_BINARY_DIR}/png/install/lib/libpng12_static.lib)
+        ${CMAKE_BINARY_DIR}/png/install/lib/libpng16_static.lib)
     endif()
   endif()
 else()
-  set(png_STATIC_LIBRARIES ${CMAKE_BINARY_DIR}/png/install/lib/libpng12.a)
+  set(png_STATIC_LIBRARIES ${CMAKE_BINARY_DIR}/png/install/lib/libpng16.a)
 endif()

 set(png_HEADERS
-    "${png_INSTALL}/include/libpng12/png.h"
-    "${png_INSTALL}/include/libpng12/pngconf.h"
+    "${png_INSTALL}/include/libpng16/png.h"
+    "${png_INSTALL}/include/libpng16/pngconf.h"
 )

 ExternalProject_Add(png


Improve comment

Improve comment

--- GitExternal.cmake
+++ GitExternal.cmake
@@ -102,7 +102,7 @@
         WORKING_DIRECTORY "${DIR}"
         )
       if(nok)
-        message(STATUS "${DIR} git checkout ${TAG} failed: ${error}\n")
+        message(STATUS "git checkout ${TAG} in ${DIR} failed: ${error}\n")
       endif()
     else()
       message(STATUS "Can't update git external ${DIR}: Not a git repository")


[UPD] FindMatlab updated to detected Matlab r2013(a|b) versions.

--- CMake/FindMatlab.cmake
+++ CMake/FindMatlab.cmake
@@ -3,7 +3,7 @@
 #   a macro to help the build of MEX-functions.
 #
 # This module detects a Matlab's version between Matlab 7.0 (R14)
-# and Matlab 8.0 (r2012b).
+# and Matlab 8.2 (r2013b).
 #
 # This module defines:
 #  MATLAB_ROOT:               Matlab installation path
@@ -34,6 +34,8 @@
 IF(WIN32)
   # Default paths
   SET(MATLAB_PATHS
+    "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\8.2;MATLABROOT]"
+    "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\8.1;MATLABROOT]"
     "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\8.0;MATLABROOT]"
     "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\7.15;MATLABROOT]"
     "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\7.14;MATLABROOT]"
@@ -55,6 +57,8 @@
   # Paths for Matlab 32-bit under Windows 64-bit
   IF(NOT MATLAB_ROOT)
     SET(MATLAB_PATHS
+      "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\8.2;MATLABROOT]"
+      "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\8.1;MATLABROOT]"
       "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\8.0;MATLABROOT]"
       "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\7.15;MATLABROOT]"
       "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\7.14;MATLABROOT]"


Update internal_utils.cmake (closes #228).

--- tests/gtest-1.7.0/cmake/internal_utils.cmake
+++ tests/gtest-1.7.0/cmake/internal_utils.cmake
@@ -66,14 +66,15 @@
       # Resolved overload was found by argument-dependent lookup.
       set(cxx_base_flags "${cxx_base_flags} -wd4675")
     endif()
-	if(MSVC_VERSION GREATER_EQUAL 1900 AND MSVC_VERSION LESS 1913)
-	  set(cxx_base_flags "${cxx_base_flags} -wd4996")
-	endif()
+    if(MSVC_VERSION GREATER_EQUAL 1900 AND MSVC_VERSION LESS 1913)
+      set(cxx_base_flags "${cxx_base_flags} -wd4996")
+    endif()
     set(cxx_base_flags "${cxx_base_flags} -D_UNICODE -DUNICODE -DWIN32 -D_WIN32")
     set(cxx_base_flags "${cxx_base_flags} -DSTRICT -DWIN32_LEAN_AND_MEAN")
     set(cxx_exception_flags "-EHsc -D_HAS_EXCEPTIONS=1")
     set(cxx_no_exception_flags "-D_HAS_EXCEPTIONS=0")
     set(cxx_no_rtti_flags "-GR-")
+    set(cxx_base_flags "${cxx_base_flags} -D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING")
   elseif (CMAKE_COMPILER_IS_GNUCXX)
     set(cxx_base_flags "-Wall -Wshadow")
     set(cxx_exception_flags "-fexceptions")


[CI] set DEV_MODE_STRICT

[CI] set DEV_MODE_STRICT

--- CI/config/default.cmake
+++ CI/config/default.cmake
@@ -1,5 +1,6 @@
 # default configuration for testing
 set_option(DEV_MODE ON)
+set_option(DEV_MODE_STRICT ON)
 set_option(WITH_TESTING ON)
 set_option(WITH_SYSTEM_INFO ON)
 set_option(WITH_numerics_TESTING ON)


COMP: on windows, enable external ossim by default since it is available with OSGeo4W

--- CMake/ImportOssim.cmake
+++ CMake/ImportOssim.cmake
@@ -1,6 +1,14 @@
 MESSAGE(STATUS "Importing Ossim...")
-# Option for internal/external GDAL
-OPTION(OTB_USE_EXTERNAL_OSSIM "Use an outside build of Ossim." OFF)
+
+SET(DEFAULT_OTB_USE_EXTERNAL_OSSIM  OFF)
+
+# OSGeo4W provides an "ossim" package : use it otherwise if it is installed and not used by OTB
+# we get conflicts (because OSGeo4W include dir is included for other dependencies
+IF(WIN32)
+  SET(DEFAULT_OTB_USE_EXTERNAL_OSSIM  ON)
+ENDIF()
+
+OPTION(OTB_USE_EXTERNAL_OSSIM "Use an outside build of Ossim." ${DEFAULT_OTB_USE_EXTERNAL_OSSIM})
 MARK_AS_ADVANCED(OTB_USE_EXTERNAL_OSSIM)

 IF(OTB_USE_EXTERNAL_OSSIM)


BUG: Update SCIOFIO to ITKv4.13 branch

BUG: Update SCIOFIO to ITKv4.13 branch

This patch includes updates to support multiple downloads locations
which are replacing gerrit.

Change-Id: I708a7a94397a41b1e222927cd4c51ea7a3e1903f

--- 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 ${git_protocol}://github.com/scifio/scifio-imageio.git
-  GIT_TAG 853c9e8beb48d6b62f6cffa2bb010f59b7240fcc
+  GIT_TAG 05c3a625bd764a49cd2f77c07fcf242f3bf880fe
   )


Fix LibJpegTurbo finder

Fix LibJpegTurbo finder

--- FindLibJpegTurbo.cmake
+++ FindLibJpegTurbo.cmake
@@ -26,6 +26,6 @@

 # Set the include dir variables and the libraries and let libfind_process do the rest.
 # NOTE: Singular variables for this library, plural for libraries this this lib depends on.
-set(LibJpegTurbo_PROCESS_INCLUDES LibJpegTurbo_INCLUDE_DIR)
-set(LibJpegTurbo_PROCESS_LIBS LibJpegTurbo_LIBRARY)
-libfind_process(LibJpegTurbo)+set(LibJpegTurbo_PROCESS_INCLUDES ${LibJpegTurbo_INCLUDE_DIR})
+set(LibJpegTurbo_PROCESS_LIBS ${LibJpegTurbo_LIBRARY})
+libfind_process(LibJpegTurbo)


SWDEV-274307 - Send NVCC_OPTIONS to linker

Flags of NVCC_OPTIONS need be sent to linker. Because compiler and
linker flager are mixed in NVCC_OPTIONS.

Change-Id: I3db37b962808566ea145e3cbdefa66d373e2d360

--- cmake/FindHIP.cmake
+++ cmake/FindHIP.cmake
@@ -668,6 +668,14 @@
     else()
         add_executable(${hip_target} ${_cmake_options} ${_generated_files} ${_sources})
     endif()
+    #LINK_OPTIONS
+    if("${HIP_COMPILER}" STREQUAL "nvcc")
+        # Some arch flags need be sent to linker. _nvcc_options mixes compiling and linker flags.
+        string(REPLACE ";"  " " _nvcc_flags "${_nvcc_options}") # Replace ',' with space
+        if(NOT "x${_nvcc_flags}" STREQUAL "x")
+            set_target_properties(${hip_target} PROPERTIES LINK_FLAGS "${_nvcc_flags}")
+        endif()
+    endif()
     set_target_properties(${hip_target} PROPERTIES LINKER_LANGUAGE HIP)
     # Link with host
     if (HIP_HOST_INTERFACE)


Update FindSMI.cmake

Update FindSMI.cmake

Fix build on Windows when using 64-bit CMake.

--- cmake/FindSMI.cmake
+++ cmake/FindSMI.cmake
@@ -67,13 +67,12 @@
     if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
         # Get desired program files directory
         set(_PF86_ENV "ProgramFiles(x86)")
-        set(_PF86 $ENV{${_PF86_ENV}})
-
-        if(NOT "$ENV{${_PF86}}" STREQUAL "")
-        # 32-bit dir: only set on win64
-            file(TO_CMAKE_PATH "$ENV{_PF86}" _progfiles)
+        set(_PF86 "$ENV{${_PF86_ENV}}")
+        if(NOT "${_PF86}" STREQUAL "")
+            # 32-bit dir: only set on win64
+            file(TO_CMAKE_PATH "${_PF86}" _progfiles)
         else()
-        # 32-bit dir on win32
+            # 32-bit dir on win32
             file(TO_CMAKE_PATH "$ENV{ProgramFiles}" _progfiles)
         endif()


r11056/sofa : push 213c15b..311c394

r11056/sofa : push 213c15b..311c394

* commit 311c3949b0a6ab2d775450361514618a1b4d3061
Disable doxygen targets creation by default

   1 files changed, 1 insertions(+), 1 deletions(-)

Former-commit-id: 427a780550d6124e906151cd5b1aa65d846e8214

--- cmake/options.cmake
+++ cmake/options.cmake
@@ -153,7 +153,7 @@

 sofa_option(SOFA-MISC_SMP BOOL OFF "Use SMP")

-sofa_option(SOFA-MISC_DOXYGEN BOOL ON "Create targets to generate documentation with doxygen.")
+sofa_option(SOFA-MISC_DOXYGEN BOOL OFF "Create targets to generate documentation with doxygen.")

 ## no opengl
 sofa_option(SOFA-MISC_NO_OPENGL BOOL OFF "Disable OpenGL")


Fix bug in if/endif block

Fix bug in if/endif block

--- cmake/options.cmake
+++ cmake/options.cmake
@@ -26,7 +26,7 @@
   set(clawpack5 ON)
   set(clawpatch ON)
   set(clawpack3_46 ON)
-endif(clawpack3)
+endif(clawpack)

 if(geoclaw)
   set(clawpatch ON)


No building of MIC RPMs anymore

No building of MIC RPMs anymore

--- cmake/package.cmake
+++ cmake/package.cmake
@@ -168,7 +168,6 @@
     ELSE()
       # needs to use COMPONENT names in original capitalization (i.e. lowercase)
       SET(CPACK_RPM_lib_PACKAGE_REQUIRES ${TBB_REQ})
-      SET(CPACK_RPM_lib_mic_PACKAGE_REQUIRES "ospray-lib = ${OSPRAY_VERSION}")
       SET(CPACK_RPM_apps_PACKAGE_REQUIRES "ospray-lib >= ${OSPRAY_VERSION}, qt = 4")
       SET(CPACK_RPM_devel_PACKAGE_REQUIRES "ospray-lib = ${OSPRAY_VERSION}")
       #SET(CPACK_RPM_PACKAGE_DEBUG ON)
@@ -176,7 +175,7 @@
     SET(CPACK_GENERATOR RPM)
     SET(CPACK_RPM_PACKAGE_RELEASE 1) # scripts/release_linux.sh assumes "1"
     SET(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}-${CPACK_RPM_PACKAGE_RELEASE}.x86_64")
-    SET(CPACK_COMPONENTS_ALL lib lib_mic devel apps)
+    SET(CPACK_COMPONENTS_ALL lib devel apps)
     SET(CPACK_RPM_COMPONENT_INSTALL ON)
     SET(CPACK_RPM_PACKAGE_LICENSE "ASL 2.0") # Apache Software License, Version 2.0
     SET(CPACK_RPM_PACKAGE_GROUP "Development/Libraries")
@@ -187,8 +186,6 @@
     # post install and uninstall scripts
     SET(CPACK_RPM_lib_POST_INSTALL_SCRIPT_FILE ${PROJECT_SOURCE_DIR}/scripts/rpm_ldconfig.sh)
     SET(CPACK_RPM_lib_POST_UNINSTALL_SCRIPT_FILE ${PROJECT_SOURCE_DIR}/scripts/rpm_ldconfig.sh)
-    SET(CPACK_RPM_lib_mic_POST_INSTALL_SCRIPT_FILE ${PROJECT_SOURCE_DIR}/scripts/rpm_ldconfig.sh)
-    SET(CPACK_RPM_lib_mic_POST_UNINSTALL_SCRIPT_FILE ${PROJECT_SOURCE_DIR}/scripts/rpm_ldconfig.sh)
   ENDIF()

 ENDIF()


RPM: depend on embree3

RPM: depend on embree3

--- cmake/package.cmake
+++ cmake/package.cmake
@@ -164,7 +164,7 @@
     SET(CPACK_RPM_COMPONENT_INSTALL ON)

     # dependencies
-    SET(OSPLIB_REQS "embree-lib >= ${EMBREE_VERSION_REQUIRED}")
+    SET(OSPLIB_REQS "embree3-lib >= ${EMBREE_VERSION_REQUIRED}")
     IF (CMAKE_VERSION VERSION_LESS "3.4.0")
       OSPRAY_WARN_ONCE(RPM_PACKAGING "You need at least v3.4.0 of CMake for generating RPMs")
       SET(CPACK_RPM_PACKAGE_REQUIRES ${OSPLIB_REQS})


Fixing PYC compilation: should fail when invalid Python.

--- salome_adm/cmake_files/SalomeMacros.cmake
+++ salome_adm/cmake_files/SalomeMacros.cmake
@@ -136,13 +136,13 @@
       LIST(APPEND _all_pyo ${_pyo_file})
       ADD_CUSTOM_COMMAND(
            OUTPUT ${_pyc_file}
-           COMMAND ${PYTHON_EXECUTABLE} -c "import py_compile ; py_compile.compile('${_source_prefix}${file}', '${_pyc_file}' )"
+           COMMAND ${PYTHON_EXECUTABLE} -c "import py_compile ; py_compile.compile('${_source_prefix}${file}', '${_pyc_file}', doraise=True )"
            DEPENDS ${PREFIX}${file}
            VERBATIM
        )
       ADD_CUSTOM_COMMAND(
            OUTPUT ${_pyo_file}
-           COMMAND ${PYTHON_EXECUTABLE} -O -c "import py_compile ; py_compile.compile('${_source_prefix}${file}', '${_pyo_file}' )"
+           COMMAND ${PYTHON_EXECUTABLE} -O -c "import py_compile ; py_compile.compile('${_source_prefix}${file}', '${_pyo_file}', doraise=True )"
            DEPENDS ${PREFIX}${file}
            VERBATIM
        )


COMP: Ensure FindDCMTK module works with and without DCMTKConfig.cmake file

In the case the provided DCMTK build or install tree doesn't have a
DCMTKConfig.cmake file, the first call to "find_package" should fail
quietly so that it doesn't prevent the rest of discovery process from working
as expected.

See #329

--- Utilities/CMake/FindDCMTK.cmake
+++ Utilities/CMake/FindDCMTK.cmake
@@ -34,22 +34,19 @@
 # Modified for EasyViz by Thomas Sondergaard.
 #

+set(_SAVED_DCMTK_DIR ${DCMTK_DIR})
+
 #
 # First, try to use NO_MODULE
-set(_DCMTK_REQUIRED)
-set(_DCMTK_QUIET)
-if(DCMTK_FIND_QUIETLY)
-  set(_DCMTK_QUIET QUIET)
-endif()
-if(DCMTK_FIND_REQUIRED)
-  set(_DCMTK_REQUIRED REQUIRED)
-endif()
-find_package(DCMTK ${_DCMTK_REQUIRED} ${_DCMTK_QUIET} NO_MODULE)
+find_package(DCMTK QUIET NO_MODULE)
 if(DCMTK_FOUND
     AND NOT "x" STREQUAL "x${DCMTK_LIBRARIES}"
     AND NOT "x" STREQUAL "x${DCMTK_INCLUDE_DIRS}")
   return()
 endif()
+
+# Restore the value reset by the previous call to 'find_package(DCMTK QUIET NO_MODULE)'
+set(DCMTK_DIR ${_SAVED_DCMTK_DIR} CACHE PATH "The directory containing a CMake configuration file for DCMTK." FORCE)

 # prefer DCMTK_DIR over default system paths like /usr/lib
 if(DCMTK_DIR)
@@ -188,7 +185,6 @@
     ${DCMTK_DIR}/include/${dir}
     ${SOURCE_DIR_PATH}
     )
-
   mark_as_advanced(DCMTK_${dir}_INCLUDE_DIR)
   list(APPEND DCMTK_INCLUDE_DIR_NAMES DCMTK_${dir}_INCLUDE_DIR)


Fix dependency for InsightDoxygen.tag

Fix dependency for InsightDoxygen.tag

The add_dependency works between top level targets and NOT file-level
dependencies!

Change-Id: I1ec32733718993287c7bdf4050d381fb7a9f6382

--- Utilities/Doxygen/Doxygen.cmake
+++ Utilities/Doxygen/Doxygen.cmake
@@ -45,18 +45,20 @@
     DEPENDS "${PROJECT_SOURCE_DIR}/Utilities/filters.csv" "${PROJECT_SOURCE_DIR}/Utilities/CSVtoTable.py"
     )

+  if (USE_ITK_DOXYGEN_TAGS)
+    set(TAGS_DEPENDS "DEPENDS \"${PROJECT_BINARY_DIR}/Documentation/Doxygen/InsightDoxygen.tag\"")
+  endif ()
+
+
   add_custom_target(Documentation ALL
     COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Utilities/Doxygen/doxygen.config
     MAIN_DEPENDENCY ${PROJECT_BINARY_DIR}/Utilities/Doxygen/doxygen.config
     DEPENDS "${PROJECT_BINARY_DIR}/Documentation/Doxygen/Examples.dox"
     DEPENDS "${PROJECT_BINARY_DIR}/Documentation/Doxygen/FilterCoverage.dox"
+    ${TAG_DEPENDS}
     WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/Utilities/Doxygen
     )

-  if (USE_ITK_DOXYGEN_TAGS)
-    add_dependencies( Documentation
-    "${PROJECT_BINARY_DIR}/Documentation/Doxygen/InsightDoxygen.tag" )
-  endif ()

   message( STATUS
     "To generate Doxygen's documentation, you need to build the Documentation target"


Fix a typo in FindGraphviz.cmake.

Fix a typo in FindGraphviz.cmake.

--- cmake/FindGraphviz.cmake
+++ cmake/FindGraphviz.cmake
@@ -94,7 +94,7 @@
     set(FIND_GRAPHVIZ_VERSION_ADD_INCLUDES
       "-DINCLUDE_DIRECTORIES:STRING=${GRAPHVIZ_INCLUDE_DIR}")

-    set(GRAPHVIZ_INCLUDE_DIRS "${GRAPHVIZ_INCLUDE_DIR} {GRAPHVIZ_INCLUDE_DIR}/graphviz")
+    set(GRAPHVIZ_INCLUDE_DIRS "${GRAPHVIZ_INCLUDE_DIR} ${GRAPHVIZ_INCLUDE_DIR}/graphviz")

     if(NOT CMAKE_CROSSCOMPILING)
     try_run(RUN_RESULT COMPILE_RESULT


cmake: Adjust coding style for stdarg detection

--- cmake/StdargDetect.cmake
+++ cmake/StdargDetect.cmake
@@ -4,22 +4,21 @@
 	# there is sometimes the need to do va_copy() when
 	# calling another va_list aware function.
 	#
-	# This mean that va_copy() is not needed (thus not available)
+	# This means that va_copy() is not needed (thus not available)
 	# everywhere.
 	#
-	# We depend on stdarg in any case, stdio in some cases.
+	# We depend on stdarg.h in any case, stdio.h in some cases.
 	#
-	# Know implementations vary from va_copy to __va_copy (old proposed name).
+	# Known implementations vary from va_copy to __va_copy (old proposed name).
 	# We check the _va_copy eventually.
 	#
 	set (P_VA_COPY FALSE)
 	foreach (KEYWORD "va_copy" "_va_copy" "__va_copy")
-		check_c_source_compiles (
-					"
-					#include <stdio.h>
-					#include <stdarg.h>
+		check_c_source_compiles ("
+					 #include <stdio.h>
+					 #include <stdarg.h>

-					void f (int i, ...) {
+					 void f (int i, ...) {
 						va_list args1, args2;

 						va_start (args1, i);
@@ -29,19 +28,20 @@
 						}
 						va_end (args1);
 						va_end (args2);
-					}
+					 }

-					int main() {
+					 int main() {
 						f (0, 42);
 						exit(0);
-					}"
+					 }"
 					PLIBSYS_${KEYWORD}
 		)
+
 		if (PLIBSYS_${KEYWORD})
 			set (P_VA_COPY ${KEYWORD})
-			break ()
-		endif ()
-	endforeach ()
+			break()
+		endif()
+	endforeach()

 	# Assign result
 	set (${result} ${P_VA_COPY} PARENT_SCOPE)


Update ctest_script.cmake (#298)

Update ctest_script.cmake (#298)

typo in example

--- cmake/ctest_script.cmake
+++ cmake/ctest_script.cmake
@@ -28,7 +28,7 @@
 ##   -D CTEST_CONFIGURATION_TYPE=Release -D CTEST_BUILD_JOBS=8 \
 ##   -D CTEST_CMAKE_GENERATOR="Unix Makefiles" -D CNAME=gcc -D CXXNAME=g++ \
 ##   -D CTEST_TEST_TIMEOUT=100 -D CTEST_MEMORYCHECK_TYPE=Valgrind \
-##   -D test_coverage=TRUE
+##   -D DO_COVERAGE=TRUE
 ##
 ## Different dashboard projects and subprojects are possible:
 ##


Export TARGET_TRIPLE on LLVM.cmake. It is necessary for running tests
on Clang when it builds using LLVM as an external library.

Fixes PR9293.

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

--- cmake/modules/LLVM.cmake
+++ cmake/modules/LLVM.cmake
@@ -9,6 +9,8 @@
 set(LLVM_ALL_TARGETS @LLVM_ALL_TARGETS@)

 set(LLVM_TARGETS_TO_BUILD @LLVM_TARGETS_TO_BUILD@)
+
+set(TARGET_TRIPLE "@TARGET_TRIPLE@")

 set(LLVM_TOOLS_BINARY_DIR @LLVM_TOOLS_BINARY_DIR@)


Update cmake/stm32/common.cmake

Update cmake/stm32/common.cmake

Co-authored-by: Julien Staub <0e44a740070fae557fd5ae1ae9f383381457fcd0@yahoo.fr>

--- cmake/stm32/common.cmake
+++ cmake/stm32/common.cmake
@@ -43,7 +43,7 @@
 find_program(CMAKE_CPPFILT NAMES ${STM32_TARGET_TRIPLET}-c++filt PATHS ${TOOLCHAIN_BIN_PATH} NO_DEFAULT_PATH)

 function(stm32_print_size_of_target TARGET)
-    add_custom_target(always_display_size
+    add_custom_target(${TARGET}_always_display_size
         ALL COMMAND ${CMAKE_SIZE} ${TARGET}${CMAKE_EXECUTABLE_SUFFIX_C}
         COMMENT "Target Sizes: "
         DEPENDS ${TARGET}
@@ -273,4 +273,3 @@
 include(stm32/l4)
 include(stm32/l5)

-


minor fix

minor fix

--- Examples/Examples.cmake
+++ Examples/Examples.cmake
@@ -202,7 +202,7 @@
 			target_link_libraries(pyMTF2 mtf ${MTF_LIBS} ${Boost_LIBRARIES} ${PYTHON_LIBRARIES} ${PYTHON_LIBS})
 			install(TARGETS pyMTF2 LIBRARY DESTINATION ${MTF_PY_INSTALL_DIR} COMPONENT py2)
 			add_custom_target(py2 DEPENDS pyMTF2)
-			install(CODE "execute_process(COMMAND python setup.py install -f --prefix=${MTF_PY_INSTALL_DIR} WORKING_DIRECTORY python")
+			install(CODE "execute_process(COMMAND python setup.py install -f --prefix=${MTF_PY_INSTALL_DIR} WORKING_DIRECTORY python)")
 			install(DIRECTORY ${MTF_INCLUDE_DIRS}
 				DESTINATION ${MTF_HEADER_INSTALL_DIR}
 				COMPONENT header


added some linker flags for clang

added some linker flags for clang

--- common/cmake/clang.cmake
+++ common/cmake/clang.cmake
@@ -27,7 +27,7 @@
 SET(CMAKE_CXX_FLAGS_DEBUG          "-DDEBUG  -g -O0")
 SET(CMAKE_CXX_FLAGS_RELEASE        "-DNDEBUG    -O3")
 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-DDEBUG  -g -O3")
-SET(CMAKE_EXE_LINKER_FLAGS "")
+SET(CMAKE_EXE_LINKER_FLAGS "-lstdc++ -lm")

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


vigra.cmake: Removed patch commands, which are no longer necessary (fixed in git repo).

--- vigra.cmake
+++ vigra.cmake
@@ -9,7 +9,6 @@
 include (ExternalProject)
 include (ExternalSource)
 include (BuildSupport)
-include (PatchSupport)

 include (libjpeg)
 include (libtiff)
@@ -25,17 +24,6 @@
     flyem-1.9.0.a
     http://github.com/janelia-flyem/vigra)

-set (vigra_PATCH ${BUILDEM_ENV_STRING} ${PATCH_EXE}
-    # The vigra 1.9.0 release assumes all mac builds are "Framework" builds.
-    # This patch allows us to build vigra against non-Framework builds, too.
-    # (The mac build patch has no effect for non-Mac platforms.)
-    # NOTE: This issue will be fixed in vigra-HEAD on github soon, so this patch
-    #       won't be necessary soon.  The patch may fail to apply when you upgrade
-    #       vigra beyond 1.9.0.
-    ${vigra_SRC_DIR}/config/FindVIGRANUMPY_DEPENDENCIES.cmake ${PATCH_DIR}/vigra.patch
-    # Add second patch to fix RandomForest importing from hdf5 (should open in read-only mode)
-    ${vigra_SRC_DIR}/include/vigra/random_forest_hdf5_impex.hxx ${PATCH_DIR}/vigra-2.patch )
-
 message ("Installing ${vigra_NAME} into FlyEM build area: ${BUILDEM_DIR} ...")
 ExternalProject_Add(${vigra_NAME}
     DEPENDS             ${libjpeg_NAME} ${libtiff_NAME} ${libpng_NAME} ${openexr_NAME} ${libfftw_NAME}
@@ -45,7 +33,7 @@
     #URL                 ${vigra_URL}
     #URL_MD5             ${vigra_MD5}
     UPDATE_COMMAND      ""
-    PATCH_COMMAND       ${vigra_PATCH}
+    PATCH_COMMAND       ""
     LIST_SEPARATOR      ^^
     CONFIGURE_COMMAND   ${BUILDEM_ENV_STRING} ${CMAKE_COMMAND} ${vigra_SRC_DIR}
         -DCMAKE_INSTALL_PREFIX=${BUILDEM_DIR}


Improve CMake-based bootstrapper

Improve CMake-based bootstrapper

--- bootstrap/windows.cmake
+++ bootstrap/windows.cmake
@@ -1,11 +1,14 @@
 cmake_minimum_required(VERSION 3.3)

 string(REPLACE "," ";" PACKAGES ${BUILD})
+set(BUILD_DIR ${CMAKE_BINARY_DIR}/build)
+set(CACHE_DIR ${CMAKE_BINARY_DIR}/cache)
+set(GENERATOR "Visual Studio 15 2017 Win64")

 function(y_download _url _sha1)
   string(REGEX REPLACE "^.*/([^/]+)$" "\\1" _name ${_url})
   message(STATUS "Downloading ${_name}")
-  set(_path "${CMAKE_BINARY_DIR}/${_name}")
+  set(_path ${CACHE_DIR}/${_name})
   if(EXISTS ${_path})
     file(SHA1 ${_path} _existing_sha1)
     if(${_sha1} STREQUAL ${_existing_sha1})
@@ -14,6 +17,17 @@
     file(REMOVE ${_path})
   endif()
   file(DOWNLOAD ${_url} ${_path} TLS_VERIFY ON EXPECTED_HASH SHA1=${_sha1})
+endfunction()
+
+function(y_extract _name)
+  file(MAKE_DIRECTORY ${BUILD_DIR})
+  cmake_parse_arguments(_arg "" "DIR" "" ${ARGN})
+  if(_arg_DIR AND EXISTS ${BUILD_DIR}/${_arg_DIR})
+    message(STATUS "Removing ${_arg_DIR}")
+    file(REMOVE_RECURSE ${_arg_DIR})
+  endif()
+  message(STATUS "Extracting ${_name}")
+  execute_process(COMMAND ${CMAKE_COMMAND} -E tar xz ${CACHE_DIR}/${_name} WORKING_DIRECTORY ${BUILD_DIR})
 endfunction()

 macro(_y_add_package _package)
@@ -31,7 +45,6 @@
     cmake_parse_arguments(_arg "" "" "REQUIRES" ${ARGN})
     foreach(_dependency ${_arg_REQUIRES})
       if(NOT ${_dependency} IN_LIST _y_packages)
-        message(STATUS "Add: ${_dependency}")
         list(APPEND _dependencies ${_dependency})
       endif()
     endforeach()
@@ -53,21 +66,36 @@

 if("nasm" IN_LIST _y_packages)
   y_download("https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/win64/nasm-2.13.03-win64.zip" "149a814fa53980976a7fc081231f59cfbcd02543")
+  y_extract("nasm-2.13.03-win64.zip" DIR "nasm-2.13.03")
+  file(INSTALL ${BUILD_DIR}/nasm-2.13.03/nasm.exe DESTINATION ${CMAKE_BINARY_DIR}/bin)
 endif()

 if("openal" IN_LIST _y_packages)
   y_download("https://openal.org/downloads/oalinst.zip" "45e08368c6755c58902b7746ff3e51ad2df8a8b8")
   y_download("http://openal-soft.org/openal-binaries/openal-soft-1.18.2-bin.zip" "0d2edd1b77cbb998f12e064d0eefea3508446776")
+  y_extract("openal-soft-1.18.2-bin.zip")
+  file(INSTALL ${BUILD_DIR}/openal-soft-1.18.2-bin/include DESTINATION ${CMAKE_BINARY_DIR})
+  file(INSTALL ${BUILD_DIR}/openal-soft-1.18.2-bin/libs DESTINATION ${CMAKE_BINARY_DIR})
+  y_extract("oalinst.zip")
+  execute_process(COMMAND ${BUILD_DIR}/oalinst.exe /s)
 endif()

 if("zlib" IN_LIST _y_packages)
   y_download("https://zlib.net/zlib-1.2.11.tar.xz" "e1cb0d5c92da8e9a8c2635dfa249c341dfd00322")
+  y_extract("zlib-1.2.11.tar.xz" DIR "zlib-1.2.11")
+  set(_dir ${BUILD_DIR}/zlib-1.2.11)
+  execute_process(COMMAND ${CMAKE_COMMAND} -G ${GENERATOR} ${_dir} -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR} -DSKIP_INSTALL_FILES=ON
+    WORKING_DIRECTORY ${_dir})
+  execute_process(COMMAND ${CMAKE_COMMAND} --build ${_dir} --config Release --target INSTALL -- /nologo /verbosity:minimal
+    WORKING_DIRECTORY ${_dir})
 endif()

 if("libjpeg" IN_LIST _y_packages)
   y_download("https://downloads.sourceforge.net/project/libjpeg-turbo/1.5.3/libjpeg-turbo-1.5.3.tar.gz" "87ebf4cab2bb27fcb8e7ccb18ec4eb680e1f2c2d")
+  y_extract("libjpeg-turbo-1.5.3.tar.gz" DIR "libjpeg-turbo-1.5.3")
 endif()

 if("libpng" IN_LIST _y_packages)
   y_download("https://downloads.sourceforge.net/project/libpng/libpng16/1.6.35/libpng-1.6.35.tar.xz" "0df1561aa1da610e892239348970d574b14deed0")
+  y_extract("libpng-1.6.35.tar.xz" DIR "libpng-1.6.35")
 endif()


fix install .pdb with nmake

fix install .pdb with nmake

--- PurpleInstallPDB.cmake
+++ PurpleInstallPDB.cmake
@@ -9,7 +9,9 @@
 function(PURPLE_INSTALL_PDB TARGET)
   if(MSVC)
     get_target_property(THIS_LOCATION ${TARGET} LOCATION)
-	string(REPLACE "${CMAKE_CFG_INTDIR}" "\${BUILD_TYPE}" THIS_LOCATION ${THIS_LOCATION})
+    if(NOT CMAKE_CFG_INTDIR STREQUAL ".")
+	  string(REPLACE "${CMAKE_CFG_INTDIR}" "\${BUILD_TYPE}" THIS_LOCATION ${THIS_LOCATION})
+	endif()
 	get_filename_component(THIS_EXTENSION ${THIS_LOCATION} EXT)
 	string(REGEX REPLACE "${THIS_EXTENSION}$" ".pdb" THIS_PDB ${THIS_LOCATION})
 	install(FILES ${THIS_PDB} CONFIGURATIONS Debug RelWithDebInfo ${ARGN})


builds latest master

builds latest master

--- SuperBuild/External_CCPi-RGL.cmake
+++ SuperBuild/External_CCPi-RGL.cmake
@@ -79,8 +79,8 @@
   ExternalProject_Add(${proj}
     ${${proj}_EP_ARGS}
     GIT_REPOSITORY ${${proj}_URL}
-    #GIT_TAG ${${proj}_TAG}
-    GIT_TAG origin/cmaking
+    GIT_TAG ${${proj}_TAG}
+    #GIT_TAG origin/cmaking
     SOURCE_DIR ${${proj}_SOURCE_DIR}
     BINARY_DIR ${${proj}_BINARY_DIR}
     DOWNLOAD_DIR ${${proj}_DOWNLOAD_DIR}


COMP: Hopefully fixed CTEST_CONFIGURE_COMMAND, w/ Floris

--- SuperBuild/CTest.cmake
+++ SuperBuild/CTest.cmake
@@ -45,7 +45,7 @@
 set(CTEST_CONFIGURE_COMMAND "${CMAKE_COMMAND} -DCMAKE_BUILD_TYPE:STRING=${CTEST_BUILD_CONFIGURATION} --build ${CTEST_BINARY_DIRECTORY}")
 set(CTEST_CONFIGURE_COMMAND "${CTEST_CONFIGURE_COMMAND} -DWITH_TESTING:BOOL=ON ${CTEST_BUILD_OPTIONS}")
 set(CTEST_CONFIGURE_COMMAND "${CTEST_CONFIGURE_COMMAND} \"-G${CTEST_CMAKE_GENERATOR}\"")
-set(CTEST_CONFIGURE_COMMAND "${CTEST_CONFIGURE_COMMAND} \"${CTEST_SOURCE_DIRECTORY}\"/SuperBuild")
+set(CTEST_CONFIGURE_COMMAND "${CTEST_CONFIGURE_COMMAND} \"${CTEST_SOURCE_DIRECTORY}/SuperBuild\"")

 ctest_start("Nightly")
 # Added ctest_update() to ensure that the commit SHA will be passed to CDash, and GitHub.


Use source folders on MSVC

Use source folders on MSVC

--- sequoia-cmake/cmake/SequoiaAddLibrary.cmake
+++ sequoia-cmake/cmake/SequoiaAddLibrary.cmake
@@ -58,16 +58,32 @@
   if(NOT(ARG_OBJECT) AND NOT(ARG_ARCHIVE))
     message(FATAL_ERROR "sequoia_add_library: either OBJECT or ARCHIVE is required")
   endif()
+
+  # Use folders in Visual Studio
+  if(MSVC)
+    set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+    foreach(src ${ARG_SOURCES})
+      get_filename_component(dir ${src} DIRECTORY)
+      if(dir)
+        set(group "Sources\\${dir}")
+        source_group("${group}" FILES ${src})
+      else()
+        source_group("Sources" FILES ${src})
+      endif()
+    endforeach()
+  endif()

+  # Create object library?
   if(ARG_OBJECT)
     add_library(${ARG_NAME}Objects OBJECT ${ARG_SOURCES})
     foreach(arg ${ARG_DEPENDS})
-    if(TARGET ${arg})
-      add_dependencies(${ARG_NAME}Objects ${arg})
-    endif()
+      if(TARGET ${arg})
+        add_dependencies(${ARG_NAME}Objects ${arg})
+      endif()
     endforeach()
   endif()

+  # Create static library?
   if(ARG_ARCHIVE)
     macro(compute_dependencies TARGET DEPENDENCIES)
       foreach(arg ${DEPENDENCIES})
@@ -94,4 +110,4 @@
       set_target_properties(${ARG_NAME}Shared PROPERTIES OUTPUT_NAME ${ARG_NAME})
     endif()
   endif()
-endfunction()+endfunction()


Fixed compilation error when building on CMake. computed_field_vector_opertions.h  has been renamed to computed_field_vector_operations.hpp. https://tracker.physiomeproject.org/show_bug.cgi?id=3030

--- source/cmake/computed_field_source_files.cmake
+++ source/cmake/computed_field_source_files.cmake
@@ -45,7 +45,7 @@
 	source/computed_field/computed_field_subobject_group.hpp
 	source/computed_field/computed_field_string_constant.h
 	source/computed_field/computed_field_trigonometry.h
-	source/computed_field/computed_field_vector_operators.h
+	source/computed_field/computed_field_vector_operators.hpp
 	source/computed_field/computed_field_wrappers.h
 	source/computed_field/differential_operator.hpp
 	source/computed_field/field_cache.hpp


Bump to 1.7.4

Bump to 1.7.4

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


Bumpt to 1.5.1

Bumpt to 1.5.1

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


ENH: Bump TubeTK to support pending ITK53rc04 release

--- Modules/Remote/TubeTK.remote.cmake
+++ Modules/Remote/TubeTK.remote.cmake
@@ -48,5 +48,5 @@
   "http://www.tubetk.org"
   MODULE_COMPLIANCE_LEVEL 3
   GIT_REPOSITORY ${git_protocol}://github.com/InsightSoftwareConsortium/ITKTubeTK.git
-  GIT_TAG 7d643c7fc6e7e6d08b3a1a1eba5696c8718adb64
+  GIT_TAG 549e2c561072fdcde716c871393760355a3588d9
   )


disable auto linking for boost for MSVC build

--- cmake/DetectBoost.cmake
+++ cmake/DetectBoost.cmake
@@ -7,6 +7,11 @@
 # ----------------------------------------------------------------------------

 set(BOOST_MIN_VERSION "1.46.0" CACHE STRING "Minimum version of boost to link against (e.g. C:/BOOST_1_56_0 is 1.56.0")
+
+if(MSVC)
+    # mitigate interference of the auto-linking
+    add_definitions(-DBOOST_ALL_NO_LIB)
+endif(MSVC)

 # Don't forget to include 'system'
 set(BOOST_COMPONENTS system filesystem serialization graph thread)


Removing FindCppUnit.cmake since we're using Catch instead.

--- cmake/FindCppUnit.cmake
+++ cmake/FindCppUnit.cmake
@@ -1,64 +0,0 @@
-#
-# From: https://github.com/phtrivier/cppunit-money-example-cmake/blob/master/code/cmake_modules/FindCPPUNIT.cmake
-#
-# Find the CppUnit includes and library
-#
-# This module defines
-# CPPUNIT_INCLUDE_DIR, where to find tiff.h, etc.
-# CPPUNIT_LIBRARIES, the libraries to link against to use CppUnit.
-# CPPUNIT_FOUND, If false, do not try to use CppUnit.
-
-# also defined, but not for general use are
-# CPPUNIT_LIBRARY, where to find the CppUnit library.
-# CPPUNIT_DEBUG_LIBRARY, where to find the CppUnit library in debug
-# mode.
-
-SET(CPPUNIT_FOUND "NO")
-
-FIND_PATH(CPPUNIT_INCLUDE_DIR
-	cppunit/TestCase.h
-	PATHS
-		cppunit/include
-		/usr/local/include
-		/usr/include
-)
-
-# With Win32, important to have both
-IF(WIN32)
-  FIND_LIBRARY(CPPUNIT_LIBRARY cppunit
-               ${CPPUNIT_INCLUDE_DIR}/../lib
-               /usr/local/lib
-               /usr/lib)
-  FIND_LIBRARY(CPPUNIT_DEBUG_LIBRARY cppunitd
-               ${CPPUNIT_INCLUDE_DIR}/../lib
-               /usr/local/lib
-               /usr/lib)
-ELSE(WIN32)
-  # On unix system, debug and release have the same name
-  FIND_LIBRARY(CPPUNIT_LIBRARY cppunit
-               ${CPPUNIT_INCLUDE_DIR}/../lib
-               /usr/local/lib
-               /usr/lib
-	       /usr/lib/x86_64-linux-gnu)
-  FIND_LIBRARY(CPPUNIT_DEBUG_LIBRARY cppunit
-               ${CPPUNIT_INCLUDE_DIR}/../lib
-               /usr/local/lib
-               /usr/lib
-	       /usr/lib/x86_64-linux-gnu)
-ENDIF(WIN32)
-
-IF(CPPUNIT_INCLUDE_DIR)
-  IF(CPPUNIT_LIBRARY)
-    SET(CPPUNIT_FOUND "YES")
-    SET(CPPUNIT_LIBRARIES ${CPPUNIT_LIBRARY} ${CMAKE_DL_LIBS})
-    SET(CPPUNIT_DEBUG_LIBRARIES ${CPPUNIT_DEBUG_LIBRARY} ${CMAKE_DL_LIBS})
-  ELSE(CPPUNIT_LIBRARY)
-    IF(CPPUNIT_FIND_REQUIRED)
-      MESSAGE(SEND_ERROR "Could not find library CppUnit.")
-    ENDIF(CPPUNIT_FIND_REQUIRED)
-  ENDIF(CPPUNIT_LIBRARY)
-ELSE(CPPUNIT_INCLUDE_DIR)
-  IF(CPPUNIT_FIND_REQUIRED)
-    MESSAGE(SEND_ERROR "Could not find library CppUnit.")
-  ENDIF(CPPUNIT_FIND_REQUIRED)
-ENDIF(CPPUNIT_INCLUDE_DIR)


Apply patch by Fabrice Ménard <menard.fabrice orange fr>, from kde-buildsystem. He says :
"As ${PKG_GOBJECT2_INCLUDE_DIRS} might be a list we can't simply append path components to it.
For example, on my system pkg-config --cflags gobject-2.0 returns :
        '-I/opt/gnome/include/glib-2.0 -I/opt/gnome/lib/glib-2.0/include' "

svn path=/trunk/kdesupport/phonon/; revision=937281

--- cmake/FindGObject.cmake
+++ cmake/FindGObject.cmake
@@ -25,11 +25,10 @@
    SET(GOBJECT_DEFINITIONS ${PKG_GOBJECT2_CFLAGS})
 ENDIF (NOT WIN32)

-FIND_PATH(GOBJECT_INCLUDE_DIR gobject.h
+FIND_PATH(GOBJECT_INCLUDE_DIR gobject/gobject.h
    PATHS
    ${PKG_GOBJECT2_INCLUDE_DIRS}
-   ${PKG_GOBJECT2_INCLUDE_DIRS}/glib-2.0/gobject/
-   /usr/include/glib-2.0/gobject/
+   /usr/include/glib-2.0/
    #PATH_SUFFIXES gst
    )


Fix component library if we are trying to find nanovdb component in OpenVDB.

Signed-off-by: Andre Pradhana <825a1bc3df256148afa0e85b15649bcb998dccc3@gmail.com>

--- cmake/FindOpenVDB.cmake
+++ cmake/FindOpenVDB.cmake
@@ -392,6 +392,9 @@
   elseif(${COMPONENT} STREQUAL "openvdb_je")
     # alias to the result of openvdb which should be handled first
     set(OpenVDB_${COMPONENT}_LIBRARY ${OpenVDB_openvdb_LIBRARY})
+  elseif(${COMPONENT} STREQUAL "nanovdb")
+    # alias to the result of openvdb which should be handled first
+    set(OpenVDB_${COMPONENT}_LIBRARY ${OpenVDB_openvdb_LIBRARY})
   else()
     find_library(OpenVDB_${COMPONENT}_LIBRARY ${LIB_NAME}
       ${_FIND_OPENVDB_ADDITIONAL_OPTIONS}


add libsndfile-1 to libsndfile library names

--- cmake/FindSNDFILE.cmake
+++ cmake/FindSNDFILE.cmake
@@ -3,7 +3,7 @@

 find_path(SNDFILE_INCLUDE_DIR sndfile.h
           HINTS ${PC_SNDFILE_INCLUDEDIR} ${PC_SNDFILE_INCLUDE_DIRS})
-find_library(SNDFILE_LIBRARY NAMES sndfile sndfile-1
+find_library(SNDFILE_LIBRARY NAMES sndfile sndfile-1 libsndfile-1
              HINTS ${PC_SNDFILE_LIBDIR} ${PC_SNDFILE_LIBRARY_DIRS})

 set(SNDFILE_LIBRARIES ${SNDFILE_LIBRARY})


fix path to cppunit

fix path to cppunit

--- cmake/findCppUnit.cmake
+++ cmake/findCppUnit.cmake
@@ -22,7 +22,7 @@

 cmake_minimum_required(VERSION 2.8)

-set(CPPUNIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../cppunit_2")
+set(CPPUNIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../cppunit")
 set(CPPUNIT_DEBUG_DIR ${CPPUNIT_ROOT_DIR}/bin/Debug)
 set(CPPUNIT_RELEASE_DIR ${CPPUNIT_ROOT_DIR}/bin/Release)


fixed linking because of /DELAYLOAD flags: added 'delayimp.lib' to link libraries

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

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -103,6 +103,10 @@
     add_library(${_name} ${PCL_LIB_TYPE} ${ARGN})
     # must link explicitly against boost.
     target_link_libraries(${_name} ${Boost_LIBRARIES})
+
+	if(MSVC90 OR MSVC10)
+	  target_link_libraries(${_name} delayimp.lib)  # because delay load is enabled for openmp.dll
+	endif()
     #
     # Only link if needed
     if(WIN32 AND MSVC)


Fix issue 429

Fix issue 429

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

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -530,7 +530,7 @@
             set(${SUBSYS_DEPENDS} ${DEPENDENCIES})
             foreach(dependee ${DEPENDENCIES})
                 string(TOUPPER "PCL_${dependee}_DEPENDIES" SUBSYS_DEPENDIES)
-                set(${SUBSYS_DEPENDIES} ${${SUBSYS_DEPENDIES}} ${subdir})
+                set(${SUBSYS_DEPENDIES} ${${SUBSYS_DEPENDIES}} ${name})
             endforeach(dependee)
         endif(NOT("${DEPENDENCIES}" STREQUAL ""))
     endforeach(subdir)


fix COPY_UNITY for LINK_ONLY libraries

fix COPY_UNITY for LINK_ONLY libraries

--- CMake/cotire.cmake
+++ CMake/cotire.cmake
@@ -3133,13 +3133,24 @@
 function (cotire_map_libraries _strategy _mappedLibrariesVar)
 	set (_mappedLibraries "")
 	foreach (_library ${ARGN})
+		if (_library MATCHES "^\\$<LINK_ONLY:(.+)>$")
+			set (_libraryName "${CMAKE_MATCH_1}")
+			set (_linkOnly TRUE)
+		else()
+			set (_libraryName "${_library}")
+			set (_linkOnly FALSE)
+		endif()
 		if ("${_strategy}" MATCHES "COPY_UNITY")
-			cotire_is_target_supported(${_library} _isSupported)
+			cotire_is_target_supported(${_libraryName} _isSupported)
 			if (_isSupported)
 				# use target's corresponding unity target, if available
-				get_target_property(_libraryUnityTargetName ${_library} COTIRE_UNITY_TARGET_NAME)
+				get_target_property(_libraryUnityTargetName ${_libraryName} COTIRE_UNITY_TARGET_NAME)
 				if (TARGET "${_libraryUnityTargetName}")
-					list (APPEND _mappedLibraries "${_libraryUnityTargetName}")
+					if (_linkOnly)
+						list (APPEND _mappedLibraries "$<LINK_ONLY:${_libraryUnityTargetName}>")
+					else()
+						list (APPEND _mappedLibraries "${_libraryUnityTargetName}")
+					endif()
 				else()
 					list (APPEND _mappedLibraries "${_library}")
 				endif()


CMake: Include liblzo2.so in FindLZO

CMake: Include liblzo2.so in FindLZO

--- toonz/cmake/FindLZO.cmake
+++ toonz/cmake/FindLZO.cmake
@@ -14,6 +14,7 @@
     NAMES
         liblzo2.a
         lzo2_64.lib
+        liblzo2.so
     HINTS
         ${THIRDPARTY_LIBS_HINTS}
     PATH_SUFFIXES


removed hard coded version

removed hard coded version

--- SuperBuild/External_CCPi-RGL.cmake
+++ SuperBuild/External_CCPi-RGL.cmake
@@ -51,10 +51,6 @@
   set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${SUPERBUILD_INSTALL_DIR})
   set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${SUPERBUILD_INSTALL_DIR})

-  set(ENV{CIL_VERSION} 19.02)
-  message(STATUS "1 CIL_VERSION env " $ENV{CIL_VERSION})
-  #set(CCPi-RGL_URL https://github.com/vais-ral/CCPi-Regularisation-Toolkit.git)
-  #set(CCPi-RGL_TAG origin/windows_fix)
   message("CIL URL " ${${proj}_URL}  )
   message("CIL TAG " ${${proj}_TAG}  )

@@ -79,7 +75,6 @@
       CONDA:      do nothing")
     set_property(CACHE PYTHON_STRATEGY PROPERTY STRINGS PYTHONPATH SETUP_PY CONDA)

-message(STATUS "2 CIL_VERSION env " $ENV{CIL_VERSION})
   ExternalProject_Add(${proj}
     ${${proj}_EP_ARGS}
     GIT_REPOSITORY ${${proj}_URL}
@@ -93,7 +88,7 @@
     INSTALL_DIR ${libcilreg_Install_Dir}
    # apparently this is the only way to pass environment variables to
    # external projects
-    CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env CIL_VERSION=$ENV{CIL_VERSION}         cmake ${${proj}_SOURCE_DIR}  -DCMAKE_INSTALL_PREFIX=${libcilreg_Install_Dir}
+    CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env CIL_VERSION=${CIL_VERSION}         cmake ${${proj}_SOURCE_DIR}  -DCMAKE_INSTALL_PREFIX=${libcilreg_Install_Dir}
         -DBUILD_PYTHON_WRAPPERS=ON -DCMAKE_BUILD_TYPE=Release
         -DBUILD_CUDA=OFF -DCONDA_BUILD=OFF
         -DPYTHON_DEST=${PYTHON_DEST_DIR}
@@ -126,7 +121,7 @@

     CONFIGURE_COMMAND ""
     BUILD_COMMAND ""
-    INSTALL_COMMAND ${CMAKE_COMMAND} -E env CIL_VERSION=$ENV{CIL_VERSION} SRC_DIR=${${proj}_BINARY_DIR} RECIPE_DIR=${${proj}_SOURCE_DIR}/Wrappers/Python/conda-recipe PYTHON=${PYTHON_EXECUTABLE} bash ${${proj}_SOURCE_DIR}/Wrappers/Python/conda-recipe/build.sh
+    INSTALL_COMMAND ${CMAKE_COMMAND} -E env CIL_VERSION=${CIL_VERSION} SRC_DIR=${${proj}_BINARY_DIR} RECIPE_DIR=${${proj}_SOURCE_DIR}/Wrappers/Python/conda-recipe PYTHON=${PYTHON_EXECUTABLE} bash ${${proj}_SOURCE_DIR}/Wrappers/Python/conda-recipe/build.sh
     CMAKE_ARGS
         -DCMAKE_INSTALL_PREFIX=${libcilreg_Install_Dir}
     DEPENDS


COMP: Set git tag as master for AtlasWerks

--- SuperBuild/FindExternalTools.cmake
+++ SuperBuild/FindExternalTools.cmake
@@ -351,7 +351,7 @@
 # code for external tools from http://github.com/Chaircrusher/AtlasWerksBuilder/blob/master/CMakeLists.txt
 set( SourceCodeArgs
   GIT_REPOSITORY "${git_protocol}://github.com/NIRALUser/AtlasWerks.git"
-  GIT_TAG f5e51f8757dee5a388df2077d48c55b3395c77d1
+  GIT_TAG master
   )

 set( CMAKE_ExtraARGS


forgot to remove my debugging prints

forgot to remove my debugging prints

svn path=/trunk/KDE/kdepim/; revision=528071

--- libkcal/ical_file.cmake
+++ libkcal/ical_file.cmake
@@ -36,8 +36,6 @@
 FILE(APPEND ${KDE_FILE_H_FILE} "*/\n")

 foreach (_current_FILE ${COMBINEDHEADERSICAL})
-   FILE(APPEND ${KDE_FILE_H_FILE} "${_current_FILE}")
-   FILE(APPEND ${KDE_FILE_H_FILE} "\n")
    FILE(READ ${_current_FILE} _contents)
    STRING(REGEX REPLACE "#include *\"ical.*\\.h\"" "" _contents "${_contents}")
    STRING(REGEX REPLACE "#include *\"config.*\\.h\"" "" _contents "${_contents}")


Silenced warning with newer CMake version.

--- cmake/FindSFML.cmake
+++ cmake/FindSFML.cmake
@@ -205,5 +205,5 @@

 # handle success
 if(SFML_FOUND)
-    message(STATUS "Found SFML: ${SFML_INCLUDE_DIR} (found version \""${SFML_VERSION_MAJOR}.${SFML_VERSION_MINOR}"\")")
-endif()
+    message(STATUS "Found SFML: ${SFML_INCLUDE_DIR} (found version \"${SFML_VERSION_MAJOR}.${SFML_VERSION_MINOR}\")")
+endif()


Switched from .gcno to .gcda files

Switched from .gcno to .gcda files

--- cmake/Findgcov.cmake
+++ cmake/Findgcov.cmake
@@ -89,10 +89,9 @@
 			get_filename_component(FILE_PATH "${TARGET_DIR}/${FILE}" PATH)

 			add_custom_command(OUTPUT ${TARGET_DIR}/${FILE}.gcov
-				COMMAND ${GCOV_BIN} ${TARGET_DIR}/${FILE}.gcno > /dev/null
+				COMMAND ${GCOV_BIN} ${TARGET_DIR}/${FILE}.gcda > /dev/null
 				DEPENDS ${TARGET}
 					${TARGET_DIR}/${FILE}.gcda
-					${TARGET_DIR}/${FILE}.gcno
 				WORKING_DIRECTORY ${FILE_PATH}
 			)


fptu: add -D_HAS_EXCEPTIONS=0.

fptu: add -D_HAS_EXCEPTIONS=0.

--- cmake/compiler.cmake
+++ cmake/compiler.cmake
@@ -256,6 +256,7 @@
   add_definitions("-D__STDC_FORMAT_MACROS=1")
   add_definitions("-D__STDC_LIMIT_MACROS=1")
   add_definitions("-D__STDC_CONSTANT_MACROS=1")
+  add_definitions("-D_HAS_EXCEPTIONS=0")

   # Only add -Werror if it's a debug build, done by developers.
   # Release builds should not cause extra trouble.


add TODO for shellcheck tests

add TODO for shellcheck tests

--- Packaging/testing.cmake
+++ Packaging/testing.cmake
@@ -50,3 +50,8 @@
   )

 set_tests_properties ( Tu_uninstall_otb PROPERTIES DEPENDS Tu_install_package)
+
+
+#if(UNIX)
+  #TODO: add test with shellcheck for script files
+#endif()


Remove debugging message.

Remove debugging message.

--- cmake/configure_version_cpp_file.in.cmake
+++ cmake/configure_version_cpp_file.in.cmake
@@ -19,4 +19,3 @@

 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/source/configure/version.cpp.cmake
 	${ZINC_VERSION_STAGING_SRC} @ONLY)
-message("Configuring staging cpp file.")


Make 'nlohmann-json' cacheable

Make 'nlohmann-json' cacheable

--- cmake/projects/nlohmann-json/hunter.cmake
+++ cmake/projects/nlohmann-json/hunter.cmake
@@ -10,7 +10,7 @@
     PACKAGE_NAME nlohmann-json
     VERSION "1.0.0-rc1-hunter-2"
     URL "https://github.com/hunter-packages/json/archive/v1.0.0-rc1-hunter-2.tar.gz"
-    SHA1 2db824ca17678c8918575bbab982e6ae93283433
+    SHA1 2db824ca17678c8918575bbab982e6ae93283433
 )

 hunter_add_version(
@@ -23,4 +23,5 @@
 hunter_cmake_args(nlohmann-json CMAKE_ARGS JSON_BUILD_TESTS=OFF)

 hunter_pick_scheme(DEFAULT url_sha1_cmake)
+hunter_cacheable(nlohmann-json)
 hunter_download(PACKAGE_NAME nlohmann-json)


Still trying to fail on eigen only if required

--- modules/FindEigen.cmake
+++ modules/FindEigen.cmake
@@ -90,10 +90,7 @@
 endif(EIGEN3_INCLUDE_DIR)

 if(NOT EIGEN3_FOUND)
-  if(CMAKE_VERSION VERSION_LESS 2.8.10)
-    # Doesn't have Hg download prior to 2.8.10
-    message(FATAL_ERROR "Please install eigen.")
-  else(CMAKE_VERSION VERSION_LESS 2.8.10)
+  if(CMAKE_VERSION VERSION_GREATER 2.8.9)
     if(NOT EXTERNAL_ROOT)
       set(EXTERNAL_ROOT ${CMAKE_BINARY_DIR}/external)
     endif(NOT EXTERNAL_ROOT)
@@ -122,14 +119,16 @@
           LOG_BUILD ON)
       set(EIGEN3_INCLUDE_DIR ${EXTERNAL_ROOT}/include/eigen3)

-    else(HG_FOUND)
-
-      if(Eigen_REQUIRED)
+    elseif(Eigen_REQUIRED)
           message(FATAL_ERROR "Cannot find nor donwload eigen.")
-      else()
+    else()
           message(STATUS "Cannot find nor donwload eigen.")
-      endif()
+    endif()

     endif(HG_FOUND)
-  endif(CMAKE_VERSION VERSION_LESS 2.8.10)
+  elseif(Eigen_REQUIRED)
+    message(FATAL_ERROR "Cannot find nor donwload eigen.")
+  else()
+    message(STATUS "Cannot find nor donwload eigen.")
+  endif()
 endif(NOT EIGEN3_FOUND)


Add new location for qt5-mac package configs

--- Common.cmake
+++ Common.cmake
@@ -98,7 +98,8 @@
 set(LIBRARY_DIR lib${LIB_SUFFIX})

 if(APPLE)
-  list(APPEND CMAKE_PREFIX_PATH /opt/local/ /opt/local/lib) # Macports
+  list(APPEND CMAKE_PREFIX_PATH /opt/local/ /opt/local/lib
+    /opt/local/libexec/qt5-mac) # Macports
   set(ENV{PATH} "/opt/local/bin:$ENV{PATH}") # dito
   if(NOT CMAKE_OSX_ARCHITECTURES OR CMAKE_OSX_ARCHITECTURES STREQUAL "")
     if(_CMAKE_OSX_MACHINE MATCHES "ppc")


Remove CopyIfExists.cmake reference

Remove CopyIfExists.cmake reference

--- liblocate-config.cmake
+++ liblocate-config.cmake
@@ -31,9 +31,6 @@
 endmacro()

-# Make script location known
-set(CPPLOCATE_COPYIFEXISTS "${CMAKE_CURRENT_LIST_DIR}/cmake/CopyIfExists.cmake")
-
 # Try install location
 set(MODULE_FOUND FALSE)
 find_modules("cmake")


append compiler flags instead of overwriting them

--- libs/g3log/Build.cmake
+++ libs/g3log/Build.cmake
@@ -1,6 +1,5 @@
 SET(LOG_SRC ${g3log_SOURCE_DIR}/src)
 include_directories(${LOG_SRC})
-SET(ACTIVE_CPP0xx_DIR "Release")

 #cmake -DCMAKE_CXX_COMPILER=clang++ ..
   # WARNING: If Clang for Linux does not work with full C++11 support it might be your
@@ -16,19 +15,19 @@
    ELSE()
        set(PLATFORM_LINK_LIBRIES rt  c++abi)
    ENDIF()
-  SET(CMAKE_CXX_FLAGS  "-Wall -std=c++11  -pthread -stdlib=libc++ -Wunused -D_GLIBCXX_USE_NANOSLEEP")
+  SET(CMAKE_CXX_FLAGS  "${CMAKE_CXX_FLAGS} -Wall -std=c++11  -pthread -stdlib=libc++ -Wunused -D_GLIBCXX_USE_NANOSLEEP")

 ELSEIF(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
    MESSAGE("cmake for GCC ")
    IF (APPLE)
-       set(CMAKE_CXX_FLAGS "-Wall -Wunused -std=c++11  -pthread -D_GLIBCXX_USE_NANOSLEEP")
+       set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}-Wall -Wunused -std=c++11  -pthread -D_GLIBCXX_USE_NANOSLEEP")
    ELSEIF (MINGW)
-       set(CMAKE_CXX_FLAGS "-Wall -Wunused -std=c++11  -pthread -D_GLIBCXX_USE_NANOSLEEP -D_GLIBCXX_USE_SCHED_YIELD")
+       set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}-Wall -Wunused -std=c++11  -pthread -D_GLIBCXX_USE_NANOSLEEP -D_GLIBCXX_USE_SCHED_YIELD")
    ELSE()
        set(PLATFORM_LINK_LIBRIES rt)
-       set(CMAKE_CXX_FLAGS "-Wall -rdynamic -Wunused -std=c++11 -pthread -D_GLIBCXX_USE_NANOSLEEP -D_GLIBCXX_USE_SCHED_YIELD")
+       set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}-Wall -rdynamic -Wunused -std=c++11 -pthread -D_GLIBCXX_USE_NANOSLEEP -D_GLIBCXX_USE_SCHED_YIELD")
    ENDIF()
 ENDIF()