From e6454b211455c07181203b5b67c438cf91e40d2c Mon Sep 17 00:00:00 2001 From: Joseph Hickey Date: Wed, 23 Nov 2022 13:58:00 -0500 Subject: [PATCH 1/6] Fix #2214, add abstract documentation dependency target Adds a top level target called "doc-prebuild" which in turn can be made to depend on any other files that need to exist before documentation can be built. --- cmake/mission_build.cmake | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cmake/mission_build.cmake b/cmake/mission_build.cmake index 3494ad204..ef3d62a8a 100644 --- a/cmake/mission_build.cmake +++ b/cmake/mission_build.cmake @@ -180,6 +180,7 @@ function(prepare) add_custom_target(mission-install COMMAND $(MAKE) install) add_custom_target(mission-clean COMMAND $(MAKE) clean) add_custom_target(mission-prebuild) + add_custom_target(doc-prebuild) # Locate the source location for all the apps found within the target file # This is done by searching through the list of paths to find a matching name @@ -325,8 +326,8 @@ function(prepare) add_subdirectory(${osal_MISSION_DIR} osal_public_api) add_subdirectory(${osal_MISSION_DIR}/docs/src ${CMAKE_BINARY_DIR}/docs/osal-apiguide) - add_dependencies(cfe-usersguide osal_public_api_headerlist) - add_dependencies(mission-doc osal_public_api_headerlist) + add_dependencies(cfe-usersguide doc-prebuild) + add_dependencies(mission-doc doc-prebuild) # Pull in any application-specific mission-scope configuration # This may include user configuration files such as cfe_mission_cfg.h, @@ -484,5 +485,3 @@ function(process_arch TARGETSYSTEM) add_dependencies(mission-install ${TARGETSYSTEM}-install) endfunction(process_arch TARGETSYSTEM) - - From 8ae778f8c35e084839792a31da29e616f34f8134 Mon Sep 17 00:00:00 2001 From: Joseph Hickey Date: Fri, 25 Nov 2022 10:55:13 -0500 Subject: [PATCH 2/6] Fix #2216, update github action versions Use v3 instead of v2 for checkout, cache, and upload-artifacts, which resolves a warning about node.js 12 deprecation. --- .github/workflows/build-documentation.yml | 10 ++++---- .github/workflows/code-coverage.yml | 10 ++++---- .github/workflows/functional-tests.yml | 28 +++++++++++------------ 3 files changed, 24 insertions(+), 24 deletions(-) diff --git a/.github/workflows/build-documentation.yml b/.github/workflows/build-documentation.yml index 9a2865a65..5b00bd4cf 100644 --- a/.github/workflows/build-documentation.yml +++ b/.github/workflows/build-documentation.yml @@ -23,24 +23,24 @@ jobs: checkout-and-cache: name: Custom checkout and cache for cFS documents needs: checks-for-duplicates - if: ${{ needs.checks-for-duplicates.outputs.should_skip != 'true' || contains(github.ref, 'main') }} + if: ${{ needs.checks-for-duplicates.outputs.should_skip != 'true' || contains(github.ref, 'main') }} runs-on: ubuntu-latest steps: - name: Checkout bundle - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: nasa/cFS submodules: true - name: Checkout submodule - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: path: cfe - name: Cache Source and Build id: cache-src-bld - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: /home/runner/work/${{ github.event.repository.name }}/${{ github.event.repository.name }}/* key: cfs-doc-${{ github.run_number }} @@ -73,7 +73,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: actions/download-artifact@v3 diff --git a/.github/workflows/code-coverage.yml b/.github/workflows/code-coverage.yml index e573b450d..b7180a80f 100644 --- a/.github/workflows/code-coverage.yml +++ b/.github/workflows/code-coverage.yml @@ -12,7 +12,7 @@ env: jobs: - #Check for duplicate actions. Skips push actions if there is a matching or duplicate pull-request action. + #Check for duplicate actions. Skips push actions if there is a matching or duplicate pull-request action. check-for-duplicates: runs-on: ubuntu-latest # Map a step output to a job output @@ -39,13 +39,13 @@ jobs: # Checks out a copy of your repository on the ubuntu-latest machine - name: Checkout bundle - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: nasa/cFS submodules: true - name: Checkout submodule - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: path: cfe @@ -74,8 +74,8 @@ jobs: make -C build/native/default_cpu1/sbr make -C build/native/default_cpu1/tbl make -C build/native/default_cpu1/time - - # Initialize lcov and test the code + + # Initialize lcov and test the code - name: Test run: | lcov --capture --initial --directory build --output-file coverage_base.info diff --git a/.github/workflows/functional-tests.yml b/.github/workflows/functional-tests.yml index de8805138..c989c6517 100644 --- a/.github/workflows/functional-tests.yml +++ b/.github/workflows/functional-tests.yml @@ -12,7 +12,7 @@ env: jobs: - #Check for duplicate actions. Skips push actions if there is a matching or duplicate pull-request action. + #Check for duplicate actions. Skips push actions if there is a matching or duplicate pull-request action. check-for-duplicates: runs-on: ubuntu-latest # Map a step output to a job output @@ -33,16 +33,16 @@ jobs: runs-on: ubuntu-20.04 timeout-minutes: 15 - steps: + steps: # Checks out a copy of your repository on the ubuntu-latest machine - name: Checkout bundle - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: nasa/cFS - submodules: true + submodules: true - name: Checkout submodule - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: path: cfe @@ -73,36 +73,36 @@ jobs: ../host/cmdUtil --pktid=0x1806 --cmdcode=4 --endian=LE --string="20:CFE_TEST_APP" --string="20:CFE_TestMain" --string="64:cfe_testcase" --uint32=16384 --uint8=0 --uint8=0 --uint16=100 sleep 30 - counter=0 + counter=0 + + while [[ ! -f cf/cfe_test.log ]]; do + temp=$(grep -c "BEGIN" cf/cfe_test.tmp) - while [[ ! -f cf/cfe_test.log ]]; do - temp=$(grep -c "BEGIN" cf/cfe_test.tmp) - if [ $temp -eq $counter ]; then echo "Test is frozen. Quitting" break fi - counter=$(grep -c "BEGIN" cf/cfe_test.tmp) + counter=$(grep -c "BEGIN" cf/cfe_test.tmp) echo "Waiting for CFE Tests" sleep 60 done - + ../host/cmdUtil --endian=LE --pktid=0x1806 --cmdcode=2 --half=0x0002 working-directory: ./build/exe/cpu1/ - name: Archive cFS Startup Artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: cFS-startup-log-deprecate-true-${{ matrix.buildtype }} path: ./build/exe/cpu1/cf/cfe_test.log - name: Check for cFS Warnings - run: | + run: | if [[ -z $(grep -i "SUMMARY.*FAIL::0.*TSF::0.*TTF::0" cf/cfe_test.log) ]]; then echo "Must resolve Test Failures in cFS Test App before submitting a pull request" echo "" grep -i '\[ FAIL]\|\[ TSF]\|\[ TTF]' cf/cfe_test.log exit -1 fi - working-directory: ./build/exe/cpu1/ + working-directory: ./build/exe/cpu1/ From 200031f02769788694ff1292f9a959caad96c784 Mon Sep 17 00:00:00 2001 From: Joseph Hickey Date: Thu, 1 Dec 2022 15:17:41 -0500 Subject: [PATCH 3/6] Fix #2218, add -fno-common to arch build flags Add -fno-common to arch_build_custom_native.cmake so the CI workflows will all build with this option. This is not the default in the version of gcc/binutils used in ubuntu 20.04 on which the workflows run. --- cmake/sample_defs/arch_build_custom_native.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/cmake/sample_defs/arch_build_custom_native.cmake b/cmake/sample_defs/arch_build_custom_native.cmake index 89c069d4b..04bf76664 100644 --- a/cmake/sample_defs/arch_build_custom_native.cmake +++ b/cmake/sample_defs/arch_build_custom_native.cmake @@ -7,5 +7,6 @@ # add_compile_options( -Wcast-align=strict # Warn about casts that increase alignment requirements + -fno-common # Do not use a common section for globals ) From 22272c9930dde758bc714e6a0604e7f2208caa0e Mon Sep 17 00:00:00 2001 From: Dan Date: Mon, 5 Dec 2022 17:58:47 -0500 Subject: [PATCH 4/6] Fix #2220, Combine MESSAGE and CMD ENTRY Macros --- modules/tbl/fsw/src/cfe_tbl_task.c | 44 ++++++++++++------------------ 1 file changed, 17 insertions(+), 27 deletions(-) diff --git a/modules/tbl/fsw/src/cfe_tbl_task.c b/modules/tbl/fsw/src/cfe_tbl_task.c index 0dfd89604..0de04105a 100644 --- a/modules/tbl/fsw/src/cfe_tbl_task.c +++ b/modules/tbl/fsw/src/cfe_tbl_task.c @@ -41,43 +41,33 @@ */ CFE_TBL_Global_t CFE_TBL_Global; -/* - * Macros to assist in building the CFE_TBL_CmdHandlerTbl - - * For generic message entries, which only have a MID and a handler function (no command payload) - */ -#define CFE_TBL_MESSAGE_ENTRY(mid, handlerfunc) \ - { \ - CFE_SB_MSGID_WRAP_VALUE(mid), 0, sizeof(CFE_MSG_CommandHeader_t), (CFE_TBL_MsgProcFuncPtr_t)handlerfunc, \ - CFE_TBL_MSG_MSGTYPE \ - } - /* * Macros to assist in building the CFE_TBL_CmdHandlerTbl - * For command handler entries, which have a command code, payload type, and a handler function */ -#define CFE_TBL_COMMAND_ENTRY(ccode, paramtype, handlerfunc) \ +#define CFE_TBL_ENTRY(mid, ccode, paramtype, handlerfunc, msgtype) \ { \ - CFE_SB_MSGID_WRAP_VALUE(CFE_TBL_CMD_MID), ccode, sizeof(paramtype), (CFE_TBL_MsgProcFuncPtr_t)handlerfunc, \ - CFE_TBL_CMD_MSGTYPE \ + CFE_SB_MSGID_WRAP_VALUE(mid), ccode, sizeof(paramtype), (CFE_TBL_MsgProcFuncPtr_t)handlerfunc, \ + msgtype \ } /* Constant Data */ const CFE_TBL_CmdHandlerTblRec_t CFE_TBL_CmdHandlerTbl[] = { - /* message entries (SEND_HK) */ - CFE_TBL_MESSAGE_ENTRY(CFE_TBL_SEND_HK_MID, CFE_TBL_HousekeepingCmd), - - /* command entries (everything else) */ - CFE_TBL_COMMAND_ENTRY(CFE_TBL_NOOP_CC, CFE_TBL_NoopCmd_t, CFE_TBL_NoopCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_RESET_COUNTERS_CC, CFE_TBL_ResetCountersCmd_t, CFE_TBL_ResetCountersCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_LOAD_CC, CFE_TBL_LoadCmd_t, CFE_TBL_LoadCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_DUMP_CC, CFE_TBL_DumpCmd_t, CFE_TBL_DumpCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_VALIDATE_CC, CFE_TBL_ValidateCmd_t, CFE_TBL_ValidateCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_ACTIVATE_CC, CFE_TBL_ActivateCmd_t, CFE_TBL_ActivateCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_DUMP_REGISTRY_CC, CFE_TBL_DumpRegistryCmd_t, CFE_TBL_DumpRegistryCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_SEND_REGISTRY_CC, CFE_TBL_SendRegistryCmd_t, CFE_TBL_SendRegistryCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_DELETE_CDS_CC, CFE_TBL_DeleteCDSCmd_t, CFE_TBL_DeleteCDSCmd), - CFE_TBL_COMMAND_ENTRY(CFE_TBL_ABORT_LOAD_CC, CFE_TBL_AbortLoadCmd_t, CFE_TBL_AbortLoadCmd), + /* SEND_HK Entry */ + CFE_TBL_ENTRY(CFE_TBL_SEND_HK_MID, 0, CFE_MSG_CommandHeader_t, CFE_TBL_HousekeepingCmd, CFE_TBL_MSG_MSGTYPE), + + /* Everything else */ + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_NOOP_CC, CFE_TBL_NoopCmd_t, CFE_TBL_NoopCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_RESET_COUNTERS_CC, CFE_TBL_ResetCountersCmd_t, CFE_TBL_ResetCountersCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_LOAD_CC, CFE_TBL_LoadCmd_t, CFE_TBL_LoadCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_DUMP_CC, CFE_TBL_DumpCmd_t, CFE_TBL_DumpCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_VALIDATE_CC, CFE_TBL_ValidateCmd_t, CFE_TBL_ValidateCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_ACTIVATE_CC, CFE_TBL_ActivateCmd_t, CFE_TBL_ActivateCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_DUMP_REGISTRY_CC, CFE_TBL_DumpRegistryCmd_t, CFE_TBL_DumpRegistryCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_SEND_REGISTRY_CC, CFE_TBL_SendRegistryCmd_t, CFE_TBL_SendRegistryCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_DELETE_CDS_CC, CFE_TBL_DeleteCDSCmd_t, CFE_TBL_DeleteCDSCmd, CFE_TBL_CMD_MSGTYPE), + CFE_TBL_ENTRY(CFE_TBL_CMD_MID, CFE_TBL_ABORT_LOAD_CC, CFE_TBL_AbortLoadCmd_t, CFE_TBL_AbortLoadCmd, CFE_TBL_CMD_MSGTYPE), /* list terminator (keep last) */ {CFE_SB_MSGID_RESERVED, 0, 0, NULL, CFE_TBL_TERM_MSGTYPE}}; From 45cbc9b9040497c9deef6c48e8e0be68e013e572 Mon Sep 17 00:00:00 2001 From: Dylan Date: Tue, 6 Dec 2022 14:10:39 -0500 Subject: [PATCH 5/6] Bump to v7.0.0-rc4+dev226 --- CHANGELOG.md | 6 ++++++ modules/core_api/fsw/inc/cfe_version.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7815eccbf..2c5a705f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## Development Build: v7.0.0-rc4+dev226 +- add abstract documentation dependency target +- add -fno-common to arch build flags +- update github action versions +- See , , and + ## Development Build: v7.0.0-rc4+dev218 - Update CI to use Ubuntu 20.04 - Enforce strict cast alignment on arch diff --git a/modules/core_api/fsw/inc/cfe_version.h b/modules/core_api/fsw/inc/cfe_version.h index 1cbb10245..795b6eb32 100644 --- a/modules/core_api/fsw/inc/cfe_version.h +++ b/modules/core_api/fsw/inc/cfe_version.h @@ -26,7 +26,7 @@ #define CFE_VERSION_H /* Development Build Macro Definitions */ -#define CFE_BUILD_NUMBER 218 /**< @brief Development: Number of development git commits since CFE_BUILD_BASELINE */ +#define CFE_BUILD_NUMBER 226 /**< @brief Development: Number of development git commits since CFE_BUILD_BASELINE */ #define CFE_BUILD_BASELINE "v7.0.0-rc4" /**< @brief Development: Reference git tag for build number */ /* See \ref cfsversions for definitions */ From 617db487acec8a15cf1ae6ce308f34e93d1d946f Mon Sep 17 00:00:00 2001 From: Dylan Date: Tue, 6 Dec 2022 15:31:08 -0500 Subject: [PATCH 6/6] Bump to v7.0.0-rc4+dev229 --- CHANGELOG.md | 5 +++-- modules/core_api/fsw/inc/cfe_version.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c5a705f0..6df0e4b36 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,11 @@ # Changelog -## Development Build: v7.0.0-rc4+dev226 +## Development Build: v7.0.0-rc4+dev229 - add abstract documentation dependency target - add -fno-common to arch build flags - update github action versions -- See , , and +- Combine MESSAGE and CMD ENTRY Macros +- See , , , and ## Development Build: v7.0.0-rc4+dev218 - Update CI to use Ubuntu 20.04 diff --git a/modules/core_api/fsw/inc/cfe_version.h b/modules/core_api/fsw/inc/cfe_version.h index 795b6eb32..8c9a74679 100644 --- a/modules/core_api/fsw/inc/cfe_version.h +++ b/modules/core_api/fsw/inc/cfe_version.h @@ -26,7 +26,7 @@ #define CFE_VERSION_H /* Development Build Macro Definitions */ -#define CFE_BUILD_NUMBER 226 /**< @brief Development: Number of development git commits since CFE_BUILD_BASELINE */ +#define CFE_BUILD_NUMBER 229 /**< @brief Development: Number of development git commits since CFE_BUILD_BASELINE */ #define CFE_BUILD_BASELINE "v7.0.0-rc4" /**< @brief Development: Reference git tag for build number */ /* See \ref cfsversions for definitions */