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