CMakeLists.txt 969 B

123456789101112131415161718192021222324252627282930
  1. cmake_minimum_required(VERSION 3.23)
  2. project(libdng C)
  3. set(CMAKE_C_STANDARD 23)
  4. set(LIBRARY_VERSION_MAJOR 0)
  5. set(LIBRARY_VERSION_STRING 0.1)
  6. set(CMAKE_C_VISIBILITY_PRESET hidden)
  7. add_library(libdng SHARED include/libdng.h src/libdng.c src/dng.h src/mode.c src/repack.c src/repack.h src/dcp.c)
  8. set_target_properties(libdng PROPERTIES
  9. VERSION ${LIBRARY_VERSION_STRING}
  10. SOVERSION ${LIBRARY_VERSION_MAJOR}
  11. PUBLIC_HEADER include/libdng.h)
  12. target_include_directories(libdng PUBLIC include)
  13. target_link_libraries(libdng "tiff")
  14. add_executable(makedng util/makedng.c)
  15. target_include_directories(makedng PUBLIC include)
  16. target_link_libraries(makedng PUBLIC libdng)
  17. find_program(BASH bash)
  18. enable_testing()
  19. find_program(DNG_VALIDATE dng_validate)
  20. if (DNG_VALIDATE)
  21. add_test(NAME test_dng_validate COMMAND ${BASH_PROGRAM} ${CMAKE_CURRENT_SOURCE_DIR}/tests/test_dng_validate.sh $<TARGET_FILE:makedng>)
  22. endif (DNG_VALIDATE)
  23. add_subdirectory(tests)