doc: Update the README and TODO files

This commit is contained in:
Cosmin Truta 2024-09-14 22:35:51 +03:00
parent 222dd7ca49
commit c0f3dd43d8
4 changed files with 88 additions and 95 deletions

2
README
View File

@ -157,8 +157,6 @@ Files included in this distribution
"PNG: The Definitive Guide" by Greg Roelofs, "PNG: The Definitive Guide" by Greg Roelofs,
O'Reilly, 1999 O'Reilly, 1999
libtests/ => Test programs libtests/ => Test programs
oss-fuzz/ => Files used by the OSS-Fuzz project for fuzz-testing
libpng
pngexif/ => Program to inspect the EXIF information in PNG files pngexif/ => Program to inspect the EXIF information in PNG files
pngminim/ => Minimal decoder, encoder, and progressive decoder pngminim/ => Minimal decoder, encoder, and progressive decoder
programs demonstrating the use of pngusr.dfa programs demonstrating the use of pngusr.dfa

43
TODO
View File

@ -1,23 +1,22 @@
TODO - list of things to do for libpng: TODO list for libpng
--------------------
* Fix all defects (duh!) * Fix all defects (duh!)
* Better C++ wrapper / full C++ implementation (?) * cHRM transformation.
* Fix the problems with C++ and 'extern "C"'. * Palette creation.
* cHRM transformation. * "grayscale->palette" transformation and "palette->grayscale" detection.
* Palette creation. * Improved dithering.
* "grayscale->palette" transformation and "palette->grayscale" detection. * Multi-lingual error and warning message support.
* Improved dithering. * Complete sRGB transformation. (Currently it simply uses gamma=0.45455.)
* Multi-lingual error and warning message support. * Man pages for function calls.
* Complete sRGB transformation. (Currently it simply uses gamma=0.45455.) * Better documentation.
* Man pages for function calls. * Better filter selection
* Better documentation. (e.g., counting huffman bits/precompression; filter inertia; filter costs).
* Better filter selection * Histogram creation.
(e.g., counting huffman bits/precompression; filter inertia; filter costs). * Text conversion between different code pages (e.g., Latin-1 to Mac).
* Histogram creation. * Avoid building gamma tables whenever possible.
* Text conversion between different code pages (e.g., Latin-1 -> Mac). * Greater precision in changing to linear gamma for compositing against
* Avoid building gamma tables whenever possible. background, and in doing rgb-to-gray transformations.
* Greater precision in changing to linear gamma for compositing against * Investigate pre-incremented loop counters and other loop constructions.
background, and in doing rgb-to-gray transformations. * Interpolated method of handling interlacing.
* Investigate pre-incremented loop counters and other loop constructions. * More validations for libpng transformations.
* Interpolated method of handling interlacing.
* More validations for libpng transformations.

View File

@ -1,3 +1,5 @@
External contributions to libpng
--------------------------------
This "contrib" directory contains contributions which are not necessarily under This "contrib" directory contains contributions which are not necessarily under
the libpng license, although all are open source. They are not part of the libpng license, although all are open source. They are not part of

View File

