cmake_minimum_required(VERSION 4.4.3)
project(libimg LANGUAGES C)

set(CMAKE_C_STANDARD 23)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

set(LIB_SOURCES
	src/transformations.c
        src/utils.c
        src/filters.c
        src/imgio.c
)

find_package(PkgConfig REQUIRED)
pkg_check_modules(TURBOJPEG REQUIRED IMPORTED_TARGET libturbojpeg)

add_library(imgproc STATIC ${LIB_SOURCES})

target_include_directories(imgproc
        PUBLIC
        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
        $<INSTALL_INTERFACE:include>
        PRIVATE
        ${TURBOJPEG_INCLUDE_DIRS}
)

target_link_libraries(imgproc PUBLIC PkgConfig::TURBOJPEG)
set_target_properties(imgproc PROPERTIES EXPORT_NAME imgproc)

if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
        add_executable(libimg src/main.c)
    target_link_libraries(libimg PRIVATE imgproc)
endif()
