Skip to content

Commit

Permalink
Initial commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
sizious committed Sep 26, 2018
1 parent 79242d2 commit ee51efc
Show file tree
Hide file tree
Showing 456 changed files with 166,592 additions and 0 deletions.
Empty file added bin/.gitkeep
Empty file.
6 changes: 6 additions & 0 deletions build.cmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
@echo off
title=Making PVRXPNG...
echo Making PVRXPNG... Wait.
echo.
mingw32-make
pause
64 changes: 64 additions & 0 deletions deps/libpng/ANNOUNCE
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@

Libpng 1.2.39 - August 13, 2009

This is a public release of libpng, intended for use in production codes.

Files available for download:

Source files with LF line endings (for Unix/Linux) and with a
"configure" script

libpng-1.2.39.tar.xz (LZMA-compressed, recommended)
libpng-1.2.39.tar.gz
libpng-1.2.39.tar.bz2

Source files with LF line endings (for Unix/Linux) without the
"configure" script

libpng-1.2.39-no-config.tar.xz (LZMA-compressed, recommended)
libpng-1.2.39-no-config.tar.gz
libpng-1.2.39-no-config.tar.bz2

Source files with CRLF line endings (for Windows), without the
"configure" script

lpng1239.zip
lpng1239.7z
lpng1239.tar.bz2

Project files

libpng-1.2.39-project-netware.zip
libpng-1.2.39-project-wince.zip

Other information:

libpng-1.2.39-README.txt
libpng-1.2.39-KNOWNBUGS.txt
libpng-1.2.39-LICENSE.txt
libpng-1.2.39-Y2K-compliance.txt
libpng-1.2.39-[previous version]-diff.txt

Changes since the last public release (1.2.38):

version 1.2.39 [August 13, 2009]

Added a prototype for png_64bit_product() in png.h
Expanded the information about prototypes in the libpng style section of
the documentation.
Rebuilt configure scripts with autoconf-2.64.
Avoid a possible NULL dereference in debug build, in png_set_text_2().
(bug introduced in libpng-0.95, discovered by Evan Rouault)
Replaced *.tar.lzma with *.tar.xz in distribution. Get the xz codec
from <http://tukaani.org/xz>.
Reject attempt to write iCCP chunk with negative embedded profile length
(JD Chen)

Send comments/corrections/commendations to png-mng-implement at lists.sf.net

Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
to subscribe) or to glennrp at users.sourceforge.net

Glenn R-P
2,469 changes: 2,469 additions & 0 deletions deps/libpng/CHANGES

Large diffs are not rendered by default.

219 changes: 219 additions & 0 deletions deps/libpng/INSTALL
Original file line number Diff line number Diff line change
@@ -0,0 +1,219 @@

Installing libpng version 1.2.39 - August 13, 2009

On Unix/Linux and similar systems, you can simply type

./configure [--prefix=/path]
make check
make install

and ignore the rest of this document.

If configure does not work on your system and you have a reasonably
up-to-date set of tools, running ./autogen.sh before running ./configure
may fix the problem. You can also run the individual commands in
autogen.sh with the --force option, if supported by your version of
the tools. If you run 'libtoolize --force', though, this will replace
the distributed, patched, version of ltmain.sh with an unpatched version
and your shared library builds may fail to produce libraries with the
correct version numbers.

Instead, you can use one of the custom-built makefiles in the
"scripts" directory

cp scripts/makefile.system makefile
make test
make install

Or you can use one of the "projects" in the "projects" directory.

If you want to use "cmake" (see www.cmake.org), copy CMakeLists.txt
from the "scripts" directory to this directory and type

cmake . [-DPNG_MMX=YES] -DCMAKE_INSTALL_PREFIX=/path
make
make install

Before installing libpng, you must first install zlib, if it
is not already on your system. zlib can usually be found
wherever you got libpng. zlib can be placed in another directory,
at the same level as libpng.

