Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[cppmicroservices] update and devendor stuff #42720

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
175 changes: 175 additions & 0 deletions ports/cppmicroservices/devendor_boost_absl.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 55b99bb765..85b4484990 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -692,9 +692,9 @@ endif()
#-----------------------------------------------------------------------------
# Compile libraries here if you do not want -Werror or /WX on
#-----------------------------------------------------------------------------
-add_subdirectory(third_party/absl)
+find_package(absl CONFIG REQUIRED)
set(BUILD_SHARED_LIBS OFF CACHE BOOL "Build shared libraries" FORCE)
-add_subdirectory(third_party/boost/nowide)
+find_package(Boost COMPONENTS nowide CONFIG REQUIRED)
set(BUILD_SHARED_LIBS ${_us_build_shared} CACHE BOOL "Build shared libraries" FORCE)
#-----------------------------------------------------------------------------

diff --git a/cmake/usBundleConfig.cmake.in b/cmake/usBundleConfig.cmake.in
index c9cf743790..078c5b3fad 100644
--- a/cmake/usBundleConfig.cmake.in
+++ b/cmake/usBundleConfig.cmake.in
@@ -3,6 +3,10 @@
set(US_@PROJECT_NAME@_LIBRARIES @PROJECT_TARGET@)
set(US_@PROJECT_NAME@_RUNTIME_LIBRARY_DIRS "@PACKAGE_CONFIG_RUNTIME_LIBRARY_DIR@")

+include(CMakeFindDependencyMacro)
+find_dependency(Boost COMPONENTS asio nowide CONFIG)
+find_dependency(absl CONFIG)
+
if(NOT TARGET @PROJECT_TARGET@)
include("${CMAKE_CURRENT_LIST_DIR}/us@[email protected]")
endif()
diff --git a/compendium/CMakeLists.txt b/compendium/CMakeLists.txt
index a5713313ec..d26ac7e4fe 100644
--- a/compendium/CMakeLists.txt
+++ b/compendium/CMakeLists.txt
@@ -1,3 +1,4 @@
+find_package(Boost COMPONENTS asio CONFIG REQUIRED)
if(US_BUILD_TESTING)
add_subdirectory(test_bundles)
endif()
diff --git a/compendium/ConfigurationAdmin/src/CMAsyncWorkService.cpp b/compendium/ConfigurationAdmin/src/CMAsyncWorkService.cpp
index 50f02e6e1f..fdfa45d991 100644
--- a/compendium/ConfigurationAdmin/src/CMAsyncWorkService.cpp
+++ b/compendium/ConfigurationAdmin/src/CMAsyncWorkService.cpp
@@ -22,10 +22,10 @@

#include "CMAsyncWorkService.hpp"

-#include "boost/asio/async_result.hpp"
-#include "boost/asio/packaged_task.hpp"
-#include "boost/asio/post.hpp"
-#include "boost/asio/thread_pool.hpp"
+#include <boost/asio/async_result.hpp>
+#include <boost/asio/packaged_task.hpp>
+#include <boost/asio/post.hpp>
+#include <boost/asio/thread_pool.hpp>

