ExternalPNG.cmake 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. # Build a local version of zlib and libpng
  2. INCLUDE(ExternalProject)
  3. SET(libpng_PREFIX ${CMAKE_CURRENT_BINARY_DIR}/libpng)
  4. SET(libpng_CMAKE_ARGS
  5. -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
  6. -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
  7. -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
  8. -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
  9. -DPNG_SHARED=OFF
  10. -DBUILD_SHARED_LIBS=FALSE
  11. -DSKIP_INSTALL_FILES=1
  12. )
  13. EXTERNALPROJECT_ADD(zlib
  14. PREFIX ${libpng_PREFIX}
  15. DOWNLOAD_DIR ${POLYCODE_DEPS_DOWNLOAD_DIR}
  16. URL http://zlib.net/zlib-1.2.7.tar.gz
  17. URL_MD5 60df6a37c56e7c1366cca812414f7b85
  18. PATCH_COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PolycodeDependencies_SOURCE_DIR}/../CMake/zlib.cmake <SOURCE_DIR>/CMakeLists.txt && ${CMAKE_COMMAND} -E remove <SOURCE_DIR>/zconf.h
  19. INSTALL_DIR ${POLYCODE_DEPS_CORE_PREFIX}
  20. CMAKE_ARGS ${libpng_CMAKE_ARGS}
  21. )
  22. ExternalProject_Get_Property(zlib install_dir)
  23. IF (MINGW)
  24. SET(libpng_CMAKE_ARGS ${libpng_CMAKE_ARGS}
  25. -DZLIB_LIBRARY=zlib
  26. -DZLIB_INCLUDE_DIR=${install_dir}/include
  27. )
  28. ENDIF(MINGW)
  29. EXTERNALPROJECT_ADD(libpng
  30. DEPENDS zlib
  31. PREFIX ${libpng_PREFIX}
  32. DOWNLOAD_DIR ${POLYCODE_DEPS_DOWNLOAD_DIR}
  33. URL ftp://ftp.simplesystems.org/pub/libpng/png/src/history/libpng15/libpng-1.5.10.tar.gz
  34. URL_MD5 9e5d864bce8f06751bbd99962ecf4aad
  35. INSTALL_DIR ${POLYCODE_DEPS_CORE_PREFIX}
  36. CMAKE_ARGS ${libpng_CMAKE_ARGS} -DCMAKE_PREFIX_PATH=${install_dir} # to find zlib
  37. )