ExternalPNG.cmake 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. # Build a local version of zlib and libpng
  2. INCLUDE(ExternalProject)
  3. SET(png_PREFIX ${CMAKE_CURRENT_BINARY_DIR}/png)
  4. EXTERNALPROJECT_ADD(zlib
  5. PREFIX ${png_PREFIX}
  6. DOWNLOAD_DIR ${POLYCODE_DEPS_DOWNLOAD_DIR}
  7. URL http://zlib.net/zlib-1.2.5.tar.gz
  8. URL_MD5 c735eab2d659a96e5a594c9e8541ad63
  9. PATCH_COMMAND ${CMAKE_COMMAND} -E remove <SOURCE_DIR>/zconf.h
  10. CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
  11. )
  12. ExternalProject_Get_Property(zlib install_dir)
  13. EXTERNALPROJECT_ADD(libpng
  14. DEPENDS zlib
  15. PREFIX ${png_PREFIX}
  16. DOWNLOAD_DIR ${POLYCODE_DEPS_DOWNLOAD_DIR}
  17. URL ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.5.4.tar.gz
  18. URL_MD5 dea4d1fd671160424923e92ff0cdda78
  19. CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${install_dir} # to find zlib
  20. )
  21. ExternalProject_Get_Property(libpng install_dir)
  22. # install built files
  23. INSTALL(DIRECTORY ${install_dir}/include/
  24. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Include
  25. FILES_MATCHING PATTERN "*.h")
  26. # install debug libs
  27. INSTALL(FILES ${install_dir}/lib/zlibd${CMAKE_STATIC_LIBRARY_SUFFIX}
  28. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Lib
  29. CONFIGURATIONS Debug)
  30. INSTALL(FILES ${install_dir}/lib/libpng15d${CMAKE_STATIC_LIBRARY_SUFFIX}
  31. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Lib
  32. CONFIGURATIONS Debug)
  33. # install release lib
  34. INSTALL(FILES ${install_dir}/lib/zlib${CMAKE_STATIC_LIBRARY_SUFFIX}
  35. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Lib
  36. CONFIGURATIONS Release)
  37. INSTALL(FILES ${install_dir}/lib/libpng15${CMAKE_STATIC_LIBRARY_SUFFIX}
  38. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Lib
  39. CONFIGURATIONS Release)
  40. # install debug shared library
  41. INSTALL(FILES ${install_dir}/bin/zlibd1${CMAKE_SHARED_LIBRARY_SUFFIX}
  42. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Bin
  43. CONFIGURATIONS Debug)
  44. INSTALL(FILES ${install_dir}/bin/libpng15d${CMAKE_SHARED_LIBRARY_SUFFIX}
  45. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Bin
  46. CONFIGURATIONS Debug)
  47. # install release shared library
  48. INSTALL(FILES ${install_dir}/bin/zlib1${CMAKE_SHARED_LIBRARY_SUFFIX}
  49. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Bin
  50. CONFIGURATIONS Release)
  51. INSTALL(FILES ${install_dir}/bin/libpng15${CMAKE_SHARED_LIBRARY_SUFFIX}
  52. DESTINATION ${POLYCODE_DEPS_CORE_PREFIX}/Bin
  53. CONFIGURATIONS Release)