diff options
author | Caleb Maclennan | 2023-06-19 23:40:18 +0300 |
---|---|---|
committer | Caleb Maclennan | 2023-06-19 23:40:18 +0300 |
commit | 4e7ced76a35350d504e5df0ef8297a0e1794fb7c (patch) | |
tree | 3ebe104ce93faaf4aab39bad675f02f8aaf020ba | |
parent | 3f3179b7d02f6143ee095b6c928dd7c227424e4c (diff) | |
download | aur-4e7ced76a35350d504e5df0ef8297a0e1794fb7c.tar.gz |
upgpkg: moonray 1.1.0.0-0
Apply more patch action submitted by adro79, doesn't build yet but progress
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 29 | ||||
-rw-r--r-- | moonray.patch | 912 | ||||
-rw-r--r-- | optix.patch | 13 |
4 files changed, 954 insertions, 10 deletions
@@ -16,11 +16,12 @@ pkgbase = moonray makedepends = qt5-base makedepends = qt5-script depends = curl + depends = clang depends = lua53 + depends = optix depends = python optdepends = usd: hydra plugins and USD geometry objects source = openmoonray::git+https://github.com/dreamworksanimation/openmoonray#tag=v1.1.0.0 - source = CMakePresets.json source = openmoonray+arras+arras4_core::git+https://github.com/dreamworksanimation/arras4_core.git#commit=2157c5103156f652b0966f23e32b97597b7ff16f source = openmoonray+arras+arras_render::git+https://github.com/dreamworksanimation/arras_render.git#commit=729c4039a72e2dacb810c17fd529eaa0308435f6 source = openmoonray+arras+distributed+arras4_node::git+https://github.com/dreamworksanimation/arras4_node.git#commit=b02183bcab92f52d3041c254922c24fe9fc39e54 @@ -39,8 +40,9 @@ pkgbase = moonray source = openmoonray+moonray+moonshine_usd::git+https://github.com/dreamworksanimation/moonshine_usd.git#commit=efe09ee4b75d678005061d121cf832fc3f2d9a9a source = openmoonray+moonray+render_profile_viewer::git+https://github.com/dreamworksanimation/render_profile_viewer.git#commit=44bb5d66aa5295cc1176823d04a12cc4cd009e76 source = openmoonray+moonray+scene_rdl2::git+https://github.com/dreamworksanimation/scene_rdl2.git#commit=fb0c969026b1e5a3c16cc75ee3ec9ff7df85ad98 + source = moonray.patch + source = optix.patch sha256sums = SKIP - sha256sums = afbd3e037a742920c5a49f3bbc70d9f488e6aaad6249db47f750e2a976d0e9b3 sha256sums = SKIP sha256sums = SKIP sha256sums = SKIP @@ -59,12 +61,16 @@ pkgbase = moonray sha256sums = SKIP sha256sums = SKIP sha256sums = SKIP + sha256sums = a16bdd73ee1abcc568da23db770af7ab2adc99bb117f24d6ab9a8d6f44008a15 + sha256sums = 430856c068bb52957680d4bf77dee277c270ed326ac32632fd7af62d18ba699d pkgname = moonray pkgname = moonray-gui depends = curl + depends = clang depends = lua53 + depends = optix depends = python depends = moonray depends = qt6-base @@ -1,6 +1,9 @@ # Maintainer: Caleb Maclennan <caleb@alerque.com> # Contributor: adro79 <adro79@users.noreply.github.com> +_tbbmajorver=2020 +_tbbpkgminorver=2 + pkgbase=moonray pkgname=($pkgbase moonray-gui) _pkgname=openmoonray @@ -12,7 +15,9 @@ license=(Apache2) url="https://$_pkgname.org" _url="https://github.com/dreamworksanimation" depends=(curl + clang lua53 + optix python) makedepends=(boost cmake @@ -26,7 +31,6 @@ makedepends=(boost qt5-script) optdepends=('usd: hydra plugins and USD geometry objects') source=("$_pkgname::git+$_url/$_pkgname#tag=v$pkgver" - CMakePresets.json "$_pkgname+arras+arras4_core::git+$_url/arras4_core.git#commit=2157c5103156f652b0966f23e32b97597b7ff16f" "$_pkgname+arras+arras_render::git+$_url/arras_render.git#commit=729c4039a72e2dacb810c17fd529eaa0308435f6" "$_pkgname+arras+distributed+arras4_node::git+$_url/arras4_node.git#commit=b02183bcab92f52d3041c254922c24fe9fc39e54" @@ -44,9 +48,10 @@ source=("$_pkgname::git+$_url/$_pkgname#tag=v$pkgver" "$_pkgname+moonray+moonshine::git+$_url/moonshine.git#commit=faa2940107c04676d4dd2537a8c60b62a2ec504b" "$_pkgname+moonray+moonshine_usd::git+$_url/moonshine_usd.git#commit=efe09ee4b75d678005061d121cf832fc3f2d9a9a" "$_pkgname+moonray+render_profile_viewer::git+$_url/render_profile_viewer.git#commit=44bb5d66aa5295cc1176823d04a12cc4cd009e76" - "$_pkgname+moonray+scene_rdl2::git+$_url/scene_rdl2.git#commit=fb0c969026b1e5a3c16cc75ee3ec9ff7df85ad98") + "$_pkgname+moonray+scene_rdl2::git+$_url/scene_rdl2.git#commit=fb0c969026b1e5a3c16cc75ee3ec9ff7df85ad98" + "moonray.patch" + "optix.patch") sha256sums=('SKIP' - 'afbd3e037a742920c5a49f3bbc70d9f488e6aaad6249db47f750e2a976d0e9b3' 'SKIP' 'SKIP' 'SKIP' @@ -64,7 +69,9 @@ sha256sums=('SKIP' 'SKIP' 'SKIP' 'SKIP' - 'SKIP') + 'SKIP' + 'a16bdd73ee1abcc568da23db770af7ab2adc99bb117f24d6ab9a8d6f44008a15' + '430856c068bb52957680d4bf77dee277c270ed326ac32632fd7af62d18ba699d') # git submodule status | cut -c2- | awk '{s=$2; gsub("/", "+", s); gsub(".*/", "", $2); print "\"$_pkgname+" s "::git+$_url/" $2 ".git#commit=" $1 "\"" }' @@ -81,13 +88,19 @@ prepare() { esac done git -c protocol.file.allow=always submodule update - cp ../CMakePresets.json . +# cp ../CMakePresets.json . + patch -Np1 -i "$srcdir/moonray.patch" + patch -Np1 -i "$srcdir/optix.patch" -d moonray/mcrt_denoise/lib/denoiser } build() { - cd "$_pkgname" - cmake --preset arch-package - cmake --build --preset arch-package -- -j 8 + cd "${srcdir}" + export CC=clang + export CXX=clang++ + mkdir -p build + CMAKE_PREFIX_PATH=/usr/lib/cmake/OpenImageIO:/opt/optix cmake -S openmoonray -B build + make -C build + make install -C build } package_moonray() { diff --git a/moonray.patch b/moonray.patch new file mode 100644 index 000000000000..5a76ea7c1b85 --- /dev/null +++ b/moonray.patch @@ -0,0 +1,912 @@ +Submodule arras/arras4_core contains modified content +diff --git a/arras/arras4_core/arras4_client/lib/log_client/LogClient.cc b/arras/arras4_core/arras4_client/lib/log_client/LogClient.cc +index b1aa0c7..90d171b 100644 +--- a/arras/arras4_core/arras4_client/lib/log_client/LogClient.cc ++++ b/arras/arras4_core/arras4_client/lib/log_client/LogClient.cc +@@ -372,7 +372,7 @@ LogClient::objectToLogRecords(std::unique_ptr<api::Object> obj) + if (content.isArray()) { + + // For each object in the array make a log record +- for (Json::Value::iterator i = content.begin(); i != content.end(); ++i) { ++ for (Json::Value::const_iterator i = content.begin(); i != content.end(); ++i) { + + const api::Object& item = *i; + if (objectIsLogRecord(item)) { +diff --git a/arras/arras4_core/arras4_core_impl/cmd/execComp/CMakeLists.txt b/arras/arras4_core/arras4_core_impl/cmd/execComp/CMakeLists.txt +index 03f56c5..da2d1f1 100644 +--- a/arras/arras4_core/arras4_core_impl/cmd/execComp/CMakeLists.txt ++++ b/arras/arras4_core/arras4_core_impl/cmd/execComp/CMakeLists.txt +@@ -26,6 +26,7 @@ target_link_libraries(${CmdName} + Boost::filesystem + Libatomic::Libatomic + pthread ++ jsoncpp + ) + + # prevent use of crash reporter since it isn't yet supported +diff --git a/arras/arras4_core/arras4_core_impl/cmd/msgInfo/main.cc b/arras/arras4_core/arras4_core_impl/cmd/msgInfo/main.cc +index f505fca..9206bf3 100644 +--- a/arras/arras4_core/arras4_core_impl/cmd/msgInfo/main.cc ++++ b/arras/arras4_core/arras4_core_impl/cmd/msgInfo/main.cc +@@ -54,7 +54,7 @@ void readMessageHeader(const std::string& filepath, + std::cerr << "failed to stat file " << filepath << std::endl; + return; + } +- long long size = stat_buf.st_size; // Json::Int64 = long long ++ long size = stat_buf.st_size; // Json::Int64 = long long + + FileDataSource fds(filepath); + +diff --git a/arras/arras4_core/arras4_core_impl/lib/computation_impl/CMakeLists.txt b/arras/arras4_core/arras4_core_impl/lib/computation_impl/CMakeLists.txt +index ffeab6f..abc3f08 100644 +--- a/arras/arras4_core/arras4_core_impl/lib/computation_impl/CMakeLists.txt ++++ b/arras/arras4_core/arras4_core_impl/lib/computation_impl/CMakeLists.txt +@@ -37,6 +37,7 @@ target_link_libraries(${LibName} + ${PROJECT_NAME}::chunking + ${PROJECT_NAME}::core_messages + ${PROJECT_NAME}::network ++ jsoncpp + dl + ) + +diff --git a/arras/arras4_core/arras4_core_impl/lib/shared_impl/ThreadsafeQueue.h b/arras/arras4_core/arras4_core_impl/lib/shared_impl/ThreadsafeQueue.h +index 39cdc64..1833cc1 100644 +--- a/arras/arras4_core/arras4_core_impl/lib/shared_impl/ThreadsafeQueue.h ++++ b/arras/arras4_core/arras4_core_impl/lib/shared_impl/ThreadsafeQueue.h +@@ -4,6 +4,7 @@ + #ifndef __ARRAS4_THREADSAFE_QUEUEH__ + #define __ARRAS4_THREADSAFE_QUEUEH__ + ++#include <string> + #include <mutex> + #include <condition_variable> + #include <queue> +diff --git a/arras/arras4_core/arras4_log/lib/arras4_log/SyslogLogger.cc b/arras/arras4_core/arras4_log/lib/arras4_log/SyslogLogger.cc +index 3f5a648..8b59e0f 100644 +--- a/arras/arras4_core/arras4_log/lib/arras4_log/SyslogLogger.cc ++++ b/arras/arras4_core/arras4_log/lib/arras4_log/SyslogLogger.cc +@@ -33,7 +33,7 @@ static int sPriorities[] = { + + void SyslogLogger::log(Level level, const char *message) + { +- syslog(sPriorities[level], message); ++ syslog(sPriorities[level], "%s", message); + } + + } +diff --git a/arras/arras4_core/arras4_network/lib/httpserver/HttpServer.cc b/arras/arras4_core/arras4_network/lib/httpserver/HttpServer.cc +index 44e4144..f124f2b 100644 +--- a/arras/arras4_core/arras4_network/lib/httpserver/HttpServer.cc ++++ b/arras/arras4_core/arras4_network/lib/httpserver/HttpServer.cc +@@ -319,6 +319,7 @@ HttpServer::HttpServer(unsigned short aListenPort, + + ARRAS_SOCKET socket = createListenSocket(mPort); + ++/* + if (!certData.empty() && !keyData.empty()) { + flags |= MHD_USE_SSL; + +@@ -380,6 +381,7 @@ HttpServer::HttpServer(unsigned short aListenPort, + ); + + } ++*/ + + if (!mDaemon) { + std::stringstream ss; +@@ -418,10 +420,10 @@ void + HttpServer::_prepare(HttpServerRequest& aReq, MHD_Connection* aConn) + { + // headers... +- MHD_get_connection_values(aConn, MHD_HEADER_KIND, key_value_iterator, &aReq); ++ // MHD_get_connection_values(aConn, MHD_HEADER_KIND, key_value_iterator, &aReq); + + // query params... +- MHD_get_connection_values(aConn, MHD_GET_ARGUMENT_KIND, key_value_iterator, &aReq); ++ // MHD_get_connection_values(aConn, MHD_GET_ARGUMENT_KIND, key_value_iterator, &aReq); + } + + } +diff --git a/arras/arras4_core/arras4_test/cmd/testClient/Data.cc b/arras/arras4_core/arras4_test/cmd/testClient/Data.cc +index a8c6fac..40df394 100644 +--- a/arras/arras4_core/arras4_test/cmd/testClient/Data.cc ++++ b/arras/arras4_core/arras4_test/cmd/testClient/Data.cc +@@ -231,8 +231,8 @@ getSessions( + std::string nodeId = assignmentJson["nodeId"].asString(); + // most of the node information is redundant + const Json::Value computations = assignmentJson["config"]["computations"]; +- for (Json::Value::iterator iter = computations.begin(); iter != computations.end(); ++iter) { +- Json::ValueIterator::reference computationJson = *iter; ++ for (auto iter = computations.begin(); iter != computations.end(); ++iter) { ++ auto computationJson = *iter; + Computation computation; + computation.mId = iter.key().asString(); + if (computation.mId == "(client)") continue; +diff --git a/arras/arras4_core/arras4_test/cmd/testClient/main.cc b/arras/arras4_core/arras4_test/cmd/testClient/main.cc +index 5e829c2..7d8f802 100644 +--- a/arras/arras4_core/arras4_test/cmd/testClient/main.cc ++++ b/arras/arras4_core/arras4_test/cmd/testClient/main.cc +@@ -117,7 +117,7 @@ subset(const Json::Value& aSubset, const Json::Value& aSuperset, + case Json::objectValue: + { + unsigned int index = 0; +- Json::ValueIterator iter = aSubset.begin(); ++ auto iter = aSubset.begin(); + while (iter != aSubset.end()) { + const char* memberName = iter.memberName(); + std::string name = aVarName + "." + iter.memberName(); +diff --git a/arras/arras4_core/cmake/ArrasCoreCompileDefinitions.cmake b/arras/arras4_core/cmake/ArrasCoreCompileDefinitions.cmake +index d0c667f..5f402d2 100644 +--- a/arras/arras4_core/cmake/ArrasCoreCompileDefinitions.cmake ++++ b/arras/arras4_core/cmake/ArrasCoreCompileDefinitions.cmake +@@ -23,7 +23,7 @@ function(ArrasCore_cxx_compile_definitions target) + + PUBLIC + __AVX__ +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +Submodule arras/arras_render contains modified content +diff --git a/arras/arras_render/cmake/ArrasRenderCompileDefinitions.cmake b/arras/arras_render/cmake/ArrasRenderCompileDefinitions.cmake +index c455f49..d395152 100644 +--- a/arras/arras_render/cmake/ArrasRenderCompileDefinitions.cmake ++++ b/arras/arras_render/cmake/ArrasRenderCompileDefinitions.cmake +@@ -16,7 +16,7 @@ function(ArrasRender_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +Submodule arras/distributed/arras4_node contains modified content +diff --git a/arras/distributed/arras4_node/cmake/ArrasNodeCompileDefinitions.cmake b/arras/distributed/arras4_node/cmake/ArrasNodeCompileDefinitions.cmake +index b1619d9..a14c020 100644 +--- a/arras/distributed/arras4_node/cmake/ArrasNodeCompileDefinitions.cmake ++++ b/arras/distributed/arras4_node/cmake/ArrasNodeCompileDefinitions.cmake +@@ -15,7 +15,7 @@ function(ArrasNode_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/arras/distributed/arras4_node/cmd/node/ArrasNode.cc b/arras/distributed/arras4_node/cmd/node/ArrasNode.cc +index 168e230..ed2b09a 100644 +--- a/arras/distributed/arras4_node/cmd/node/ArrasNode.cc ++++ b/arras/distributed/arras4_node/cmd/node/ArrasNode.cc +@@ -685,7 +685,7 @@ ArrasNode::updateTags(api::ObjectConstRef tags) + + // verify tags + api::Object current = mNodeInfo["tags"]; +- for (api::ObjectIterator it = tags.begin(); ++ for (auto it = tags.begin(); + it != tags.end(); ++it) { + current[it.memberName()] = *it; + } +@@ -716,7 +716,7 @@ ArrasNode::deleteTags(api::ObjectConstRef tags) + + // verify tags + api::Object current = mNodeInfo["tags"]; +- for (api::ObjectIterator it = tags.begin(); ++ for (auto it = tags.begin(); + it != tags.end(); ++it) { + if ((*it).isString() && current.isMember((*it).asString())) { + current.removeMember((*it).asString()); +diff --git a/arras/distributed/arras4_node/lib/session/Computation.h b/arras/distributed/arras4_node/lib/session/Computation.h +index cfe7e21..ba9e249 100644 +--- a/arras/distributed/arras4_node/lib/session/Computation.h ++++ b/arras/distributed/arras4_node/lib/session/Computation.h +@@ -62,7 +62,7 @@ private: + impl::ExecutorHeartbeat::ConstPtr mLastHeartbeat; + float mCpuUsage5SecsMax{0}; + float mCpuUsage60SecsMax{0}; +- unsigned long long mMemoryUsageBytesMax{0}; ++ unsigned long mMemoryUsageBytesMax{0}; + long mLastSentMessagesSecs{0}; + int mLastSentMessagesMicroSecs{0}; + long mLastReceivedMessagesSecs{0}; +Submodule cmake_modules contains modified content +diff --git a/cmake_modules/cmake/FindMkl.cmake b/cmake_modules/cmake/FindMkl.cmake +index 4c10535..28cae53 100644 +--- a/cmake_modules/cmake/FindMkl.cmake ++++ b/cmake_modules/cmake/FindMkl.cmake +@@ -5,7 +5,7 @@ + # + find_path(Mkl_INCLUDE_DIR + NAMES mkl.h +- HINTS $ENV{MKL_ROOT}/include /usr/local/include) ++ HINTS $ENV{MKL_ROOT}/include /usr/include/mkl /usr/local/include) + + find_library(Mkl_core_LIBRARY + NAMES mkl_core +diff --git a/cmake_modules/cmake/MoonrayDso.cmake b/cmake_modules/cmake/MoonrayDso.cmake +index a4f6704..1133253 100644 +--- a/cmake_modules/cmake/MoonrayDso.cmake ++++ b/cmake_modules/cmake/MoonrayDso.cmake +@@ -57,7 +57,8 @@ function(Moonray_dso_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ # --werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +@@ -85,7 +86,7 @@ function(Moonray_dso_cxx_compile_definitions target) + target_compile_definitions(${target} + PRIVATE + __AVX__ # TODO: add comment +- _GLIBCXX_USE_CXX11_ABI=0 # TODO: add comment ++ _GLIBCXX_USE_CXX11_ABI=1 # TODO: add comment + BOOST_FILESYSTEM_VERSION=3 # TODO: add comment + DWA_BOOST_VERSION=1073000 # TODO: add comment + OPENVDB_USE_BLOSC # TODO: Move this to where it is needed? +diff --git a/moonray/hydra/cmake/HdMoonrayCompileDefinitions.cmake b/moonray/hydra/cmake/HdMoonrayCompileDefinitions.cmake +index c5088eb..4a3e516 100644 +--- a/moonray/hydra/cmake/HdMoonrayCompileDefinitions.cmake ++++ b/moonray/hydra/cmake/HdMoonrayCompileDefinitions.cmake +@@ -13,7 +13,7 @@ function(HdMoonray_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/hydra/cmake/HdMoonrayCompileOptions.cmake b/moonray/hydra/cmake/HdMoonrayCompileOptions.cmake +index 40560a7..5dfefe9 100644 +--- a/moonray/hydra/cmake/HdMoonrayCompileOptions.cmake ++++ b/moonray/hydra/cmake/HdMoonrayCompileOptions.cmake +@@ -78,7 +78,8 @@ function(Moonray_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ # --werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +Submodule moonray/hydra/hdMoonray contains modified content +diff --git a/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileDefinitions.cmake b/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileDefinitions.cmake +index d7081b7..744d7a6 100644 +--- a/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileDefinitions.cmake ++++ b/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileDefinitions.cmake +@@ -16,7 +16,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + + PUBLIC + __AVX__ +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileOptions.cmake b/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileOptions.cmake +index 4d98ea7..8682bbc 100644 +--- a/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileOptions.cmake ++++ b/moonray/hydra/hdMoonray/cmake/HdMoonrayCompileOptions.cmake +@@ -78,7 +78,8 @@ function(${PROJECT_NAME}_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ # --werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +diff --git a/moonray/hydra/hdMoonray/src/RendererPlugin.cc b/moonray/hydra/hdMoonray/src/RendererPlugin.cc +index b0e3310..6f1019a 100644 +--- a/moonray/hydra/hdMoonray/src/RendererPlugin.cc ++++ b/moonray/hydra/hdMoonray/src/RendererPlugin.cc +@@ -25,7 +25,7 @@ public: + delete renderDelegate; + } + +- bool IsSupported() const override { ++ bool IsSupported(bool gpuEnabled = true) const override { + return true; + } + +Submodule moonray/mcrt_denoise contains modified content +diff --git a/moonray/mcrt_denoise/cmake/McrtDenoiseCompileDefinitions.cmake b/moonray/mcrt_denoise/cmake/McrtDenoiseCompileDefinitions.cmake +index 070e0be..ec77732 100644 +--- a/moonray/mcrt_denoise/cmake/McrtDenoiseCompileDefinitions.cmake ++++ b/moonray/mcrt_denoise/cmake/McrtDenoiseCompileDefinitions.cmake +@@ -23,7 +23,7 @@ function(McrtDenoise_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonray/cmake/MoonrayCompileDefinitions.cmake b/moonray/moonray/cmake/MoonrayCompileDefinitions.cmake +index 4bfed25..a7c9669 100644 +--- a/moonray/moonray/cmake/MoonrayCompileDefinitions.cmake ++++ b/moonray/moonray/cmake/MoonrayCompileDefinitions.cmake +@@ -27,7 +27,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + + PUBLIC + __AVX__ +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + +diff --git a/moonray/moonray/cmake/MoonrayCompileOptions.cmake b/moonray/moonray/cmake/MoonrayCompileOptions.cmake +index d6e2af7..fee218b 100644 +--- a/moonray/moonray/cmake/MoonrayCompileOptions.cmake ++++ b/moonray/moonray/cmake/MoonrayCompileOptions.cmake +@@ -66,7 +66,8 @@ function(${PROJECT_NAME}_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ #--werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +diff --git a/moonray/moonray/lib/deepfile/DcxImageFormat.h b/moonray/moonray/lib/deepfile/DcxImageFormat.h +index 5aaf284..f9fbdee 100644 +--- a/moonray/moonray/lib/deepfile/DcxImageFormat.h ++++ b/moonray/moonray/lib/deepfile/DcxImageFormat.h +@@ -7,7 +7,7 @@ + #include "DcxAPI.h" + + #include <OpenEXR/ImfHeader.h> +-#include <OpenEXR/ImathMatrix.h> ++#include <Imath/ImathMatrix.h> + + #include <string> + #include <iostream> +diff --git a/moonray/moonray/lib/deepfile/DcxPixel.h b/moonray/moonray/lib/deepfile/DcxPixel.h +index 6d4d4a7..5e972a8 100644 +--- a/moonray/moonray/lib/deepfile/DcxPixel.h ++++ b/moonray/moonray/lib/deepfile/DcxPixel.h +@@ -17,7 +17,7 @@ + // this is coming from OpenEXR/half.h... + # pragma warning(disable:1572) + #endif +-#include <OpenEXR/half.h> // For Pixelh ++#include <Imath/half.h> // For Pixelh + + #include <string.h> // for memset in some compilers + #include <iostream> +diff --git a/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.ispc b/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.ispc +index 62f84f8..b33c05e 100644 +--- a/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.ispc ++++ b/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.ispc +@@ -77,7 +77,7 @@ Intersection_adaptNormal(const varying Intersection &isect, const varying Vec3f + varying Vec3f + Intersection_adaptToonNormal(const varying Intersection &isect, const varying Vec3f &Ns) + { +- if (!Flags_get(isect.mFlags, (uint32_t)INTERSECTION_FLAGS_USE_ADAPT_NORMAL)) { ++ if (!Flags_get(isect.mFlags, (uniform uint32_t)INTERSECTION_FLAGS_USE_ADAPT_NORMAL)) { + return Ns; + } + return Intersection_adaptNormal(isect, Ns); +diff --git a/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.isph b/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.isph +index a5ac249..0dee9fa 100644 +--- a/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.isph ++++ b/moonray/moonray/lib/rendering/bvh/shading/ispc/Intersection.isph +@@ -166,7 +166,7 @@ inline void + setUseAdaptNormal(varying Intersection * uniform me, uniform bool useAdaptNormal) + + { +- Flags_set(&(me->mFlags), (uint32_t)INTERSECTION_FLAGS_USE_ADAPT_NORMAL, useAdaptNormal); ++ Flags_set(&(me->mFlags), (uniform uint32_t)INTERSECTION_FLAGS_USE_ADAPT_NORMAL, useAdaptNormal); + } + varying Vec3f Intersection_adaptNormal(const varying Intersection &isect, const varying Vec3f &Ns); + varying Vec3f Intersection_adaptToonNormal(const varying Intersection &isect, const varying Vec3f &Ns); +diff --git a/moonray/moonray/lib/rendering/rndr/RenderTimingRecord.h b/moonray/moonray/lib/rendering/rndr/RenderTimingRecord.h +index ef98054..38955ab 100644 +--- a/moonray/moonray/lib/rendering/rndr/RenderTimingRecord.h ++++ b/moonray/moonray/lib/rendering/rndr/RenderTimingRecord.h +@@ -5,6 +5,7 @@ + // + #pragma once + ++#include <limits> + #include <scene_rdl2/common/platform/Platform.h> + + #include <vector> +diff --git a/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitive.h b/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitive.h +index 18fa3c8..9a36e98 100644 +--- a/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitive.h ++++ b/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitive.h +@@ -3,6 +3,7 @@ + + #pragma once + ++#include <array> + #include "GPUBuffer.h" + #include "GPUMath.h" + +diff --git a/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitiveGroup.cc b/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitiveGroup.cc +index 0f0162c..6e33531 100644 +--- a/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitiveGroup.cc ++++ b/moonray/moonray/lib/rendering/rt/gpu/GPUPrimitiveGroup.cc +@@ -66,7 +66,7 @@ GPUPrimitiveGroup::build(CUstream cudaStream, + oinstance.instanceId = 0; + oinstance.visibilityMask = 255; + oinstance.sbtOffset = mSBTOffset; +- oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; ++ // oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; + oinstance.traversableHandle = mTrianglesGAS; + instances.push_back(oinstance); + } +@@ -87,7 +87,7 @@ GPUPrimitiveGroup::build(CUstream cudaStream, + oinstance.instanceId = 0; + oinstance.visibilityMask = 255; + oinstance.sbtOffset = mSBTOffset + mTriMeshes.size(); +- oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; ++ // oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; + oinstance.traversableHandle = mTrianglesMBGAS; + instances.push_back(oinstance); + } +@@ -108,7 +108,7 @@ GPUPrimitiveGroup::build(CUstream cudaStream, + oinstance.instanceId = 0; + oinstance.visibilityMask = 255; + oinstance.sbtOffset = mSBTOffset + mTriMeshes.size() + mTriMeshesMB.size(); +- oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; ++ // oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; + oinstance.traversableHandle = mRoundCurvesGAS; + instances.push_back(oinstance); + } +@@ -129,7 +129,7 @@ GPUPrimitiveGroup::build(CUstream cudaStream, + oinstance.instanceId = 0; + oinstance.visibilityMask = 255; + oinstance.sbtOffset = mSBTOffset + mTriMeshes.size() + mTriMeshesMB.size() + mRoundCurves.size(); +- oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; ++ // oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; + oinstance.traversableHandle = mRoundCurvesMBGAS; + instances.push_back(oinstance); + } +@@ -151,7 +151,7 @@ GPUPrimitiveGroup::build(CUstream cudaStream, + oinstance.visibilityMask = 255; + oinstance.sbtOffset = mSBTOffset + mTriMeshes.size() + mTriMeshesMB.size() + + mRoundCurves.size() + mRoundCurvesMB.size(); +- oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; ++ // oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; + oinstance.traversableHandle = mCustomPrimitivesGAS; + instances.push_back(oinstance); + +@@ -185,7 +185,7 @@ GPUPrimitiveGroup::build(CUstream cudaStream, + // The xform is specified in the mMMTTraversable instead. The child + // node is the MatrixMotionTransform of the instance, which itself + // has the group's top level IAS node as its child. +- oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; ++ // oinstance.flags = OPTIX_INSTANCE_FLAG_DISABLE_TRANSFORM; + GPUXform::identityXform().toOptixTransform(oinstance.transform); + oinstance.traversableHandle = mInstances[i]->mMMTTraversable; + } +diff --git a/moonray/moonray/lib/rendering/shading/bsdf/hair/BsdfHairOneSampler.h b/moonray/moonray/lib/rendering/shading/bsdf/hair/BsdfHairOneSampler.h +index e5fc2aa..fbf1e49 100644 +--- a/moonray/moonray/lib/rendering/shading/bsdf/hair/BsdfHairOneSampler.h ++++ b/moonray/moonray/lib/rendering/shading/bsdf/hair/BsdfHairOneSampler.h +@@ -8,6 +8,7 @@ + + #pragma once + ++#include <array> + #include "BsdfHairLobes.h" + #include <moonray/rendering/shading/ispc/bsdf/hair/BsdfHair_ispc_stubs.h> + +diff --git a/moonray/moonray/lib/rendering/shading/ispc/EvalAttribute.isph b/moonray/moonray/lib/rendering/shading/ispc/EvalAttribute.isph +index 7908013..44148ef 100644 +--- a/moonray/moonray/lib/rendering/shading/ispc/EvalAttribute.isph ++++ b/moonray/moonray/lib/rendering/shading/ispc/EvalAttribute.isph +@@ -511,7 +511,7 @@ evalFloat(const uniform Material * uniform sceneObject, + const varying State & state, + const uniform FloatAttrKey * uniform keyIn) + { +- return evalFloat((const SceneObject *) sceneObject, tls, state, keyIn); ++ return evalFloat((const SceneObject * uniform) sceneObject, tls, state, keyIn); + } + inline float + evalFloat(const uniform Map * uniform sceneObject, +diff --git a/moonray/moonray_arras/cmake/MoonrayArrasCompileDefinitions.cmake b/moonray/moonray_arras/cmake/MoonrayArrasCompileDefinitions.cmake +index b2b21a0..038b648 100644 +--- a/moonray/moonray_arras/cmake/MoonrayArrasCompileDefinitions.cmake ++++ b/moonray/moonray_arras/cmake/MoonrayArrasCompileDefinitions.cmake +@@ -13,7 +13,7 @@ function(MoonrayArras_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonray_arras/cmake/MoonrayArrasCompileOptions.cmake b/moonray/moonray_arras/cmake/MoonrayArrasCompileOptions.cmake +index 84f6742..7a2baef 100644 +--- a/moonray/moonray_arras/cmake/MoonrayArrasCompileOptions.cmake ++++ b/moonray/moonray_arras/cmake/MoonrayArrasCompileOptions.cmake +@@ -37,7 +37,8 @@ function(Moonray_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ #--werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +Submodule moonray/moonray_arras/mcrt_computation contains modified content +diff --git a/moonray/moonray_arras/mcrt_computation/cmake/McrtComputationCompileDefinitions.cmake b/moonray/moonray_arras/mcrt_computation/cmake/McrtComputationCompileDefinitions.cmake +index 6b8d0e7..a14ac05 100644 +--- a/moonray/moonray_arras/mcrt_computation/cmake/McrtComputationCompileDefinitions.cmake ++++ b/moonray/moonray_arras/mcrt_computation/cmake/McrtComputationCompileDefinitions.cmake +@@ -15,7 +15,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonray_arras/mcrt_computation/lib/engine/mcrt/McrtUpdate.h b/moonray/moonray_arras/mcrt_computation/lib/engine/mcrt/McrtUpdate.h +index e229344..7bd3480 100644 +--- a/moonray/moonray_arras/mcrt_computation/lib/engine/mcrt/McrtUpdate.h ++++ b/moonray/moonray_arras/mcrt_computation/lib/engine/mcrt/McrtUpdate.h +@@ -5,6 +5,7 @@ + // + #pragma once + ++#include <functional> + #include <message_api/Message.h> + #include <message_api/messageapi_names.h> + #include <message_api/Object.h> +Submodule moonray/moonray_arras/mcrt_dataio contains modified content +diff --git a/moonray/moonray_arras/mcrt_dataio/cmake/McrtDataioCompileDefinitions.cmake b/moonray/moonray_arras/mcrt_dataio/cmake/McrtDataioCompileDefinitions.cmake +index 6b8d0e7..a14ac05 100644 +--- a/moonray/moonray_arras/mcrt_dataio/cmake/McrtDataioCompileDefinitions.cmake ++++ b/moonray/moonray_arras/mcrt_dataio/cmake/McrtDataioCompileDefinitions.cmake +@@ -15,7 +15,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonray_arras/mcrt_dataio/lib/engine/mcrt/McrtControl.h b/moonray/moonray_arras/mcrt_dataio/lib/engine/mcrt/McrtControl.h +index 9ca5d92..6aa67a3 100644 +--- a/moonray/moonray_arras/mcrt_dataio/lib/engine/mcrt/McrtControl.h ++++ b/moonray/moonray_arras/mcrt_dataio/lib/engine/mcrt/McrtControl.h +@@ -16,6 +16,7 @@ + + #include <functional> + #include <iostream> ++#include <cstdint> + + namespace mcrt_dataio { + +diff --git a/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/FbMsgUtil.cc b/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/FbMsgUtil.cc +index c0298aa..c06368e 100644 +--- a/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/FbMsgUtil.cc ++++ b/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/FbMsgUtil.cc +@@ -7,6 +7,7 @@ + + #include <iomanip> + #include <sstream> ++#include <cstdint> + + namespace mcrt_dataio { + +diff --git a/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/MsgSendHandler.h b/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/MsgSendHandler.h +index 7c1875c..be61577 100644 +--- a/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/MsgSendHandler.h ++++ b/moonray/moonray_arras/mcrt_dataio/lib/engine/merger/MsgSendHandler.h +@@ -6,6 +6,7 @@ + #pragma once + + #include <functional> ++#include <string> + + namespace mcrt_dataio { + +diff --git a/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoCodec.cc b/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoCodec.cc +index e9a2e48..6b2853e 100644 +--- a/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoCodec.cc ++++ b/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoCodec.cc +@@ -301,13 +301,13 @@ InfoCodec::setUInt(Key &key, const unsigned int setVal, unsigned int *setTarget) + void + InfoCodec::setInt64(Key &key, const int64_t setVal, int64_t *setTarget) // MTsafe + { +- mImpl->set<long long>(key, (long long)setVal, (long long *)setTarget); ++ mImpl->set<long>(key, (long)setVal, (long *)setTarget); + } + + void + InfoCodec::setUInt64(Key &key, const uint64_t setVal, uint64_t *setTarget) // MTsafe + { +- mImpl->set<unsigned long long>(key, (unsigned long long)setVal, (unsigned long long *)setTarget); ++ mImpl->set<unsigned long>(key, (unsigned long)setVal, (unsigned long *)setTarget); + } + + void +diff --git a/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoRec.cc b/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoRec.cc +index 77bb9ea..9e96294 100644 +--- a/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoRec.cc ++++ b/moonray/moonray_arras/mcrt_dataio/lib/share/codec/InfoRec.cc +@@ -45,7 +45,7 @@ InfoRecGlobal::setMerge(const std::string &hostName, + { + mArray["mg"]["name"] = hostName; + mArray["mg"]["cpu"] = cpuTotal; +- mArray["mg"]["mem"] = (unsigned long long)memTotal; ++ mArray["mg"]["mem"] = (unsigned long)memTotal; + } + + bool +@@ -66,7 +66,7 @@ InfoRecGlobal::setMcrt(const int machineId, + std::string mIdStr = mIdStrGen(machineId); + mArray["mc"][mIdStr]["name"] = hostName; + mArray["mc"][mIdStr]["cpu"] = cpuTotal; +- mArray["mc"][mIdStr]["mem"] = (unsigned long long)memTotal; ++ mArray["mc"][mIdStr]["mem"] = (unsigned long)memTotal; + } + + size_t +@@ -472,7 +472,7 @@ void + InfoRecItem::setTimeStamp() + { + mTimeStamp = MiscUtil::getCurrentMicroSec(); +- mArray["time"] = (unsigned long long)(mTimeStamp); ++ mArray["time"] = (unsigned long)(mTimeStamp); + } + + int +diff --git a/moonray/moonray_arras/mcrt_dataio/lib/share/util/FpsTracker.h b/moonray/moonray_arras/mcrt_dataio/lib/share/util/FpsTracker.h +index 029b967..87d31f7 100644 +--- a/moonray/moonray_arras/mcrt_dataio/lib/share/util/FpsTracker.h ++++ b/moonray/moonray_arras/mcrt_dataio/lib/share/util/FpsTracker.h +@@ -7,6 +7,7 @@ + + #include <queue> + #include <string> ++#include <cstdint> + + namespace mcrt_dataio { + +Submodule moonray/moonray_arras/mcrt_messages contains modified content +diff --git a/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileDefinitions.cmake b/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileDefinitions.cmake +index 6b8d0e7..a14ac05 100644 +--- a/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileDefinitions.cmake ++++ b/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileDefinitions.cmake +@@ -15,7 +15,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileOptions.cmake b/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileOptions.cmake +index 06c6ba4..12fe077 100644 +--- a/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileOptions.cmake ++++ b/moonray/moonray_arras/mcrt_messages/cmake/McrtMessagesCompileOptions.cmake +@@ -39,7 +39,8 @@ function(Moonray_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ #--werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +Submodule moonray/moonray_gui contains modified content +diff --git a/moonray/moonray_gui/cmake/MoonrayGuiCompileDefinitions.cmake b/moonray/moonray_gui/cmake/MoonrayGuiCompileDefinitions.cmake +index 6b8d0e7..a14ac05 100644 +--- a/moonray/moonray_gui/cmake/MoonrayGuiCompileDefinitions.cmake ++++ b/moonray/moonray_gui/cmake/MoonrayGuiCompileDefinitions.cmake +@@ -15,7 +15,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + > + + PUBLIC +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonray_gui/cmake/MoonrayGuiCompileOptions.cmake b/moonray/moonray_gui/cmake/MoonrayGuiCompileOptions.cmake +index 85f7f5f..aa08f10 100644 +--- a/moonray/moonray_gui/cmake/MoonrayGuiCompileOptions.cmake ++++ b/moonray/moonray_gui/cmake/MoonrayGuiCompileOptions.cmake +@@ -65,7 +65,8 @@ function(${PROJECT_NAME}_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ #--werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +Submodule moonray/moonshine contains modified content +diff --git a/moonray/moonshine/cmake/MoonshineCompileDefinitions.cmake b/moonray/moonshine/cmake/MoonshineCompileDefinitions.cmake +index 8f69b43..d001ad9 100644 +--- a/moonray/moonshine/cmake/MoonshineCompileDefinitions.cmake ++++ b/moonray/moonshine/cmake/MoonshineCompileDefinitions.cmake +@@ -23,7 +23,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + + PUBLIC + __AVX__ +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonshine/cmake/MoonshineCompileOptions.cmake b/moonray/moonshine/cmake/MoonshineCompileOptions.cmake +index d6e2af7..2a83a56 100644 +--- a/moonray/moonshine/cmake/MoonshineCompileOptions.cmake ++++ b/moonray/moonshine/cmake/MoonshineCompileOptions.cmake +@@ -66,7 +66,8 @@ function(${PROJECT_NAME}_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ --werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +diff --git a/moonray/moonshine/lib/common/noise/Worley.h b/moonray/moonshine/lib/common/noise/Worley.h +index 59997bc..e8d8c4a 100644 +--- a/moonray/moonshine/lib/common/noise/Worley.h ++++ b/moonray/moonshine/lib/common/noise/Worley.h +@@ -7,6 +7,7 @@ + + #pragma warning disable 1711 // Warnings about assignemnt to statically allocated data + ++#include <array> + #include "Noise.h" + #include "Noise_ispc_stubs.h" + #include "Worley_ispc_stubs.h" +diff --git a/moonray/moonshine/lib/material/dwabase/ispc/DwaBaseLayerable.isph b/moonray/moonshine/lib/material/dwabase/ispc/DwaBaseLayerable.isph +index 79af0a7..3ec49d1 100644 +--- a/moonray/moonshine/lib/material/dwabase/ispc/DwaBaseLayerable.isph ++++ b/moonray/moonshine/lib/material/dwabase/ispc/DwaBaseLayerable.isph +@@ -390,7 +390,7 @@ DWABASELAYERABLE_printHairParameters(const varying HairParameters * uniform cons + + // Hair params + print("mHairCastsCaustics: %\n", DWABASE_EXTRACT((uint32_t) params->mHairCastsCaustics)); +- print("mHairUV: % % %\n", ++ print("mHairUV: % %\n", + DWABASE_EXTRACT(params->mHairUV.x), + DWABASE_EXTRACT(params->mHairUV.y)); + print("mHairIOR: %\n", DWABASE_EXTRACT(params->mHairIOR)); +Submodule moonray/moonshine_usd contains modified content +diff --git a/moonray/moonshine_usd/cmake/MoonshineUsdCompileDefinitions.cmake b/moonray/moonshine_usd/cmake/MoonshineUsdCompileDefinitions.cmake +index 8f69b43..d001ad9 100644 +--- a/moonray/moonshine_usd/cmake/MoonshineUsdCompileDefinitions.cmake ++++ b/moonray/moonshine_usd/cmake/MoonshineUsdCompileDefinitions.cmake +@@ -23,7 +23,7 @@ function(${PROJECT_NAME}_cxx_compile_definitions target) + + PUBLIC + __AVX__ +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/moonshine_usd/cmake/MoonshineUsdCompileOptions.cmake b/moonray/moonshine_usd/cmake/MoonshineUsdCompileOptions.cmake +index 2c63538..a32398c 100644 +--- a/moonray/moonshine_usd/cmake/MoonshineUsdCompileOptions.cmake ++++ b/moonray/moonshine_usd/cmake/MoonshineUsdCompileOptions.cmake +@@ -67,7 +67,8 @@ function(${PROJECT_NAME}_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ #--werror # Treat warnings as errors ++ --ignore-preprocessor-errors + --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +Submodule moonray/scene_rdl2 contains modified content +diff --git a/moonray/scene_rdl2/cmake/SceneRdl2CompileDefinitions.cmake b/moonray/scene_rdl2/cmake/SceneRdl2CompileDefinitions.cmake +index 8dd3aed..9e8feaf 100644 +--- a/moonray/scene_rdl2/cmake/SceneRdl2CompileDefinitions.cmake ++++ b/moonray/scene_rdl2/cmake/SceneRdl2CompileDefinitions.cmake +@@ -22,7 +22,7 @@ function(SceneRdl2_cxx_compile_definitions target) + + PUBLIC + __AVX__ +- _GLIBCXX_USE_CXX11_ABI=0 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html ++ _GLIBCXX_USE_CXX11_ABI=1 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html + GL_GLEXT_PROTOTYPES=1 # This define makes function symbols to be available as extern declarations. + TBB_SUPPRESS_DEPRECATED_MESSAGES # Suppress 'deprecated' messages from TBB + ) +diff --git a/moonray/scene_rdl2/cmake/SceneRdl2CompileOptions.cmake b/moonray/scene_rdl2/cmake/SceneRdl2CompileOptions.cmake +index 462396b..911ee33 100644 +--- a/moonray/scene_rdl2/cmake/SceneRdl2CompileOptions.cmake ++++ b/moonray/scene_rdl2/cmake/SceneRdl2CompileOptions.cmake +@@ -65,7 +65,8 @@ function(SceneRdl2_ispc_compile_options target) + PRIVATE + --opt=force-aligned-memory # always issue "aligned" vector load and store instructions + --pic # Generate position-independent code. Ignored for Windows target +- --werror # Treat warnings as errors ++ #--werror # Treat warnings as errors ++ --ignore-preprocessor-errors + # --wno-perf # Don't issue warnings related to performance-related issues + + $<$<CONFIG:DEBUG>: +diff --git a/moonray/scene_rdl2/lib/common/platform/Platform.h b/moonray/scene_rdl2/lib/common/platform/Platform.h +index 6baca9a..9d9f12a 100644 +--- a/moonray/scene_rdl2/lib/common/platform/Platform.h ++++ b/moonray/scene_rdl2/lib/common/platform/Platform.h +@@ -13,6 +13,7 @@ + #include <iostream> + #include <sstream> + #include <string> ++#include <cstdint> + + // Intel: begin ***** + /* +diff --git a/moonray/scene_rdl2/lib/render/util/Arena.h b/moonray/scene_rdl2/lib/render/util/Arena.h +index ada0b49..bd7e327 100644 +--- a/moonray/scene_rdl2/lib/render/util/Arena.h ++++ b/moonray/scene_rdl2/lib/render/util/Arena.h +@@ -115,7 +115,7 @@ public: + + protected: + unsigned mBlockSize; +- tbb::atomic<unsigned> mTotalBlocks; ++ std::atomic<unsigned> mTotalBlocks; + + CACHE_ALIGN util::ConcurrentSList mFreeBlocks; + }; +diff --git a/moonray/scene_rdl2/lib/render/util/ReaderWriterMutex.h b/moonray/scene_rdl2/lib/render/util/ReaderWriterMutex.h +index e08db0e..9b0aa18 100644 +--- a/moonray/scene_rdl2/lib/render/util/ReaderWriterMutex.h ++++ b/moonray/scene_rdl2/lib/render/util/ReaderWriterMutex.h +@@ -4,6 +4,8 @@ + + #pragma once + ++#include <mutex> ++ + #if defined(__has_include) + # if __has_include(<shared_mutex>) + # include <shared_mutex> +diff --git a/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.cc b/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.cc +index 811f55e..3e605f2 100644 +--- a/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.cc ++++ b/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.cc +@@ -31,7 +31,7 @@ + #include <scene_rdl2/render/logging/logging.h> + + #include <tbb/concurrent_hash_map.h> +-#include <tbb/mutex.h> ++#include </usr/include/oneapi/tbb/mutex.h> + #include <tbb/parallel_for_each.h> + + #include <algorithm> +diff --git a/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.h b/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.h +index 8b7c9ce..c43d080 100644 +--- a/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.h ++++ b/moonray/scene_rdl2/lib/scene/rdl2/SceneContext.h +@@ -13,7 +13,7 @@ + #include <scene_rdl2/render/util/Alloc.h> + #include <scene_rdl2/common/platform/Platform.h> + #include <tbb/concurrent_hash_map.h> +-#include <tbb/mutex.h> ++#include </usr/include/oneapi/tbb/mutex.h> + + #include <string> diff --git a/optix.patch b/optix.patch new file mode 100644 index 000000000000..686892dbd6bd --- /dev/null +++ b/optix.patch @@ -0,0 +1,13 @@ +diff --git a/OptixDenoiserImpl.cc.orig b/OptixDenoiserImpl.cc +index e9b4302..57f2fba 100644 +--- a/OptixDenoiserImpl.cc.orig ++++ b/OptixDenoiserImpl.cc +@@ -107,7 +107,7 @@ OptixDenoiserImpl::OptixDenoiserImpl(int width, + } + + mDenoiserParams = {}; // zero initialize +- mDenoiserParams.denoiseAlpha = 0; // don't denoise alpha ++ mDenoiserParams.denoiseAlpha = OPTIX_DENOISER_ALPHA_MODE_COPY; // don't denoise alpha + mDenoiserParams.hdrIntensity = 0; // optional average log intensity image of input image, + // helps with very dark/bright images + mDenoiserParams.blendFactor = 0.f; // show the denoised image only |