<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en" style='--code-editor-font: var(--default-mono-font, "GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;'>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>
GitLab
</title>

<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>

<style>img {
max-width: 100%; height: auto;
}
body {
font-size: .875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px;
}
body {
font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px; font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";'>
<div class="content">

<p class="details" style="font-style: italic; color: #626168;">
<a href="https://gitlab.rtems.org/amar">Amar Takhar</a> created an issue: <a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5299">#5299</a>
</p>
<p>
Assignee: Amar Takhar
</p>
<div class="md" style="position: relative; z-index: 1; color: #3a383f; word-wrap: break-word;">
<h2 dir="auto" style="margin-top: 0; margin-bottom: 10px;" align="initial">
<a href="#summary" aria-hidden="true" class="anchor" id="user-content-summary" style="margin-top: 0; margin-left: -20px; text-decoration: none; outline: none; position: absolute; width: 20px;"></a>Summary</h2>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">As part of the effort in <a href="https://gitlab.rtems.org/groups/rtems/-/epics/33" data-reference-type="epic" data-original="https://gitlab.rtems.org/groups/rtems/-/epics/33" data-link="false" data-link-reference="true" data-group="3" data-group-path="rtems" data-iid="33" data-epic="37" data-container="body" data-placement="top" title="Move 3rd party code to contrib" class="gfm gfm-epic" style="margin-top: 0;">rtems&33</a> to move 3rd party code to <code style='font-size: 90%; color: #18171d; word-wrap: break-word; border-radius: .25rem; background-color: #ececef; font-weight: inherit; white-space: break-spaces; word-break: break-all; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; overflow-wrap: break-word; padding: 0.125rem 0.25rem;'>/contrib/</code> there needs to be a separation of building to isolate includes.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">Right now all 3rd party includes are usually moved to the general <code style='font-size: 90%; color: #18171d; word-wrap: break-word; border-radius: .25rem; background-color: #ececef; margin-top: 0; font-weight: inherit; white-space: break-spaces; word-break: break-all; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; overflow-wrap: break-word; padding: 0.125rem 0.25rem;'>/include/</code> directory.  They all get installed in the same place which is fine but for building RTEMS we should ensure that only code that uses those headers has access to them.  In general practice for some this may not be possible if a lot of RTEMS is using that library but for those that can we should.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">Some are already built in isolation such as <code style='font-size: 90%; color: #18171d; word-wrap: break-word; border-radius: .25rem; background-color: #ececef; margin-top: 0; font-weight: inherit; white-space: break-spaces; word-break: break-all; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; overflow-wrap: break-word; padding: 0.125rem 0.25rem;'>libz</code> so it's not a big deal to do this for everything else.  Any RTEMS files that need access to those headers can be moved into that "library" in this case no libraries are built they are still objects so there is no extra steps this is a feature of waf that we should be leveraging.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">Development wise there is no change this is a build-system only change no RTEMS files (outside of <code style='font-size: 90%; color: #18171d; word-wrap: break-word; border-radius: .25rem; background-color: #ececef; margin-top: 0; font-weight: inherit; white-space: break-spaces; word-break: break-all; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; overflow-wrap: break-word; padding: 0.125rem 0.25rem;'>/contrib/</code> would move and no functional change would happen to the build system just how they are built and where the files site in the <code style='font-size: 90%; color: #18171d; word-wrap: break-word; border-radius: .25rem; background-color: #ececef; font-weight: inherit; white-space: break-spaces; word-break: break-all; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; overflow-wrap: break-word; padding: 0.125rem 0.25rem;'>/build/</code> directory.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">This also gives us a clear distinction of 3rd party usage within RTEMS as well as an added benefit which right now is impossible to tell unless you know what the headers are called and start grepping.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">Relates to <a href="https://gitlab.rtems.org/groups/rtems/-/epics/33" data-reference-type="epic" data-original="https://gitlab.rtems.org/groups/rtems/-/epics/33" data-link="false" data-link-reference="true" data-group="3" data-group-path="rtems" data-iid="33" data-epic="37" data-container="body" data-placement="top" title="Move 3rd party code to contrib" class="gfm gfm-epic" style="margin-top: 0;">rtems&33</a></p>
<h2 dir="auto" style="margin-top: 20px; margin-bottom: 10px;" align="initial">
<a href="#steps-to-reproduce" aria-hidden="true" class="anchor" id="user-content-steps-to-reproduce" style="margin-top: 0; margin-left: -20px; text-decoration: none; outline: none; position: absolute; width: 20px;"></a>Steps to reproduce</h2>
<h3 dir="auto" style="margin-top: 1.5rem; margin-bottom: 0; font-weight: 600; font-size: 1.125rem; letter-spacing: inherit; line-height: 1.25; color: #18171d;" align="initial">
<a href="#pre-set-options" aria-hidden="true" class="anchor" id="user-content-pre-set-options" style="margin-top: 0; margin-left: -20px; text-decoration: none; outline: none; position: absolute; width: 20px;"></a>Pre-set options</h3>
</div>

</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #626168;">

<br>
<a href="https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5299">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://gitlab.rtems.org">gitlab.rtems.org</a>. <a href="https://gitlab.rtems.org/-/sent_notifications/ef1c1b19bdadf03580e1fe2f572f8a68/unsubscribe" target="_blank" rel="noopener noreferrer">Unsubscribe</a> from this thread · <a href="https://gitlab.rtems.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link">Manage all notifications</a> · <a href="https://gitlab.rtems.org/help" target="_blank" rel="noopener noreferrer" class="help-link">Help</a>
<span style="color: transparent; font-size: 0; display: none; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0;">
Notification message regarding https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5299 at 1752593213
</span>
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","action":{"@type":"ViewAction","name":"View Issue","url":"https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5299"}}</script>


</p>
</div>
</body>
</html>