2
0

ExternalPNG.cmake 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  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.8.tar.gz
  17. URL_MD5 44d667c142d7cda120332623eab69f40
  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. # Kludge: Shouldn't be necessary if FIND_LIBRARY were working on mingw.
  24. IF (MINGW)
  25. SET(libpng_CMAKE_ARGS ${libpng_CMAKE_ARGS}
  26. -DZLIB_LIBRARY=zlib
  27. -DZLIB_INCLUDE_DIR=${install_dir}/include
  28. )
  29. ENDIF(MINGW)
  30. EXTERNALPROJECT_ADD(libpng
  31. DEPENDS zlib
  32. PREFIX ${libpng_PREFIX}
  33. DOWNLOAD_DIR ${POLYCODE_DEPS_DOWNLOAD_DIR}
  34. URL ftp://ftp.simplesystems.org/pub/libpng/png/src/history/libpng15/libpng-1.5.10.tar.gz
  35. URL_MD5 9e5d864bce8f06751bbd99962ecf4aad
  36. INSTALL_DIR ${POLYCODE_DEPS_CORE_PREFIX}
  37. CMAKE_ARGS ${libpng_CMAKE_ARGS} -DCMAKE_PREFIX_PATH=${install_dir} # to find zlib
  38. )