Page MenuHomeFreeBSD

Use makefs -t msdos in make_esp_file
ClosedPublic

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

Details

Summary

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

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

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/mkisoimages.sh -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/install-boot.sh 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.