1 |
diff --git a/common/autoconf/libraries.m4 b/common/autoconf/libraries.m4 |
2 |
--- jdk8/common/autoconf/libraries.m4 |
3 |
+++ jdk8/common/autoconf/libraries.m4 |
4 |
@@ -607,6 +607,46 @@ |
5 |
|
6 |
############################################################################### |
7 |
# |
8 |
+# Check for the lcms2 library |
9 |
+# |
10 |
+ |
11 |
+AC_ARG_WITH(lcms, [AS_HELP_STRING([--with-lcms], |
12 |
+ [use lcms2 from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])]) |
13 |
+ |
14 |
+AC_CHECK_LIB(lcms2, cmsOpenProfileFromFile, |
15 |
+ [ LCMS_FOUND=yes ], |
16 |
+ [ LCMS_FOUND=no ]) |
17 |
+ |
18 |
+AC_MSG_CHECKING([for which lcms to use]) |
19 |
+ |
20 |
+DEFAULT_LCMS=bundled |
21 |
+ |
22 |
+# |
23 |
+# If user didn't specify, use DEFAULT_LCMS |
24 |
+# |
25 |
+if test "x${with_lcms}" = "x"; then |
26 |
+ with_lcms=${DEFAULT_LCMS} |
27 |
+fi |
28 |
+ |
29 |
+if test "x${with_lcms}" = "xbundled"; then |
30 |
+ USE_EXTERNAL_LCMS=false |
31 |
+ AC_MSG_RESULT([bundled]) |
32 |
+elif test "x${with_lcms}" = "xsystem"; then |
33 |
+ if test "x${LCMS_FOUND}" = "xyes"; then |
34 |
+ USE_EXTERNAL_LCMS=true |
35 |
+ AC_MSG_RESULT([system]) |
36 |
+ else |
37 |
+ AC_MSG_RESULT([system not found]) |
38 |
+ AC_MSG_ERROR([--with-lcms=system specified, but no lcms found!]) |
39 |
+ fi |
40 |
+else |
41 |
+ AC_MSG_ERROR([Invalid value for --with-lcms: ${with_lcms}, use 'system' or 'bundled']) |
42 |
+fi |
43 |
+ |
44 |
+AC_SUBST(USE_EXTERNAL_LCMS) |
45 |
+ |
46 |
+############################################################################### |
47 |
+# |
48 |
# Check for the zlib library |
49 |
# |
50 |
|
51 |
diff --git jdk8/jdk/makefiles/CompileNativeLibraries.gmk jdk8/jdk/makefiles/CompileNativeLibraries.gmk |
52 |
--- jdk8/jdk/makefiles/CompileNativeLibraries.gmk |
53 |
+++ jdk8/jdk/makefiles/CompileNativeLibraries.gmk |
54 |
@@ -1214,8 +1214,8 @@ |
55 |
########################################################################################## |
56 |
|
57 |
# TODO: Update awt lib path when awt is converted |
58 |
- $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS,\ |
59 |
- LIBRARY:=lcms,\ |
60 |
+ $(eval $(call SetupNativeCompilation,BUILD_LIBJAVALCMS,\ |
61 |
+ LIBRARY:=javalcms,\ |
62 |
OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
63 |
SRC:=$(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms,\ |
64 |
LANG:=C,\ |
65 |
@@ -1233,18 +1233,18 @@ |
66 |
LDFLAGS_windows:=$(WIN_AWT_LIB) $(WIN_JAVA_LIB),\ |
67 |
LDFLAGS_SUFFIX_solaris:=-lawt -ljava -ljvm -lc,\ |
68 |
LDFLAGS_SUFFIX_macosx:=$(LIBM) -lawt -ljava -ljvm,\ |
69 |
- LDFLAGS_SUFFIX_linux:=-lm -lawt -ljava -ljvm,\ |
70 |
+ LDFLAGS_SUFFIX_linux:=-lm -lawt -ljava -ljvm -llcms2,\ |
71 |
VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
72 |
RC_FLAGS:=$(RC_FLAGS)\ |
73 |
- -D "JDK_FNAME=lcms.dll" \ |
74 |
- -D "JDK_INTERNAL_NAME=lcms" \ |
75 |
+ -D "JDK_FNAME=javalcms.dll" \ |
76 |
+ -D "JDK_INTERNAL_NAME=libjavalcms" \ |
77 |
-D "JDK_FTYPE=0x2L",\ |
78 |
OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/liblcms,\ |
79 |
DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
80 |
|
81 |
- BUILD_LIBRARIES += $(BUILD_LIBLCMS) |
82 |
- |
83 |
- $(BUILD_LIBLCMS) : $(BUILD_LIBAWT) |
84 |
+ BUILD_LIBRARIES += $(BUILD_LIBJAVALCMS) |
85 |
+ |
86 |
+ $(BUILD_LIBJAVALCMS) : $(BUILD_LIBAWT) |
87 |
|
88 |
########################################################################################## |
89 |
|
90 |
diff --git jdk8/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java jdk8/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java |
91 |
--- jdk8/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java |
92 |
+++ jdk8/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java |
93 |
@@ -164,7 +164,7 @@ |
94 |
* disposer frameworks |
95 |
*/ |
96 |
System.loadLibrary("awt"); |
97 |
- System.loadLibrary("lcms"); |
98 |
+ System.loadLibrary("javalcms"); |
99 |
return null; |
100 |
} |
101 |
}); |