``` $ rcodesign debug-create-info-plist --bundle-name MyFramework.framework --package-type FMWK MyFramework.framework/Versions/A/Resources/Info.plist writing MyFramework.framework/Versions/A/Resources/Info.plist $ rcodesign debug-create-macho --file-type dylib MyFramework.framework/Versions/A/MyFramework assuming default minimum version 11.0.0 writing Mach-O to MyFramework.framework/Versions/A/MyFramework $ ln -s A MyFramework.framework/Versions/Current $ ln -s Versions/Current/Resources MyFramework.framework/Resources $ touch MyFramework.framework/Versions/A/Resources/root-A-00.txt $ rcodesign sign MyFramework.framework MyFramework.framework.signed signing MyFramework.framework to MyFramework.framework.signed signing bundle at MyFramework.framework signing 1 nested bundles in the following order: Versions/A entering nested bundle Versions/A signing bundle at MyFramework.framework/Versions/A into MyFramework.framework.signed/Versions/A signing Mach-O file MyFramework bundle has no main executable to sign specially leaving nested bundle Versions/A signing bundle at MyFramework.framework into MyFramework.framework.signed $ rcodesign debug-file-tree MyFramework.framework.signed d MyFramework.framework.signed/ l MyFramework.framework.signed/Resources -> Versions/Current/Resources d MyFramework.framework.signed/Versions d MyFramework.framework.signed/Versions/A f cec50992ab98ca143999 MyFramework.framework.signed/Versions/A/MyFramework d MyFramework.framework.signed/Versions/A/Resources f 419720e3c25babc998d6 MyFramework.framework.signed/Versions/A/Resources/Info.plist f e3b0c44298fc1c149afb MyFramework.framework.signed/Versions/A/Resources/root-A-00.txt d MyFramework.framework.signed/Versions/A/_CodeSignature f 7421218291c85cdd725f MyFramework.framework.signed/Versions/A/_CodeSignature/CodeResources l MyFramework.framework.signed/Versions/Current -> A $ rcodesign print-signature-info MyFramework.framework.signed - path: Resources symlink_target: Versions/Current/Resources entity: other - path: Versions/A/MyFramework file_size: 22544 file_sha256: cec50992ab98ca1439994b302fc085703bd7f847a341e1e4a734ecace09fe858 entity: mach_o: macho_linkedit_start_offset: 16384 / 0x4000 macho_signature_start_offset: 16400 / 0x4010 macho_signature_end_offset: 16780 / 0x418c macho_linkedit_end_offset: 22544 / 0x5810 macho_end_offset: 22544 / 0x5810 linkedit_signature_start_offset: 16 / 0x10 linkedit_signature_end_offset: 396 / 0x18c linkedit_bytes_after_signature: 5764 / 0x1684 signature: superblob_length: 380 / 0x17c blob_count: 3 blobs: - slot: CodeDirectory (0) magic: fade0c02 length: 324 sha1: 6ffd7576e87ac1a1172debbdb6a8f39629f44f3a sha256: 8b50ba2db36d187bae720987f1ff7d6228b18e422b95a42ac4c4fb4acf3546a9 - slot: RequirementSet (2) magic: fade0c01 length: 12 sha1: 3a75f6db058529148e14dd7ea1b4729cc09ec973 sha256: 987920904eab650e75788c054aa0b0524e6a80bfc71aa32df8d237a61743f986 - slot: CMS Signature (65536) magic: fade0b01 length: 8 sha1: 2a7254313aa41796079bb0e9d0f044345f69f98b sha256: e6c83bc98a10348492c7d4d2378a54572ef29e1a5692ccd02b5e29f4b762d6a0 code_directory: version: '0x20400' flags: CodeSignatureFlags(ADHOC) identifier: MyFramework digest_type: sha256 platform: 0 signed_entity_size: 16400 executable_segment_flags: ExecutableSegmentFlags(0x0) code_digests_count: 5 slot_digests: - 'Info (1): 0000000000000000000000000000000000000000000000000000000000000000' - 'RequirementSet (2): 987920904eab650e75788c054aa0b0524e6a80bfc71aa32df8d237a61743f986' cms: null - path: Versions/A/Resources/Info.plist file_size: 624 file_sha256: 419720e3c25babc998d6deb1013359b45ea44ddc0cf0cc9ff27e421d81c3a082 entity: other - path: Versions/A/Resources/root-A-00.txt file_size: 0 file_sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 entity: other - path: Versions/A/_CodeSignature/CodeResources file_size: 2889 file_sha256: 7421218291c85cdd725f0e47e8103cba94351691e4cd082bcae89e391293ca22 entity: bundle_code_signature_file: !ResourcesXml - - - - - ' files' - ' ' - ' Resources/Info.plist' - ' ' - ' Le4jzlE49nXeP8DTH2bzrQDpQ28=' - ' ' - ' Resources/root-A-00.txt' - ' ' - ' 2jmj7l5rSw0yVb/vlWAYkK/YBwk=' - ' ' - ' ' - ' files2' - ' ' - ' MyFramework' - ' ' - ' cdhash' - ' ' - ' i1C6LbNtGHuucgmH8f99YiixjkI=' - ' ' - ' requirement' - ' cdhash H"8b50ba2db36d187bae720987f1ff7d6228b18e42"' - ' ' - ' Resources/Info.plist' - ' ' - ' hash2' - ' ' - ' QZcg48Jbq8mY1t6xATNZtF6kTdwM8Myf8n5CHYHDoII=' - ' ' - ' ' - ' Resources/root-A-00.txt' - ' ' - ' hash2' - ' ' - ' 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=' - ' ' - ' ' - ' ' - ' rules' - ' ' - ' ^Resources/' - ' ' - ' ^Resources/.*/.lproj/' - ' ' - ' optional' - ' ' - ' weight' - ' 1000' - ' ' - ' ^Resources/.*/.lproj/locversion.plist$' - ' ' - ' omit' - ' ' - ' weight' - ' 1100' - ' ' - ' ^Resources/Base/.lproj/' - ' ' - ' weight' - ' 1010' - ' ' - ' ^version.plist$' - ' ' - ' ' - ' rules2' - ' ' - ' .*/.dSYM($|/)' - ' ' - ' weight' - ' 11' - ' ' - ' ^(.*/)?/.DS_Store$' - ' ' - ' omit' - ' ' - ' weight' - ' 2000' - ' ' - ' ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/' - ' ' - ' nested' - ' ' - ' weight' - ' 10' - ' ' - ' ^.*' - ' ' - ' ^Info/.plist$' - ' ' - ' omit' - ' ' - ' weight' - ' 20' - ' ' - ' ^PkgInfo$' - ' ' - ' omit' - ' ' - ' weight' - ' 20' - ' ' - ' ^Resources/' - ' ' - ' weight' - ' 20' - ' ' - ' ^Resources/.*/.lproj/' - ' ' - ' optional' - ' ' - ' weight' - ' 1000' - ' ' - ' ^Resources/.*/.lproj/locversion.plist$' - ' ' - ' omit' - ' ' - ' weight' - ' 1100' - ' ' - ' ^Resources/Base/.lproj/' - ' ' - ' weight' - ' 1010' - ' ' - ' ^[^/]+$' - ' ' - ' nested' - ' ' - ' weight' - ' 10' - ' ' - ' ^embedded/.provisionprofile$' - ' ' - ' weight' - ' 20' - ' ' - ' ^version/.plist$' - ' ' - ' weight' - ' 20' - ' ' - ' ' - - - '' - path: Versions/Current symlink_target: A entity: other ```