# SPDX-FileCopyrightText: 2025-2026 Open Mobile Platform LLC <community@omp.ru>
# SPDX-License-Identifier: BSD-3-Clause

cmake_minimum_required(VERSION 3.10)

set(PROJECT_NAME open_filex_aurora)
set(PLUGIN_NAME  open_filex_aurora_platform_plugin)

project(${PROJECT_NAME} LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-psabi")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")

if(${PSDK_MAJOR} LESS 5)
    message( FATAL_ERROR "Сannot build this project on Aurora version less than 5" )
endif()

find_package(PkgConfig REQUIRED)
find_package(Qt5 REQUIRED COMPONENTS Core)
pkg_check_modules(RuntimeManager REQUIRED IMPORTED_TARGET runtime-manager-qt5)


add_library(${PLUGIN_NAME} SHARED 
    src/common_types.h    
    src/file_opener.cpp
    src/file_opener.h
    src/open_filex_aurora.cpp
    src/open_filex_aurora.h
    src/utils.h
)

# Add client_wrapper source
include(AuroraClientWrapper)
ADD_CLIENT_WRAPPER_SOURCE(${PLUGIN_NAME})

set_target_properties(${PLUGIN_NAME} PROPERTIES CXX_VISIBILITY_PRESET hidden AUTOMOC ON)
target_link_libraries(${PLUGIN_NAME} PUBLIC
    Qt5::Core
    PkgConfig::RuntimeManager
)

target_include_directories(${PLUGIN_NAME} PUBLIC
    ${CMAKE_CURRENT_SOURCE_DIR}/include
)
target_compile_definitions(${PLUGIN_NAME} PRIVATE OPEN_FILEX_AURORA_PLUGIN_IMPL)
