From 752cda67159058c1c3cc1b292d612153a1dbbf8c Mon Sep 17 00:00:00 2001 From: Steve Peters Date: Thu, 19 Aug 2021 00:25:36 -0700 Subject: [PATCH] Find ign program instead of ignition-tools (#57) The find_package(ignition-tools) call was removed in #56, but this disabled UNIT_ign_TEST. Search for the ign program directly and adjust test logic accordingly. Signed-off-by: Steve Peters --- CMakeLists.txt | 5 +++++ loader/CMakeLists.txt | 4 ++-- loader/src/ign_TEST.cc | 10 +++++----- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6a882b16..cc9176f4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,6 +37,11 @@ ign_find_package(DL PRETTY libdl PURPOSE "Required for loading plugins") +#-------------------------------------- +# Find ignition-tools +find_program(IGN_TOOLS_PROGRAM ign) + + #============================================================================ # Configure the build #============================================================================ diff --git a/loader/CMakeLists.txt b/loader/CMakeLists.txt index 30d4c8cd..6b0b049e 100644 --- a/loader/CMakeLists.txt +++ b/loader/CMakeLists.txt @@ -4,7 +4,7 @@ ign_get_libsources_and_unittests(sources tests) # Disable ign_TEST if ignition-tools is not found -if (MSVC OR NOT IGNITION-TOOLS_BINARY_DIRS) +if (MSVC OR NOT IGN_TOOLS_PROGRAM) list(REMOVE_ITEM tests src/ign_TEST.cc) endif() @@ -35,7 +35,7 @@ foreach(test ${test_targets}) "IGNDummyPlugins_LIB=\"$\"") target_compile_definitions(${test} PRIVATE - "IGN_PATH=\"${IGNITION-TOOLS_BINARY_DIRS}\"") + "IGN_PATH=\"${IGN_TOOLS_PROGRAM}\"") target_compile_definitions(${test} PRIVATE "IGN_VERSION_FULL=\"${PROJECT_VERSION_FULL}\"") diff --git a/loader/src/ign_TEST.cc b/loader/src/ign_TEST.cc index eb97ed4b..e5036537 100644 --- a/loader/src/ign_TEST.cc +++ b/loader/src/ign_TEST.cc @@ -58,7 +58,7 @@ std::string custom_exec_str(std::string _cmd) TEST(ignTest, PluginInfoNonexistentLibrary) { // Path to ign executable - std::string ign = std::string(IGN_PATH) + "/ign"; + std::string ign = std::string(IGN_PATH); std::string output = custom_exec_str(ign + " plugin --info --plugin " + "/path/to/libDoesNotExist.so"); @@ -76,7 +76,7 @@ TEST(ignTest, PluginInfoNonexistentLibrary) TEST(ignTest, PluginInfoNonLibrary) { // Path to ign executable - std::string ign = std::string(IGN_PATH) + "/ign"; + std::string ign = std::string(IGN_PATH); std::string output = custom_exec_str(ign + " plugin --info --plugin " + std::string(IGN_PLUGIN_SOURCE_DIR) + "/core/src/Plugin.cc"); @@ -94,7 +94,7 @@ TEST(ignTest, PluginInfoNonLibrary) TEST(ignTest, PluginInfoNonPluginLibrary) { // Path to ign executable - std::string ign = std::string(IGN_PATH) + "/ign"; + std::string ign = std::string(IGN_PATH); std::string output = custom_exec_str(ign + " plugin --info --plugin " + IGN_PLUGIN_LIB); @@ -113,7 +113,7 @@ TEST(ignTest, PluginInfoNonPluginLibrary) TEST(ignTest, PluginInfoDummyPlugins) { // Path to ign executable - std::string ign = std::string(IGN_PATH) + "/ign"; + std::string ign = std::string(IGN_PATH); std::string output = custom_exec_str(ign + " plugin --info --plugin " + IGNDummyPlugins_LIB); @@ -152,7 +152,7 @@ TEST(ignTest, PluginInfoDummyPlugins) TEST(ignTest, PluginInfoVerboseDummyPlugins) { // Path to ign executable - std::string ign = std::string(IGN_PATH) + "/ign"; + std::string ign = std::string(IGN_PATH); std::string output = custom_exec_str(ign + " plugin --info --plugin " + IGNDummyPlugins_LIB + " --verbose");