Skip to content

Commit

Permalink
Merge branch 'main' into fix-2175-apply-consistent-event-id-names
Browse files Browse the repository at this point in the history
  • Loading branch information
thnkslprpt authored Dec 26, 2022
2 parents b306ca5 + f6432f5 commit 9a39e73
Show file tree
Hide file tree
Showing 52 changed files with 956 additions and 555 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/build-documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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 }}
Expand Down Expand Up @@ -73,7 +73,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- uses: actions/download-artifact@v3

Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/code-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -30,7 +30,7 @@ jobs:
#Continue if check-for-duplicates found no duplicates. Always runs for pull-requests.
needs: check-for-duplicates
if: ${{ needs.check-for-duplicates.outputs.should_skip != 'true' }}
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
timeout-minutes: 15

steps:
Expand All @@ -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

Expand Down Expand Up @@ -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
Expand Down
30 changes: 15 additions & 15 deletions .github/workflows/functional-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -30,19 +30,19 @@ jobs:
#Continue if check-for-duplicates found no duplicates. Always runs for pull-requests.
needs: check-for-duplicates
if: ${{ needs.check-for-duplicates.outputs.should_skip != 'true' }}
runs-on: ubuntu-18.04
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

Expand Down Expand Up @@ -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/
32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,37 @@
# Changelog

## Development Build: v7.0.0-rc4+dev242
- EDS Updates to match the current mainline
- Update UTs to use correct cmd types
- Move CRC types and convert to enum
- See <https://github.com/nasa/cFE/pull/2231>, <https://github.com/nasa/cFE/pull/2229>, and <https://github.com/nasa/cFE/pull/2192>

## Development Build: v7.0.0-rc4+dev233
- Replace CFE_MSG_CommandHeader_t w/ CFE_TBL_NoArgsCmd_t
- See <https://github.com/nasa/cFE/pull/2226>

## Development Build: v7.0.0-rc4+dev229
- add abstract documentation dependency target
- add -fno-common to arch build flags
- update github action versions
- Combine MESSAGE and CMD ENTRY Macros
- See <https://github.com/nasa/cFE/pull/2215>, <https://github.com/nasa/cFE/pull/2219>, <https://github.com/nasa/cFE/pull/2217>, and <https://github.com/nasa/cFE/pull/2222>

## Development Build: v7.0.0-rc4+dev218
- Update CI to use Ubuntu 20.04
- Enforce strict cast alignment on arch
- Support clang for whole archive flags
- Explicit toolchain in sample target.cmake
- See <https://github.com/nasa/cFE/pull/2209>, <https://github.com/nasa/cFE/pull/2206>, <https://github.com/nasa/cFE/pull/2204>, and <https://github.com/nasa/cFE/pull/2203>

## Development Build: v7.0.0-rc4+dev205
- resolve static analysis errors in tbl_UT.c
- See <https://github.com/nasa/cFE/pull/2197>

## Development Build: v7.0.0-rc4+dev201
- use osal_public_api header targets in doc
- See <https://github.com/nasa/cFE/pull/2184>

## Development Build: v7.0.0-rc4+dev197
- Remove Changelog in Doxygen Config
- See <https://github.com/nasa/cFE/pull/2165>
Expand Down
11 changes: 5 additions & 6 deletions cmake/mission_build.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -322,12 +323,12 @@ function(prepare)
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/docs/cfe-usersguide")

# OSAL API GUIDE include PUBLIC API
set(OSAL_API_INCLUDE_DIRECTORIES
"${osal_MISSION_DIR}/src/os/inc"
"${CMAKE_BINARY_DIR}/docs"
)
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 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,
# msgid definitions, or any other configuration/preparation that needs to
Expand Down Expand Up @@ -484,5 +485,3 @@ function(process_arch TARGETSYSTEM)
add_dependencies(mission-install ${TARGETSYSTEM}-install)

endfunction(process_arch TARGETSYSTEM)


