|
|
|
@ -11,26 +11,15 @@ add_compile_options(-w)
|
|
|
|
|
# Options |
|
|
|
|
set(PNG_TESTS FALSE CACHE BOOL "" FORCE) |
|
|
|
|
set(PNG_NO_STDIO FALSE CACHE BOOL "" FORCE) |
|
|
|
|
set(PNG_STATIC FALSE CACHE BOOL "" FORCE) |
|
|
|
|
set(PNG_SHARED TRUE CACHE BOOL "" FORCE) |
|
|
|
|
set(PNG_BUILD_ZLIB TRUE CACHE BOOL "" FORCE) |
|
|
|
|
|
|
|
|
|
# Download |
|
|
|
|
set(ZLIB_LIBRARY zlibstatic) |
|
|
|
|
set(ZLIB_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/zlib/src") |
|
|
|
|
set(CMAKE_POLICY_DEFAULT_CMP0054 OLD) # Silence Warning |
|
|
|
|
set(CMAKE_POLICY_DEFAULT_CMP0003 NEW) # Silence Warning |
|
|
|
|
set(CMAKE_POLICY_DEFAULT_CMP0022 NEW) # Fix Error |
|
|
|
|
set(M_LIBRARY m) # No Full Paths! |
|
|
|
|
set(ZLIB_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/zlib/src" "${CMAKE_CURRENT_BINARY_DIR}/zlib/src") |
|
|
|
|
add_subdirectory(src EXCLUDE_FROM_ALL) |
|
|
|
|
set(CMAKE_POLICY_DEFAULT_CMP0054 NEW) # Re-Enable New Behavior |
|
|
|
|
|
|
|
|
|
# Setup Target |
|
|
|
|
set_target_properties(png12 PROPERTIES LINK_OPTIONS "LINKER:--version-script=${CMAKE_CURRENT_SOURCE_DIR}/libpng.vers") # Use Symbol Versioning |
|
|
|
|
set_target_properties(png12 PROPERTIES DEBUG_POSTFIX "") # Fix LibPNG Suffix In Debug Mode |
|
|
|
|
target_include_directories(png12 PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>") |
|
|
|
|
foreach(zlib_include_dir IN ITEMS "${ZLIB_INCLUDE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}/zlib/src") |
|
|
|
|
target_include_directories(png12 PUBLIC "$<BUILD_INTERFACE:${zlib_include_dir}>") |
|
|
|
|
endforeach() |
|
|
|
|
|
|
|
|
|
# Use Symbol Versioning |
|
|
|
|
set_target_properties(png12 PROPERTIES LINK_OPTIONS "LINKER:--version-script=${CMAKE_CURRENT_SOURCE_DIR}/libpng.vers") |
|
|
|
|
|
|
|
|
|
# Ensure Build |
|
|
|
|
add_custom_target(png12-build ALL DEPENDS png12) |
|
|
|
|