[CMake] Use CMake's FindFreetype
authordon.olmstead@sony.com <don.olmstead@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 29 Aug 2018 03:58:32 +0000 (03:58 +0000)
committerdon.olmstead@sony.com <don.olmstead@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 29 Aug 2018 03:58:32 +0000 (03:58 +0000)
https://bugs.webkit.org/show_bug.cgi?id=189071

Reviewed by Michael Catanzaro.

.:

Use the builtin CMake functionality for finding Freetype.

* Source/cmake/FindFreetype2.cmake: Removed.
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsWPE.cmake:

Source/WebCore:

No new tests. No change in behavior.

* platform/FreeType.cmake:

Source/WebKit:

* PlatformWPE.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@235454 268f45cc-cd09-0410-ab3c-d52691b4dbfc

ChangeLog
Source/WebCore/ChangeLog
Source/WebCore/platform/FreeType.cmake
Source/WebKit/ChangeLog
Source/WebKit/PlatformWPE.cmake
Source/cmake/FindFreetype2.cmake [deleted file]
Source/cmake/OptionsGTK.cmake
Source/cmake/OptionsWPE.cmake

index f9d6ae0..fefeda8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2018-08-28  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] Use CMake's FindFreetype
+        https://bugs.webkit.org/show_bug.cgi?id=189071
+
+        Reviewed by Michael Catanzaro.
+
+        Use the builtin CMake functionality for finding Freetype.
+
+        * Source/cmake/FindFreetype2.cmake: Removed.
+        * Source/cmake/OptionsGTK.cmake:
+        * Source/cmake/OptionsWPE.cmake:
+
 2018-08-27  Aditya Keerthi  <akeerthi@apple.com>
 
         Consolidate ENABLE_INPUT_TYPE_COLOR and ENABLE_INPUT_TYPE_COLOR_POPOVER
index 02ef10b..80b2c3a 100644 (file)
@@ -1,3 +1,14 @@
+2018-08-28  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] Use CMake's FindFreetype
+        https://bugs.webkit.org/show_bug.cgi?id=189071
+
+        Reviewed by Michael Catanzaro.
+
+        No new tests. No change in behavior.
+
+        * platform/FreeType.cmake:
+
 2018-08-28  Wenson Hsieh  <wenson_hsieh@apple.com>
 
         Work towards: [iOS] Consolidate the implementations of readString, stringForType, and readURL in PlatformPasteboardIOS.mm
index 6ed5cd1..fc726de 100644 (file)
@@ -33,12 +33,12 @@ endif ()
 
 list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
     ${FONTCONFIG_INCLUDE_DIRS}
-    ${FREETYPE2_INCLUDE_DIRS}
+    ${FREETYPE_INCLUDE_DIRS}
     ${HARFBUZZ_INCLUDE_DIRS}
 )
 
 list(APPEND WebCore_LIBRARIES
     ${FONTCONFIG_LIBRARIES}
-    ${FREETYPE2_LIBRARIES}
+    ${FREETYPE_LIBRARIES}
     ${HARFBUZZ_LIBRARIES}
 )
index dc7c6c7..bf2a8ba 100644 (file)
@@ -1,3 +1,12 @@
+2018-08-28  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] Use CMake's FindFreetype
+        https://bugs.webkit.org/show_bug.cgi?id=189071
+
+        Reviewed by Michael Catanzaro.
+
+        * PlatformWPE.cmake:
+
 2018-08-28  Wenson Hsieh  <wenson_hsieh@apple.com>
 
         Work towards: [iOS] Consolidate the implementations of readString, stringForType, and readURL in PlatformPasteboardIOS.mm
