changeset 3105:728a29b93060

[MSVC] enable GraphicsMagick compilation, bump lcms requirement to 2.X.
author Michael Goffioul <michael.goffioul@gmail.com>
date Thu, 27 Jun 2013 21:52:26 -0400
parents 920e26e6c6a3
children b8e2aa2141e5
files src/graphicsmagick.mk src/msvc-graphicsmagick-1.patch
diffstat 2 files changed, 161 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/graphicsmagick.mk	Thu Jun 27 12:44:50 2013 -0400
+++ b/src/graphicsmagick.mk	Thu Jun 27 21:52:26 2013 -0400
@@ -7,7 +7,10 @@
 $(PKG)_SUBDIR   := GraphicsMagick-$($(PKG)_VERSION)
 $(PKG)_FILE     := GraphicsMagick-$($(PKG)_VERSION).tar.xz
 $(PKG)_URL      := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE)
-$(PKG)_DEPS     := pthreads libtool zlib bzip2 jpeg jasper lcms1 libpng tiff freetype libxml2
+$(PKG)_DEPS     := zlib bzip2 jpeg jasper lcms libpng tiff freetype libxml2
+ifneq ($(MXE_SYSTEM),msvc)
+    $(PKG)_DEPS += pthreads libtool
+endif
 
 define $(PKG)_UPDATE
     $(WGET) -q -O- 'http://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/' | \
@@ -44,7 +47,8 @@
         --with-zlib \
         --without-x \
         ac_cv_prog_xml2_config='$(HOST_BINDIR)/xml2-config' \
