blob: 28b841d8b6e5661eacc618d002134ea14a5b6b5d [file] [log] [blame]
Chris Craikca2bf812013-07-29 15:28:30 -07001
Matt Sarett9ea75692016-01-08 13:00:42 -05002/* symbols.c - find all exported symbols
Chris Craikca2bf812013-07-29 15:28:30 -07003 *
Matt Sarett9ea75692016-01-08 13:00:42 -05004 * Last changed in libpng version 1.6.16 [December 22, 2014]
5 * Copyright (c) 2011-2014 Glenn Randers-Pehrson
Chris Craikca2bf812013-07-29 15:28:30 -07006 *
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
Matt Sarett9ea75692016-01-08 13:00:42 -050014 * 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.
Chris Craikca2bf812013-07-29 15:28:30 -070017 */
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"