Page MenuHomeFreeBSD

Use makefs -t msdos in make_esp_file

Authored by freqlabs on Aug 23 2019, 8:25 PM.



With this last piece in place, make -C /usr/src/release release.iso is finally able to run in a jail. This was not possible before because msdosfs cannot be mounted inside a jail.

Sponsored by: iXsystems, Inc.

Diff Detail

rS FreeBSD src repository
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

This looks good to me.

This revision is now accepted and ready to land.Aug 23 2019, 10:11 PM
emaste added a reviewer: releng.

LGTM but releng should review

gjb added a subscriber: gjb.

Looks reasonable to me.

This revision was automatically updated to reflect the committed changes.

I tried to build SVN head (r353191) today on 12.0-RELEASE-p10 amd64 and I am getting an error when trying to build CDs:

$ sudo env MAKEOBJDIRPREFIX=/build/obj/freebsd make -C release cdrom
sh /usr/home/saper/src/freebsd/release/amd64/ -b 13_0_CURRENT_amd64_CD disc1.iso disc1 
makefs: Unknown fs type `msdosfs'.

Apparently /usr/sbin/makefs is being used that does not know msdosfs yet.

How to fix it?

How to fix it?

The easiest temporary workaround is probably to modify tools/boot/ so that it invokes the makefs from the build:

-    makefs -t msdos \
+    $(dirname ${loader})/../usr/sbin/makefs -t msdos \

Or as another option you could revert this commit locally.

I saw the makefs changes MFC'd so I imagine this should not be a problem on 12.1, when that comes around.

Thanks, yes, reverting it locally fixed that for me. Shouldn't makefs become part of the bootstrap tools then? Requiring 12.1 is a bit tight...

makefs become part of the bootstrap tools

That is an excellent idea, I can look into it if there are no volunteers who know how to do that already.