As discussed at the weekly tools meeting, I am proposing that all
unsupported tool chains get removed from tools_def.template in the
Basetools/Conf folder (edk2/tools_def.template at master ·
tianocore/edk2 (github.com)
<https://github.com/tianocore/edk2/blob/master/BaseTools/Conf/tools_def.template>).
The fact that VS2008 is still listed there is proof of a problem.
Many of these old tool chains are not available and if found would not
reliably work anyway (see dozens of emails on the list, most recent by
rebecca).
The suggestion from the tools meeting discussions is that we should
setup maintainers for each tool chain tag and any tool chain tag without
a maintainer would then be removed.
Today the CI and PR system is testing the most recent versions of VS and
GCC. As of this email that tag is VS2019 and GCC5. There has also been
a desire to add clang (clangpdb tag) to the list of CI builds but it is
currently only partially supported and needs some community effort. The
GCC5 tag might need more clarity as I know this supports many different
versions so I am not sure how to correctly communicate what is the
actual supported version. Maybe the container discussion would help
([CI] Use containers on Linux · Discussion #2732 · tianocore/edk2
(github.com) <https://github.com/tianocore/edk2/discussions/2732>) and
it could be N and N-1 on the latest container images?
Finally, the question is how to define a supported tool chain and what
are the expectations for the "maintainer". I would propose two things.
1. A category/tag created for the tool chain in the issue tracking
system and the maintainer will be the default assigned owner for
incoming bugs and is responsible for triage and resolution.
a. If all maintainers resign the community would be notified and if
no one came forward the toolchain would be dropped.
b. If the tag had a high bug count and low resolution/response rate
the toolchain maintainer role would be re-evaluated.
2. At defined points in the edk2 development process, each package is
compiled in debug, release, and noopt for the toolchain for all
supported architectures. The report is made available.
A. Suggested at minimum for each hard freeze stable tag point but
could be CI, nightly, weekly, etc.
B. Suggestion is this should somehow be automated for the CI system
and tool chains supported.
3. Update maintainers.txt to indicate tool chain maintainers
Please use this email and/or tools meeting to discuss the proposal or
becoming a toolchain maintainer.
RFC will be implemented after the may stable tag if no issues are raised.
Thanks
Sean
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#89472): https://edk2.groups.io/g/devel/message/89472
Mute This Topic: https://groups.io/mt/90848478/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-