API: updated CMAKELISTS for static linking
This commit is contained in:
+16
-8
@@ -1,24 +1,32 @@
|
|||||||
cmake_minimum_required(VERSION 3.16)
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
project(image_processor LANGUAGES C)
|
||||||
|
|
||||||
set(CMAKE_C_STANDARD 23)
|
set(CMAKE_C_STANDARD 23)
|
||||||
set(CMAKE_C_STANDARD_REQUIRED ON)
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
||||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
include_directories(include)
|
|
||||||
project(image_processor LANGUAGES C)
|
|
||||||
|
|
||||||
set(SOURCES
|
include_directories(include)
|
||||||
src/main.c
|
|
||||||
|
set(LIB_SOURCES
|
||||||
src/transformations.c
|
src/transformations.c
|
||||||
src/utils.c
|
src/utils.c
|
||||||
src/filters.c
|
src/filters.c
|
||||||
src/imgio.c
|
src/imgio.c
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
find_package(PkgConfig REQUIRED)
|
||||||
find_library(TURBOJPEG_LIB NAMES turbojpeg REQUIRED)
|
find_library(TURBOJPEG_LIB NAMES turbojpeg REQUIRED)
|
||||||
find_path(TURBOJPEG_INCLUDE NAMES turbojpeg.h REQUIRED)
|
find_path(TURBOJPEG_INCLUDE NAMES turbojpeg.h REQUIRED)
|
||||||
|
|
||||||
add_executable(image_processor ${SOURCES})
|
add_library(PROCESSOR STATIC ${LIB_SOURCES})
|
||||||
|
|
||||||
target_include_directories(image_processor PRIVATE ${TURBOJPEG_INCLUDE})
|
target_include_directories(PROCESSOR
|
||||||
|
PUBLIC
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||||
|
$<INSTALL_INTERFACE:include>
|
||||||
|
PRIVATE
|
||||||
|
${TURBOJPEG_INCLUDE}
|
||||||
|
)
|
||||||
|
|
||||||
target_link_libraries(image_processor PRIVATE ${TURBOJPEG_LIB})
|
target_link_libraries(PROCESSOR PUBLIC ${TURBOJPEG_LIB})
|
||||||
|
set_target_properties(PROCESSOR PROPERTIES EXPORT_NAME PROCESSOR)
|
||||||
|
|||||||
Reference in New Issue
Block a user