cmake_minimum_required(VERSION 3.23) project(libmegapixels C) set(LIBRARY_VERSION_MAJOR 0) set(LIBRARY_VERSION_STRING 0.1) set(CMAKE_C_STANDARD 23) set(CMAKE_C_VISIBILITY_PRESET hidden) add_library(megapixels SHARED include/libmegapixels.h src/findconfig.c src/parse.c src/mode.c src/pipeline.c src/log.c src/util.c src/convert.c src/aaa.c) set_target_properties(megapixels PROPERTIES VERSION ${LIBRARY_VERSION_STRING} SOVERSION ${LIBRARY_VERSION_MAJOR} PUBLIC_HEADER include/libmegapixels.h) target_include_directories(megapixels PUBLIC include) target_link_libraries(megapixels "config") add_executable(findconfig util/findconfig.c) target_include_directories(findconfig PUBLIC include) target_link_libraries(findconfig PUBLIC megapixels) add_executable(getframe util/getframe.c) target_include_directories(getframe PUBLIC include) target_link_libraries(getframe PUBLIC megapixels) add_executable(sensorprofile util/sensorprofile.c) target_include_directories(sensorprofile PUBLIC include) target_link_libraries(sensorprofile PUBLIC megapixels)