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