From b5ab66d01b609f9375b240752da382a24bf5f2cd Mon Sep 17 00:00:00 2001 From: Scott M Anderson Date: Fri, 15 May 2026 13:07:24 -0600 Subject: [PATCH 1/2] cmake: consolidate exports and improve target handling - Include BuildFlatBuffers.cmake conditionally in xpflatbuffers - Improve flatc executable detection with fallback logic - Consolidate FlatcTargets and FlatBuffersSharedTargets into single export - Add DEFAULT_TARGETS to extern package configuration - Simplify package configuration by removing redundant includes --- CMake/xpflatbuffers.cmake | 13 +++++++++++-- CMakeLists.txt | 23 +++++++---------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/CMake/xpflatbuffers.cmake b/CMake/xpflatbuffers.cmake index 62cb0c7757..4fda7e9913 100644 --- a/CMake/xpflatbuffers.cmake +++ b/CMake/xpflatbuffers.cmake @@ -13,6 +13,9 @@ function(xpFlatBuffersBuild) if(NOT P_GENERATED_INCLUDES_DIR) set(P_GENERATED_INCLUDES_DIR ${CMAKE_CURRENT_BINARY_DIR}/fbs) endif() + if(NOT COMMAND build_flatbuffers) + include(${CMAKE_CURRENT_LIST_DIR}/BuildFlatBuffers.cmake) + endif() build_flatbuffers("${P_SCHEMAS}" "${P_SCHEMA_INCLUDE_DIRS}" ${P_CUSTOM_TARGET_NAME} "${P_ADDITIONAL_DEPS}" "${P_GENERATED_INCLUDES_DIR}" "${P_BINARY_SCHEMAS_DIR}" "${P_COPY_TEXT_SCHEMAS_DIR}" @@ -32,11 +35,17 @@ function(xpFlatBuffersBuildTS) set(oneValueArgs OUTPUT_DIR TARGET) set(multiValueArgs SCHEMAS) cmake_parse_arguments(P "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - xpGetPkgVar(flatbuffers FLATC_EXECUTABLE) # sets FLATBUFFERS_FLATC_EXECUTABLE + if(FLATBUFFERS_FLATC_EXECUTABLE) + set(FLATC ${FLATBUFFERS_FLATC_EXECUTABLE}) + elseif(TARGET flatbuffers::flatc) + set(FLATC flatbuffers::flatc) + else() + set(FLATC flatc) + endif() set(cmdFile "${CMAKE_CURRENT_BINARY_DIR}/${P_TARGET}_fbs_ts_cmd") file(GLOB schemas ${P_SCHEMAS}) add_custom_command(OUTPUT ${cmdFile} - COMMAND $ --ts -o ${P_OUTPUT_DIR} ${schemas} + COMMAND ${FLATC} --ts -o ${P_OUTPUT_DIR} ${schemas} COMMAND ${CMAKE_COMMAND} -E touch ${cmdFile} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${schemas} diff --git a/CMakeLists.txt b/CMakeLists.txt index 9012f89f8f..e6bee174b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -618,20 +618,11 @@ if(FLATBUFFERS_INSTALL) if(COMMAND xpExternPackage) string(TOUPPER ${CMAKE_PROJECT_NAME} PRJ) string(JOIN "\n" EXT2 - "# includes follow repo CMake/flatbuffers-config.cmake" - "include(\${CMAKE_CURRENT_LIST_DIR}/FlatcTargets.cmake OPTIONAL)" - "include(\${CMAKE_CURRENT_LIST_DIR}/FlatBuffersSharedTargets.cmake OPTIONAL)" - "include(\${CMAKE_CURRENT_LIST_DIR}/BuildFlatBuffers.cmake OPTIONAL)" "include(\${CMAKE_CURRENT_LIST_DIR}/xpflatbuffers.cmake OPTIONAL)" "" ) - string(JOIN "\n" EXT3 - "set(${PRJ}_FLATC_EXECUTABLE flatbuffers::flatc)" - "list(APPEND reqVars ${PRJ}_FLATC_EXECUTABLE)" - "" - ) xpExternPackage(REPO_NAME flatbuffers TARGETS_FILE FlatBuffersTargets - EXE flatc LIBRARIES flatbuffers + EXE flatc LIBRARIES flatbuffers DEFAULT_TARGETS flatbuffers BASE v${CMAKE_PROJECT_VERSION} XPDIFF "patch" WEB "http://google.github.io/flatbuffers/" UPSTREAM "github.com/google/flatbuffers" DESC "efficient cross platform serialization library" @@ -672,13 +663,13 @@ if(FLATBUFFERS_INSTALL) if(FLATBUFFERS_BUILD_FLATC) install( - TARGETS flatc EXPORT FlatcTargets + TARGETS flatc EXPORT FlatBuffersTargets RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) install( - EXPORT FlatcTargets - FILE FlatcTargets.cmake + EXPORT FlatBuffersTargets + FILE FlatBuffersTargets.cmake NAMESPACE flatbuffers:: DESTINATION ${FB_CMAKE_DIR} ) @@ -686,7 +677,7 @@ if(FLATBUFFERS_INSTALL) if(FLATBUFFERS_BUILD_SHAREDLIB) install( - TARGETS flatbuffers_shared EXPORT FlatBuffersSharedTargets + TARGETS flatbuffers_shared EXPORT FlatBuffersTargets ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} @@ -694,8 +685,8 @@ if(FLATBUFFERS_INSTALL) ) install( - EXPORT FlatBuffersSharedTargets - FILE FlatBuffersSharedTargets.cmake + EXPORT FlatBuffersTargets + FILE FlatBuffersTargets.cmake NAMESPACE flatbuffers:: DESTINATION ${FB_CMAKE_DIR} ) From 0773150b6529c97b5f9385d9bca13f36ce178bd5 Mon Sep 17 00:00:00 2001 From: Scott M Anderson Date: Fri, 15 May 2026 13:10:14 -0600 Subject: [PATCH 2/2] update .github/release-tag.json --- .github/release-tag.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/release-tag.json b/.github/release-tag.json index 3b85281a6e..c8ade6b810 100644 --- a/.github/release-tag.json +++ b/.github/release-tag.json @@ -1,4 +1,4 @@ { - "message": "xpro version 25.2.10.4 tag", - "tag": "xpv25.2.10.4" + "message": "xpro version 25.2.10.5 tag", + "tag": "xpv25.2.10.5" }