diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 3ab799a..0caca07 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -22,6 +22,15 @@ jobs: - name: Build Project run: cmake --build build --config Release + - name: Install Project + run: cmake --install build --prefix install + + - name: Upload Project + uses: actions/upload-artifact@v4.0.0 + with: + name: package-${{ matrix.os }} + path: install + build-examples: name: Build Examples runs-on: ${{ matrix.os }}-latest diff --git a/.gitignore b/.gitignore index fbf036d..855c9bc 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ !.git* build +install diff --git a/CMakeLists.txt b/CMakeLists.txt index e83844b..e53a094 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -86,3 +86,23 @@ add_subdirectory(components) if(NOT_SUBPROJECT AND BUILD_DOCS) add_subdirectory(docs) endif() + +install( + TARGETS errors errors_format + EXPORT errors_targets + LIBRARY DESTINATION lib + RUNTIME DESTINATION bin + FILE_SET HEADERS +) + +install( + EXPORT errors_targets + FILE ErrorsTargets.cmake + NAMESPACE errors:: + DESTINATION lib/cmake/Errors +) + +install( + FILES cmake/ErrorsConfig.cmake + DESTINATION lib/cmake/Errors +) diff --git a/cmake/ErrorsConfig.cmake b/cmake/ErrorsConfig.cmake new file mode 100644 index 0000000..55b6e0a --- /dev/null +++ b/cmake/ErrorsConfig.cmake @@ -0,0 +1,2 @@ +find_package(FMT REQUIRED) +include(${CMAKE_CURRENT_LIST_DIR}/ErrorsTargets.cmake)