From a96a95c7550359588b54e04c847789d6c4fbda09 Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 14:38:26 -0400 Subject: [PATCH 1/9] Trying to fix installing --- CMakeLists.txt | 2 +- cmake/InstallRespond.cmake | 64 +++++++++++++++++++++--------- cmake/respondCPackOptions.cmake.in | 12 +++--- cmake/respondConfig.cmake.in | 4 -- tests/CMakeLists.txt | 3 +- 5 files changed, 55 insertions(+), 30 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ac8cf8b6..de011a57 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -99,7 +99,7 @@ if (RESPOND_CALCULATE_COVERAGE) endif() target_link_libraries(respond_model -PUBLIC +INTERFACE Eigen3::Eigen PRIVATE ${private_deps} diff --git a/cmake/InstallRespond.cmake b/cmake/InstallRespond.cmake index ffc9c1d7..62a8d7d5 100644 --- a/cmake/InstallRespond.cmake +++ b/cmake/InstallRespond.cmake @@ -1,44 +1,70 @@ -message(STATUS "Installing respond version ${RESPOND_VERSION}...") - set(export_dest_dir "${CMAKE_INSTALL_LIBDIR}/respond") set(export_cmake_dir "${CMAKE_INSTALL_LIBDIR}/cmake/respond") -set(version_config_file "${CMAKE_CURRENT_BINARY_DIR}/respondConfigVersion.cmake") #------------------------------------------------------------------------------- # Include files #------------------------------------------------------------------------------- -message("Installing respond to ${CMAKE_INSTALL_FULL_LIBDIR} and ${CMAKE_INSTALL_FULL_INCLUDEDIR}...") +message(STATUS "Installing respond version ${RESPOND_VERSION} to ${CMAKE_INSTALL_FULL_LIBDIR} and ${CMAKE_INSTALL_FULL_INCLUDEDIR}...") -install( - TARGETS respond_model +install(TARGETS respond_model EXPORT respondTargets - FILE_SET HEADERS + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + RUNTIME DESTINATION bin + INCLUDES DESTINATION include + FILE_SET HEADERS DESTINATION include ) -install( - EXPORT respondTargets - DESTINATION ${export_cmake_dir} - NAMESPACE respond:: -) +# respond_model is the full target and HEADERS is the list of header files +# It associates the target with the EXPORT definition which is then installed. +# install( +# TARGETS respond_model +# EXPORT respondTargets +# FILE_SET HEADERS +# ) + +# This actually installs the exports to the specified destination and adds the +# namespace to the targets. +# install( +# EXPORT respondTargets +# DESTINATION ${export_cmake_dir} +# NAMESPACE respond:: +# ) include(CMakePackageConfigHelpers) +# Setup the Version config file +write_basic_package_version_file( + "${CMAKE_CURRENT_BINARY_DIR}/respond/respondConfigVersion.cmake" + VERSION ${RESPOND_VERSION} # Variable set in root CMakeLists.txt + COMPATIBILITY AnyNewerVersion +) + +# export the targets to a file and add the prefix +export(EXPORT respondTargets + FILE "${CMAKE_CURRENT_BINARY_DIR}/respond/respondTargets.cmake" + NAMESPACE respond:: +) + configure_file( "${PROJECT_SOURCE_DIR}/cmake/respondConfig.cmake.in" - "${PROJECT_BINARY_DIR}/respondConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/respond/respondConfig.cmake" @ONLY ) -set(project_config "${PROJECT_BINARY_DIR}/respondConfig.cmake") -write_basic_package_version_file( - ${version_config_file} - COMPATIBILITY ExactVersion +set(ConfigPackageLocation lib/cmake/respond) +install( + EXPORT respondTargets + FILE respondTargets.cmake + NAMESPACE respond:: + DESTINATION ${ConfigPackageLocation} ) + install( FILES - ${project_config} - ${version_config_file} + "${CMAKE_CURRENT_BINARY_DIR}/respond/respondConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/respond/respondConfigVersion.cmake" DESTINATION ${export_cmake_dir} ) diff --git a/cmake/respondCPackOptions.cmake.in b/cmake/respondCPackOptions.cmake.in index 404fbf90..5f27b50f 100644 --- a/cmake/respondCPackOptions.cmake.in +++ b/cmake/respondCPackOptions.cmake.in @@ -9,7 +9,7 @@ set(CPACK_PROJECT_URL "https://github.com/SyndemicsLab/respond") set(CPACK_PACKAGE_NAME @PROJECT_NAME@) set(CPACK_PACKAGE_VENDOR "Syndemics Lab at Boston Medical Center") set(CPACK_PACKAGE_CONTACT "Benjamin Linas ") -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "A cohort based Markov model studying various cost impacts in treating substance use disorder.") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The RESPOND (Researching Effective Strategies to Prevent Opioid Use Disorder) Model Library. This library acts as a tool for building decision science markov models to study the treatment dynamics of substance use disorder.") set(CPACK_PACKAGE_VERSION_MAJOR @PROJECT_VERSION_MAJOR@) set(CPACK_PACKAGE_VERSION_MINOR @PROJECT_VERSION_MINOR@) set(CPACK_PACKAGE_VERSION_PATCH @PROJECT_VERSION_PATCH@) @@ -21,7 +21,7 @@ set(CPACK_PACKAGE_VERSION @PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJE set(CPACK_RPM_PACKAGE_LICENSE "AGPLv3") set(CPACK_RPM_PACKAGE_GROUP "Development/Libraries") set(CPACK_RPM_PACKAGE_URL ${CPACK_PROJECT_URL}) -set(CPACK_RPM_PACKAGE_DESCRIPTION "Syndemics Modeling Library.") +set(CPACK_RPM_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}") set(CPACK_RPM_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}") set(CPACK_RPM_PACKAGE_NAME "${CPACK_PACKAGE_NAME}") if(CPACK_RPM_PACKAGE_RELEASE) @@ -36,8 +36,9 @@ set(CPACK_RPM_FILE_NAME "${CPACK_RPM_FILE_NAME}.rpm") # CPack Debian Variables #------------------------------------------------------------------------------- set(CPACK_DEBIAN_PACKAGE_SECTION "libs") +set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CPACK_PROJECT_URL}) -set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "Syndemics Modeling Library.") +set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}") set(CPACK_DEBIAN_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}") set(CPACK_DEBIAN_PACKAGE_NAME "${CPACK_PACKAGE_NAME}") if(CPACK_DEBIAN_PACKAGE_RELEASE) @@ -45,5 +46,6 @@ if(CPACK_DEBIAN_PACKAGE_RELEASE) endif() if(CPACK_DEBIAN_PACKAGE_ARCHITECTURE) set(CPACK_DEBIAN_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}.${${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}}") -endif() -set(CPACK_DEBIAN_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}.deb") \ No newline at end of file +else() + set(CPACK_DEBIAN_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}.deb") +endif() \ No newline at end of file diff --git a/cmake/respondConfig.cmake.in b/cmake/respondConfig.cmake.in index d2c98e42..e7093718 100644 --- a/cmake/respondConfig.cmake.in +++ b/cmake/respondConfig.cmake.in @@ -5,8 +5,4 @@ include(CMakeFindDependencyMacro) find_dependency(Eigen3 REQUIRED) find_dependency(spdlog REQUIRED) -if(@RESPOND_BUILD_TESTS@) - find_dependency(GTest REQUIRED) # Only if tests are build -endif() - include("${CMAKE_CURRENT_LIST_DIR}/respondTargets.cmake") diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index d9274605..d485e7cc 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -42,9 +42,10 @@ target_include_directories(respond_tests target_link_libraries(respond_tests PUBLIC respond_model - Eigen3::Eigen spdlog::spdlog GTest::gmock_main +INTERFACE + Eigen3::Eigen ) gtest_discover_tests(respond_tests From f3de9fe07863a3f404007716ce59c380f0fe037a Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 14:44:57 -0400 Subject: [PATCH 2/9] fixing Eigen clashes if already found --- cmake/LoadEigen.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/LoadEigen.cmake b/cmake/LoadEigen.cmake index 0c77413c..aa55f4e6 100644 --- a/cmake/LoadEigen.cmake +++ b/cmake/LoadEigen.cmake @@ -8,7 +8,7 @@ FetchContent_Declare( GIT_TAG "3.4.0" GIT_SHALLOW TRUE EXCLUDE_FROM_ALL - # FIND_PACKAGE_ARGS NAMES Eigen3 + FIND_PACKAGE_ARGS NAMES Eigen3 ) # Turn off Eigen Testing and Docs From b936c2884a399c4dca3c9534ab5a38da27bba724 Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 14:51:37 -0400 Subject: [PATCH 3/9] installing fixes --- cmake/InstallRespond.cmake | 43 +++++++++++++------------------------- 1 file changed, 14 insertions(+), 29 deletions(-) diff --git a/cmake/InstallRespond.cmake b/cmake/InstallRespond.cmake index 62a8d7d5..27df799f 100644 --- a/cmake/InstallRespond.cmake +++ b/cmake/InstallRespond.cmake @@ -1,11 +1,9 @@ -set(export_dest_dir "${CMAKE_INSTALL_LIBDIR}/respond") -set(export_cmake_dir "${CMAKE_INSTALL_LIBDIR}/cmake/respond") - -#------------------------------------------------------------------------------- -# Include files -#------------------------------------------------------------------------------- message(STATUS "Installing respond version ${RESPOND_VERSION} to ${CMAKE_INSTALL_FULL_LIBDIR} and ${CMAKE_INSTALL_FULL_INCLUDEDIR}...") +# This defines where things get installed. The default is to install to the +# system level directories (e.g. /usr/lib, /usr/respond/include). We will want +# to change this to allow for user level install too via the +# CMAKE_INSTALL_PREFIX variable. install(TARGETS respond_model EXPORT respondTargets LIBRARY DESTINATION lib @@ -15,22 +13,6 @@ install(TARGETS respond_model FILE_SET HEADERS DESTINATION include ) -# respond_model is the full target and HEADERS is the list of header files -# It associates the target with the EXPORT definition which is then installed. -# install( -# TARGETS respond_model -# EXPORT respondTargets -# FILE_SET HEADERS -# ) - -# This actually installs the exports to the specified destination and adds the -# namespace to the targets. -# install( -# EXPORT respondTargets -# DESTINATION ${export_cmake_dir} -# NAMESPACE respond:: -# ) - include(CMakePackageConfigHelpers) # Setup the Version config file @@ -40,18 +22,22 @@ write_basic_package_version_file( COMPATIBILITY AnyNewerVersion ) -# export the targets to a file and add the prefix +# export the targets to a file and add the prefix. This file is used by the +# config file to find the compiled targets during `find_package(respond)` calls. export(EXPORT respondTargets FILE "${CMAKE_CURRENT_BINARY_DIR}/respond/respondTargets.cmake" NAMESPACE respond:: ) +# Creates the config file necessary for CMake to use `find_package(respond)` # after being installed. configure_file( "${PROJECT_SOURCE_DIR}/cmake/respondConfig.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/respond/respondConfig.cmake" @ONLY ) +# Define where to install the config files and install the targets before the +# config files. This is so that the config files can actually find the targets set(ConfigPackageLocation lib/cmake/respond) install( EXPORT respondTargets @@ -60,16 +46,18 @@ install( DESTINATION ${ConfigPackageLocation} ) - +# Finally, install the config files install( FILES "${CMAKE_CURRENT_BINARY_DIR}/respond/respondConfig.cmake" "${CMAKE_CURRENT_BINARY_DIR}/respond/respondConfigVersion.cmake" - DESTINATION ${export_cmake_dir} + DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/respond" ) #------------------------------------------------------------------------------- -# CPack Options for RESPOND +# CPack: This helps us create various installers. All options are controlled in +# the `respondCPackOptions.cmake.in` config file. Please do not change CPack +# itself, only the Options file! #------------------------------------------------------------------------------- configure_file( "${PROJECT_SOURCE_DIR}/cmake/respondCPackOptions.cmake.in" @@ -78,7 +66,4 @@ configure_file( ) set(CPACK_PROJECT_CONFIG_FILE "${PROJECT_BINARY_DIR}/respondCPackOptions.cmake") -#------------------------------------------------------------------------------- -# Support creation of installable packages -#------------------------------------------------------------------------------- include(CPack) From c290c6a00edb352b31d79cb361fbc3f3e900d089 Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 15:21:57 -0400 Subject: [PATCH 4/9] updating cpack --- .github/workflows/release.yml | 35 ++++++++++++++++++------------ cmake/respondCPackOptions.cmake.in | 24 +++++--------------- 2 files changed, 27 insertions(+), 32 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b6004fa0..3022bf6d 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,29 +8,36 @@ env: BUILD_TYPE: Release jobs: - build: - name: Building Debian Ubuntu Packages - runs-on: ubuntu-latest + build_deb: + name: Building Linux Packages + runs-on: ${{matrix.os}} + defaults: + run: + shell: bash strategy: matrix: + os: [ubuntu-latest, ubuntu-24.04-arm] build-variant: [shared, static] + package-type: [debian, rpm] + include: + - package-type: debian + extension: deb + - package-type: rpm + extension: rpm steps: - name: Checkout Respond Repository - uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 - - - name: Build Debian Package + uses: actions/checkout@v6 + - name: Run CMake run: | - echo "Building Linux" - cmake --workflow --preset package-release-debian-${{matrix.build-variant}}-workflow - shell: bash - - name: Create a zip file with specific files/folders - shell: powershell + cmake --preset package-${{matrix.build-variant}} && cmake --build --preset package-${{matrix.build-variant}} + - name: Run CPack run: | - Compress-Archive -Path "${{ github.workspace }}/build/${{ matrix.build-variant }}/*.deb" -DestinationPath "${{ matrix.build-variant }}.zip" - - name: Upload Debian Package to Release + cpack --preset ${{matrix.package-type}}-${{matrix.build-variant}} + + - name: Upload Linux Package to Release uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} - file: "${{ matrix.build-variant }}.zip" + file: ${{ github.workspace }}/build/${{ matrix.build-variant }}/*.${{ matrix.extension }} file_glob: true tag: ${{ github.ref }} diff --git a/cmake/respondCPackOptions.cmake.in b/cmake/respondCPackOptions.cmake.in index 5f27b50f..74447ddf 100644 --- a/cmake/respondCPackOptions.cmake.in +++ b/cmake/respondCPackOptions.cmake.in @@ -10,6 +10,9 @@ set(CPACK_PACKAGE_NAME @PROJECT_NAME@) set(CPACK_PACKAGE_VENDOR "Syndemics Lab at Boston Medical Center") set(CPACK_PACKAGE_CONTACT "Benjamin Linas ") set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The RESPOND (Researching Effective Strategies to Prevent Opioid Use Disorder) Model Library. This library acts as a tool for building decision science markov models to study the treatment dynamics of substance use disorder.") +set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/License.txt") + + set(CPACK_PACKAGE_VERSION_MAJOR @PROJECT_VERSION_MAJOR@) set(CPACK_PACKAGE_VERSION_MINOR @PROJECT_VERSION_MINOR@) set(CPACK_PACKAGE_VERSION_PATCH @PROJECT_VERSION_PATCH@) @@ -22,15 +25,8 @@ set(CPACK_RPM_PACKAGE_LICENSE "AGPLv3") set(CPACK_RPM_PACKAGE_GROUP "Development/Libraries") set(CPACK_RPM_PACKAGE_URL ${CPACK_PROJECT_URL}) set(CPACK_RPM_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}") -set(CPACK_RPM_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}") set(CPACK_RPM_PACKAGE_NAME "${CPACK_PACKAGE_NAME}") -if(CPACK_RPM_PACKAGE_RELEASE) - set(CPACK_RPM_FILE_NAME "${CPACK_RPM_FILE_NAME}-${CPACK_RPM_PACKAGE_RELEASE}") -endif() -if(CPACK_RPM_PACKAGE_ARCHITECTURE) - set(CPACK_RPM_FILE_NAME "${CPACK_RPM_FILE_NAME}.${CPACK_RPM_PACKAGE_ARCHITECTURE}") -endif() -set(CPACK_RPM_FILE_NAME "${CPACK_RPM_FILE_NAME}.rpm") +set(CPACK_RPM_FILE_NAME RPM-DEFAULT) #------------------------------------------------------------------------------- # CPack Debian Variables @@ -38,14 +34,6 @@ set(CPACK_RPM_FILE_NAME "${CPACK_RPM_FILE_NAME}.rpm") set(CPACK_DEBIAN_PACKAGE_SECTION "libs") set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CPACK_PROJECT_URL}) -set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}") -set(CPACK_DEBIAN_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}") +set(CPACK_DEBIAN_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION_SUMMARY}) set(CPACK_DEBIAN_PACKAGE_NAME "${CPACK_PACKAGE_NAME}") -if(CPACK_DEBIAN_PACKAGE_RELEASE) - set(CPACK_DEBIAN_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}-${CPACK_DEBIAN_PACKAGE_RELEASE}") -endif() -if(CPACK_DEBIAN_PACKAGE_ARCHITECTURE) - set(CPACK_DEBIAN_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}.${${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}}") -else() - set(CPACK_DEBIAN_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}.deb") -endif() \ No newline at end of file +set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT) \ No newline at end of file From f2546d130ad810389cbe3cbbcc37e2845e83831e Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 15:33:39 -0400 Subject: [PATCH 5/9] Adding nsis to release.yml and testing details --- .github/workflows/release.yml | 46 ++++++++++++++++++++++++++++++++--- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3022bf6d..c4aacc98 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,14 +1,20 @@ -name: Release Project +name: Add Installers to Release on: + workflow_dispatch: + pull_request: push: - tags: - - "v*.*.*" + release: + types: + - published + # push: + # tags: + # - "v*.*.*" env: BUILD_TYPE: Release jobs: - build_deb: + build_linux: name: Building Linux Packages runs-on: ${{matrix.os}} defaults: @@ -41,3 +47,35 @@ jobs: file: ${{ github.workspace }}/build/${{ matrix.build-variant }}/*.${{ matrix.extension }} file_glob: true tag: ${{ github.ref }} + + build_windows: + name: Building Windows Packages + runs-on: ${{matrix.os}} + defaults: + run: + shell: bash + strategy: + matrix: + os: [windows-latest] + build-variant: [shared, static] + package-type: [nsis] + include: + - package-type: nsis + extension: exe + steps: + - name: Checkout Respond Repository + uses: actions/checkout@v6 + - name: Run CMake + run: | + cmake --preset package-${{matrix.build-variant}} && cmake --build --preset package-${{matrix.build-variant}} + - name: Run CPack + run: | + cpack --preset ${{matrix.package-type}}-${{matrix.build-variant}} + + - name: Upload NSIS Package to Release + uses: svenstaro/upload-release-action@v2 + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ github.workspace }}/build/${{ matrix.build-variant }}/*.${{ matrix.extension }} + file_glob: true + tag: ${{ github.ref }} From ea5c8729607d7aab3ba29193ab96c823fb8f5c1e Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 15:35:40 -0400 Subject: [PATCH 6/9] moving Eigen back to build requirement --- CMakeLists.txt | 2 +- tests/CMakeLists.txt | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index de011a57..ac8cf8b6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -99,7 +99,7 @@ if (RESPOND_CALCULATE_COVERAGE) endif() target_link_libraries(respond_model -INTERFACE +PUBLIC Eigen3::Eigen PRIVATE ${private_deps} diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index d485e7cc..34bc349c 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -44,7 +44,6 @@ PUBLIC respond_model spdlog::spdlog GTest::gmock_main -INTERFACE Eigen3::Eigen ) From a6acb857b227b2f2b8d3f79cac509efdf95eb38d Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 15:38:28 -0400 Subject: [PATCH 7/9] install nsis --- .github/workflows/release.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c4aacc98..f0e93913 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -65,6 +65,8 @@ jobs: steps: - name: Checkout Respond Repository uses: actions/checkout@v6 + - name: Install NSIS + run: choco install -y nsis - name: Run CMake run: | cmake --preset package-${{matrix.build-variant}} && cmake --build --preset package-${{matrix.build-variant}} From 691ca0094d586dbf76f3a4bdd82ebc060073c83e Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 15:42:23 -0400 Subject: [PATCH 8/9] turning off windows --- .github/workflows/release.yml | 76 +++++++++++++++++------------------ 1 file changed, 36 insertions(+), 40 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f0e93913..b6cbbc71 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,15 +1,9 @@ name: Add Installers to Release on: - workflow_dispatch: - pull_request: push: - release: - types: - - published - # push: - # tags: - # - "v*.*.*" + tags: + - "v*.*.*" env: BUILD_TYPE: Release @@ -48,36 +42,38 @@ jobs: file_glob: true tag: ${{ github.ref }} - build_windows: - name: Building Windows Packages - runs-on: ${{matrix.os}} - defaults: - run: - shell: bash - strategy: - matrix: - os: [windows-latest] - build-variant: [shared, static] - package-type: [nsis] - include: - - package-type: nsis - extension: exe - steps: - - name: Checkout Respond Repository - uses: actions/checkout@v6 - - name: Install NSIS - run: choco install -y nsis - - name: Run CMake - run: | - cmake --preset package-${{matrix.build-variant}} && cmake --build --preset package-${{matrix.build-variant}} - - name: Run CPack - run: | - cpack --preset ${{matrix.package-type}}-${{matrix.build-variant}} +# Currently incurring errors on the workflow: 1) CPack Error: Problem running NSIS command 2) CPack Error: Problem compressing the directory 3) CPack Error: Error when generating package: respond - - name: Upload NSIS Package to Release - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: ${{ github.workspace }}/build/${{ matrix.build-variant }}/*.${{ matrix.extension }} - file_glob: true - tag: ${{ github.ref }} +# build_windows: +# name: Building Windows Packages +# runs-on: ${{matrix.os}} +# defaults: +# run: +# shell: bash +# strategy: +# matrix: +# os: [windows-latest] +# build-variant: [shared, static] +# package-type: [nsis] +# include: +# - package-type: nsis +# extension: exe +# steps: +# - name: Checkout Respond Repository +# uses: actions/checkout@v6 +# - name: Install NSIS +# run: choco install -y nsis +# - name: Run CMake +# run: | +# cmake --preset package-${{matrix.build-variant}} && cmake --build --preset package-${{matrix.build-variant}} +# - name: Run CPack +# run: | +# cpack --preset ${{matrix.package-type}}-${{matrix.build-variant}} + +# - name: Upload NSIS Package to Release +# uses: svenstaro/upload-release-action@v2 +# with: +# repo_token: ${{ secrets.GITHUB_TOKEN }} +# file: ${{ github.workspace }}/build/${{ matrix.build-variant }}/*.${{ matrix.extension }} +# file_glob: true +# tag: ${{ github.ref }} From 0adae5a3ee3fc3af1522b121dfc593a72b91e5ca Mon Sep 17 00:00:00 2001 From: Matthew Carroll <28577806+MJC598@users.noreply.github.com> Date: Wed, 24 Jun 2026 16:45:09 -0400 Subject: [PATCH 9/9] Update cmake/respondCPackOptions.cmake.in Co-authored-by: Dimitri Baptiste <55843498+ddbaptiste@users.noreply.github.com> Signed-off-by: Matthew Carroll <28577806+MJC598@users.noreply.github.com> --- cmake/respondCPackOptions.cmake.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/respondCPackOptions.cmake.in b/cmake/respondCPackOptions.cmake.in index 74447ddf..bbde8c69 100644 --- a/cmake/respondCPackOptions.cmake.in +++ b/cmake/respondCPackOptions.cmake.in @@ -9,7 +9,7 @@ set(CPACK_PROJECT_URL "https://github.com/SyndemicsLab/respond") set(CPACK_PACKAGE_NAME @PROJECT_NAME@) set(CPACK_PACKAGE_VENDOR "Syndemics Lab at Boston Medical Center") set(CPACK_PACKAGE_CONTACT "Benjamin Linas ") -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The RESPOND (Researching Effective Strategies to Prevent Opioid Use Disorder) Model Library. This library acts as a tool for building decision science markov models to study the treatment dynamics of substance use disorder.") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The RESPOND (Researching Effective Strategies to Prevent Opioid Use Disorder) model library. This library acts as a tool for building decision science Markov models to study the treatment dynamics of substance use disorder.") set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/License.txt")