From 13b1d8d5e14cdccda5e1a9c01cf9ddfd0375d83d Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel <brecht@blender.org> Date: Tue, 7 Nov 2023 20:47:46 +0100 Subject: [PATCH] Fix build failure when WITH_USD=OFF and WITH_MATERIALX=ON --- source/blender/nodes/shader/CMakeLists.txt | 12 ++++++++---- source/blender/nodes/shader/materialx/node_parser.cc | 8 +++++++- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/source/blender/nodes/shader/CMakeLists.txt b/source/blender/nodes/shader/CMakeLists.txt index f0c226c316e..01788046292 100644 --- a/source/blender/nodes/shader/CMakeLists.txt +++ b/source/blender/nodes/shader/CMakeLists.txt @@ -139,10 +139,6 @@ set(LIB if(WITH_MATERIALX) add_definitions(-DWITH_MATERIALX) - list(APPEND INC - ${USD_INCLUDE_DIRS} - ${BOOST_INCLUDE_DIR} - ) list(APPEND SRC materialx/material.cc materialx/node_item.cc @@ -158,6 +154,14 @@ if(WITH_MATERIALX) MaterialXCore MaterialXFormat ) + + if(WITH_USD) + add_definitions(-DWITH_USD) + list(APPEND INC_SYS + ${USD_INCLUDE_DIRS} + ${BOOST_INCLUDE_DIR} + ) + endif() endif() if(WITH_FREESTYLE) diff --git a/source/blender/nodes/shader/materialx/node_parser.cc b/source/blender/nodes/shader/materialx/node_parser.cc index c0f3ec1064a..b55001132e9 100644 --- a/source/blender/nodes/shader/materialx/node_parser.cc +++ b/source/blender/nodes/shader/materialx/node_parser.cc @@ -2,7 +2,9 @@ * * SPDX-License-Identifier: GPL-2.0-or-later */ -#include <pxr/base/tf/stringUtils.h> +#ifdef WITH_USD +# include <pxr/base/tf/stringUtils.h> +#endif #include "node_parser.h" @@ -63,9 +65,13 @@ NodeItem NodeParser::compute_full() std::string NodeParser::node_name(bool with_out_socket) const { auto valid_name = [](const std::string &name) { +#ifdef WITH_USD /* Node name should suite to MatX and USD valid names. * It shouldn't start from '_', due to error occured in Storm delegate. */ std::string res = MaterialX::createValidName(pxr::TfMakeValidIdentifier(name)); +#else + std::string res = MaterialX::createValidName(name); +#endif if (res[0] == '_') { res = "node" + res; } -- GitLab