diff --git a/CI/Windows.bat b/CI/Windows.bat index 3d506a2b..3269b6bf 100644 --- a/CI/Windows.bat +++ b/CI/Windows.bat @@ -120,7 +120,7 @@ IF EXIST %QT_INSTALL_PATH%\ ( ) -"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -DCMAKE_BUILD_TYPE=Release -DBUILD_APPS=%APPS% -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DCMAKE_WINDOWS_LIBS_DIR="e:\libs" -DOPENMESH_BUILD_SHARED=%SHARED% %CMAKE_CONFIGURATION% .. +"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DCMAKE_BUILD_TYPE=Release -DBUILD_APPS=%APPS% -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DCMAKE_WINDOWS_LIBS_DIR="e:\libs" -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -DOPENMESH_BUILD_SHARED=%SHARED% %CMAKE_CONFIGURATION% .. %VS_PATH% /Build "Release" OpenMesh.sln /Project "ALL_BUILD" @@ -142,7 +142,7 @@ mkdir build-debug cd build-debug -"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -DCMAKE_BUILD_TYPE=Debug -DOPENMESH_BUILD_SHARED=%SHARED% -DBUILD_APPS=%APPS% %CMAKE_CONFIGURATION% .. +"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -DCMAKE_BUILD_TYPE=Debug -DOPENMESH_BUILD_SHARED=%SHARED% -DBUILD_APPS=%APPS% %CMAKE_CONFIGURATION% .. %VS_PATH% /Build "Debug" OpenMesh.sln /Project "ALL_BUILD" diff --git a/src/OpenMesh/Core/Utils/PropertyManager.hh b/src/OpenMesh/Core/Utils/PropertyManager.hh index 62d87b76..0f167ff8 100644 --- a/src/OpenMesh/Core/Utils/PropertyManager.hh +++ b/src/OpenMesh/Core/Utils/PropertyManager.hh @@ -593,6 +593,17 @@ class PropertyManager { src.copy_to(src_range, dst, dst_range); } + /** + * Mark whether this property should be stored when mesh is written + * to a file + * + * @param _persistence Property will be stored iff _persistence is true + */ + void set_persistent(bool _persistence = true) + { + mesh().property(getRawProperty()).set_persistent(_persistence); + } + private: void deleteProperty() { if (!retain_ && prop_.is_valid()) diff --git a/src/Unittests/CMakeLists.txt b/src/Unittests/CMakeLists.txt index b52434e4..22595feb 100644 --- a/src/Unittests/CMakeLists.txt +++ b/src/Unittests/CMakeLists.txt @@ -30,6 +30,8 @@ if ( OPENMESH_BUILD_UNIT_TESTS ) if (TARGET Eigen3::Eigen) add_definitions( -DENABLE_EIGEN3_TEST ) link_libraries(Eigen3::Eigen) + else() + message(WARNING "Eigen3 not found! This will skip the Eigen3 Unittests. You can point cmake to Eigen3 by setting Eigen3_DIR to the cmake files of Eigen3") endif() if ( CMAKE_GENERATOR MATCHES "^Visual Studio 11.*" )