@ -1,79 +1,73 @@
Scripts and makefiles for libpng
--------------------------------
Makefiles for libpng pnglibconf.h.prebuilt => Configuration settings
pnglibconf.h.prebuilt => Configuration settings makefile.aix => AIX/gcc makefile
makefile.linux => Linux/ELF makefile makefile.amiga => Amiga makefile
(gcc, creates shared libpng16.so.16.1.6.*) makefile.atari => Atari makefile
makefile.linux-opt=> Linux/ELF makefile with hardware optimizations on makefile.bc32 => Borland C makefile, for Win32
(gcc, creates shared libpng16.so.16.1.6.*) makefile.beos => BeOS makefile
makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.clang => Generic clang makefile
makefile.acorn => Acorn makefile makefile.darwin => Darwin makefile, for macOS (formerly Mac OS X)
makefile.aix => AIX/gcc makefile makefile.dec => DEC Alpha UNIX makefile
makefile.amiga => Amiga makefile makefile.dj2 => DJGPP 2 makefile
makefile.atari => Atari makefile makefile.emcc => Emscripten makefile
makefile.bc32 => 32-bit Borland C++ (all modules compiled in C mode) makefile.freebsd => FreeBSD makefile
makefile.beos => BeOS makefile makefile.gcc => Generic gcc makefile
makefile.clang => Generic clang makefile makefile.hpgcc => HPUX makefile using gcc
makefile.darwin => Darwin makefile, for macOS (formerly Mac OS X) makefile.hpux => HPUX (10.20 and 11.00) makefile
makefile.dec => DEC Alpha UNIX makefile makefile.hp64 => HPUX (10.20 and 11.00) makefile, 64-bit
makefile.dj2 => DJGPP 2 makefile makefile.ibmc => IBM C/C++ version 3.x for Win32 and OS/2 (static lib)
makefile.freebsd => FreeBSD makefile makefile.intel => Intel C/C++ version 4.0 and later
makefile.gcc => Generic gcc makefile makefile.linux => Linux/ELF makefile
makefile.hpgcc => HPUX makefile using gcc (gcc, creates shared libpng16.so.16.1.6.*)
makefile.hpux => HPUX (10.20 and 11.00) makefile makefile.mips => MIPS makefile
makefile.hp64 => HPUX (10.20 and 11.00) makefile, 64-bit makefile.msys => MSYS (MinGW) makefile
makefile.ibmc => IBM C/C++ version 3.x for Win32 and OS/2 (static) makefile.netbsd => NetBSD/cc makefile, makes shared libpng.so
makefile.intel => Intel C/C++ version 4.0 and later makefile.openbsd => OpenBSD makefile
makefile.mips => MIPS makefile makefile.riscos => Acorn RISCOS makefile
makefile.netbsd => NetBSD/cc makefile, makes shared libpng.so makefile.sco => SCO OSr5 ELF and Unixware 7 with Native cc
makefile.openbsd => OpenBSD makefile makefile.sgi => Silicon Graphics IRIX makefile (cc, static lib)
makefile.sco => SCO OSr5 ELF and Unixware 7 with Native cc makefile.sggcc => Silicon Graphics makefile
makefile.sggcc => Silicon Graphics makefile (gcc, creates shared libpng16.so.16.1.6.*)
(gcc, creates shared libpng16.so.16.1.6.*) makefile.solaris => Solaris 2.X makefile
makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib) (gcc, creates shared libpng16.so.16.1.6.*)
makefile.solaris => Solaris 2.X makefile makefile.so9 => Solaris 9 makefile
(gcc, creates shared libpng16.so.16.1.6.*) (gcc, creates shared libpng16.so.16.1.6.*)
makefile.so9 => Solaris 9 makefile makefile.std => Generic UNIX makefile (cc, static lib)
(gcc, creates shared libpng16.so.16.1.6.*) makefile.sunos => Sun makefile
makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.32sunu => Sun Ultra 32-bit makefile
makefile.sunos => Sun makefile makefile.64sunu => Sun Ultra 64-bit makefile
makefile.32sunu => Sun Ultra 32-bit makefile makefile.vcwin32 => makefile for Microsoft Visual C++ 4.0 and later
makefile.64sunu => Sun Ultra 64-bit makefile makevms.com => VMS build script
makefile.vcwin32 => makefile for Microsoft Visual C++ 4.0 and later smakefile.ppc => AMIGA smakefile for SAS C V6.58/7.00 PPC compiler
makevms.com => VMS build script (Requires SCOPTIONS, copied from SCOPTIONS.ppc)
smakefile.ppc => AMIGA smakefile for SAS C V6.58/7.00 PPC compiler
(Requires SCOPTIONS, copied from scripts/SCOPTIONS.ppc)
Other supporting scripts: Other supporting scripts
README.txt => This file ------------------------
descrip.mms => VMS makefile for MMS or MMK
libpng-config-body.in => used by several makefiles to create libpng-config
libpng-config-head.in => used by several makefiles to create libpng-config
libpng.pc.in => Used by several makefiles to create libpng.pc
pngwin.rc => Used by the visualc71 project
pngwin.def => Used by makefile.os2
pngwin.dfn => Used to maintain pngwin.def
SCOPTIONS.ppc => Used with smakefile.ppc
checksym.awk => Used for maintaining pnglibconf.h README.txt => This file
def.dfn => Used for maintaining pnglibconf.h descrip.mms => VMS makefile for MMS or MMK
options.awk => Used for maintaining pnglibconf.h libpng-config-body.in => used by several makefiles to create libpng-config
pnglibconf.dfa => Used for maintaining pnglibconf.h libpng-config-head.in => used by several makefiles to create libpng-config
pnglibconf.mak => Used for maintaining pnglibconf.h libpng.pc.in => Used by several makefiles to create libpng.pc
sym.dfn => Used for symbol versioning macro.lst => Used by GNU Autotools
symbols.def => Used for symbol versioning pngwin.rc => Used by the visualc71 project
symbols.dfn => Used for symbol versioning pngwin.def => Used by makefile.os2
vers.dfn => Used for symbol versioning pngwin.dfn => Used to maintain pngwin.def
SCOPTIONS.ppc => Used with smakefile.ppc
libtool.m4 => Used by autoconf tools checksym.awk => Used for maintaining pnglibconf.h
ltoptions.m4 => Used by autoconf tools dfn.awk => Used for maintaining pnglibconf.h
ltsugar.m4 => Used by autoconf tools options.awk => Used for maintaining pnglibconf.h
ltversion.m4 => Used by autoconf tools pnglibconf.dfa => Used for maintaining pnglibconf.h
lt~obsolete.m4 => Used by autoconf tools pnglibconf.mak => Used for maintaining pnglibconf.h
intprefix.c => Used for symbol versioning
intprefix.dfn => Used by autoconf tools prefix.c => Used for symbol versioning
macro.lst => Used by autoconf tools sym.c => Used for symbol versioning
prefix.dfn => Used by autoconf tools symbols.c => Used for symbol versioning
vers.c => Used for symbol versioning
Further information can be found in comments in the individual scripts and Further information can be found in comments in the individual scripts and
makefiles. makefiles.