early-access version 2853

This commit is contained in:
pineappleEA
2022-07-23 03:01:36 +02:00
parent 1f2b5081b5
commit 1f111bb69c
8955 changed files with 418777 additions and 999 deletions

View File

@@ -0,0 +1,14 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 06f49a8..fdaaee7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -69,6 +69,9 @@ IF(COMMAND cmake_policy)
if(POLICY CMP0074)
cmake_policy(SET CMP0074 NEW)
endif()
+ if (POLICY CMP0001)
+ cmake_policy(SET CMP0001 OLD)
+ endif()
ENDIF(COMMAND cmake_policy)
MARK_AS_ADVANCED(CMAKE_BACKWARDS_COMPATIBILITY)

85
externals/vcpkg/ports/embree3/fix-path.patch vendored Executable file
View File

@@ -0,0 +1,85 @@
diff --git a/common/algorithms/CMakeLists.txt b/common/algorithms/CMakeLists.txt
index 680c3ec..fea4a37 100644
--- a/common/algorithms/CMakeLists.txt
+++ b/common/algorithms/CMakeLists.txt
@@ -20,8 +20,11 @@ SET_PROPERTY(TARGET algorithms APPEND PROPERTY COMPILE_FLAGS " ${FLAGS_LOWEST}")
# ideally we would use target_link_libraries to provide the algorithms target
# with the TBB include directory information. Howeve, this is only possible in
# very recent versions of TBB and therefore we use the target property instead
+if (0)
GET_TARGET_PROPERTY(tasking_include_dirs tasking INCLUDE_DIRECTORIES)
if (tasking_include_dirs)
TARGET_INCLUDE_DIRECTORIES(algorithms PUBLIC "${tasking_include_dirs}")
GET_TARGET_PROPERTY(algorithms_include_dirs algorithms INCLUDE_DIRECTORIES)
endif()
+endif()
+TARGET_LINK_LIBRARIES(algorithms PUBLIC tasking)
\ No newline at end of file
diff --git a/common/cmake/embree-config.cmake b/common/cmake/embree-config.cmake
index 2c08cd7..5087ca0 100644
--- a/common/cmake/embree-config.cmake
+++ b/common/cmake/embree-config.cmake
@@ -5,8 +5,6 @@ SET(EMBREE_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR}/@EMBREE_RELATIVE_ROOT_DIR@)
GET_FILENAME_COMPONENT(EMBREE_ROOT_DIR "${EMBREE_ROOT_DIR}" ABSOLUTE)
SET(EMBREE_INCLUDE_DIRS ${EMBREE_ROOT_DIR}/@CMAKE_INSTALL_INCLUDEDIR@)
-SET(EMBREE_LIBRARY ${EMBREE_ROOT_DIR}/@CMAKE_INSTALL_LIBDIR@/@EMBREE_LIBRARY_FULLNAME@)
-SET(EMBREE_LIBRARIES ${EMBREE_LIBRARY})
SET(EMBREE_VERSION @EMBREE_VERSION@)
SET(EMBREE_VERSION_MAJOR @EMBREE_VERSION_MAJOR@)
@@ -22,7 +20,6 @@ SET(EMBREE_ISA_AVX2 @EMBREE_ISA_AVX2@)
SET(EMBREE_ISA_AVX512 @EMBREE_ISA_AVX512@)
SET(EMBREE_ISA_AVX512SKX @EMBREE_ISA_AVX512@) # just for compatibility
-SET(EMBREE_BUILD_TYPE @CMAKE_BUILD_TYPE@)
SET(EMBREE_ISPC_SUPPORT @EMBREE_ISPC_SUPPORT@)
SET(EMBREE_STATIC_LIB @EMBREE_STATIC_LIB@)
SET(EMBREE_TUTORIALS @EMBREE_TUTORIALS@)
@@ -54,8 +51,6 @@ IF (EMBREE_STATIC_LIB)
INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/lexers-targets.cmake")
INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/tasking-targets.cmake")
- add_library(TBB::tbb SHARED IMPORTED)
- set_target_properties(TBB::tbb PROPERTIES IMPORTED_LOCATION "${EMBREE_ROOT_DIR}/@EMBREE_INSTALLED_TBB@")
ENDIF()
diff --git a/common/cmake/package.cmake b/common/cmake/package.cmake
index 5429436..8c89f5b 100644
--- a/common/cmake/package.cmake
+++ b/common/cmake/package.cmake
@@ -24,7 +24,7 @@ ENDIF()
# Install MSVC runtime
##############################################################
-IF (WIN32)
+IF (0)
SET(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP TRUE)
INCLUDE(InstallRequiredSystemLibraries)
LIST(FILTER CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS INCLUDE REGEX ".*msvcp[0-9]+\.dll|.*vcruntime[0-9]+\.dll|.*vcruntime[0-9]+_[0-9]+\.dll")
diff --git a/common/tasking/CMakeLists.txt b/common/tasking/CMakeLists.txt
index 3085096..258d24e 100644
--- a/common/tasking/CMakeLists.txt
+++ b/common/tasking/CMakeLists.txt
@@ -10,7 +10,7 @@ ELSEIF (TASKING_TBB)
if (NOT ${EMBREE_TBB_ROOT} STREQUAL "")
set(TBB_ROOT ${EMBREE_TBB_ROOT})
endif()
- FIND_PACKAGE(TBB REQUIRED tbb)
+ FIND_PACKAGE(TBB CONFIG REQUIRED tbb)
##############################################################
# Create tasking target and link against TBB. Also set include directory
@@ -18,10 +18,7 @@ ELSEIF (TASKING_TBB)
# with the TBB header files
##############################################################
ADD_LIBRARY(tasking STATIC taskschedulertbb.cpp)
- TARGET_LINK_LIBRARIES(tasking PUBLIC TBB)
- TARGET_INCLUDE_DIRECTORIES(tasking PUBLIC "${TBB_INCLUDE_DIRS}")
-
- include(installTBB)
+ TARGET_LINK_LIBRARIES(tasking PUBLIC TBB::tbb)
ELSEIF (TASKING_PPL)
ADD_LIBRARY(tasking STATIC taskschedulerppl.cpp)

