find_library(Shaderc_LIBRARY
    NAMES shaderc_shared
    PATHS  $ENV{VULKAN_SDK}/lib
    )
find_path(Shaderc_INCLUDE_DIR
    NAMES shaderc.hpp
    PATHS "$ENV{VULKAN_SDK}/include"
    PATH_SUFFIXES "shaderc"
)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Shaderc
    FOUND_VAR Shaderc_FOUND
    REQUIRED_VARS Shaderc_LIBRARY Shaderc_INCLUDE_DIR
)

if(Shaderc_FOUND AND NOT TARGET Shaderc::Shaderc)
    add_library(Shaderc::shaderc IMPORTED INTERFACE)
    target_link_libraries(Shaderc::shaderc INTERFACE ${Shaderc_LIBRARY})
    target_include_directories(Shaderc::shaderc INTERFACE ${Shaderc_INCLUDE_DIR})
endif()