Page MenuHomeFreeBSD

Only create the machine and x86 symlinks on x86
ClosedPublic

Authored by andrew on Apr 11 2015, 10:57 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Dec 20, 9:36 AM
Unknown Object (File)
Sat, Dec 7, 12:56 AM
Unknown Object (File)
Thu, Nov 28, 11:00 PM
Unknown Object (File)
Thu, Nov 28, 11:00 PM
Unknown Object (File)
Thu, Nov 28, 11:00 PM
Unknown Object (File)
Thu, Nov 28, 11:00 PM
Unknown Object (File)
Thu, Nov 28, 10:41 PM
Unknown Object (File)
Tue, Nov 26, 9:01 AM
Subscribers

Details

Summary

This only creates the symlinks on x86 platforms, and sets the machine
link correctly.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

andrew retitled this revision from to Only create the machine and x86 symlinks on x86.
andrew updated this object.
andrew edited the test plan for this revision. (Show Details)
andrew added reviewers: rpaulo, emaste, jhb.

Doesn't arm need the machine link too?
At the very least, it should be not-harmful.
I can understand making the x86 link be extra only on x86... There should be a standard way to do that, but sadly there isn't.

On arm we use the standard headers from buildworld. I suspect this is here to allow loader to be built directly on an older world, i.e. without using buildenv. As I'm mostly cross building, so will be using buildenv to test, this is less of an issue on arm.

In D2283#5, @andrew wrote:

On arm we use the standard headers from buildworld. I suspect this is here to allow loader to be built directly on an older world, i.e. without using buildenv. As I'm mostly cross building, so will be using buildenv to test, this is less of an issue on arm.

Once upon a time, you could cd to any boot directory on the native architecture and type 'make' and have it work, even if you hadn't already built world. This seems to break it for arm.

Definitely amd64 to ${MACHINE_CPUARCH} is a good change. I'm indifferent to the other changes but regardless of which way we go here I'd expect loader and boot1 to be the same.

sys/boot/efi/boot1/Makefile
99 ↗(On Diff #4791)

OK

101–102 ↗(On Diff #4791)

Perhaps this could go inside an ifdef? I guess it doesn't matter too much either way.

I agree with Warner that it would be nice to keep the 'cd boot/foo && make' compatibility without requiring buildenv.

andrew edited edge metadata.

Always create the machine link, and use ${MACHINE} for this.

imp added a reviewer: imp.
This revision is now accepted and ready to land.Apr 13 2015, 3:54 PM
andrew updated this revision to Diff 4806.

Closed by commit rS281496 (authored by @andrew).