[libpng16] Updated CMakeLists.txt to add OSX framework, change YES/NO to ON/OFF

for consistency, and remove some useless tests (Alexey Petruchik).
This commit is contained in:
Glenn Randers-Pehrson 2015-03-12 06:48:01 -05:00
parent bc27b2f432
commit f2c37d0abf
3 changed files with 46 additions and 29 deletions

View File

@ -1,4 +1,4 @@
Libpng 1.6.17rc02 - March 9, 2015 Libpng 1.6.17rc03 - March 12, 2015
This is not intended to be a public release. It will be replaced This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version. within a few weeks by a public version or by another test version.
@ -8,20 +8,20 @@ Files available for download:
Source files with LF line endings (for Unix/Linux) and with a Source files with LF line endings (for Unix/Linux) and with a
"configure" script "configure" script
1.6.17rc02.tar.xz (LZMA-compressed, recommended) 1.6.17rc03.tar.xz (LZMA-compressed, recommended)
1.6.17rc02.tar.gz 1.6.17rc03.tar.gz
Source files with CRLF line endings (for Windows), without the Source files with CRLF line endings (for Windows), without the
"configure" script "configure" script
lp1617r02.7z (LZMA-compressed, recommended) lp1617r03.7z (LZMA-compressed, recommended)
lp1617r02.zip lp1617r03.zip
Other information: Other information:
1.6.17rc02-README.txt 1.6.17rc03-README.txt
1.6.17rc02-LICENSE.txt 1.6.17rc03-LICENSE.txt
libpng-1.6.17rc02-*.asc (armored detached GPG signatures) libpng-1.6.17rc03-*.asc (armored detached GPG signatures)
Changes since the last public release (1.6.16): Changes since the last public release (1.6.16):
@ -73,6 +73,10 @@ Version 1.6.17rc02 [March 9, 2015]
properly from scripts/pnglibconf.dfa and pnglibconf.h.prebuilt. properly from scripts/pnglibconf.dfa and pnglibconf.h.prebuilt.
Free the unknown_chunks structure even when it contains no data. Free the unknown_chunks structure even when it contains no data.
Version 1.6.17rc03 [March 12, 2015]
Updated CMakeLists.txt to add OSX framework, change YES/NO to ON/OFF
for consistency, and remove some useless tests (Alexey Petruchik).
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement https://lists.sourceforge.net/lists/listinfo/png-mng-implement

View File

@ -5174,6 +5174,10 @@ Version 1.6.17rc02 [March 9, 2015]
properly from scripts/pnglibconf.dfa and pnglibconf.h.prebuilt. properly from scripts/pnglibconf.dfa and pnglibconf.h.prebuilt.
Free the unknown_chunks structure even when it contains no data. Free the unknown_chunks structure even when it contains no data.
Version 1.6.17rc03 [March 12, 2015]
Updated CMakeLists.txt to add OSX framework, change YES/NO to ON/OFF
for consistency, and remove some useless tests (Alexey Petruchik).
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement https://lists.sourceforge.net/lists/listinfo/png-mng-implement

View File

