1# write.dfa
2#  Build time configuration of libpng
3#
4# Author: John Bowler
5# Copyright: (c) John Bowler, 2013
6# Usage rights:
7#  To the extent possible under law, the author has waived all copyright and
8#  related or neighboring rights to this work.  This work is published from:
9#  United States.
10#
11# Build libpng with no read support and minimal write support.
12#
13
14everything = off
15
16# Switch on the write code - this makes a minimalist encoder
17
18option WRITE on
19
20# Choose fixed or floating point APIs and arithmetic.  The choices are
21# independent but normally they will match.  It is typically better to use the
22# floating point if you have floating point hardware.  If you don't know, or
23# (perhaps) to make libpng smaller used fixed point throughout.
24
25#Fixed point:
26#option FIXED_POINT on
27#option FLOATING_ARITHMETIC off
28
29#Floating point:
30option FLOATING_POINT on
31option FLOATING_ARITHMETIC on
32
33# Basic error handling, IO and user memory support.  The latter allows the
34# application program to provide its own implementations of 'malloc' and 'free'.
35option SETJMP on
36option STDIO on
37option USER_MEM on
38
39# Everything else is optional.  Unlike the read code in libpng the write code
40# does not need to deal with arbitrary formats, so only add support for things
41# you really do write!  For example you might only write sRGB images, sometimes
42# with transparency and never write 16 bit images, so:
43option WRITE_sRGB on
44option WRITE_tRNS on
45#option WRITE_16BIT off (this is the default with 'everything = off')
46