From c3e259f4d29e9bdcb73617ad8e4d71f117b4d289 Mon Sep 17 00:00:00 2001 From: chai Date: Sat, 30 Oct 2021 13:28:39 +0800 Subject: +freetype --- .../freetype/builds/cmake/FindHarfBuzz.cmake | 81 ------- ThirdParty/freetype/builds/cmake/iOS.cmake | 270 --------------------- ThirdParty/freetype/builds/cmake/testbuild.sh | 157 ------------ 3 files changed, 508 deletions(-) delete mode 100644 ThirdParty/freetype/builds/cmake/FindHarfBuzz.cmake delete mode 100644 ThirdParty/freetype/builds/cmake/iOS.cmake delete mode 100644 ThirdParty/freetype/builds/cmake/testbuild.sh (limited to 'ThirdParty/freetype/builds/cmake') diff --git a/ThirdParty/freetype/builds/cmake/FindHarfBuzz.cmake b/ThirdParty/freetype/builds/cmake/FindHarfBuzz.cmake deleted file mode 100644 index ee0d52e..0000000 --- a/ThirdParty/freetype/builds/cmake/FindHarfBuzz.cmake +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright (c) 2012, Intel Corporation -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# * Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# * 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. -# * Neither the name of Intel Corporation nor the names of its contributors may -# be used to endorse or promote products derived from this software without -# specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 OWNER 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. -# -# Try to find Harfbuzz include and library directories. -# -# After successful discovery, this will set for inclusion where needed: -# HARFBUZZ_INCLUDE_DIRS - containg the HarfBuzz headers -# HARFBUZZ_LIBRARIES - containg the HarfBuzz library - -include(FindPkgConfig) -pkg_check_modules(PC_HARFBUZZ QUIET harfbuzz) - -find_path(HARFBUZZ_INCLUDE_DIRS - NAMES hb.h - HINTS ${PC_HARFBUZZ_INCLUDEDIR} - ${PC_HARFBUZZ_INCLUDE_DIRS} - PATH_SUFFIXES harfbuzz -) - -find_library(HARFBUZZ_LIBRARIES NAMES harfbuzz - HINTS ${PC_HARFBUZZ_LIBDIR} - ${PC_HARFBUZZ_LIBRARY_DIRS} -) - -if (HARFBUZZ_INCLUDE_DIRS) - if (EXISTS "${HARFBUZZ_INCLUDE_DIRS}/hb-version.h") - file(READ "${HARFBUZZ_INCLUDE_DIRS}/hb-version.h" _harfbuzz_version_content) - - string(REGEX MATCH "#define +HB_VERSION_STRING +\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" _dummy "${_harfbuzz_version_content}") - set(HARFBUZZ_VERSION "${CMAKE_MATCH_1}") - endif () -endif () - -if ("${harfbuzz_FIND_VERSION}" VERSION_GREATER "${HARFBUZZ_VERSION}") - message(FATAL_ERROR "Required version (" ${harfbuzz_FIND_VERSION} ") is higher than found version (" ${HARFBUZZ_VERSION} ")") -endif () - -include(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS( - harfbuzz - REQUIRED_VARS HARFBUZZ_INCLUDE_DIRS HARFBUZZ_LIBRARIES - VERSION_VAR HARFBUZZ_VERSION) - -mark_as_advanced( - HARFBUZZ_INCLUDE_DIRS - HARFBUZZ_LIBRARIES -) - -# Allows easy linking as in -# target_link_libraries(freetype PRIVATE Harfbuzz::Harfbuzz) -if (NOT CMAKE_VERSION VERSION_LESS 3.1) - if (HARFBUZZ_FOUND AND NOT TARGET Harfbuzz::Harfbuzz) - add_library(Harfbuzz::Harfbuzz INTERFACE IMPORTED) - set_target_properties( - Harfbuzz::Harfbuzz PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES "${HARFBUZZ_INCLUDE_DIRS}") - endif () -endif () diff --git a/ThirdParty/freetype/builds/cmake/iOS.cmake b/ThirdParty/freetype/builds/cmake/iOS.cmake deleted file mode 100644 index 3a350d2..0000000 --- a/ThirdParty/freetype/builds/cmake/iOS.cmake +++ /dev/null @@ -1,270 +0,0 @@ -# iOS.cmake -# -# Copyright (C) 2014-2019 by -# David Turner, Robert Wilhelm, and Werner Lemberg. -# -# Written by David Wimsey -# -# This file is part of the FreeType project, and may only be used, modified, -# and distributed under the terms of the FreeType project license, -# LICENSE.TXT. By continuing to use, modify, or distribute this file you -# indicate that you have read the license and understand and accept it -# fully. -# -# -# This file is derived from the files `Platform/Darwin.cmake' and -# `Platform/UnixPaths.cmake', which are part of CMake 2.8.4. It has been -# altered for iOS development. - - -# Options -# ------- -# -# IOS_PLATFORM = OS | SIMULATOR -# -# This decides whether SDKS are selected from the `iPhoneOS.platform' or -# `iPhoneSimulator.platform' folders. -# -# OS - the default, used to build for iPhone and iPad physical devices, -# which have an ARM architecture. -# SIMULATOR - used to build for the Simulator platforms, which have an -# x86 architecture. -# -# CMAKE_IOS_DEVELOPER_ROOT = /path/to/platform/Developer folder -# -# By default, this location is automatically chosen based on the -# IOS_PLATFORM value above. If you manually set this variable, it -# overrides the default location and forces the use of a particular -# Developer Platform. -# -# CMAKE_IOS_SDK_ROOT = /path/to/platform/Developer/SDKs/SDK folder -# -# By default, this location is automatically chosen based on the -# CMAKE_IOS_DEVELOPER_ROOT value. In this case it is always the most -# up-to-date SDK found in the CMAKE_IOS_DEVELOPER_ROOT path. If you -# manually set this variable, it forces the use of a specific SDK -# version. -# -# -# Macros -# ------ -# -# set_xcode_property (TARGET XCODE_PROPERTY XCODE_VALUE) -# -# A convenience macro for setting Xcode specific properties on targets. -# -# Example: -# -# set_xcode_property(myioslib IPHONEOS_DEPLOYMENT_TARGET "3.1") -# -# find_host_package (PROGRAM ARGS) -# -# A macro to find executable programs on the host system, not within the -# iOS environment. Thanks to the `android-cmake' project for providing -# the command. - - -# standard settings -set(CMAKE_SYSTEM_NAME Darwin) -set(CMAKE_SYSTEM_VERSION 1) -set(UNIX True) -set(APPLE True) -set(IOS True) - -# required as of cmake 2.8.10 -set(CMAKE_OSX_DEPLOYMENT_TARGET "" - CACHE STRING "Force unset of the deployment target for iOS" FORCE -) - -# determine the cmake host system version so we know where to find the iOS -# SDKs -find_program(CMAKE_UNAME uname /bin /usr/bin /usr/local/bin) -if (CMAKE_UNAME) - exec_program(uname ARGS -r OUTPUT_VARIABLE CMAKE_HOST_SYSTEM_VERSION) - string(REGEX REPLACE "^([0-9]+)\\.([0-9]+).*$" "\\1" - DARWIN_MAJOR_VERSION "${CMAKE_HOST_SYSTEM_VERSION}") -endif (CMAKE_UNAME) - -# skip the platform compiler checks for cross compiling -set(CMAKE_CXX_COMPILER_WORKS TRUE) -set(CMAKE_C_COMPILER_WORKS TRUE) - -# all iOS/Darwin specific settings - some may be redundant -set(CMAKE_SHARED_LIBRARY_PREFIX "lib") -set(CMAKE_SHARED_LIBRARY_SUFFIX ".dylib") -set(CMAKE_SHARED_MODULE_PREFIX "lib") -set(CMAKE_SHARED_MODULE_SUFFIX ".so") -set(CMAKE_MODULE_EXISTS 1) -set(CMAKE_DL_LIBS "") - -set(CMAKE_C_OSX_COMPATIBILITY_VERSION_FLAG - "-compatibility_version ") -set(CMAKE_C_OSX_CURRENT_VERSION_FLAG - "-current_version ") -set(CMAKE_CXX_OSX_COMPATIBILITY_VERSION_FLAG - "${CMAKE_C_OSX_COMPATIBILITY_VERSION_FLAG}") -set(CMAKE_CXX_OSX_CURRENT_VERSION_FLAG - "${CMAKE_C_OSX_CURRENT_VERSION_FLAG}") - -# hidden visibility is required for cxx on iOS -set(CMAKE_C_FLAGS_INIT "") -set(CMAKE_CXX_FLAGS_INIT - "-headerpad_max_install_names -fvisibility=hidden -fvisibility-inlines-hidden") - -set(CMAKE_C_LINK_FLAGS - "-Wl,-search_paths_first ${CMAKE_C_LINK_FLAGS}") -set(CMAKE_CXX_LINK_FLAGS - "-Wl,-search_paths_first ${CMAKE_CXX_LINK_FLAGS}") - -set(CMAKE_PLATFORM_HAS_INSTALLNAME 1) -set(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS - "-dynamiclib -headerpad_max_install_names") -set(CMAKE_SHARED_MODULE_CREATE_C_FLAGS - "-bundle -headerpad_max_install_names") -set(CMAKE_SHARED_MODULE_LOADER_C_FLAG - "-Wl,-bundle_loader,") -set(CMAKE_SHARED_MODULE_LOADER_CXX_FLAG - "-Wl,-bundle_loader,") -set(CMAKE_FIND_LIBRARY_SUFFIXES - ".dylib" ".so" ".a") - -# hack: If a new cmake (which uses CMAKE_INSTALL_NAME_TOOL) runs on an old -# build tree (where `install_name_tool' was hardcoded), and where -# CMAKE_INSTALL_NAME_TOOL isn't in the cache and still cmake didn't -# fail in `CMakeFindBinUtils.cmake' (because it isn't rerun), hardcode -# CMAKE_INSTALL_NAME_TOOL here to `install_name_tool' so it behaves as -# it did before. -if (NOT DEFINED CMAKE_INSTALL_NAME_TOOL) - find_program(CMAKE_INSTALL_NAME_TOOL install_name_tool) -endif (NOT DEFINED CMAKE_INSTALL_NAME_TOOL) - -# set up iOS platform unless specified manually with IOS_PLATFORM -if (NOT DEFINED IOS_PLATFORM) - set(IOS_PLATFORM "OS") -endif (NOT DEFINED IOS_PLATFORM) - -set(IOS_PLATFORM ${IOS_PLATFORM} CACHE STRING "Type of iOS Platform") - -# check the platform selection and setup for developer root -if (${IOS_PLATFORM} STREQUAL "OS") - set(IOS_PLATFORM_LOCATION "iPhoneOS.platform") - - # this causes the installers to properly locate the output libraries - set(CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphoneos") - -elseif (${IOS_PLATFORM} STREQUAL "SIMULATOR") - set(IOS_PLATFORM_LOCATION "iPhoneSimulator.platform") - - # this causes the installers to properly locate the output libraries - set(CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphonesimulator") - -else (${IOS_PLATFORM} STREQUAL "OS") - message(FATAL_ERROR - "Unsupported IOS_PLATFORM value selected. Please choose OS or SIMULATOR.") - -endif (${IOS_PLATFORM} STREQUAL "OS") - -# set up iOS developer location unless specified manually with -# CMAKE_IOS_DEVELOPER_ROOT -- -# note that Xcode 4.3 changed the installation location; choose the most -# recent one available -set(XCODE_POST_43_ROOT - "/Applications/Xcode.app/Contents/Developer/Platforms/${IOS_PLATFORM_LOCATION}/Developer") -set(XCODE_PRE_43_ROOT - "/Developer/Platforms/${IOS_PLATFORM_LOCATION}/Developer") - -if (NOT DEFINED CMAKE_IOS_DEVELOPER_ROOT) - if (EXISTS ${XCODE_POST_43_ROOT}) - set(CMAKE_IOS_DEVELOPER_ROOT ${XCODE_POST_43_ROOT}) - elseif (EXISTS ${XCODE_PRE_43_ROOT}) - set(CMAKE_IOS_DEVELOPER_ROOT ${XCODE_PRE_43_ROOT}) - endif (EXISTS ${XCODE_POST_43_ROOT}) -endif (NOT DEFINED CMAKE_IOS_DEVELOPER_ROOT) - -set(CMAKE_IOS_DEVELOPER_ROOT ${CMAKE_IOS_DEVELOPER_ROOT} - CACHE PATH "Location of iOS Platform" -) - -# find and use the most recent iOS SDK unless specified manually with -# CMAKE_IOS_SDK_ROOT -if (NOT DEFINED CMAKE_IOS_SDK_ROOT) - file(GLOB _CMAKE_IOS_SDKS "${CMAKE_IOS_DEVELOPER_ROOT}/SDKs/*") - if (_CMAKE_IOS_SDKS) - list(SORT _CMAKE_IOS_SDKS) - list(REVERSE _CMAKE_IOS_SDKS) - list(GET _CMAKE_IOS_SDKS 0 CMAKE_IOS_SDK_ROOT) - else (_CMAKE_IOS_SDKS) - message(FATAL_ERROR - "No iOS SDK's found in default search path ${CMAKE_IOS_DEVELOPER_ROOT}. Manually set CMAKE_IOS_SDK_ROOT or install the iOS SDK.") - endif (_CMAKE_IOS_SDKS) - - message(STATUS "Toolchain using default iOS SDK: ${CMAKE_IOS_SDK_ROOT}") -endif (NOT DEFINED CMAKE_IOS_SDK_ROOT) - -set(CMAKE_IOS_SDK_ROOT ${CMAKE_IOS_SDK_ROOT} - CACHE PATH "Location of the selected iOS SDK" -) - -# set the sysroot default to the most recent SDK -set(CMAKE_OSX_SYSROOT ${CMAKE_IOS_SDK_ROOT} - CACHE PATH "Sysroot used for iOS support" -) - -# set the architecture for iOS -- -# note that currently both ARCHS_STANDARD_32_BIT and -# ARCHS_UNIVERSAL_IPHONE_OS set armv7 only, so set both manually -if (${IOS_PLATFORM} STREQUAL "OS") - set(IOS_ARCH $(ARCHS_STANDARD_32_64_BIT)) -else (${IOS_PLATFORM} STREQUAL "OS") - set(IOS_ARCH i386) -endif (${IOS_PLATFORM} STREQUAL "OS") - -set(CMAKE_OSX_ARCHITECTURES ${IOS_ARCH} - CACHE string "Build architecture for iOS" -) - -# set the find root to the iOS developer roots and to user defined paths -set(CMAKE_FIND_ROOT_PATH - ${CMAKE_IOS_DEVELOPER_ROOT} - ${CMAKE_IOS_SDK_ROOT} - ${CMAKE_PREFIX_PATH} - CACHE string "iOS find search path root" -) - -# default to searching for frameworks first -set(CMAKE_FIND_FRAMEWORK FIRST) - -# set up the default search directories for frameworks -set(CMAKE_SYSTEM_FRAMEWORK_PATH - ${CMAKE_IOS_SDK_ROOT}/System/Library/Frameworks - ${CMAKE_IOS_SDK_ROOT}/System/Library/PrivateFrameworks - ${CMAKE_IOS_SDK_ROOT}/Developer/Library/Frameworks -) - -# only search the iOS SDKs, not the remainder of the host filesystem -set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY) -set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) -set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) - -# this little macro lets you set any Xcode specific property -macro(set_xcode_property TARGET XCODE_PROPERTY XCODE_VALUE) - set_property(TARGET ${TARGET} - PROPERTY XCODE_ATTRIBUTE_${XCODE_PROPERTY} ${XCODE_VALUE}) -endmacro(set_xcode_property) - -# this macro lets you find executable programs on the host system -macro(find_host_package) - set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) - set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY NEVER) - set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE NEVER) - set(IOS FALSE) - - find_package(${ARGN}) - - set(IOS TRUE) - set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY) - set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) - set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) -endmacro(find_host_package) - -# eof diff --git a/ThirdParty/freetype/builds/cmake/testbuild.sh b/ThirdParty/freetype/builds/cmake/testbuild.sh deleted file mode 100644 index 65c481f..0000000 --- a/ThirdParty/freetype/builds/cmake/testbuild.sh +++ /dev/null @@ -1,157 +0,0 @@ -#!/bin/sh -e - -# Copyright (C) 2015-2019 by -# David Turner, Robert Wilhelm, and Werner Lemberg. -# -# This file is part of the FreeType project, and may only be used, modified, -# and distributed under the terms of the FreeType project license, -# LICENSE.TXT. By continuing to use, modify, or distribute this file you -# indicate that you have read the license and understand and accept it -# fully. - -# This script tests the CMake build. Simply run -# -# builds/cmake/testbuild.sh -# -# or -# -# BUILD_SHARED_LIBS=1 builds/cmake/testbuild.sh -# -# The script: -# -# - builds the main CMakeLists.txt -# - builds and runs a small test app in a separate build tree so -# the config-module is tested, too -# -# Options (environment variables): -# -# - The variable BUILD_SHARED_LIBS will be forwarded to the CMake project -# that builds the library. -# - - -# prepare temporary dir - -cd `dirname $0`/../.. -ftdir=`pwd` -tmpdir=/tmp/freetype-cmake-testbuild -rm -rf $tmpdir -mkdir -p $tmpdir - - -# build and install freetype - -if test -n "$BUILD_SHARED_LIBS"; then - bsl=-DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS -else - bsl=-UBUILD_SHARED_LIBS -fi - -build_opts="-DWITH_ZLIB=0 \ - -DWITH_BZip2=0 \ - -DWITH_PNG=0 \ - -DWITH_HarfBuzz=0 \ - $bsl \ - -DCMAKE_INSTALL_PREFIX=$tmpdir/out" - -(set -x; cmake -H$ftdir \ - -B$tmpdir/ftb \ - -DCMAKE_BUILD_TYPE=Debug \ - $build_opts) -(set -x; cmake --build $tmpdir/ftb \ - --config Debug \ - --target install) - -(set -x; cmake $tmpdir/ftb \ - -DCMAKE_BUILD_TYPE=Release) -(set -x; cmake --build $tmpdir/ftb \ - --config Release \ - --target install \ - --clean-first) - - -# create test project CMakeLists.txt - -cat >$tmpdir/CMakeLists.txt << END -cmake_minimum_required(VERSION 2.6) -project(freetype-cmake-testbuild) - -find_package(Freetype REQUIRED CONFIG) - -add_executable(freetype-cmake-test main.c) -target_link_libraries(freetype-cmake-test freetype) - -enable_testing() -add_test(freetype-cmake-test freetype-cmake-test) -END - - -# create test project main.c - -cat >$tmpdir/main.c << END -#include -#include - -#include -#include FT_FREETYPE_H - - -FT_Library library; - - -int main(int argc, - char*argv[]) -{ - FT_Error error; - FT_Int major = 0; - FT_Int minor = 0; - FT_Int patch = 0; - - error = FT_Init_FreeType(&library); - if (error) - return EXIT_FAILURE; - - FT_Library_Version(library, &major, &minor, &patch); - if (major != FREETYPE_MAJOR - || minor != FREETYPE_MINOR - || patch != FREETYPE_PATCH) - return EXIT_FAILURE; - - printf("FT_Library_Version: %d.%d.%d\n", major, minor, patch); - - error = FT_Done_FreeType(library); - if (error) - return EXIT_FAILURE; - - return EXIT_SUCCESS; -} -END - - -# build and test - -mkdir -p $tmpdir/tb -cd $tmpdir/tb - -LD_LIBRARY_PATH=$tmpdir/out/lib:$LD_LIBRARY_PATH -DYLD_LIBRARY_PATH=$tmpdir/out/lib:$DYLD_LIBRARY_PATH -export LD_LIBRARY_PATH -export DYLD_LIBRARY_PATH - -(set -x; cmake $tmpdir \ - -DCMAKE_BUILD_TYPE=Debug \ - -DCMAKE_PREFIX_PATH=$tmpdir/out) -(set -x; cmake --build . \ - --config Debug) -(set -x; ctest -V -C Debug) - -(set -x; cmake . \ - -DCMAKE_BUILD_TYPE=Release) -(set -x; cmake --build . \ - --config Release \ - --clean-first) -(set -x; ctest -V -C Release) - -rm -rf $tmpdir - -# EOF -- cgit v1.1-26-g67d0