WebKit Bugzilla
Attachment 370152 Details for
Bug 197934
: [CMake] Use builtin FindICU
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-197934.diff (text/plain), 24.96 KB, created by
Don Olmstead
on 2019-05-17 14:30:05 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Don Olmstead
Created:
2019-05-17 14:30:05 PDT
Size:
24.96 KB
patch
obsolete
>diff --git a/CMakeLists.txt b/CMakeLists.txt >index d3e8a23f9ff..e79f41259e4 100644 >--- a/CMakeLists.txt >+++ b/CMakeLists.txt >@@ -2,13 +2,13 @@ > # Determine CMake version and build type. > # ----------------------------------------------------------------------------- > # >-# NOTE: cmake_minimum_required() and project() *MUST* be the two fist commands >+# NOTE: cmake_minimum_required() and project() *MUST* be the two first commands > # used, see https://cmake.org/cmake/help/v3.3/command/project.html -- the > # latter in particular handles loading a bunch of shared CMake definitions > # and loading the cross-compilation settings from CMAKE_TOOLCHAIN_FILE. > # > >-cmake_minimum_required(VERSION 3.3) >+cmake_minimum_required(VERSION 3.7) > > project(WebKit) > >diff --git a/ChangeLog b/ChangeLog >index 0d5cfe4a42b..b947e3d72a1 100644 >--- a/ChangeLog >+++ b/ChangeLog >@@ -1,3 +1,27 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Update CMake minimum required to 3.7. 3.7 has a FindICU module so the WebKit one >+ is removed. For non-Apple ports this just requires adding individual components of >+ ICU to find_package(ICU). For Apple ports the module does not work so the targets >+ created in FindICU are mirrored in target/icu.cmake. >+ >+ * CMakeLists.txt: >+ * Source/cmake/FindICU.cmake: Removed. >+ * Source/cmake/OptionsAppleWin.cmake: >+ * Source/cmake/OptionsGTK.cmake: >+ * Source/cmake/OptionsJSCOnly.cmake: >+ * Source/cmake/OptionsMac.cmake: >+ * Source/cmake/OptionsPlayStation.cmake: >+ * Source/cmake/OptionsWPE.cmake: >+ * Source/cmake/OptionsWin.cmake: >+ * Source/cmake/OptionsWinCairo.cmake: >+ * Source/cmake/target/icu.cmake: Added. >+ > 2019-05-09 Xan López <xan@igalia.com> > > [CMake] Detect SSE2 at compile time >diff --git a/Source/JavaScriptCore/CMakeLists.txt b/Source/JavaScriptCore/CMakeLists.txt >index 5d6d1701b34..e716c71682d 100644 >--- a/Source/JavaScriptCore/CMakeLists.txt >+++ b/Source/JavaScriptCore/CMakeLists.txt >@@ -54,10 +54,6 @@ if (USE_CAPSTONE) > list(APPEND JavaScriptCore_PRIVATE_INCLUDE_DIRECTORIES "${THIRDPARTY_DIR}/capstone/Source/include") > endif () > >-set(JavaScriptCore_SYSTEM_INCLUDE_DIRECTORIES >- "${ICU_INCLUDE_DIRS}" >-) >- > set(JavaScriptCore_OBJECT_LUT_SOURCES > runtime/ArrayConstructor.cpp > runtime/AsyncFromSyncIteratorPrototype.cpp >@@ -121,7 +117,6 @@ set(JavaScriptCore_OBJECT_LUT_SOURCES > > set(JavaScriptCore_LIBRARIES > WTF${DEBUG_SUFFIX} >- ${ICU_I18N_LIBRARIES} > ) > > if (USE_CAPSTONE) >diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog >index 5b4da472e0c..5fea205f7c5 100644 >--- a/Source/JavaScriptCore/ChangeLog >+++ b/Source/JavaScriptCore/ChangeLog >@@ -1,3 +1,15 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. >+ >+ * CMakeLists.txt: >+ * PlatformWin.cmake: >+ > 2019-05-15 Saam Barati <sbarati@apple.com> > > Bound liveness of SetArgumentMaybe nodes when maximal flush insertion phase is enabled >diff --git a/Source/JavaScriptCore/PlatformWin.cmake b/Source/JavaScriptCore/PlatformWin.cmake >index 425b97ecd34..c7d0ef5fbb4 100644 >--- a/Source/JavaScriptCore/PlatformWin.cmake >+++ b/Source/JavaScriptCore/PlatformWin.cmake >@@ -27,7 +27,6 @@ endif () > > if (NOT WTF_PLATFORM_WIN_CAIRO) > list(APPEND JavaScriptCore_LIBRARIES >- ${ICU_LIBRARIES} > winmm > ) > endif () >diff --git a/Source/WTF/ChangeLog b/Source/WTF/ChangeLog >index 9b33d2f5d9f..b57875e7965 100644 >--- a/Source/WTF/ChangeLog >+++ b/Source/WTF/ChangeLog >@@ -1,3 +1,16 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. Use ICU:: targets which end >+ up propagating to all consumers of WTF. >+ >+ * wtf/CMakeLists.txt: >+ * wtf/PlatformPlayStation.cmake: >+ > 2019-05-15 Simon Fraser <simon.fraser@apple.com> > > Make LOG_WITH_STREAM more efficient >diff --git a/Source/WTF/wtf/CMakeLists.txt b/Source/WTF/wtf/CMakeLists.txt >index 6d6408019cf..07f501ac65b 100644 >--- a/Source/WTF/wtf/CMakeLists.txt >+++ b/Source/WTF/wtf/CMakeLists.txt >@@ -491,13 +491,11 @@ list(APPEND WTF_SOURCES > > unicode/icu/CollatorICU.cpp > ) >-set(WTF_SYSTEM_INCLUDE_DIRECTORIES >- ${ICU_INCLUDE_DIRS} >-) >+ > list(APPEND WTF_LIBRARIES >- ${ICU_DATA_LIBRARIES} >- ${ICU_I18N_LIBRARIES} >- ${ICU_LIBRARIES} >+ ICU::data >+ ICU::i18n >+ ICU::uc > ) > > WEBKIT_FRAMEWORK_DECLARE(WTF) >diff --git a/Source/WTF/wtf/PlatformPlayStation.cmake b/Source/WTF/wtf/PlatformPlayStation.cmake >index 1a524b1d4d0..932b2a3da72 100644 >--- a/Source/WTF/wtf/PlatformPlayStation.cmake >+++ b/Source/WTF/wtf/PlatformPlayStation.cmake >@@ -17,7 +17,6 @@ list(APPEND WTF_SOURCES > > list(APPEND WTF_LIBRARIES > ${CMAKE_THREAD_LIBS_INIT} >- ${ICU_LIBRARIES} > > ${C_STD_LIBRARY} > ${KERNEL_LIBRARY} >diff --git a/Source/WebCore/CMakeLists.txt b/Source/WebCore/CMakeLists.txt >index fd99e7dbd08..4416f25ed27 100644 >--- a/Source/WebCore/CMakeLists.txt >+++ b/Source/WebCore/CMakeLists.txt >@@ -166,7 +166,6 @@ set(WebCore_PRIVATE_INCLUDE_DIRECTORIES > ) > > set(WebCore_SYSTEM_INCLUDE_DIRECTORIES >- ${ICU_INCLUDE_DIRS} > ${LIBXML2_INCLUDE_DIR} > ${LIBXSLT_INCLUDE_DIR} > ${SQLITE_INCLUDE_DIR} >@@ -1196,7 +1195,6 @@ set(WebCore_PLUG_INS_RESOURCES > ) > > set(WebCore_LIBRARIES >- ${ICU_LIBRARIES} > ${LIBXML2_LIBRARIES} > ${LIBXSLT_LIBRARIES} > ${SQLITE_LIBRARIES} >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index bda82a393f0..ba20ab5f41e 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,16 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. >+ >+ * CMakeLists.txt: >+ * PlatformPlayStation.cmake: >+ * PlatformWPE.cmake: >+ > 2019-05-15 Devin Rousso <drousso@apple.com> > > Web Inspector: user gesture toggle should also force user interaction flag >diff --git a/Source/WebCore/PAL/ChangeLog b/Source/WebCore/PAL/ChangeLog >index 94807affd5f..f03dbb317d3 100644 >--- a/Source/WebCore/PAL/ChangeLog >+++ b/Source/WebCore/PAL/ChangeLog >@@ -1,3 +1,14 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. >+ >+ * pal/CMakeLists.txt: >+ > 2019-05-15 Simon Fraser <simon.fraser@apple.com> > > Make LOG_WITH_STREAM more efficient >diff --git a/Source/WebCore/PAL/pal/CMakeLists.txt b/Source/WebCore/PAL/pal/CMakeLists.txt >index c50c485b3a7..fc0091e32fa 100644 >--- a/Source/WebCore/PAL/pal/CMakeLists.txt >+++ b/Source/WebCore/PAL/pal/CMakeLists.txt >@@ -37,10 +37,6 @@ set(PAL_PRIVATE_INCLUDE_DIRECTORIES > "${PAL_DIR}/pal/text" > ) > >-set(PAL_SYSTEM_INCLUDE_DIRECTORIES >- ${ICU_INCLUDE_DIRS} >-) >- > set(PAL_LIBRARIES > JavaScriptCore${DEBUG_SUFFIX} > ) >diff --git a/Source/WebCore/PlatformPlayStation.cmake b/Source/WebCore/PlatformPlayStation.cmake >index d1ea46ce800..7193bc5ae10 100644 >--- a/Source/WebCore/PlatformPlayStation.cmake >+++ b/Source/WebCore/PlatformPlayStation.cmake >@@ -81,7 +81,6 @@ set(WebCore_USER_AGENT_SCRIPTS > ) > > list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES >- ${ICU_INCLUDE_DIRS} > ${LIBXML2_INCLUDE_DIR} > ${SQLITE_INCLUDE_DIR} > ${ZLIB_INCLUDE_DIRS} >@@ -89,7 +88,6 @@ list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES > ) > > list(APPEND WebCore_LIBRARIES >- ${ICU_LIBRARIES} > ${LIBXML2_LIBRARIES} > ${SQLITE_LIBRARIES} > ${ZLIB_LIBRARIES} >diff --git a/Source/WebCore/PlatformWPE.cmake b/Source/WebCore/PlatformWPE.cmake >index 1cad0e617fb..4100c815259 100644 >--- a/Source/WebCore/PlatformWPE.cmake >+++ b/Source/WebCore/PlatformWPE.cmake >@@ -52,7 +52,6 @@ list(APPEND WebCore_LIBRARIES > ${GLIB_GMODULE_LIBRARIES} > ${GLIB_GOBJECT_LIBRARIES} > ${GLIB_LIBRARIES} >- ${ICU_LIBRARIES} > ${LIBTASN1_LIBRARIES} > ${UPOWERGLIB_LIBRARIES} > ${WPE_LIBRARIES} >@@ -61,7 +60,6 @@ list(APPEND WebCore_LIBRARIES > list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES > ${GIO_UNIX_INCLUDE_DIRS} > ${GLIB_INCLUDE_DIRS} >- ${ICU_INCLUDE_DIRS} > ${LIBTASN1_INCLUDE_DIRS} > ${UPOWERGLIB_INCLUDE_DIRS} > ${WPE_INCLUDE_DIRS} >diff --git a/Source/WebDriver/ChangeLog b/Source/WebDriver/ChangeLog >index e38b7bc5e2d..ab43cbd0721 100644 >--- a/Source/WebDriver/ChangeLog >+++ b/Source/WebDriver/ChangeLog >@@ -1,3 +1,14 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. >+ >+ * PlatformWPE.cmake: >+ > 2019-04-14 Don Olmstead <don.olmstead@sony.com> > > [CMake] JavaScriptCore derived sources should only be referenced inside JavaScriptCore >diff --git a/Source/WebDriver/PlatformWPE.cmake b/Source/WebDriver/PlatformWPE.cmake >index ba2179898a5..bd3cd811bd4 100644 >--- a/Source/WebDriver/PlatformWPE.cmake >+++ b/Source/WebDriver/PlatformWPE.cmake >@@ -2,7 +2,6 @@ set(WebDriver_Process_OUTPUT_NAME WPEWebDriver) > > list(APPEND WebDriver_SYSTEM_INCLUDE_DIRECTORIES > "${GLIB_INCLUDE_DIRS}" >- "${ICU_INCLUDE_DIRS}" > "${LIBSOUP_INCLUDE_DIRS}" > ) > >diff --git a/Source/WebKit/CMakeLists.txt b/Source/WebKit/CMakeLists.txt >index 4b0bec7cb80..310f1698cf1 100644 >--- a/Source/WebKit/CMakeLists.txt >+++ b/Source/WebKit/CMakeLists.txt >@@ -98,10 +98,6 @@ set(WebKit_INCLUDE_DIRECTORIES > > set(PROTOCOL_GENERATOR_SCRIPTS_DIR "${JAVASCRIPTCORE_DIR}/inspector/scripts") > >-set(WebKit_SYSTEM_INCLUDE_DIRECTORIES >- ${ICU_INCLUDE_DIRS} >-) >- > list(APPEND WebKit_UNIFIED_SOURCE_LIST_FILES > "Sources.txt" > ) >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index f9ab477b64c..87a0696de29 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,14 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. >+ >+ * CMakeLists.txt: >+ > 2019-05-15 Devin Rousso <drousso@apple.com> > > Web Inspector: user gesture toggle should also force user interaction flag >diff --git a/Source/WebKitLegacy/CMakeLists.txt b/Source/WebKitLegacy/CMakeLists.txt >index b0c77ddebff..960a970ebb0 100644 >--- a/Source/WebKitLegacy/CMakeLists.txt >+++ b/Source/WebKitLegacy/CMakeLists.txt >@@ -25,10 +25,6 @@ set(WebKitLegacy_PRIVATE_INCLUDE_DIRECTORIES > "${WebKitLegacy_DERIVED_SOURCES_DIR}" > ) > >-set(WebKitLegacy_SYSTEM_INCLUDE_DIRECTORIES >- "${ICU_INCLUDE_DIRS}" >-) >- > set(WebKitLegacy_LIBRARIES > PRIVATE JavaScriptCore${DEBUG_SUFFIX} > PRIVATE WebCore${DEBUG_SUFFIX} >diff --git a/Source/WebKitLegacy/ChangeLog b/Source/WebKitLegacy/ChangeLog >index 69790e8e45f..d32f3d59eb3 100644 >--- a/Source/WebKitLegacy/ChangeLog >+++ b/Source/WebKitLegacy/ChangeLog >@@ -1,3 +1,15 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. >+ >+ * CMakeLists.txt: >+ * PlatformWin.cmake: >+ > 2019-05-03 Commit Queue <commit-queue@webkit.org> > > Unreviewed, rolling out r244881. >diff --git a/Source/WebKitLegacy/PlatformWin.cmake b/Source/WebKitLegacy/PlatformWin.cmake >index 7408928bf18..b405d6d80c5 100644 >--- a/Source/WebKitLegacy/PlatformWin.cmake >+++ b/Source/WebKitLegacy/PlatformWin.cmake >@@ -24,8 +24,6 @@ else () > PRIVATE CoreText${DEBUG_SUFFIX} > PRIVATE QuartzCore${DEBUG_SUFFIX} > PRIVATE libdispatch${DEBUG_SUFFIX} >- PRIVATE libicuin${DEBUG_SUFFIX} >- PRIVATE libicuuc${DEBUG_SUFFIX} > PRIVATE ${LIBXML2_LIBRARIES} > PRIVATE ${LIBXSLT_LIBRARIES} > PRIVATE ${SQLITE_LIBRARIES} >diff --git a/Source/cmake/FindICU.cmake b/Source/cmake/FindICU.cmake >deleted file mode 100644 >index f9d79c19143..00000000000 >--- a/Source/cmake/FindICU.cmake >+++ /dev/null >@@ -1,110 +0,0 @@ >-# Finds the International Components for Unicode (ICU) Library >-# >-# ICU_FOUND - True if ICU found. >-# ICU_I18N_FOUND - True if ICU's internationalization library found. >-# ICU_INCLUDE_DIRS - Directory to include to get ICU headers >-# Note: always include ICU headers as, e.g., >-# unicode/utypes.h >-# ICU_LIBRARIES - Libraries to link against for the common ICU >-# ICU_I18N_LIBRARIES - Libraries to link against for ICU internationaliation >-# (note: in addition to ICU_LIBRARIES) >- >-find_package(PkgConfig) >-pkg_check_modules(PC_ICU icu-uc) >- >-# Look for the header file. >-find_path( >- ICU_INCLUDE_DIR >- NAMES unicode/utypes.h >- HINTS ${PC_ICU_INCLUDE_DIRS} >- ${PC_ICU_INCLUDEDIR} >- ${WEBKIT_LIBRARIES_INCLUDE_DIR} >- DOC "Include directory for the ICU library") >-mark_as_advanced(ICU_INCLUDE_DIR) >- >-# Look for the library. >-find_library( >- ICU_LIBRARY >- NAMES libicuuc cygicuuc cygicuuc32 icuuc >- HINTS ${PC_ICU_LIBRARY_DIRS} >- ${PC_ICU_LIBDIR} >- ${WEBKIT_LIBRARIES_LINK_DIR} >- DOC "Libraries to link against for the common parts of ICU") >-mark_as_advanced(ICU_LIBRARY) >- >-# Copy the results to the output variables. >-if (ICU_INCLUDE_DIR AND ICU_LIBRARY) >- set(ICU_FOUND 1) >- set(ICU_LIBRARIES ${ICU_LIBRARY}) >- set(ICU_INCLUDE_DIRS ${ICU_INCLUDE_DIR}) >- >- set(ICU_VERSION 0) >- set(ICU_MAJOR_VERSION 0) >- set(ICU_MINOR_VERSION 0) >- file(READ "${ICU_INCLUDE_DIR}/unicode/uversion.h" _ICU_VERSION_CONENTS) >- string(REGEX REPLACE ".*#define U_ICU_VERSION_MAJOR_NUM ([0-9]+).*" "\\1" ICU_MAJOR_VERSION "${_ICU_VERSION_CONENTS}") >- string(REGEX REPLACE ".*#define U_ICU_VERSION_MINOR_NUM ([0-9]+).*" "\\1" ICU_MINOR_VERSION "${_ICU_VERSION_CONENTS}") >- >- set(ICU_VERSION "${ICU_MAJOR_VERSION}.${ICU_MINOR_VERSION}") >- >- # Look for the ICU internationalization libraries >- pkg_check_modules(PC_ICU_I18N icu-i18n) >- find_library( >- ICU_I18N_LIBRARY >- NAMES icui18n libicui18n libicuin cygicuin cygicuin32 icuin >- HINTS ${PC_ICU_I18N_LIBRARY_DIRS} >- ${PC_ICU_I18N_LIBDIR} >- ${WEBKIT_LIBRARIES_LINK_DIR} >- DOC "Libraries to link against for ICU internationalization") >- mark_as_advanced(ICU_I18N_LIBRARY) >- if (ICU_I18N_LIBRARY) >- set(ICU_I18N_FOUND 1) >- set(ICU_I18N_LIBRARIES ${ICU_I18N_LIBRARY}) >- else () >- set(ICU_I18N_FOUND 0) >- set(ICU_I18N_LIBRARIES) >- endif () >- >- # Look for the ICU data libraries >- find_library( >- ICU_DATA_LIBRARY >- NAMES icudata libicudata cygicudata cygicudata32 >- HINTS ${PC_ICU_I18N_LIBRARY_DIRS} >- ${PC_ICU_I18N_LIBDIR} >- ${WEBKIT_LIBRARIES_LINK_DIR} >- DOC "Libraries to link against for ICU data") >- mark_as_advanced(ICU_DATA_LIBRARY) >- if (ICU_DATA_LIBRARY) >- set(ICU_DATA_FOUND 1) >- set(ICU_DATA_LIBRARIES ${ICU_DATA_LIBRARY}) >- else () >- set(ICU_DATA_FOUND 0) >- set(ICU_DATA_LIBRARIES) >- endif () >-else () >- set(ICU_FOUND 0) >- set(ICU_I18N_FOUND 0) >- set(ICU_DATA_FOUND 0) >- set(ICU_LIBRARIES) >- set(ICU_I18N_LIBRARIES) >- set(ICU_DATA_LIBRARIES) >- set(ICU_INCLUDE_DIRS) >- set(ICU_VERSION) >- set(ICU_MAJOR_VERSION) >- set(ICU_MINOR_VERSION) >-endif () >- >-if (ICU_FOUND) >- if (NOT ICU_FIND_QUIETLY) >- message(STATUS "Found ICU header files in ${ICU_INCLUDE_DIRS}") >- message(STATUS "Found ICU libraries: ${ICU_LIBRARIES}") >- message(STATUS "Found ICU internationaliation libraries: ${ICU_I18N_LIBRARIES}") >- message(STATUS "Found ICU data libraries: ${ICU_DATA_LIBRARIES}") >- endif () >-else () >- if (ICU_FIND_REQUIRED) >- message(FATAL_ERROR "Could not find ICU") >- else () >- message(STATUS "Optional package ICU was not found") >- endif () >-endif () >diff --git a/Source/cmake/OptionsAppleWin.cmake b/Source/cmake/OptionsAppleWin.cmake >index 83810e4713d..df132f9f320 100644 >--- a/Source/cmake/OptionsAppleWin.cmake >+++ b/Source/cmake/OptionsAppleWin.cmake >@@ -17,6 +17,8 @@ set(SQLITE_LIBRARIES SQLite3${DEBUG_SUFFIX}) > set(ZLIB_INCLUDE_DIRS "${WEBKIT_LIBRARIES_DIR}/include/zlib") > set(ZLIB_LIBRARIES zdll${DEBUG_SUFFIX}) > >+include(target/icu) >+ > # Uncomment the following line to try the Direct2D backend. > # set(USE_DIRECT2D 1) > >diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake >index d290beffdd9..b21a58f52bc 100644 >--- a/Source/cmake/OptionsGTK.cmake >+++ b/Source/cmake/OptionsGTK.cmake >@@ -24,7 +24,7 @@ find_package(LibGcrypt 1.6.0 REQUIRED) > find_package(GTK3 3.6.0 REQUIRED) > find_package(GDK3 3.6.0 REQUIRED) > find_package(HarfBuzz 0.9.2 REQUIRED) >-find_package(ICU REQUIRED) >+find_package(ICU REQUIRED COMPONENTS data i18n uc) > find_package(JPEG REQUIRED) > find_package(LibSoup 2.42.0 REQUIRED) > find_package(LibXml2 2.8.0 REQUIRED) >diff --git a/Source/cmake/OptionsJSCOnly.cmake b/Source/cmake/OptionsJSCOnly.cmake >index 2affab7250d..16b3b257887 100644 >--- a/Source/cmake/OptionsJSCOnly.cmake >+++ b/Source/cmake/OptionsJSCOnly.cmake >@@ -96,9 +96,8 @@ else () > endif () > > if (NOT APPLE) >- find_package(ICU REQUIRED) >+ find_package(ICU REQUIRED COMPONENTS data i18n uc) > else () > add_definitions(-DU_DISABLE_RENAMING=1 -DU_SHOW_CPLUSPLUS_API=0) >- set(ICU_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/ICU/Headers) >- set(ICU_LIBRARIES libicucore.dylib) >+ include(target/icu.cmake) > endif () >diff --git a/Source/cmake/OptionsMac.cmake b/Source/cmake/OptionsMac.cmake >index fc944e1113f..60f19f9384c 100644 >--- a/Source/cmake/OptionsMac.cmake >+++ b/Source/cmake/OptionsMac.cmake >@@ -60,5 +60,4 @@ set(WebCore_LIBRARY_TYPE SHARED) > set(WebCoreTestSupport_LIBRARY_TYPE SHARED) > > add_definitions(-DU_DISABLE_RENAMING=1 -DU_SHOW_CPLUSPLUS_API=0) >-set(ICU_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/ICU/Headers) >-set(ICU_LIBRARIES libicucore.dylib) >+include(target/icu.cmake) >diff --git a/Source/cmake/OptionsPlayStation.cmake b/Source/cmake/OptionsPlayStation.cmake >index a4e879339ac..3369af0fbb0 100644 >--- a/Source/cmake/OptionsPlayStation.cmake >+++ b/Source/cmake/OptionsPlayStation.cmake >@@ -80,7 +80,7 @@ find_package(EGL REQUIRED) > find_package(Fontconfig REQUIRED) > find_package(Freetype REQUIRED) > find_package(HarfBuzz REQUIRED) >-find_package(ICU REQUIRED) >+find_package(ICU REQUIRED COMPONENTS data i18n uc) > find_package(JPEG REQUIRED) > find_package(LibPSL REQUIRED) > find_package(LibXml2 REQUIRED) >diff --git a/Source/cmake/OptionsWPE.cmake b/Source/cmake/OptionsWPE.cmake >index 5f7f2f62dce..c71456ae7bf 100644 >--- a/Source/cmake/OptionsWPE.cmake >+++ b/Source/cmake/OptionsWPE.cmake >@@ -17,7 +17,7 @@ find_package(Fontconfig 2.8.0 REQUIRED) > find_package(Freetype 2.4.2 REQUIRED) > find_package(GLIB 2.40.0 REQUIRED COMPONENTS gio gio-unix gobject gthread gmodule) > find_package(HarfBuzz 0.9.18 REQUIRED) >-find_package(ICU REQUIRED) >+find_package(ICU REQUIRED COMPONENTS data i18n uc) > find_package(JPEG REQUIRED) > find_package(LibEpoxy 1.4.0 REQUIRED) > find_package(LibGcrypt 1.6.0 REQUIRED) >diff --git a/Source/cmake/OptionsWin.cmake b/Source/cmake/OptionsWin.cmake >index b6c13862321..3e8f76977a5 100644 >--- a/Source/cmake/OptionsWin.cmake >+++ b/Source/cmake/OptionsWin.cmake >@@ -164,8 +164,6 @@ if (NOT ENABLE_UNIFIED_BUILDS AND WebCore_LIBRARY_TYPE MATCHES STATIC) > set(WebCore_LIBRARY_TYPE OBJECT) > endif () > >-find_package(ICU REQUIRED) >- > # If <winsock2.h> is not included before <windows.h> redefinition errors occur > # unless _WINSOCKAPI_ is defined before <windows.h> is included > add_definitions(-D_WINSOCKAPI_=) >diff --git a/Source/cmake/OptionsWinCairo.cmake b/Source/cmake/OptionsWinCairo.cmake >index a716ec6f0ea..0fbad9545c0 100644 >--- a/Source/cmake/OptionsWinCairo.cmake >+++ b/Source/cmake/OptionsWinCairo.cmake >@@ -4,6 +4,7 @@ include(OptionsWin) > > find_package(Cairo 1.15.12 REQUIRED) > find_package(CURL 7.60.0 REQUIRED) >+find_package(ICU REQUIRED COMPONENTS data i18n uc) > find_package(JPEG 1.5.2 REQUIRED) > find_package(LibXml2 2.9.7 REQUIRED) > find_package(OpenSSL 2.0.0 REQUIRED) >diff --git a/Source/cmake/target/icu.cmake b/Source/cmake/target/icu.cmake >new file mode 100644 >index 00000000000..092eba55ee2 >--- /dev/null >+++ b/Source/cmake/target/icu.cmake >@@ -0,0 +1,48 @@ >+# Apple ports provide their own ICU that can't be found by find_package(ICU). >+# This file will create targets that would be created by find_package(ICU). >+if (NOT TARGET ICU::data) >+ if (APPLE) >+ set(ICU_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/ICU/Headers) >+ >+ # Apple just has a single dylib for ICU >+ set(ICU_I18N_LIBRARY libicucore.dylib) >+ set(ICU_UC_LIBRARY libicucore.dylib) >+ set(ICU_DATA_LIBRARY libicucore.dylib) >+ >+ set(ICU_LIBRARIES ${ICU_UC_LIBRARY}) >+ elseif (WIN32 AND NOT WTF_PLATFORM_WIN_CAIRO) >+ set(ICU_INCLUDE_DIRS ${WEBKIT_LIBRARIES_INCLUDE_DIR}) >+ >+ set(ICU_I18N_LIBRARY ${WEBKIT_LIBRARIES_LINK_DIR}/libicuin${DEBUG_SUFFIX}.lib) >+ set(ICU_UC_LIBRARY ${WEBKIT_LIBRARIES_LINK_DIR}/libicuuc${DEBUG_SUFFIX}.lib) >+ >+ # AppleWin does not provide a separate data library >+ set(ICU_DATA_LIBRARY ${ICU_UC_LIBRARY}) >+ >+ set(ICU_LIBRARIES ${ICU_I18N_LIBRARY} ${ICU_UC_LIBRARY}) >+ else () >+ message(FATAL_ERROR "Could not find ICU targets. Use find_package(ICU REQUIRED data i1n8 uc)") >+ endif () >+ >+ # Emulate ICU:: targets >+ add_library(ICU::data UNKNOWN IMPORTED) >+ set_target_properties(ICU::data PROPERTIES >+ INTERFACE_INCLUDE_DIRECTORIES "${ICU_INCLUDE_DIRS}" >+ IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" >+ IMPORTED_LOCATION "${ICU_DATA_LIBRARY}" >+ ) >+ >+ add_library(ICU::i18n UNKNOWN IMPORTED) >+ set_target_properties(ICU::i18n PROPERTIES >+ INTERFACE_INCLUDE_DIRECTORIES "${ICU_INCLUDE_DIRS}" >+ IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" >+ IMPORTED_LOCATION "${ICU_I18N_LIBRARY}" >+ ) >+ >+ add_library(ICU::uc UNKNOWN IMPORTED) >+ set_target_properties(ICU::uc PROPERTIES >+ INTERFACE_INCLUDE_DIRECTORIES "${ICU_INCLUDE_DIRS}" >+ IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" >+ IMPORTED_LOCATION "${ICU_UC_LIBRARY}" >+ ) >+endif () >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 912093f0ffe..3d1f23606e0 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,17 @@ >+2019-05-17 Don Olmstead <don.olmstead@sony.com> >+ >+ [CMake] Use builtin FindICU >+ https://bugs.webkit.org/show_bug.cgi?id=197934 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Remove uses of ICU_INCLUDE_DIRS and ICU_LIBRARIES. >+ >+ * TestWebKitAPI/PlatformMac.cmake: >+ * TestWebKitAPI/PlatformPlayStation.cmake: >+ * TestWebKitAPI/PlatformWin.cmake: >+ * WebKitTestRunner/CMakeLists.txt: >+ > 2019-05-15 Aakash Jain <aakash_jain@apple.com> > > Replace double-quotes with single quotes in steps.py >diff --git a/Tools/TestWebKitAPI/PlatformMac.cmake b/Tools/TestWebKitAPI/PlatformMac.cmake >index 4e295d64c7d..38925dc89b4 100644 >--- a/Tools/TestWebKitAPI/PlatformMac.cmake >+++ b/Tools/TestWebKitAPI/PlatformMac.cmake >@@ -17,7 +17,6 @@ list(APPEND test_wtf_LIBRARIES > ${CARBON_LIBRARY} > ${COCOA_LIBRARY} > ${COREFOUNDATION_LIBRARY} >- ${ICU_LIBRARIES} > ) > > list(APPEND TestWebKitAPI_LIBRARIES >diff --git a/Tools/TestWebKitAPI/PlatformPlayStation.cmake b/Tools/TestWebKitAPI/PlatformPlayStation.cmake >index abb8690f80a..952d043f062 100644 >--- a/Tools/TestWebKitAPI/PlatformPlayStation.cmake >+++ b/Tools/TestWebKitAPI/PlatformPlayStation.cmake >@@ -10,10 +10,6 @@ list(APPEND TestWTF_SOURCES > generic/UtilitiesGeneric.cpp > ) > >-list(APPEND TestWTF_PRIVATE_INCLUDE_DIRECTORIES >- ${ICU_INCLUDE_DIRS} >-) >- > list(APPEND TestWebCore_SOURCES > ${test_main_SOURCES} > ) >diff --git a/Tools/TestWebKitAPI/PlatformWin.cmake b/Tools/TestWebKitAPI/PlatformWin.cmake >index 651ea158487..4aa7cd95061 100644 >--- a/Tools/TestWebKitAPI/PlatformWin.cmake >+++ b/Tools/TestWebKitAPI/PlatformWin.cmake >@@ -78,8 +78,6 @@ else () > WebKitQuartzCoreAdditions${DEBUG_SUFFIX} > libdispatch${DEBUG_SUFFIX} > libexslt${DEBUG_SUFFIX} >- libicuin${DEBUG_SUFFIX} >- libicuuc${DEBUG_SUFFIX} > ) > endif () > >diff --git a/Tools/WebKitTestRunner/CMakeLists.txt b/Tools/WebKitTestRunner/CMakeLists.txt >index 34ff64aaf8e..632aa0b0675 100644 >--- a/Tools/WebKitTestRunner/CMakeLists.txt >+++ b/Tools/WebKitTestRunner/CMakeLists.txt >@@ -51,7 +51,6 @@ set(WebKitTestRunner_INCLUDE_DIRECTORIES > > set(WebKitTestRunner_SYSTEM_INCLUDE_DIRECTORIES > ${LIBSOUP_INCLUDE_DIRS} >- ${ICU_INCLUDE_DIRS} > ) > > set(WebKitTestRunnerInjectedBundle_SOURCES
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 197934
:
370016
| 370152