tree 248468aa7eb37585f4c33fdd7f82ec7153511ccd
parent 921b4a408cb2ce50e4eb8336ce41c398c805566b
author Johnathan Van Why <jrvanwhy@google.com> 1610603070 -0800
committer Johnathan Van Why <jrvanwhy@google.com> 1610603070 -0800

Update libtock's build script to not conflict with libtock_runtime's build script and remove the broken empty_main example.

I made changes to libtock_runtime's linker scripts and the changes were not having any effect.

Explanation: According to the cargo reference, build scripts should only write to OUT_DIR [1]. This is not enforced, and libtock's build script wrote `layout.ld` directly in `libtock`'s source directory. This works for libtock because rust-lld is executed in the cargo workspace directory, which is libtock's source directory, so the linker was able to find layout.ld. However, after libtock has been build once, when the linker runs for libtock_runtime, there are two layout.ld files present: the file in OUT_DIR from libtock_runtime's build script and a leftover layout.ld file from the last time libtock was compiled. The linker selected the layout.ld file in the libtock package, which is not the one we wanted it to select. There isn't a way to change this behavior by the linker.

To avoid this, I changed libtock's build script to copy its layout.ld into OUT_DIR, isolating it from libtock_runtime. I also removed layout.ld from .gitignore. So that the include from layout.ld to layout_generic.ld works, I also made it copy layout_generic.ld into OUT_DIR (the same way libtock_runtime's new build script works).

This then broke libtock_core's example, `empty_main`. libtock_core does not have a linker script mechanism, and its build was relying on the presence of layout.ld from libtock's build script. This is a bug, and was never caught.

I added the `empty_main` example before I redirected my libtock_platform efforts at Tock 2.0. At that time, I was planning to add libtock_runtime to libtock_core. However, when I changed my libtock_platform efforts to the Tock 2.0 ABI, it was no longer possible to add libtock_runtime to libtock_core. It also means that empty_main isn't very useful (it measures the size of code I'm replacing rather than refactoring), so I deleted it.

[1] https://doc.rust-lang.org/cargo/reference/build-scripts.html#outputs-of-the-build-script
