diff options
Diffstat (limited to 'archived/projt-launcher/cmake/useLibpng.cmake')
| -rw-r--r-- | archived/projt-launcher/cmake/useLibpng.cmake | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/archived/projt-launcher/cmake/useLibpng.cmake b/archived/projt-launcher/cmake/useLibpng.cmake new file mode 100644 index 0000000000..ebb2d2034f --- /dev/null +++ b/archived/projt-launcher/cmake/useLibpng.cmake @@ -0,0 +1,48 @@ +function(projt_add_libpng) + # Ensure libpng install rules are enabled even if other deps toggled them. + set(SKIP_INSTALL_ALL OFF CACHE BOOL "" FORCE) + set(SKIP_INSTALL_LIBRARIES OFF CACHE BOOL "" FORCE) + set(PNG_SHARED ON CACHE BOOL "" FORCE) + set(PNG_STATIC OFF CACHE BOOL "" FORCE) + # Avoid loading both libpng16d and system libpng16 in Debug builds. + set(PNG_DEBUG_POSTFIX "" CACHE STRING "" FORCE) + set(PNG_TESTS OFF CACHE BOOL "" FORCE) + set(PNG_TOOLS OFF CACHE BOOL "" FORCE) + set(PNG_EXECUTABLES OFF CACHE BOOL "" FORCE) + if(UNIX AND NOT APPLE) + if(DEFINED Launcher_BUNDLED_LIBDIR AND NOT Launcher_BUNDLED_LIBDIR STREQUAL "") + projt_push_install_libdir("${Launcher_BUNDLED_LIBDIR}") + endif() + if(DEFINED Launcher_BUNDLED_INCLUDEDIR AND NOT Launcher_BUNDLED_INCLUDEDIR STREQUAL "") + projt_push_install_includedir("${Launcher_BUNDLED_INCLUDEDIR}") + endif() + endif() + projt_push_output_dirs("libpng") + projt_push_autogen_disabled() + add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../libpng libpng) + projt_pop_autogen_disabled() + projt_pop_output_dirs() + foreach(_projt_png_target png_shared png_static png_framework) + if(TARGET ${_projt_png_target}) + target_compile_definitions( + ${_projt_png_target} + PRIVATE adler32=ptpng_adler32 + crc32=ptpng_crc32 + deflate=ptpng_deflate + deflateInit2_=ptpng_deflateInit2_ + deflateReset=ptpng_deflateReset + inflate=ptpng_inflate + inflateInit2_=ptpng_inflateInit2_ + inflateReset=ptpng_inflateReset + inflateReset2=ptpng_inflateReset2) + endif() + endforeach() + if(UNIX AND NOT APPLE) + if(DEFINED Launcher_BUNDLED_INCLUDEDIR AND NOT Launcher_BUNDLED_INCLUDEDIR STREQUAL "") + projt_pop_install_includedir() + endif() + if(DEFINED Launcher_BUNDLED_LIBDIR AND NOT Launcher_BUNDLED_LIBDIR STREQUAL "") + projt_pop_install_libdir() + endif() + endif() +endfunction()
\ No newline at end of file |
