From c583ec1579a6a2ca6c0b8c5e6901b5bb932456b3 Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Tue, 29 Dec 2015 08:43:51 -0600 Subject: [PATCH] [libpng15] In projects/vstudio, combined readme.txt and WARNING into README.txt --- ANNOUNCE | 5 +- CHANGES | 3 +- projects/vstudio/{readme.txt => README.txt} | 51 +++++++++++++-------- projects/vstudio/WARNING | 23 ---------- 4 files changed, 38 insertions(+), 44 deletions(-) rename projects/vstudio/{readme.txt => README.txt} (63%) delete mode 100644 projects/vstudio/WARNING diff --git a/ANNOUNCE b/ANNOUNCE index 99d22d792..56374827f 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,5 +1,5 @@ -Libpng 1.5.27beta01 - December 18, 2015 +Libpng 1.5.27beta01 - December 29, 2015 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. @@ -26,7 +26,7 @@ Other information: Changes since the last public release (1.5.26): -version 1.5.27beta01 [December 18, 2015] +version 1.5.27beta01 [December 29, 2015] Removed LE/BE dependencies in pngvalid, to 'fix' the current problem in the BigEndian tests by not testing it, making the BE code the same as the LE version. @@ -44,6 +44,7 @@ version 1.5.27beta01 [December 18, 2015] David Drysdale as a result of reports from UBSAN in clang 3.8). This changes pngvalid to use BE random numbers; this used to produce errors but these should not be fixed as a result of the previous changes. + In projects/vstudio, combined readme.txt and WARNING into README.txt Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/CHANGES b/CHANGES index e967ea7c7..7fb358216 100644 --- a/CHANGES +++ b/CHANGES @@ -4454,7 +4454,7 @@ version 1.5.26rc01 [December 14, 2015] version 1.5.26 [December 17, 2015] No changes. -version 1.5.27beta01 [December 18, 2015] +version 1.5.27beta01 [December 29, 2015] Removed LE/BE dependencies in pngvalid, to 'fix' the current problem in the BigEndian tests by not testing it, making the BE code the same as the LE version. @@ -4472,6 +4472,7 @@ version 1.5.27beta01 [December 18, 2015] David Drysdale as a result of reports from UBSAN in clang 3.8). This changes pngvalid to use BE random numbers; this used to produce errors but these should not be fixed as a result of the previous changes. + In projects/vstudio, combined readme.txt and WARNING into README.txt Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/projects/vstudio/readme.txt b/projects/vstudio/README.txt similarity index 63% rename from projects/vstudio/readme.txt rename to projects/vstudio/README.txt index c8d71aa2f..08bacbb7d 100644 --- a/projects/vstudio/readme.txt +++ b/projects/vstudio/README.txt @@ -1,9 +1,9 @@ VisualStudio instructions -libpng version 1.5.27beta01 - December 18, 2015 +libpng version 1.5.27beta01 - December 29, 2015 -Copyright (c) 1998-2010 Glenn Randers-Pehrson +Copyright (c) 2010,2013,2016 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer @@ -13,14 +13,6 @@ 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. -WARNING -======= -Libpng 1.5 erroneously uses /MD when building debug DLL versions of libpng. -It should use /MDd - you can change this under properties\C/C++\Code -Generation\Runtime Library if you need to use the debug runtime for debug -builds. This will be changed in libpng 1.6 but is currently retained for -compatibility with older libpng 1.5 releases. - Initial preparations ==================== You must enter some information in zlib.props before attempting to build @@ -41,21 +33,22 @@ optimization level (e.g. /Od.) Linking your application ======================== Normally you should link against the 'release' configuration. This builds a -DLL for libpng 1.5 with the default runtime options used by Visual Studio -2010. In particular the runtime library is the "MultiThreaded DLL" version. +DLL for libpng with the default runtime options used by Visual Studio 2010. +In particular the runtime library is the "MultiThreaded DLL" version. If you use Visual Studio defaults to build your application you will have no problems. -If you don't use the Visual Studio defaults your application must still be built -with the default runtime option (/MD). If, for some reason, it is not then your -application will crash inside libpng15.dll as soon as libpng tries to read -from a file handle you pass in. +If you don't use the Visual Studio defaults your application must still be +built with the default runtime option (/MD). If, for some reason, it is not +then your application will crash inside libpng15.dll as soon as libpng +tries to read from a file handle you pass in. If you do not want to use the DLL, for example for a very small application, the 'release library' configuration may be more appropriate. This is built with a non-standard runtime library - the "MultiThreaded" version. When you build your application it must be compiled with this option (/MT), otherwise -it will not build (if you are lucky) or crash (if you are not.) +it will not build (if you are lucky) or crash (if you are not.) See the +WARNING file that is distributed along with this readme.txt. Stop reading here ================= @@ -66,7 +59,29 @@ 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.) +a special debug build unless you have heap corruption problems that you can't +track down.) 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. + +WARNING +======= + +Libpng 1.5.x erroneously uses /MD for Debug DLL builds; if you used the +debug builds in your app and you changed your app to use /MD you will need +to change it back to /MDd for libpng 1.6.0 and later. + +The runtime library settings for each build are as follows: + + Release Debug + DLL /MD /MDd + Library /MT /MTd + +The Visual Studio 2010 defaults for a Win32 DLL or Static Library project are +as follows: + + Release Debug + DLL /MD /MDd + Static Library /MD /MDd + diff --git a/projects/vstudio/WARNING b/projects/vstudio/WARNING deleted file mode 100644 index 16968138d..000000000 --- a/projects/vstudio/WARNING +++ /dev/null @@ -1,23 +0,0 @@ -WARNING -======= -Libpng 1.5 erroneously uses /MD when building debug DLL versions of libpng. -It should use /MDd - you can change this under properties\C/C++\Code -Generation\Runtime Library if you need to use the debug runtime for debug -builds. This will be changed in libpng 1.6 but is currently retained for -compatibility with older libpng 1.5 releases. - -The runtime library settings for each build are as follows: - - Release Debug -DLL /MD /MD -Library /MT /MTd - -The Visual Studio 2010 defaults for a Win32 DLL or Static Library project are -as follows: - - Release Debug -DLL /MD /MDd -Static Library /MD /MDd - -Notice that by default static library builds use the DLL runtime, not the -static library runtime.