1 diff --git a/libshaderc/CMakeLists.txt b/libshaderc/CMakeLists.txt
2 index 0ffa06f..3476170 100644
3 --- a/libshaderc/CMakeLists.txt
4 +++ b/libshaderc/CMakeLists.txt
5 @@ -10,10 +10,11 @@ set(SHADERC_SOURCES
9 +if (NOT BUILD_SHARED_LIBS)
10 add_library(shaderc STATIC ${SHADERC_SOURCES})
11 shaderc_default_compile_options(shaderc)
12 target_include_directories(shaderc PUBLIC include PRIVATE ${glslang_SOURCE_DIR})
15 add_library(shaderc_shared SHARED ${SHADERC_SOURCES})
16 shaderc_default_compile_options(shaderc_shared)
17 target_include_directories(shaderc_shared PUBLIC include PRIVATE ${glslang_SOURCE_DIR})
18 @@ -22,6 +23,7 @@ target_compile_definitions(shaderc_shared
19 PUBLIC SHADERC_SHAREDLIB
21 set_target_properties(shaderc_shared PROPERTIES SOVERSION 1)
24 if(SHADERC_ENABLE_INSTALL)
26 @@ -34,10 +36,17 @@ if(SHADERC_ENABLE_INSTALL)
28 ${CMAKE_INSTALL_INCLUDEDIR}/shaderc)
30 - install(TARGETS shaderc shaderc_shared
31 + if (NOT BUILD_SHARED_LIBS)
32 + install(TARGETS shaderc
33 + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
34 + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
35 + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
37 + install(TARGETS shaderc_shared
38 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
39 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
40 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
42 endif(SHADERC_ENABLE_INSTALL)
45 @@ -47,10 +56,13 @@ set(SHADERC_LIBS
50 +if (NOT BUILD_SHARED_LIBS)
51 target_link_libraries(shaderc PRIVATE ${SHADERC_LIBS})
53 target_link_libraries(shaderc_shared PRIVATE ${SHADERC_LIBS})
56 +if (NOT BUILD_SHARED_LIBS)
60 @@ -60,7 +72,7 @@ shaderc_add_tests(
67 TEST_PREFIX shaderc_shared
68 LINK_LIBS shaderc_shared SPIRV-Tools
69 @@ -70,7 +82,9 @@ shaderc_add_tests(
75 +# Do not combine all dependencies to static library
77 shaderc_combine_static_lib(shaderc_combined shaderc)
79 if(SHADERC_ENABLE_INSTALL)
80 @@ -106,3 +120,4 @@ if(${SHADERC_ENABLE_TESTS})
81 target_link_libraries(shaderc_c_smoke_test PRIVATE shaderc)
82 add_test(NAME shaderc_c_smoke_test COMMAND shaderc_c_smoke_test)
85 \ No newline at end of file