View File

@@ -0,0 +1,26 @@
diff --git a/common/cmake/embree-config.cmake b/common/cmake/embree-config.cmake
index 5087ca0..fdf8135 100644
--- a/common/cmake/embree-config.cmake
+++ b/common/cmake/embree-config.cmake
@@ -52,6 +52,21 @@ IF (EMBREE_STATIC_LIB)
INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/tasking-targets.cmake")
+ IF(EMBREE_ISA_SSE42)
+ INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/embree_sse42-targets.cmake")
+ ENDIF()
+ IF(EMBREE_ISA_AVX)
+ INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/embree_avx-targets.cmake")
+ ENDIF()
+ IF(EMBREE_ISA_AVX2)
+ INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/embree_avx2-targets.cmake")
+ ENDIF()
+ IF(EMBREE_ISA_AVX512KNL)
+ INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/embree_avx512knl-targets.cmake")
+ ENDIF()
+ IF(EMBREE_ISA_AVX512SKX)
+ INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/embree_avx512skx-targets.cmake")
+ ENDIF()
ENDIF()
INCLUDE("${EMBREE_ROOT_DIR}/@EMBREE_CMAKEEXPORT_DIR@/embree-targets.cmake")

View File

@@ -0,0 +1,18 @@
diff --git a/common/cmake/package.cmake b/common/cmake/package.cmake
index 8c89f5b..55cb2af 100644
--- a/common/cmake/package.cmake
+++ b/common/cmake/package.cmake
@@ -114,10 +114,10 @@ ENDIF()
# SET(EMBREE_CMAKEEXPORT_DIR "cmake")
# SET(EMBREE_RELATIVE_ROOT_DIR ".")
#ELSE()
-SET(EMBREE_CMAKECONFIG_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/embree-${EMBREE_VERSION}")
-SET(EMBREE_CMAKEEXPORT_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/embree-${EMBREE_VERSION}")
+SET(EMBREE_CMAKECONFIG_DIR "share/embree")
+SET(EMBREE_CMAKEEXPORT_DIR "share/embree")
IF (WIN32)
- SET(EMBREE_RELATIVE_ROOT_DIR "../../../")
+ SET(EMBREE_RELATIVE_ROOT_DIR "../..")
ELSE()
FILE(RELATIVE_PATH EMBREE_RELATIVE_ROOT_DIR "/${EMBREE_CMAKECONFIG_DIR}" "/")
ENDIF()

77
externals/vcpkg/ports/embree3/portfile.cmake vendored Executable file
View File

@@ -0,0 +1,77 @@
set(EMBREE3_VERSION 3.12.2)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO embree/embree
REF v${EMBREE3_VERSION}
SHA512 a63b483a92f4653e07a21ed3b545d86003295e0aacd8ec7a40ee72bad7bb70c6ea019af511e78c5c598336b162d53e296e9c87150c0adce6463b058e7a5394d4
HEAD_REF master
PATCHES
fix-path.patch
fix-static-usage.patch
cmake_policy.patch
fix-targets-file-not-found.patch
)
string(COMPARE EQUAL ${VCPKG_LIBRARY_LINKAGE} static EMBREE_STATIC_LIB)
string(COMPARE EQUAL ${VCPKG_CRT_LINKAGE} static EMBREE_STATIC_RUNTIME)
if (NOT VCPKG_TARGET_IS_OSX)
if ("avx512" IN_LIST FEATURES)
message(FATAL_ERROR "Microsoft Visual C++ Compiler does not support feature avx512 officially.")
endif()
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
avx EMBREE_ISA_AVX
avx2 EMBREE_ISA_AVX2
avx512 EMBREE_ISA_AVX512
sse2 EMBREE_ISA_SSE2
sse42 EMBREE_ISA_SSE42
)
elseif (VCPKG_LIBRARY_LINKAGE STREQUAL static)
list(LENGTH FEATURES FEATURE_COUNT)
if (FEATURE_COUNT GREATER 2)
message(WARNING [[
Using Embree as static library is not supported with AppleClang >= 9.0 when multiple ISAs are selected.
Please install embree3 with only one feature using command "./vcpkg install embree3[core,FEATURE_NAME]"
Only set feature avx automaticlly.
]])
set(FEATURE_OPTIONS
-DEMBREE_ISA_AVX=ON
-DEMBREE_ISA_AVX2=OFF
-DEMBREE_ISA_AVX512=OFF
-DEMBREE_ISA_SSE2=OFF
-DEMBREE_ISA_SSE42=OFF
)
endif()
endif()
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
DISABLE_PARALLEL_CONFIGURE
PREFER_NINJA
OPTIONS ${FEATURE_OPTIONS}
-DEMBREE_ISPC_SUPPORT=OFF
-DEMBREE_TUTORIALS=OFF
-DEMBREE_STATIC_RUNTIME=${EMBREE_STATIC_RUNTIME}
-DEMBREE_STATIC_LIB=${EMBREE_STATIC_LIB}
)
vcpkg_install_cmake()
vcpkg_copy_pdbs()
vcpkg_fixup_cmake_targets(CONFIG_PATH share/embree TARGET_PATH share/embree)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
endif()
if(APPLE)
file(REMOVE "${CURRENT_PACKAGES_DIR}/uninstall.command" "${CURRENT_PACKAGES_DIR}/debug/uninstall.command")
endif()
file(RENAME "${CURRENT_PACKAGES_DIR}/share/doc" "${CURRENT_PACKAGES_DIR}/share/${PORT}/")
file(COPY "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)

4
externals/vcpkg/ports/embree3/usage vendored Executable file
View File

@@ -0,0 +1,4 @@
The package embree3 provides CMake targets:
find_package(embree 3 CONFIG REQUIRED)
target_link_libraries(main PRIVATE embree)

33
externals/vcpkg/ports/embree3/vcpkg.json vendored Executable file
View File

@@ -0,0 +1,33 @@
{
"name": "embree3",
"version-semver": "3.12.2",
"port-version": 2,
"description": "High Performance Ray Tracing Kernels.",
"homepage": "https://github.com/embree/embree",
"dependencies": [
"tbb"
],
"default-features": [
"avx",
"avx2",
"sse2",
"sse42"
],
"features": {
"avx": {
"description": "Enables AVX ISA."
},
"avx2": {
"description": "Enables AVX2 ISA."
},
"avx512": {
"description": "Enables AVX512 ISA."
},
"sse2": {
"description": "Enables SSE2 ISA."
},
"sse42": {
"description": "Enables SSE4.2 ISA."
}
}
}