<p></p>
<p>I'd like to add another requirement:</p>
<ul>
<li>build each .C with the CFLAGS and and defines it needs, and no more.</li>
</ul>
<p>This makes incremental builds possible even when configuration changes. The build system should only rebuild what needs rebuilding. (IMO, "let ccache sort that out" is a bad choice).</p>
<p>This rules out building e.g., core with "-DMODULE_FATFS" if there's no need. It rules out including a global "auto_config.h".</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/RIOT-OS/RIOT/issues/14027#issuecomment-624560662">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABE7WYBF3IGN6AQ4OW47V53RQEZ6TANCNFSM4MZYMHUQ">unsubscribe</a>.<img src="https://github.com/notifications/beacon/ABE7WYCBE7EXSZELJEESLRLRQEZ6TA5CNFSM4MZYMHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEU5AUFQ.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/RIOT-OS/RIOT/issues/14027#issuecomment-624560662",
"url": "https://github.com/RIOT-OS/RIOT/issues/14027#issuecomment-624560662",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>