index ba59141..0f4f024 100644 (file)
@@ -275,7 +275,7 @@ list(APPEND WebKit_INCLUDE_DIRECTORIES
 
 list(APPEND WebKit_SYSTEM_INCLUDE_DIRECTORIES
     ${CAIRO_INCLUDE_DIRS}
-    ${FREETYPE2_INCLUDE_DIRS}
+    ${FREETYPE_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
     ${GSTREAMER_INCLUDE_DIRS}
     ${HARFBUZZ_INCLUDE_DIRS}
@@ -286,7 +286,7 @@ list(APPEND WebKit_SYSTEM_INCLUDE_DIRECTORIES
 list(APPEND WebKit_LIBRARIES
     PRIVATE
         ${CAIRO_LIBRARIES}
-        ${FREETYPE2_LIBRARIES}
+        ${FREETYPE_LIBRARIES}
         ${GLIB_LIBRARIES}
         ${GSTREAMER_LIBRARIES}
         ${HARFBUZZ_LIBRARIES}
diff --git a/Source/cmake/FindFreetype2.cmake b/Source/cmake/FindFreetype2.cmake
deleted file mode 100644 (file)
index 14e8b16..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright (C) 2013 Nokia Corporation and/or its subsidiary(-ies).
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-#    notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-#    notice, this list of conditions and the following disclaimer in the
-#    documentation and/or other materials provided with the distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY
-# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-# PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
-# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
-# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-find_package(PkgConfig)
-pkg_check_modules(PC_FREETYPE2 REQUIRED freetype2)
-
-find_path(FREETYPE2_HEADER_DIR
-    NAMES freetype.h
-    HINTS ${PC_FREETYPE2_INCLUDE_DIRS}
-          ${PC_FREETYPE2_INCLUDEDIR}
-    PATH_SUFFIXES freetype
-)
-
-find_path(FREETYPE2_ROOT_INCLUDE_DIR
-    NAMES freetype/freetype.h
-    HINTS ${PC_FREETYPE2_INCLUDE_DIRS}
-          ${PC_FREETYPE2_INCLUDEDIR}
-)
-
-find_library(FREETYPE2_LIBRARIES
-    NAMES freetype
-    HINTS ${PC_FREETYPE2_LIBDIR}
-          ${PC_FREETYPE2_LIBRARY_DIRS}
-)
-
-set(FREETYPE2_INCLUDE_DIRS ${FREETYPE2_HEADER_DIR})
-
-# Since Freetype 2.5.1 there is no freetype/freetype.h, so this variable can be null
-if (FREETYPE2_ROOT_INCLUDE_DIR)
-    list(APPEND FREETYPE2_INCLUDE_DIRS ${FREETYPE2_ROOT_INCLUDE_DIR})
-endif ()
-
-# Inspired in the original FindFreetype.cmake
-if (FREETYPE2_HEADER_DIR AND EXISTS "${FREETYPE2_HEADER_DIR}/freetype.h")
-    file(STRINGS "${FREETYPE2_HEADER_DIR}/freetype.h" freetype_version_str
-         REGEX "^#[\t ]*define[\t ]+FREETYPE_(MAJOR|MINOR|PATCH)[\t ]+[0-9]+$")
-
-    unset(FREETYPE2_VERSION_STRING)
-    foreach (VPART MAJOR MINOR PATCH)
-        foreach (VLINE ${freetype_version_str})
-            if (VLINE MATCHES "^#[\t ]*define[\t ]+FREETYPE_${VPART}")
-                string(REGEX REPLACE "^#[\t ]*define[\t ]+FREETYPE_${VPART}[\t ]+([0-9]+)$" "\\1"
-                       FREETYPE2_VERSION_PART "${VLINE}")
-                if (FREETYPE2_VERSION_STRING)
-                    set(FREETYPE2_VERSION_STRING "${FREETYPE2_VERSION_STRING}.${FREETYPE2_VERSION_PART}")
-                else ()
-                    set(FREETYPE2_VERSION_STRING "${FREETYPE2_VERSION_PART}")
-                endif ()
-                unset(FREETYPE2_VERSION_PART)
-            endif ()
-        endforeach ()
-    endforeach ()
-endif ()
-
-set(VERSION_OK TRUE)
-if (FREETYPE2_VERSION_STRING)
-    if (PC_FREETYPE2_FIND_VERSION_EXACT)
-        if (NOT("${Freetype2_FIND_VERSION}" VERSION_EQUAL "${FREETYPE2_VERSION_STRING}"))
-            set(VERSION_OK FALSE)
-        endif ()
-    else ()
-        if ("${FREETYPE2_VERSION_STRING}" VERSION_LESS "${Freetype2_FIND_VERSION}")
-            set(VERSION_OK FALSE)
-        endif ()
-    endif ()
-endif ()
-
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(Freetype2 DEFAULT_MSG FREETYPE2_INCLUDE_DIRS FREETYPE2_LIBRARIES VERSION_OK)
-
-mark_as_advanced(
-    FREETYPE2_HEADER_DIR
-    FREETYPE2_LIBRARIES
-    FREETYPE2_ROOT_INCLUDE_DIR
-)
index 15c756c..08f6c83 100644 (file)
@@ -19,7 +19,7 @@ set(INTROSPECTION_INSTALL_TYPELIBDIR "${LIB_INSTALL_DIR}/girepository-1.0")
 
 find_package(Cairo 1.10.2 REQUIRED)
 find_package(Fontconfig 2.8.0 REQUIRED)
-find_package(Freetype2 2.4.2 REQUIRED)
+find_package(Freetype 2.4.2 REQUIRED)
 find_package(LibGcrypt 1.6.0 REQUIRED)
 find_package(GTK3 3.6.0 REQUIRED)
 find_package(GDK3 3.6.0 REQUIRED)
index 278739a..fb0b60e 100644 (file)
@@ -71,7 +71,7 @@ WEBKIT_OPTION_END()
 
 find_package(Cairo 1.10.2 REQUIRED)
 find_package(Fontconfig 2.8.0 REQUIRED)
-find_package(Freetype2 2.4.2 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)