If your system already has a preinstalled zlib you will still need
to have access to the zlib.h and zconf.h include files that
correspond to the version of zlib that's installed.

You can rename the directories that you downloaded (they
might be called "libpng-1.2.39" or "lpng109" and "zlib-1.2.1"
or "zlib121") so that you have directories called "zlib" and "libpng".

Your directory structure should look like this:

.. (the parent directory)
libpng (this directory)
INSTALL (this file)
README
*.h
*.c
contrib
gregbook
pngminus
pngsuite
visupng
projects
beos
c5builder (Borland)
visualc6 (msvc)
netware.txt
wince.txt
scripts
makefile.*
pngtest.png
etc.
zlib
README
*.h
*.c
contrib
etc.

If the line endings in the files look funny, you may wish to get the other
distribution of libpng. It is available in both tar.gz (UNIX style line
endings) and zip (DOS style line endings) formats.

If you are building libpng with MSVC, you can enter the
libpng projects\visualc6 directory and follow the instructions in
projects\visualc6\README.txt.

You can build libpng for WindowsCE by downloading and installing
the projects\wince directory as instructed in the projects\wince.txt file, and
then following the instructions in the README* files. Similarly, you can
build libpng for Netware or Beos as instructed in projects\netware.txt
or projects\beos.

Else enter the zlib directory and follow the instructions in zlib/README,
then come back here and run "configure" or choose the appropriate
makefile.sys in the scripts directory.

The files that are presently available in the scripts directory
include

CMakeLists.txt => "cmake" script
makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
makefile.elf => Linux/ELF makefile symbol versioning,
gcc, creates libpng12.so.0.1.2.39)
makefile.linux => Linux/ELF makefile
(gcc, creates libpng12.so.0.1.2.39)
makefile.gcc => Generic makefile (gcc, creates static libpng.a)
makefile.knr => Archaic UNIX Makefile that converts files with
ansi2knr (Requires ansi2knr.c from
ftp://ftp.cs.wisc.edu/ghost)
makefile.aix => AIX/gcc makefile
makefile.cygwin => Cygwin/gcc makefile
makefile.darwin => Darwin makefile, can use on MacosX
makefile.dec => DEC Alpha UNIX makefile
makefile.freebsd => FreeBSD makefile
makefile.hpgcc => HPUX makefile using gcc
makefile.hpux => HPUX (10.20 and 11.00) makefile
makefile.hp64 => HPUX (10.20 and 11.00) makefile, 64-bit
makefile.ibmc => IBM C/C++ version 3.x for Win32 and OS/2 (static)
makefile.intel => Intel C/C++ version 4.0 and later
libpng.icc => Project file for IBM VisualAge/C++ version 4.0 or later
makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD, makes libpng.so.
makefile.ne12bsd => NetBSD/cc makefile, uses PNGGCCRD,
makes libpng12.so
makefile.openbsd => OpenBSD makefile
makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib)
makefile.sggcc => Silicon Graphics (gcc,
creates libpng12.so.0.1.2.39)
makefile.sunos => Sun makefile
makefile.solaris => Solaris 2.X makefile (gcc,
creates libpng12.so.0.1.2.39)
makefile.solaris-x86 => Solaris/intelMMX 2.X makefile (gcc,
creates libpng12.so.0.1.2.39)
makefile.so9 => Solaris 9 makefile (gcc,
creates libpng12.so.0.1.2.39)
makefile.32sunu => Sun Ultra 32-bit makefile
makefile.64sunu => Sun Ultra 64-bit makefile
makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc
makefile.mips => MIPS makefile
makefile.acorn => Acorn makefile
makefile.amiga => Amiga makefile
smakefile.ppc => AMIGA smakefile for SAS C V6.58/7.00 PPC compiler
(Requires SCOPTIONS, copied from scripts/SCOPTIONS.ppc)
makefile.atari => Atari makefile
makefile.beos => BEOS makefile for X86
makefile.bor => Borland makefile (uses bcc)
makefile.bc32 => 32-bit Borland C++ (all modules compiled in C mode)
makefile.tc3 => Turbo C 3.0 makefile
makefile.dj2 => DJGPP 2 makefile
makefile.msc => Microsoft C makefile
makefile.vcwin32 => makefile for Microsoft Visual C++ 4.0 and later
makefile.os2 => OS/2 Makefile (gcc and emx, requires pngos2.def)
pngos2.def => OS/2 module definition file used by makefile.os2
makefile.watcom => Watcom 10a+ Makefile, 32-bit flat memory model
makevms.com => VMS build script
descrip.mms => VMS makefile for MMS or MMK
SCOPTIONS.ppc => Used with smakefile.ppc

