Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #1207, Add wrapper targets to simplify app builds #1210

Merged
merged 1 commit into from
Mar 5, 2021

Conversation

jphickey
Copy link
Contributor

@jphickey jphickey commented Mar 4, 2021

Describe the contribution
Adds the following functions to simplify tracking of dependencies and use of interface libraries provided by CFE:

add_cfe_app_dependency - dependency that applies to both FSW and coverage test
add_cfe_coverage_dependency - dependency that applies only to coverage test (i.e. for overrides)
add_cfe_coverage_test - creates object + executable targets for coverage test
add_cfe_coverage_unit_include - add extra include path to unit build (i.e. for overrides)
add_cfe_coverage_stubs - add a stub library for coverage testing other modules

The goal is to reduce/eliminate the need to directly specify any include paths or compile definitions for dependencies, relying
on target properties to do this instead.

Fixes #1207

Testing performed
Build and run all CFE unit tests (this only affects UT, not FSW)

Expected behavior changes
None, just adding the routines for now, sample app/lib will be transitioned to use them in subsequent PR

System(s) tested on
Ubuntu 20.04

Additional context
This is needed as part of preparation for directory reorganization in #1203. These wrapper functions will make it much easier to fixup apps that depended on the old include paths.

With this they shouldn't need to ever refer directly to an include path (or any path) from another target, so it should avoid any future issues if files get moved around again.

See also nasa/sample_lib#46 and nasa/sample_app#126

Contributor Info - All information REQUIRED for consideration of pull request
Joseph Hickey, Vantage Systems, Inc.

Adds the following functions to simplify tracking of dependencies
and use of interface libraries provided by CFE.

The goal is to reduce/eliminate the need to directly specify any
include paths or compile definitions for dependencies, relying
on target properties to do this instead.
@jphickey jphickey added build-system CCB:FastTrack CCB:Ready Ready for discussion at the Configuration Control Board (CCB) labels Mar 4, 2021
@jphickey
Copy link
Contributor Author

jphickey commented Mar 4, 2021

If possible I'd like to fast track this one since it's part of the path to merging #1203 and getting the directory reorg settled. It's bigger than what I'd normally request to fast track but due to time line and the fact that it doesn't change FSW at all maybe we can?

@skliper skliper self-assigned this Mar 5, 2021
@skliper skliper merged commit b24e9db into nasa:main Mar 5, 2021
@jphickey jphickey deleted the fix-1207-add-cfe-build-wrappers branch March 10, 2021 14:43
@skliper skliper added this to the 7.0.0 milestone Sep 24, 2021
@astrogeco astrogeco removed the CCB:Ready Ready for discussion at the Configuration Control Board (CCB) label Sep 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update/resurrect the add_unit_test_lib/add_unit_test_exe functions
3 participants