mirror of
https://github.com/fspc/gbootroot.git
synced 2025-02-24 09:23:23 -05:00
This adds romfs capability.
This commit is contained in:
parent
c388d93b8c
commit
79ceb15b1f
@ -1418,20 +1418,21 @@ sub create_filesystem {
|
||||
while (Gtk->events_pending) { Gtk->main_iteration; }
|
||||
}
|
||||
|
||||
if ( $fs_type eq "mkcramfs" ) {
|
||||
if ( $fs_type eq "mkcramfs" || $fs_type eq "genromfs" ) {
|
||||
# Will just keep appending _cramfs .. leaving it to the
|
||||
# user to realize this is happening, that way the user
|
||||
# has control over the dd file.
|
||||
$device = $device . "_cramfs";
|
||||
my $cramfs_name = basename($device);
|
||||
$fs_type eq "mkcramfs" ? ($device = $device . "_cramfs") :
|
||||
($device = $device . "_romfs");
|
||||
my $cramfs_name = basename($device);
|
||||
# If somebody closes ARS, this won't get updated,
|
||||
# but that is a minor matter.
|
||||
$ear2->set_text($cramfs_name) if $ear2;
|
||||
$ear2->set_text($cramfs_name) if $ear2;
|
||||
$mount_point = dirname($device);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
elsif (
|
||||
sys("/usr/lib/bootroot/$main::makefs -b $fs_size -d $mount_point -D $device_table $device") !~
|
||||
/^0$/ ) {
|
||||
|
13
expect_uml
13
expect_uml
@ -47,9 +47,12 @@ my $uml =
|
||||
|
||||
$uml->boot();
|
||||
# Make the GID/UID 0 FS
|
||||
if ( $filesystem =~ /^mkcramfs/ ) {
|
||||
if ( $filesystem =~ /^mkcramfs/ || $filesystem =~ /^genromfs/ ) {
|
||||
$uml->command("mke2fs -m0 /dev/ubd/1");
|
||||
}
|
||||
elsif ( $filesysem =~ /^genromfs/ ) {
|
||||
$uml->command("$filesystem");
|
||||
}
|
||||
else {
|
||||
$uml->command("$filesystem /dev/ubd/1");
|
||||
}
|
||||
@ -67,6 +70,14 @@ if ( $filesystem =~ /^mkcramfs/ ) {
|
||||
$uml->command("mount -t hostfs none -o $cram_dir /mnt2");
|
||||
$uml->command("mkcramfs /mnt1 /mnt2/$cramfs_name");
|
||||
}
|
||||
if ( $filesystem =~ /^genromfs/ ) {
|
||||
my $romfs_dir = dirname($mount_point);
|
||||
my $root_fs_name = basename($ARGV[1]);
|
||||
my $romfs_name = "$root_fs_name" . "_romfs";
|
||||
$uml->command("umount /mnt2");
|
||||
$uml->command("mount -t hostfs none -o $romfs_dir /mnt2");
|
||||
$uml->command("genromfs -d /mnt1 -f /mnt2/$romfs_name");
|
||||
}
|
||||
$uml->command("umount /mnt1; umount /mnt2");
|
||||
$uml->halt();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user