Copy the file (or files) that you need from the
scripts directory into this directory, for example

MSDOS example: copy scripts\makefile.msc makefile
UNIX example: cp scripts/makefile.std makefile

Read the makefile to see if you need to change any source or
target directories to match your preferences.

Then read pngconf.h to see if you want to make any configuration
changes.

Then just run "make" which will create the libpng library in
this directory and "make test" which will run a quick test that reads
the "pngtest.png" file and writes a "pngout.png" file that should be
identical to it. Look for "9782 zero samples" in the output of the
test. For more confidence, you can run another test by typing
"pngtest pngnow.png" and looking for "289 zero samples" in the output.
Also, you can run "pngtest -m contrib/pngsuite/*.png" and compare
your output with the result shown in contrib/pngsuite/README.

Most of the makefiles will allow you to run "make install" to
put the library in its final resting place (if you want to
do that, run "make install" in the zlib directory first if necessary).
Some also allow you to run "make test-installed" after you have
run "make install".

If you encounter a compiler error message complaining about the
lines
__png.h__ already includes setjmp.h;
__dont__ include it again.;
This means you have compiled another module that includes setjmp.h,
which is hazardous because the two modules might not include exactly
the same setjmp.h. If you are sure that you know what you are doing
and that they are exactly the same, then you can comment out or
delete the two lines. Better yet, use the cexcept interface
instead, as demonstrated in contrib/visupng of the libpng distribution.

Further information can be found in the README and libpng.txt
files, in the individual makefiles, in png.h, and the manual pages
libpng.3 and png.5.


Using the ./configure script -- 16 December 2002.
=================================================


The ./configure script should work compatibly with what scripts/makefile.*
did, however there are some options you need to add to configure explicitly,
which previously was done semi-automatically (if you didn't edit
scripts/makefile.* yourself, that is)


CFLAGS="-Wall -O -funroll-loops \
-malign-loops=2 -malign-functions=2" ./configure --prefix=/usr/include \
--with-pkgconfigdir=/usr/lib/pkgconfig --includedir=/usr/include

You can alternatively specify --includedir=/usr/include, /usr/local/include,
/usr/include/png12, or whatever.


22 changes: 22 additions & 0 deletions deps/libpng/KNOWNBUG
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@

Known bugs in libpng version 1.2.39

1. February 23, 2006: The custom makefiles don't build libpng with -lz.

STATUS: This is a subject of debate. The change will probably be made
as a part of a major overhaul of the makefiles in libpng version 1.4.0.

2. February 24, 2006: The Makefile generated by the "configure" script
fails to install symbolic links
libpng12.so => libpng12.so.0.1.2.9betaN
that are generated by the custom makefiles.

3. September 4, 2007: There is a report that pngtest crashes on MacOS 10.

STATUS: workarounds are
1) Compile without optimization (crashes are observed with
-arch i386 and -O2 or -O3, using gcc-4.0.1).
2) Compile pngtest.c with PNG_DEBUG defined (the bug goes away if
you try to look at it).
3) Ignore the crash. The library itself seems to be OK.

Loading

0 comments on commit ee51efc

Please sign in to comment.