From f67a7c08f7bd0f6922e807f2debe21c1329c60de Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sun, 19 Apr 2020 14:49:10 +0200 Subject: [PATCH 1/2] Allow to build libpng on more platforms Add the hardware-specific source files to the build systems. Do not add MIPS and PowerPC to MSVC build files, because these include which is not available for old MSVC versions. --- Makefile.in | 38 +++++++++++++++++++++++++++++- build/bakefiles/png.bkl | 13 ++++++++++ build/cmake/lib/png.cmake | 14 +++++++++++ build/msw/makefile.bcc | 38 +++++++++++++++++++++++++++++- build/msw/makefile.gcc | 38 +++++++++++++++++++++++++++++- build/msw/makefile.vc | 22 ++++++++++++++++- build/msw/wx_vc7_wxpng.vcproj | 15 ++++++++++++ build/msw/wx_vc8_wxpng.vcproj | 20 ++++++++++++++++ build/msw/wx_vc9_wxpng.vcproj | 20 ++++++++++++++++ build/msw/wx_wxpng.vcxproj | 7 +++++- build/msw/wx_wxpng.vcxproj.filters | 17 ++++++++++++- 11 files changed, 236 insertions(+), 6 deletions(-) diff --git a/Makefile.in b/Makefile.in index 4befb9aa88..36c69c7276 100644 --- a/Makefile.in +++ b/Makefile.in @@ -124,7 +124,16 @@ WXPNG_OBJECTS = \ wxpng_pngwio.o \ wxpng_pngwrite.o \ wxpng_pngwtran.o \ - wxpng_pngwutil.o + wxpng_pngwutil.o \ + wxpng_arm_init.o \ + wxpng_filter_neon_intrinsics.o \ + wxpng_palette_neon_intrinsics.o \ + wxpng_intel_init.o \ + wxpng_filter_sse2_intrinsics.o \ + wxpng_filter_msa_intrinsics.o \ + wxpng_mips_init.o \ + wxpng_filter_vsx_intrinsics.o \ + wxpng_powerpc_init.o WXJPEG_CFLAGS = $(WX_CPPFLAGS) -DNDEBUG $(WX_CFLAGS) $(____SHARED) $(CPPFLAGS) \ $(CFLAGS) WXJPEG_OBJECTS = \ @@ -14820,6 +14829,33 @@ wxpng_pngwtran.o: $(srcdir)/src/png/pngwtran.c wxpng_pngwutil.o: $(srcdir)/src/png/pngwutil.c $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/pngwutil.c +wxpng_arm_init.o: $(srcdir)/src/png/arm/arm_init.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/arm/arm_init.c + +wxpng_filter_neon_intrinsics.o: $(srcdir)/src/png/arm/filter_neon_intrinsics.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/arm/filter_neon_intrinsics.c + +wxpng_palette_neon_intrinsics.o: $(srcdir)/src/png/arm/palette_neon_intrinsics.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/arm/palette_neon_intrinsics.c + +wxpng_intel_init.o: $(srcdir)/src/png/intel/intel_init.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/intel/intel_init.c + +wxpng_filter_sse2_intrinsics.o: $(srcdir)/src/png/intel/filter_sse2_intrinsics.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/intel/filter_sse2_intrinsics.c + +wxpng_filter_msa_intrinsics.o: $(srcdir)/src/png/mips/filter_msa_intrinsics.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/mips/filter_msa_intrinsics.c + +wxpng_mips_init.o: $(srcdir)/src/png/mips/mips_init.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/mips/mips_init.c + +wxpng_filter_vsx_intrinsics.o: $(srcdir)/src/png/powerpc/filter_vsx_intrinsics.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/powerpc/filter_vsx_intrinsics.c + +wxpng_powerpc_init.o: $(srcdir)/src/png/powerpc/powerpc_init.c + $(CCC) -c -o $@ $(WXPNG_CFLAGS) $(srcdir)/src/png/powerpc/powerpc_init.c + wxjpeg_jaricom.o: $(srcdir)/src/jpeg/jaricom.c $(CCC) -c -o $@ $(WXJPEG_CFLAGS) $(srcdir)/src/jpeg/jaricom.c diff --git a/build/bakefiles/png.bkl b/build/bakefiles/png.bkl index aebf9d2bcb..03c984baf3 100644 --- a/build/bakefiles/png.bkl +++ b/build/bakefiles/png.bkl @@ -43,7 +43,20 @@ src/png/pngwrite.c src/png/pngwtran.c src/png/pngwutil.c + src/png/arm/arm_init.c + src/png/arm/filter_neon_intrinsics.c + src/png/arm/palette_neon_intrinsics.c + src/png/intel/intel_init.c + src/png/intel/filter_sse2_intrinsics.c + + + src/png/mips/filter_msa_intrinsics.c + src/png/mips/mips_init.c + src/png/powerpc/filter_vsx_intrinsics.c + src/png/powerpc/powerpc_init.c + + diff --git a/build/cmake/lib/png.cmake b/build/cmake/lib/png.cmake index 9dd9fdcf3b..1226473ef2 100644 --- a/build/cmake/lib/png.cmake +++ b/build/cmake/lib/png.cmake @@ -8,6 +8,14 @@ ############################################################################# if(wxUSE_LIBPNG STREQUAL "builtin") + if(NOT MSVC) + set(PNG_EXTRA_SOURCES + src/png/mips/filter_msa_intrinsics.c + src/png/mips/mips_init.c + src/png/powerpc/filter_vsx_intrinsics.c + src/png/powerpc/powerpc_init.c + ) + endif() wx_add_builtin_library(wxpng src/png/png.c src/png/pngerror.c @@ -24,6 +32,12 @@ if(wxUSE_LIBPNG STREQUAL "builtin") src/png/pngwrite.c src/png/pngwtran.c src/png/pngwutil.c + src/png/arm/arm_init.c + src/png/arm/filter_neon_intrinsics.c + src/png/arm/palette_neon_intrinsics.c + src/png/intel/intel_init.c + src/png/intel/filter_sse2_intrinsics.c + ${PNG_EXTRA_SOURCES} ) if(WIN32) # define this to get rid of a warning about using POSIX lfind(): diff --git a/build/msw/makefile.bcc b/build/msw/makefile.bcc index d812ac6e55..91a7ba490e 100644 --- a/build/msw/makefile.bcc +++ b/build/msw/makefile.bcc @@ -93,7 +93,16 @@ WXPNG_OBJECTS = \ $(OBJS)\wxpng_pngwio.obj \ $(OBJS)\wxpng_pngwrite.obj \ $(OBJS)\wxpng_pngwtran.obj \ - $(OBJS)\wxpng_pngwutil.obj + $(OBJS)\wxpng_pngwutil.obj \ + $(OBJS)\wxpng_arm_init.obj \ + $(OBJS)\wxpng_filter_neon_intrinsics.obj \ + $(OBJS)\wxpng_palette_neon_intrinsics.obj \ + $(OBJS)\wxpng_intel_init.obj \ + $(OBJS)\wxpng_filter_sse2_intrinsics.obj \ + $(OBJS)\wxpng_filter_msa_intrinsics.obj \ + $(OBJS)\wxpng_mips_init.obj \ + $(OBJS)\wxpng_filter_vsx_intrinsics.obj \ + $(OBJS)\wxpng_powerpc_init.obj WXJPEG_CFLAGS = $(__RUNTIME_LIBS) -I$(BCCDIR)\include $(__DEBUGINFO) \ $(__OPTIMIZEFLAG) $(__THREADSFLAG) -DNDEBUG -I$(SETUPHDIR) -w-8004 -w-8008 \ -w-8057 -w-8066 $(CPPFLAGS) $(CFLAGS) @@ -5734,6 +5743,33 @@ $(OBJS)\wxpng_pngwtran.obj: ..\..\src\png\pngwtran.c $(OBJS)\wxpng_pngwutil.obj: ..\..\src\png\pngwutil.c $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\pngwutil.c +$(OBJS)\wxpng_arm_init.obj: ..\..\src\png\arm\arm_init.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\arm\arm_init.c + +$(OBJS)\wxpng_filter_neon_intrinsics.obj: ..\..\src\png\arm\filter_neon_intrinsics.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\arm\filter_neon_intrinsics.c + +$(OBJS)\wxpng_palette_neon_intrinsics.obj: ..\..\src\png\arm\palette_neon_intrinsics.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\arm\palette_neon_intrinsics.c + +$(OBJS)\wxpng_intel_init.obj: ..\..\src\png\intel\intel_init.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\intel\intel_init.c + +$(OBJS)\wxpng_filter_sse2_intrinsics.obj: ..\..\src\png\intel\filter_sse2_intrinsics.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\intel\filter_sse2_intrinsics.c + +$(OBJS)\wxpng_filter_msa_intrinsics.obj: ..\..\src\png\mips\filter_msa_intrinsics.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\mips\filter_msa_intrinsics.c + +$(OBJS)\wxpng_mips_init.obj: ..\..\src\png\mips\mips_init.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\mips\mips_init.c + +$(OBJS)\wxpng_filter_vsx_intrinsics.obj: ..\..\src\png\powerpc\filter_vsx_intrinsics.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\powerpc\filter_vsx_intrinsics.c + +$(OBJS)\wxpng_powerpc_init.obj: ..\..\src\png\powerpc\powerpc_init.c + $(CC) -q -c -P- -o$@ $(WXPNG_CFLAGS) ..\..\src\png\powerpc\powerpc_init.c + $(OBJS)\wxjpeg_jaricom.obj: ..\..\src\jpeg\jaricom.c $(CC) -q -c -P- -o$@ $(WXJPEG_CFLAGS) ..\..\src\jpeg\jaricom.c diff --git a/build/msw/makefile.gcc b/build/msw/makefile.gcc index 43c628c6dc..8156849df8 100644 --- a/build/msw/makefile.gcc +++ b/build/msw/makefile.gcc @@ -84,7 +84,16 @@ WXPNG_OBJECTS = \ $(OBJS)\wxpng_pngwio.o \ $(OBJS)\wxpng_pngwrite.o \ $(OBJS)\wxpng_pngwtran.o \ - $(OBJS)\wxpng_pngwutil.o + $(OBJS)\wxpng_pngwutil.o \ + $(OBJS)\wxpng_arm_init.o \ + $(OBJS)\wxpng_filter_neon_intrinsics.o \ + $(OBJS)\wxpng_palette_neon_intrinsics.o \ + $(OBJS)\wxpng_intel_init.o \ + $(OBJS)\wxpng_filter_sse2_intrinsics.o \ + $(OBJS)\wxpng_filter_msa_intrinsics.o \ + $(OBJS)\wxpng_mips_init.o \ + $(OBJS)\wxpng_filter_vsx_intrinsics.o \ + $(OBJS)\wxpng_powerpc_init.o WXJPEG_CFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) $(GCCFLAGS) \ -DHAVE_W32API_H -DNDEBUG -I$(SETUPHDIR) $(CPPFLAGS) $(CFLAGS) WXJPEG_OBJECTS = \ @@ -6037,6 +6046,33 @@ $(OBJS)\wxpng_pngwtran.o: ../../src/png/pngwtran.c $(OBJS)\wxpng_pngwutil.o: ../../src/png/pngwutil.c $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< +$(OBJS)\wxpng_arm_init.o: ../../src/png/arm/arm_init.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_filter_neon_intrinsics.o: ../../src/png/arm/filter_neon_intrinsics.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_palette_neon_intrinsics.o: ../../src/png/arm/palette_neon_intrinsics.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_intel_init.o: ../../src/png/intel/intel_init.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_filter_sse2_intrinsics.o: ../../src/png/intel/filter_sse2_intrinsics.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_filter_msa_intrinsics.o: ../../src/png/mips/filter_msa_intrinsics.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_mips_init.o: ../../src/png/mips/mips_init.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_filter_vsx_intrinsics.o: ../../src/png/powerpc/filter_vsx_intrinsics.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + +$(OBJS)\wxpng_powerpc_init.o: ../../src/png/powerpc/powerpc_init.c + $(CC) -c -o $@ $(WXPNG_CFLAGS) $(CPPDEPS) $< + $(OBJS)\wxjpeg_jaricom.o: ../../src/jpeg/jaricom.c $(CC) -c -o $@ $(WXJPEG_CFLAGS) $(CPPDEPS) $< diff --git a/build/msw/makefile.vc b/build/msw/makefile.vc index f1d7016dba..7c61cb5159 100644 --- a/build/msw/makefile.vc +++ b/build/msw/makefile.vc @@ -94,7 +94,12 @@ WXPNG_OBJECTS = \ $(OBJS)\wxpng_pngwio.obj \ $(OBJS)\wxpng_pngwrite.obj \ $(OBJS)\wxpng_pngwtran.obj \ - $(OBJS)\wxpng_pngwutil.obj + $(OBJS)\wxpng_pngwutil.obj \ + $(OBJS)\wxpng_arm_init.obj \ + $(OBJS)\wxpng_filter_neon_intrinsics.obj \ + $(OBJS)\wxpng_palette_neon_intrinsics.obj \ + $(OBJS)\wxpng_intel_init.obj \ + $(OBJS)\wxpng_filter_sse2_intrinsics.obj WXJPEG_CFLAGS = /M$(__RUNTIME_LIBS_55)$(__DEBUGRUNTIME) /DWIN32 $(__DEBUGINFO) \ /Fd$(LIBDIRNAME)\wxjpeg$(WXDEBUGFLAG).pdb $(____DEBUGRUNTIME) \ $(__OPTIMIZEFLAG) /D_CRT_SECURE_NO_DEPRECATE=1 \ @@ -6652,6 +6657,21 @@ $(OBJS)\wxpng_pngwtran.obj: ..\..\src\png\pngwtran.c $(OBJS)\wxpng_pngwutil.obj: ..\..\src\png\pngwutil.c $(CC) /c /nologo /TC /Fo$@ $(WXPNG_CFLAGS) ..\..\src\png\pngwutil.c +$(OBJS)\wxpng_arm_init.obj: ..\..\src\png\arm\arm_init.c + $(CC) /c /nologo /TC /Fo$@ $(WXPNG_CFLAGS) ..\..\src\png\arm\arm_init.c + +$(OBJS)\wxpng_filter_neon_intrinsics.obj: ..\..\src\png\arm\filter_neon_intrinsics.c + $(CC) /c /nologo /TC /Fo$@ $(WXPNG_CFLAGS) ..\..\src\png\arm\filter_neon_intrinsics.c + +$(OBJS)\wxpng_palette_neon_intrinsics.obj: ..\..\src\png\arm\palette_neon_intrinsics.c + $(CC) /c /nologo /TC /Fo$@ $(WXPNG_CFLAGS) ..\..\src\png\arm\palette_neon_intrinsics.c + +$(OBJS)\wxpng_intel_init.obj: ..\..\src\png\intel\intel_init.c + $(CC) /c /nologo /TC /Fo$@ $(WXPNG_CFLAGS) ..\..\src\png\intel\intel_init.c + +$(OBJS)\wxpng_filter_sse2_intrinsics.obj: ..\..\src\png\intel\filter_sse2_intrinsics.c + $(CC) /c /nologo /TC /Fo$@ $(WXPNG_CFLAGS) ..\..\src\png\intel\filter_sse2_intrinsics.c + $(OBJS)\wxjpeg_jaricom.obj: ..\..\src\jpeg\jaricom.c $(CC) /c /nologo /TC /Fo$@ $(WXJPEG_CFLAGS) ..\..\src\jpeg\jaricom.c diff --git a/build/msw/wx_vc7_wxpng.vcproj b/build/msw/wx_vc7_wxpng.vcproj index 60b7e66256..ea607b9bc9 100644 --- a/build/msw/wx_vc7_wxpng.vcproj +++ b/build/msw/wx_vc7_wxpng.vcproj @@ -243,6 +243,21 @@ Name="Source Files" Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> + + + + + + + + + + diff --git a/build/msw/wx_vc8_wxpng.vcproj b/build/msw/wx_vc8_wxpng.vcproj index cf71091aed..f3fc8bdbca 100644 --- a/build/msw/wx_vc8_wxpng.vcproj +++ b/build/msw/wx_vc8_wxpng.vcproj @@ -670,6 +670,26 @@ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" > + + + + + + + + + + diff --git a/build/msw/wx_vc9_wxpng.vcproj b/build/msw/wx_vc9_wxpng.vcproj index 8bd7f3efcf..81926af9f1 100644 --- a/build/msw/wx_vc9_wxpng.vcproj +++ b/build/msw/wx_vc9_wxpng.vcproj @@ -666,6 +666,26 @@ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" > + + + + + + + + + + diff --git a/build/msw/wx_wxpng.vcxproj b/build/msw/wx_wxpng.vcxproj index 9aafd4b9a1..bc683a3c43 100644 --- a/build/msw/wx_wxpng.vcxproj +++ b/build/msw/wx_wxpng.vcxproj @@ -417,8 +417,13 @@ + + + + + - \ No newline at end of file + diff --git a/build/msw/wx_wxpng.vcxproj.filters b/build/msw/wx_wxpng.vcxproj.filters index 2355a6eaf8..f66c563380 100644 --- a/build/msw/wx_wxpng.vcxproj.filters +++ b/build/msw/wx_wxpng.vcxproj.filters @@ -52,5 +52,20 @@ Source Files + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + - \ No newline at end of file + From f226fc0c76f33ca7dd48088fed4cc0be07b9d43f Mon Sep 17 00:00:00 2001 From: Maarten Bent Date: Sun, 19 Apr 2020 14:53:51 +0200 Subject: [PATCH 2/2] Enable SSE2 in libpng build --- Makefile.in | 4 +-- build/bakefiles/png.bkl | 1 + build/cmake/lib/png.cmake | 1 + build/msw/makefile.bcc | 4 +-- build/msw/makefile.gcc | 3 ++- build/msw/makefile.vc | 3 ++- build/msw/wx_vc7_wxpng.vcproj | 24 +++++++++--------- build/msw/wx_vc8_wxpng.vcproj | 48 +++++++++++++++++------------------ build/msw/wx_vc9_wxpng.vcproj | 48 +++++++++++++++++------------------ build/msw/wx_wxpng.vcxproj | 48 +++++++++++++++++------------------ 10 files changed, 94 insertions(+), 90 deletions(-) diff --git a/Makefile.in b/Makefile.in index 36c69c7276..643df881cb 100644 --- a/Makefile.in +++ b/Makefile.in @@ -107,8 +107,8 @@ WXZLIB_OBJECTS = \ wxzlib_trees.o \ wxzlib_uncompr.o \ wxzlib_zutil.o -WXPNG_CFLAGS = $(WX_CPPFLAGS) -DNDEBUG $(__INC_ZLIB_p) $(WX_CFLAGS) \ - $(____SHARED) $(CPPFLAGS) $(CFLAGS) +WXPNG_CFLAGS = $(WX_CPPFLAGS) -DNDEBUG $(__INC_ZLIB_p) -DPNG_INTEL_SSE \ + $(WX_CFLAGS) $(____SHARED) $(CPPFLAGS) $(CFLAGS) WXPNG_OBJECTS = \ wxpng_png.o \ wxpng_pngerror.o \ diff --git a/build/bakefiles/png.bkl b/build/bakefiles/png.bkl index 03c984baf3..af5089184b 100644 --- a/build/bakefiles/png.bkl +++ b/build/bakefiles/png.bkl @@ -25,6 +25,7 @@ cond="wxUSE_LIBPNG=='builtin' and USE_GUI=='1' and BUILDING_LIB=='1'"> $(LIBDIRNAME) $(INC_ZLIB) + PNG_INTEL_SSE -w-8004 -wcd=124 diff --git a/build/cmake/lib/png.cmake b/build/cmake/lib/png.cmake index 1226473ef2..c06a8cc5f0 100644 --- a/build/cmake/lib/png.cmake +++ b/build/cmake/lib/png.cmake @@ -46,6 +46,7 @@ if(wxUSE_LIBPNG STREQUAL "builtin") # http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=101278 target_compile_definitions(wxpng PRIVATE _CRT_NONSTDC_NO_WARNINGS) endif() + target_compile_definitions(wxpng PRIVATE PNG_INTEL_SSE) target_include_directories(wxpng PRIVATE ${ZLIB_INCLUDE_DIRS}) target_link_libraries(wxpng PRIVATE ${ZLIB_LIBRARIES}) set(PNG_LIBRARIES wxpng) diff --git a/build/msw/makefile.bcc b/build/msw/makefile.bcc index 91a7ba490e..6ab7deb180 100644 --- a/build/msw/makefile.bcc +++ b/build/msw/makefile.bcc @@ -76,8 +76,8 @@ WXZLIB_OBJECTS = \ $(OBJS)\wxzlib_uncompr.obj \ $(OBJS)\wxzlib_zutil.obj WXPNG_CFLAGS = $(__RUNTIME_LIBS) -I$(BCCDIR)\include $(__DEBUGINFO) \ - $(__OPTIMIZEFLAG) $(__THREADSFLAG) -DNDEBUG -I..\..\src\zlib -w-8004 \ - $(CPPFLAGS) $(CFLAGS) + $(__OPTIMIZEFLAG) $(__THREADSFLAG) -DNDEBUG -I..\..\src\zlib -DPNG_INTEL_SSE \ + -w-8004 $(CPPFLAGS) $(CFLAGS) WXPNG_OBJECTS = \ $(OBJS)\wxpng_png.obj \ $(OBJS)\wxpng_pngerror.obj \ diff --git a/build/msw/makefile.gcc b/build/msw/makefile.gcc index 8156849df8..4d111d00e0 100644 --- a/build/msw/makefile.gcc +++ b/build/msw/makefile.gcc @@ -68,7 +68,8 @@ WXZLIB_OBJECTS = \ $(OBJS)\wxzlib_uncompr.o \ $(OBJS)\wxzlib_zutil.o WXPNG_CFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) $(GCCFLAGS) \ - -DHAVE_W32API_H -DNDEBUG -I..\..\src\zlib $(CPPFLAGS) $(CFLAGS) + -DHAVE_W32API_H -DNDEBUG -I..\..\src\zlib -DPNG_INTEL_SSE $(CPPFLAGS) \ + $(CFLAGS) WXPNG_OBJECTS = \ $(OBJS)\wxpng_png.o \ $(OBJS)\wxpng_pngerror.o \ diff --git a/build/msw/makefile.vc b/build/msw/makefile.vc index 7c61cb5159..544dc13abb 100644 --- a/build/msw/makefile.vc +++ b/build/msw/makefile.vc @@ -78,7 +78,8 @@ WXPNG_CFLAGS = /M$(__RUNTIME_LIBS_40)$(__DEBUGRUNTIME) /DWIN32 $(__DEBUGINFO) \ $(__OPTIMIZEFLAG) /D_CRT_SECURE_NO_DEPRECATE=1 \ /D_CRT_NON_CONFORMING_SWPRINTFS=1 /D_SCL_SECURE_NO_WARNINGS=1 \ $(__NO_VC_CRTDBG_p) $(__TARGET_CPU_COMPFLAG_p) /DNDEBUG \ - /D_CRT_SECURE_NO_WARNINGS /I..\..\src\zlib $(CPPFLAGS) $(CFLAGS) + /D_CRT_SECURE_NO_WARNINGS /I..\..\src\zlib /DPNG_INTEL_SSE $(CPPFLAGS) \ + $(CFLAGS) WXPNG_OBJECTS = \ $(OBJS)\wxpng_png.obj \ $(OBJS)\wxpng_pngerror.obj \ diff --git a/build/msw/wx_vc7_wxpng.vcproj b/build/msw/wx_vc7_wxpng.vcproj index ea607b9bc9..797b1b8b5b 100644 --- a/build/msw/wx_vc7_wxpng.vcproj +++ b/build/msw/wx_vc7_wxpng.vcproj @@ -27,7 +27,7 @@ Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\src\zlib" - PreprocessorDefinitions="WIN32;_LIB;_DEBUG;NDEBUG;_CRT_SECURE_NO_WARNINGS" + PreprocessorDefinitions="WIN32;_LIB;_DEBUG;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE" MinimalRebuild="TRUE" ExceptionHandling="TRUE" BasicRuntimeChecks="3" @@ -48,7 +48,7 @@ SuppressStartupBanner="TRUE"/> @@ -58,7 +58,7 @@ Name="VCPreLinkEventTool"/> @@ -111,7 +111,7 @@ Name="VCPreLinkEventTool"/> @@ -167,7 +167,7 @@ Name="VCPreLinkEventTool"/> @@ -220,7 +220,7 @@ Name="VCPreLinkEventTool"/> @@ -127,14 +127,14 @@ /> @@ -205,14 +205,14 @@ /> @@ -286,14 +286,14 @@ /> @@ -364,14 +364,14 @@ /> @@ -445,14 +445,14 @@ /> @@ -523,14 +523,14 @@ /> @@ -604,14 +604,14 @@ /> diff --git a/build/msw/wx_vc9_wxpng.vcproj b/build/msw/wx_vc9_wxpng.vcproj index 81926af9f1..fb7f82f361 100644 --- a/build/msw/wx_vc9_wxpng.vcproj +++ b/build/msw/wx_vc9_wxpng.vcproj @@ -46,7 +46,7 @@ /> @@ -126,7 +126,7 @@ /> @@ -204,7 +204,7 @@ /> @@ -284,7 +284,7 @@ /> @@ -362,7 +362,7 @@ /> @@ -442,7 +442,7 @@ /> @@ -520,7 +520,7 @@ /> @@ -600,7 +600,7 @@ /> diff --git a/build/msw/wx_wxpng.vcxproj b/build/msw/wx_wxpng.vcxproj index bc683a3c43..82b744b9eb 100644 --- a/build/msw/wx_wxpng.vcxproj +++ b/build/msw/wx_wxpng.vcxproj @@ -133,13 +133,13 @@ - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) Disabled ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync EnableFastChecks MultiThreadedDebugDLL @@ -151,7 +151,7 @@ true - _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories) @@ -166,13 +166,13 @@ - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) Disabled ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync EnableFastChecks MultiThreadedDebugDLL @@ -184,7 +184,7 @@ true - _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories) @@ -199,13 +199,13 @@ - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) MaxSpeed ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync MultiThreadedDLL true @@ -219,7 +219,7 @@ true - _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories) @@ -235,13 +235,13 @@ - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) MaxSpeed ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync MultiThreadedDLL true @@ -254,7 +254,7 @@ true - _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories) @@ -269,13 +269,13 @@ - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) Disabled ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync EnableFastChecks MultiThreadedDebugDLL @@ -287,7 +287,7 @@ true - _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories) @@ -302,13 +302,13 @@ - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) Disabled ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync EnableFastChecks MultiThreadedDebugDLL @@ -320,7 +320,7 @@ true - _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _DEBUG;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories) @@ -335,13 +335,13 @@ - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) MaxSpeed ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync MultiThreadedDLL true @@ -354,7 +354,7 @@ true - _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories) @@ -369,13 +369,13 @@ - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) ..\..\src\zlib;%(AdditionalIncludeDirectories) MaxSpeed ..\..\src\zlib;%(AdditionalIncludeDirectories) - WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + WIN32;_LIB;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) Sync MultiThreadedDLL true @@ -388,7 +388,7 @@ true - _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + _CRT_SECURE_NO_DEPRECATE=1;_CRT_NON_CONFORMING_SWPRINTFS=1;_SCL_SECURE_NO_WARNINGS=1;NDEBUG;_CRT_SECURE_NO_WARNINGS;PNG_INTEL_SSE;%(PreprocessorDefinitions) 0x0409 ..\..\src\zlib;%(AdditionalIncludeDirectories)