-        ac_cv_path_xml2_config='$(HOST_BINDIR)/xml2-config'
+        ac_cv_path_xml2_config='$(HOST_BINDIR)/xml2-config' \
+	&& $(CONFIGURE_POST_HOOK)
     $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS=
     $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS=
 endef
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/msvc-graphicsmagick-1.patch	Thu Jun 27 21:52:26 2013 -0400
@@ -0,0 +1,155 @@
+diff -ur GraphicsMagick-1.3.17-orig/Makefile.in GraphicsMagick-1.3.17/Makefile.in
+--- GraphicsMagick-1.3.17-orig/Makefile.in	2012-10-13 17:32:10 -0400
++++ GraphicsMagick-1.3.17/Makefile.in	2013-06-27 20:05:41 -0400
+@@ -3399,7 +3399,7 @@
+ @WITH_MODULES_TRUE@magick_libGraphicsMagick_la_LIBADD = $(MAGICK_DEP_LIBS) $(MAGICK_LIBLTDL)
+ magick_libGraphicsMagick_la_CPPFLAGS = -I$(top_builddir)/ltdl -I$(top_srcdir)/ltdl $(LIBRARY_EXTRA_CPPFLAGS)
+ magick_libGraphicsMagick_la_LDFLAGS = \
+-	-no-undefined -export-symbols-regex ".*" \
++	-no-undefined -export-symbols-regex "xXx" \
+ 	$(MAGICK_LT_RELEASE_OPTS) \
+ 	-version-info $(MAGICK_LIBRARY_CURRENT):$(MAGICK_LIBRARY_REVISION):$(MAGICK_LIBRARY_AGE)
+ 
+@@ -3811,7 +3811,7 @@
+ 
+ # -no-undefined -export-symbols-regex ".*"
+ Magick___lib_libGraphicsMagick___la_LDFLAGS = -no-undefined \
+-	$(MAGICK_LT_RELEASE_OPTS) \
++	$(MAGICK_LT_RELEASE_OPTS) -export-symbols-regex "xXx" \
+ 	-version-info $(MAGICK_PLUS_PLUS_LIBRARY_CURRENT):$(MAGICK_PLUS_PLUS_LIBRARY_REVISION):$(MAGICK_PLUS_PLUS_LIBRARY_AGE)
+ 
+ Magick___lib_libGraphicsMagick___la_LIBADD = $(LIBMAGICK)
+@@ -3967,7 +3967,7 @@
+ 
+ LIBWAND = wand/libGraphicsMagickWand.la
+ wand_libGraphicsMagickWand_la_SOURCES = $(WAND_SOURCES)
+-wand_libGraphicsMagickWand_la_LDFLAGS = -no-undefined -export-symbols-regex ".*" \
++wand_libGraphicsMagickWand_la_LDFLAGS = -no-undefined -export-symbols-regex "xXx" \
+ 	$(MAGICK_LT_RELEASE_OPTS) \
+ 	-version-info $(MAGICK_WAND_LIBRARY_CURRENT):$(MAGICK_WAND_LIBRARY_REVISION):$(MAGICK_WAND_LIBRARY_AGE)
+ 
+@@ -9764,3 +9764,5 @@
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
++
++$(wand_libGraphicsMagickWand_la_OBJECTS): CPPFLAGS := $(CPPFLAGS) -D_WANDLIB_
+diff -ur GraphicsMagick-1.3.17-orig/coders/msl.c GraphicsMagick-1.3.17/coders/msl.c
+--- GraphicsMagick-1.3.17-orig/coders/msl.c	2012-10-13 17:30:21 -0400
++++ GraphicsMagick-1.3.17/coders/msl.c	2013-06-27 15:34:28 -0400
+@@ -63,8 +63,6 @@
+ #if defined(MSWINDOWS)
+ #  if defined(__MINGW32__)
+ #    define _MSC_VER
+-#  else
+-#    include <win32config.h>
+ #  endif
+ #endif
+ #include <libxml/parser.h>
+diff -ur GraphicsMagick-1.3.17-orig/coders/svg.c GraphicsMagick-1.3.17/coders/svg.c
+--- GraphicsMagick-1.3.17-orig/coders/svg.c	2012-10-13 17:30:21 -0400
++++ GraphicsMagick-1.3.17/coders/svg.c	2013-06-27 15:34:47 -0400
+@@ -50,8 +50,6 @@
+ #  if defined(MSWINDOWS)
+ #    if defined(__MINGW32__)
+ #      define _MSC_VER
+-#    else
+-#      include <win32config.h>
+ #    endif
+ #  endif
+ #  include <libxml/parser.h>
+diff -ur GraphicsMagick-1.3.17-orig/coders/url.c GraphicsMagick-1.3.17/coders/url.c
+--- GraphicsMagick-1.3.17-orig/coders/url.c	2011-12-24 14:34:17 -0500
++++ GraphicsMagick-1.3.17/coders/url.c	2013-06-27 15:35:06 -0400
+@@ -46,8 +46,6 @@
+ #if defined(MSWINDOWS)
+ #  if defined(__MINGW32__)
+ #    define _MSC_VER
+-#  else
+-#    include <win32config.h>
+ #  endif
+ #endif
+ #include <libxml/parser.h>
+diff -ur GraphicsMagick-1.3.17-orig/magick/common.h GraphicsMagick-1.3.17/magick/common.h
+--- GraphicsMagick-1.3.17-orig/magick/common.h	2012-10-13 17:30:22 -0400
++++ GraphicsMagick-1.3.17/magick/common.h	2013-06-27 14:39:08 -0400
+@@ -10,6 +10,10 @@
+ #ifndef _MAGICK_COMMON_H
+ #define _MAGICK_COMMON_H
+ 
++#ifdef _MSC_VER
++#  define _VISUALC_
++#endif
++
+ #if defined(__cplusplus) || defined(c_plusplus)
+ extern "C" {
+ #endif
+diff -ur GraphicsMagick-1.3.17-orig/magick/nt_base.c GraphicsMagick-1.3.17/magick/nt_base.c
+--- GraphicsMagick-1.3.17-orig/magick/nt_base.c	2011-12-24 14:34:17 -0500
++++ GraphicsMagick-1.3.17/magick/nt_base.c	2013-06-27 15:30:20 -0400
+@@ -67,6 +67,7 @@
+   DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved);
+ #endif
+ 
++#ifndef HAVE_DIRENT_H
+ /*
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %                                                                             %
+@@ -98,6 +99,7 @@
+   MagickFreeMemory(entry);
+   return 0;
+ }
++#endif
+ 
+ /*
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+@@ -2091,6 +2093,7 @@
+   return(0);
+ }
+ 
++#ifndef HAVE_DIRENT_H
+ /*
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %                                                                             %
+@@ -2261,3 +2264,4 @@
+   return(0);
+ }
+ #endif
++#endif
+diff -ur GraphicsMagick-1.3.17-orig/magick/static.c GraphicsMagick-1.3.17/magick/static.c
+--- GraphicsMagick-1.3.17-orig/magick/static.c	2012-10-13 17:30:22 -0400
++++ GraphicsMagick-1.3.17/magick/static.c	2013-06-27 15:44:14 -0400
+@@ -255,9 +255,6 @@
+   RegisterXCImage();
+   RegisterXCFImage();
+   RegisterXPMImage();
+-#if defined(_VISUALC_)
+-  RegisterXTRNImage();
+-#endif /* defined(_VISUALC_) */
+ #if defined(HasX11)
+   RegisterXWDImage();
+ #endif /* defined(HasX11) */
+@@ -410,9 +407,6 @@
+   UnregisterXCImage();
+   UnregisterXCFImage();
+   UnregisterXPMImage();
+-#if defined(_VISUALC_)
+-  UnregisterXTRNImage();
+-#endif /* defined(_VISUALC_) */
+ #if defined(HasX11)
+   UnregisterXWDImage();
+ #endif /* defined(HasX11) */
+diff -ur GraphicsMagick-1.3.17-orig/magick/studio.h GraphicsMagick-1.3.17/magick/studio.h
+--- GraphicsMagick-1.3.17-orig/magick/studio.h	2012-10-13 17:30:22 -0400
++++ GraphicsMagick-1.3.17/magick/studio.h	2013-06-27 15:13:15 -0400
+@@ -164,6 +164,10 @@
+ #  include <pwd.h>
+ #endif
+ 
++#if defined(_MSC_VER) && defined(HAVE_DIRENT_H)
++#  include <dirent.h>
++#endif
++
+ #if !defined(S_ISDIR)
+ #  define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR)
+ #endif