1 change: 0 additions & 1 deletion cmake/sample_defs/arch_build_custom.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ add_compile_options(
-Wstrict-prototypes # Warn about missing prototypes
-Wwrite-strings # Warn if not treating string literals as "const"
-Wpointer-arith # Warn about suspicious pointer operations
-Wcast-align # Warn about casts that increase alignment requirements
-Werror # Treat warnings as errors (code should be clean)
-Wno-format-truncation # Inhibit printf-style format truncation warnings
-Wno-stringop-truncation # Inhibit string operation truncation warnings
Expand Down
12 changes: 12 additions & 0 deletions cmake/sample_defs/arch_build_custom_native.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#
# Example arch_build_custom.cmake
# -------------------------------
#
# On native builds only, add strict cast alignment warnings
# This requires a newer version of gcc
#
add_compile_options(
-Wcast-align=strict # Warn about casts that increase alignment requirements
-fno-common # Do not use a common section for globals
)

21 changes: 12 additions & 9 deletions cmake/sample_defs/sample_mission_cfg.h
Original file line number Diff line number Diff line change
Expand Up @@ -258,14 +258,16 @@
*/
#define CFE_MISSION_EVS_MAX_MESSAGE_LENGTH 122

#ifndef CFE_OMIT_DEPRECATED_6_8
/* These names have been converted to an enum in cfe_es_api_typedefs.h */

/** \name Checksum/CRC algorithm identifiers */
/** \{ */
#define CFE_MISSION_ES_CRC_8 1 /**< \brief CRC ( 8 bit additive - returns 32 bit total) (Currently not implemented) */
#define CFE_MISSION_ES_CRC_16 2 /**< \brief CRC (16 bit additive - returns 32 bit total) */
#define CFE_MISSION_ES_CRC_32 \
3 /**< \brief CRC (32 bit additive - returns 32 bit total) (Currently not implemented) \
*/
/** \} */

#define CFE_MISSION_ES_CRC_8 CFE_ES_CrcType_CRC_8 /* 1 */
#define CFE_MISSION_ES_CRC_16 CFE_ES_CrcType_CRC_16 /* 2 */
#define CFE_MISSION_ES_CRC_32 CFE_ES_CrcType_CRC_32 /* 3 */

#endif

/**
** \cfeescfg Mission Default CRC algorithm
Expand All @@ -276,9 +278,10 @@
** Table Image data integrity values.
**
** \par Limits
** Currently only CFE_MISSION_ES_CRC_16 is supported (see #CFE_MISSION_ES_CRC_16)
** Currently only CFE_ES_CrcType_CRC_16 is supported (see brief in CFE_ES_CrcType_Enum
** definition in cfe_es_api_typedefs.h)
*/
#define CFE_MISSION_ES_DEFAULT_CRC CFE_MISSION_ES_CRC_16
#define CFE_MISSION_ES_DEFAULT_CRC CFE_ES_CrcType_CRC_16

/**
** \cfetblcfg Maximum Table Name Length
Expand Down
2 changes: 2 additions & 0 deletions cmake/sample_defs/targets.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -104,10 +104,12 @@ SET(MISSION_CPUNAMES cpu1)
SET(cpu1_PROCESSORID 1)
SET(cpu1_APPLIST ci_lab to_lab sch_lab)
SET(cpu1_FILELIST cfe_es_startup.scr)
SET(cpu1_SYSTEM i686-linux-gnu)

# CPU2 example. This is not built by default anymore but
# serves as an example of how one would configure multiple cpus.
SET(cpu2_PROCESSORID 2)
SET(cpu2_APPLIST ci_lab to_lab sch_lab)
SET(cpu2_FILELIST cfe_es_startup.scr)
SET(cpu2_SYSTEM i686-linux-gnu)

Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,4 @@ SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
# abstraction layers are built when using this toolchain
# Note that "pc-linux" works fine even though this is not technically a "pc"
SET(CFE_SYSTEM_PSPNAME "pc-linux")
SET(OSAL_SYSTEM_BSPTYPE "pc-linux")
SET(OSAL_SYSTEM_OSTYPE "posix")

25 changes: 0 additions & 25 deletions cmake/sample_defs/toolchain-cpu3.cmake

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ SET(CMAKE_SYSTEM_PROCESSOR i686)
# Specify the cross compiler executables
# Typically these would be installed in a home directory or somewhere
# in /opt. However in this example the system compiler is used.
SET(CMAKE_C_COMPILER "/usr/bin/gcc")
SET(CMAKE_CXX_COMPILER "/usr/bin/g++")
SET(CMAKE_C_COMPILER "/usr/bin/clang")
SET(CMAKE_CXX_COMPILER "/usr/bin/clang++")

# Configure the find commands
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
Expand All @@ -20,6 +20,4 @@ SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE NEVER)
# These variable settings are specific to cFE/OSAL and determines which
# abstraction layers are built when using this toolchain
SET(CFE_SYSTEM_PSPNAME "pc-linux")
SET(OSAL_SYSTEM_BSPNAME "pc-linux")
SET(OSAL_SYSTEM_OSTYPE "posix")

Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,4 @@ SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE NEVER)
# These variable settings are specific to cFE/OSAL and determines which
# abstraction layers are built when using this toolchain
SET(CFE_SYSTEM_PSPNAME "pc-linux")
SET(OSAL_SYSTEM_BSPNAME "pc-linux")
SET(OSAL_SYSTEM_OSTYPE "posix")

Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,4 @@ SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
# these settings are specific to cFE/OSAL and determines
# which abstraction layers are built when this toolchain is used
SET(CFE_SYSTEM_PSPNAME pc-linux)
SET(OSAL_SYSTEM_BSPTYPE pc-linux)
SET(OSAL_SYSTEM_OSTYPE posix)

3 changes: 2 additions & 1 deletion cmake/target/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ if (${TGTNAME}_APPLIST)

set_target_properties(core-${TGTNAME} PROPERTIES ENABLE_EXPORTS TRUE)

if ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
if (("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU") OR ("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang"))
# The option pair for GNU gcc/ld tools
set(START_WHOLE_ARCHIVE "--whole-archive")
set(STOP_WHOLE_ARCHIVE "--no-whole-archive")
Expand All @@ -165,6 +165,7 @@ if (${TGTNAME}_APPLIST)
set(COMPILER_LINKER_OPTION_PREFIX "-Wl,")
else()
# Other toolchain options may be added here
message(WARNING "Unmatched compiler id, WHOLE_ARCHIVE flags not automatically set and may need custom config")
endif()

# Determine if a pass-through prefix is needed for a linker option.
Expand Down
Loading

0 comments on commit 9a39e73

Please sign in to comment.