diff --git a/flex/flex.cmake b/flex/flex.cmake index 8a05d2b42a..5d24a0d1f9 100644 --- a/flex/flex.cmake +++ b/flex/flex.cmake @@ -25,8 +25,13 @@ vk_add_library_no_pic(flex-data-src-no-pic OBJECT ${FLEX_SOURCES}) add_dependencies(flex-data-src-no-pic flex-data) if (COMPILE_RUNTIME_LIGHT) - target_compile_options(flex-data-src-pic PUBLIC -stdlib=libc++ ${RUNTIME_LIGHT_VISIBILITY}) - target_link_options(flex-data-src-pic PUBLIC -stdlib=libc++) + # A new pic library needs to be added because it uses libc++. + # vkext is not ready to use a library with libc++. + vk_add_library_pic(flex-libcpp-data-src-pic OBJECT ${FLEX_SOURCES}) + add_dependencies(flex-libcpp-data-src-pic flex-data) + + target_compile_options(flex-libcpp-data-src-pic PUBLIC -stdlib=libc++ ${RUNTIME_LIGHT_VISIBILITY}) + target_link_options(flex-libcpp-data-src-pic PUBLIC -stdlib=libc++) endif() vk_add_library_pic(flex_data_shared-pic SHARED $) diff --git a/runtime-light/runtime-light.cmake b/runtime-light/runtime-light.cmake index e03d80bc04..45814e6887 100644 --- a/runtime-light/runtime-light.cmake +++ b/runtime-light/runtime-light.cmake @@ -63,7 +63,7 @@ set(RUNTIME_LIGHT_LINK_LIBS "${KPHP_TIMELIB_PIC_LIBRARIES} ${PCRE2_PIC_LIBRARIES vk_add_library_pic(kphp-light-runtime-pic STATIC) target_compile_options(kphp-light-runtime-pic PUBLIC ${RUNTIME_LIGHT_COMPILE_FLAGS}) target_link_options(kphp-light-runtime-pic PUBLIC ${RUNTIME_LIGHT_LINK_FLAGS}) -target_link_libraries(kphp-light-runtime-pic PUBLIC vk::pic::flex-data-src vk::pic::light-common vk::pic::unicode vk::pic::runtime-light vk::pic::runtime-common) +target_link_libraries(kphp-light-runtime-pic PUBLIC vk::pic::flex-libcpp-data-src-pic vk::pic::light-common vk::pic::unicode vk::pic::runtime-light vk::pic::runtime-common) set_target_properties(kphp-light-runtime-pic PROPERTIES LIBRARY_OUTPUT_NAME libkphp-light-runtime.a)