@ -1,6 +1,6 @@
# CMakeLists.txt # CMakeLists.txt
# Copyright (C) 2007-2014 Glenn Randers-Pehrson # Copyright (C) 2007-2015 Glenn Randers-Pehrson
# This code is released under the libpng license. # This code is released under the libpng license.
# For conditions of distribution and use, see the disclaimer # For conditions of distribution and use, see the disclaimer
@ -30,8 +30,7 @@ if(NOT WIN32)
PATHS /usr/lib /usr/local/lib PATHS /usr/lib /usr/local/lib
) )
if(NOT M_LIBRARY) if(NOT M_LIBRARY)
message(STATUS message(STATUS "math lib 'libm' not found; floating point support disabled")
"math library 'libm' not found - floating point support disabled")
endif() endif()
else() else()
# not needed on windows # not needed on windows
@ -39,22 +38,14 @@ else()
endif() endif()
# COMMAND LINE OPTIONS # COMMAND LINE OPTIONS
if(DEFINED PNG_SHARED)
option(PNG_SHARED "Build shared lib" ${PNG_SHARED})
else()
option(PNG_SHARED "Build shared lib" ON) option(PNG_SHARED "Build shared lib" ON)
endif()
if(DEFINED PNG_STATIC)
option(PNG_STATIC "Build static lib" ${PNG_STATIC})
else()
option(PNG_STATIC "Build static lib" ON) option(PNG_STATIC "Build static lib" ON)
endif() option(PNG_TESTS "Build libpng tests" ON)
option(PNG_TESTS "Build libpng tests" YES)
# Many more configuration options could be added here # Many more configuration options could be added here
option(PNG_DEBUG "Build with debug output" NO) option(PNG_FRAMEWORK "Build OS X framework" OFF)
option(PNGARG "Disable ANSI-C prototypes" NO) option(PNG_DEBUG "Build with debug output" OFF)
option(PNGARG "Disable ANSI-C prototypes" OFF)
# SET LIBNAME # SET LIBNAME
set(PNG_LIB_NAME png${PNGLIB_MAJOR}${PNGLIB_MINOR}) set(PNG_LIB_NAME png${PNGLIB_MAJOR}${PNGLIB_MINOR})
@ -145,10 +136,27 @@ if(PNG_STATIC)
target_link_libraries(${PNG_LIB_NAME_STATIC} ${ZLIB_LIBRARY} ${M_LIBRARY}) target_link_libraries(${PNG_LIB_NAME_STATIC} ${ZLIB_LIBRARY} ${M_LIBRARY})
endif() endif()
if(PNG_FRAMEWORK)
set(PNG_LIB_NAME_FRAMEWORK ${PNG_LIB_NAME}_framework)
add_library(${PNG_LIB_NAME_FRAMEWORK} SHARED ${libpng_sources})
list(APPEND PNG_LIB_TARGETS ${PNG_LIB_NAME_FRAMEWORK})
set_target_properties(${PNG_LIB_NAME_FRAMEWORK} PROPERTIES
FRAMEWORK TRUE
FRAMEWORK_VERSION ${PNGLIB_VERSION}
MACOSX_FRAMEWORK_SHORT_VERSION_STRING ${PNGLIB_MAJOR}.${PNGLIB_MINOR}
MACOSX_FRAMEWORK_BUNDLE_VERSION ${PNGLIB_VERSION}
MACOSX_FRAMEWORK_IDENTIFIER org.libpng.libpng
XCODE_ATTRIBUTE_INSTALL_PATH "@rpath"
PUBLIC_HEADER "${libpng_public_hdrs}"
OUTPUT_NAME png)
target_link_libraries(${PNG_LIB_NAME_FRAMEWORK} ${ZLIB_LIBRARY} ${M_LIBRARY})
endif()
if(NOT PNG_LIB_TARGETS) if(NOT PNG_LIB_TARGETS)
message(SEND_ERROR message(SEND_ERROR
"No library variant selected to build. " "No library variant selected to build. "
"Please enable at least one of the following options: PNG_STATIC, PNG_SHARED") "Please enable at least one of the following options: "
" PNG_STATIC, PNG_SHARED, PNG_FRAMEWORK")
endif() endif()
if(PNG_SHARED AND WIN32) if(PNG_SHARED AND WIN32)
@ -253,7 +261,7 @@ endif(NOT WIN32 OR CYGWIN OR MINGW)
# SET UP LINKS # SET UP LINKS
if(PNG_SHARED) if(PNG_SHARED)
set_target_properties(${PNG_LIB_NAME} PROPERTIES set_target_properties(${PNG_LIB_NAME} PROPERTIES
# VERSION 16.${PNGLIB_RELEASE}.1.6.17rc02 # VERSION 16.${PNGLIB_RELEASE}.1.6.17rc03
VERSION 16.${PNGLIB_RELEASE}.0 VERSION 16.${PNGLIB_RELEASE}.0
SOVERSION 16 SOVERSION 16
CLEAN_DIRECT_OUTPUT 1) CLEAN_DIRECT_OUTPUT 1)
@ -284,7 +292,8 @@ if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL )
${PNG_EXPORT_RULE} ${PNG_EXPORT_RULE}
RUNTIME DESTINATION bin RUNTIME DESTINATION bin
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR})
if(PNG_SHARED) if(PNG_SHARED)
# Create a symlink for libpng.dll.a => libpng16.dll.a on Cygwin # Create a symlink for libpng.dll.a => libpng16.dll.a on Cygwin