Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Libpng
提交
d1e8c869
T
Third Party Libpng
项目概览
OpenHarmony
/
Third Party Libpng
1 年多 前同步成功
通知
4
Star
22
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Libpng
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
d1e8c869
编写于
6月 20, 2002
作者:
G
Glenn Randers-Pehrson
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Imported from libpng-1.2.4beta2.tar
上级
07748d1b
变更
65
隐藏空白更改
内联
并排
Showing
65 changed file
with
401 addition
and
266 deletion
+401
-266
ANNOUNCE
ANNOUNCE
+9
-2
CHANGES
CHANGES
+8
-1
INSTALL
INSTALL
+30
-8
KNOWNBUG
KNOWNBUG
+12
-3
LICENSE
LICENSE
+2
-2
README
README
+16
-6
Y2KINFO
Y2KINFO
+2
-2
configure
configure
+1
-1
contrib/msvctest/msvctest.dsp
contrib/msvctest/msvctest.dsp
+4
-4
contrib/visupng/VisualPng.dsp
contrib/visupng/VisualPng.dsp
+6
-6
example.c
example.c
+5
-5
libpng.3
libpng.3
+9
-9
libpng.txt
libpng.txt
+3
-3
libpngpf.3
libpngpf.3
+2
-2
png.5
png.5
+1
-1
png.c
png.c
+6
-6
png.h
png.h
+23
-20
pngasmrd.h
pngasmrd.h
+1
-1
pngconf.h
pngconf.h
+4
-5
pngerror.c
pngerror.c
+1
-1
pnggccrd.c
pnggccrd.c
+5
-5
pngget.c
pngget.c
+2
-2
pngmem.c
pngmem.c
+3
-3
pngpread.c
pngpread.c
+38
-29
pngread.c
pngread.c
+10
-6
pngrio.c
pngrio.c
+1
-1
pngrtran.c
pngrtran.c
+2
-2
pngrutil.c
pngrutil.c
+3
-3
pngset.c
pngset.c
+8
-8
pngtest.c
pngtest.c
+3
-3
pngtrans.c
pngtrans.c
+1
-1
pngvcrd.c
pngvcrd.c
+1
-1
pngwio.c
pngwio.c
+1
-1
pngwrite.c
pngwrite.c
+1
-2
pngwtran.c
pngwtran.c
+1
-1
pngwutil.c
pngwutil.c
+1
-1
projects/msvc/README.txt
projects/msvc/README.txt
+8
-8
projects/msvc/libpng.dsp
projects/msvc/libpng.dsp
+6
-6
projects/msvc/png32ms.def
projects/msvc/png32ms.def
+1
-1
projects/netware.txt
projects/netware.txt
+2
-2
projects/wince.txt
projects/wince.txt
+2
-2
scripts/libpng-config-head.in
scripts/libpng-config-head.in
+1
-1
scripts/libpng.pc.in
scripts/libpng.pc.in
+1
-1
scripts/makefile.32sunu
scripts/makefile.32sunu
+1
-1
scripts/makefile.64sunu
scripts/makefile.64sunu
+1
-1
scripts/makefile.aix
scripts/makefile.aix
+1
-1
scripts/makefile.beos
scripts/makefile.beos
+1
-1
scripts/makefile.cygwin
scripts/makefile.cygwin
+2
-2
scripts/makefile.darwin
scripts/makefile.darwin
+1
-1
scripts/makefile.dec
scripts/makefile.dec
+3
-2
scripts/makefile.gcmmx
scripts/makefile.gcmmx
+22
-13
scripts/makefile.hpgcc
scripts/makefile.hpgcc
+1
-1
scripts/makefile.hpux
scripts/makefile.hpux
+1
-1
scripts/makefile.linux
scripts/makefile.linux
+15
-7
scripts/makefile.macosx
scripts/makefile.macosx
+1
-1
scripts/makefile.ne12bsd
scripts/makefile.ne12bsd
+1
-1
scripts/makefile.netbsd
scripts/makefile.netbsd
+1
-1
scripts/makefile.openbsd
scripts/makefile.openbsd
+1
-1
scripts/makefile.sco
scripts/makefile.sco
+1
-1
scripts/makefile.sggcc
scripts/makefile.sggcc
+58
-28
scripts/makefile.sgi
scripts/makefile.sgi
+36
-18
scripts/makefile.so9
scripts/makefile.so9
+3
-3
scripts/makefile.solaris
scripts/makefile.solaris
+1
-1
scripts/pngdef.pas
scripts/pngdef.pas
+1
-1
scripts/pngos2.def
scripts/pngos2.def
+1
-1
未找到文件。
ANNOUNCE
浏览文件 @
d1e8c869
Libpng 1.2.4beta
1 - May 25
, 2002
Libpng 1.2.4beta
2 - June 20
, 2002
This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version.
Changes since the last public release (1.2.3):
version 1.2.4beta1 [May 2
5
, 2002]
version 1.2.4beta1 [May 2
4
, 2002]
Added libpng.pc and libpng-config to "all:" target in 16 makefiles.
Fixed bug in 16 makefiles: $(DESTDIR)/$(LIBPATH) to $(DESTDIR)$(LIBPATH)
Added missing "\" before closing double quote in makefile.gcmmx.
Plugged various memory leaks; added png_malloc_warn() and png_set_text_2()
functions.
version 1.2.4beta2 [June 20, 2002]
Plugged memory leak of png_ptr->current_text (Matt Holgate).
Check for buffer overflow before reading CRC in pngpread.c (Warwick Allison)
Added -soname to the loader flags in makefile.dec, makefile.sgi, and
makefile.sggcc.
Added "test-installed" targets to makefile.linux, makefile.gcmmx,
makefile.sgi, and makefile.sggcc.
Send comments/corrections/commendations to
png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu
...
...
CHANGES
浏览文件 @
d1e8c869
...
...
@@ -1125,12 +1125,19 @@ version 1.2.3 [May 22, 2002]
Minor cosmetic changes to 15 makefiles, e.g., $(DI) = $(DESTDIR)/$(INCDIR).
Revised projects/msvc/README.txt
Changed -lpng to -lpngNN in LDFLAGS in several makefiles.
version 1.2.4beta1 [May 2
5
, 2002]
version 1.2.4beta1 [May 2
4
, 2002]
Added libpng.pc and libpng-config to "all:" target in 16 makefiles.
Fixed bug in 16 makefiles: $(DESTDIR)/$(LIBPATH) to $(DESTDIR)$(LIBPATH)
Added missing "\" before closing double quote in makefile.gcmmx.
Plugged various memory leaks; added png_malloc_warn() and png_set_text_2()
functions.
version 1.2.4beta2 [June 20, 2002]
Plugged memory leak of png_ptr->current_text (Matt Holgate).
Check for buffer overflow before reading CRC in pngpread.c (Warwick Allison)
Added -soname to the loader flags in makefile.dec, makefile.sgi, and
makefile.sggcc.
Added "test-installed" targets to makefile.linux, makefile.gcmmx,
makefile.sgi, and makefile.sggcc.
Send comments/corrections/commendations to
png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu
...
...
INSTALL
浏览文件 @
d1e8c869
Installing libpng version 1.2.4beta
1 - May 25
, 2002
Installing libpng version 1.2.4beta
2 - June 20
, 2002
Before installing libpng, you must first install zlib. zlib
can usually be found wherever you got libpng. zlib can be
...
...
@@ -10,8 +10,8 @@ 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.4beta
1" or "lpng109" and "zlib-1.1.3
"
or "zlib11
3
") so that you have directories called "zlib" and "libpng".
might be called "libpng-1.2.4beta
2" or "lpng109" and "zlib-1.1.4
"
or "zlib11
4
") so that you have directories called "zlib" and "libpng".
Your directory structure should look like this:
...
...
@@ -35,6 +35,10 @@ Your directory structure should look like this:
wince.txt
scripts
makefile.*
libpng*.in
mangle
makefile.*
mangle.in
pngtest.png
etc.
zlib
...
...
@@ -64,8 +68,8 @@ The files that are presently available in the scripts directory
include
makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
makefile.linux => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.4beta
1
)
makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.4beta
1
,
makefile.linux => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.4beta
2
)
makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.4beta
2
,
uses assembler code tuned for Intel MMX platform)
makefile.gcc => Generic makefile (gcc, creates static libpng.a)
makefile.knr => Archaic UNIX Makefile that converts files with
...
...
@@ -86,10 +90,10 @@ include
makefile.ne0bsd => NetBSD/cc makefile, uses PNGGCCRD, makes libpng0.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.4beta
1
)
makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.4beta
2
)
makefile.sunos => Sun makefile
makefile.solaris => Solaris 2.X makefile (gcc, creates libpng12.so.0.1.2.4beta
1
)
makefile.so9 => Solaris 9 makefile (gcc, creates libpng12.so.0.1.2.4beta
1
)
makefile.solaris => Solaris 2.X makefile (gcc, creates libpng12.so.0.1.2.4beta
2
)
makefile.so9 => Solaris 9 makefile (gcc, creates libpng12.so.0.1.2.4beta
2
)
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
...
...
@@ -142,6 +146,24 @@ 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". This will build and run executables called "pngtesti"
and "mangle/pngtestm".
The files that are presently available in the mangle directory include the
following. The makefiles are automatically run by the corresponding makefiles
in the scripts directory when you run "make", "make install", or
"make test-installed".
mangle.in => Function-decoration macros added to png.h by the
makefiles.
makefile.linux => Linux/ELF makefile
(gcc, creates libpng12m.so.0.1.2.4beta2)
makefile.gcmmx => Linux/ELF makefile (gcc, creates
libpng12.so.0m.1.2.4beta2, uses assembler code
tuned for Intel MMX platform)
makefile.sgi => Silicon Graphics (cc, creates libpng12m.so)
makefile.sggcc => Silicon Graphics (gcc, creates libpng12m.so)
Further information can be found in the README and libpng.txt
files, in the individual makefiles, in png.h, in the README files in
...
...
KNOWNBUG
浏览文件 @
d1e8c869
Known bugs in libpng version 1.2.4beta
1
Known bugs in libpng version 1.2.4beta
2
1. April 22, 2001: pnggccrd.c has been reported to crash on NetBSD when
1. May 28, 2002: Makefile.so9 has bugs. The last line under the
install-headers target should be
(cd $(DI); ln -f -s $(LIBNAME) libpng; ln -f -s $(LIBNAME)/* .)
and the last line under the install-static target should be
2. April 22, 2001: pnggccrd.c has been reported to crash on NetBSD when
reading interlaced PNG files, when assembler code is enabled.
STATUS: Under investigation. The change to pnggccrd.c in libpng-1.2.1
fixed a problem under FreeBSD but not the problem with NetBSD.
fixed a problem under FreeBSD but not the problem with NetBSD, which
still fails as of libpng-1.2.2rc1.
LICENSE
浏览文件 @
d1e8c869
...
...
@@ -8,7 +8,7 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
If you modify libpng you may insert additional notices immediately following
this sentence.
libpng versions 1.0.7, July 1, 2000, through 1.2.4beta
1, May 25
, 2002, are
libpng versions 1.0.7, July 1, 2000, through 1.2.4beta
2, June 20
, 2002, are
Copyright (c) 2000-2002 Glenn Randers-Pehrson
and are distributed according to the same disclaimer and license as libpng-1.0.6
with the following individuals added to the list of Contributing Authors
...
...
@@ -99,4 +99,4 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
randeg@alum.rpi.edu
May 25
, 2002
June 20
, 2002
README
浏览文件 @
d1e8c869
README for libpng 1.2.4beta
1 - May 25, 2002 (shared library 2.1
)
README for libpng 1.2.4beta
2 - June 20, 2002 (shared library 12.0
)
See the note about version numbers near the top of png.h
See INSTALL for instructions on how to install libpng.
...
...
@@ -187,9 +187,9 @@ Files in this distribution:
descrip.mms => VMS makefile for MMS or MMK
makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
makefile.linux => Linux/ELF makefile
(gcc, creates libpng12.so.0.1.2.4beta
1
)
(gcc, creates libpng12.so.0.1.2.4beta
2
)
makefile.gcmmx => Linux/ELF makefile (gcc, creates
libpng12.so.0.1.2.4beta
1
, uses assembler code
libpng12.so.0.1.2.4beta
2
, uses assembler code
tuned for Intel MMX platform)
makefile.gcc => Generic makefile (gcc, creates static libpng.a)
makefile.knr => Archaic UNIX Makefile that converts files with
...
...
@@ -210,12 +210,12 @@ Files in this distribution:
makefile.ne0bsd => NetBSD/cc makefile, PNGGCCRD, makes libpng0.so
makefile.openbsd => OpenBSD makefile
makefile.sgi => Silicon Graphics IRIX (cc, creates static lib)
makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.4beta
1
)
makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.4beta
2
)
makefile.sunos => Sun makefile
makefile.solaris => Solaris 2.X makefile
(gcc, creates libpng12.so.0.1.2.4beta
1
)
(gcc, creates libpng12.so.0.1.2.4beta
2
)
makefile.so9 => Solaris 9 makefile
(gcc, creates libpng12.so.0.1.2.4beta
1
)
(gcc, creates libpng12.so.0.1.2.4beta
2
)
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
...
...
@@ -244,6 +244,16 @@ Files in this distribution:
makevms.com => VMS build script
pngdef.pas => Defines for a png32bd.dll with Borland C++ 4.5
SCOPTIONS.ppc => Used with smakefile.ppc
mangle => Directory containing scripts to build libpng12m.so:
mangle.in => Function-decoration macros added to png.h by the
makefiles.
makefile.linux => Linux/ELF makefile
(gcc, creates libpng12m.so.0.1.2.4beta2)
makefile.gcmmx => Linux/ELF makefile (gcc, creates
libpng12.so.0m.1.2.4beta2, uses assembler code
tuned for Intel MMX platform)
makefile.sgi => Silicon Graphics (cc, creates libpng12m.so)
makefile.sggcc => Silicon Graphics (gcc, creates libpng12m.so)
Good luck, and happy coding.
...
...
Y2KINFO
浏览文件 @
d1e8c869
Y2K compliance in libpng:
=========================
May 25
, 2002
June 20
, 2002
Since the PNG Development group is an ad-hoc body, we can't make
an official declaration.
This is your unofficial assurance that libpng from version 0.71 and
upward through 1.2.4beta
1
are Y2K compliant. It is my belief that earlier
upward through 1.2.4beta
2
are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer
...
...
configure
浏览文件 @
d1e8c869
echo "
There is no \"configure\" script for Libpng-1.2.4beta
1
. Instead, please
There is no \"configure\" script for Libpng-1.2.4beta
2
. Instead, please
copy the appropriate makefile for your system from the \"scripts\"
directory. Read the INSTALL file for more details.
"
...
...
contrib/msvctest/msvctest.dsp
浏览文件 @
d1e8c869
...
...
@@ -54,7 +54,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:console /machine:I386
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll\libpng1
2
.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll\libpng1
3
.lib /nologo /subsystem:console /machine:I386
# Begin Special Build Tool
OutDir=.\dll
SOURCE="$(InputPath)"
...
...
@@ -84,7 +84,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll_dbg\libpng1
2
d.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll_dbg\libpng1
3
d.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# Begin Special Build Tool
OutDir=.\dll_dbg
SOURCE="$(InputPath)"
...
...
@@ -114,7 +114,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:console /machine:I386
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll_asm\libpng1
2
a.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll_asm\libpng1
3
a.lib /nologo /subsystem:console /machine:I386
# Begin Special Build Tool
OutDir=.\dll_asm
SOURCE="$(InputPath)"
...
...
@@ -144,7 +144,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll_dbga\libpng1
2
b.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 ..\..\projects\msvc\win32\libpng\dll_dbga\libpng1
3
b.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# Begin Special Build Tool
OutDir=.\dll_dbga
SOURCE="$(InputPath)"
...
...
contrib/visupng/VisualPng.dsp
浏览文件 @
d1e8c869
...
...
@@ -59,8 +59,8 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 libpng1
2
.lib zlibd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /libpath:"libpng" /libpath:"zlib"
# ADD LINK32 libpng1
2
.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /libpath:"..\..\projects\msvc\win32\libpng\dll"
# ADD BASE LINK32 libpng1
3
.lib zlibd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /libpath:"libpng" /libpath:"zlib"
# ADD LINK32 libpng1
3
.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /libpath:"..\..\projects\msvc\win32\libpng\dll"
# Begin Special Build Tool
OutDir=.\dll
SOURCE="$(InputPath)"
...
...
@@ -92,9 +92,9 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 libpng1
2
.lib zlibd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc" /pdbtype:sept /libpath:"libpng" /libpath:"zlib"
# ADD BASE LINK32 libpng1
3
.lib zlibd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc" /pdbtype:sept /libpath:"libpng" /libpath:"zlib"
# SUBTRACT BASE LINK32 /nodefaultlib
# ADD LINK32 libpng1
2
d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc" /pdbtype:sept /libpath:"..\..\projects\msvc\win32\libpng\dll_dbg"
# ADD LINK32 libpng1
3
d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc" /pdbtype:sept /libpath:"..\..\projects\msvc\win32\libpng\dll_dbg"
# SUBTRACT LINK32 /nodefaultlib
# Begin Special Build Tool
OutDir=.\dll_dbg
...
...
@@ -128,7 +128,7 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 libpng1
2
.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /libpath:"..\..\projects\msvc\win32\libpng\dll"
# ADD BASE LINK32 libpng1
3
.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /libpath:"..\..\projects\msvc\win32\libpng\dll"
# ADD LINK32 libpng.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /libpath:"..\..\projects\msvc\win32\libpng\lib"
# Begin Special Build Tool
OutDir=.\lib
...
...
@@ -161,7 +161,7 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 libpng1
2
d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc" /pdbtype:sept /libpath:"..\..\projects\msvc\win32\libpng\dll_dbg"
# ADD BASE LINK32 libpng1
3
d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc" /pdbtype:sept /libpath:"..\..\projects\msvc\win32\libpng\dll_dbg"
# SUBTRACT BASE LINK32 /nodefaultlib
# ADD LINK32 libpng.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libc" /pdbtype:sept /libpath:"..\..\projects\msvc\win32\libpng\lib_dbg"
# SUBTRACT LINK32 /nodefaultlib
...
...
example.c
浏览文件 @
d1e8c869
...
...
@@ -169,11 +169,11 @@ void read_png(FILE *fp, unsigned int sig_read) /* file is already open */
png_get_IHDR
(
png_ptr
,
info_ptr
,
&
width
,
&
height
,
&
bit_depth
,
&
color_type
,
&
interlace_type
,
int_p_NULL
,
int_p_NULL
);
/*
***
Set up the data transformations you want. Note that these are all
*
***
optional. Only call them if you want/need them. Many of the
*
***
transformations only work on specific types of images, and many
*
***
are mutually exclusive.
*
***
/
/* Set up the data transformations you want. Note that these are all
* optional. Only call them if you want/need them. Many of the
* transformations only work on specific types of images, and many
* are mutually exclusive.
*/
/* tell libpng to strip 16 bit/color files down to 8 bits/color */
png_set_strip_16
(
png_ptr
);
...
...
libpng.3
浏览文件 @
d1e8c869
.TH LIBPNG 3 "
May 25
, 2002"
.TH LIBPNG 3 "
June 20
, 2002"
.SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.2.4beta
1
libpng \- Portable Network Graphics (PNG) Reference Library 1.2.4beta
2
.SH SYNOPSIS
\fI\fB
...
...
@@ -791,7 +791,7 @@ Following is a copy of the libpng.txt file that accompanies libpng.
.SH LIBPNG.TXT
libpng.txt - A description on how to use and modify libpng
libpng version 1.2.4beta
1 - May 25
, 2002
libpng version 1.2.4beta
2 - June 20
, 2002
Updated and distributed by Glenn Randers-Pehrson
<randeg@alum.rpi.edu>
Copyright (c) 1998-2002 Glenn Randers-Pehrson
...
...
@@ -3641,13 +3641,13 @@ application:
.SH IX. Y2K Compliance in libpng
May 25
, 2002
June 20
, 2002
Since the PNG Development group is an ad-hoc body, we can't make
an official declaration.
This is your unofficial assurance that libpng from version 0.71 and
upward through 1.2.4beta
1
are Y2K compliant. It is my belief that earlier
upward through 1.2.4beta
2
are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer that
...
...
@@ -3778,7 +3778,7 @@ the first widely used release:
1.2.2 12 10202 12.so.0.1.2.2
1.2.3rc1-6 12 10203 12.so.0.1.2.3rc1-6
1.2.3 12 10203 12.so.0.1.2.3
1.2.4beta1
13 10204 12.so.0.1.2.4beta1
1.2.4beta1
-2 13 10204 12.so.0.1.2.4beta1-2
Henceforth the source version will match the shared-library minor
and patch numbers; the shared-library major version number will be
...
...
@@ -3836,7 +3836,7 @@ possible without all of you.
Thanks to Frank J. T. Wojcik for helping with the documentation.
Libpng version 1.2.4beta
1 - May 25
, 2002:
Libpng version 1.2.4beta
2 - June 20
, 2002:
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
Currently maintained by Glenn Randers-Pehrson (randeg@alum.rpi.edu).
...
...
@@ -3853,7 +3853,7 @@ included in the libpng distribution, the latter shall prevail.)
If you modify libpng you may insert additional notices immediately following
this sentence.
libpng versions 1.0.7, July 1, 2000, through 1.2.4beta
1, May 25
, 2002, are
libpng versions 1.0.7, July 1, 2000, through 1.2.4beta
2, June 20
, 2002, are
Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-1.0.6
with the following individuals added to the list of Contributing Authors
...
...
@@ -3945,7 +3945,7 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
randeg@alum.rpi.edu
May 25
, 2002
June 20
, 2002
.\" end of man page
libpng.txt
浏览文件 @
d1e8c869
libpng.txt - A description on how to use and modify libpng
libpng version 1.2.4beta
1 - May 25
, 2002
libpng version 1.2.4beta
2 - June 20
, 2002
Updated and distributed by Glenn Randers-Pehrson
<randeg@alum.rpi.edu>
Copyright (c) 1998-2002 Glenn Randers-Pehrson
...
...
@@ -2850,13 +2850,13 @@ application:
IX. Y2K Compliance in libpng
May 25
, 2002
June 20
, 2002
Since the PNG Development group is an ad-hoc body, we can't make
an official declaration.
This is your unofficial assurance that libpng from version 0.71 and
upward through 1.2.4beta
1
are Y2K compliant. It is my belief that earlier
upward through 1.2.4beta
2
are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer that
...
...
libpngpf.3
浏览文件 @
d1e8c869
.TH LIBPNGPF 3 "
May 25
, 2002"
.TH LIBPNGPF 3 "
June 20
, 2002"
.SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.2.4beta
1
libpng \- Portable Network Graphics (PNG) Reference Library 1.2.4beta
2
(private functions)
.SH SYNOPSIS
\fB#include <png.h>\fP
...
...
png.5
浏览文件 @
d1e8c869
.TH PNG 5 "
May 25
, 2002"
.TH PNG 5 "
June 20
, 2002"
.SH NAME
png \- Portable Network Graphics (PNG) format
.SH DESCRIPTION
...
...
png.c
浏览文件 @
d1e8c869
/* png.c - location for general purpose libpng functions
*
* libpng version 1.2.4beta
1 - May 25
, 2002
* libpng version 1.2.4beta
2 - June 20
, 2002
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
...
...
@@ -13,14 +13,14 @@
#include "png.h"
/* Generate a compiler error if there is an old png.h in the search path. */
typedef
version_1_2_4beta
1
Your_png_h_is_not_version_1_2_4beta1
;
typedef
version_1_2_4beta
2
Your_png_h_is_not_version_1_2_4beta2
;
/* Version information for C files. This had better match the version
* string defined in png.h. */
#ifdef PNG_USE_GLOBAL_ARRAYS
/* png_libpng_ver was changed to a function in version 1.0.5c */
const
char
png_libpng_ver
[
18
]
=
"1.2.4beta
1
"
;
const
char
png_libpng_ver
[
18
]
=
"1.2.4beta
2
"
;
/* png_sig was changed to a function in version 1.0.5c */
/* Place to hold the signature string for a PNG file. */
...
...
@@ -663,7 +663,7 @@ png_charp PNGAPI
png_get_copyright
(
png_structp
png_ptr
)
{
if
(
png_ptr
!=
NULL
||
png_ptr
==
NULL
)
/* silence compiler warning */
return
((
png_charp
)
"
\n
libpng version 1.2.4beta
1 - May 25
, 2002
\n
\
return
((
png_charp
)
"
\n
libpng version 1.2.4beta
2 - June 20
, 2002
\n
\
Copyright (c) 1998-2002 Glenn Randers-Pehrson
\n
\
Copyright (c) 1996-1997 Andreas Dilger
\n
\
Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
\n
"
);
...
...
@@ -681,8 +681,8 @@ png_get_libpng_ver(png_structp png_ptr)
{
/* Version of *.c files used when building libpng */
if
(
png_ptr
!=
NULL
)
/* silence compiler warning about unused png_ptr */
return
((
png_charp
)
"1.2.4beta
1
"
);
return
((
png_charp
)
"1.2.4beta
1
"
);
return
((
png_charp
)
"1.2.4beta
2
"
);
return
((
png_charp
)
"1.2.4beta
2
"
);
}
png_charp
PNGAPI
...
...
png.h
浏览文件 @
d1e8c869
/* png.h - header file for PNG reference library
*
* libpng version 1.2.4beta
1 - May 25
, 2002
* libpng version 1.2.4beta
2 - June 20
, 2002
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
...
...
@@ -8,7 +8,7 @@
* Authors and maintainers:
* libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat
* libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger
* libpng versions 0.97, January 1998, through 1.2.4beta
1 - May 25
, 2002: Glenn
* libpng versions 0.97, January 1998, through 1.2.4beta
2 - June 20
, 2002: Glenn
* See also "Contributing Authors", below.
*
* Note about libpng version numbers:
...
...
@@ -88,7 +88,7 @@
* 1.2.2 12 10202 12.so.0.1.2.2
* 1.2.3rc1-6 12 10203 12.so.0.1.2.3rc1-6
* 1.2.3 12 10203 12.so.0.1.2.3
* 1.2.4beta1
13 10204 12.so.0.1.2.4beta1
* 1.2.4beta1
-2 13 10204 12.so.0.1.2.4beta1-2
*
* Henceforth the source version will match the shared-library major
* and minor numbers; the shared-library major version number will be
...
...
@@ -118,7 +118,7 @@
* If you modify libpng you may insert additional notices immediately following
* this sentence.
*
* libpng versions 1.0.7, July 1, 2000, through 1.2.4beta
1, May 25
, 2002, are
* libpng versions 1.0.7, July 1, 2000, through 1.2.4beta
2, June 20
, 2002, are
* Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
* distributed according to the same disclaimer and license as libpng-1.0.6
* with the following individuals added to the list of Contributing Authors
...
...
@@ -223,13 +223,13 @@
* Y2K compliance in libpng:
* =========================
*
*
May 25
, 2002
*
June 20
, 2002
*
* Since the PNG Development group is an ad-hoc body, we can't make
* an official declaration.
*
* This is your unofficial assurance that libpng from version 0.71 and
* upward through 1.2.4beta
1
are Y2K compliant. It is my belief that earlier
* upward through 1.2.4beta
2
are Y2K compliant. It is my belief that earlier
* versions were also Y2K compliant.
*
* Libpng only has three year fields. One is a 2-byte unsigned integer
...
...
@@ -285,7 +285,7 @@
*/
/* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.2.4beta
1
"
#define PNG_LIBPNG_VER_STRING "1.2.4beta
2
"
#define PNG_LIBPNG_VER_SONUM 0
#define PNG_LIBPNG_VER_DLLNUM %DLLNUM%
...
...
@@ -297,7 +297,7 @@
/* This should match the numeric part of the final component of
* PNG_LIBPNG_VER_STRING, omitting any leading zero: */
#define PNG_LIBPNG_VER_BUILD
1
#define PNG_LIBPNG_VER_BUILD
2
#define PNG_LIBPNG_BUILD_ALPHA 1
#define PNG_LIBPNG_BUILD_BETA 2
...
...
@@ -374,7 +374,7 @@ extern "C" {
*/
#ifdef PNG_USE_GLOBAL_ARRAYS
PNG_EXPORT_VAR
(
const
char
)
png_libpng_ver
[
18
];
/* need room for 99.99.99beta99z*/
/* need room for 99.99.99beta99z
*/
#else
#define png_libpng_ver png_get_header_ver(NULL)
#endif
...
...
@@ -600,7 +600,7 @@ typedef struct png_info_struct
png_byte
interlace_type
;
/* One of PNG_INTERLACE_NONE, PNG_INTERLACE_ADAM7 */
/* The following is informational only on read, and not used on writes. */
png_byte
channels
;
/* number of data channels per pixel (1, 2, 3, 4)*/
png_byte
channels
;
/* number of data channels per pixel (1, 2, 3, 4)
*/
png_byte
pixel_depth
;
/* number of bits per pixel */
png_byte
spare_byte
;
/* to align the data, and for future use */
png_byte
signature
[
8
];
/* magic bytes read by libpng from start of file */
...
...
@@ -890,7 +890,7 @@ typedef png_info FAR * FAR * png_infopp;
#define PNG_KEYWORD_MAX_LENGTH 79
/* Maximum number of entries in PLTE/sPLT/tRNS arrays */
#define PNG_MAX_PALETTE_LENGTH
256
#define PNG_MAX_PALETTE_LENGTH
256
/* These determine if an ancillary chunk's data has been successfully read
* from the PNG header, or if the application has filled in the corresponding
...
...
@@ -1009,7 +1009,7 @@ struct png_struct_def
png_voidp
error_ptr
;
/* user supplied struct for error functions */
png_rw_ptr
write_data_fn
;
/* function for writing output data */
png_rw_ptr
read_data_fn
;
/* function for reading input data */
png_voidp
io_ptr
;
/* ptr to application struct for I/O functions*/
png_voidp
io_ptr
;
/* ptr to application struct for I/O functions
*/
#if defined(PNG_READ_USER_TRANSFORM_SUPPORTED)
png_user_transform_ptr
read_user_transform_fn
;
/* user read transform */
...
...
@@ -1274,9 +1274,9 @@ struct png_struct_def
/* This prevents a compiler error in png.c if png.c and png.h are both at
version 1.2.4beta
1
version 1.2.4beta
2
*/
typedef
png_structp
version_1_2_4beta
1
;
typedef
png_structp
version_1_2_4beta
2
;
typedef
png_struct
FAR
*
FAR
*
png_structpp
;
...
...
@@ -1360,6 +1360,7 @@ extern PNG_EXPORT(png_infop,png_create_info_struct)
/* Initialize the info structure (old interface - DEPRECATED) */
extern
PNG_EXPORT
(
void
,
png_info_init
)
PNGARG
((
png_infop
info_ptr
));
#undef png_info_init
#define png_info_init(info_ptr) png_info_init_3(&info_ptr, sizeof(png_info));
extern
PNG_EXPORT
(
void
,
png_info_init_3
)
PNGARG
((
png_infopp
info_ptr
,
png_size_t
png_info_struct_size
));
...
...
@@ -1535,11 +1536,11 @@ extern PNG_EXPORT(void,png_start_read_image) PNGARG((png_structp png_ptr));
extern
PNG_EXPORT
(
void
,
png_read_update_info
)
PNGARG
((
png_structp
png_ptr
,
png_infop
info_ptr
));
/* read a one or more rows of image data.*/
/* read a one or more rows of image data.
*/
extern
PNG_EXPORT
(
void
,
png_read_rows
)
PNGARG
((
png_structp
png_ptr
,
png_bytepp
row
,
png_bytepp
display_row
,
png_uint_32
num_rows
));
/* read a row of data.*/
/* read a row of data.
*/
extern
PNG_EXPORT
(
void
,
png_read_row
)
PNGARG
((
png_structp
png_ptr
,
png_bytep
row
,
png_bytep
display_row
));
...
...
@@ -2327,15 +2328,15 @@ extern PNG_EXPORT(png_uint_32,png_permit_mng_features) PNGARG((png_structp
/* Added to version 1.2.0 */
#if defined(PNG_ASSEMBLER_CODE_SUPPORTED)
#define PNG_ASM_FLAG_MMX_SUPPORT_COMPILED 0x01
/* not user-settable */
#define PNG_ASM_FLAG_MMX_SUPPORT_IN_CPU 0x02
/* not user-settable */
#define PNG_ASM_FLAG_MMX_SUPPORT_COMPILED 0x01
/* not user-settable */
#define PNG_ASM_FLAG_MMX_SUPPORT_IN_CPU 0x02
/* not user-settable */
#define PNG_ASM_FLAG_MMX_READ_COMBINE_ROW 0x04
#define PNG_ASM_FLAG_MMX_READ_INTERLACE 0x08
#define PNG_ASM_FLAG_MMX_READ_FILTER_SUB 0x10
#define PNG_ASM_FLAG_MMX_READ_FILTER_UP 0x20
#define PNG_ASM_FLAG_MMX_READ_FILTER_AVG 0x40
#define PNG_ASM_FLAG_MMX_READ_FILTER_PAETH 0x80
#define PNG_ASM_FLAGS_INITIALIZED 0x80000000
/* not user-settable */
#define PNG_ASM_FLAGS_INITIALIZED 0x80000000
/* not user-settable */
#define PNG_MMX_READ_FLAGS ( PNG_ASM_FLAG_MMX_READ_COMBINE_ROW \
| PNG_ASM_FLAG_MMX_READ_INTERLACE \
...
...
@@ -2402,7 +2403,7 @@ extern PNG_EXPORT(void,png_set_strip_error_numbers) PNGARG((png_structp
/* Maintainer: Put new public prototypes here ^, in libpng.3, and project defs */
#define PNG_HEADER_VERSION_STRING \
" libpng version 1.2.4beta
1 - May 25
, 2002 (header)\n"
" libpng version 1.2.4beta
2 - June 20
, 2002 (header)\n"
#ifdef PNG_READ_COMPOSITE_NODIV_SUPPORTED
/* With these routines we avoid an integer divide, which will be slower on
...
...
@@ -2636,6 +2637,7 @@ PNG_EXTERN png_uint_16 png_get_uint_16 PNGARG((png_bytep buf));
* (old interface - DEPRECATED - use png_create_read_struct instead).
*/
extern
PNG_EXPORT
(
void
,
png_read_init
)
PNGARG
((
png_structp
png_ptr
));
#undef png_read_init
#define png_read_init(png_ptr) png_read_init_3(&png_ptr, \
PNG_LIBPNG_VER_STRING, sizeof(png_struct));
extern
PNG_EXPORT
(
void
,
png_read_init_3
)
PNGARG
((
png_structpp
ptr_ptr
,
...
...
@@ -2648,6 +2650,7 @@ extern PNG_EXPORT(void,png_read_init_2) PNGARG((png_structp png_ptr,
* (old interface - DEPRECATED - use png_create_write_struct instead).
*/
extern
PNG_EXPORT
(
void
,
png_write_init
)
PNGARG
((
png_structp
png_ptr
));
#undef png_write_init
#define png_write_init(png_ptr) png_write_init_3(&png_ptr, \
PNG_LIBPNG_VER_STRING, sizeof(png_struct));
extern
PNG_EXPORT
(
void
,
png_write_init_3
)
PNGARG
((
png_structpp
ptr_ptr
,
...
...
pngasmrd.h
浏览文件 @
d1e8c869
/* pngasmrd.h - assembler version of utilities to read a PNG file
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 2002 Glenn Randers-Pehrson
*
...
...
pngconf.h
浏览文件 @
d1e8c869
/* pngconf.h - machine configurable file for libpng
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -1185,8 +1185,7 @@ typedef z_stream FAR * png_zstreamp;
#if defined(PNG_DLL) || defined(_DLL) || defined(__DLL__ ) || \
(( defined(_Windows) || defined(_WINDOWS) || \
defined(WIN32) || defined(_WIN32) || defined(__WIN32__) \
))
defined(WIN32) || defined(_WIN32) || defined(__WIN32__) ))
# if defined(__GNUC__) || (defined (_MSC_VER) && (_MSC_VER >= 800))
# define PNGAPI __cdecl
...
...
@@ -1213,8 +1212,8 @@ typedef z_stream FAR * png_zstreamp;
# if defined(PNG_BUILD_DLL)
# define PNG_IMPEXP __export
# else
# define PNG_IMPEXP
/*__import*/
/* doesn't exist AFAIK in
VC++*/
# define PNG_IMPEXP
/*__import
*/
/* doesn't exist AFAIK in
VC++
*/
# endif
/* Exists in Borland C++ for
C++ classes (== huge) */
# endif
...
...
pngerror.c
浏览文件 @
d1e8c869
/* pngerror.c - stub functions for i/o and memory allocation
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
pnggccrd.c
浏览文件 @
d1e8c869
...
...
@@ -6,7 +6,7 @@
* and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm
* for Intel's performance analysis of the MMX vs. non-MMX code.
*
* libpng version 1.2.4beta
1 - May 25
, 2002
* libpng version 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation
...
...
@@ -338,7 +338,7 @@ static unsigned long long _const6 = 0x00000000000000FFLL;
static
png_uint_32
_FullLength
;
static
png_uint_32
_MMXLength
;
static
int
_dif
;
static
int
_patemp
;
// temp variables for Paeth routine
static
int
_patemp
;
// temp variables for Paeth routine
static
int
_pbtemp
;
static
int
_pctemp
;
#endif
...
...
@@ -386,9 +386,9 @@ static int _mmx_supported = 2;
#if defined(PNG_HAVE_ASSEMBLER_COMBINE_ROW)
#define BPP2 2
#define BPP3 3
/* bytes per pixel (a.k.a. pixel_bytes) */
#define BPP3 3
/* bytes per pixel (a.k.a. pixel_bytes) */
#define BPP4 4
#define BPP6 6
/* (defined only to help avoid cut-and-paste errors) */
#define BPP6 6
/* (defined only to help avoid cut-and-paste errors) */
#define BPP8 8
/* Combines the row recently read in with the previous row.
...
...
@@ -4825,7 +4825,7 @@ png_read_filter_row_mmx_sub(png_row_infop row_info, png_bytep row)
}
break
;
default:
// bpp greater than 8 bytes
GRR BOGUS
default:
// bpp greater than 8 bytes
GRR BOGUS
{
__asm__
__volatile__
(
"movl _dif, %%edx
\n\t
"
...
...
pngget.c
浏览文件 @
d1e8c869
/* pngget.c - retrieval of values from info struct
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -837,7 +837,7 @@ png_get_compression_buffer_size(png_structp png_ptr)
#ifndef PNG_1_0_X
#ifdef PNG_ASSEMBLER_CODE_SUPPORTED
/* this function was added to libpng 1.2.0 and should exist by default*/
/* this function was added to libpng 1.2.0 and should exist by default
*/
png_uint_32
PNGAPI
png_get_asm_flags
(
png_structp
png_ptr
)
{
...
...
pngmem.c
浏览文件 @
d1e8c869
/* pngmem.c - stub functions for memory allocation
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -306,7 +306,7 @@ png_free_default(png_structp png_ptr, png_voidp ptr)
/* Allocate memory for a png_struct or a png_info. The malloc and
memset can be replaced by a single call to calloc() if this is thought
to improve performance noticably.*/
to improve performance noticably.
*/
png_voidp
/* PRIVATE */
png_create_struct
(
int
type
)
{
...
...
@@ -316,7 +316,7 @@ png_create_struct(int type)
/* Allocate memory for a png_struct or a png_info. The malloc and
memset can be replaced by a single call to calloc() if this is thought
to improve performance noticably.*/
to improve performance noticably.
*/
png_voidp
/* PRIVATE */
png_create_struct_2
(
int
type
,
png_malloc_ptr
malloc_fn
,
png_voidp
mem_ptr
)
{
...
...
pngpread.c
浏览文件 @
d1e8c869
/* pngpread.c - read a png file in push mode
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -221,7 +221,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_IHDR
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
else
if
(
!
png_memcmp
(
png_ptr
->
chunk_name
,
png_PLTE
,
4
))
...
...
@@ -231,7 +230,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_PLTE
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
else
if
(
!
png_memcmp
(
png_ptr
->
chunk_name
,
(
png_bytep
)
png_IDAT
,
4
))
...
...
@@ -243,7 +241,7 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
if
(
!
(
png_ptr
->
mode
&
PNG_HAVE_IHDR
))
png_error
(
png_ptr
,
"Missing IHDR before IDAT"
);
else
if
(
png_ptr
->
color_type
==
PNG_COLOR_TYPE_PALETTE
&&
!
(
png_ptr
->
mode
&
PNG_HAVE_PLTE
))
!
(
png_ptr
->
mode
&
PNG_HAVE_PLTE
))
png_error
(
png_ptr
,
"Missing PLTE before IDAT"
);
if
(
png_ptr
->
mode
&
PNG_HAVE_IDAT
)
...
...
@@ -270,8 +268,8 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_IEND
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
png_ptr
->
process_mode
=
PNG_READ_DONE_MODE
;
png_push_have_end
(
png_ptr
,
info_ptr
);
}
...
...
@@ -283,7 +281,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_gAMA
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -295,7 +292,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_sBIT
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -307,7 +303,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_cHRM
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -319,7 +314,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_sRGB
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -331,7 +325,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_iCCP
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -343,7 +336,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_sPLT
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -355,7 +347,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_tRNS
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -367,7 +358,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_bKGD
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -379,7 +369,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_hIST
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -391,7 +380,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_pHYs
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -403,7 +391,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_oFFs
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -415,7 +402,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_pCAL
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -427,7 +413,6 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_sCAL
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
...
...
@@ -439,30 +424,49 @@ png_push_read_chunk(png_structp png_ptr, png_infop info_ptr)
png_push_save_buffer
(
png_ptr
);
return
;
}
png_handle_tIME
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
#if defined(PNG_READ_tEXt_SUPPORTED)
else
if
(
!
png_memcmp
(
png_ptr
->
chunk_name
,
png_tEXt
,
4
))
{
if
(
png_ptr
->
push_length
+
4
>
png_ptr
->
buffer_size
)
{
png_push_save_buffer
(
png_ptr
);
return
;
}
png_push_handle_tEXt
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
#if defined(PNG_READ_zTXt_SUPPORTED)
else
if
(
!
png_memcmp
(
png_ptr
->
chunk_name
,
png_zTXt
,
4
))
{
if
(
png_ptr
->
push_length
+
4
>
png_ptr
->
buffer_size
)
{
png_push_save_buffer
(
png_ptr
);
return
;
}
png_push_handle_zTXt
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
#if defined(PNG_READ_iTXt_SUPPORTED)
else
if
(
!
png_memcmp
(
png_ptr
->
chunk_name
,
png_iTXt
,
4
))
{
if
(
png_ptr
->
push_length
+
4
>
png_ptr
->
buffer_size
)
{
png_push_save_buffer
(
png_ptr
);
return
;
}
png_push_handle_iTXt
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
#endif
else
{
if
(
png_ptr
->
push_length
+
4
>
png_ptr
->
buffer_size
)
{
png_push_save_buffer
(
png_ptr
);
return
;
}
png_push_handle_unknown
(
png_ptr
,
info_ptr
,
png_ptr
->
push_length
);
}
...
...
@@ -802,13 +806,13 @@ png_push_process_row(png_structp png_ptr)
png_read_push_finish_row
(
png_ptr
);
}
}
if
(
png_ptr
->
pass
==
4
&&
png_ptr
->
height
<=
4
)
{
for
(
i
=
0
;
i
<
2
&&
png_ptr
->
pass
==
4
;
i
++
)
{
png_push_have_row
(
png_ptr
,
png_bytep_NULL
);
png_read_push_finish_row
(
png_ptr
);
}
if
(
png_ptr
->
pass
==
4
&&
png_ptr
->
height
<=
4
)
{
for
(
i
=
0
;
i
<
2
&&
png_ptr
->
pass
==
4
;
i
++
)
{
png_push_have_row
(
png_ptr
,
png_bytep_NULL
);
png_read_push_finish_row
(
png_ptr
);
}
}
if
(
png_ptr
->
pass
==
6
&&
png_ptr
->
height
<=
4
)
{
...
...
@@ -1067,7 +1071,6 @@ png_push_read_tEXt(png_structp png_ptr, png_infop info_ptr)
#endif
key
=
png_ptr
->
current_text
;
png_ptr
->
current_text
=
0
;
for
(
text
=
key
;
*
text
;
text
++
)
/* empty loop */
;
...
...
@@ -1088,6 +1091,7 @@ png_push_read_tEXt(png_structp png_ptr, png_infop info_ptr)
png_free
(
png_ptr
,
key
);
png_free
(
png_ptr
,
text_ptr
);
png_ptr
->
current_text
=
NULL
;
if
(
ret
)
png_warning
(
png_ptr
,
"Insufficient memory to store text chunk."
);
...
...
@@ -1161,7 +1165,6 @@ png_push_read_zTXt(png_structp png_ptr, png_infop info_ptr)
png_push_crc_finish
(
png_ptr
);
key
=
png_ptr
->
current_text
;
png_ptr
->
current_text
=
0
;
for
(
text
=
key
;
*
text
;
text
++
)
/* empty loop */
;
...
...
@@ -1169,6 +1172,7 @@ png_push_read_zTXt(png_structp png_ptr, png_infop info_ptr)
/* zTXt can't have zero text */
if
(
text
==
key
+
png_ptr
->
current_text_size
)
{
png_ptr
->
current_text
=
NULL
;
png_free
(
png_ptr
,
key
);
return
;
}
...
...
@@ -1177,6 +1181,7 @@ png_push_read_zTXt(png_structp png_ptr, png_infop info_ptr)
if
(
*
text
!=
PNG_TEXT_COMPRESSION_zTXt
)
/* check compression byte */
{
png_ptr
->
current_text
=
NULL
;
png_free
(
png_ptr
,
key
);
return
;
}
...
...
@@ -1201,6 +1206,7 @@ png_push_read_zTXt(png_structp png_ptr, png_infop info_ptr)
{
inflateReset
(
&
png_ptr
->
zstream
);
png_ptr
->
zstream
.
avail_in
=
0
;
png_ptr
->
current_text
=
NULL
;
png_free
(
png_ptr
,
key
);
png_free
(
png_ptr
,
text
);
return
;
...
...
@@ -1254,11 +1260,13 @@ png_push_read_zTXt(png_structp png_ptr, png_infop info_ptr)
if
(
ret
!=
Z_STREAM_END
)
{
png_ptr
->
current_text
=
NULL
;
png_free
(
png_ptr
,
key
);
png_free
(
png_ptr
,
text
);
return
;
}
png_ptr
->
current_text
=
NULL
;
png_free
(
png_ptr
,
key
);
key
=
text
;
text
+=
key_size
;
...
...
@@ -1355,7 +1363,6 @@ png_push_read_iTXt(png_structp png_ptr, png_infop info_ptr)
#endif
key
=
png_ptr
->
current_text
;
png_ptr
->
current_text
=
0
;
for
(
lang
=
key
;
*
lang
;
lang
++
)
/* empty loop */
;
...
...
@@ -1387,6 +1394,8 @@ png_push_read_iTXt(png_structp png_ptr, png_infop info_ptr)
ret
=
png_set_text_2
(
png_ptr
,
info_ptr
,
text_ptr
,
1
);
png_ptr
->
current_text
=
NULL
;
png_free
(
png_ptr
,
text_ptr
);
if
(
ret
)
png_warning
(
png_ptr
,
"Insufficient memory to store iTXt chunk."
);
...
...
pngread.c
浏览文件 @
d1e8c869
/* pngread.c - read a PNG file
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -70,8 +70,7 @@ png_create_read_struct_2(png_const_charp user_png_ver, png_voidp error_ptr,
png_ptr
->
zbuf
=
NULL
;
#ifdef PNG_USER_MEM_SUPPORTED
png_destroy_struct_2
((
png_voidp
)
png_ptr
,
(
png_free_ptr
)
free_fn
,
(
png_voidp
)
mem_ptr
);
(
png_free_ptr
)
free_fn
,
(
png_voidp
)
mem_ptr
);
#else
png_destroy_struct
((
png_voidp
)
png_ptr
);
#endif
...
...
@@ -175,7 +174,6 @@ png_read_init(png_structp png_ptr)
png_read_init_2
(
png_ptr
,
"1.0.6 or earlier"
,
0
,
0
);
}
#undef png_read_init_2
void
PNGAPI
png_read_init_2
(
png_structp
png_ptr
,
png_const_charp
user_png_ver
,
png_size_t
png_struct_size
,
png_size_t
png_info_size
)
...
...
@@ -795,7 +793,7 @@ png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row)
* not called png_set_interlace_handling(), the display_row buffer will
* be ignored, so pass NULL to it.
*
* [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.4beta
1
* [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.4beta
2
*/
void
PNGAPI
...
...
@@ -844,7 +842,7 @@ png_read_rows(png_structp png_ptr, png_bytepp row,
* only call this function once. If you desire to have an image for
* each pass of a interlaced image, use png_read_rows() instead.
*
* [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.4beta
1
* [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.4beta
2
*/
void
PNGAPI
png_read_image
(
png_structp
png_ptr
,
png_bytepp
image
)
...
...
@@ -1250,6 +1248,12 @@ png_read_destroy(png_structp png_ptr, png_infop info_ptr, png_infop end_info_ptr
png_free
(
png_ptr
,
png_ptr
->
save_buffer
);
#endif
#ifdef PNG_PROGRESSIVE_READ_SUPPORTED
#ifdef PNG_TEXT_SUPPORTED
png_free
(
png_ptr
,
png_ptr
->
current_text
);
#endif
/* PNG_TEXT_SUPPORTED */
#endif
/* PNG_PROGRESSIVE_READ_SUPPORTED */
/* Save the important info out of the png_struct, in case it is
* being used again.
*/
...
...
pngrio.c
浏览文件 @
d1e8c869
/* pngrio.c - functions for data input
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
pngrtran.c
浏览文件 @
d1e8c869
/* pngrtran.c - transforms the data in a row for PNG readers
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -879,7 +879,7 @@ png_init_read_transformations(png_structp png_ptr)
}
}
}
/* if (png_ptr->background_gamma_type!=PNG_BACKGROUND_GAMMA_UNKNOWN)*/
/* if (png_ptr->background_gamma_type!=PNG_BACKGROUND_GAMMA_UNKNOWN)
*/
else
/* color_type != PNG_COLOR_TYPE_PALETTE */
{
...
...
pngrutil.c
浏览文件 @
d1e8c869
/* pngrutil.c - utilities to read a PNG file
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -1215,7 +1215,7 @@ png_handle_sPLT(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
void
/* PRIVATE */
png_handle_tRNS
(
png_structp
png_ptr
,
png_infop
info_ptr
,
png_uint_32
length
)
{
png_byte
readbuf
[
PNG_MAX_PALETTE_LENGTH
];
png_byte
readbuf
[
PNG_MAX_PALETTE_LENGTH
];
png_debug
(
1
,
"in png_handle_tRNS
\n
"
);
...
...
@@ -1398,7 +1398,7 @@ void /* PRIVATE */
png_handle_hIST
(
png_structp
png_ptr
,
png_infop
info_ptr
,
png_uint_32
length
)
{
int
num
,
i
;
png_uint_16
readbuf
[
PNG_MAX_PALETTE_LENGTH
];
png_uint_16
readbuf
[
PNG_MAX_PALETTE_LENGTH
];
png_debug
(
1
,
"in png_handle_hIST
\n
"
);
...
...
pngset.c
浏览文件 @
d1e8c869
/* pngset.c - storage of image information into info struct
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -200,7 +200,7 @@ png_set_gAMA_fixed(png_structp png_ptr, png_infop info_ptr, png_fixed_point
void
PNGAPI
png_set_hIST
(
png_structp
png_ptr
,
png_infop
info_ptr
,
png_uint_16p
hist
)
{
int
i
;
int
i
;
png_debug1
(
1
,
"in %s storage function
\n
"
,
"hIST"
);
if
(
png_ptr
==
NULL
||
info_ptr
==
NULL
)
...
...
@@ -846,10 +846,10 @@ png_set_tRNS(png_structp png_ptr, png_infop info_ptr,
if
(
trans
!=
NULL
)
{
/*
* It may not actually be necessary to set png_ptr->trans here;
* we do it for backward compatibility with the way the png_handle_tRNS
* function used to do the allocation.
*/
* It may not actually be necessary to set png_ptr->trans here;
* we do it for backward compatibility with the way the png_handle_tRNS
* function used to do the allocation.
*/
#ifdef PNG_FREE_ME_SUPPORTED
png_free_data
(
png_ptr
,
info_ptr
,
PNG_FREE_TRNS
,
0
);
#endif
...
...
@@ -1141,8 +1141,8 @@ png_set_asm_flags (png_structp png_ptr, png_uint_32 asm_flags)
* so first zero them out of the master copy, then logical-OR in the
* allowed subset that was requested */
png_ptr
->
asm_flags
&=
~
settable_asm_flags
;
/* zero them */
png_ptr
->
asm_flags
|=
(
asm_flags
&
settable_asm_flags
);
/* set them */
png_ptr
->
asm_flags
&=
~
settable_asm_flags
;
/* zero them */
png_ptr
->
asm_flags
|=
(
asm_flags
&
settable_asm_flags
);
/* set them */
}
#endif
/* ?PNG_ASSEMBLER_CODE_SUPPORTED */
...
...
pngtest.c
浏览文件 @
d1e8c869
/* pngtest.c - a simple test program to test libpng
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -64,7 +64,7 @@
#endif
#if !PNG_DEBUG
# define SINGLE_ROWBUF_ALLOC
/* makes buffer overruns easier to nail */
# define SINGLE_ROWBUF_ALLOC
/* makes buffer overruns easier to nail */
#endif
/* Turn on CPU timing
...
...
@@ -1512,4 +1512,4 @@ main(int argc, char *argv[])
}
/* Generate a compiler error if there is an old png.h in the search path. */
typedef
version_1_2_4beta
1
your_png_h_is_not_version_1_2_4beta1
;
typedef
version_1_2_4beta
2
your_png_h_is_not_version_1_2_4beta2
;
pngtrans.c
浏览文件 @
d1e8c869
/* pngtrans.c - transforms the data in a row (used by both readers and writers)
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
pngvcrd.c
浏览文件 @
d1e8c869
...
...
@@ -2,7 +2,7 @@
*
* For Intel x86 CPU and Microsoft Visual C++ compiler
*
* libpng version 1.2.4beta
1 - May 25
, 2002
* libpng version 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation
...
...
pngwio.c
浏览文件 @
d1e8c869
/* pngwio.c - functions for data output
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
pngwrite.c
浏览文件 @
d1e8c869
/* pngwrite.c - general routines to write a PNG file
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
@@ -555,7 +555,6 @@ png_write_init(png_structp png_ptr)
png_write_init_2
(
png_ptr
,
"1.0.6 or earlier"
,
0
,
0
);
}
#undef png_write_init_2
void
PNGAPI
png_write_init_2
(
png_structp
png_ptr
,
png_const_charp
user_png_ver
,
png_size_t
png_struct_size
,
png_size_t
png_info_size
)
...
...
pngwtran.c
浏览文件 @
d1e8c869
/* pngwtran.c - transforms the data in a row for PNG writers
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
pngwutil.c
浏览文件 @
d1e8c869
/* pngwutil.c - utilities to write a PNG file
*
* libpng 1.2.4beta
1 - May 25
, 2002
* libpng 1.2.4beta
2 - June 20
, 2002
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
...
...
projects/msvc/README.txt
浏览文件 @
d1e8c869
Microsoft Developer Studio Build File, Format Version 6.00 for
libpng 1.2.4beta
1 (May 25
, 2002) and zlib
libpng 1.2.4beta
2 (June 20
, 2002) and zlib
Copyright (C) 2000 Simon-Pierre Cadieux
For conditions of distribution and use, see copyright notice in png.h
...
...
@@ -29,13 +29,13 @@ To build:
This project will build the PNG Development Group's "official" versions of
libpng and zlib libraries:
libpng1
2
.dll (default version, currently C code only)
libpng1
2
a.dll (C + Assembler version)
libpng1
2
b.dll (C + Assembler debug version)
libpng1
2
d.dll (C code debug version)
libpng1
2
vb.dll (version for VB, uses "stdcall" protocol)
libpng1
2
[c,e-m].dll (reserved for official versions)
libpng1
2
[n-z].dll (available for private versions)
libpng1
3
.dll (default version, currently C code only)
libpng1
3
a.dll (C + Assembler version)
libpng1
3
b.dll (C + Assembler debug version)
libpng1
3
d.dll (C code debug version)
libpng1
3
vb.dll (version for VB, uses "stdcall" protocol)
libpng1
3
[c,e-m].dll (reserved for official versions)
libpng1
3
[n-z].dll (available for private versions)
zlib.dll (default version, currently C code only)
zlibd.dll (debug version)
zlibvb.dll (version for Visual Basic, uses "stdcall" protocol)
...
...
projects/msvc/libpng.dsp
浏览文件 @
d1e8c869
...
...
@@ -57,7 +57,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /dll /machine:I386
# ADD LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll\libpng1
2
.dll"
# ADD LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll\libpng1
3
.dll"
# SUBTRACT LINK32 /pdb:none
!ELSEIF "$(CFG)" == "libpng - Win32 DLL Debug"
...
...
@@ -85,7 +85,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 /nologo /dll /debug /machine:I386 /out:".\win32\libpng\dll_dbg\libpng1
2
d.dll"
# ADD LINK32 /nologo /dll /debug /machine:I386 /out:".\win32\libpng\dll_dbg\libpng1
3
d.dll"
!ELSEIF "$(CFG)" == "libpng - Win32 DLL ASM"
...
...
@@ -112,7 +112,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /dll /machine:I386
# ADD LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll_asm\libpng1
2
a.dll"
# ADD LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll_asm\libpng1
3
a.dll"
# SUBTRACT LINK32 /pdb:none
!ELSEIF "$(CFG)" == "libpng - Win32 DLL Debug ASM"
...
...
@@ -140,7 +140,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 /nologo /dll /debug /machine:I386 /out:".\win32\libpng\dll_dbga\libpng1
2
b.dll"
# ADD LINK32 /nologo /dll /debug /machine:I386 /out:".\win32\libpng\dll_dbga\libpng1
3
b.dll"
!ELSEIF "$(CFG)" == "libpng - Win32 LIB"
...
...
@@ -219,9 +219,9 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll\libpng1
2
.dll"
# ADD BASE LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll\libpng1
3
.dll"
# SUBTRACT BASE LINK32 /pdb:none
# ADD LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll_vb\libpngvb1
2
.dll"
# ADD LINK32 /nologo /dll /machine:I386 /out:".\win32\libpng\dll_vb\libpngvb1
3
.dll"
# SUBTRACT LINK32 /pdb:none
!ENDIF
...
...
projects/msvc/png32ms.def
浏览文件 @
d1e8c869
...
...
@@ -6,7 +6,7 @@ LIBRARY
DESCRIPTION "PNG image compression library for Windows"
EXPORTS
;Version 1.2.4beta
1
;Version 1.2.4beta
2
png_build_grayscale_palette @1
png_check_sig @2
png_chunk_error @3
...
...
projects/netware.txt
浏览文件 @
d1e8c869
A set of project files is available for Netware. Get
libpng-1.2.4beta
1
-project-netware.zip from a libpng distribution
libpng-1.2.4beta
2
-project-netware.zip from a libpng distribution
site such as http://libpng.sourceforge.net
Put the zip file in this directory (projects) and then run
"unzip -a libpng-1.2.4beta
1
-project-netware.zip"
"unzip -a libpng-1.2.4beta
2
-project-netware.zip"
projects/wince.txt
浏览文件 @
d1e8c869
A set of project files is available for WinCE. Get
libpng-1.2.4beta
1
-project-wince.zip from a libpng distribution
libpng-1.2.4beta
2
-project-wince.zip from a libpng distribution
site such as http://libpng.sourceforge.net
Put the zip file in this directory (projects) and then run
"unzip -a libpng-1.2.4beta
1
-project-wince.zip"
"unzip -a libpng-1.2.4beta
2
-project-wince.zip"
scripts/libpng-config-head.in
浏览文件 @
d1e8c869
...
...
@@ -8,7 +8,7 @@
# Modeled after libxml-config.
version
=
1.2.4beta
1
version
=
1.2.4beta
2
prefix
=
""
cppflags
=
""
cflags
=
""
...
...
scripts/libpng.pc.in
浏览文件 @
d1e8c869
...
...
@@ -6,6 +6,6 @@ includedir=${exec_prefix}/include
Name: libpng12
Description: Loads and saves PNG files
Version: 1.2.4beta
1
Version: 1.2.4beta
2
Libs: -L${libdir} -lpng12 -lz -lm
Cflags: -I${includedir}/libpng12
scripts/makefile.32sunu
浏览文件 @
d1e8c869
...
...
@@ -33,7 +33,7 @@ RANLIB=echo
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
INCPATH
=
$(prefix)
/include
...
...
scripts/makefile.64sunu
浏览文件 @
d1e8c869
...
...
@@ -33,7 +33,7 @@ RANLIB=echo
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
INCPATH
=
$(prefix)
/include
...
...
scripts/makefile.aix
浏览文件 @
d1e8c869
...
...
@@ -17,7 +17,7 @@ RANLIB = ranlib
RM
=
rm
-f
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
prefix
=
/usr/local
...
...
scripts/makefile.beos
浏览文件 @
d1e8c869
...
...
@@ -12,7 +12,7 @@ ZLIBLIB=/usr/local/lib
ZLIBINC
=
/usr/local/include
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
ALIGN
=
...
...
scripts/makefile.cygwin
浏览文件 @
d1e8c869
...
...
@@ -78,8 +78,8 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGDLL
=
1
2
PNGMIN
=
1.2.4beta
1
PNGDLL
=
1
3
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
SHAREDLIB
=
cygpng
$(PNGDLL)
.dll
...
...
scripts/makefile.darwin
浏览文件 @
d1e8c869
...
...
@@ -23,7 +23,7 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng12 -lz
RANLIB
=
ranlib
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBNAME
=
libpng12
...
...
scripts/makefile.dec
浏览文件 @
d1e8c869
...
...
@@ -32,7 +32,7 @@ ZLIBLIB=../zlib
ZLIBINC
=
../zlib
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBNAME
=
libpng12
...
...
@@ -73,7 +73,8 @@ $(LIBNAME).so.$(PNGMAJ): $(LIBNAME).so.$(PNGVER)
ln
-f
-s
$(LIBNAME)
.so.
$(PNGVER)
$(LIBNAME)
.so.
$(PNGMAJ)
$(LIBNAME).so.$(PNGVER)
:
$(OBJS)
$(CC)
-shared
-o
$@
$(OBJS)
-L
$(ZLIBLIB)
-lz
-lm
$(CC)
-shared
-o
$@
$(OBJS)
-L
$(ZLIBLIB)
-
soname
$(LIBNAME)
.so.
$(PNGMAJ)
-lz
-lm
pngtest
:
pngtest.o libpng.a
$(CC)
-o
pngtest
$(CFLAGS)
pngtest.o
$(LDFLAGS)
...
...
scripts/makefile.gcmmx
浏览文件 @
d1e8c869
...
...
@@ -15,16 +15,17 @@
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
CC
=
gcc
# where "make install" puts libpng.a, libpng12/libpng12.so*,
# $(LIBNAME)/png.h and $(LIBNAME)/pngconf.h
# where "make install" puts libpng12.a, libpng12.so*,
# libpng12/png.h and libpng12/pngconf.h
# Prefix must be a full pathname.
prefix
=
/usr/local
# Where the zlib library and include files are located
# Where the zlib library and include files are located
.
#ZLIBLIB=/usr/local/lib
#ZLIBINC=/usr/local/include
ZLIBLIB
=
../zlib
...
...
@@ -93,6 +94,10 @@ OBJSDLL = $(OBJS:.o=.pic.o)
all
:
libpng.a $(LIBNAME).so pngtest pngtest-static libpng.pc libpng-config
libpng.a
:
$(OBJS)
ar rc
$@
$(OBJS)
$(RANLIB)
$@
libpng.pc
:
cat
scripts/libpng.pc.in |
sed
-e
s
\!
@PREFIX@!
$(prefix)
!
>
libpng.pc
...
...
@@ -102,7 +107,7 @@ libpng-config:
echo
cppflags
=
\"
-I
$(INCPATH)
/
$(LIBNAME)
-DPNG_THREAD_UNSAFE_OK
\
-DPNG_USE_PNGGCCRD
\"
;
\
echo
cflags
=
\"\"
;
\
echo
ldflags
=
\"\"
;
\
echo
ldflags
=
\"
-L
$(LIBPATH)
-Wl
,-rpath,
$(LIBPATH)
\"
;
\
echo
libs
=
\"
-lpng12
-lz
-lm
\"
;
\
cat
scripts/libpng-config-body.in
)
>
libpng-config
chmod
+x libpng-config
...
...
@@ -113,10 +118,6 @@ pnggccrd.o: pnggccrd.c png.h pngconf.h
pnggccrd.pic.o
:
pnggccrd.c png.h pngconf.h
$(CC)
-c
$(CFLAGS)
-fPIC
-o
$@
pnggccrd.c
libpng.a
:
$(OBJS)
ar rc
$@
$(OBJS)
$(RANLIB)
$@
$(LIBNAME).so
:
$(LIBNAME).so.$(PNGMAJ)
ln
-sf
$(LIBNAME)
.so.
$(PNGMAJ)
$(LIBNAME)
.so
...
...
@@ -124,8 +125,9 @@ $(LIBNAME).so.$(PNGMAJ): $(LIBNAME).so.$(PNGVER)
ln
-sf
$(LIBNAME)
.so.
$(PNGVER)
$(LIBNAME)
.so.
$(PNGMAJ)
$(LIBNAME).so.$(PNGVER)
:
$(OBJSDLL)
$(CC)
-shared
-Wl
,-soname,
$(LIBNAME)
.so.
$(PNGMAJ)
-o
$(LIBNAME)
.so.
$(PNGVER)
\
$(OBJSDLL)
-L
$(ZLIBLIB)
-lz
-lm
-lc
$(CC)
-shared
-Wl
,-soname,
$(LIBNAME)
.so.
$(PNGMAJ)
\
-o
$(LIBNAME)
.so.
$(PNGVER)
\
$(OBJSDLL)
-L
$(ZLIBLIB)
-lz
-lm
-lc
pngtest
:
pngtest.o $(LIBNAME).so
$(CC)
-o
pngtest
$(CFLAGS)
pngtest.o
$(LDFLAGS)
...
...
@@ -201,9 +203,16 @@ install-config: libpng-config
install
:
install-static install-shared install-man install-config
test-installed
:
$(CC)
-I
$(ZLIBINC)
\
`
$(BINPATH)
/libpng12-config
--cppflags
--cflags
`
pngtest.c
\
-o
pngtesti
`
$(BINPATH)
/libpng12-config
--ldflags
--libs
`
\
-L
$(ZLIBLIB)
-Wl
,-rpath,
$(ZLIBLIB)
pngtesti pngtest.png
clean
:
/bin/rm
-f
*
.o libpng.a
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNGMAJ)
*
\
pngtest pngout.png
/bin/rm
-f
*
.o libpng.a
pngtest pngout.png libpng.pc libpng-config
\
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNGMAJ)
*
pngtest-static pngtesti
DOCS
=
ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
writelock
:
...
...
scripts/makefile.hpgcc
浏览文件 @
d1e8c869
...
...
@@ -33,7 +33,7 @@ RANLIB=ranlib
#RANLIB=echo
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBNAME
=
libpng12
...
...
scripts/makefile.hpux
浏览文件 @
d1e8c869
...
...
@@ -17,7 +17,7 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz -lm
RANLIB
=
ranlib
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBNAME
=
libpng12
...
...
scripts/makefile.linux
浏览文件 @
d1e8c869
...
...
@@ -5,16 +5,17 @@
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
CC
=
gcc
# where "make install" puts libpng12.a, libpng12
/libpng12
.so*,
# where "make install" puts libpng12.a, libpng12.so*,
# libpng12/png.h and libpng12/pngconf.h
# Prefix must be a full pathname.
prefix
=
/usr/local
# Where the zlib library and include files are located
# Where the zlib library and include files are located
.
#ZLIBLIB=/usr/local/lib
#ZLIBINC=/usr/local/include
ZLIBLIB
=
../zlib
...
...
@@ -70,7 +71,7 @@ OBJSDLL = $(OBJS:.o=.pic.o)
.c.pic.o
:
$(CC)
-c
$(CFLAGS)
-fPIC
-o
$@
$*
.c
all
:
libpng.a $(LIBNAME).so pngtest libpng.pc libpng-config
all
:
libpng.a $(LIBNAME).so pngtest
pngtest-static
libpng.pc libpng-config
libpng.a
:
$(OBJS)
ar rc
$@
$(OBJS)
...
...
@@ -108,7 +109,7 @@ pngtest-static: pngtest.o libpng.a
test
:
pngtest pngtest-static
@
echo
""
@
echo
" Running pngtest dynamically linked with
libpng12
.so:"
@
echo
" Running pngtest dynamically linked with
$(LIBNAME)
.so:"
@
echo
""
./pngtest
@
echo
""
...
...
@@ -174,9 +175,16 @@ install-config: libpng-config
install
:
install-static install-shared install-man install-config
test-installed
:
$(CC)
-I
$(ZLIBINC)
\
`
$(BINPATH)
/libpng12-config
--cppflags
--cflags
`
pngtest.c
\
-o
pngtesti
`
$(BINPATH)
/libpng12-config
--ldflags
--libs
`
\
-L
$(ZLIBLIB)
-Wl
,-rpath,
$(ZLIBLIB)
pngtesti pngtest.png
clean
:
/bin/rm
-f
*
.o libpng.a
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNMAJ)
*
\
pngtest pngout.png
/bin/rm
-f
*
.o libpng.a
pngtest pngout.png libpng.pc libpng-config
\
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNGMAJ)
*
pngtest-static pngtesti
DOCS
=
ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
writelock
:
...
...
scripts/makefile.macosx
浏览文件 @
d1e8c869
...
...
@@ -17,7 +17,7 @@ ZLIBINC=../zlib
CC
=
cc
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
CFLAGS
=
-fno-common
-I
$(ZLIBINC)
-O
# -g -DPNG_DEBUG=5
...
...
scripts/makefile.ne12bsd
浏览文件 @
d1e8c869
...
...
@@ -13,7 +13,7 @@ INCSDIR=${LOCALBASE}/include/libpng12
LIB
=
png12
SHLIB_MAJOR
=
0
SHLIB_MINOR
=
1.2.4beta
1
SHLIB_MINOR
=
1.2.4beta
2
SRCS
=
pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c
\
pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c
\
pngwtran.c pngmem.c pngerror.c pngpread.c
...
...
scripts/makefile.netbsd
浏览文件 @
d1e8c869
...
...
@@ -13,7 +13,7 @@ INCSDIR=${LOCALBASE}/include/libpng
LIB
=
png
SHLIB_MAJOR
=
3
SHLIB_MINOR
=
1.2.4beta
1
SHLIB_MINOR
=
1.2.4beta
2
SRCS
=
pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c
\
pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c
\
pngwtran.c pngmem.c pngerror.c pngpread.c
...
...
scripts/makefile.openbsd
浏览文件 @
d1e8c869
...
...
@@ -7,7 +7,7 @@ LIBDIR= ${PREFIX}/lib
MANDIR
=
${PREFIX}
/man/cat
SHLIB_MAJOR
=
0
SHLIB_MINOR
=
1.2.4beta
1
SHLIB_MINOR
=
1.2.4beta
2
LIB
=
png
SRCS
=
png.c pngerror.c pnggccrd.c pngget.c pngmem.c pngpread.c
\
...
...
scripts/makefile.sco
浏览文件 @
d1e8c869
...
...
@@ -24,7 +24,7 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng12 -lz -lm
RANLIB
=
echo
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBNAME
=
libpng12
...
...
scripts/makefile.sggcc
浏览文件 @
d1e8c869
# makefile for libpng
, SGI IRIX with gcc
# Copyright (C) 2002 Glenn Randers-Pehrson
# makefile for libpng
.a and libpng12.so, SGI IRIX with 'cc'
# Copyright (C) 200
1-200
2 Glenn Randers-Pehrson
# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
# For conditions of distribution and use, see copyright notice in png.h
# where make install puts libpng.a and png.h
# Where make install puts libpng.a, libpng12.so, and libpng12/png.h
# Prefix must be a full pathname.
prefix
=
/usr/local
# Where the zlib library and include files are located
ZLIBLIB
=
/usr/local/lib32
ZLIBINC
=
/usr/local/include
#ZLIBLIB=../zlib
#ZLIBINC=../zlib
#ZLIBLIB=/usr/local/lib32
#ZLIBINC=/usr/local/include
#ZLIBLIB=/usr/local/lib
#ZLIBINC=/usr/local/include
ZLIBLIB
=
../zlib
ZLIBINC
=
../zlib
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
CC
=
gcc
# ABI can be blank to use default for your system, -32, -o32, -n32, or -64
# See "man abi". zlib must be built with the same ABI.
ABI
=
CC
=
gcc
WARNMORE
=
# -g -DPNG_DEBUG=5
CFLAGS
=
$(ABI)
-I
$(ZLIBINC)
-O2
$(WARNMORE)
-fPIC
-mabi
=
n32
LDFLAGS
=
$(ABI)
-L
.
-L
$(ZLIBLIB)
-lpng
-lz
-lm
LDSHARED
=
CC
$(ABI)
-shared
LDSHARED
=
cc
$(ABI)
-shared
-soname
$(LIBNAME)
.so.
$(PNGMAJ)
# See "man dso" for info about shared objects
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta1
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBS
=
$(LIBNAME)
.so.
$(PNGVER)
RANLIB
=
echo
#RANLIB=ranlib
INCPATH
=
$(prefix)
/include
LIBPATH
=
$(prefix)
/lib32
LIBPATH
=
$(prefix)
/lib
#LIBPATH=$(prefix)/lib32
MANPATH
=
$(prefix)
/man
BINPATH
=
$(prefix)
/bin
...
...
@@ -49,21 +56,21 @@ DI=$(DESTDIR)$(INCPATH)
DL
=
$(DESTDIR)$(LIBPATH)
DM
=
$(DESTDIR)$(MANPATH)
RANLIB
=
echo
#RANLIB=ranlib
OBJS
=
png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o
\
OBJS
=
pnggccrd.o png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o
\
pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o
\
pngwtran.o pngmem.o pngerror.o pngpread.o
all
:
libpng.a
$(LIBNAME).so.$(PNGVER) pngtest
libpng.pc libpng-config
all
:
libpng.a
pngtest shared
libpng.pc libpng-config
libpng.a
:
$(OBJS)
ar rc
$@
$(OBJS)
ar rc
$@
$(OBJS)
$(RANLIB)
$@
shared
:
$(LIBNAME).so.$(PNGVER)
libpng.pc
:
cat
scripts/libpng.pc.in |
sed
-e
s
\!
@PREFIX@!
$(prefix)
!
>
libpng.pc
cat
scripts/libpng.pc.in |
sed
-e
s
\!
@PREFIX@!
$(prefix)
!
>
\
libpng.pc
libpng-config
:
(
cat
scripts/libpng-config-head.in
;
\
...
...
@@ -71,24 +78,29 @@ libpng-config:
echo
cppflags
=
\"
-I
$(INCPATH)
/
$(LIBNAME)
-DPNG_USE_PNGGCCRD
\
-DPNG_NO_ASSEMBLER_CODE
\"
;
\
echo
cflags
=
\"
$(ABI)
\"
;
\
echo
ldflags
=
\"
-L
$(LIBPATH)
\"
;
\
echo
ldflags
=
\"
-L
$(LIBPATH)
-rpath
$(LIBPATH)
\"
;
\
echo
libs
=
\"
-lpng12
-lz
-lm
\"
;
\
cat
scripts/libpng-config-body.in
)
>
libpng-config
chmod
+x libpng-config
$(LIBNAME).so
:
$(LIBNAME).so.$(PNGMAJ)
ln
-sf
$(LIBNAME)
.so.
$(PNGMAJ)
$(LIBNAME)
.so
$(LIBNAME).so.$(PNGMAJ)
:
$(LIBNAME).so.$(PNGVER)
ln
-sf
$(LIBNAME)
.so.
$(PNGVER)
$(LIBNAME)
.so.
$(PNGMAJ)
$(LIBNAME).so.$(PNGVER)
:
$(OBJS)
$(LDSHARED)
-o
$@
$(OBJS)
rm
-f
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNGMAJ)
ln
-s
-f
$@
$(LIBNAME)
.so
ln
-s
-f
$@
$(LIBNAME)
.so.
$(PNGMAJ)
pngtest
:
pngtest.o libpng.a
$(CC)
-o
pngtest
$(CFLAGS)
pngtest.o
$(LDFLAGS)
test
:
pngtest
echo
echo
Testing
local
static library.
./pngtest
install-headers
:
png.h pngconf.h
-
@if
[
!
-d
$(DI)
]
;
then
mkdir
$(DI)
;
fi
-
@if
[
!
-d
$(DI)
/
$(LIBNAME)
]
;
then
mkdir
$(DI)
/
$(LIBNAME)
;
fi
...
...
@@ -147,8 +159,25 @@ install-config: libpng-config
install
:
install-static install-shared install-man install-config
# If you installed in $(DESTDIR), test-installed won't work until you
# move the library to its final location.
test-installed
:
$(CC)
-I
$(ZLIBINC)
\
`
$(BINPATH)
/libpng12-config
--cppflags
--cflags
`
pngtest.c
\
-o
pngtesti
`
$(BINPATH)
/libpng12-config
--ldflags
--libs
`
\
-L
$(ZLIBLIB)
-rpath
$(ZLIBLIB)
echo
echo
Testing installed dynamic shared library.
pngtesti pngtest.png
clean
:
rm
-f
*
.o libpng.a pngtest pngout.png
rm
-f
*
.o libpng.a pngtest pngout.png libpng.pc libpng-config
\
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNGMAJ)
*
so_locations
DOCS
=
ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
writelock
:
chmod
a-w
*
.[ch35]
$(DOCS)
scripts/
*
# DO NOT DELETE THIS LINE -- make depend depends on it.
...
...
@@ -168,4 +197,5 @@ pngwrite.o: png.h pngconf.h
pngwtran.o
:
png.h pngconf.h
pngwutil.o
:
png.h pngconf.h
pngpread.o
:
png.h pngconf.h
pnggccrd.o
:
png.h pngconf.h
scripts/makefile.sgi
浏览文件 @
d1e8c869
...
...
@@ -3,7 +3,14 @@
# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
# For conditions of distribution and use, see copyright notice in png.h
# where make install puts libpng.a, libpng12.so and libpng12/png.h
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
# Where make install puts libpng.a, libpng12.so, and libpng12/png.h
# Prefix must be a full pathname.
prefix
=
/usr/local
# Where the zlib library and include files are located
...
...
@@ -26,14 +33,9 @@ WARNMORE=-fullwarn
CFLAGS
=
$(ABI)
-I
$(ZLIBINC)
-O
$(WARNMORE)
-DPNG_USE_PNGGCCRD
-DPNG_NO_ASSEMBLER_CODE
LDFLAGS_A
=
$(ABI)
-L
.
-L
$(ZLIBLIB)
-lpng12
-lz
-lm
LDFLAGS
=
$(ABI)
-L
.
-L
$(ZLIBLIB)
-lpng
-lz
-lm
LDSHARED
=
cc
$(ABI)
-shared
LDSHARED
=
cc
$(ABI)
-shared
-soname
$(LIBNAME)
.so.
$(PNGMAJ)
# See "man dso" for info about shared objects
LIBNAME
=
libpng12
PNGMAJ
=
0
PNGMIN
=
1.2.4beta1
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
RANLIB
=
echo
#RANLIB=ranlib
...
...
@@ -42,7 +44,6 @@ LIBPATH=$(prefix)/lib
#LIBPATH=$(prefix)/lib32
MANPATH
=
$(prefix)
/man
BINPATH
=
$(prefix)
/bin
BINPATH
=
$(prefix)
/bin
# override DESTDIR= on the make install command line to easily support
# installing into a temporary location. Example:
...
...
@@ -65,6 +66,10 @@ OBJS = pnggccrd.o png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
all
:
libpng.a pngtest shared libpng.pc libpng-config
libpng.a
:
$(OBJS)
ar rc
$@
$(OBJS)
$(RANLIB)
$@
shared
:
$(LIBNAME).so.$(PNGVER)
libpng.pc
:
...
...
@@ -76,33 +81,34 @@ libpng-config:
echo
cppflags
=
\"
-I
$(INCPATH)
/
$(LIBNAME)
-DPNG_USE_PNGGCCRD
\
-DPNG_NO_ASSEMBLER_CODE
\"
;
\
echo
cflags
=
\"
$(ABI)
\"
;
\
echo
ldflags
=
\"
-L
$(LIBPATH)
\"
;
\
echo
ldflags
=
\"
-L
$(LIBPATH)
-rpath
$(LIBPATH)
\"
;
\
echo
libs
=
\"
-lpng12
-lz
-lm
\"
;
\
cat
scripts/libpng-config-body.in
)
>
libpng-config
chmod
+x libpng-config
libpng.a
:
$(OBJS)
ar rc
$@
$(OBJS)
$(RANLIB)
$@
$(LIBNAME).so
:
$(LIBNAME).so.$(PNGMAJ)
ln
-sf
$(LIBNAME)
.so.
$(PNGMAJ)
$(LIBNAME)
.so
$(LIBNAME).so.$(PNGMAJ)
:
$(LIBNAME).so.$(PNGVER)
ln
-sf
$(LIBNAME)
.so.
$(PNGVER)
$(LIBNAME)
.so.
$(PNGMAJ)
$(LIBNAME).so.$(PNGVER)
:
$(OBJS)
$(LDSHARED)
-o
$@
$(OBJS)
rm
-f
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNGMAJ)
ln
-s
-f
$@
$(LIBNAME)
.so
ln
-s
-f
$@
$(LIBNAME)
.so.
$(PNGMAJ)
pngtest
:
pngtest.o libpng.a
$(CC)
-o
pngtest
$(CFLAGS)
pngtest.o
$(LDFLAGS)
test
:
pngtest
echo
echo
Testing
local
static library.
./pngtest
install-headers
:
png.h pngconf.h
-
@if
[
!
-d
$(DI)
]
;
then
mkdir
$(DI)
;
fi
-
@if
[
!
-d
$(DI)
/
$(LIBNAME)
]
;
then
mkdir
$(DI)
/
$(LIBNAME)
;
fi
cp
png.h pngconf.h
$(DI)
/
$(LIBNAME)
chmod
644
$(DI)
/
$(LIBNAME)
/png.h
\
$(DI)
/
$(LIBNAME)
/pngconf.h
chmod
644
$(DI)
/
$(LIBNAME)
/png.h
$(DI)
/
$(LIBNAME)
/pngconf.h
-
@/bin/rm
-f
$(DI)
/png.h
$(DI)
/pngconf.h
-
@/bin/rm
-f
$(DI)
/libpng
(
cd
$(DI)
;
ln
-sf
$(LIBNAME)
libpng
;
ln
-sf
$(LIBNAME)
/
*
.
)
...
...
@@ -156,9 +162,21 @@ install-config: libpng-config
install
:
install-static install-shared install-man install-config
# If you installed in $(DESTDIR), test-installed won't work until you
# move the library to its final location.
test-installed
:
echo
echo
Testing installed dynamic shared library.
$(CC)
-I
$(ZLIBINC)
\
`
$(BINPATH)
/libpng12-config
--cppflags
--cflags
`
pngtest.c
\
-o
pngtesti
`
$(BINPATH)
/libpng12-config
--ldflags
--libs
`
\
-L
$(ZLIBLIB)
-rpath
$(ZLIBLIB)
pngtesti pngtest.png
clean
:
rm
-f
*
.o libpng.a pngtest png
out.png
$(LIBNAME)
.so
\
$(LIBNAME)
.so
.
$(PNGMAJ)
*
rm
-f
*
.o libpng.a pngtest png
testi pngout.png libpng.pc libpng-config
\
$(LIBNAME)
.so
$(LIBNAME)
.so.
$(PNGMAJ)
*
so_locations
DOCS
=
ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
writelock
:
...
...
scripts/makefile.so9
浏览文件 @
d1e8c869
...
...
@@ -34,7 +34,7 @@ LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng12 -lz -lm
RANLIB
=
echo
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBNAME
=
libpng12
...
...
@@ -123,14 +123,14 @@ install-headers: png.h pngconf.h
chmod
644
$(DI)
/
$(LIBNAME)
/png.h
$(DI)
/
$(LIBNAME)
/pngconf.h
-
@/bin/rm
-f
$(DI)
/png.h
$(DI)
/pngconf.h
-
@/bin/rm
-f
$(DI)
/libpng
(
cd
$(DI)
;
ln
-f
-s
$(LIBNAME)
libpng
)
(
cd
$(DI)
;
ln
-f
-s
$(LIBNAME)
libpng
;
ln
-f
-s
$(LIBNAME)
/
*
.
)
install-static
:
install-headers libpng.a
-
@if
[
!
-d
$(DL)
]
;
then
mkdir
$(DL)
;
fi
cp
libpng.a
$(DL)
/
$(LIBNAME)
.a
chmod
644
$(DL)
/
$(LIBNAME)
.a
-
@/bin/rm
-f
$(DL)
/libpng.a
(
cd
$(D
I)
;
ln
-f
-s
$(LIBNAME)
libpng
;
ln
-f
-s
$(LIBNAME)
/
*
.
)
(
cd
$(D
L)
;
ln
-f
-s
$(LIBNAME)
.a libpng.a
)
install-shared
:
install-headers $(LIBNAME).so.$(PNGVER) libpng.pc
-
@if
[
!
-d
$(DL)
]
;
then
mkdir
$(DL)
;
fi
...
...
scripts/makefile.solaris
浏览文件 @
d1e8c869
...
...
@@ -30,7 +30,7 @@ LDFLAGS=-L. -R. -L$(ZLIBLIB) -R$(ZLIBLIB) -lpng12 -lz -lm
RANLIB
=
echo
PNGMAJ
=
0
PNGMIN
=
1.2.4beta
1
PNGMIN
=
1.2.4beta
2
PNGVER
=
$(PNGMAJ)
.
$(PNGMIN)
LIBNAME
=
libpng12
...
...
scripts/pngdef.pas
浏览文件 @
d1e8c869
...
...
@@ -7,7 +7,7 @@ unit pngdef;
interface
const
PNG_LIBPNG_VER_STRING
=
'1.2.4beta
1
'
;
PNG_LIBPNG_VER_STRING
=
'1.2.4beta
2
'
;
PNG_LIBPNG_VER
=
10204
;
type
...
...
scripts/pngos2.def
浏览文件 @
d1e8c869
...
...
@@ -2,7 +2,7 @@
; PNG.LIB module definition file for OS/2
;----------------------------------------
; Version 1.2.4beta
1
; Version 1.2.4beta
2
LIBRARY PNG
DESCRIPTION "PNG image compression library for OS/2"
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录