diff --git a/ANNOUNCE b/ANNOUNCE index 0414f82ed..109d4a166 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,5 +1,5 @@ -Libpng 1.4.2rc03 - April 24, 2010 +Libpng 1.4.2rc04 - April 26, 2010 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. @@ -9,20 +9,20 @@ Files available for download: Source files with LF line endings (for Unix/Linux) and with a "configure" script - 1.4.2rc03.tar.xz (LZMA-compressed, recommended) - 1.4.2rc03.tar.gz - 1.4.2rc03.tar.bz2 + 1.4.2rc04.tar.xz (LZMA-compressed, recommended) + 1.4.2rc04.tar.gz + 1.4.2rc04.tar.bz2 Source files with CRLF line endings (for Windows), without the "configure" script - lp142r03.zip - lp142r03.7z + lp142r04.zip + lp142r04.7z Other information: - 1.4.2rc03-README.txt - 1.4.2rc03-LICENSE.txt + 1.4.2rc04-README.txt + 1.4.2rc04-LICENSE.txt Changes since the last public release (1.4.1): @@ -33,7 +33,7 @@ version 1.4.2beta01 [April 1, 2010] version 1.4.2rc01 [April 10, 2010] No changes. -version 1.4.2rc02 [April 24, 2010] +version 1.4.2rc02 [April 16, 2010] Documented the fact that png_set_dither() was disabled since libpng-1.4.0. Reenabled png_set_dither() but renamed it to png_set_quantize() to reflect more accurately what it actually does. At the same time, renamed @@ -44,6 +44,10 @@ version 1.4.2rc03 [April 24, 2010] Added some "(long)" typecasts to printf calls in png_handle_cHRM(). Relaxed the overly-restrictive permissions of some files. +version 1.4.2rc04 [April 26, 2010] + Added the "vstudio" project to replace "visualc6" and "visualc71" which + will be removed from libpng-1.5.0. + Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement diff --git a/CHANGES b/CHANGES index df5c6fe87..d2a25cf24 100644 --- a/CHANGES +++ b/CHANGES @@ -2555,6 +2555,10 @@ version 1.4.2rc03 [April 24, 2010] Added some "(long)" typecasts to printf calls in png_handle_cHRM(). Relaxed the overly-restrictive permissions of some files. +version 1.4.2rc04 [April 26, 2010] + Added the "vstudio" project to replace "visualc6" and "visualc71" which + will be removed from libpng-1.5.0. + Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement diff --git a/projects/visualc6/README.txt b/projects/visualc6/README.txt index b650e9e4c..578af6c72 100644 --- a/projects/visualc6/README.txt +++ b/projects/visualc6/README.txt @@ -6,6 +6,8 @@ Copyright (C) 2004 Cosmin Truta. This code is released under the libpng license. For conditions of distribution and use, see copyright notice in png.h +NOTE: This project will be removed from libpng-1.5.0. It has +been replaced with the "vstudio" project. Assumptions: * The libpng source files are in ..\.. diff --git a/projects/visualc71/README.txt b/projects/visualc71/README.txt index 7d51eed16..755a82a24 100644 --- a/projects/visualc71/README.txt +++ b/projects/visualc71/README.txt @@ -5,6 +5,9 @@ Copyright (C) 2004 Simon-Pierre Cadieux. This code is released under the libpng license. For conditions of distribution and use, see copyright notice in png.h +NOTE: This project will be removed from libpng-1.5.0. It has +been replaced with the "vstudio" project. + Assumptions: * The libpng source files are in ..\.. * The zlib source files are in ..\..\..\zlib diff --git a/projects/visualc71/README_zlib.txt b/projects/visualc71/README_zlib.txt index cc7389965..81d11cbb5 100644 --- a/projects/visualc71/README_zlib.txt +++ b/projects/visualc71/README_zlib.txt @@ -10,6 +10,8 @@ Copyright (C) 2004 Cosmin Truta. This code is released under the libpng license. For conditions of distribution and use, see copyright notice in zlib.h. +NOTE: This project will be removed from libpng-1.5.0. It has +been replaced with the "vstudio" project. To use: diff --git a/projects/vstudio/libpng/libpng.vcxproj b/projects/vstudio/libpng/libpng.vcxproj new file mode 100644 index 000000000..23d4eb59c --- /dev/null +++ b/projects/vstudio/libpng/libpng.vcxproj @@ -0,0 +1,233 @@ + + + + + Debug Library + Win32 + + + Debug + Win32 + + + Release Library + Win32 + + + Release + Win32 + + + + {D6973076-9317-4EF2-A0B8-B7A18AC0713E} + Win32Proj + libpng + + + + + DynamicLibrary + MultiByte + true + + + StaticLibrary + MultiByte + + + DynamicLibrary + true + MultiByte + + + StaticLibrary + MultiByte + + + + + + + + + + + + + + + + + + + false + + + $(ProjectName)14 + + + false + + $(ProjectName)14 + + + false + + + $(ProjectName)14 + + + false + + $(ProjectName)14 + + + + NotUsing + Level4 + false + ProgramDatabase + EnableFastChecks + MultiThreadedDebugDLL + WIN32;PNG_BUILD_DLL;PNG_NO_MODULEDEF;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + true + false + false + png.h + true + CompileAsC + true + 4996;4127 + $(ZLibSrcDir);..\..\..\scripts;%(AdditionalIncludeDirectories) + true + Disabled + + + Windows + true + zlib.lib;msvcrtd.lib;kernel32.lib + true + 14 + $(OutDir) + + + + + NotUsing + Level4 + false + ProgramDatabase + Disabled + EnableFastChecks + MultiThreadedDebugDLL + WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + true + false + false + png.h + true + CompileAsC + true + 4996;4127 + $(ZLibSrcDir);..\..\..\scripts;%(AdditionalIncludeDirectories) + true + + + Windows + true + + + + + Level4 + NotUsing + ProgramDatabase + MultiThreadedDLL + true + true + WIN32;PNG_BUILD_DLL;PNG_NO_MODULEDEF;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + false + false + png.h + true + CompileAsC + true + false + 4996;4127 + $(ZLib1Dir);..\..\..\scripts;%(AdditionalIncludeDirectories) + true + Full + + + Windows + true + true + true + zdll.lib;msvcrt.lib;kernel32.lib + true + 14 + $(ZLib1Dir) + + + + + Level4 + NotUsing + ProgramDatabase + MultiThreadedDLL + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + false + false + png.h + true + CompileAsC + true + false + 4996;4127 + $(ZLib1Dir);..\..\..\scripts;%(AdditionalIncludeDirectories) + true + Full + + + Windows + true + true + true + + + + + Create + Create + Create + Create + + + + + + + + + + + + + + + + + + + true + true + + + + + + diff --git a/projects/vstudio/pngtest/pngtest.vcxproj b/projects/vstudio/pngtest/pngtest.vcxproj new file mode 100644 index 000000000..bdc469013 --- /dev/null +++ b/projects/vstudio/pngtest/pngtest.vcxproj @@ -0,0 +1,217 @@ + + + + + Debug Library + Win32 + + + Debug + Win32 + + + Release Library + Win32 + + + Release + Win32 + + + + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D} + Win32Proj + pngtest + + + + + Application + Unicode + + + Application + Unicode + + + Application + Unicode + + + Application + Unicode + + + + + + + + + + + + + + + + + + + false + + + + false + + + + false + + + + false + + + + + NotUsing + Level4 + false + ProgramDatabase + Disabled + EnableFastChecks + MultiThreadedDebugDLL + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(ZLibSrcDir);..\..\..\scripts;%(AdditionalIncludeDirectories) + 4996 + false + true + true + true + false + true + + + Console + true + libpng14.lib;zlib.lib;msvcrtd.lib;kernel32.lib + true + $(OutDir) + + + Executing PNG test program + "$(OutDir)pngtest.exe" ..\..\..\pngtest.png "$(IntDir)pngout.png" + $(IntDir)pngout.png + ..\..\..\pngtest.png;$(OutDir)pngtest.exe + + + + + NotUsing + Level4 + false + ProgramDatabase + Disabled + EnableFastChecks + MultiThreadedDebugDLL + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(ZLibSrcDir);..\..\..\scripts;%(AdditionalIncludeDirectories) + 4996 + false + true + true + true + false + true + + + Console + true + libpng14.lib;zlib.lib;msvcrtd.lib;kernel32.lib + true + $(OutDir) + + + Executing PNG test program + "$(OutDir)pngtest.exe" ..\..\..\pngtest.png "$(IntDir)pngout.png" + $(IntDir)pngout.png + ..\..\..\pngtest.png;$(OutDir)pngtest.exe + + + + + Level4 + NotUsing + ProgramDatabase + Full + MultiThreadedDLL + false + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(ZLib1Dir);..\..\..\scripts;%(AdditionalIncludeDirectories) + 4996 + false + true + true + false + true + + + Console + true + true + true + libpng14.lib;msvcrt.lib;kernel32.lib + true + $(OutDir) + + + Executing PNG test program + "$(OutDir)pngtest.exe" ..\..\..\pngtest.png "$(IntDir)pngout.png" + $(IntDir)pngout.png + ..\..\..\pngtest.png;$(OutDir)pngtest.exe + + + + + Level4 + NotUsing + ProgramDatabase + Full + MultiThreadedDLL + false + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(ZLib1Dir);..\..\..\scripts;%(AdditionalIncludeDirectories) + 4996 + false + true + true + false + true + + + Console + true + true + true + libpng14.lib;zlib.lib;msvcrt.lib;kernel32.lib + true + $(OutDir);$(ZLib1Dir) + + + Executing PNG test program + $(OutDir)pngtest.exe ..\..\..\pngtest.png $(IntDir)pngout.png + "$(OutDir)pngtest.exe" ..\..\..\pngtest.png "$(IntDir)pngout.png" + $(IntDir)pngout.png + ..\..\..\pngtest.png;$(OutDir)pngtest.exe + + + + + + + + + diff --git a/projects/vstudio/readme.txt b/projects/vstudio/readme.txt new file mode 100644 index 000000000..8a1059e40 --- /dev/null +++ b/projects/vstudio/readme.txt @@ -0,0 +1,93 @@ + +VisualStudio instructions + +libpng version %VER% - %DATE% + +Copyright (c) 1998-2010 Glenn Randers-Pehrson + +This code is released under the libpng license. +For conditions of distribution and use, see the disclaimer +and license in png.h + +This directory contains support for building libpng under MicroSoft +VisualStudio 2010. It may also work under later versions of VisualStudio. +You should be familiar with VisualStudio before using this directory. + +This is a slightly modified copy of the 'vstudio' solution from libpng +1.5; it is intended to provide compatibility for libpng 1.4 with later +releases of zlib (from 1.2.4) and to provide a migration aid for 1.5. + +A 'VB' DLL is no longer produced - use the standard 'Release' DLL. + +Initial preparations +==================== +You should install the 'official' build of zlib on your system - follow the +instructions provided on http://www.zlib.net. When a new release is being +made of zlib the instructions disappear for a while until the new official +build is available. You will have to wait. + +You must enter some information in zlib.props before attempting to build +with this 'solution'. Please read and edit zlib.props first. You will +probably not be familiar with the contents of zlib.props - do not worry, +it is mostly harmless. + +Make sure that your official build layout matches the requirements listed +in zlib.props. Prior to zlib-1.2.4 the official build (1.2.3) placed +include and library files in different directories - if you find this +has happened just put them all in the same directory. + +This is all you need to do to build the 'release' and 'release library' +configurations. + +Debugging +========= +The release configurations default to /Ox optimization. Full debugging +information is produced (in the .pdb), but if you encounter a problem the +optimization may make it difficult to debug. Simply rebuild with a lower +optimization level (e.g. /Od.) + +Stop reading here +================= +You have enough information to build a working application. + +Debug versions have limited support +=================================== +This solution includes limited support for debug versions of libpng. You +do not need these unless your own solution itself uses debug builds (it is +far more effective to debug on the release builds, there is no point building +a special debug build.) + +If, despite the previous paragraph, you still feel you need a debug build you +will have to download the zlib source as well (http://www.zlib.net) and include +the directory where you unpack it in zlib.props. This solution will then be +able to build a minimal zlib sufficient for libpng. This build is only +suitable for making a debug libpng. + +The debug build of libpng is minimally supported. Support for debug builds of +zlib is also minimal. You really don't want to do this. + +This solution only supports the Multi-Threaded DLL C Runtime +============================================================ +If you examine the solution you will find that it very deliberately lists +exactly which MicroSoft DLLs it is linking against. It explicitly links +against msvcrt.lib. The debug version links against msvcrtd.lib (this is +why it is a debug version - it's nothing to do with having any special +debug support, it doesn't). + +These versions of the MicroSoft C runtime correspond to the compiler flags +/MD (release) and /MDd (debug) - the "Multi-Threaded DLL" implementation of the +C runtime library. + +If you need to change this then you will have to make sure that both the +compiler flags and the ".lib" in the linker dependences match up. Fortunately +neither zlib nor libpng require libraries other than a C runtime and +kernel32. + +You cannot pass (FILE*) objects from a different runtime (including msvcrtd +to msvcrt) to libpng. If you do then your program will crash within libpng +when it first makes a file read or write call. + +It is likely if you have read this far that you have found you can't avoid +having multiple C runtimes in your program. This is OK, it does work, but +you will have to implement the libpng file read/write callbacks rather than +using the internal libpng default. This is easy. diff --git a/projects/vstudio/vstudio.sln b/projects/vstudio/vstudio.sln new file mode 100644 index 000000000..0c8b7bc23 --- /dev/null +++ b/projects/vstudio/vstudio.sln @@ -0,0 +1,49 @@ +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual C++ Express 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpng", "libpng\libpng.vcxproj", "{D6973076-9317-4EF2-A0B8-B7A18AC0713E}" + ProjectSection(ProjectDependencies) = postProject + {18040998-CC22-2BAE-FE7A-C0A3038F1D5C} = {18040998-CC22-2BAE-FE7A-C0A3038F1D5C} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pngtest", "pngtest\pngtest.vcxproj", "{228BA965-50D5-42B2-8BCF-AFCC227E3C1D}" + ProjectSection(ProjectDependencies) = postProject + {D6973076-9317-4EF2-A0B8-B7A18AC0713E} = {D6973076-9317-4EF2-A0B8-B7A18AC0713E} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "zlib\zlib.vcxproj", "{18040998-CC22-2BAE-FE7A-C0A3038F1D5C}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug Library|Win32 = Debug Library|Win32 + Debug|Win32 = Debug|Win32 + Release Library|Win32 = Release Library|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Debug Library|Win32.ActiveCfg = Debug Library|Win32 + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Debug Library|Win32.Build.0 = Debug Library|Win32 + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Debug|Win32.ActiveCfg = Debug|Win32 + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Debug|Win32.Build.0 = Debug|Win32 + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Release Library|Win32.ActiveCfg = Release Library|Win32 + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Release Library|Win32.Build.0 = Release Library|Win32 + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Release|Win32.ActiveCfg = Release|Win32 + {D6973076-9317-4EF2-A0B8-B7A18AC0713E}.Release|Win32.Build.0 = Release|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Debug Library|Win32.ActiveCfg = Debug Library|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Debug Library|Win32.Build.0 = Debug Library|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Debug|Win32.ActiveCfg = Debug|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Debug|Win32.Build.0 = Debug|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Release Library|Win32.ActiveCfg = Release Library|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Release Library|Win32.Build.0 = Release Library|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Release|Win32.ActiveCfg = Release|Win32 + {228BA965-50D5-42B2-8BCF-AFCC227E3C1D}.Release|Win32.Build.0 = Release|Win32 + {18040998-CC22-2BAE-FE7A-C0A3038F1D5C}.Debug Library|Win32.ActiveCfg = Debug Library|Win32 + {18040998-CC22-2BAE-FE7A-C0A3038F1D5C}.Debug Library|Win32.Build.0 = Debug Library|Win32 + {18040998-CC22-2BAE-FE7A-C0A3038F1D5C}.Debug|Win32.ActiveCfg = Debug|Win32 + {18040998-CC22-2BAE-FE7A-C0A3038F1D5C}.Debug|Win32.Build.0 = Debug|Win32 + {18040998-CC22-2BAE-FE7A-C0A3038F1D5C}.Release Library|Win32.ActiveCfg = Debug|Win32 + {18040998-CC22-2BAE-FE7A-C0A3038F1D5C}.Release|Win32.ActiveCfg = Debug|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/projects/vstudio/zlib.props b/projects/vstudio/zlib.props new file mode 100644 index 000000000..6259400fc --- /dev/null +++ b/projects/vstudio/zlib.props @@ -0,0 +1,43 @@ + + + + + + + ..\..\..\..\zlib124-dll\zlib-1.2.4 + + + ..\..\..\..\zlib-1.2.4 + + diff --git a/projects/vstudio/zlib/zlib.vcxproj b/projects/vstudio/zlib/zlib.vcxproj new file mode 100644 index 000000000..94d75a3ed --- /dev/null +++ b/projects/vstudio/zlib/zlib.vcxproj @@ -0,0 +1,112 @@ + + + + + Debug Library + Win32 + + + Debug + Win32 + + + + + + + + + + + + + + + + + Win32Proj + + + + + DynamicLibrary + true + + + StaticLibrary + + + DynamicLibrary + + + + + + + + + + + + + + + + false + + + true + + + true + + + + WIN32;ZLIB_DLL;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Level3 + ProgramDatabase + Disabled + true + + + true + Windows + 1 + msvcrtd.lib;kernel32.lib + true + + + + + WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Level3 + ProgramDatabase + Disabled + + + MachineX86 + true + Windows + + + + + WIN32;NDEBUG;_WINDOWS;_USRDLL;DEBUGZLIB_EXPORTS;%(PreprocessorDefinitions) + MultiThreadedDLL + Level3 + ProgramDatabase + + + MachineX86 + true + Windows + true + true + + + + + +