Host / Target Compilation and Toolchains #612
steven-bellock
started this conversation in
General
Replies: 2 comments 1 reply
-
We're working on porting libspdm to two platforms of our company, and which has integrated build environments, e.g. OpenBMC (Yocto-based) and Zephyr (West + CMake). The integrated build environment has the ability to feed cross compiler variables |
Beta Was this translation helpful? Give feedback.
0 replies
-
@LeeTroy , thanks for the info. Do you have any proposal? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
The libspdm build system currently employees
DARCH
andDTOOLCHAIN
to specify the target machine architecture (x64, aarch64, etc), compiler executable (gcc, aarch64-linux-gnu-gcc), and whichprocessor_bind.h
file to#include
. However,DTOOLCHAIN
is slightly awkward in that, for example, when targeting aarch64 with GCC,DTOOLCHAIN=AARCH64_GCC
is used rather thanDTOOLCHAIN=GCC
. There are additional target considerations such as baremetal and endianness. In light of that this thread is to discuss possible changes to how host, target, and toolchain are specified.In particular CMake is able to detect the host architecture, so if the host and target are the same the user should not have to specify
DARCH
. We may also need another parameter to specify variants of an architecture's toolchain. For example aarch64 can encompassaarch64-none-elf
,aarch64-none-linux-gnu
, andaarch64_be-none-linux-gnu
.Beta Was this translation helpful? Give feedback.
All reactions