Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer
This commit is contained in:
commit
db97610821
21 changed files with 399 additions and 515 deletions
|
@ -191,6 +191,7 @@ if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMP
|
|||
add_compile_options(-fsanitize=address -fno-omit-frame-pointer)
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=address")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fsanitize=address")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fsanitize=address")
|
||||
|
||||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lasan")
|
||||
|
|
2
deps/CMakeLists.txt
vendored
2
deps/CMakeLists.txt
vendored
|
@ -72,7 +72,7 @@ elseif (APPLE)
|
|||
message(FATAL_ERROR "Could not determine OS X SDK version. Please use -DCMAKE_OSX_DEPLOYMENT_TARGET=<version>")
|
||||
endif ()
|
||||
|
||||
message("OS X Deployment Target (inferred from default): ${DEP_OSX_TARGET}")
|
||||
message("OS X Deployment Target (inferred from SDK): ${DEP_OSX_TARGET}")
|
||||
endif ()
|
||||
|
||||
include("deps-macos.cmake")
|
||||
|
|
135
deps/blosc-mods.patch
vendored
135
deps/blosc-mods.patch
vendored
|
@ -1,23 +1,22 @@
|
|||
From 24640a466b28dfda26069096554676e8c0b6d090 Mon Sep 17 00:00:00 2001
|
||||
From 5669891dfaaa4c814f3ec667ca6bf4e693aea978 Mon Sep 17 00:00:00 2001
|
||||
From: tamasmeszaros <meszaros.q@gmail.com>
|
||||
Date: Tue, 22 Oct 2019 11:29:05 +0200
|
||||
Subject: [PATCH] Install.dll in prefix/bin and add config export to cmake
|
||||
build
|
||||
Date: Wed, 30 Oct 2019 12:54:52 +0100
|
||||
Subject: [PATCH] Blosc 1.17 fixes and cmake config script
|
||||
|
||||
---
|
||||
CMakeLists.txt | 112 ++++++++++++++++++++----------------
|
||||
blosc/CMakeLists.txt | 121 ++++++++++-----------------------------
|
||||
CMakeLists.txt | 105 +++++++++++++++++-----------------
|
||||
blosc/CMakeLists.txt | 118 +++++++++------------------------------
|
||||
cmake/FindLZ4.cmake | 6 +-
|
||||
cmake/FindSnappy.cmake | 8 ++-
|
||||
cmake/FindZstd.cmake | 8 ++-
|
||||
cmake_config.cmake.in | 33 +++++++++++
|
||||
internal-complibs/CMakeLists.txt | 30 ++++++++++
|
||||
7 files changed, 173 insertions(+), 145 deletions(-)
|
||||
cmake_config.cmake.in | 24 ++++++++
|
||||
internal-complibs/CMakeLists.txt | 35 ++++++++++++
|
||||
7 files changed, 157 insertions(+), 147 deletions(-)
|
||||
create mode 100644 cmake_config.cmake.in
|
||||
create mode 100644 internal-complibs/CMakeLists.txt
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 59d9fab..bdc0dda 100644
|
||||
index 59d9fab..e9134c2 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -71,7 +71,7 @@
|
||||
|
@ -29,36 +28,11 @@ index 59d9fab..bdc0dda 100644
|
|||
if (NOT CMAKE_VERSION VERSION_LESS 3.3)
|
||||
cmake_policy(SET CMP0063 NEW)
|
||||
endif()
|
||||
@@ -124,55 +124,37 @@ option(PREFER_EXTERNAL_ZSTD
|
||||
@@ -124,55 +124,30 @@ option(PREFER_EXTERNAL_ZSTD
|
||||
|
||||
set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
|
||||
|
||||
+set(PRIVATE_LIBS "")
|
||||
+set(PUBLIC_LIBS "")
|
||||
+set(PUBLIC_PACKAGES "" CACHE INTERNAL "")
|
||||
+macro(use_package _pkg _tgt)
|
||||
+ string(TOUPPER ${_pkg} _PKG)
|
||||
+ if(NOT DEACTIVATE_${_PKG})
|
||||
+ if(PREFER_EXTERNAL_${_PKG})
|
||||
+ find_package(${_pkg})
|
||||
+ if (NOT ${_pkg}_FOUND )
|
||||
+ message(STATUS "No ${_pkg} found. Using internal sources.")
|
||||
+ endif()
|
||||
+ else()
|
||||
+ message(STATUS "Using ${_pkg} internal sources.")
|
||||
+ endif(PREFER_EXTERNAL_${_PKG})
|
||||
+ # HAVE_${_pkg} will be set to true because even if the library is
|
||||
+ # not found, we will use the included sources for it
|
||||
+ set(HAVE_${_PKG} TRUE)
|
||||
+ if (${_pkg}_FOUND)
|
||||
+ list(APPEND PUBLIC_LIBS ${_pkg}::${_tgt})
|
||||
+ set(PUBLIC_PACKAGES "${PUBLIC_PACKAGES};${_pkg}" CACHE INTERNAL "")
|
||||
+ else()
|
||||
+ list(APPEND PRIVATE_LIBS ${_pkg}::${_tgt})
|
||||
+ endif()
|
||||
+ endif(NOT DEACTIVATE_${_PKG})
|
||||
+endmacro()
|
||||
|
||||
-
|
||||
-if(NOT DEACTIVATE_LZ4)
|
||||
- if(PREFER_EXTERNAL_LZ4)
|
||||
- find_package(LZ4)
|
||||
|
@ -107,6 +81,25 @@ index 59d9fab..bdc0dda 100644
|
|||
- # not found, we will use the included sources for it
|
||||
- set(HAVE_ZSTD TRUE)
|
||||
-endif (NOT DEACTIVATE_ZSTD)
|
||||
+set(LIBS "")
|
||||
+macro(use_package _pkg _tgt)
|
||||
+ string(TOUPPER ${_pkg} _PKG)
|
||||
+ if(NOT DEACTIVATE_${_PKG})
|
||||
+ if(PREFER_EXTERNAL_${_PKG})
|
||||
+ find_package(${_pkg})
|
||||
+ if (NOT ${_pkg}_FOUND )
|
||||
+ message(STATUS "No ${_pkg} found. Using internal sources.")
|
||||
+ endif()
|
||||
+ else()
|
||||
+ message(STATUS "Using ${_pkg} internal sources.")
|
||||
+ endif(PREFER_EXTERNAL_${_PKG})
|
||||
+ # HAVE_${_pkg} will be set to true because even if the library is
|
||||
+ # not found, we will use the included sources for it
|
||||
+ set(HAVE_${_PKG} TRUE)
|
||||
+ list(APPEND LIBS ${_pkg}::${_tgt})
|
||||
+ endif(NOT DEACTIVATE_${_PKG})
|
||||
+endmacro()
|
||||
+
|
||||
+set(ZLIB_ROOT $ENV{ZLIB_ROOT})
|
||||
+use_package(ZLIB ZLIB)
|
||||
+use_package(LZ4 LZ4)
|
||||
|
@ -115,7 +108,7 @@ index 59d9fab..bdc0dda 100644
|
|||
|
||||
# create the config.h file
|
||||
configure_file ("blosc/config.h.in" "blosc/config.h" )
|
||||
@@ -316,6 +298,7 @@ endif()
|
||||
@@ -316,6 +291,7 @@ endif()
|
||||
|
||||
|
||||
# subdirectories
|
||||
|
@ -123,7 +116,15 @@ index 59d9fab..bdc0dda 100644
|
|||
add_subdirectory(blosc)
|
||||
|
||||
if(BUILD_TESTS)
|
||||
@@ -338,10 +321,41 @@ if (BLOSC_INSTALL)
|
||||
@@ -328,7 +304,6 @@ if(BUILD_BENCHMARKS)
|
||||
add_subdirectory(bench)
|
||||
endif(BUILD_BENCHMARKS)
|
||||
|
||||
-
|
||||
# uninstall target
|
||||
if (BLOSC_INSTALL)
|
||||
configure_file(
|
||||
@@ -338,10 +313,38 @@ if (BLOSC_INSTALL)
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/blosc.pc"
|
||||
DESTINATION lib/pkgconfig COMPONENT DEV)
|
||||
|
||||
|
@ -157,16 +158,13 @@ index 59d9fab..bdc0dda 100644
|
|||
+ install(FILES
|
||||
+ "${CMAKE_CURRENT_BINARY_DIR}/cmakeexports/BloscConfig.cmake"
|
||||
+ "${CMAKE_CURRENT_BINARY_DIR}/cmakeexports/BloscConfigVersion.cmake"
|
||||
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/FindLZ4.cmake"
|
||||
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/FindZstd.cmake"
|
||||
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/FindSnappy.cmake"
|
||||
+ DESTINATION lib/cmake/Blosc COMPONENT DEV)
|
||||
+
|
||||
add_custom_target(uninstall
|
||||
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
|
||||
endif()
|
||||
diff --git a/blosc/CMakeLists.txt b/blosc/CMakeLists.txt
|
||||
index 1d1bebe..16aff02 100644
|
||||
index 1d1bebe..f554abe 100644
|
||||
--- a/blosc/CMakeLists.txt
|
||||
+++ b/blosc/CMakeLists.txt
|
||||
@@ -1,52 +1,11 @@
|
||||
|
@ -222,19 +220,17 @@ index 1d1bebe..16aff02 100644
|
|||
|
||||
# library sources
|
||||
set(SOURCES blosc.c blosclz.c fastcopy.c shuffle-generic.c bitshuffle-generic.c
|
||||
@@ -73,53 +32,15 @@ if(WIN32)
|
||||
@@ -73,53 +32,13 @@ if(WIN32)
|
||||
message(STATUS "using the internal pthread library for win32 systems.")
|
||||
set(SOURCES ${SOURCES} win32/pthread.c)
|
||||
else(NOT Threads_FOUND)
|
||||
- set(LIBS ${LIBS} ${CMAKE_THREAD_LIBS_INIT})
|
||||
+ list(APPEND PUBLIC_LIBS Threads::Threads)
|
||||
+ set(PUBLIC_PACKAGES "${PUBLIC_PACKAGES};Threads" CACHE INTERNAL "")
|
||||
+ list(APPEND LIBS Threads::Threads)
|
||||
endif(NOT Threads_FOUND)
|
||||
else(WIN32)
|
||||
find_package(Threads REQUIRED)
|
||||
- set(LIBS ${LIBS} ${CMAKE_THREAD_LIBS_INIT})
|
||||
+ list(APPEND PUBLIC_LIBS Threads::Threads)
|
||||
+ set(PUBLIC_PACKAGES "${PUBLIC_PACKAGES};Threads" CACHE INTERNAL "")
|
||||
+ list(APPEND LIBS Threads::Threads)
|
||||
endif(WIN32)
|
||||
|
||||
-if(NOT DEACTIVATE_LZ4)
|
||||
|
@ -280,7 +276,7 @@ index 1d1bebe..16aff02 100644
|
|||
# targets
|
||||
if (BUILD_SHARED)
|
||||
add_library(blosc_shared SHARED ${SOURCES})
|
||||
@@ -191,14 +112,18 @@ if (BUILD_TESTS)
|
||||
@@ -191,14 +110,17 @@ if (BUILD_TESTS)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
@ -289,8 +285,7 @@ index 1d1bebe..16aff02 100644
|
|||
if (BUILD_SHARED)
|
||||
- target_link_libraries(blosc_shared ${LIBS})
|
||||
- target_include_directories(blosc_shared PUBLIC ${BLOSC_INCLUDE_DIRS})
|
||||
+ target_link_libraries(blosc_shared PUBLIC ${PUBLIC_LIBS})
|
||||
+ target_link_libraries(blosc_shared PRIVATE ${PRIVATE_LIBS})
|
||||
+ target_link_libraries(blosc_shared PRIVATE ${LIBS})
|
||||
+ target_include_directories(blosc_shared PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>)
|
||||
+ target_link_libraries(blosc INTERFACE blosc_shared)
|
||||
endif()
|
||||
|
@ -298,19 +293,19 @@ index 1d1bebe..16aff02 100644
|
|||
if (BUILD_TESTS)
|
||||
- target_link_libraries(blosc_shared_testing ${LIBS})
|
||||
- target_include_directories(blosc_shared_testing PUBLIC ${BLOSC_INCLUDE_DIRS})
|
||||
+ target_link_libraries(blosc_shared_testing ${PUBLIC_LIBS} ${PRIVATE_LIBS})
|
||||
+ target_link_libraries(blosc_shared_testing PRIVATE ${LIBS})
|
||||
+ target_include_directories(blosc_shared_testing PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
endif()
|
||||
|
||||
if(BUILD_STATIC)
|
||||
@@ -207,17 +132,31 @@ if(BUILD_STATIC)
|
||||
@@ -207,17 +129,31 @@ if(BUILD_STATIC)
|
||||
if (MSVC)
|
||||
set_target_properties(blosc_static PROPERTIES PREFIX lib)
|
||||
endif()
|
||||
- target_link_libraries(blosc_static ${LIBS})
|
||||
- target_include_directories(blosc_static PUBLIC ${BLOSC_INCLUDE_DIRS})
|
||||
+ target_link_libraries(blosc_static PUBLIC ${PUBLIC_LIBS})
|
||||
+ target_link_libraries(blosc_static PRIVATE ${PRIVATE_LIBS})
|
||||
+ # With the static library, cmake has to deal with transitive dependencies
|
||||
+ target_link_libraries(blosc_static PRIVATE ${LIBS})
|
||||
+ target_include_directories(blosc_static PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>)
|
||||
+ if (NOT BUILD_SHARED)
|
||||
+ target_link_libraries(blosc INTERFACE blosc_static)
|
||||
|
@ -398,24 +393,15 @@ index 7db4bb9..cabc2f8 100644
|
|||
\ No newline at end of file
|
||||
diff --git a/cmake_config.cmake.in b/cmake_config.cmake.in
|
||||
new file mode 100644
|
||||
index 0000000..b4ede30
|
||||
index 0000000..0f6af24
|
||||
--- /dev/null
|
||||
+++ b/cmake_config.cmake.in
|
||||
@@ -0,0 +1,33 @@
|
||||
@@ -0,0 +1,24 @@
|
||||
+include(CMakeFindDependencyMacro)
|
||||
+
|
||||
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
|
||||
+
|
||||
+set(_deps "@PUBLIC_PACKAGES@")
|
||||
+
|
||||
+foreach(pkg ${_deps})
|
||||
+ # no minimum versions are required by upstream
|
||||
+ find_dependency(${pkg})
|
||||
+endforeach()
|
||||
+
|
||||
+include("${CMAKE_CURRENT_LIST_DIR}/BloscTargets.cmake")
|
||||
+
|
||||
+function(remap_configs from_Cfg to_Cfg)
|
||||
+function(_blosc_remap_configs from_Cfg to_Cfg)
|
||||
+ string(TOUPPER ${from_Cfg} from_CFG)
|
||||
+ string(TOLOWER ${from_Cfg} from_cfg)
|
||||
+
|
||||
|
@ -432,21 +418,25 @@ index 0000000..b4ede30
|
|||
+# MSVC will try to link RelWithDebInfo or MinSizeRel target with debug config
|
||||
+# if no matching installation is present which would result in link errors.
|
||||
+if(MSVC)
|
||||
+ remap_configs(RelWithDebInfo Release)
|
||||
+ remap_configs(MinSizeRel Release)
|
||||
+ _blosc_remap_configs(RelWithDebInfo Release)
|
||||
+ _blosc_remap_configs(MinSizeRel Release)
|
||||
+endif()
|
||||
diff --git a/internal-complibs/CMakeLists.txt b/internal-complibs/CMakeLists.txt
|
||||
new file mode 100644
|
||||
index 0000000..5b23484
|
||||
index 0000000..4586efa
|
||||
--- /dev/null
|
||||
+++ b/internal-complibs/CMakeLists.txt
|
||||
@@ -0,0 +1,30 @@
|
||||
@@ -0,0 +1,35 @@
|
||||
+macro(add_lib_target pkg tgt incdir files)
|
||||
+ string(TOUPPER ${pkg} TGT)
|
||||
+ if(NOT DEACTIVATE_${TGT} AND NOT ${pkg}_FOUND)
|
||||
+ add_library(${tgt}_objs OBJECT ${files})
|
||||
+ add_library(${tgt} INTERFACE)
|
||||
+ target_include_directories(${tgt}_objs PRIVATE $<BUILD_INTERFACE:${incdir}>)
|
||||
+ target_include_directories(${tgt} INTERFACE $<BUILD_INTERFACE:${incdir}>)
|
||||
+ target_sources(${tgt} INTERFACE "$<BUILD_INTERFACE:${files}>")
|
||||
+ #set_target_properties(${tgt} PROPERTIES INTERFACE_SOURCES "$<TARGET_OBJECTS:${tgt}_objs>")
|
||||
+ set_target_properties(${tgt}_objs PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
||||
+ target_sources(${tgt} INTERFACE "$<BUILD_INTERFACE:$<TARGET_OBJECTS:${tgt}_objs>>")
|
||||
+ add_library(${pkg}::${tgt} ALIAS ${tgt})
|
||||
+
|
||||
+ # This creates dummy (empty) interface targets in the exported config.
|
||||
|
@ -471,6 +461,7 @@ index 0000000..5b23484
|
|||
+file(GLOB ZSTD_FILES ${ZSTD_DIR}/common/*.c ${ZSTD_DIR}/compress/*.c ${ZSTD_DIR}/decompress/*.c)
|
||||
+add_lib_target(Zstd Zstd ${ZSTD_DIR} "${ZSTD_FILES}")
|
||||
+target_include_directories(Zstd INTERFACE $<BUILD_INTERFACE:${ZSTD_DIR}/common>)
|
||||
+target_include_directories(Zstd_objs PRIVATE $<BUILD_INTERFACE:${ZSTD_DIR}/common>)
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.16.2.windows.1
|
||||
|
|
19
deps/deps-macos.cmake
vendored
19
deps/deps-macos.cmake
vendored
|
@ -6,7 +6,7 @@ set(DEP_WERRORS_SDK "-Werror=partial-availability -Werror=unguarded-availability
|
|||
set(DEP_CMAKE_OPTS
|
||||
"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
|
||||
"-DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}"
|
||||
"-DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}"
|
||||
"-DCMAKE_OSX_DEPLOYMENT_TARGET=${DEP_OSX_TARGET}"
|
||||
"-DCMAKE_CXX_FLAGS=${DEP_WERRORS_SDK}"
|
||||
"-DCMAKE_C_FLAGS=${DEP_WERRORS_SDK}"
|
||||
)
|
||||
|
@ -14,28 +14,27 @@ set(DEP_CMAKE_OPTS
|
|||
include("deps-unix-common.cmake")
|
||||
|
||||
|
||||
set(DEP_BOOST_OSX_TARGET "")
|
||||
if (CMAKE_OSX_DEPLOYMENT_TARGET)
|
||||
set(DEP_BOOST_OSX_TARGET "-mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||
endif ()
|
||||
|
||||
ExternalProject_Add(dep_boost
|
||||
EXCLUDE_FROM_ALL 1
|
||||
URL "https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.tar.gz"
|
||||
URL_HASH SHA256=bd0df411efd9a585e5a2212275f8762079fed8842264954675a4fddc46cfcf60
|
||||
URL "https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.gz"
|
||||
URL_HASH SHA256=96b34f7468f26a141f6020efb813f1a2f3dfb9797ecf76a7d7cbd843cc95f5bd
|
||||
BUILD_IN_SOURCE 1
|
||||
CONFIGURE_COMMAND ./bootstrap.sh
|
||||
--with-toolset=clang
|
||||
--with-libraries=system,iostreams,filesystem,thread,log,locale,regex
|
||||
"--prefix=${DESTDIR}/usr/local"
|
||||
BUILD_COMMAND ./b2
|
||||
-j ${NPROC}
|
||||
--reconfigure
|
||||
toolset=clang
|
||||
link=static
|
||||
variant=release
|
||||
threading=multi
|
||||
boost.locale.icu=off
|
||||
"cflags=-fPIC ${DEP_BOOST_OSX_TARGET}"
|
||||
"cxxflags=-fPIC ${DEP_BOOST_OSX_TARGET}"
|
||||
"cflags=-fPIC -mmacosx-version-min=${DEP_OSX_TARGET}"
|
||||
"cxxflags=-fPIC -mmacosx-version-min=${DEP_OSX_TARGET}"
|
||||
"mflags=-fPIC -mmacosx-version-min=${DEP_OSX_TARGET}"
|
||||
"mmflags=-fPIC -mmacosx-version-min=${DEP_OSX_TARGET}"
|
||||
install
|
||||
INSTALL_COMMAND "" # b2 does that already
|
||||
)
|
||||
|
|
49
deps/deps-unix-common.cmake
vendored
49
deps/deps-unix-common.cmake
vendored
|
@ -7,6 +7,8 @@ else ()
|
|||
set(TBB_MINGW_WORKAROUND "")
|
||||
endif ()
|
||||
|
||||
find_package(ZLIB REQUIRED)
|
||||
|
||||
ExternalProject_Add(dep_tbb
|
||||
EXCLUDE_FROM_ALL 1
|
||||
URL "https://github.com/wjakob/tbb/archive/a0dc9bf76d0120f917b641ed095360448cabc85b.tar.gz"
|
||||
|
@ -59,42 +61,14 @@ ExternalProject_Add(dep_qhull
|
|||
-DBUILD_SHARED_LIBS=OFF
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
${DEP_CMAKE_OPTS}
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --ignore-space-change --ignore-whitespace ${CMAKE_CURRENT_SOURCE_DIR}/qhull-mods.patch
|
||||
UPDATE_COMMAND ""
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/qhull-mods.patch
|
||||
)
|
||||
|
||||
ExternalProject_Add(dep_libigl
|
||||
EXCLUDE_FROM_ALL 1
|
||||
URL "https://github.com/libigl/libigl/archive/v2.0.0.tar.gz"
|
||||
URL_HASH SHA256=42518e6b106c7209c73435fd260ed5d34edeb254852495b4c95dce2d95401328
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
-DLIBIGL_BUILD_PYTHON=OFF
|
||||
-DLIBIGL_BUILD_TESTS=OFF
|
||||
-DLIBIGL_BUILD_TUTORIALS=OFF
|
||||
-DLIBIGL_USE_STATIC_LIBRARY=OFF #${DEP_BUILD_IGL_STATIC}
|
||||
-DLIBIGL_WITHOUT_COPYLEFT=OFF
|
||||
-DLIBIGL_WITH_CGAL=OFF
|
||||
-DLIBIGL_WITH_COMISO=OFF
|
||||
-DLIBIGL_WITH_CORK=OFF
|
||||
-DLIBIGL_WITH_EMBREE=OFF
|
||||
-DLIBIGL_WITH_MATLAB=OFF
|
||||
-DLIBIGL_WITH_MOSEK=OFF
|
||||
-DLIBIGL_WITH_OPENGL=OFF
|
||||
-DLIBIGL_WITH_OPENGL_GLFW=OFF
|
||||
-DLIBIGL_WITH_OPENGL_GLFW_IMGUI=OFF
|
||||
-DLIBIGL_WITH_PNG=OFF
|
||||
-DLIBIGL_WITH_PYTHON=OFF
|
||||
-DLIBIGL_WITH_TETGEN=OFF
|
||||
-DLIBIGL_WITH_TRIANGLE=OFF
|
||||
-DLIBIGL_WITH_XML=OFF
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --ignore-space-change --ignore-whitespace ${CMAKE_CURRENT_SOURCE_DIR}/igl-mods.patch
|
||||
)
|
||||
|
||||
|
||||
ExternalProject_Add(dep_blosc
|
||||
EXCLUDE_FROM_ALL 1
|
||||
GIT_REPOSITORY https://github.com/Blosc/c-blosc.git
|
||||
GIT_TAG v1.17.0
|
||||
GIT_TAG e63775855294b50820ef44d1b157f4de1cc38d3e #v1.17.0
|
||||
DEPENDS
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
|
@ -105,14 +79,15 @@ ExternalProject_Add(dep_blosc
|
|||
-DBUILD_STATIC=ON
|
||||
-DBUILD_TESTS=OFF
|
||||
-DBUILD_BENCHMARKS=OFF
|
||||
-DPREFER_EXTERNAL_ZLIB=OFF
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --ignore-space-change --ignore-whitespace ${CMAKE_CURRENT_SOURCE_DIR}/blosc-mods.patch
|
||||
-DPREFER_EXTERNAL_ZLIB=ON
|
||||
UPDATE_COMMAND ""
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/blosc-mods.patch
|
||||
)
|
||||
|
||||
ExternalProject_Add(dep_openexr
|
||||
EXCLUDE_FROM_ALL 1
|
||||
GIT_REPOSITORY https://github.com/openexr/openexr.git
|
||||
GIT_TAG v2.4.0
|
||||
GIT_TAG eae0e337c9f5117e78114fd05f7a415819df413a #v2.4.0
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
|
@ -121,12 +96,13 @@ ExternalProject_Add(dep_openexr
|
|||
-DPYILMBASE_ENABLE:BOOL=OFF
|
||||
-DOPENEXR_VIEWERS_ENABLE:BOOL=OFF
|
||||
-DOPENEXR_BUILD_UTILS:BOOL=OFF
|
||||
UPDATE_COMMAND ""
|
||||
)
|
||||
|
||||
ExternalProject_Add(dep_openvdb
|
||||
EXCLUDE_FROM_ALL 1
|
||||
GIT_REPOSITORY https://github.com/AcademySoftwareFoundation/openvdb.git
|
||||
GIT_TAG v6.2.1
|
||||
GIT_TAG aebaf8d95be5e57fd33949281ec357db4a576c2e #v6.2.1
|
||||
DEPENDS dep_blosc dep_openexr dep_tbb
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
|
@ -140,5 +116,6 @@ ExternalProject_Add(dep_openvdb
|
|||
-DOPENVDB_CORE_STATIC=ON
|
||||
-DTBB_STATIC=ON
|
||||
-DOPENVDB_BUILD_VDB_PRINT=ON
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply ${CMAKE_CURRENT_SOURCE_DIR}/openvdb-mods.patch
|
||||
UPDATE_COMMAND ""
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/openvdb-mods.patch
|
||||
)
|
90
deps/deps-windows.cmake
vendored
90
deps/deps-windows.cmake
vendored
|
@ -81,7 +81,6 @@ ExternalProject_Add(dep_boost
|
|||
INSTALL_COMMAND "" # b2 does that already
|
||||
)
|
||||
|
||||
|
||||
ExternalProject_Add(dep_tbb
|
||||
EXCLUDE_FROM_ALL 1
|
||||
URL "https://github.com/wjakob/tbb/archive/a0dc9bf76d0120f917b641ed095360448cabc85b.tar.gz"
|
||||
|
@ -99,22 +98,22 @@ ExternalProject_Add(dep_tbb
|
|||
|
||||
add_debug_dep(dep_tbb)
|
||||
|
||||
ExternalProject_Add(dep_gtest
|
||||
EXCLUDE_FROM_ALL 1
|
||||
URL "https://github.com/google/googletest/archive/release-1.8.1.tar.gz"
|
||||
URL_HASH SHA256=9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c
|
||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||
CMAKE_ARGS
|
||||
-DBUILD_GMOCK=OFF
|
||||
-Dgtest_force_shared_crt=ON
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||
"-DCMAKE_INSTALL_PREFIX:PATH=${DESTDIR}\\usr\\local"
|
||||
BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||
INSTALL_COMMAND ""
|
||||
)
|
||||
# ExternalProject_Add(dep_gtest
|
||||
# EXCLUDE_FROM_ALL 1
|
||||
# URL "https://github.com/google/googletest/archive/release-1.8.1.tar.gz"
|
||||
# URL_HASH SHA256=9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c
|
||||
# CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||
# CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||
# CMAKE_ARGS
|
||||
# -DBUILD_GMOCK=OFF
|
||||
# -Dgtest_force_shared_crt=ON
|
||||
# -DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||
# "-DCMAKE_INSTALL_PREFIX:PATH=${DESTDIR}\\usr\\local"
|
||||
# BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||
# INSTALL_COMMAND ""
|
||||
# )
|
||||
|
||||
add_debug_dep(dep_gtest)
|
||||
# add_debug_dep(dep_gtest)
|
||||
|
||||
ExternalProject_Add(dep_cereal
|
||||
EXCLUDE_FROM_ALL 1
|
||||
|
@ -181,7 +180,6 @@ if (${DEP_DEBUG})
|
|||
)
|
||||
endif ()
|
||||
|
||||
|
||||
if (${DEPS_BITS} EQUAL 32)
|
||||
set(DEP_LIBCURL_TARGET "x86")
|
||||
else ()
|
||||
|
@ -228,7 +226,8 @@ ExternalProject_Add(dep_qhull
|
|||
-DBUILD_SHARED_LIBS=OFF
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||
-DCMAKE_DEBUG_POSTFIX=d
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --ignore-space-change --ignore-whitespace ${CMAKE_CURRENT_SOURCE_DIR}/qhull-mods.patch
|
||||
UPDATE_COMMAND ""
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/qhull-mods.patch
|
||||
BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||
INSTALL_COMMAND ""
|
||||
)
|
||||
|
@ -245,41 +244,6 @@ endif ()
|
|||
|
||||
find_package(Git REQUIRED)
|
||||
|
||||
ExternalProject_Add(dep_libigl
|
||||
EXCLUDE_FROM_ALL 1
|
||||
URL "https://github.com/libigl/libigl/archive/v2.0.0.tar.gz"
|
||||
URL_HASH SHA256=42518e6b106c7209c73435fd260ed5d34edeb254852495b4c95dce2d95401328
|
||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
-DLIBIGL_BUILD_PYTHON=OFF
|
||||
-DLIBIGL_BUILD_TESTS=OFF
|
||||
-DLIBIGL_BUILD_TUTORIALS=OFF
|
||||
-DLIBIGL_USE_STATIC_LIBRARY=OFF #${DEP_BUILD_IGL_STATIC}
|
||||
-DLIBIGL_WITHOUT_COPYLEFT=OFF
|
||||
-DLIBIGL_WITH_CGAL=OFF
|
||||
-DLIBIGL_WITH_COMISO=OFF
|
||||
-DLIBIGL_WITH_CORK=OFF
|
||||
-DLIBIGL_WITH_EMBREE=OFF
|
||||
-DLIBIGL_WITH_MATLAB=OFF
|
||||
-DLIBIGL_WITH_MOSEK=OFF
|
||||
-DLIBIGL_WITH_OPENGL=OFF
|
||||
-DLIBIGL_WITH_OPENGL_GLFW=OFF
|
||||
-DLIBIGL_WITH_OPENGL_GLFW_IMGUI=OFF
|
||||
-DLIBIGL_WITH_PNG=OFF
|
||||
-DLIBIGL_WITH_PYTHON=OFF
|
||||
-DLIBIGL_WITH_TETGEN=OFF
|
||||
-DLIBIGL_WITH_TRIANGLE=OFF
|
||||
-DLIBIGL_WITH_XML=OFF
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||
-DCMAKE_DEBUG_POSTFIX=d
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --ignore-space-change --ignore-whitespace ${CMAKE_CURRENT_SOURCE_DIR}/igl-mods.patch
|
||||
BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||
INSTALL_COMMAND ""
|
||||
)
|
||||
|
||||
add_debug_dep(dep_libigl)
|
||||
|
||||
ExternalProject_Add(dep_wxwidgets
|
||||
EXCLUDE_FROM_ALL 1
|
||||
GIT_REPOSITORY "https://github.com/prusa3d/wxWidgets"
|
||||
|
@ -305,10 +269,13 @@ endif ()
|
|||
|
||||
ExternalProject_Add(dep_blosc
|
||||
EXCLUDE_FROM_ALL 1
|
||||
#URL https://github.com/Blosc/c-blosc/archive/v1.17.0.zip
|
||||
#URL_HASH SHA256=7463a1df566704f212263312717ab2c36b45d45cba6cd0dccebf91b2cc4b4da9
|
||||
GIT_REPOSITORY https://github.com/Blosc/c-blosc.git
|
||||
GIT_TAG v1.17.0
|
||||
GIT_TAG e63775855294b50820ef44d1b157f4de1cc38d3e #v1.17.0
|
||||
DEPENDS dep_zlib
|
||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
|
@ -319,6 +286,9 @@ ExternalProject_Add(dep_blosc
|
|||
-DBUILD_TESTS=OFF
|
||||
-DBUILD_BENCHMARKS=OFF
|
||||
-DPREFER_EXTERNAL_ZLIB=ON
|
||||
-DBLOSC_IS_SUBPROJECT:BOOL=ON
|
||||
-DBLOSC_INSTALL:BOOL=ON
|
||||
UPDATE_COMMAND ""
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/blosc-mods.patch
|
||||
BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||
INSTALL_COMMAND ""
|
||||
|
@ -329,9 +299,10 @@ add_debug_dep(dep_blosc)
|
|||
ExternalProject_Add(dep_openexr
|
||||
EXCLUDE_FROM_ALL 1
|
||||
GIT_REPOSITORY https://github.com/openexr/openexr.git
|
||||
GIT_TAG v2.4.0
|
||||
GIT_TAG eae0e337c9f5117e78114fd05f7a415819df413a #v2.4.0
|
||||
DEPENDS dep_zlib
|
||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
|
@ -340,6 +311,7 @@ ExternalProject_Add(dep_openexr
|
|||
-DPYILMBASE_ENABLE:BOOL=OFF
|
||||
-DOPENEXR_VIEWERS_ENABLE:BOOL=OFF
|
||||
-DOPENEXR_BUILD_UTILS:BOOL=OFF
|
||||
UPDATE_COMMAND ""
|
||||
BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||
INSTALL_COMMAND ""
|
||||
)
|
||||
|
@ -348,10 +320,13 @@ add_debug_dep(dep_openexr)
|
|||
|
||||
ExternalProject_Add(dep_openvdb
|
||||
EXCLUDE_FROM_ALL 1
|
||||
#URL https://github.com/AcademySoftwareFoundation/openvdb/archive/v6.2.1.zip
|
||||
#URL_HASH SHA256=dc337399dce8e1c9f21f20e97b1ce7e4933cb0a63bb3b8b734d8fcc464aa0c48
|
||||
GIT_REPOSITORY https://github.com/AcademySoftwareFoundation/openvdb.git
|
||||
GIT_TAG v6.2.1
|
||||
DEPENDS dep_blosc dep_openexr dep_tbb
|
||||
GIT_TAG aebaf8d95be5e57fd33949281ec357db4a576c2e #v6.2.1
|
||||
DEPENDS dep_blosc dep_openexr #dep_tbb dep_boost
|
||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||
CMAKE_ARGS
|
||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||
-DCMAKE_DEBUG_POSTFIX=d
|
||||
|
@ -365,6 +340,7 @@ ExternalProject_Add(dep_openvdb
|
|||
-DTBB_STATIC=ON
|
||||
-DOPENVDB_BUILD_VDB_PRINT=ON
|
||||
BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||
UPDATE_COMMAND ""
|
||||
PATCH_COMMAND ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_SOURCE_DIR}/openvdb-mods.patch
|
||||
INSTALL_COMMAND ""
|
||||
)
|
||||
|
|
128
deps/igl-mods.patch
vendored
128
deps/igl-mods.patch
vendored
|
@ -1,128 +0,0 @@
|
|||
diff --git a/cmake/libigl-config.cmake.in b/cmake/libigl-config.cmake.in
|
||||
index 317c745c..f9808e1e 100644
|
||||
--- a/cmake/libigl-config.cmake.in
|
||||
+++ b/cmake/libigl-config.cmake.in
|
||||
@@ -2,28 +2,28 @@
|
||||
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/libigl-export.cmake)
|
||||
|
||||
-if (TARGET igl::core)
|
||||
- if (NOT TARGET Eigen3::Eigen)
|
||||
- find_package(Eigen3 QUIET)
|
||||
- if (NOT Eigen3_FOUND)
|
||||
- # try with PkgCOnfig
|
||||
- find_package(PkgConfig REQUIRED)
|
||||
- pkg_check_modules(Eigen3 QUIET IMPORTED_TARGET eigen3)
|
||||
- endif()
|
||||
-
|
||||
- if (NOT Eigen3_FOUND)
|
||||
- message(FATAL_ERROR "Could not find required dependency Eigen3")
|
||||
- set(libigl_core_FOUND FALSE)
|
||||
- else()
|
||||
- target_link_libraries(igl::core INTERFACE PkgConfig::Eigen3)
|
||||
- set(libigl_core_FOUND TRUE)
|
||||
- endif()
|
||||
- else()
|
||||
- target_link_libraries(igl::core INTERFACE Eigen3::Eigen)
|
||||
- set(libigl_core_FOUND TRUE)
|
||||
- endif()
|
||||
-
|
||||
-endif()
|
||||
+# if (TARGET igl::core)
|
||||
+# if (NOT TARGET Eigen3::Eigen)
|
||||
+# find_package(Eigen3 QUIET)
|
||||
+# if (NOT Eigen3_FOUND)
|
||||
+# # try with PkgCOnfig
|
||||
+# find_package(PkgConfig REQUIRED)
|
||||
+# pkg_check_modules(Eigen3 QUIET IMPORTED_TARGET eigen3)
|
||||
+# endif()
|
||||
+#
|
||||
+# if (NOT Eigen3_FOUND)
|
||||
+# message(FATAL_ERROR "Could not find required dependency Eigen3")
|
||||
+# set(libigl_core_FOUND FALSE)
|
||||
+# else()
|
||||
+# target_link_libraries(igl::core INTERFACE PkgConfig::Eigen3)
|
||||
+# set(libigl_core_FOUND TRUE)
|
||||
+# endif()
|
||||
+# else()
|
||||
+# target_link_libraries(igl::core INTERFACE Eigen3::Eigen)
|
||||
+# set(libigl_core_FOUND TRUE)
|
||||
+# endif()
|
||||
+#
|
||||
+# endif()
|
||||
|
||||
check_required_components(libigl)
|
||||
|
||||
diff --git a/cmake/libigl.cmake b/cmake/libigl.cmake
|
||||
index 4b11007a..47e6c395 100644
|
||||
--- a/cmake/libigl.cmake
|
||||
+++ b/cmake/libigl.cmake
|
||||
@@ -445,6 +445,7 @@ function(install_dir_files dir_name)
|
||||
if(NOT LIBIGL_USE_STATIC_LIBRARY)
|
||||
file(GLOB public_sources
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include/igl${subpath}/*.cpp
|
||||
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/igl${subpath}/*.c
|
||||
)
|
||||
endif()
|
||||
list(APPEND files_to_install ${public_sources})
|
||||
diff --git a/include/igl/AABB.cpp b/include/igl/AABB.cpp
|
||||
index 09537335..92e90cb7 100644
|
||||
--- a/include/igl/AABB.cpp
|
||||
+++ b/include/igl/AABB.cpp
|
||||
@@ -1071,5 +1071,11 @@ template void igl::AABB<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 3>::init<Eigen
|
||||
// generated by autoexplicit.sh
|
||||
template void igl::AABB<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 2>::init<Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&);
|
||||
template double igl::AABB<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 3>::squared_distance<Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, Eigen::Matrix<double, 1, 3, 1, 1, 3> const&, double, int&, Eigen::PlainObjectBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> >&) const;
|
||||
+template float igl::AABB<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, 3>::squared_distance<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::Matrix<float, 1, 3, 1, 1, 3> const&, int&, Eigen::PlainObjectBase<Eigen::Matrix<float, 1, 3, 1, 1, 3> >&) const;
|
||||
template bool igl::AABB<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 3>::intersect_ray<Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, Eigen::Matrix<double, 1, 3, 1, 1, 3> const&, Eigen::Matrix<double, 1, 3, 1, 1, 3> const&, igl::Hit&) const;
|
||||
+template bool igl::AABB<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 3>::intersect_ray<Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, Eigen::Matrix<double, 1, 3, 1, 1, 3> const&, Eigen::Matrix<double, 1, 3, 1, 1, 3> const&, std::vector<igl::Hit>&) const;
|
||||
+
|
||||
+template void igl::AABB<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, 3>::init<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&);
|
||||
+
|
||||
+template bool igl::AABB<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, 3>::intersect_ray<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::Matrix<float, 1, 3, 1, 1, 3> const&, Eigen::Matrix<float, 1, 3, 1, 1, 3> const&, std::vector<igl::Hit, std::allocator<igl::Hit> >&) const;
|
||||
#endif
|
||||
diff --git a/include/igl/barycenter.cpp b/include/igl/barycenter.cpp
|
||||
index 065f82aa..ec2d96cd 100644
|
||||
--- a/include/igl/barycenter.cpp
|
||||
+++ b/include/igl/barycenter.cpp
|
||||
@@ -54,4 +54,6 @@ template void igl::barycenter<Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::M
|
||||
template void igl::barycenter<Eigen::Matrix<double, -1, 3, 0, -1, 3>, Eigen::Matrix<int, -1, 3, 0, -1, 3>, Eigen::Matrix<double, -1, 3, 0, -1, 3> >(Eigen::MatrixBase<Eigen::Matrix<double, -1, 3, 0, -1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, 3, 0, -1, 3> > const&, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 3, 0, -1, 3> >&);
|
||||
template void igl::barycenter<Eigen::Matrix<double, -1, 3, 0, -1, 3>, Eigen::Matrix<int, -1, 3, 0, -1, 3>, Eigen::Matrix<double, -1, -1, 0, -1, -1> >(Eigen::MatrixBase<Eigen::Matrix<double, -1, 3, 0, -1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, 3, 0, -1, 3> > const&, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> >&);
|
||||
template void igl::barycenter<Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1>, Eigen::Matrix<double, -1, 2, 0, -1, 2> >(Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, Eigen::PlainObjectBase<Eigen::Matrix<double, -1, 2, 0, -1, 2> >&);
|
||||
+
|
||||
+template void igl::barycenter<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, Eigen::Matrix<float, -1, 3, 0, -1, 3> >(Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::PlainObjectBase<Eigen::Matrix<float, -1, 3, 0, -1, 3> >&);
|
||||
#endif
|
||||
diff --git a/include/igl/point_simplex_squared_distance.cpp b/include/igl/point_simplex_squared_distance.cpp
|
||||
index 2b98bd28..c66d9ae1 100644
|
||||
--- a/include/igl/point_simplex_squared_distance.cpp
|
||||
+++ b/include/igl/point_simplex_squared_distance.cpp
|
||||
@@ -178,4 +178,6 @@ template void igl::point_simplex_squared_distance<3, Eigen::Matrix<double, 1, 3,
|
||||
template void igl::point_simplex_squared_distance<3, Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1>, double, Eigen::Matrix<double, 1, 3, 1, 1, 3> >(Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, Eigen::Matrix<int, -1, -1, 0, -1, -1>::Index, double&, Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> >&, Eigen::PlainObjectBase<Eigen::Matrix<double, 3, 1, 1, 1, 3> >&);
|
||||
template void igl::point_simplex_squared_distance<2, Eigen::Matrix<double, 1, 2, 1, 1, 2>, Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1>, double, Eigen::Matrix<double, 1, 2, 1, 1, 2> >(Eigen::MatrixBase<Eigen::Matrix<double, 1, 2, 1, 1, 2> > const&, Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, Eigen::Matrix<int, -1, -1, 0, -1, -1>::Index, double&, Eigen::MatrixBase<Eigen::Matrix<double, 1, 2, 1, 1, 2> >&, Eigen::PlainObjectBase<Eigen::Matrix<double, 1, 2, 1, 1, 2> >&);
|
||||
template void igl::point_simplex_squared_distance<2, Eigen::Matrix<double, 1, 2, 1, 1, 2>, Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1>, double, Eigen::Matrix<double, 1, 2, 1, 1, 2> >(Eigen::MatrixBase<Eigen::Matrix<double, 1, 2, 1, 1, 2> > const&, Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, Eigen::Matrix<int, -1, -1, 0, -1, -1>::Index, double&, Eigen::MatrixBase<Eigen::Matrix<double, 1, 2, 1, 1, 2> >&, Eigen::PlainObjectBase<Eigen::Matrix<double, 2, 1, 1, 1, 2> >&);
|
||||
+
|
||||
+template void igl::point_simplex_squared_distance<3, Eigen::Matrix<float, 1, 3, 1, 1, 3>, Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, float, Eigen::Matrix<float, 1, 3, 1, 1, 3> >(Eigen::MatrixBase<Eigen::Matrix<float, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >::Index, float&, Eigen::MatrixBase<Eigen::Matrix<float, 1, 3, 1, 1, 3> >&);
|
||||
#endif
|
||||
diff --git a/include/igl/ray_box_intersect.cpp b/include/igl/ray_box_intersect.cpp
|
||||
index 4a88b89e..b547f8f8 100644
|
||||
--- a/include/igl/ray_box_intersect.cpp
|
||||
+++ b/include/igl/ray_box_intersect.cpp
|
||||
@@ -147,4 +147,6 @@ IGL_INLINE bool igl::ray_box_intersect(
|
||||
#ifdef IGL_STATIC_LIBRARY
|
||||
// Explicit template instantiation
|
||||
template bool igl::ray_box_intersect<Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::Matrix<double, 1, 3, 1, 1, 3>, double>(Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> > const&, Eigen::AlignedBox<double, 3> const&, double const&, double const&, double&, double&);
|
||||
+
|
||||
+template bool igl::ray_box_intersect<Eigen::Matrix<float, 1, 3, 1, 1, 3>, Eigen::Matrix<float, 1, 3, 1, 1, 3>, float>(Eigen::MatrixBase<Eigen::Matrix<float, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<float, 1, 3, 1, 1, 3> > const&, Eigen::AlignedBox<float, 3> const&, float const&, float const&, float&, float&);
|
||||
#endif
|
||||
diff --git a/include/igl/ray_mesh_intersect.cpp b/include/igl/ray_mesh_intersect.cpp
|
||||
index 9a70a22b..4233e722 100644
|
||||
--- a/include/igl/ray_mesh_intersect.cpp
|
||||
+++ b/include/igl/ray_mesh_intersect.cpp
|
||||
@@ -83,4 +83,7 @@ IGL_INLINE bool igl::ray_mesh_intersect(
|
||||
template bool igl::ray_mesh_intersect<Eigen::Matrix<float, 3, 1, 0, 3, 1>, Eigen::Matrix<float, 3, 1, 0, 3, 1>, Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::MatrixBase<Eigen::Matrix<float, 3, 1, 0, 3, 1> > const&, Eigen::MatrixBase<Eigen::Matrix<float, 3, 1, 0, 3, 1> > const&, Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, std::vector<igl::Hit, std::allocator<igl::Hit> >&);
|
||||
template bool igl::ray_mesh_intersect<Eigen::Matrix<float, 3, 1, 0, 3, 1>, Eigen::Matrix<float, 3, 1, 0, 3, 1>, Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::MatrixBase<Eigen::Matrix<float, 3, 1, 0, 3, 1> > const&, Eigen::MatrixBase<Eigen::Matrix<float, 3, 1, 0, 3, 1> > const&, Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&, igl::Hit&);
|
||||
template bool igl::ray_mesh_intersect<Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Block<Eigen::Matrix<int, -1, -1, 0, -1, -1> const, 1, -1, false> >(Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<int, -1, -1, 0, -1, -1> const, 1, -1, false> > const&, igl::Hit&);
|
||||
+template bool igl::ray_mesh_intersect<Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Block<Eigen::Matrix<int, -1, -1, 0, -1, -1> const, 1, -1, false> >(Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::MatrixBase<Eigen::Block<Eigen::Matrix<int, -1, -1, 0, -1, -1> const, 1, -1, false> > const&, std::vector<igl::Hit, std::allocator<igl::Hit> >&);
|
||||
+
|
||||
+template bool igl::ray_mesh_intersect<Eigen::Matrix<float, 1, 3, 1, 1, 3>, Eigen::Matrix<float, 1, 3, 1, 1, 3>, Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> >, Eigen::Block<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > const, 1, -1, true> >(Eigen::MatrixBase<Eigen::Matrix<float, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Matrix<float, 1, 3, 1, 1, 3> > const&, Eigen::MatrixBase<Eigen::Map<Eigen::Matrix<float, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > > const&, Eigen::MatrixBase<Eigen::Block<Eigen::Map<Eigen::Matrix<int, -1, -1, 3, -1, -1> const, 0, Eigen::Stride<0, 0> > const, 1, -1, true> > const&, std::vector<igl::Hit, std::allocator<igl::Hit> >&);
|
||||
#endif
|
379
deps/openvdb-mods.patch
vendored
379
deps/openvdb-mods.patch
vendored
|
@ -1,4 +1,4 @@
|
|||
From ee867b9f226412c0f3b83fa01cd43539acc4ed95 Mon Sep 17 00:00:00 2001
|
||||
From e48f4a835fe7cb391f9f90945472bd367fb4c4f1 Mon Sep 17 00:00:00 2001
|
||||
From: tamasmeszaros <meszaros.q@gmail.com>
|
||||
Date: Wed, 16 Oct 2019 17:42:50 +0200
|
||||
Subject: [PATCH] Build fixes for PrusaSlicer integration
|
||||
|
@ -7,17 +7,17 @@ Subject: [PATCH] Build fixes for PrusaSlicer integration
|
|||
CMakeLists.txt | 3 -
|
||||
cmake/FindBlosc.cmake | 218 ---------------
|
||||
cmake/FindCppUnit.cmake | 4 +-
|
||||
cmake/FindIlmBase.cmake | 337 -----------------------
|
||||
cmake/FindIlmBase.cmake | 337 ----------------------
|
||||
cmake/FindOpenEXR.cmake | 329 ----------------------
|
||||
cmake/FindOpenVDB.cmake | 19 +-
|
||||
cmake/FindTBB.cmake | 593 ++++++++++++++++++++--------------------
|
||||
cmake/FindTBB.cmake | 605 ++++++++++++++++++++--------------------
|
||||
openvdb/CMakeLists.txt | 13 +-
|
||||
openvdb/Grid.cc | 3 +
|
||||
openvdb/PlatformConfig.h | 9 +-
|
||||
openvdb/cmd/CMakeLists.txt | 4 +-
|
||||
openvdb/unittest/CMakeLists.txt | 3 +-
|
||||
openvdb/unittest/TestFile.cc | 2 +-
|
||||
13 files changed, 325 insertions(+), 1212 deletions(-)
|
||||
13 files changed, 336 insertions(+), 1213 deletions(-)
|
||||
delete mode 100644 cmake/FindBlosc.cmake
|
||||
delete mode 100644 cmake/FindIlmBase.cmake
|
||||
delete mode 100644 cmake/FindOpenEXR.cmake
|
||||
|
@ -1011,10 +1011,10 @@ index 63a2eda..6211071 100644
|
|||
endforeach()
|
||||
|
||||
diff --git a/cmake/FindTBB.cmake b/cmake/FindTBB.cmake
|
||||
index bdf9c81..ffdee03 100644
|
||||
index bdf9c81..c6bdec9 100644
|
||||
--- a/cmake/FindTBB.cmake
|
||||
+++ b/cmake/FindTBB.cmake
|
||||
@@ -1,333 +1,322 @@
|
||||
@@ -1,333 +1,332 @@
|
||||
-# Copyright (c) DreamWorks Animation LLC
|
||||
+# The MIT License (MIT)
|
||||
#
|
||||
|
@ -1205,10 +1205,6 @@ index bdf9c81..ffdee03 100644
|
|||
+#
|
||||
+# This module will also create the "tbb" target that may be used when building
|
||||
+# executables and libraries.
|
||||
+
|
||||
+include(FindPackageHandleStandardArgs)
|
||||
+
|
||||
+if(NOT TBB_FOUND)
|
||||
|
||||
-mark_as_advanced(
|
||||
- Tbb_INCLUDE_DIR
|
||||
|
@ -1227,6 +1223,39 @@ index bdf9c81..ffdee03 100644
|
|||
- foreach(COMPONENT ${TBB_FIND_COMPONENTS})
|
||||
- if(NOT ${COMPONENT} IN_LIST _TBB_COMPONENT_LIST)
|
||||
- list(APPEND _IGNORED_COMPONENTS ${COMPONENT})
|
||||
- endif()
|
||||
- endforeach()
|
||||
+unset(TBB_FOUND CACHE)
|
||||
+unset(TBB_INCLUDE_DIRS CACHE)
|
||||
+unset(TBB_LIBRARIES)
|
||||
+unset(TBB_LIBRARIES_DEBUG)
|
||||
+unset(TBB_LIBRARIES_RELEASE)
|
||||
|
||||
- if(_IGNORED_COMPONENTS)
|
||||
- message(STATUS "Ignoring unknown components of TBB:")
|
||||
- foreach(COMPONENT ${_IGNORED_COMPONENTS})
|
||||
- message(STATUS " ${COMPONENT}")
|
||||
- endforeach()
|
||||
- list(REMOVE_ITEM TBB_FIND_COMPONENTS ${_IGNORED_COMPONENTS})
|
||||
- endif()
|
||||
-else()
|
||||
- set(_TBB_COMPONENTS_PROVIDED FALSE)
|
||||
- set(TBB_FIND_COMPONENTS ${_TBB_COMPONENT_LIST})
|
||||
-endif()
|
||||
+include(FindPackageHandleStandardArgs)
|
||||
+
|
||||
+find_package(Threads QUIET REQUIRED)
|
||||
|
||||
-# Append TBB_ROOT or $ENV{TBB_ROOT} if set (prioritize the direct cmake var)
|
||||
-set(_TBB_ROOT_SEARCH_DIR "")
|
||||
+if(NOT TBB_FOUND)
|
||||
|
||||
-if(TBB_ROOT)
|
||||
- list(APPEND _TBB_ROOT_SEARCH_DIR ${TBB_ROOT})
|
||||
-else()
|
||||
- set(_ENV_TBB_ROOT $ENV{TBB_ROOT})
|
||||
- if(_ENV_TBB_ROOT)
|
||||
- list(APPEND _TBB_ROOT_SEARCH_DIR ${_ENV_TBB_ROOT})
|
||||
+ ##################################
|
||||
+ # Check the build type
|
||||
+ ##################################
|
||||
|
@ -1241,7 +1270,8 @@ index bdf9c81..ffdee03 100644
|
|||
+ set(TBB_BUILD_TYPE DEBUG)
|
||||
+ else()
|
||||
+ set(TBB_BUILD_TYPE RELEASE)
|
||||
+ endif()
|
||||
endif()
|
||||
-endif()
|
||||
+
|
||||
+ ##################################
|
||||
+ # Set the TBB search directories
|
||||
|
@ -1261,7 +1291,53 @@ index bdf9c81..ffdee03 100644
|
|||
+ else()
|
||||
+ set(TBB_ARCHITECTURE "ia32")
|
||||
+ endif()
|
||||
+
|
||||
|
||||
-# Additionally try and use pkconfig to find Tbb
|
||||
-
|
||||
-find_package(PkgConfig)
|
||||
-pkg_check_modules(PC_Tbb QUIET tbb)
|
||||
-
|
||||
-# ------------------------------------------------------------------------
|
||||
-# Search for tbb include DIR
|
||||
-# ------------------------------------------------------------------------
|
||||
-
|
||||
-set(_TBB_INCLUDE_SEARCH_DIRS "")
|
||||
-list(APPEND _TBB_INCLUDE_SEARCH_DIRS
|
||||
- ${TBB_INCLUDEDIR}
|
||||
- ${_TBB_ROOT_SEARCH_DIR}
|
||||
- ${PC_Tbb_INCLUDE_DIRS}
|
||||
- ${SYSTEM_LIBRARY_PATHS}
|
||||
-)
|
||||
-
|
||||
-# Look for a standard tbb header file.
|
||||
-find_path(Tbb_INCLUDE_DIR tbb/tbb_stddef.h
|
||||
- NO_DEFAULT_PATH
|
||||
- PATHS ${_TBB_INCLUDE_SEARCH_DIRS}
|
||||
- PATH_SUFFIXES include
|
||||
-)
|
||||
-
|
||||
-if(EXISTS "${Tbb_INCLUDE_DIR}/tbb/tbb_stddef.h")
|
||||
- file(STRINGS "${Tbb_INCLUDE_DIR}/tbb/tbb_stddef.h"
|
||||
- _tbb_version_major_string REGEX "#define TBB_VERSION_MAJOR "
|
||||
- )
|
||||
- string(REGEX REPLACE "#define TBB_VERSION_MAJOR" ""
|
||||
- _tbb_version_major_string "${_tbb_version_major_string}"
|
||||
- )
|
||||
- string(STRIP "${_tbb_version_major_string}" Tbb_VERSION_MAJOR)
|
||||
-
|
||||
- file(STRINGS "${Tbb_INCLUDE_DIR}/tbb/tbb_stddef.h"
|
||||
- _tbb_version_minor_string REGEX "#define TBB_VERSION_MINOR "
|
||||
- )
|
||||
- string(REGEX REPLACE "#define TBB_VERSION_MINOR" ""
|
||||
- _tbb_version_minor_string "${_tbb_version_minor_string}"
|
||||
- )
|
||||
- string(STRIP "${_tbb_version_minor_string}" Tbb_VERSION_MINOR)
|
||||
-
|
||||
- unset(_tbb_version_major_string)
|
||||
- unset(_tbb_version_minor_string)
|
||||
-
|
||||
- set(Tbb_VERSION ${Tbb_VERSION_MAJOR}.${Tbb_VERSION_MINOR})
|
||||
-endif()
|
||||
+ # Set the TBB search library path search suffix based on the version of VC
|
||||
+ if(WINDOWS_STORE)
|
||||
+ set(TBB_LIB_PATH_SUFFIX "lib/${TBB_ARCHITECTURE}/vc11_ui")
|
||||
|
@ -1273,15 +1349,11 @@ index bdf9c81..ffdee03 100644
|
|||
+ set(TBB_LIB_PATH_SUFFIX "lib/${TBB_ARCHITECTURE}/vc11")
|
||||
+ elseif(MSVC10)
|
||||
+ set(TBB_LIB_PATH_SUFFIX "lib/${TBB_ARCHITECTURE}/vc10")
|
||||
endif()
|
||||
- endforeach()
|
||||
+ endif()
|
||||
|
||||
- if(_IGNORED_COMPONENTS)
|
||||
- message(STATUS "Ignoring unknown components of TBB:")
|
||||
- foreach(COMPONENT ${_IGNORED_COMPONENTS})
|
||||
- message(STATUS " ${COMPONENT}")
|
||||
- endforeach()
|
||||
- list(REMOVE_ITEM TBB_FIND_COMPONENTS ${_IGNORED_COMPONENTS})
|
||||
-# ------------------------------------------------------------------------
|
||||
-# Search for TBB lib DIR
|
||||
-# ------------------------------------------------------------------------
|
||||
+ # Add the library path search suffix for the VC independent version of TBB
|
||||
+ list(APPEND TBB_LIB_PATH_SUFFIX "lib/${TBB_ARCHITECTURE}/vc_mt")
|
||||
+
|
||||
|
@ -1332,110 +1404,19 @@ index bdf9c81..ffdee03 100644
|
|||
+ string(REGEX REPLACE ".*#define TBB_INTERFACE_VERSION ([0-9]+).*" "\\1"
|
||||
+ TBB_INTERFACE_VERSION "${_tbb_version_file}")
|
||||
+ set(TBB_VERSION "${TBB_VERSION_MAJOR}.${TBB_VERSION_MINOR}")
|
||||
endif()
|
||||
-else()
|
||||
- set(_TBB_COMPONENTS_PROVIDED FALSE)
|
||||
- set(TBB_FIND_COMPONENTS ${_TBB_COMPONENT_LIST})
|
||||
-endif()
|
||||
+ endif()
|
||||
|
||||
-# Append TBB_ROOT or $ENV{TBB_ROOT} if set (prioritize the direct cmake var)
|
||||
-set(_TBB_ROOT_SEARCH_DIR "")
|
||||
-set(_TBB_LIBRARYDIR_SEARCH_DIRS "")
|
||||
+ ##################################
|
||||
+ # Find TBB components
|
||||
+ ##################################
|
||||
|
||||
-if(TBB_ROOT)
|
||||
- list(APPEND _TBB_ROOT_SEARCH_DIR ${TBB_ROOT})
|
||||
-else()
|
||||
- set(_ENV_TBB_ROOT $ENV{TBB_ROOT})
|
||||
- if(_ENV_TBB_ROOT)
|
||||
- list(APPEND _TBB_ROOT_SEARCH_DIR ${_ENV_TBB_ROOT})
|
||||
-# Append to _TBB_LIBRARYDIR_SEARCH_DIRS in priority order
|
||||
+ if(TBB_VERSION VERSION_LESS 4.3)
|
||||
+ set(TBB_SEARCH_COMPOMPONENTS tbb_preview tbbmalloc tbb)
|
||||
+ else()
|
||||
+ set(TBB_SEARCH_COMPOMPONENTS tbb_preview tbbmalloc_proxy tbbmalloc tbb)
|
||||
endif()
|
||||
-endif()
|
||||
|
||||
-# Additionally try and use pkconfig to find Tbb
|
||||
-
|
||||
-find_package(PkgConfig)
|
||||
-pkg_check_modules(PC_Tbb QUIET tbb)
|
||||
-
|
||||
-# ------------------------------------------------------------------------
|
||||
-# Search for tbb include DIR
|
||||
-# ------------------------------------------------------------------------
|
||||
-
|
||||
-set(_TBB_INCLUDE_SEARCH_DIRS "")
|
||||
-list(APPEND _TBB_INCLUDE_SEARCH_DIRS
|
||||
- ${TBB_INCLUDEDIR}
|
||||
- ${_TBB_ROOT_SEARCH_DIR}
|
||||
- ${PC_Tbb_INCLUDE_DIRS}
|
||||
- ${SYSTEM_LIBRARY_PATHS}
|
||||
-)
|
||||
-
|
||||
-# Look for a standard tbb header file.
|
||||
-find_path(Tbb_INCLUDE_DIR tbb/tbb_stddef.h
|
||||
- NO_DEFAULT_PATH
|
||||
- PATHS ${_TBB_INCLUDE_SEARCH_DIRS}
|
||||
- PATH_SUFFIXES include
|
||||
-)
|
||||
-
|
||||
-if(EXISTS "${Tbb_INCLUDE_DIR}/tbb/tbb_stddef.h")
|
||||
- file(STRINGS "${Tbb_INCLUDE_DIR}/tbb/tbb_stddef.h"
|
||||
- _tbb_version_major_string REGEX "#define TBB_VERSION_MAJOR "
|
||||
- )
|
||||
- string(REGEX REPLACE "#define TBB_VERSION_MAJOR" ""
|
||||
- _tbb_version_major_string "${_tbb_version_major_string}"
|
||||
- )
|
||||
- string(STRIP "${_tbb_version_major_string}" Tbb_VERSION_MAJOR)
|
||||
-
|
||||
- file(STRINGS "${Tbb_INCLUDE_DIR}/tbb/tbb_stddef.h"
|
||||
- _tbb_version_minor_string REGEX "#define TBB_VERSION_MINOR "
|
||||
- )
|
||||
- string(REGEX REPLACE "#define TBB_VERSION_MINOR" ""
|
||||
- _tbb_version_minor_string "${_tbb_version_minor_string}"
|
||||
- )
|
||||
- string(STRIP "${_tbb_version_minor_string}" Tbb_VERSION_MINOR)
|
||||
-
|
||||
- unset(_tbb_version_major_string)
|
||||
- unset(_tbb_version_minor_string)
|
||||
-
|
||||
- set(Tbb_VERSION ${Tbb_VERSION_MAJOR}.${Tbb_VERSION_MINOR})
|
||||
-endif()
|
||||
+ if(TBB_STATIC)
|
||||
+ set(TBB_STATIC_SUFFIX "_static")
|
||||
+ endif()
|
||||
+
|
||||
+ # Find each component
|
||||
+ foreach(_comp ${TBB_SEARCH_COMPOMPONENTS})
|
||||
+ if(";${TBB_FIND_COMPONENTS};tbb;" MATCHES ";${_comp};")
|
||||
|
||||
-# ------------------------------------------------------------------------
|
||||
-# Search for TBB lib DIR
|
||||
-# ------------------------------------------------------------------------
|
||||
+ # Search for the libraries
|
||||
+ find_library(TBB_${_comp}_LIBRARY_RELEASE ${_comp}${TBB_STATIC_SUFFIX}
|
||||
+ HINTS ${TBB_LIBRARY} ${TBB_SEARCH_DIR}
|
||||
+ PATHS ${TBB_DEFAULT_SEARCH_DIR} ENV LIBRARY_PATH
|
||||
+ PATH_SUFFIXES ${TBB_LIB_PATH_SUFFIX})
|
||||
|
||||
-set(_TBB_LIBRARYDIR_SEARCH_DIRS "")
|
||||
+ find_library(TBB_${_comp}_LIBRARY_DEBUG ${_comp}${TBB_STATIC_SUFFIX}_debug
|
||||
+ HINTS ${TBB_LIBRARY} ${TBB_SEARCH_DIR}
|
||||
+ PATHS ${TBB_DEFAULT_SEARCH_DIR} ENV LIBRARY_PATH
|
||||
+ PATH_SUFFIXES ${TBB_LIB_PATH_SUFFIX})
|
||||
|
||||
-# Append to _TBB_LIBRARYDIR_SEARCH_DIRS in priority order
|
||||
+ if(TBB_${_comp}_LIBRARY_DEBUG)
|
||||
+ list(APPEND TBB_LIBRARIES_DEBUG "${TBB_${_comp}_LIBRARY_DEBUG}")
|
||||
+ endif()
|
||||
+ if(TBB_${_comp}_LIBRARY_RELEASE)
|
||||
+ list(APPEND TBB_LIBRARIES_RELEASE "${TBB_${_comp}_LIBRARY_RELEASE}")
|
||||
+ endif()
|
||||
+ if(TBB_${_comp}_LIBRARY_${TBB_BUILD_TYPE} AND NOT TBB_${_comp}_LIBRARY)
|
||||
+ set(TBB_${_comp}_LIBRARY "${TBB_${_comp}_LIBRARY_${TBB_BUILD_TYPE}}")
|
||||
+ endif()
|
||||
|
||||
-set(_TBB_LIBRARYDIR_SEARCH_DIRS "")
|
||||
-list(APPEND _TBB_LIBRARYDIR_SEARCH_DIRS
|
||||
|
@ -1444,41 +1425,35 @@ index bdf9c81..ffdee03 100644
|
|||
- ${PC_Tbb_LIBRARY_DIRS}
|
||||
- ${SYSTEM_LIBRARY_PATHS}
|
||||
-)
|
||||
+ if(TBB_${_comp}_LIBRARY AND EXISTS "${TBB_${_comp}_LIBRARY}")
|
||||
+ set(TBB_${_comp}_FOUND TRUE)
|
||||
+ else()
|
||||
+ set(TBB_${_comp}_FOUND FALSE)
|
||||
+ endif()
|
||||
+ if(TBB_STATIC)
|
||||
+ set(TBB_STATIC_SUFFIX "_static")
|
||||
+ endif()
|
||||
|
||||
-set(TBB_PATH_SUFFIXES
|
||||
- lib64
|
||||
- lib
|
||||
-)
|
||||
+ # Mark internal variables as advanced
|
||||
+ mark_as_advanced(TBB_${_comp}_LIBRARY_RELEASE)
|
||||
+ mark_as_advanced(TBB_${_comp}_LIBRARY_DEBUG)
|
||||
+ mark_as_advanced(TBB_${_comp}_LIBRARY)
|
||||
+ # Find each component
|
||||
+ foreach(_comp ${TBB_SEARCH_COMPOMPONENTS})
|
||||
+ if(";${TBB_FIND_COMPONENTS};tbb;" MATCHES ";${_comp};")
|
||||
|
||||
-# platform branching
|
||||
+ endif()
|
||||
+ endforeach()
|
||||
+ unset(TBB_${_comp}_LIBRARY_DEBUG CACHE)
|
||||
+ unset(TBB_${_comp}_LIBRARY_RELEASE CACHE)
|
||||
|
||||
-if(UNIX)
|
||||
- list(INSERT TBB_PATH_SUFFIXES 0 lib/x86_64-linux-gnu)
|
||||
-endif()
|
||||
+ ##################################
|
||||
+ # Set compile flags and libraries
|
||||
+ ##################################
|
||||
+ # Search for the libraries
|
||||
+ find_library(TBB_${_comp}_LIBRARY_RELEASE ${_comp}${TBB_STATIC_SUFFIX}
|
||||
+ HINTS ${TBB_LIBRARY} ${TBB_SEARCH_DIR}
|
||||
+ PATHS ${TBB_DEFAULT_SEARCH_DIR} ENV LIBRARY_PATH
|
||||
+ PATH_SUFFIXES ${TBB_LIB_PATH_SUFFIX})
|
||||
|
||||
-if(APPLE)
|
||||
- if(TBB_FOR_CLANG)
|
||||
- list(INSERT TBB_PATH_SUFFIXES 0 lib/libc++)
|
||||
+ set(TBB_DEFINITIONS_RELEASE "")
|
||||
+ set(TBB_DEFINITIONS_DEBUG "TBB_USE_DEBUG=1")
|
||||
+
|
||||
+ if(TBB_LIBRARIES_${TBB_BUILD_TYPE})
|
||||
+ set(TBB_LIBRARIES "${TBB_LIBRARIES_${TBB_BUILD_TYPE}}")
|
||||
endif()
|
||||
- endif()
|
||||
-elseif(WIN32)
|
||||
- if(MSVC10)
|
||||
- set(TBB_VC_DIR vc10)
|
||||
|
@ -1498,45 +1473,26 @@ index bdf9c81..ffdee03 100644
|
|||
- else()
|
||||
- list(INSERT TBB_PATH_SUFFIXES 0 lib/intel64/gcc4.4)
|
||||
- endif()
|
||||
+
|
||||
+ if(NOT MSVC AND NOT TBB_LIBRARIES)
|
||||
+ set(TBB_LIBRARIES ${TBB_LIBRARIES_RELEASE})
|
||||
endif()
|
||||
- endif()
|
||||
-endif()
|
||||
+ find_library(TBB_${_comp}_LIBRARY_DEBUG ${_comp}${TBB_STATIC_SUFFIX}_debug
|
||||
+ HINTS ${TBB_LIBRARY} ${TBB_SEARCH_DIR}
|
||||
+ PATHS ${TBB_DEFAULT_SEARCH_DIR} ENV LIBRARY_PATH
|
||||
+ PATH_SUFFIXES ${TBB_LIB_PATH_SUFFIX})
|
||||
|
||||
-if(UNIX AND TBB_USE_STATIC_LIBS)
|
||||
- set(_TBB_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
- set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
||||
-endif()
|
||||
+ if (MSVC AND TBB_STATIC)
|
||||
+ set(TBB_DEFINITIONS __TBB_NO_IMPLICIT_LINKAGE)
|
||||
+ endif ()
|
||||
+
|
||||
+ unset (TBB_STATIC_SUFFIX)
|
||||
+
|
||||
+ find_package_handle_standard_args(TBB
|
||||
+ REQUIRED_VARS TBB_INCLUDE_DIRS TBB_LIBRARIES
|
||||
+ HANDLE_COMPONENTS
|
||||
+ VERSION_VAR TBB_VERSION)
|
||||
+
|
||||
+ ##################################
|
||||
+ # Create targets
|
||||
+ ##################################
|
||||
+
|
||||
+ if(NOT CMAKE_VERSION VERSION_LESS 3.0 AND TBB_FOUND)
|
||||
+ add_library(TBB::tbb UNKNOWN IMPORTED)
|
||||
+ set_target_properties(TBB::tbb PROPERTIES
|
||||
+ INTERFACE_INCLUDE_DIRECTORIES ${TBB_INCLUDE_DIRS}
|
||||
+ IMPORTED_LOCATION ${TBB_LIBRARIES})
|
||||
+ if(TBB_LIBRARIES_RELEASE AND TBB_LIBRARIES_DEBUG)
|
||||
+ set_target_properties(TBB::tbb PROPERTIES
|
||||
+ INTERFACE_COMPILE_DEFINITIONS "${TBB_DEFINITIONS};$<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:${TBB_DEFINITIONS_DEBUG}>;$<$<CONFIG:Release>:${TBB_DEFINITIONS_RELEASE}>"
|
||||
+ IMPORTED_LOCATION_DEBUG ${TBB_LIBRARIES_DEBUG}
|
||||
+ IMPORTED_LOCATION_RELWITHDEBINFO ${TBB_LIBRARIES_RELEASE}
|
||||
+ IMPORTED_LOCATION_RELEASE ${TBB_LIBRARIES_RELEASE}
|
||||
+ IMPORTED_LOCATION_MINSIZEREL ${TBB_LIBRARIES_RELEASE}
|
||||
+ )
|
||||
+ endif()
|
||||
+ if(TBB_${_comp}_LIBRARY_DEBUG)
|
||||
+ list(APPEND TBB_LIBRARIES_DEBUG "${TBB_${_comp}_LIBRARY_DEBUG}")
|
||||
+ endif()
|
||||
+ if(TBB_${_comp}_LIBRARY_RELEASE)
|
||||
+ list(APPEND TBB_LIBRARIES_RELEASE "${TBB_${_comp}_LIBRARY_RELEASE}")
|
||||
+ endif()
|
||||
+ if(TBB_${_comp}_LIBRARY_${TBB_BUILD_TYPE} AND NOT TBB_${_comp}_LIBRARY)
|
||||
+ set(TBB_${_comp}_LIBRARY "${TBB_${_comp}_LIBRARY_${TBB_BUILD_TYPE}}")
|
||||
+ endif()
|
||||
|
||||
-set(Tbb_LIB_COMPONENTS "")
|
||||
-
|
||||
|
@ -1559,19 +1515,84 @@ index bdf9c81..ffdee03 100644
|
|||
- # Extract the directory and apply the matched text (in brackets)
|
||||
- get_filename_component(Tbb_${COMPONENT}_DIR "${Tbb_${COMPONENT}_LIBRARY}" DIRECTORY)
|
||||
- set(Tbb_${COMPONENT}_LIBRARY "${Tbb_${COMPONENT}_DIR}/${CMAKE_MATCH_1}")
|
||||
- endif()
|
||||
+ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+ find_package(Threads QUIET REQUIRED)
|
||||
+ set_target_properties(TBB::tbb PROPERTIES INTERFACE_LINK_LIBRARIES "${CMAKE_DL_LIBS};Threads::Threads")
|
||||
+ if(TBB_${_comp}_LIBRARY AND EXISTS "${TBB_${_comp}_LIBRARY}")
|
||||
+ set(TBB_${_comp}_FOUND TRUE)
|
||||
+ else()
|
||||
+ set(TBB_${_comp}_FOUND FALSE)
|
||||
endif()
|
||||
+
|
||||
+ # Mark internal variables as advanced
|
||||
+ mark_as_advanced(TBB_${_comp}_LIBRARY_RELEASE)
|
||||
+ mark_as_advanced(TBB_${_comp}_LIBRARY_DEBUG)
|
||||
+ mark_as_advanced(TBB_${_comp}_LIBRARY)
|
||||
+
|
||||
endif()
|
||||
endif()
|
||||
- endif()
|
||||
+ endforeach()
|
||||
|
||||
- list(APPEND Tbb_LIB_COMPONENTS ${Tbb_${COMPONENT}_LIBRARY})
|
||||
-
|
||||
+ ##################################
|
||||
+ # Set compile flags and libraries
|
||||
+ ##################################
|
||||
|
||||
- if(Tbb_${COMPONENT}_LIBRARY)
|
||||
- set(TBB_${COMPONENT}_FOUND TRUE)
|
||||
- else()
|
||||
- set(TBB_${COMPONENT}_FOUND FALSE)
|
||||
+ set(TBB_DEFINITIONS_RELEASE "")
|
||||
+ set(TBB_DEFINITIONS_DEBUG "TBB_USE_DEBUG=1")
|
||||
+
|
||||
+ if(TBB_LIBRARIES_${TBB_BUILD_TYPE})
|
||||
+ set(TBB_LIBRARIES "${TBB_LIBRARIES_${TBB_BUILD_TYPE}}")
|
||||
+ endif()
|
||||
+
|
||||
+ if(NOT MSVC AND NOT TBB_LIBRARIES)
|
||||
+ set(TBB_LIBRARIES ${TBB_LIBRARIES_RELEASE})
|
||||
endif()
|
||||
-endforeach()
|
||||
|
||||
-if(UNIX AND TBB_USE_STATIC_LIBS)
|
||||
- set(CMAKE_FIND_LIBRARY_SUFFIXES ${_TBB_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
- unset(_TBB_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES)
|
||||
-endif()
|
||||
+ set(TBB_DEFINITIONS "")
|
||||
+ if (MSVC AND TBB_STATIC)
|
||||
+ set(TBB_DEFINITIONS __TBB_NO_IMPLICIT_LINKAGE)
|
||||
+ endif ()
|
||||
+
|
||||
+ unset (TBB_STATIC_SUFFIX)
|
||||
+
|
||||
+ find_package_handle_standard_args(TBB
|
||||
+ REQUIRED_VARS TBB_INCLUDE_DIRS TBB_LIBRARIES
|
||||
+ FAIL_MESSAGE "TBB library cannot be found. Consider set TBBROOT environment variable."
|
||||
+ HANDLE_COMPONENTS
|
||||
+ VERSION_VAR TBB_VERSION)
|
||||
+
|
||||
+ ##################################
|
||||
+ # Create targets
|
||||
+ ##################################
|
||||
+
|
||||
+ if(NOT CMAKE_VERSION VERSION_LESS 3.0 AND TBB_FOUND)
|
||||
+ add_library(TBB::tbb UNKNOWN IMPORTED)
|
||||
+ set_target_properties(TBB::tbb PROPERTIES
|
||||
+ INTERFACE_COMPILE_DEFINITIONS "${TBB_DEFINITIONS}"
|
||||
+ INTERFACE_LINK_LIBRARIES "Threads::Threads;${CMAKE_DL_LIBS}"
|
||||
+ INTERFACE_INCLUDE_DIRECTORIES ${TBB_INCLUDE_DIRS}
|
||||
+ IMPORTED_LOCATION ${TBB_LIBRARIES})
|
||||
+ if(TBB_LIBRARIES_RELEASE AND TBB_LIBRARIES_DEBUG)
|
||||
+ set_target_properties(TBB::tbb PROPERTIES
|
||||
+ INTERFACE_COMPILE_DEFINITIONS "${TBB_DEFINITIONS};$<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:${TBB_DEFINITIONS_DEBUG}>;$<$<CONFIG:Release>:${TBB_DEFINITIONS_RELEASE}>"
|
||||
+ IMPORTED_LOCATION_DEBUG ${TBB_LIBRARIES_DEBUG}
|
||||
+ IMPORTED_LOCATION_RELWITHDEBINFO ${TBB_LIBRARIES_RELEASE}
|
||||
+ IMPORTED_LOCATION_RELEASE ${TBB_LIBRARIES_RELEASE}
|
||||
+ IMPORTED_LOCATION_MINSIZEREL ${TBB_LIBRARIES_RELEASE}
|
||||
+ )
|
||||
+ endif()
|
||||
+ endif()
|
||||
|
||||
-# ------------------------------------------------------------------------
|
||||
-# Cache and set TBB_FOUND
|
||||
-# ------------------------------------------------------------------------
|
||||
+ mark_as_advanced(TBB_INCLUDE_DIRS TBB_LIBRARIES)
|
||||
+
|
||||
+ unset(TBB_ARCHITECTURE)
|
||||
|
@ -1588,18 +1609,8 @@ index bdf9c81..ffdee03 100644
|
|||
+ message(STATUS " TBB_LIBRARIES_DEBUG = ${TBB_LIBRARIES_DEBUG}")
|
||||
+ message(STATUS " TBB_DEFINITIONS_RELEASE = ${TBB_DEFINITIONS_RELEASE}")
|
||||
+ message(STATUS " TBB_LIBRARIES_RELEASE = ${TBB_LIBRARIES_RELEASE}")
|
||||
endif()
|
||||
-endforeach()
|
||||
+ endif()
|
||||
|
||||
-if(UNIX AND TBB_USE_STATIC_LIBS)
|
||||
- set(CMAKE_FIND_LIBRARY_SUFFIXES ${_TBB_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
- unset(_TBB_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES)
|
||||
-endif()
|
||||
-
|
||||
-# ------------------------------------------------------------------------
|
||||
-# Cache and set TBB_FOUND
|
||||
-# ------------------------------------------------------------------------
|
||||
-
|
||||
-include(FindPackageHandleStandardArgs)
|
||||
-find_package_handle_standard_args(TBB
|
||||
- FOUND_VAR TBB_FOUND
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Dependency report for PrusaSlicer
|
||||
## Possible dynamic linking on Linux
|
||||
* zlib: This should not be even mentioned in our cmake scripts but due to a bug in the system libraries of gtk it has to be linked to PrusaSlicer.
|
||||
* zlib: Strict dependency required from the system, linked dynamically. Many other libs depend on zlib.
|
||||
* wxWidgets: searches for wx-3.1 by default, but with cmake option `SLIC3R_WX_STABLE=ON` it will use wx-3.0 bundled with most distros.
|
||||
* libcurl
|
||||
* tbb
|
||||
|
@ -10,13 +10,13 @@
|
|||
* expat
|
||||
* openssl
|
||||
* nlopt
|
||||
* gtest
|
||||
* openvdb: This library depends on other libs, namely boost, zlib, openexr, blosc (not strictly), etc...
|
||||
|
||||
## External libraries in source tree
|
||||
* ad-mesh: Lots of customization, have to be bundled in the source tree.
|
||||
* avrdude: Like ad-mesh, many customization, need to be in the source tree.
|
||||
* clipper: An important library we have to have full control over it. We also have some slicer specific modifications.
|
||||
* glu-libtess: This is an extract of the mesa/glu library not oficially available as a package.
|
||||
* glu-libtess: This is an extract of the mesa/glu library not officially available as a package.
|
||||
* imgui: no packages for debian, author suggests using in the source tree
|
||||
* miniz: No packages, author suggests using in the source tree
|
||||
* qhull: libqhull-dev does not contain libqhullcpp => link errors. Until it is fixed, we will use the builtin version. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=925540
|
||||
|
@ -29,5 +29,6 @@
|
|||
* igl
|
||||
* nanosvg
|
||||
* agg
|
||||
* catch2: Only Arch has packages for catch2, other distros at most catch (v1.x). Being strictly header only, we bundle this in the source tree. Used for the unit-test suites.
|
||||
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Building PrusaSlicer on UNIX/Linux
|
||||
|
||||
PrusaSlicer uses the CMake build system and requires several dependencies.
|
||||
The dependencies can be listed in `deps/deps-linux.cmake`, although they don't necessarily need to be as recent
|
||||
The dependencies can be listed in `deps/deps-linux.cmake` and `deps/deps-unix-common.cmake`, although they don't necessarily need to be as recent
|
||||
as the versions listed - generally versions available on conservative Linux distros such as Debian stable or CentOS should suffice.
|
||||
|
||||
Perl is not required any more.
|
||||
|
|
|
@ -375,7 +375,7 @@ public:
|
|||
|
||||
for(unsigned idx = 0; idx < fixeditems.size(); ++idx) {
|
||||
Item& itm = fixeditems[idx];
|
||||
itm.markAsFixedInBin(0);
|
||||
itm.markAsFixedInBin(itm.binId());
|
||||
}
|
||||
|
||||
m_pck.configure(m_pconf);
|
||||
|
|
|
@ -331,15 +331,18 @@ public:
|
|||
|
||||
// Let the firmware back up the active speed override value.
|
||||
WipeTowerWriter& speed_override_backup()
|
||||
{
|
||||
m_gcode += "M220 B\n";
|
||||
{
|
||||
// This is only supported by Prusa at this point (https://github.com/prusa3d/PrusaSlicer/issues/3114)
|
||||
if (m_gcode_flavor == gcfMarlin)
|
||||
m_gcode += "M220 B\n";
|
||||
return *this;
|
||||
}
|
||||
|
||||
// Let the firmware restore the active speed override value.
|
||||
WipeTowerWriter& speed_override_restore()
|
||||
{
|
||||
m_gcode += "M220 R\n";
|
||||
if (m_gcode_flavor == gcfMarlin)
|
||||
m_gcode += "M220 R\n";
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
|
|
@ -424,14 +424,19 @@ int copy_file(const std::string &from, const std::string &to)
|
|||
static const auto perms = boost::filesystem::owner_read | boost::filesystem::owner_write | boost::filesystem::group_read | boost::filesystem::others_read; // aka 644
|
||||
|
||||
// Make sure the file has correct permission both before and after we copy over it.
|
||||
try {
|
||||
if (boost::filesystem::exists(target))
|
||||
boost::filesystem::permissions(target, perms);
|
||||
boost::filesystem::copy_file(source, target, boost::filesystem::copy_option::overwrite_if_exists);
|
||||
boost::filesystem::permissions(target, perms);
|
||||
} catch (std::exception & /* ex */) {
|
||||
// NOTE: error_code variants are used here to supress expception throwing.
|
||||
// Error code of permission() calls is ignored on purpose - if they fail,
|
||||
// the copy_file() function will fail appropriately and we don't want the permission()
|
||||
// calls to cause needless failures on permissionless filesystems (ie. FATs on SD cards etc.)
|
||||
// or when the target file doesn't exist.
|
||||
boost::system::error_code ec;
|
||||
boost::filesystem::permissions(target, perms, ec);
|
||||
boost::filesystem::copy_file(source, target, boost::filesystem::copy_option::overwrite_if_exists, ec);
|
||||
if (ec) {
|
||||
return -1;
|
||||
}
|
||||
boost::filesystem::permissions(target, perms, ec);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ target_include_directories(Catch2 INTERFACE ${CMAKE_CURRENT_LIST_DIR})
|
|||
add_library(Catch2::Catch2 ALIAS Catch2)
|
||||
include(Catch)
|
||||
|
||||
set(CATCH_EXTRA_ARGS "--durations yes" CACHE STRING "Extra arguments for catch2 test suites.")
|
||||
set(CATCH_EXTRA_ARGS "" CACHE STRING "Extra arguments for catch2 test suites.")
|
||||
|
||||
add_library(test_common INTERFACE)
|
||||
target_compile_definitions(test_common INTERFACE TEST_DATA_DIR=R"\(${TEST_DATA_DIR}\)" CATCH_CONFIG_FAST_COMPILE)
|
||||
|
|
54
tests/catch_main.hpp
Normal file
54
tests/catch_main.hpp
Normal file
|
@ -0,0 +1,54 @@
|
|||
#ifndef CATCH_MAIN
|
||||
#define CATCH_MAIN
|
||||
|
||||
#define CATCH_CONFIG_EXTERNAL_INTERFACES
|
||||
#define CATCH_CONFIG_MAIN
|
||||
#define CATCH_CONFIG_DEFAULT_REPORTER "verboseconsole"
|
||||
#include <catch2/catch.hpp>
|
||||
|
||||
namespace Catch {
|
||||
struct VerboseConsoleReporter : public ConsoleReporter {
|
||||
double duration = 0.;
|
||||
using ConsoleReporter::ConsoleReporter;
|
||||
|
||||
void testCaseStarting(TestCaseInfo const& _testInfo) override
|
||||
{
|
||||
Colour::use(Colour::Cyan);
|
||||
stream << "Testing ";
|
||||
Colour::use(Colour::None);
|
||||
stream << _testInfo.name << std::endl;
|
||||
ConsoleReporter::testCaseStarting(_testInfo);
|
||||
}
|
||||
|
||||
void sectionStarting(const SectionInfo &_sectionInfo) override
|
||||
{
|
||||
if (_sectionInfo.name != currentTestCaseInfo->name)
|
||||
stream << _sectionInfo.name << std::endl;
|
||||
|
||||
ConsoleReporter::sectionStarting(_sectionInfo);
|
||||
}
|
||||
|
||||
void sectionEnded(const SectionStats &_sectionStats) override {
|
||||
duration += _sectionStats.durationInSeconds;
|
||||
ConsoleReporter::sectionEnded(_sectionStats);
|
||||
}
|
||||
|
||||
void testCaseEnded(TestCaseStats const& stats) override
|
||||
{
|
||||
if (stats.totals.assertions.allOk()) {
|
||||
Colour::use(Colour::BrightGreen);
|
||||
stream << "Passed";
|
||||
Colour::use(Colour::None);
|
||||
stream << " in " << duration << " [seconds]\n" << std::endl;
|
||||
}
|
||||
|
||||
duration = 0.;
|
||||
ConsoleReporter::testCaseEnded(stats);
|
||||
}
|
||||
};
|
||||
|
||||
CATCH_REGISTER_REPORTER( "verboseconsole", VerboseConsoleReporter )
|
||||
|
||||
} // namespace Catch
|
||||
|
||||
#endif // CATCH_MAIN
|
|
@ -1,5 +1,5 @@
|
|||
#define CATCH_CONFIG_MAIN
|
||||
#include <catch2/catch.hpp>
|
||||
#include <catch_main.hpp>
|
||||
|
||||
TEST_CASE("Is example succesful", "[example]") {
|
||||
REQUIRE(true);
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
#define CATCH_CONFIG_MAIN
|
||||
#include <catch2/catch.hpp>
|
||||
#include <catch_main.hpp>
|
||||
|
||||
#include "libslic3r/libslic3r.h"
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
#define CATCH_CONFIG_MAIN
|
||||
#include <catch2/catch.hpp>
|
||||
#include <catch_main.hpp>
|
||||
|
||||
#include <fstream>
|
||||
|
||||
|
||||
#include <libnest2d/libnest2d.hpp>
|
||||
#include "printer_parts.hpp"
|
||||
//#include <libnest2d/geometry_traits_nfp.hpp>
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
#define CATCH_CONFIG_MAIN
|
||||
#include <catch2/catch.hpp>
|
||||
#include <catch_main.hpp>
|
||||
|
||||
#include "libslic3r/libslic3r.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
#define CATCH_CONFIG_MAIN
|
||||
#include <catch2/catch.hpp>
|
||||
#include <catch_main.hpp>
|
||||
|
||||
#include <unordered_set>
|
||||
#include <unordered_map>
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
#define CATCH_CONFIG_MAIN
|
||||
#include <catch2/catch.hpp>
|
||||
#include <catch_main.hpp>
|
||||
|
||||
#include "libslic3r/Time.hpp"
|
||||
|
||||
|
|
Loading…
Reference in a new issue