Page MenuHomeFreeBSD

i386: Fix build (of 'genassym.o')
ClosedPublic

Authored by olce on Wed, Jun 3, 1:20 PM.
Tags
None
Referenced Files
F159314834: D57402.diff
Fri, Jun 12, 7:03 PM
Unknown Object (File)
Thu, Jun 11, 2:02 PM
Unknown Object (File)
Wed, Jun 10, 12:38 AM
Unknown Object (File)
Tue, Jun 9, 9:12 PM
Unknown Object (File)
Mon, Jun 8, 6:41 AM
Unknown Object (File)
Thu, Jun 4, 11:14 AM
Unknown Object (File)
Thu, Jun 4, 1:42 AM
Unknown Object (File)
Thu, Jun 4, 12:27 AM
Subscribers

Details

Summary

i386's genassym.c needs to define some assembly symbols holding the size
of NFS structures to support NFS_ROOT while booting with a nfs_diskless
structure. For this, it needs to include a few NFS headers, which
require definitions from <sys/mount.h> (fhandle_t, vfs_init_t), which
was removed by commit 72ab129799a2 ("x86: remove sys/mount.h from
genassym.c").

Since recently, <sys/mount.h> has been including <sys/vnode.h>, so needs
"vnode_if.h" to have been generated for the compilation of 'genassym.o'
not to fail. Make sure this is the case (for all architectures for
simplicity) by tweaking the rule for 'genassym.o' in
'sys/conf/kern.post.mk', leaving a comment there so that it can be
removed when i386 is dropped (or if the above-mentioned dependency is
broken).

Fixes: 72ab129799a2 ("x86: remove sys/mount.h from genassym.c")
Sponsored by: The FreeBSD Foundation

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 73633
Build 70516: arc lint + arc unit