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 #2120, Support clang for whole archive flags #2204

Merged
merged 1 commit into from
Nov 28, 2022

Conversation

skliper
Copy link
Contributor

@skliper skliper commented Nov 10, 2022

Checklist (Please check before submitting)

Describe the contribution

Testing performed
W/ Clang 10 installed, performed the following changes in sample_defs:

  • Removed unsupported flags
  • Compiled permissive to confirm it worked w/ standard user privilages
  • Explicitly set cpu1 to use the clang toolchain
diff sample_defs/arch_build_custom.cmake cfe/cmake/sample_defs/arch_build_custom.cmake
36a37,38
>     -Wno-format-truncation      # Inhibit printf-style format truncation warnings
>     -Wno-stringop-truncation    # Inhibit string operation truncation warnings
diff sample_defs/default_osconfig.cmake cfe/cmake/sample_defs/default_osconfig.cmake
36d35
< set(OSAL_CONFIG_DEBUG_PERMISSIVE_MODE TRUE)
diff sample_defs/targets.cmake cfe/cmake/sample_defs/targets.cmake
107d106
< SET(cpu1_SYSTEM i686-linux-clang)

Expected behavior changes
Properly sets the whole archive flags for clang, warns if compiler is unmatched

System(s) tested on
CI shows no impact to base system
Steps above to prove Clang works

Additional context
Could add to CI if someone wanted to maintain support, might be overcome if there's a target added to CI that uses clang.
Clang build does depend on nasa/sample_lib#92 being merged, but doesn't impact current CI

Third party code
None

Contributor Info - All information REQUIRED for consideration of pull request
Jacob Hageman - NASA/GSFC

@skliper skliper added the CCB:Ready Ready for discussion at the Configuration Control Board (CCB) label Nov 10, 2022
@dzbaker dzbaker added CCB:Approved Indicates code review and approval by community CCB and removed CCB:Ready Ready for discussion at the Configuration Control Board (CCB) labels Nov 17, 2022
dzbaker added a commit to nasa/cFS that referenced this pull request Nov 23, 2022
*Combines:*

osal v6.0.0-rc4+dev165
cFE v7.0.0-rc4+dev215
sample_lib v1.3.0-rc4+dev32

**Includes:**

*osal*
- nasa/osal#1334

*cFE*
- nasa/cFE#2209
- nasa/cFE#2206
- nasa/cFE#2204
- nasa/cFE#2203

*sample_lib*
- nasa/sample_lib#92

Co-authored by: Jacob Hageman  <skliper@users.noreply.github.com>
dzbaker added a commit to nasa/cFS that referenced this pull request Nov 28, 2022
*Combines:*

osal v6.0.0-rc4+dev165
cFE v7.0.0-rc4+dev218
sample_lib v1.3.0-rc4+dev32

**Includes:**

*osal*
- nasa/osal#1334

*cFE*
- nasa/cFE#2209
- nasa/cFE#2206
- nasa/cFE#2204
- nasa/cFE#2203

*sample_lib*
- nasa/sample_lib#92

Co-authored by: Jacob Hageman  <skliper@users.noreply.github.com>
@dzbaker dzbaker merged commit 48dfae0 into nasa:main Nov 28, 2022
dzbaker added a commit to nasa/cFS that referenced this pull request Nov 28, 2022
*Combines:*

osal v6.0.0-rc4+dev165
cFE v7.0.0-rc4+dev218
sample_lib v1.3.0-rc4+dev32

**Includes:**

*osal*
- nasa/osal#1334

*cFE*
- nasa/cFE#2209
- nasa/cFE#2206
- nasa/cFE#2204
- nasa/cFE#2203

*sample_lib*
- nasa/sample_lib#92

Co-authored by: Jacob Hageman  <skliper@users.noreply.github.com>
@dmknutsen dmknutsen added this to the Draco milestone Jan 18, 2023
@skliper skliper deleted the fix2120-clang_support branch September 1, 2023 20:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CCB:Approved Indicates code review and approval by community CCB draco-rc4
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Account for Clang based toolchains in CMake logic for --whole-archive flag generation
3 participants