namespace cppmicroservices
{
diff --git a/compendium/ConfigurationAdmin/src/CMakeLists.txt b/compendium/ConfigurationAdmin/src/CMakeLists.txt
index f2eca66ce7..8d7c8bd671 100644
--- a/compendium/ConfigurationAdmin/src/CMakeLists.txt
+++ b/compendium/ConfigurationAdmin/src/CMakeLists.txt
@@ -25,7 +25,7 @@ set(_private_headers
)

add_library(ConfigurationAdminObjs OBJECT ${_srcs} ${_private_headers})
-
+target_link_libraries(ConfigurationAdminObjs PULBIC Boost::asio)
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
get_property(_compile_flags TARGET ConfigurationAdminObjs PROPERTY COMPILE_FLAGS)
set_property(TARGET ConfigurationAdminObjs PROPERTY COMPILE_FLAGS "${_compile_flags} -fPIC")
diff --git a/compendium/DeclarativeServices/CMakeLists.txt b/compendium/DeclarativeServices/CMakeLists.txt
index 24f2820fa5..cb518781b4 100644
--- a/compendium/DeclarativeServices/CMakeLists.txt
+++ b/compendium/DeclarativeServices/CMakeLists.txt
@@ -37,14 +37,14 @@ endif()
add_compile_definitions(BOOST_DATE_TIME_NO_LIB)
add_compile_definitions(BOOST_REGEX_NO_LIB)

-
+find_package(Boost COMPONENTS asio CONFIG REQUIRED)
usMacroCreateBundle(DeclarativeServices
VERSION "1.5.10"
DEPENDS Framework
TARGET DeclarativeServices
SYMBOLIC_NAME declarative_services
EMBED_RESOURCE_METHOD LINK
- LINK_LIBRARIES ${_link_libraries} usServiceComponent usAsyncWorkService
+ LINK_LIBRARIES ${_link_libraries} usServiceComponent usAsyncWorkService Boost::asio
PRIVATE_HEADERS ${_ds_private_headers}
SOURCES $<TARGET_OBJECTS:DeclarativeServicesObjs> src/SCRActivator.cpp
BINARY_RESOURCES manifest.json
diff --git a/compendium/DeclarativeServices/src/CMakeLists.txt b/compendium/DeclarativeServices/src/CMakeLists.txt
index d25961b6d7..9283babe46 100644
--- a/compendium/DeclarativeServices/src/CMakeLists.txt
+++ b/compendium/DeclarativeServices/src/CMakeLists.txt
@@ -79,8 +79,9 @@ set(_private_headers
metadata/ServiceMetadata.hpp
metadata/Util.hpp
)
-
+find_package(Boost COMPONENTS asio CONFIG REQUIRED)
add_library(DeclarativeServicesObjs OBJECT ${_srcs} ${_private_headers})
+target_link_libraries(DeclarativeServicesObjs PUBLIC Boost::asio)

if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
get_property(_compile_flags TARGET DeclarativeServicesObjs PROPERTY COMPILE_FLAGS)
diff --git a/compendium/DeclarativeServices/src/SCRAsyncWorkService.cpp b/compendium/DeclarativeServices/src/SCRAsyncWorkService.cpp
index ffc93e9e86..1b9af7bd6c 100644
--- a/compendium/DeclarativeServices/src/SCRAsyncWorkService.cpp
+++ b/compendium/DeclarativeServices/src/SCRAsyncWorkService.cpp
@@ -22,10 +22,10 @@

#include "SCRAsyncWorkService.hpp"

-#include "boost/asio/async_result.hpp"
-#include "boost/asio/packaged_task.hpp"
-#include "boost/asio/post.hpp"
-#include "boost/asio/thread_pool.hpp"
+#include <boost/asio/async_result.hpp>
+#include <boost/asio/packaged_task.hpp>
+#include <boost/asio/post.hpp>
+#include <boost/asio/thread_pool.hpp>

namespace cppmicroservices
{
diff --git a/compendium/DeclarativeServices/src/manager/ComponentConfigurationImpl.cpp b/compendium/DeclarativeServices/src/manager/ComponentConfigurationImpl.cpp
index c4483a98c1..84d4217e7a 100644
--- a/compendium/DeclarativeServices/src/manager/ComponentConfigurationImpl.cpp
+++ b/compendium/DeclarativeServices/src/manager/ComponentConfigurationImpl.cpp
@@ -30,7 +30,7 @@
#include "ReferenceManager.hpp"
#include "ReferenceManagerImpl.hpp"
#include "RegistrationManager.hpp"
-#include "boost/asio/post.hpp"
+#include <boost/asio/post.hpp>
#include "cppmicroservices/servicecomponent/ComponentConstants.hpp"
#include "states/CCUnsatisfiedReferenceState.hpp"
#include "states/ComponentConfigurationState.hpp"
diff --git a/tools/rc/CMakeLists.txt b/tools/rc/CMakeLists.txt
index c4a36f8dd1..ffcf13e44a 100644
--- a/tools/rc/CMakeLists.txt
+++ b/tools/rc/CMakeLists.txt
@@ -19,9 +19,8 @@ set_property(TARGET ${US_RCC_EXECUTABLE_TARGET} PROPERTY OUTPUT_NAME ${US_RCC_EX
if(WIN32)
target_link_libraries(${US_RCC_EXECUTABLE_TARGET} Shlwapi)
endif()
-
-target_link_libraries(${US_RCC_EXECUTABLE_TARGET} nowide::nowide)
-target_include_directories(${US_RCC_EXECUTABLE_TARGET} PRIVATE ${CppMicroServices_SOURCE_DIR}/third_party/boost/nowide/include)
+find_package(Boost COMPONENTS nowide CONFIG REQUIRED)
+target_link_libraries(${US_RCC_EXECUTABLE_TARGET} Boost::nowide)

set_property(TARGET ${US_RCC_EXECUTABLE_TARGET} APPEND PROPERTY
COMPILE_DEFINITIONS "MINIZ_NO_ARCHIVE_READING_API;MINIZ_NO_ZLIB_COMPATIBLE_NAMES")
diff --git a/tools/rc/ResourceCompiler.cpp b/tools/rc/ResourceCompiler.cpp
index a5b81d3522..4e92db4e3a 100644
--- a/tools/rc/ResourceCompiler.cpp
+++ b/tools/rc/ResourceCompiler.cpp
@@ -37,9 +37,12 @@
#include <utility>
#include <vector>

-#include <nowide/args.hpp>
-#include <nowide/fstream.hpp>
+#include <boost/nowide/args.hpp>
+#include <boost/nowide/fstream.hpp>

+namespace nowide {
+ using namespace boost::nowide;
+}
#include "optionparser.h"
#include "json/json.h"

22 changes: 9 additions & 13 deletions ports/cppmicroservices/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -2,35 +2,31 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO CppMicroServices/CppMicroservices
REF "v${VERSION}"
SHA512 4743846a8ba45e6bd320c93bb3bd443b5dac16ea0bbf55bda6212e9200a40ee29031fd74c6141de4c6b5ef9ad3e70789d13fda25b40638547782d386a12dd7e2
SHA512 26b76b124fba50a079b002867f5d349b4719833358f09712a73bc3f4370362bc27b01eb7ba31e3a0d01f101f70e5be45d5d99fe9f25216eadacc02127459d91b
HEAD_REF development
PATCHES
werror.patch
fix_strnicmp.patch
remove-wx.patch
devendor_boost_absl.patch
)

#nowide download
vcpkg_from_github(
OUT_SOURCE_PATH NOWIDE_SOURCE_PATH
REPO boostorg/nowide
REF 02f40f0b5f5686627fcddae93ff88ca399db4766
SHA512 e68e0704896726c7a94b8ace0e03c5206b4c7acd23a6b05f6fb2660abe30611ac6913cf5fab7b57eaff1990a7c28aeee8c9f526b60f7094c0c201f90b715d6c6
HEAD_REF develop
# TODO: De-vendor everything
file(REMOVE_RECURSE
"${SOURCE_PATH}/third_party/absl"
"${SOURCE_PATH}/third_party/boost"
)

file(REMOVE_RECURSE "${SOURCE_PATH}/third_party/boost/nowide")
file(RENAME "${NOWIDE_SOURCE_PATH}" "${SOURCE_PATH}/third_party/boost/nowide")

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DTOOLS_INSTALL_DIR:STRING=tools/cppmicroservices
-DAUXILIARY_INSTALL_DIR:STRING=share/cppmicroservices
-DUS_USE_SYSTEM_GTEST=TRUE
-DUS_BUILD_TESTING=FALSE
-DUS_USE_SYSTEM_BOOST=TRUE
)

vcpkg_cmake_install()
vcpkg_cmake_install(ADD_BIN_TO_PATH)

file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")

Expand Down
13 changes: 0 additions & 13 deletions ports/cppmicroservices/remove-wx.patch

This file was deleted.

6 changes: 4 additions & 2 deletions ports/cppmicroservices/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
{
"name": "cppmicroservices",
"version": "3.7.6",
"port-version": 1,
"version": "3.8.4",
"description": "An OSGi-like C++ dynamic module system and service registry",
"homepage": "https://github.com/CppMicroServices/CppMicroServices",
"license": "Apache-2.0",
"dependencies": [
"abseil",
"boost-asio",
"boost-nowide",
"gtest",
{
"name": "vcpkg-cmake",
Expand Down
4 changes: 2 additions & 2 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -1977,8 +1977,8 @@
"port-version": 0
},
"cppmicroservices": {
"baseline": "3.7.6",
"port-version": 1
"baseline": "3.8.4",
"port-version": 0
},
"cppp-reiconv": {
"baseline": "2.1.0",
Expand Down
5 changes: 5 additions & 0 deletions versions/c-/cppmicroservices.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "6139bba03bcfb25bcf76fca8ef1a2b3124eb63a1",
"version": "3.8.4",
"port-version": 0
},
{
"git-tree": "b438280ccc1012bda6457141a3dea8071711ffb9",
"version": "3.7.6",
Expand Down