diff --git a/ANNOUNCE b/ANNOUNCE
index 9ae7ccb6a..7af8959c3 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -572,6 +572,11 @@ Version 1.6.0beta34 [December 19, 2012]
Version 1.6.0beta35 [December 21, 2012]
Made default Zlib compression settings be configurable. This adds #defines to
pnglibconf.h to control the defaults.
+ Fixed Windows build issues, enabled ARM compilation. Various warnings issued by
+ earlier versions of GCC fixed for Cygwin and Min/GW (which both use old GCCs.)
+ ARM support is enabled by default in zlib.props (unsupported by Microsoft) and
+ ARM compilation is made possible by deleting the check for x86. The test programs
+ cannot be run because they are not signed.
===========================================================================
NOTICE November 17, 2012:
diff --git a/CHANGES b/CHANGES
index 41fcc579d..f9613a94c 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4324,6 +4324,11 @@ Version 1.6.0beta34 [December 19, 2012]
Version 1.6.0beta35 [December 21, 2012]
Made default Zlib compression settings be configurable. This adds #defines to
pnglibconf.h to control the defaults.
+ Fixed Windows build issues, enabled ARM compilation. Various warnings issued by
+ earlier versions of GCC fixed for Cygwin and Min/GW (which both use old GCCs.)
+ ARM support is enabled by default in zlib.props (unsupported by Microsoft) and
+ ARM compilation is made possible by deleting the check for x86. The test programs
+ cannot be run because they are not signed.
===========================================================================
NOTICE November 17, 2012:
diff --git a/pngconf.h b/pngconf.h
index 458e92b9b..8d7b75eb5 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
/* pngconf.h - machine configurable file for libpng
*
- * libpng version 1.6.0beta35 - December 19, 2012
+ * libpng version 1.6.0beta35 - December 21, 2012
*
* Copyright (c) 1998-2012 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -198,18 +198,16 @@
* ==========================
* This code is used at build time to find PNG_IMPEXP, the API settings
* and PNG_EXPORT_TYPE(), it may also set a macro to indicate the DLL
- * import processing is possible. On Windows/x86 systems it also sets
+ * import processing is possible. On Windows systems it also sets
* compiler-specific macros to the values required to change the calling
* conventions of the various functions.
*/
-#if ( defined(_Windows) || defined(_WINDOWS) || defined(WIN32) ||\
- defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) ) &&\
- ( defined(_X86_) || defined(_X64_) || defined(_M_IX86) ||\
- defined(_M_X64) || defined(_M_IA64) )
- /* Windows system (DOS doesn't support DLLs) running on x86/x64. Includes
- * builds under Cygwin or MinGW. Also includes Watcom builds but these need
- * special treatment because they are not compatible with GCC or Visual C
- * because of different calling conventions.
+#if defined(_Windows) || defined(_WINDOWS) || defined(WIN32) ||\
+ defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
+ /* Windows system (DOS doesn't support DLLs). Includes builds under Cygwin or
+ * MinGW on any architecture currently supported by Windows. Also includes
+ * Watcom builds but these need special treatment because they are not
+ * compatible with GCC or Visual C because of different calling conventions.
*/
# if PNG_API_RULE == 2
/* If this line results in an error, either because __watcall is not
@@ -223,6 +221,9 @@
# if defined(__GNUC__) || (defined (_MSC_VER) && (_MSC_VER >= 800))
# define PNGCAPI __cdecl
# if PNG_API_RULE == 1
+ /* If this line results in an error __stdcall is not understood and
+ * PNG_API_RULE should not have been set to '1'.
+ */
# define PNGAPI __stdcall
# endif
# else
@@ -260,7 +261,7 @@
# endif
# endif /* compiler */
-#else /* !Windows/x86 */
+#else /* !Windows */
# if (defined(__IBMC__) || defined(__IBMCPP__)) && defined(__OS2__)
# define PNGAPI _System
# else /* !Windows/x86 && !OS/2 */
diff --git a/pngwrite.c b/pngwrite.c
index 6e333f58b..fb1d4e55b 100644
--- a/pngwrite.c
+++ b/pngwrite.c
@@ -447,7 +447,6 @@ png_write_end(png_structrp png_ptr, png_inforp info_ptr)
}
#ifdef PNG_CONVERT_tIME_SUPPORTED
-/* "tm" structure is not supported on WindowsCE */
void PNGAPI
png_convert_from_struct_tm(png_timep ptime, PNG_CONST struct tm * ttime)
{
diff --git a/projects/vstudio/libpng/libpng.vcxproj b/projects/vstudio/libpng/libpng.vcxproj
index e66b9c673..de7fc3c41 100644
--- a/projects/vstudio/libpng/libpng.vcxproj
+++ b/projects/vstudio/libpng/libpng.vcxproj
@@ -23,8 +23,8 @@
Win32Projlibpng
-
+ DynamicLibraryMultiByte
diff --git a/projects/vstudio/pnglibconf/pnglibconf.vcxproj b/projects/vstudio/pnglibconf/pnglibconf.vcxproj
index 7c691c32d..e2a232cb6 100644
--- a/projects/vstudio/pnglibconf/pnglibconf.vcxproj
+++ b/projects/vstudio/pnglibconf/pnglibconf.vcxproj
@@ -17,6 +17,7 @@
trueMultiByte
+
diff --git a/projects/vstudio/pngstest/pngstest.vcxproj b/projects/vstudio/pngstest/pngstest.vcxproj
index fc2e9d5d8..0d2980dd8 100644
--- a/projects/vstudio/pngstest/pngstest.vcxproj
+++ b/projects/vstudio/pngstest/pngstest.vcxproj
@@ -23,8 +23,8 @@
Win32Projpngstest
-
+ ApplicationUnicode
@@ -96,7 +96,7 @@
Consoletrue
- libpng16.lib;zlib.lib
+ libpng16.lib$(OutDir)
@@ -163,7 +163,7 @@
truetruetrue
- libpng16.lib;zlib.lib
+ libpng16.lib$(OutDir)UseLinkTimeCodeGeneration
diff --git a/projects/vstudio/pngtest/pngtest.vcxproj b/projects/vstudio/pngtest/pngtest.vcxproj
index 3680b8ce5..bf9266f75 100644
--- a/projects/vstudio/pngtest/pngtest.vcxproj
+++ b/projects/vstudio/pngtest/pngtest.vcxproj
@@ -23,8 +23,8 @@
Win32Projpngtest
-
+ ApplicationUnicode
diff --git a/projects/vstudio/pngunknown/pngunknown.vcxproj b/projects/vstudio/pngunknown/pngunknown.vcxproj
index 6f9059544..a30cc7a21 100644
--- a/projects/vstudio/pngunknown/pngunknown.vcxproj
+++ b/projects/vstudio/pngunknown/pngunknown.vcxproj
@@ -23,8 +23,8 @@
Win32Projpngunknown
-
+ ApplicationUnicode
@@ -96,7 +96,7 @@
Consoletrue
- libpng16.lib;zlib.lib
+ libpng16.lib$(OutDir)
@@ -163,7 +163,7 @@
truetruetrue
- libpng16.lib;zlib.lib
+ libpng16.lib$(OutDir)UseLinkTimeCodeGeneration
diff --git a/projects/vstudio/pngvalid/pngvalid.vcxproj b/projects/vstudio/pngvalid/pngvalid.vcxproj
index 84efc4d81..07cf24119 100644
--- a/projects/vstudio/pngvalid/pngvalid.vcxproj
+++ b/projects/vstudio/pngvalid/pngvalid.vcxproj
@@ -23,8 +23,8 @@
Win32Projpngvalid
-
+ ApplicationUnicode
diff --git a/projects/vstudio/readme.txt b/projects/vstudio/readme.txt
index 189e26cf5..b68bf9629 100644
--- a/projects/vstudio/readme.txt
+++ b/projects/vstudio/readme.txt
@@ -1,7 +1,7 @@
VisualStudio instructions
-libpng version 1.6.0beta35 - December 19, 2012
+libpng version 1.6.0beta35 - December 21, 2012
Copyright (c) 1998-2010 Glenn Randers-Pehrson
diff --git a/projects/vstudio/zlib.props b/projects/vstudio/zlib.props
index 348d68663..8b7591c3d 100644
--- a/projects/vstudio/zlib.props
+++ b/projects/vstudio/zlib.props
@@ -2,7 +2,7 @@
..\..\..\..\zlib-1.2.5
+
+
+ true
diff --git a/projects/vstudio/zlib/zlib.vcxproj b/projects/vstudio/zlib/zlib.vcxproj
index 8e271988f..6e5b94a61 100644
--- a/projects/vstudio/zlib/zlib.vcxproj
+++ b/projects/vstudio/zlib/zlib.vcxproj
@@ -36,8 +36,8 @@
Win32Projzlib
-
+ StaticLibrary