From 28b70b41c482c679cbcea8c9ea6d8d598cb3c648 Mon Sep 17 00:00:00 2001 From: sma-github <55330739+sma-github@users.noreply.github.com> Date: Mon, 27 Jan 2020 23:11:39 +0100 Subject: [ftgl] Fix build failure #9520 (#9521) * bugfix for [ftgl] build failure #9520. Applied same solution as cbezault did for #7697 * bugfix for [ftgl] build failure #9520. Added suggested changes from the review and clean-up EOL characters. * [ftgl] remove ftgl:x64-linux=fail from ci.baseline.txt * [ftgl] build failure #9520 - disable doxygen on Linux * [ftgl] build failure #9520 - force the compiler to use the C++11 standard * [ftgl] build failure #9520 - remove ftgl:x64-osx=fail * [ftgl] build failure #9520 - add missing C++11 standard patch --- ports/ftgl/01_disable_doxygen.patch | 30 ++++++++++++++++++++ ports/ftgl/02_enable-cpp11-std.patch | 14 +++++++++ ports/ftgl/CONTROL | 13 +++++---- ports/ftgl/portfile.cmake | 55 ++++++++++++++++++++---------------- scripts/ci.baseline.txt | 2 -- 5 files changed, 82 insertions(+), 32 deletions(-) create mode 100644 ports/ftgl/01_disable_doxygen.patch create mode 100644 ports/ftgl/02_enable-cpp11-std.patch diff --git a/ports/ftgl/01_disable_doxygen.patch b/ports/ftgl/01_disable_doxygen.patch new file mode 100644 index 000000000..5443554e7 --- /dev/null +++ b/ports/ftgl/01_disable_doxygen.patch @@ -0,0 +1,30 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 303fcae..718ae88 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -35,15 +35,16 @@ ENDIF(BUILD_SHARED_LIBS) + + ADD_CUSTOM_TARGET(doc) + +-FIND_PACKAGE(Doxygen) +-IF(DOXYGEN_FOUND) +- ADD_CUSTOM_TARGET(doxygen +- ${DOXYGEN_EXECUTABLE} +- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} +- COMMENT "Doxygen ...") +- ADD_DEPENDENCIES(doc doxygen) +- +-ENDIF(DOXYGEN_FOUND) ++IF (WIN32) # doxygen only have windows package in vcpkg now. ++ FIND_PACKAGE(Doxygen) ++ IF(DOXYGEN_FOUND) ++ ADD_CUSTOM_TARGET(doxygen ++ ${DOXYGEN_EXECUTABLE} ++ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} ++ COMMENT "Doxygen ...") ++ ADD_DEPENDENCIES(doc doxygen) ++ ENDIF(DOXYGEN_FOUND) ++ENDIF() + + SUBDIRS(src) + diff --git a/ports/ftgl/02_enable-cpp11-std.patch b/ports/ftgl/02_enable-cpp11-std.patch new file mode 100644 index 000000000..37ae283af --- /dev/null +++ b/ports/ftgl/02_enable-cpp11-std.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 718ae88..e53e0da 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,9 @@ + CMAKE_MINIMUM_REQUIRED(VERSION 2.8) + + PROJECT(FTGL) ++set(CMAKE_CXX_STANDARD 11) ++set(CMAKE_CXX_STANDARD_REQUIRED ON) ++ + SET(CMAKE_MODULE_PATH ${FTGL_SOURCE_DIR}) + + SET(VERSION_SERIES 2) diff --git a/ports/ftgl/CONTROL b/ports/ftgl/CONTROL index b8e652144..221bf10e6 100644 --- a/ports/ftgl/CONTROL +++ b/ports/ftgl/CONTROL @@ -1,6 +1,7 @@ -Source: ftgl -Version: 2.4.0-1 -Description: FTGL is a free open source library to enable developers to use arbitrary fonts in their OpenGL (www.opengl.org) applications. - Unlike other OpenGL font libraries FTGL uses standard font file formats so doesn't need a preprocessing step to convert the high quality font data into a lesser quality, proprietary format. - FTGL uses the Freetype (www.freetype.org) font library to open and 'decode' the fonts. It then takes that output and stores it in a format most efficient for OpenGL rendering. -Build-Depends: freetype, opengl +Source: ftgl +Version: 2.4.0-2 +Homepage: https://github.com/frankheckenbach/ftgl +Description: FTGL is a free open source library to enable developers to use arbitrary fonts in their OpenGL (www.opengl.org) applications. + Unlike other OpenGL font libraries FTGL uses standard font file formats so doesn't need a preprocessing step to convert the high quality font data into a lesser quality, proprietary format. + FTGL uses the Freetype (www.freetype.org) font library to open and 'decode' the fonts. It then takes that output and stores it in a format most efficient for OpenGL rendering. +Build-Depends: freetype, opengl diff --git a/ports/ftgl/portfile.cmake b/ports/ftgl/portfile.cmake index 65df89b20..9208cb086 100644 --- a/ports/ftgl/portfile.cmake +++ b/ports/ftgl/portfile.cmake @@ -1,25 +1,32 @@ -include(vcpkg_common_functions) -vcpkg_find_acquire_program(DOXYGEN) - -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO frankheckenbach/ftgl +if (VCPKG_TARGET_IS_WINDOWS) + # doxygen only have windows package in vcpkg now. + vcpkg_find_acquire_program(DOXYGEN) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO frankheckenbach/ftgl REF 483639219095ad080538e07ceb5996de901d4e74 - SHA512 d5bf95db8db6a5c9f710bd274cb9bb82e3e67569e8f3ec55b36e068636a09252e6f191e36d8279e61b5d12408c065ce51829fc38d4d7afe5bda724752d2f084f - HEAD_REF master - PATCHES Fix-headersFilePath.patch -) - -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA -) - -vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) -vcpkg_test_cmake(PACKAGE_NAME FTGL) - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) - -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/ftgl) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/ftgl/COPYING ${CURRENT_PACKAGES_DIR}/share/ftgl/copyright) + SHA512 d5bf95db8db6a5c9f710bd274cb9bb82e3e67569e8f3ec55b36e068636a09252e6f191e36d8279e61b5d12408c065ce51829fc38d4d7afe5bda724752d2f084f + HEAD_REF master + PATCHES + Fix-headersFilePath.patch + 01_disable_doxygen.patch + 02_enable-cpp11-std.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() +if (VCPKG_TARGET_IS_WINDOWS) + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) +else () + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) +endif() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 7cf80edf0..7de42460f 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -486,8 +486,6 @@ fribidi:arm-uwp=fail fribidi:x64-linux=fail fribidi:x64-osx=fail fribidi:x64-uwp=fail -ftgl:x64-linux=fail -ftgl:x64-osx=fail ftgl:x64-uwp=fail fuzzylite:arm-uwp=fail fuzzylite:x64-linux=fail -- cgit v1.2.3