From 7825a677ba397960ddfc0023c0a8a52634bdac7e Mon Sep 17 00:00:00 2001 From: Hugo Talbot Date: Tue, 6 Jun 2023 10:28:21 +0200 Subject: [PATCH 1/4] change path to test in workflow using bin/ --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b961b4e..a7542fa 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -90,9 +90,7 @@ jobs: echo "DYLD_LIBRARY_PATH=$WORKSPACE_ARTIFACT_PATH/lib:$SOFA_ROOT/lib:$DYLD_LIBRARY_PATH" | tee -a $GITHUB_ENV fi echo "LD_LIBRARY_PATH=$WORKSPACE_ARTIFACT_PATH/lib:$SOFA_ROOT/lib:$LD_LIBRARY_PATH" | tee -a $GITHUB_ENV - # Add execution right on the tests - chmod +x $WORKSPACE_BUILD_PATH/PluginExample_test/PluginExample_test${{ steps.sofa.outputs.exe }} - + - name: Check environment for tests shell: bash run: | @@ -109,8 +107,10 @@ jobs: if: always() shell: bash run: | + # Add execution right on the tests + chmod +x $WORKSPACE_BUILD_PATH/bin/PluginExample_test${{ steps.sofa.outputs.exe }} cd $WORKSPACE_BUILD_PATH - ./PluginExample_test/PluginExample_test${{ steps.sofa.outputs.exe }} + ./bin/PluginExample_test${{ steps.sofa.outputs.exe }} deploy: name: Deploy artifacts From ef166377cc7d779a1b300375c8d976da0a4771c8 Mon Sep 17 00:00:00 2001 From: Hugo Talbot Date: Tue, 6 Jun 2023 10:39:36 +0200 Subject: [PATCH 2/4] use NG package names --- CMakeLists.txt | 8 ++++---- PluginExampleConfig.cmake.in | 5 +++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7519f5f..6d03546 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,9 +3,9 @@ project(PluginExample VERSION 1.0 LANGUAGES CXX) # Find and load CMake configuration of packages containing this plugin's dependencies ## Mandatory dependencies -find_package(SofaBase REQUIRED) # Dependency to SofaBaseVisual +find_package(Sofa.Framework REQUIRED) # Dependency to SofaBaseVisual ## Optional dependencies -sofa_find_package(SofaGui) # Dependency to SofaGuiQt +sofa_find_package(Sofa.GUI) # Dependency to SofaGuiQt sofa_find_package(Qt5 COMPONENTS Core) # Dependency to Qt5Core (needed for qt5_wrap_cpp) # List all files @@ -50,10 +50,10 @@ endif() add_library(${PROJECT_NAME} SHARED ${HEADER_FILES_TO_MOC} ${MOCCED_HEADER_FILES} ${HEADER_FILES} ${SOURCE_FILES} ${README_FILES}) # Link the plugin library to its dependency(ies). -target_link_libraries(${PROJECT_NAME} SofaBaseVisual) +target_link_libraries(${PROJECT_NAME} Sofa.Framework Sofa.Component.Visual) # Link with the optional GUI dependencies. if(Qt5Core_FOUND AND SofaGui_FOUND) - target_link_libraries(${PROJECT_NAME} SofaGuiQt) + target_link_libraries(${PROJECT_NAME} Sofa.GUI.Qt) endif() # Create package Config, Version & Target files. diff --git a/PluginExampleConfig.cmake.in b/PluginExampleConfig.cmake.in index 83d6ee0..6da780c 100644 --- a/PluginExampleConfig.cmake.in +++ b/PluginExampleConfig.cmake.in @@ -6,11 +6,12 @@ set(PLUGINEXAMPLE_HAVE_SOFAGUI @PLUGINEXAMPLE_HAVE_SOFAGUI@) set(PLUGINEXAMPLE_HAVE_QT5CORE @PLUGINEXAMPLE_HAVE_QT5CORE@) -find_package(SofaBase QUIET REQUIRED) +find_package(Sofa.Framework QUIET REQUIRED) # Dependency to SofaBaseVisual if(PLUGINEXAMPLE_HAVE_SOFAGUI) - find_package(SofaGui QUIET REQUIRED) + find_package(Sofa.GUI QUIET REQUIRED) endif() + if(PLUGINEXAMPLE_HAVE_QT5CORE) find_package(Qt5 COMPONENTS Core QUIET REQUIRED) endif() From 99f4ece6412cb4dfb9896b8e166d40c4f125b209 Mon Sep 17 00:00:00 2001 From: Hugo Talbot Date: Tue, 6 Jun 2023 11:05:30 +0200 Subject: [PATCH 3/4] attempt to fix Qt5 error at config 1/n --- CMakeLists.txt | 13 ++++++++----- PluginExampleConfig.cmake.in | 7 ++++--- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6d03546..cdf7330 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,8 +5,8 @@ project(PluginExample VERSION 1.0 LANGUAGES CXX) ## Mandatory dependencies find_package(Sofa.Framework REQUIRED) # Dependency to SofaBaseVisual ## Optional dependencies -sofa_find_package(Sofa.GUI) # Dependency to SofaGuiQt -sofa_find_package(Qt5 COMPONENTS Core) # Dependency to Qt5Core (needed for qt5_wrap_cpp) +find_package(Sofa.GUI.Common QUIET REQUIRED) # Dependency to SofaGuiQt +find_package(Qt5 COMPONENTS Core) # Dependency to Qt5Core (needed for qt5_wrap_cpp) # List all files set(PLUGINEXAMPLE_SRC_DIR src/PluginExample) @@ -32,7 +32,7 @@ set(README_FILES README.md ) -if(Qt5Core_FOUND AND SofaGui_FOUND) +if(Qt5Core_FOUND AND Sofa.GUI.Common_FOUND) message(STATUS "GUI components have been detected, enable GUI-related components") list(APPEND HEADER_FILES_TO_MOC ${PLUGINEXAMPLE_SRC_DIR}/MyDataWidgetUnsigned.h @@ -52,10 +52,13 @@ add_library(${PROJECT_NAME} SHARED ${HEADER_FILES_TO_MOC} ${MOCCED_HEADER_FILES} # Link the plugin library to its dependency(ies). target_link_libraries(${PROJECT_NAME} Sofa.Framework Sofa.Component.Visual) # Link with the optional GUI dependencies. -if(Qt5Core_FOUND AND SofaGui_FOUND) - target_link_libraries(${PROJECT_NAME} Sofa.GUI.Qt) + +sofa_find_package(Sofa.GUI.Qt QUIET) +if(Sofa.GUI.Qt_FOUND) + target_link_libraries(${PROJECT_NAME} Sofa.GUI.Qt) endif() + # Create package Config, Version & Target files. # Deploy the headers, resources, scenes & examples. # Set the plugin 'relocatable' if built within SOFA. diff --git a/PluginExampleConfig.cmake.in b/PluginExampleConfig.cmake.in index 6da780c..8aed022 100644 --- a/PluginExampleConfig.cmake.in +++ b/PluginExampleConfig.cmake.in @@ -3,13 +3,14 @@ @PACKAGE_GUARD@ @PACKAGE_INIT@ -set(PLUGINEXAMPLE_HAVE_SOFAGUI @PLUGINEXAMPLE_HAVE_SOFAGUI@) +set(PLUGINEXAMPLE_HAVE_SOFAGUIQT @PLUGINEXAMPLE_HAVE_SOFAGUIQT@) set(PLUGINEXAMPLE_HAVE_QT5CORE @PLUGINEXAMPLE_HAVE_QT5CORE@) find_package(Sofa.Framework QUIET REQUIRED) # Dependency to SofaBaseVisual +find_package(Sofa.GUI.Common QUIET REQUIRED) # Dependency to SofaGuiQt -if(PLUGINEXAMPLE_HAVE_SOFAGUI) - find_package(Sofa.GUI QUIET REQUIRED) +if(PLUGINEXAMPLE_HAVE_SOFAGUIQT) + find_package(Sofa.GUI.Qt QUIET REQUIRED) endif() if(PLUGINEXAMPLE_HAVE_QT5CORE) From d1e06fef8171078d4be800b4029184da96138d3a Mon Sep 17 00:00:00 2001 From: Hugo Talbot Date: Tue, 6 Jun 2023 11:17:56 +0200 Subject: [PATCH 4/4] attempt to fix Qt5 error at config 2/n --- CMakeLists.txt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index cdf7330..4c1178e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,7 +6,6 @@ project(PluginExample VERSION 1.0 LANGUAGES CXX) find_package(Sofa.Framework REQUIRED) # Dependency to SofaBaseVisual ## Optional dependencies find_package(Sofa.GUI.Common QUIET REQUIRED) # Dependency to SofaGuiQt -find_package(Qt5 COMPONENTS Core) # Dependency to Qt5Core (needed for qt5_wrap_cpp) # List all files set(PLUGINEXAMPLE_SRC_DIR src/PluginExample) @@ -32,7 +31,9 @@ set(README_FILES README.md ) -if(Qt5Core_FOUND AND Sofa.GUI.Common_FOUND) +sofa_find_package(Sofa.GUI.Qt QUIET) + +if(Sofa.GUI.Common_FOUND AND Sofa.GUI.Qt_FOUND) message(STATUS "GUI components have been detected, enable GUI-related components") list(APPEND HEADER_FILES_TO_MOC ${PLUGINEXAMPLE_SRC_DIR}/MyDataWidgetUnsigned.h @@ -43,6 +44,7 @@ if(Qt5Core_FOUND AND Sofa.GUI.Common_FOUND) # [Qt] Create moc code. qt5_wrap_cpp(MOCCED_HEADER_FILES ${HEADER_FILES_TO_MOC}) + endif() @@ -51,11 +53,10 @@ add_library(${PROJECT_NAME} SHARED ${HEADER_FILES_TO_MOC} ${MOCCED_HEADER_FILES} # Link the plugin library to its dependency(ies). target_link_libraries(${PROJECT_NAME} Sofa.Framework Sofa.Component.Visual) -# Link with the optional GUI dependencies. -sofa_find_package(Sofa.GUI.Qt QUIET) -if(Sofa.GUI.Qt_FOUND) - target_link_libraries(${PROJECT_NAME} Sofa.GUI.Qt) +if(Sofa.GUI.Common_FOUND AND Sofa.GUI.Qt_FOUND) + # Link with the optional GUI dependencies. + target_link_libraries(${PROJECT_NAME} Sofa.GUI.Qt) endif()