[rmlui] Update to version 6.0 (#40666)

This commit is contained in:
Michael R. P. Ragazzon 2024-08-28 11:13:34 +02:00 committed by GitHub
parent a747ea2aae
commit f5ec6f30ff
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 92 additions and 178 deletions

View File

@ -1,38 +1,35 @@
diff --git a/CMake/FileList.cmake b/CMake/FileList.cmake
index cd2918a7..f063a879 100644
--- a/CMake/FileList.cmake
+++ b/CMake/FileList.cmake
@@ -123,7 +123,6 @@ set(Core_PUB_HDR_FILES
${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ComputedValues.h
${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Containers/itlib/flat_map.hpp
${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Containers/itlib/flat_set.hpp
- ${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Containers/robin_hood.h
${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Context.h
${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ContextInstancer.h
${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ConvolutionFilter.h
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0b552524..190e8c8e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -427,6 +427,8 @@ if( ENABLE_SVG_PLUGIN )
message("-- Can SVG plugin be enabled - yes - lunasvg library found")
endif()
+find_path(ROBIN_HOOD_INCLUDE_DIR robin_hood.h)
+include_directories(${ROBIN_HOOD_INCLUDE_DIR})
if(NOT BUILD_FRAMEWORK)
#===================================
diff --git a/Include/RmlUi/Config/Config.h b/Include/RmlUi/Config/Config.h
index 018ab3b1..4bc20613 100644
index 15d984a3..019db32c 100644
--- a/Include/RmlUi/Config/Config.h
+++ b/Include/RmlUi/Config/Config.h
@@ -57,7 +57,7 @@
#else
#include "../Core/Containers/itlib/flat_map.hpp"
#include "../Core/Containers/itlib/flat_set.hpp"
-#include "../Core/Containers/robin_hood.h"
+#include <robin_hood.h>
#endif // RMLUI_NO_THIRDPARTY_CONTAINERS
@@ -58,7 +58,7 @@
#else
#include "../Core/Containers/itlib/flat_map.hpp"
#include "../Core/Containers/itlib/flat_set.hpp"
- #include "../Core/Containers/robin_hood.h"
+ #include <robin_hood.h>
#endif // RMLUI_NO_THIRDPARTY_CONTAINERS
namespace Rml {
diff --git a/Source/Core/CMakeLists.txt b/Source/Core/CMakeLists.txt
index c377ff49..7dff6a07 100644
--- a/Source/Core/CMakeLists.txt
+++ b/Source/Core/CMakeLists.txt
@@ -233,7 +233,6 @@ target_sources(rmlui_core PRIVATE
"${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ComputedValues.h"
"${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Containers/itlib/flat_map.hpp"
"${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Containers/itlib/flat_set.hpp"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Containers/robin_hood.h"
"${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/Context.h"
"${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ContextInstancer.h"
"${PROJECT_SOURCE_DIR}/Include/RmlUi/Core/ConvolutionFilter.h"
@@ -379,6 +378,9 @@ elseif(rmlui_core_TYPE STREQUAL "SHARED_LIBRARY")
endif()
unset(rmlui_core_TYPE)
+find_path(ROBIN_HOOD_INCLUDE_DIR robin_hood.h)
+target_include_directories(rmlui_core PUBLIC ${ROBIN_HOOD_INCLUDE_DIR})
+
if(RMLUI_FONT_ENGINE STREQUAL "freetype")
# Include the source files for the default font engine.
add_subdirectory("FontEngineDefault")

View File

@ -2,20 +2,24 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO mikke89/RmlUi
REF ${VERSION}
SHA512 06bf1a24c6ff3f164ef1af80186d5f974e6a5467f6f0d50ec33bb14516e4899321fe7a5b9c4912def908a53711bf302bc782cf78117e0930862f5d1ad07dec18
SHA512 46a8fef450ab6eaf6d4d6a2fff9b23dbe5a7ae81720cfa29f116f9454daca5fe80bef0b9981e037e6a42718a21361a0ca2380d0ebe33bf5e744aeecc033724b5
HEAD_REF master
PATCHES
add-robin-hood.patch
remove-std-before-uint.patch
skip-custom-find-modules.patch
)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
lua BUILD_LUA_BINDINGS
INVERTED_FEATURES
freetype NO_FONT_INTERFACE_DEFAULT
FEATURES
lua RMLUI_LUA_BINDINGS
)
if("freetype" IN_LIST FEATURES)
set(RMLUI_FONT_ENGINE "freetype")
else()
set(RMLUI_FONT_ENGINE "none")
endif()
# Remove built-in header, instead we use vcpkg version (from robin-hood-hashing port)
file(REMOVE "${SOURCE_PATH}/Include/RmlUi/Core/Containers/robin_hood.h")
@ -23,16 +27,18 @@ vcpkg_cmake_configure(
SOURCE_PATH ${SOURCE_PATH}
OPTIONS
${FEATURE_OPTIONS}
"-DRMLUI_FONT_ENGINE=${RMLUI_FONT_ENGINE}"
"-DRMLUI_COMPILER_OPTIONS=OFF"
"-DRMLUI_INSTALL_RUNTIME_DEPENDENCIES=OFF"
)
vcpkg_cmake_install()
vcpkg_cmake_config_fixup(CONFIG_PATH lib/RmlUi/cmake)
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/RmlUi)
vcpkg_copy_pdbs()
file(REMOVE_RECURSE
file(REMOVE_RECURSE
"${CURRENT_PACKAGES_DIR}/debug/include"
"${CURRENT_PACKAGES_DIR}/debug/lib/RmlUi"
"${CURRENT_PACKAGES_DIR}/lib/RmlUi"
"${CURRENT_PACKAGES_DIR}/debug/share"
)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
@ -52,4 +58,10 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
endif()
endif()
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt")
configure_file("${CMAKE_CURRENT_LIST_DIR}/usage" "${CURRENT_PACKAGES_DIR}/share/${PORT}/usage" COPYONLY)
vcpkg_install_copyright(
FILE_LIST
"${SOURCE_PATH}/LICENSE.txt"
"${SOURCE_PATH}/Include/RmlUi/Core/Containers/LICENSE.txt"
"${SOURCE_PATH}/Source/Debugger/LICENSE.txt"
)

View File

@ -1,130 +0,0 @@
diff --git a/Backends/RmlUi_Backend_GLFW_VK.cpp b/Backends/RmlUi_Backend_GLFW_VK.cpp
index c1cf80f..7d45299 100644
--- a/Backends/RmlUi_Backend_GLFW_VK.cpp
+++ b/Backends/RmlUi_Backend_GLFW_VK.cpp
@@ -35,7 +35,7 @@
#include <RmlUi/Core/Core.h>
#include <RmlUi/Core/FileInterface.h>
#include <GLFW/glfw3.h>
-#include <cstdint>
+#include <stdint.h>
#include <thread>
static void SetupCallbacks(GLFWwindow* window);
diff --git a/Include/RmlUi/Core/Types.h b/Include/RmlUi/Core/Types.h
index 28e5ad7..39a5e8a 100644
--- a/Include/RmlUi/Core/Types.h
+++ b/Include/RmlUi/Core/Types.h
@@ -32,6 +32,7 @@
#include "../Config/Config.h"
#include <cstdlib>
+#include <stdint.h>
#include <memory>
#include "Traits.h"
diff --git a/Samples/basic/bitmapfont/src/FontEngineBitmap.cpp b/Samples/basic/bitmapfont/src/FontEngineBitmap.cpp
index bcc6f13..da487b0 100644
--- a/Samples/basic/bitmapfont/src/FontEngineBitmap.cpp
+++ b/Samples/basic/bitmapfont/src/FontEngineBitmap.cpp
@@ -219,7 +219,7 @@ int FontFaceBitmap::GenerateString(const String& string, const Vector2f& string_
int FontFaceBitmap::GetKerning(Character left, Character right) const
{
- std::uint64_t key = (((std::uint64_t)left << 32) | (std::uint64_t)right);
+ uint64_t key = (((uint64_t)left << 32) | (uint64_t)right);
auto it = kerning.find(key);
if (it != kerning.end())
@@ -291,13 +291,13 @@ void FontParserBitmap::HandleElementStart(const String& name, const Rml::XMLAttr
}
else if (name == "kerning")
{
- std::uint64_t first = (std::uint64_t)Get(attributes, "first", 0);
- std::uint64_t second = (std::uint64_t)Get(attributes, "second", 0);
+ uint64_t first = (uint64_t)Get(attributes, "first", 0);
+ uint64_t second = (uint64_t)Get(attributes, "second", 0);
int amount = Get(attributes, "amount", 0);
if (first != 0 && second != 0 && amount != 0)
{
- std::uint64_t key = ((first << 32) | second);
+ uint64_t key = ((first << 32) | second);
kerning[key] = amount;
}
}
diff --git a/Samples/basic/bitmapfont/src/FontEngineBitmap.h b/Samples/basic/bitmapfont/src/FontEngineBitmap.h
index f9fef43..41256c9 100644
--- a/Samples/basic/bitmapfont/src/FontEngineBitmap.h
+++ b/Samples/basic/bitmapfont/src/FontEngineBitmap.h
@@ -29,7 +29,6 @@
#ifndef FONTENGINEBITMAP_H
#define FONTENGINEBITMAP_H
-#include <cstdint>
#include <RmlUi/Core/Types.h>
#include "FontEngineInterfaceBitmap.h"
@@ -63,7 +62,7 @@ struct FontMetrics {
using FontGlyphs = Rml::UnorderedMap<Character, BitmapGlyph>;
// Mapping of combined (left, right) character to kerning in pixels.
-using FontKerning = Rml::UnorderedMap<std::uint64_t, int>;
+using FontKerning = Rml::UnorderedMap<uint64_t, int>;
class FontFaceBitmap {
diff --git a/Source/Core/ElementStyle.h b/Source/Core/ElementStyle.h
index a89eb7e..8f62fb7 100644
--- a/Source/Core/ElementStyle.h
+++ b/Source/Core/ElementStyle.h
@@ -40,7 +40,7 @@ class ElementDefinition;
class PropertiesIterator;
enum class RelativeTarget;
-enum class PseudoClassState : std::uint8_t { Clear = 0, Set = 1, Override = 2 };
+enum class PseudoClassState : uint8_t { Clear = 0, Set = 1, Override = 2 };
using PseudoClassMap = SmallUnorderedMap< String, PseudoClassState >;
diff --git a/Source/Core/FontEngineDefault/FontFaceHandleDefault.h b/Source/Core/FontEngineDefault/FontFaceHandleDefault.h
index 4e6c4d7..5e92d7b 100644
--- a/Source/Core/FontEngineDefault/FontFaceHandleDefault.h
+++ b/Source/Core/FontEngineDefault/FontFaceHandleDefault.h
@@ -143,8 +143,8 @@ private:
FontLayerCache layer_cache;
// Pre-cache kerning pairs for some ascii subset of all characters.
- using AsciiPair = std::uint16_t;
- using KerningIntType = std::int16_t;
+ using AsciiPair = uint16_t;
+ using KerningIntType = int16_t;
using KerningPairs = UnorderedMap< AsciiPair, KerningIntType >;
KerningPairs kerning_pair_cache;
diff --git a/Source/Core/LayoutFlex.cpp b/Source/Core/LayoutFlex.cpp
index b51aa93..074376d 100644
--- a/Source/Core/LayoutFlex.cpp
+++ b/Source/Core/LayoutFlex.cpp
@@ -110,7 +110,7 @@ struct FlexItem {
float hypothetical_main_size; // Outer size
// Used for resolving flexible length
- enum class Violation : std::uint8_t { None = 0, Min, Max };
+ enum class Violation : uint8_t { None = 0, Min, Max };
bool frozen;
Violation violation;
float target_main_size; // Outer size
diff --git a/Source/Lottie/ElementLottie.cpp b/Source/Lottie/ElementLottie.cpp
index 91f4a0e..b5e36a4 100644
--- a/Source/Lottie/ElementLottie.cpp
+++ b/Source/Lottie/ElementLottie.cpp
@@ -228,7 +228,7 @@ void ElementLottie::UpdateTexture()
byte* p_data = new byte[total_bytes];
- rlottie::Surface surface(reinterpret_cast<std::uint32_t*>(p_data), render_dimensions.x, render_dimensions.y, bytes_per_line);
+ rlottie::Surface surface(reinterpret_cast<uint32_t*>(p_data), render_dimensions.x, render_dimensions.y, bytes_per_line);
animation->renderSync(next_frame, surface);
// Swizzle the channel order from rlottie's BGRA to RmlUi's RGBA, and change pre-multiplied to post-multiplied alpha.

View File

@ -0,0 +1,27 @@
diff --git a/CMake/RmlUiConfig.cmake.in b/CMake/RmlUiConfig.cmake.in
index a69348fd..9d758860 100644
--- a/CMake/RmlUiConfig.cmake.in
+++ b/CMake/RmlUiConfig.cmake.in
@@ -27,8 +27,6 @@ macro(report_dependency_found_or_error friendly_name target_name)
message(STATUS "Found ${friendly_name} target ${target_name}${success_message}")
endmacro()
-list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/Modules")
-
include("${CMAKE_CURRENT_LIST_DIR}/Dependencies.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/RmlUiTargets.cmake")
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f13434fc..2aef42fb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -189,9 +189,6 @@ install(FILES
DESTINATION
"${RMLUI_INSTALL_TARGETS_DIR}"
)
-install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Modules"
- DESTINATION "${RMLUI_INSTALL_TARGETS_DIR}"
-)
if(RMLUI_IS_ROOT_PROJECT)
# Export build tree targets if RmlUi is the top-level project.

4
ports/rmlui/usage Normal file
View File

@ -0,0 +1,4 @@
rmlui provides CMake targets:
find_package(RmlUi CONFIG REQUIRED)
target_link_libraries(main PRIVATE RmlUi::RmlUi)

View File

@ -1,7 +1,6 @@
{
"name": "rmlui",
"version": "5.1",
"port-version": 1,
"version": "6.0",
"maintainers": "Michael R. P. Ragazzon <mikke89@users.noreply.github.com>",
"description": "RmlUi is the C++ user interface library based on the HTML and CSS standards, designed as a complete solution for any project's interface needs.",
"homepage": "https://github.com/mikke89/RmlUi",

View File

@ -7857,8 +7857,8 @@
"port-version": 0
},
"rmlui": {
"baseline": "5.1",
"port-version": 1
"baseline": "6.0",
"port-version": 0
},
"rmqcpp": {
"baseline": "1.0.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "845eceb8c79319709a6bee36adacb6b58ab81a05",
"version": "6.0",
"port-version": 0
},
{
"git-tree": "cef931b140aa6e09bed6aa57445d5f726ba2bd8b",
"version": "5.1",