提交 b3b71680 编写于 作者: G Glenn Randers-Pehrson

[devel] Added appropriate feature test macros (_POSIX_SOURCE, _ISOC99_SOURCE)

to ensure libpng sees the correct API.
上级 1384c048
Libpng 1.5.3beta05 - April 29, 2011
Libpng 1.5.3beta05 - May 4, 2011
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.
......@@ -76,7 +76,12 @@ Version 1.5.3beta04 [April 27, 2011]
Changed png_struct jmp_buf member name from png_jmpbuf to tmp_jmpbuf to
avoid a clash with the png_jmpbuf macro on some platforms.
Version 1.5.3beta05 [April 29, 2011]
Version 1.5.3beta05 [May 4, 2011]
Added appropriate feature test macros to ensure libpng sees the correct API
_POSIX_SOURCE is defined in pngpriv.h, pngtest.c and pngvalid.c to ensure
that POSIX conformant systems disable non-POSIX APIs. _ISOC99_SOURCE is
defined in pngpriv.h to obtain the ISO C99 snprintf definition, when
available.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
(subscription required; visit
......
......@@ -3337,7 +3337,12 @@ Version 1.5.3beta04 [April 27, 2011]
Changed png_struct jmp_buf member name from png_jmpbuf to tmp_jmpbuf to
avoid a possible clash with the png_jmpbuf macro on some platforms.
Version 1.5.3beta05 [April 29, 2011]
Version 1.5.3beta05 [May 4, 2011]
Added appropriate feature test macros to ensure libpng sees the correct API
_POSIX_SOURCE is defined in pngpriv.h, pngtest.c and pngvalid.c to ensure
that POSIX conformant systems disable non-POSIX APIs. _ISOC99_SOURCE is
defined in pngpriv.h to obtain the ISO C99 snprintf definition, when
available.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
......
......@@ -25,6 +25,21 @@
#ifndef PNGPRIV_H
#define PNGPRIV_H
/* Feature Test Macros. The following are defined here to ensure that correctly
* implemented libraries reveal the APIs libpng needs to build and hide those
* that are not needed and potentially damaging to the compilation.
*
* Feature Test Macros must be defined before any system header is included (see
* POSIX 1003.1 2.8.2 "POSIX Symbols."
*
* These macros only have an effect if the operating system supports either
* POSIX 1003.1 or C99, or both. On other operating systems (particularly
* Windows/Visual Studio) there is no effect; the OS specific tests below are
* still required (as of 2011-05-02.)
*/
#define _POSIX_SOURCE 1 /* Just the POSIX 1003.1 and C89 APIs */
#define _ISOC99_SOURCE 1 /* for snprintf */
/* This is required for the definition of abort(), used as a last ditch
* error handler when all else fails.
*/
......
......@@ -31,6 +31,8 @@
* of files at once by typing "pngtest -m file1.png file2.png ..."
*/
#define _POSIX_SOURCE 1
#include "zlib.h"
#include "png.h"
/* Copied from pngpriv.h but only used in error messages below. */
......
......@@ -19,6 +19,8 @@
* transformations performed by libpng.
*/
#define _POSIX_SOURCE 1
#include "png.h"
#if PNG_LIBPNG_VER < 10500
/* This delibarately lacks the PNG_CONST. */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册