- Notifications
You must be signed in to change notification settings - Fork23
freebsd: Document how to build UEFI app on FreeBSD#52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:main
Are you sure you want to change the base?
Uh oh!
There was an error while loading.Please reload this page.
Conversation
| gmake -C framework_uefi build/x86_64-unknown-uefi/boot.efi | ||
| # Build QEMU image | ||
| # TODO: Does not work yet, need a replacement for GNU parted |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
@aokblast is there a scripted way to format a disk image on FreeBSD?
On Linux I used GNU parted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Hello, we havegpart which is the abbriviate ofgeom part that enable you to create and add partition. I found apost on stack exchange that have examples about this. Do I answer your question?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Oh, you are talking about image. We have mkimg which can be used as following pattern (stolen from my previous commit :) )
cfgdirname=$(mktemp -d /tmp/config.XXXXX)cp ${BASEBITSDIR}/etc/bsdinstall.example ${cfgdirname}makefs -D -B little -t msdos -o fat_type=16 -o volume_label=CONFIG -o create_size=16m ${2}.config ${cfgdirname}mkimg -s mbr \ -b ${BASEBITSDIR}/boot/mbr \ -p efi:=${espfilename} \ -p freebsd:-"mkimg -s bsd -b ${BASEBITSDIR}/boot/boot -p freebsd-ufs:=${2}.part" \ -p fat16b:=${2}.config\There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
oh! That's cool. That looks super easy!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Haven't tried, but might be as simple as this:
$(BUILD)/boot.img: $(BUILD)/boot.efi mkimg -s gpt \ -p efi:=$<But how can I use different make rules on FreeBSD 🤔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
What is the make rules you mentioned? Could you give me some detailed example?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Oops, I forget some code segment. You have to create a partition image by mkfs than put file into it by directory. After that, you can use mkimg to create a full disk image. Here is apatch use this feature. You can take a release/amd64/make-memstick.sh as example. Hope I answered your question.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Done! Now we just need to make sure it uses different commands on linux vs bsd
Signed-off-by: Daniel Schaefer <dhs@frame.work>
Signed-off-by: Daniel Schaefer <dhs@frame.work>
No description provided.