diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index d731f295..71ddaaf4 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -100,6 +100,7 @@ jobs: name: ${{vars.MACOS_X64_PROFILE}} tests - uses: ./.github/actions/deploy + if: inputs.deploy with: builddir: build/Release artifact: ${{vars.MACOS_X64_PROFILE}} diff --git a/conanfile.py b/conanfile.py index 18b3e365..4575c534 100644 --- a/conanfile.py +++ b/conanfile.py @@ -110,7 +110,6 @@ def generate(self): copy(self, "*.dylib", dep.cpp_info.libdirs[0], libdir) tc = CMakeToolchain(self) - tc.cache_variables["CMAKE_INSTALL_LIBDIR"] = self.cpp.libdirs[0] tc.cache_variables["SSH2_SUPPORT"] = True tc.cache_variables["YAML_SUPPORT"] = True tc.cache_variables["CONSOLE"] = True @@ -134,7 +133,3 @@ def package(self): cmake = CMake(self) cmake.configure() cmake.install() - - def package_info(self): - self.cpp_info.libs = ["DaggyCore"] - self.cpp_info.libdirs = [self._libdir()] diff --git a/src/DaggyCore/CMakeLists.txt b/src/DaggyCore/CMakeLists.txt index c0aeb664..edf8806b 100644 --- a/src/DaggyCore/CMakeLists.txt +++ b/src/DaggyCore/CMakeLists.txt @@ -48,8 +48,7 @@ target_sources(${TARGET} aggregators/CConsole.hpp ) -target_link_libraries(${TARGET} PUBLIC Qt6::Core Qt6::Network) - +target_link_libraries(${TARGET} PUBLIC Qt6::Core) if (SSH2_SUPPORT) if(CONAN_BUILD) @@ -58,6 +57,7 @@ if (SSH2_SUPPORT) else() target_link_libraries(${TARGET} PUBLIC ssh2 crypto) endif() + target_link_libraries(${TARGET} PUBLIC Qt6::Network) target_sources(${TARGET} PRIVATE @@ -82,10 +82,9 @@ endif() if(YAML_SUPPORT) find_package(yaml-cpp REQUIRED) - target_link_libraries(${TARGET} PUBLIC yaml-cpp) + target_link_libraries(${TARGET} PUBLIC yaml-cpp::yaml-cpp) endif() - string(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UPPER) configure_file(version.h.in ${CMAKE_CURRENT_LIST_DIR}/version.h @ONLY) @@ -109,29 +108,29 @@ endif() if (NOT APPONLY_BUILD) if(UNIX) - install(TARGETS ${TARGET} - EXPORT ${TARGET}Targets - PUBLIC_HEADER FILE_SET HEADERS - LIBRARY) - install(EXPORT ${TARGET}Targets - FILE ${TARGET}Targets.cmake - NAMESPACE "${PROJECT_NAME}::" - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${TARGET}) - - include(CMakePackageConfigHelpers) - configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/Config.cmake.in - "${CMAKE_CURRENT_BINARY_DIR}/${TARGET}Config.cmake" - INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${TARGET}) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}Config.cmake + if (NOT PORTABLE_BUILD) + install(TARGETS ${TARGET} + EXPORT ${TARGET}Targets + PUBLIC_HEADER FILE_SET HEADERS + LIBRARY) + install(EXPORT ${TARGET}Targets + FILE ${TARGET}Targets.cmake + NAMESPACE "${PROJECT_NAME}::" DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${TARGET}) + include(CMakePackageConfigHelpers) + configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/Config.cmake.in + "${CMAKE_CURRENT_BINARY_DIR}/${TARGET}Config.cmake" + INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${TARGET}) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}Config.cmake + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${TARGET}) + else() + install(TARGETS ${TARGET} + LIBRARY) + endif() else() install(TARGETS ${TARGET} - PUBLIC_HEADER FILE_SET HEADERS - ARCHIVE RUNTIME) endif() include(package_deps) endif() - - diff --git a/src/DaggyCore/Config.cmake.in b/src/DaggyCore/Config.cmake.in index 2eb4293c..9deec213 100644 --- a/src/DaggyCore/Config.cmake.in +++ b/src/DaggyCore/Config.cmake.in @@ -2,5 +2,5 @@ include("${CMAKE_CURRENT_LIST_DIR}/@TARGET@Targets.cmake") -check_requred_compinents(@TARGET@) +check_required_components(@TARGET@) include(CMakeFindDependencyMacro) diff --git a/test_package/CMakeLists.txt b/test_package/CMakeLists.txt index 8e0329a7..80589f5f 100644 --- a/test_package/CMakeLists.txt +++ b/test_package/CMakeLists.txt @@ -1,9 +1,9 @@ +cmake_minimum_required(VERSION 3.31) project(DaggyPackageTest) -include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) -conan_basic_setup() - -find_package(daggy REQUIRED) +find_package(Qt6 COMPONENTS Core Network REQUIRED) +find_package(yaml-cpp REQUIRED) +find_package(DaggyCore REQUIRED) add_subdirectory(testcpp) add_subdirectory(testc) diff --git a/test_package/conanfile.py b/test_package/conanfile.py deleted file mode 100644 index f03da131..00000000 --- a/test_package/conanfile.py +++ /dev/null @@ -1,26 +0,0 @@ -import os - -from conans import ConanFile, CMake, tools - - -class DaggyTestConan(ConanFile): - settings = "os", "compiler", "build_type", "arch" - generators = "cmake", "cmake_paths", "cmake_find_package" - - def build(self): - cmake = CMake(self) - # Current dir is "test_package/build/" and CMakeLists.txt is - # in "test_package" - cmake.configure() - cmake.build() - - def imports(self): - self.copy("*.dll", dst="bin", src="bin") - self.copy("*.dylib*", dst="bin", src="lib") - self.copy('*.so*', dst='bin', src='lib') - - def test(self): - if not tools.cross_building(self): - os.chdir("bin") - self.run(".%stestcpp" % os.sep) - self.run(".%stestc" % os.sep) \ No newline at end of file diff --git a/test_package/testc/CMakeLists.txt b/test_package/testc/CMakeLists.txt index 8bb66d21..3714985f 100644 --- a/test_package/testc/CMakeLists.txt +++ b/test_package/testc/CMakeLists.txt @@ -4,4 +4,4 @@ set(CMAKE_C_STANDARD 11) set(CMAKE_C_STANDARD_REQUIRED ON) add_executable(testc ../../src/DaggyCore/tests/interface/testc/test.c) -target_link_libraries(testc daggy::daggy) \ No newline at end of file +target_link_libraries(testc daggy::DaggyCore) diff --git a/test_package/testcpp/CMakeLists.txt b/test_package/testcpp/CMakeLists.txt index ecada37f..d1d4bdde 100644 --- a/test_package/testcpp/CMakeLists.txt +++ b/test_package/testcpp/CMakeLists.txt @@ -1,7 +1,7 @@ project(testcpp LANGUAGES CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) add_executable(testcpp ../../src/DaggyCore/tests/interface/testcpp/test.cpp) -target_link_libraries(testcpp daggy::daggy) \ No newline at end of file +target_link_libraries(testcpp daggy::DaggyCore)