New -as mkisofs options -isohybrid-gpt-basdat, -isohybrid-gpt-hfsplus, -isohybrid-apm-hfsplus
This commit is contained in:
@ -576,6 +576,8 @@ int Xorriso_genisofs_count_args(struct XorrisO *xorriso, int argc, char **argv,
|
||||
"--emul-toc", "-disallow_dir_id_ext", "--old-empty",
|
||||
"--old-root-no-md5", "--old-root-devno", "--old-root-no-ino",
|
||||
"--no_rc", "--norock", "-hfsplus", "-fat", "-chrp-boot-part",
|
||||
"-isohybrid-gpt-basdat", "-isohybrid-gpt-hfsplus",
|
||||
"-isohybrid-apm-hfsplus",
|
||||
""
|
||||
};
|
||||
static char arg1_options[][41]= {
|
||||
@ -812,6 +814,9 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag)
|
||||
" -hard-disk-boot Boot image is a hard disk image",
|
||||
" -no-emul-boot Boot image is 'no emulation' image",
|
||||
" -boot-info-table Patch boot image with info table",
|
||||
" -isohybrid-gpt-basdat Mark El Torito boot image as Basic Data in GPT",
|
||||
" -isohybrid-gpt-hfsplus Mark El Torito boot image as HFS+ in GPT",
|
||||
" -isohybrid-apm-hfsplus Mark El Torito boot image as HFS+ in APM",
|
||||
" -G FILE, -generic-boot FILE Set generic boot image name",
|
||||
" --embedded-boot FILE Alias of -G",
|
||||
" --protective-msdos-label Patch System Area by partition table",
|
||||
@ -1652,7 +1657,10 @@ not_enough_args:;
|
||||
strncmp(argpt, "isolinux_mbr=", 13)==0 ||
|
||||
strcmp(argpt, "-eltorito-alt-boot")==0 ||
|
||||
strcmp(argpt, "--protective-msdos-label")==0 ||
|
||||
strcmp(argpt, "--boot-catalog-hide")==0) {
|
||||
strcmp(argpt, "--boot-catalog-hide")==0 ||
|
||||
strcmp(argpt, "-isohybrid-gpt-basdat")==0 ||
|
||||
strcmp(argpt, "-isohybrid-gpt-hfsplus")==0 ||
|
||||
strcmp(argpt, "-isohybrid-apm-hfsplus")==0) {
|
||||
delay_opt_list[delay_opt_count++]= i;
|
||||
if(argv[i] != argpt)
|
||||
delay_opt_list[delay_opt_count - 1]|= 1<<31;
|
||||
@ -2139,7 +2147,7 @@ problem_handler_2:;
|
||||
} else if(strcmp(argpt, "-hard-disk-boot")==0) {
|
||||
emul_boot= xorriso->boot_image_emul= 1;
|
||||
} else if(strcmp(argpt, "-boot-info-table")==0) {
|
||||
xorriso->patch_isolinux_image= 1;
|
||||
xorriso->patch_isolinux_image= (xorriso->patch_isolinux_image & ~2) | 1;
|
||||
} else if(strcmp(argpt, "-b") == 0 ||
|
||||
strcmp(argpt, "-eltorito-boot") == 0 ||
|
||||
strcmp(argpt, "--efi-boot") == 0 ||
|
||||
@ -2207,6 +2215,14 @@ problem_handler_2:;
|
||||
ret= Xorriso_option_boot_image(xorriso, "isolinux", sfe, 0);
|
||||
if(ret <= 0)
|
||||
goto problem_handler_boot;
|
||||
} else if(strcmp(argpt, "-isohybrid-gpt-basdat") == 0) {
|
||||
xorriso->patch_isolinux_image = (xorriso->patch_isolinux_image & ~0x1fc) |
|
||||
(1 << 2);
|
||||
} else if(strcmp(argpt, "-isohybrid-gpt-hfsplus") == 0) {
|
||||
xorriso->patch_isolinux_image = (xorriso->patch_isolinux_image & ~0x0fc) |
|
||||
(2 << 2);
|
||||
} else if(strcmp(argpt, "-isohybrid-apm-hfsplus") == 0) {
|
||||
xorriso->patch_isolinux_image = xorriso->patch_isolinux_image | (1 << 8);
|
||||
} else if(strcmp(argpt, "-eltorito-alt-boot")==0) {
|
||||
ret= Xorriso_genisofs_add_boot(xorriso, whom,
|
||||
&option_b, &emul_boot, 0);
|
||||
|
Reference in New Issue
Block a user