diff options
author | Olivier Blin <oblin@mandriva.com> | 2008-12-24 01:05:24 +0000 |
---|---|---|
committer | Olivier Blin <oblin@mandriva.com> | 2008-12-24 01:05:24 +0000 |
commit | 4964b52fce46ea529912a8ca225d4b4fcf7155f6 (patch) | |
tree | ba748a67f550ed5218b9d8d32f2b945f82b95da9 | |
parent | deea3944f95292bd7538f2639a9ef6c7f57d2cc5 (diff) | |
download | drakiso-4964b52fce46ea529912a8ca225d4b4fcf7155f6.tar drakiso-4964b52fce46ea529912a8ca225d4b4fcf7155f6.tar.gz drakiso-4964b52fce46ea529912a8ca225d4b4fcf7155f6.tar.bz2 drakiso-4964b52fce46ea529912a8ca225d4b4fcf7155f6.tar.xz drakiso-4964b52fce46ea529912a8ca225d4b4fcf7155f6.zip |
extract build_iso_image
-rwxr-xr-x | draklive | 42 |
1 files changed, 27 insertions, 15 deletions
@@ -537,6 +537,30 @@ sub create_cdrom_master { $dest = get_cdrom_master_path($live, $opts); mkdir_p(dirname($dest)); } + build_iso_image( + $dest, + $live->get_builddir . $live->{prefix}{build}{boot} . '/syslinux', + $live->get_builddir . $live->{prefix}{build}{boot} . get_syslinux_path($live->{media}, $opts), + $label, + $live->get_media_prefix('boot', $opts->{boot}) . '=' . $live->get_builddir . $live->{prefix}{build}{boot}, + if_(!$opts->{boot_only}, + (map { + $live->get_media_prefix('loopbacks', $opts->{boot}) . $_ . + '=' . + $live->get_builddir . $live->{prefix}{build}{loopbacks} . $_; + } list_selected_loopbacks($live)), + if_($live->{media}{files}, + map { + $_ . '=' . $live->get_builddir . $live->{prefix}{build}{files} . '/' . $_; + } all($live->get_builddir . $live->{prefix}{build}{files}) + ), + ), + ); +} + +sub build_iso_image { + my ($dest, $isolinux_path, $isolinux_cfg, $label, @opts) = @_; + my $progress = MDV::Draklive::Progress->new(100, time()); my $in_progress; autoflush STDOUT 1; @@ -559,22 +583,10 @@ sub create_cdrom_master { '-boot-load-size', 4, '-boot-info-table', '-graft-points', if_($dest, '-o', $dest), - 'isolinux=' . $live->get_builddir . $live->{prefix}{build}{boot} . '/syslinux', + 'isolinux=' . $isolinux_path, + 'isolinux/isolinux.cfg=' . $isolinux_cfg, 'isolinux/isolinux.bin=/usr/lib/syslinux/isolinux.bin', - 'isolinux/isolinux.cfg=' . $live->get_builddir . $live->{prefix}{build}{boot} . get_syslinux_path($live->{media}, $opts), - $live->get_media_prefix('boot', $opts->{boot}) . '=' . $live->get_builddir . $live->{prefix}{build}{boot}, - if_(!$opts->{boot_only}, - (map { - $live->get_media_prefix('loopbacks', $opts->{boot}) . $_ . - '=' . - $live->get_builddir . $live->{prefix}{build}{loopbacks} . $_; - } list_selected_loopbacks($live)), - if_($live->{media}{files}, - map { - $_ . '=' . $live->get_builddir . $live->{prefix}{build}{files} . '/' . $_; - } all($live->get_builddir . $live->{prefix}{build}{files}) - ), - ), + @opts, ) or die "unable to run genisoimage\n"; autoflush STDOUT 0; $progress->end; |