summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubos Lunak <l.lunak@suse.cz>2012-03-19 09:45:15 +0200
committerTor Lillqvist <tlillqvist@suse.com>2012-03-19 09:51:07 +0200
commit6ea1578264b4aaf6384c654098915f6e952dd1b0 (patch)
tree8ba536cd443bd679f3c7e98cc81bdf85870b4ab7
parentf257c29b6cfba0110bafe33bc02003cc757b5999 (diff)
Define CMS_DLL in the header as that is how we build it
Otherwise code using the lcms2 we build won't get the stdcall decorations and linking will fail.
-rw-r--r--lcms2/lcms2-windows-export.patch18
-rw-r--r--lcms2/makefile.mk2
2 files changed, 19 insertions, 1 deletions
diff --git a/lcms2/lcms2-windows-export.patch b/lcms2/lcms2-windows-export.patch
new file mode 100644
index 000000000000..9d6d26a1b648
--- /dev/null
+++ b/lcms2/lcms2-windows-export.patch
@@ -0,0 +1,18 @@
+--- misc/build/lcms2-2.3/include/lcms2.h.sav 2011-12-15 16:45:47.000000000 +0100
++++ misc/build/lcms2-2.3/include/lcms2.h 2012-03-17 22:53:28.731585981 +0100
+@@ -192,6 +192,15 @@ typedef int cmsBool;
+ # endif
+ #endif
+
++// LibreOffice always builds this as DLL and with the stdcall calling
++// convention, so make this usable from outside without having to
++// specify CMS_DLL manually whenever the library is used.
++#ifndef CMS_DLL_BUILD
++#ifndef CMS_DLL
++#define CMS_DLL
++#endif
++#endif
++
+ // Calling convention -- this is hardly platform and compiler dependent
+ #ifdef CMS_IS_WINDOWS_
+ # if defined(CMS_DLL) || defined(CMS_DLL_BUILD)
diff --git a/lcms2/makefile.mk b/lcms2/makefile.mk
index 0c7f5d5904e7..2be34b526793 100644
--- a/lcms2/makefile.mk
+++ b/lcms2/makefile.mk
@@ -39,7 +39,7 @@ TARGET=so_lcms2
TARFILE_NAME=lcms2-2.3
TARFILE_MD5=327348d67c979c88c2dec59a23a17d85
-PATCH_FILES = lcms2.patch
+PATCH_FILES = lcms2.patch lcms2-windows-export.patch
.IF "$(SYSTEM_LCMS2)" == "YES"
@all: