diff --git a/CMakeLists.txt b/CMakeLists.txt index e68166a..97c942e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,6 +15,15 @@ project(QtShaderTools find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) find_package(Qt6 ${PROJECT_VERSION} QUIET CONFIG OPTIONAL_COMPONENTS Gui) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_glslang QUIET "glslang") +pkg_check_modules(PC_spirv_tools QUIET "SPIRV-Tools") +find_library(GLSLANG_RESOURCE_LIMITS_LIBRARY + NAMES libglslang-default-resource-limits.a + PATHS /usr/lib /usr/lib64 + NO_DEFAULT_PATH +) qt_internal_project_setup() if(INTEGRITY) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index cb0e25d..6a22710 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -3,6 +3,6 @@ # Generated from src.pro. -add_subdirectory(glslang) +# add_subdirectory(glslang) add_subdirectory(SPIRV-Cross) add_subdirectory(shadertools) diff --git a/src/shadertools/CMakeLists.txt b/src/shadertools/CMakeLists.txt index 04371a5..4a652bb 100644 --- a/src/shadertools/CMakeLists.txt +++ b/src/shadertools/CMakeLists.txt @@ -20,15 +20,15 @@ qt_internal_add_module(ShaderTools DEFINES QT_BUILD_SHADERTOOLS_LIB INCLUDE_DIRECTORIES + ${PC_glslang_INCLUDE_DIRS} ../3rdparty/SPIRV-Cross - ../3rdparty/glslang LIBRARIES Qt::GuiPrivate # special case begin Qt::BundledSpirv_Cross - Qt::BundledGlslang_Glslang - Qt::BundledGlslang_Spirv - Qt::BundledGlslang_Osdependent + ${PC_glslang_LINK_LIBRARIES} + ${PC_spirv_tools_LINK_LIBRARIES} + ${GLSLANG_RESOURCE_LIMITS_LIBRARY} # special case end PUBLIC_LIBRARIES Qt::Core diff --git a/src/shadertools/qspirvcompiler.cpp b/src/shadertools/qspirvcompiler.cpp index 4e97d48..b6fefb8 100644 --- a/src/shadertools/qspirvcompiler.cpp +++ b/src/shadertools/qspirvcompiler.cpp @@ -10,7 +10,7 @@ QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Wsuggest-override") #include #include -#include +#include QT_WARNING_POP //#define TOKENIZER_DEBUG @@ -47,8 +47,6 @@ bool QSpirvCompilerPrivate::readFile(const QString &fn) return true; } -using namespace QtShaderTools; - class Includer : public glslang::TShader::Includer { public: diff --git a/src/shadertools/qspirvshaderremap.cpp b/src/shadertools/qspirvshaderremap.cpp index e45161d..d8d4bfe 100644 --- a/src/shadertools/qspirvshaderremap.cpp +++ b/src/shadertools/qspirvshaderremap.cpp @@ -3,7 +3,7 @@ #include "qspirvshaderremap_p.h" -#include +#include QT_BEGIN_NAMESPACE