From 62c6db53e7030f2a04dcecd94db734c646b2d0dc Mon Sep 17 00:00:00 2001 From: Lasan Mahaliyana Date: Sun, 1 Mar 2026 09:47:46 +0530 Subject: [PATCH] updated workflow and CMakeLists.txt --- .../workflows/release-nearby-qml-tray.yaml | 1 - sharing/linux/qml_tray_app/CMakeLists.txt | 84 +++---------------- 2 files changed, 10 insertions(+), 75 deletions(-) diff --git a/.github/workflows/release-nearby-qml-tray.yaml b/.github/workflows/release-nearby-qml-tray.yaml index 25ff2f62..b5bd36b4 100644 --- a/.github/workflows/release-nearby-qml-tray.yaml +++ b/.github/workflows/release-nearby-qml-tray.yaml @@ -84,7 +84,6 @@ jobs: install -d "$INSTALL_PREFIX/lib" install -d "$INSTALL_PREFIX/include/sharing/linux" install -m 0755 "$BAZEL_BIN/sharing/linux/libnearby_connections_service_linux_shared.so" "$INSTALL_PREFIX/lib/" - patchelf --set-soname libnearby_connections_service_linux_shared.so "$INSTALL_PREFIX/lib/libnearby_connections_service_linux_shared.so" install -m 0644 "sharing/linux/nearby_connections_qt_facade.h" "$INSTALL_PREFIX/include/sharing/linux/" echo "nearby_prefix=$INSTALL_PREFIX" >> "$GITHUB_OUTPUT" diff --git a/sharing/linux/qml_tray_app/CMakeLists.txt b/sharing/linux/qml_tray_app/CMakeLists.txt index 61d375cc..a95a94da 100644 --- a/sharing/linux/qml_tray_app/CMakeLists.txt +++ b/sharing/linux/qml_tray_app/CMakeLists.txt @@ -1,53 +1,21 @@ cmake_minimum_required(VERSION 3.21) - project(nearby_qml_tray_app LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) -set(CMAKE_AUTOUIC OFF) find_package(Qt6 REQUIRED COMPONENTS Core Gui Widgets Qml Quick QuickControls2) -include(GNUInstallDirs) -set(NEARBY_INSTALL_PREFIX "/usr/local" CACHE PATH "Prefix where Nearby facade header and shared library are installed") -set(NEARBY_INCLUDE_ROOT "${NEARBY_INSTALL_PREFIX}/include" CACHE PATH "Nearby include root") -set(NEARBY_LIBRARY_DIR "${NEARBY_INSTALL_PREFIX}/lib" CACHE PATH "Nearby shared library directory") +# Where the Bazel-built Nearby .so and header were installed +set(NEARBY_PREFIX "/usr/local" CACHE PATH "Install prefix for the Nearby shared library") -find_path( - NEARBY_FACADE_INCLUDE_ROOT - NAMES sharing/linux/nearby_connections_qt_facade.h - HINTS "${NEARBY_INCLUDE_ROOT}" -) +find_library(NEARBY_LIB nearby_connections_service_linux_shared + HINTS "${NEARBY_PREFIX}/lib" REQUIRED) -find_library( - NEARBY_CONNECTIONS_SHARED_LIB - NAMES nearby_connections_service_linux_shared - HINTS "${NEARBY_LIBRARY_DIR}" -) - -if(NOT NEARBY_FACADE_INCLUDE_ROOT) - message(FATAL_ERROR - "Could not find sharing/linux/nearby_connections_qt_facade.h. " - "Install it first (for example with sharing/linux/install_nearby_connections_service.sh) " - "or set -DNEARBY_INCLUDE_ROOT=/include.") -endif() - -if(NOT NEARBY_CONNECTIONS_SHARED_LIB) - message(FATAL_ERROR - "Could not find libnearby_connections_service_linux_shared.so. " - "Install it first (for example with sharing/linux/install_nearby_connections_service.sh) " - "or set -DNEARBY_LIBRARY_DIR=/lib.") -endif() - -add_library(nearby_connections_service_linux_installed SHARED IMPORTED GLOBAL) -set_target_properties( - nearby_connections_service_linux_installed - PROPERTIES - IMPORTED_LOCATION "${NEARBY_CONNECTIONS_SHARED_LIB}" - INTERFACE_INCLUDE_DIRECTORIES "${NEARBY_FACADE_INCLUDE_ROOT}" -) +find_path(NEARBY_INCLUDE sharing/linux/nearby_connections_qt_facade.h + HINTS "${NEARBY_PREFIX}/include" REQUIRED) qt_add_executable(nearby_qml_file_tray_app file_share_tray_main.cpp @@ -56,41 +24,9 @@ qt_add_executable(nearby_qml_file_tray_app resources_file_share.qrc ) -target_include_directories(nearby_qml_file_tray_app PRIVATE - "${CMAKE_CURRENT_LIST_DIR}" - "${NEARBY_FACADE_INCLUDE_ROOT}" -) +target_include_directories(nearby_qml_file_tray_app PRIVATE "${NEARBY_INCLUDE}") + target_link_libraries(nearby_qml_file_tray_app PRIVATE - Qt6::Core - Qt6::Gui - Qt6::Widgets - Qt6::Qml - Qt6::Quick - Qt6::QuickControls2 - nearby_connections_service_linux_installed + Qt6::Core Qt6::Gui Qt6::Widgets Qt6::Qml Qt6::Quick Qt6::QuickControls2 + "${NEARBY_LIB}" ) - -get_filename_component(NEARBY_CONNECTIONS_SHARED_LIB_DIR "${NEARBY_CONNECTIONS_SHARED_LIB}" DIRECTORY) - -set_target_properties(nearby_qml_file_tray_app PROPERTIES - BUILD_RPATH "${NEARBY_CONNECTIONS_SHARED_LIB_DIR}" - INSTALL_RPATH "$ORIGIN" -) - -install(TARGETS nearby_qml_file_tray_app - RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" -) - -install(FILES "${NEARBY_CONNECTIONS_SHARED_LIB}" - DESTINATION "${CMAKE_INSTALL_BINDIR}" -) - -# Convenience build target for the file tray app. -add_custom_target(build_file_tray_app - DEPENDS nearby_qml_file_tray_app -) - -set(CPACK_GENERATOR "ZIP") -set(CPACK_PACKAGE_NAME "nearby_qml_tray_app") -set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") -include(CPack)