diff options
author | Kinsey Moore <kinsey.moore@oarcorp.com> | 2022-04-18 12:24:47 -0500 |
---|---|---|
committer | Joel Sherrill <joel@rtems.org> | 2022-04-26 09:23:22 -0500 |
commit | 88dc1880ec18372941fc5830ce6f60d2b60f1569 (patch) | |
tree | 5304589e952eacbeecd3abc09291257dfc3b00d0 | |
parent | MAINTAINERS: add emeritus category and retire some maintainers (diff) | |
download | rtems-88dc1880ec18372941fc5830ce6f60d2b60f1569.tar.bz2 |
wscript: Allow start code to be written in C
Start code for most platforms requires hand-coded ASM but some can be
bootstrapped entirely in C, especially for paravirtualized platforms.
This change allows start code to be written in C where possible instead
of requiring architecture-specific ASM to bridge to C.
-rwxr-xr-x | wscript | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -561,7 +561,11 @@ class StartFileItem(Item): super(StartFileItem, self).__init__(uid, data) def do_build(self, bld, bic): - tgt = self.asm(bld, bic, self.data["source"], self.get(bld, "target")) + source = self.data["source"] + if os.path.splitext(source[0])[1] == ".S": + tgt = self.asm(bld, bic, source, self.get(bld, "target")) + else: + tgt = self.cc(bld, bic, source, self.get(bld, "target")) node = bld.bldnode.make_node(tgt) try: bld.start_files.append(node) |