From da50c59d2763314f14b90a9a0da7d8192c7da16e Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Wed, 18 Dec 2013 07:45:29 +0000 Subject: [PATCH] New -as mkisofs option -joliet-utf16 --- xorriso/emulators.c | 5 ++- xorriso/xorriso_timestamp.h | 2 +- xorriso/xorrisofs.1 | 8 +++- xorriso/xorrisofs.info | 78 ++++++++++++++++++++----------------- xorriso/xorrisofs.texi | 10 ++++- 5 files changed, 64 insertions(+), 39 deletions(-) diff --git a/xorriso/emulators.c b/xorriso/emulators.c index 984ea4c7..12d48b8e 100644 --- a/xorriso/emulators.c +++ b/xorriso/emulators.c @@ -597,7 +597,7 @@ int Xorriso_genisofs_count_args(struct XorrisO *xorriso, int argc, char **argv, "--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", "--grub2-boot-info", + "-isohybrid-apm-hfsplus", "--grub2-boot-info", "-joliet-utf16", "" }; static char arg1_options[][41]= { @@ -761,6 +761,7 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag) " -disallow_dir_id_ext Do not allow dot in ISO directory names", " -J, -joliet Generate Joliet directory information", " -joliet-long Allow Joliet file names to be 103 Unicode characters", +" -joliet-utf16 Encode Joliet names in UTF-16BE rather than UCS-2", " -U, -untranslated-filenames Allow Untranslated filenames (for HPUX & AIX - violates ISO9660).", " -untranslated_name_len LEN Allow up to LEN (1..96) name characters (heavily violates ISO9660).", " -allow-lowercase Allow lower case characters in addition to the current character set (violates ISO9660)", @@ -1592,6 +1593,8 @@ illegal_c:; } else if(strcmp(argpt, "-joliet-long")==0) { Xorriso_relax_compliance(xorriso, "joliet_long_paths:joliet_long_names", 0); + } else if(strcmp(argpt, "-joliet-utf16")==0) { + Xorriso_relax_compliance(xorriso, "joliet_utf16", 0); } else if(strcmp(argpt, "-fat") == 0) { /* was already handled in first argument scan */; } else if(strcmp(argpt, "-hfs-bless") == 0 || diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index 774b787e..44697e04 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2013.12.18.074219" +#define Xorriso_timestamP "2013.12.18.074401" diff --git a/xorriso/xorrisofs.1 b/xorriso/xorrisofs.1 index a2acebbf..7269d1b5 100644 --- a/xorriso/xorrisofs.1 +++ b/xorriso/xorrisofs.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISOFS 1 "Version 1.3.5, Dec 12, 2013" +.TH XORRISOFS 1 "Version 1.3.5, Dec 16, 2013" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -654,6 +654,12 @@ by the specification. Allow Joliet paths longer than the prescribed limit of Oversized names get truncated. Without this option, oversized paths get excluded from the Joliet tree. .TP +\fB\-joliet-utf16\fR +Encode Joliet file names in UTF\-16BE rather than UCS\-2. +The difference is with characters which are not present +in UCS\-2 and get encoded in UTF\-16 by 2 words of 16 bit each. +Both words then stem from a reserved subset of UCS\-2. +.TP \fB\-hfsplus\fR Enable the production of an additional HFS+ filesystem inside the ISO 9660 image and mark it by Apple Partition Map (APM) entries in the System Area, diff --git a/xorriso/xorrisofs.info b/xorriso/xorrisofs.info index 85589c66..583d7a8f 100644 --- a/xorriso/xorrisofs.info +++ b/xorriso/xorrisofs.info @@ -647,6 +647,12 @@ File: xorrisofs.info, Node: SetExtras, Next: SetHide, Prev: SetCompl, Up: Op Oversized names get truncated. Without this option, oversized paths get excluded from the Joliet tree. +-joliet-utf16 + Encode Joliet file names in UTF-16BE rather than UCS-2. The + difference is with characters which are not present in UCS-2 and + get encoded in UTF-16 by 2 words of 16 bit each. Both words then + stem from a reserved subset of UCS-2. + -hfsplus Enable the production of an additional HFS+ filesystem inside the ISO 9660 image and mark it by Apple Partition Map (APM) entries in @@ -1869,15 +1875,15 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 31) * -hard-disk-boot El Torito boot image emulation: Bootable. (line 68) * -help list supported options: Miscellaneous. (line 23) -* -hfs-bless HFS+ blessing ppc_bootdir: SetExtras. (line 182) -* -hfs-bless-by HFS+ blessing: SetExtras. (line 171) -* -hfsplus enable production of HFS+ partition: SetExtras. (line 124) -* -hfsplus-block-size set APM block size: SetExtras. (line 159) +* -hfs-bless HFS+ blessing ppc_bootdir: SetExtras. (line 188) +* -hfs-bless-by HFS+ blessing: SetExtras. (line 177) +* -hfsplus enable production of HFS+ partition: SetExtras. (line 130) +* -hfsplus-block-size set APM block size: SetExtras. (line 165) * -hfsplus-block-size set HFS+ allocation block size: SetExtras. - (line 154) + (line 160) * -hfsplus-file-creator-type HFS+ creator-type attribute: SetExtras. - (line 167) -* -hfsplus-serial-no set HFS+ serial number: SetExtras. (line 149) + (line 173) +* -hfsplus-serial-no set HFS+ serial number: SetExtras. (line 155) * -hide keep matching files invisible in ISO tree: SetHide. (line 8) * -hide-hfsplus keep matching files invisible in HFS+ tree: SetHide. (line 29) @@ -1913,6 +1919,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -joliet enable production of Joliet directory tree: SetExtras. (line 114) * -joliet-long allow longer Joliet names: SetExtras. (line 117) +* -joliet-utf16 use UTF-16 with Joliet names: SetExtras. (line 124) * -l allow 31 characters in ISO file names: SetCompl. (line 63) * -log-file redirect stderr messages: Miscellaneous. (line 35) * -m exclude disk files from inserting: SetInsert. (line 35) @@ -2069,14 +2076,14 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Forced output, control, --stdio_sync: SetProduct. (line 25) * GPT, _definition: SystemArea. (line 13) * HFS+, _definition: Standards. (line 32) -* HFS+, enables production: SetExtras. (line 124) -* HFS+, issue blessing ppc_bootdir, -hfs-bless: SetExtras. (line 182) -* HFS+, issue blessing, -hfs-bless-by: SetExtras. (line 171) -* HFS+, set allocation block size: SetExtras. (line 154) -* HFS+, set APM block size: SetExtras. (line 159) +* HFS+, enables production: SetExtras. (line 130) +* HFS+, issue blessing ppc_bootdir, -hfs-bless: SetExtras. (line 188) +* HFS+, issue blessing, -hfs-bless-by: SetExtras. (line 177) +* HFS+, set allocation block size: SetExtras. (line 160) +* HFS+, set APM block size: SetExtras. (line 165) * HFS+, set creator and type of file, -hfsplus-file-creator-type: SetExtras. - (line 167) -* HFS+, set serial number: SetExtras. (line 149) + (line 173) +* HFS+, set serial number: SetExtras. (line 155) * Hiding, from HFS+, -hide-hfsplus: SetHide. (line 29) * Hiding, from HFS+, -hide-hfsplus-list: SetHide. (line 33) * Hiding, from ISO and Rock Ridge, -hide: SetHide. (line 8) @@ -2173,6 +2180,7 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * System Id, set, -sysid: ImageId. (line 49) * Table-of-content, emulation off, --no-emul-toc: SetProduct. (line 44) * Table-of-content, emulation, --emul-toc: SetProduct. (line 35) +* UTF-16, for Joliet paths, -joliet-utf16: SetExtras. (line 124) * Verbosity, high, -v, -verbose: Miscellaneous. (line 40) * Volume Id, set, -V, -volid: ImageId. (line 13) * Volume Set Id, set, -volset: ImageId. (line 26) @@ -2196,26 +2204,26 @@ Node: SetInsert9732 Node: SetProduct14148 Node: SetCompl19142 Node: SetExtras21738 -Node: SetHide30147 -Node: ImageId31455 -Node: Bootable35623 -Node: SystemArea40617 -Node: Charset50914 -Node: Jigdo51940 -Node: Miscellaneous56207 -Node: Examples57851 -Node: ExSimple58337 -Node: ExGraft58816 -Node: ExMkisofs60063 -Node: ExGrowisofs61316 -Node: ExIncBackup62488 -Node: ExIncBckAcc65596 -Node: ExBootable67272 -Node: Files69364 -Node: Seealso70438 -Node: Bugreport71094 -Node: Legal71675 -Node: CommandIdx72570 -Node: ConceptIdx87199 +Node: SetHide30412 +Node: ImageId31720 +Node: Bootable35888 +Node: SystemArea40882 +Node: Charset51179 +Node: Jigdo52205 +Node: Miscellaneous56472 +Node: Examples58116 +Node: ExSimple58602 +Node: ExGraft59081 +Node: ExMkisofs60328 +Node: ExGrowisofs61581 +Node: ExIncBackup62753 +Node: ExIncBckAcc65861 +Node: ExBootable67537 +Node: Files69629 +Node: Seealso70703 +Node: Bugreport71359 +Node: Legal71940 +Node: CommandIdx72835 +Node: ConceptIdx87537  End Tag Table diff --git a/xorriso/xorrisofs.texi b/xorriso/xorrisofs.texi index c4f1162b..fc11b6f6 100644 --- a/xorriso/xorrisofs.texi +++ b/xorriso/xorrisofs.texi @@ -50,7 +50,7 @@ @c man .\" First parameter, NAME, should be all caps @c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection @c man .\" other parameters are allowed: see man(7), man(1) -@c man .TH XORRISOFS 1 "Version 1.3.5, Dec 12, 2013" +@c man .TH XORRISOFS 1 "Version 1.3.5, Dec 16, 2013" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -919,6 +919,14 @@ by the specification. Allow Joliet paths longer than the prescribed limit of Oversized names get truncated. Without this option, oversized paths get excluded from the Joliet tree. @c man .TP +@item -joliet-utf16 +@kindex -joliet-utf16 use UTF-16 with Joliet names +@cindex UTF-16, for Joliet paths, -joliet-utf16 +Encode Joliet file names in UTF-16BE rather than UCS-2. +The difference is with characters which are not present +in UCS-2 and get encoded in UTF-16 by 2 words of 16 bit each. +Both words then stem from a reserved subset of UCS-2. +@c man .TP @item -hfsplus @kindex -hfsplus enable production of HFS+ partition @cindex HFS+, enables production