1
2/* symbols.c - find all exported symbols
3 *
4 * Last changed in libpng version 1.6.16 [December 22, 2014]
5 * Copyright (c) 2011-2014 Glenn Randers-Pehrson
6 *
7 * This code is released under the libpng license.
8 * For conditions of distribution and use, see the disclaimer
9 * and license in png.h
10 */
11
12/* NOTE: making 'symbols.chk' checks both that the exported
13 * symbols in the library don't change and (implicitly) that
14 * scripts/pnglibconf.h.prebuilt is as expected.
15 * If scripts/pnglibconf.h.prebuilt is remade using
16 * scripts/pnglibconf.dfa then this checks the .dfa file too.
17 */
18
19#define PNG_EXPORTA(ordinal, type, name, args, attributes)\
20        PNG_DFN "@" name "@ @@" ordinal "@"
21#define PNG_REMOVED(ordinal, type, name, args, attributes)\
22        PNG_DFN "; @" name "@ @@" ordinal "@"
23#define PNG_EXPORT_LAST_ORDINAL(ordinal)\
24        PNG_DFN "; @@" ordinal "@"
25
26/* Read the defaults, but use scripts/pnglibconf.h.prebuilt; the 'standard'
27 * header file.
28 */
29#include "pnglibconf.h.prebuilt"
30#include "../png.h"
31
32/* Some things are turned off by default.  Turn these things
33 * on here (by hand) to get the APIs they expose and validate
34 * that no harm is done.  This list is the set of options
35 * defaulted to 'off' in scripts/pnglibconf.dfa
36 *
37 * Maintenance: if scripts/pnglibconf.dfa options are changed
38 * from, or to, 'disabled' this needs updating!
39 */
40#define PNG_BENIGN_ERRORS_SUPPORTED
41#define PNG_ERROR_NUMBERS_SUPPORTED
42#define PNG_READ_BIG_ENDIAN_SUPPORTED  /* should do nothing! */
43#define PNG_INCH_CONVERSIONS_SUPPORTED
44#define PNG_READ_16_TO_8_ACCURATE_SCALE_SUPPORTED
45#define PNG_SET_OPTION_SUPPORTED
46
47#undef PNG_H
48#include "../png.h"
49
50/* Finally there are a couple of places where option support
51 * actually changes the APIs revealed using a #if/#else/#endif
52 * test in png.h, test these here.
53 */
54#undef  PNG_FLOATING_POINT_SUPPORTED /* Exposes 'fixed' APIs */
55#undef  PNG_ERROR_TEXT_SUPPORTED     /* Exposes unsupported APIs */
56
57#undef PNG_H
58#include "../png.h"
59