diff --git a/CMakeLists.txt b/CMakeLists.txt index 9a8926c9..19f63110 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -298,6 +298,11 @@ else() set(COMPILE_FLAGS "-DBMP_SUPPORTED -DGIF_SUPPORTED -DPPM_SUPPORTED -DTARGA_SUPPORTED -DUSE_SETMODE") set(CJPEG_BMP_SOURCES rdbmp.c rdtarga.c) set(DJPEG_BMP_SOURCES wrbmp.c wrtarga.c) + + if(PNG_SUPPORTED) + set(COMPILE_FLAGS ${COMPILE_FLAGS} -DPNG_SUPPORTED) + set(CJPEG_BMP_SOURCES ${CJPG_BMP_SOURCES} rdpng.c) + endif() endif() if(ENABLE_STATIC) @@ -306,6 +311,14 @@ if(ENABLE_STATIC) set_property(TARGET cjpeg-static PROPERTY COMPILE_FLAGS ${COMPILE_FLAGS}) target_link_libraries(cjpeg-static jpeg-static) + if(PNG_SUPPORTED) + set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_STATIC_LIBRARY_SUFFIX}) + find_package(PNG 1.6 REQUIRED) + find_package(ZLIB REQUIRED) + target_include_directories(cjpeg-static PUBLIC ${PNG_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR}) + target_link_libraries(cjpeg-static ${PNG_LIBRARY} ${ZLIB_LIBRARY}) + endif() + add_executable(djpeg-static djpeg.c cdjpeg.c rdcolmap.c rdswitch.c wrgif.c wrppm.c ${DJPEG_BMP_SOURCES}) set_property(TARGET djpeg-static PROPERTY COMPILE_FLAGS ${COMPILE_FLAGS})