From b68e5567b80c7dc2d74591aef0f0a2ed48f788e8 Mon Sep 17 00:00:00 2001 From: ShiftyX1 Date: Mon, 8 Dec 2025 20:25:59 +0300 Subject: [PATCH] fix: create OpenAL::OpenAL target alias for Linux - FindOpenAL on Linux creates OPENAL_LIBRARY/OPENAL_INCLUDE_DIR - But code expects OpenAL::OpenAL target - Add compatibility layer to create proper target --- src/CMakeLists.txt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 226ac8c2..e6aace95 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -14,6 +14,15 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows") find_package(OpenAL CONFIG REQUIRED) else() find_package(OpenAL REQUIRED) + # Create OpenAL::OpenAL alias if not exists + if(NOT TARGET OpenAL::OpenAL AND TARGET OpenAL::AL) + add_library(OpenAL::OpenAL ALIAS OpenAL::AL) + elseif(NOT TARGET OpenAL::OpenAL AND OPENAL_FOUND) + add_library(OpenAL::OpenAL INTERFACE IMPORTED) + set_target_properties(OpenAL::OpenAL PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${OPENAL_INCLUDE_DIR}" + INTERFACE_LINK_LIBRARIES "${OPENAL_LIBRARY}") + endif() endif() find_package(ZLIB REQUIRED) find_package(PNG REQUIRED)