vcpkg/ports/v8/V8Config-static.cmake
Alexander Neumann 546813ae7b
[glib up to gtk] update and make it work with meson (#13100)
* update glib to meson

* update ci baseline

* update glib to 2.66.3
remove cmakelists

* fix some minor meson issue but meson is still a mess

* add_bin_to_path to vcpkg_install_meson

* regen docs

* try fixing/touching all glib dependent ports

* fix libsigcpp-3 version

* fix glibmm

* fix gmime

* fix libcroco

* update libnice

* fix atk build

* update harfbuzz

* fix few builds

* update libxmlpp

* fix gdk-pixbuf

* fix gts

* gts add patch

* remove old libsigcpp

* add missing comma

* fix supports logic

* fix name mismatch

* restore original ci baseline.

* fix a lot of small details.
increment controls.

* fix harfbuzz & glib

* bump port version

* update port_versions

* fix version field

* update versions

* fix glib in harfbuzz

* update port versions

* silly uppercase type

* update port-versions

* fix cairo build

* update version

* fix atk

* update atk port-verisons

* fix gts public includes

* update versions

* fix cairomm

* fix pango

* fix ignition

* update versions.

* fix gtk

* fix librsvg

* update versions

* fix atk linux

* fix libgpod

* update versions

* fix lcm

* fix librsvg

* update pango and pangomm

* update pango to meson

* more updates

* update pixman

* fix cairo

* fix cairo

* some fixes

* reorder meson a bit

* add none.txt for meson

* fix x86_x64 to x86 "cross" builds

* add tiff pkgconfig

* update gdk-pixbuf

* fix tiff and jpeg

* add graphene

* fix gdk-pixbuf

* add sassc

* update gtk

* fix cairo complete build

* add harfbuzz inlcude in pango since meson does not add it into pkgconfig.

* fix gtk build. Remaining issue fix install script.

* fix gtk build

* fix io2d

* add supports field

* fix cartographer?

* fix librsvg build

* fix gtk build

* fix cartographer

* fix sassc on linux

* fix tiff and libjpeg pc files

* fix pixman x86

* _isnanf is undefined on arm-

* merge fix for make on arm64

* fix gdk-pixbuf on arm64-windows

* pixman remove test/demos.
should fix it on osx.

* [vcpkg_install_meson] add bin to path to run code generators

* [vcpkg_configure_meson]
deactivate native compiler in cross builds
make x86 on x86_x64 a native instead of a cross build
(as long as we are not building for UWP)

* pixman reenable UWP support.

* pixman reenable arm support

* add pixman:arm-uwp=fail to baseline

* update gtkmm

* remove double whitespaces

* gtk baseline
gtk dependency on cairo x11
remove double spaces in flags

* fix linux build

* native none again

* cairo fix cairo-script.pc

* comment out patch since the cairo changes should have fixed it.

* disable wayland backend in GTK since CI is missing system packages

* silly typo in cairo pc file correction
install lzo pc on windows

* remove double spaces in _FLAGS
remove unnecessary comments

* actually disabling wayland backend

* fix glib codegen issue having the wrong path

* try to fix paths in glib codegen

* integrate changes form #12860

* add the uwp patch back in

* deactivate extra harfbuzz shapers.

* vcpkg x-add-version --all --overwrite-version

* remove patches in tesseract.

* fix version

* rerun add-version

* add libgpod:x64-linux=fail to baseline due to missing system tools/libraries

* change regex to take double - into account.

* run x-add-version

* run format-manifest

* add missing removal of multiple spaces back into the regex

* remove ws diff change

* fix gtkmm the upstream way

* remove ws to reduce diff

* make glib build on osx

* format manifest

* run x-add-version

* add pthread dependency

* update baseline due to glib compiling on osx now.

* add meson as a dep to glib

* - add glib host dependencies
- switch to manifest of touched ports

* switch to manifest.

* [libxml2] add gnuinstalldirs

* [libxml2] add missing include of GNUInstallDirs

* add version info

* add include dir to pc files ....

* update version

* add UWP as crosscompiling target

* Apply suggestions from code review

* trying to fix cairo pthread detection on osx.

* fix libmicrohttpd by adding the required system frameworks on osx

* fix poppler by not removing the CXX standard

* fix missing coretext header from harfbuzz in pano

* fix formating issues

* fix librsvg on osx

* revert version changes

* bump version

* version stuff.

* fix graphene version stuff

* fix version stuff

* removing ports from ci baseline to cause me pain

* move cairomm:x64-linux=fail
to gtkmm:x64-linx=fail
remove pangomm:x64-osx=fail

* fix typo

* revert ws changes to vcpkg_install_meson

* update port version after merge

* version stuff

* fix fluidsynth by adding vcpkg_check_features

* move cairo to ci baseline on osx

* version stuff

* fluidsynth corrections

* more version stuff

* apply code review changes

* clean version stuff.

* update version stuff

* code review cleanup

* version stuff

* formating

* update version stuff again

* remove gdi again

* version stuff

* version stuff

* version baseline

* Apply strega-nil suggestions from code review

* run x-add-version

* reset versions to upstream/master

* v8 CONTROL -> json

* reset fluidsynth to upstream/master

* first batch of version-string -> version conversion

* second and last batch of version-string -> version conversions

* update version stuff

* disable gdi feature in harfbuzz (missing user32 linkage in qt5-base)

* version stuff

* Apply suggestions from code review

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* more CR stuff

* update versions

* back out provision changes so that pr can be merged.

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
2021-04-26 10:28:21 -07:00

99 lines
4.2 KiB
CMake

include(CMakeFindDependencyMacro)
find_dependency(ICU REQUIRED COMPONENTS in uc dt)
find_dependency(ZLIB REQUIRED)
if(UNIX)
find_package(PkgConfig REQUIRED)
pkg_check_modules(GLIB2 glib-2.0 gobject-2.0 gmodule-2.0 gio-2.0 IMPORTED_TARGET)
set(V8_IMPORTED_LINK_INTERFACE_LIBRARIES
"ICU::in;ICU::uc;ICU::dt;ZLIB::ZLIB")
elseif(WIN32)
set(V8_IMPORTED_LINK_INTERFACE_LIBRARIES
"Winmm;DbgHelp;ZLIB::ZLIB;PkgConfig::GLIB2;ICU::in;ICU::uc;ICU::dt")
endif()
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
if(_IMPORT_PREFIX STREQUAL "/")
set(_IMPORT_PREFIX "")
endif()
include(SelectLibraryConfigurations)
find_path(V8_INCLUDE_DIR NAMES v8.h PATH_SUFFIXES include)
if(EXISTS "${_IMPORT_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}v8_monolith${CMAKE_STATIC_LIBRARY_SUFFIX}")
set(V8_LIBRARY_RELEASE "${_IMPORT_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}v8_monolith${CMAKE_STATIC_LIBRARY_SUFFIX}" CACHE FILEPATH "Release version of the V8 library location")
endif()
if(EXISTS "${_IMPORT_PREFIX}/debug/lib/${CMAKE_STATIC_LIBRARY_PREFIX}v8_monolith${CMAKE_STATIC_LIBRARY_SUFFIX}")
set(V8_LIBRARY_DEBUG "${_IMPORT_PREFIX}/debug/lib/${CMAKE_STATIC_LIBRARY_PREFIX}v8_monolith${CMAKE_STATIC_LIBRARY_SUFFIX}" CACHE FILEPATH "Debug version of the V8 library location")
endif()
select_library_configurations(V8)
mark_as_advanced(V8_INCLUDE_DIR)
if(V8_INCLUDE_DIR AND EXISTS "${V8_INCLUDE_DIR}/v8-version.h")
file(STRINGS "${V8_INCLUDE_DIR}/v8-version.h" V8_MAJOR_VERSION REGEX "^#define V8_MAJOR_VERSION [0-9]+.*$")
string(REGEX REPLACE "^#define V8_MAJOR_VERSION ([0-9]+).*$" "\\1" V8_MAJOR_VERSION "${V8_MAJOR_VERSION}")
file(STRINGS "${V8_INCLUDE_DIR}/v8-version.h" V8_MINOR_VERSION REGEX "^#define V8_MINOR_VERSION [0-9]+.*$")
string(REGEX REPLACE "^#define V8_MINOR_VERSION ([0-9]+).*$" "\\1" V8_MINOR_VERSION "${V8_MINOR_VERSION}")
file(STRINGS "${V8_INCLUDE_DIR}/v8-version.h" V8_BUILD_NUMBER REGEX "^#define V8_BUILD_NUMBER [0-9]+.*$")
string(REGEX REPLACE "^#define V8_BUILD_NUMBER ([0-9]+).*$" "\\1" V8_BUILD_NUMBER "${V8_BUILD_NUMBER}")
file(STRINGS "${V8_INCLUDE_DIR}/v8-version.h" V8_PATCH_LEVEL REGEX "^#define V8_PATCH_LEVEL [0-9]+.*$")
string(REGEX REPLACE "^#define V8_PATCH_LEVEL ([0-9]+).*$" "\\1" V8_PATCH_LEVEL "${V8_PATCH_LEVEL}")
set(V8_VERSION_STRING "${V8_MAJOR_VERSION}.${V8_MINOR_VERSION}.${V8_BUILD_NUMBER}.${V8_PATCH_LEVEL}")
endif()
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(V8_COMPILE_DEFINITIONS "V8_COMPRESS_POINTERS;V8_31BIT_SMIS_ON_64BIT_ARCH")
else()
set(V8_COMPILE_DEFINITIONS " ")
endif()
mark_as_advanced(V8_COMPILE_DEFINITIONS)
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(V8 REQUIRED_VARS V8_LIBRARY V8_INCLUDE_DIR V8_COMPILE_DEFINITIONS
VERSION_VAR V8_VERSION_STRING)
set(V8_LIBRARIES ${V8_LIBRARY})
mark_as_advanced(V8_LIBRARIES)
if(NOT TARGET V8::V8)
add_library(V8::V8 STATIC IMPORTED)
set_target_properties(V8::V8 PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${V8_INCLUDE_DIR}"
INTERFACE_COMPILE_DEFINITIONS "${V8_COMPILE_DEFINITIONS}")
if(MSVC)
set_target_properties(V8::V8 PROPERTIES
INTERFACE_COMPILE_OPTIONS "/MT$<$<CONFIG:Debug>:d>")
endif()
if(V8_LIBRARY_RELEASE)
set_property(TARGET V8::V8 APPEND PROPERTY
IMPORTED_CONFIGURATIONS RELEASE)
set_target_properties(V8::V8 PROPERTIES
IMPORTED_LOCATION_RELEASE "${V8_LIBRARY_RELEASE}"
IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE
"${V8_IMPORTED_LINK_INTERFACE_LIBRARIES}")
endif()
if(V8_LIBRARY_DEBUG)
set_property(TARGET V8::V8 APPEND PROPERTY
IMPORTED_CONFIGURATIONS DEBUG)
set_target_properties(V8::V8 PROPERTIES
IMPORTED_LOCATION_DEBUG "${V8_LIBRARY_DEBUG}"
IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG
"${V8_IMPORTED_LINK_INTERFACE_LIBRARIES}")
endif()
if(NOT V8_LIBRARY_RELEASE AND NOT V8_LIBRARY_DEBUG)
set_property(TARGET V8::V8 APPEND PROPERTY
IMPORTED_LOCATION "${V8_LIBRARY}"
IMPORTED_LINK_INTERFACE_LIBRARIES
"${V8_IMPORTED_LINK_INTERFACE_LIBRARIES}")
endif()
endif()