1 # read.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 basic read support. This enables the lowest level libpng 12 # read API - the one where the calling code has to use a loop to read each row. 13 # At present this is the API used by most programs. 14 # 15 # Support is enabled only for those chunks and transformations that are 16 # typically required - others can be added easily. 17 # 18 19 everything = off 20 21 # The sequential read code is enabled here; the progressive code can be used 22 # instead but there is no point enabling both. 23 24 option SEQUENTIAL_READ on 25 26 # Likewise it is pointless enabling both fixed and floating point APIs. Choose 27 # one or the other for both the API and the internal math. 28 29 #Fixed point: 30 #option FIXED_POINT on 31 #option FLOATING_ARITHMETIC off 32 33 #Floating point: 34 option FLOATING_POINT on 35 option FLOATING_ARITHMETIC on 36 37 # Basic error handling, IO and user memory support. The latter allows the 38 # application program to provide its own implementations of 'malloc' and 'free'. 39 option SETJMP on 40 option STDIO on 41 option USER_MEM on 42 43 # To read the full set of PNG images correctly interlace, transparency and 44 # 16-bit support is required. The application can implement interlace itself, 45 # but very few do and it's no longer possible to disable it when READ is 46 # enabled. 47 option READ_tRNS on 48 option READ_16BIT on 49 50 # Everything else is application dependent. This file assumes the app handles 51 # all the native PNG bit layouts, so it doesn't need any of layout change 52 # transforms, but needs libpng to perform gamma correction. It doesn't do any 53 # colorspace stuff and ignores the 'significant bit' information. 54 # 55 # If your app always expands the image to a limited set of bit layouts you 56 # probably want to consider using the simplified API instead of the low level 57 # one - see png.h and s_read.dfa. 58 option READ_GAMMA on 59