X-Git-Url: https://git.saurik.com/apple/hfs.git/blobdiff_plain/51e135ce018217de5c809f4ac236ef6b6d87ef97..7adaf79dc3954591b7b5257adb62451f47e2573d:/hfs.xcodeproj/project.pbxproj?ds=sidebyside

diff --git a/hfs.xcodeproj/project.pbxproj b/hfs.xcodeproj/project.pbxproj
index 18a12b3..ef8da41 100644
--- a/hfs.xcodeproj/project.pbxproj
+++ b/hfs.xcodeproj/project.pbxproj
@@ -13,6 +13,9 @@
 			buildPhases = (
 			);
 			dependencies = (
+				FBA540011B7BF2DF00899E5B /* PBXTargetDependency */,
+				FBC234C41B4EC6AE0002D849 /* PBXTargetDependency */,
+				8657285C18319A93007F580F /* PBXTargetDependency */,
 				4DBD523F1548A499007AA736 /* PBXTargetDependency */,
 				4DBD52411548A49A007AA736 /* PBXTargetDependency */,
 				4DBD52431548A49D007AA736 /* PBXTargetDependency */,
@@ -31,6 +34,9 @@
 			buildPhases = (
 			);
 			dependencies = (
+				FBE3A5A51BBEE34400CB9A33 /* PBXTargetDependency */,
+				FB48E4BC1BB30CC400523121 /* PBXTargetDependency */,
+				FBC234C61B4EC6B90002D849 /* PBXTargetDependency */,
 				4DBD52511548A4D2007AA736 /* PBXTargetDependency */,
 				4DBD52531548A4D4007AA736 /* PBXTargetDependency */,
 			);
@@ -43,14 +49,123 @@
 			buildPhases = (
 			);
 			dependencies = (
+				FBE3A5A31BBEE33D00CB9A33 /* PBXTargetDependency */,
 				4DBD524F1548A4C8007AA736 /* PBXTargetDependency */,
 			);
 			name = All_iOS;
 			productName = All_iOS;
 		};
+		FB55AE651B7D47B300701D03 /* ios-tests */ = {
+			isa = PBXAggregateTarget;
+			buildConfigurationList = FB55AE701B7D47B300701D03 /* Build configuration list for PBXAggregateTarget "ios-tests" */;
+			buildPhases = (
+				FB55AE6F1B7D47B300701D03 /* Create BATS plist */,
+			);
+			dependencies = (
+				FB55AE661B7D47B300701D03 /* PBXTargetDependency */,
+			);
+			name = "ios-tests";
+			productName = Tests;
+		};
+		FB7C140C1C2368E6004F8B2C /* kext-version */ = {
+			isa = PBXAggregateTarget;
+			buildConfigurationList = FB7C140D1C2368E6004F8B2C /* Build configuration list for PBXAggregateTarget "kext-version" */;
+			buildPhases = (
+				FB7C14111C2368F4004F8B2C /* ShellScript */,
+			);
+			dependencies = (
+			);
+			name = "kext-version";
+			productName = "kext-version";
+		};
+		FBA95AA91B5025E700887E82 /* mk-xnu */ = {
+			isa = PBXAggregateTarget;
+			buildConfigurationList = FBA95AAA1B5025E700887E82 /* Build configuration list for PBXAggregateTarget "mk-xnu" */;
+			buildPhases = (
+				FBA95AAD1B5025EC00887E82 /* ShellScript */,
+			);
+			dependencies = (
+			);
+			name = "mk-xnu";
+			productName = "mk-xnu";
+		};
+		FBAA82651B56F2AB00EE6863 /* osx-tests */ = {
+			isa = PBXAggregateTarget;
+			buildConfigurationList = FBAA82661B56F2AB00EE6863 /* Build configuration list for PBXAggregateTarget "osx-tests" */;
+			buildPhases = (
+				FBAA82711B56F65800EE6863 /* Run local tests */,
+				FB55AE5C1B7D193B00701D03 /* Create BATS plist */,
+			);
+			dependencies = (
+				FB55AE5B1B7D190F00701D03 /* PBXTargetDependency */,
+				FBAA826A1B56F2B900EE6863 /* PBXTargetDependency */,
+				FBAA826C1B56F2B900EE6863 /* PBXTargetDependency */,
+				FBAA826E1B56F2B900EE6863 /* PBXTargetDependency */,
+			);
+			name = "osx-tests";
+			productName = Tests;
+		};
+		FBC234B91B4D87A20002D849 /* ios-root */ = {
+			isa = PBXAggregateTarget;
+			buildConfigurationList = FBC234BF1B4D87A20002D849 /* Build configuration list for PBXAggregateTarget "ios-root" */;
+			buildPhases = (
+				FBC234BE1B4D87A20002D849 /* ShellScript */,
+			);
+			dependencies = (
+				FBC234BC1B4D87A20002D849 /* PBXTargetDependency */,
+			);
+			name = "ios-root";
+			productName = "combo-root";
+		};
+		FBE3F7821AF67748005BB768 /* osx-root */ = {
+			isa = PBXAggregateTarget;
+			buildConfigurationList = FBE3F7841AF67748005BB768 /* Build configuration list for PBXAggregateTarget "osx-root" */;
+			buildPhases = (
+				FBE3F7961AF67C43005BB768 /* ShellScript */,
+			);
+			dependencies = (
+				FB75A4091B4AED92004B5A74 /* PBXTargetDependency */,
+				FBE3F7871AF6793E005BB768 /* PBXTargetDependency */,
+			);
+			name = "osx-root";
+			productName = "combo-root";
+		};
 /* End PBXAggregateTarget section */
 
 /* Begin PBXBuildFile section */
+		0703A0541CD826160035BCFD /* test-defrag.c in Sources */ = {isa = PBXBuildFile; fileRef = 0703A0531CD826160035BCFD /* test-defrag.c */; };
+		07C2BF891CB43F5E00D8327D /* test-renamex.c in Sources */ = {isa = PBXBuildFile; fileRef = 07C2BF881CB43F5E00D8327D /* test-renamex.c */; };
+		2A386A3B1C22209C007FEDAC /* test-list-ids.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A386A3A1C221E67007FEDAC /* test-list-ids.c */; };
+		2A84DBD41D9E15F2007964B8 /* test-raw-dev-unaligned.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A84DBD31D9E1179007964B8 /* test-raw-dev-unaligned.c */; };
+		2A9399951BDFEB5200FB075B /* test-access.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399941BDFEA6E00FB075B /* test-access.c */; };
+		2A9399981BDFF7E500FB075B /* test-chflags.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399961BDFEF3900FB075B /* test-chflags.c */; };
+		2A93999D1BE0146E00FB075B /* test-class-roll.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A93999B1BE0146000FB075B /* test-class-roll.c */; };
+		2A93999E1BE0146E00FB075B /* test-deep-rm.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A93999C1BE0146000FB075B /* test-deep-rm.c */; };
+		2A9399A01BE0222800FB075B /* test-dir-link.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A93999F1BE0220B00FB075B /* test-dir-link.c */; };
+		2A9399A21BE02A1600FB075B /* test-dprotect.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399A11BE02A0E00FB075B /* test-dprotect.c */; };
+		2A9399A41BE02C6700FB075B /* test-file-too-big.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399A31BE02C1F00FB075B /* test-file-too-big.m */; };
+		2A9399A61BE0366E00FB075B /* test-fsync.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399A51BE0365F00FB075B /* test-fsync.c */; };
+		2A9399A81BE03A6800FB075B /* test-getattrlist-dprotect.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399A71BE03A6200FB075B /* test-getattrlist-dprotect.m */; };
+		2A9399AA1BE0402600FB075B /* test-hard-links.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399A91BE0401D00FB075B /* test-hard-links.m */; };
+		2A9399B21BE12A6E00FB075B /* test-fsinfo-cprotect.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399B11BE12A6300FB075B /* test-fsinfo-cprotect.c */; };
+		2A9399B41BE12DE900FB075B /* test-fsinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399B31BE12DE400FB075B /* test-fsinfo.c */; };
+		2A9399B61BE131A400FB075B /* test-resize.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399B51BE131A000FB075B /* test-resize.m */; };
+		2A9399B81BE14AAD00FB075B /* test-scan-range-size.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399B71BE14AA800FB075B /* test-scan-range-size.c */; };
+		2A9399BF1BE15F6800FB075B /* test-fsinfo-sig.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399B91BE15F5F00FB075B /* test-fsinfo-sig.c */; };
+		2A9399C01BE15F6800FB075B /* test-key-roll.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399BA1BE15F5F00FB075B /* test-key-roll.c */; };
+		2A9399C11BE15F6800FB075B /* test-msync-16k.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399BB1BE15F5F00FB075B /* test-msync-16k.c */; };
+		2A9399C21BE15F6800FB075B /* test-readdir.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399BC1BE15F5F00FB075B /* test-readdir.c */; };
+		2A9399C31BE15F6800FB075B /* test-set-create-time.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399BD1BE15F5F00FB075B /* test-set-create-time.c */; };
+		2A9399C41BE15F6800FB075B /* test-set-protection-class.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399BE1BE15F5F00FB075B /* test-set-protection-class.c */; };
+		2A9399C71BE172A400FB075B /* test-log2phys.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399C51BE1729200FB075B /* test-log2phys.m */; };
+		2A9399C91BE1747900FB075B /* test-map-private.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399C81BE1747200FB075B /* test-map-private.m */; };
+		2A9399CA1BE18A5000FB075B /* test-invalid-ranges.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399AB1BE128B700FB075B /* test-invalid-ranges.m */; };
+		2A9399CD1BE2BC6900FB075B /* test-mmap-mod-time.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399CC1BE2BC5800FB075B /* test-mmap-mod-time.c */; };
+		2A9399CF1BE2BCEA00FB075B /* test-mod-time.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399CE1BE2BCE200FB075B /* test-mod-time.c */; };
+		2A9399D11BE2BFFD00FB075B /* test-throttled-io.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399D01BE2BFF400FB075B /* test-throttled-io.c */; };
+		2A9399D31BE2C06800FB075B /* test-uncached-io.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399D21BE2C06000FB075B /* test-uncached-io.c */; };
+		2A9399D51BE2C17800FB075B /* test-unicode-file-names.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399D41BE2C14800FB075B /* test-unicode-file-names.c */; };
+		2ABDCEA71BF3DAA100CFC70C /* test-journal-toggle.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A9399CB1BE2BB1600FB075B /* test-journal-toggle.c */; };
 		4D07DCC41538EF92002B57CB /* fstyp_hfs.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D07DCC31538EF92002B57CB /* fstyp_hfs.c */; };
 		4D07DCC51538EFB7002B57CB /* fstyp_hfs.8 in Copy man8 */ = {isa = PBXBuildFile; fileRef = 4D07DCC21538EF92002B57CB /* fstyp_hfs.8 */; };
 		4D0E89AA1534FF48004CD678 /* mount_hfs.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D0E89A71534FF48004CD678 /* mount_hfs.c */; };
@@ -114,9 +229,118 @@
 		4DFD9538153746210039B6BA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4DFD9536153746210039B6BA /* InfoPlist.strings */; };
 		4DFD953C15377BD80039B6BA /* fsck_keys.h in Copy fsck_keys.h */ = {isa = PBXBuildFile; fileRef = 4DFD9449153600060039B6BA /* fsck_keys.h */; };
 		7279A68D1593AA5C00192947 /* fsck_journal.c in Sources */ = {isa = PBXBuildFile; fileRef = 7279A68B1593AA5C00192947 /* fsck_journal.c */; };
+		862C904C1834311200BAD882 /* iterate_hfs_metadata.h in Headers */ = {isa = PBXBuildFile; fileRef = 862C904B1834311200BAD882 /* iterate_hfs_metadata.h */; settings = {ATTRIBUTES = (Private, ); }; };
+		863D03971820761900A4F0C4 /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 863D03961820761900A4F0C4 /* util.c */; };
+		8654E4C01832A68400808937 /* ScanExtents.c in Sources */ = {isa = PBXBuildFile; fileRef = FDD9FA4F14A1343D0043D4A9 /* ScanExtents.c */; };
+		86CBF382183186FB00A64A93 /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 863D03961820761900A4F0C4 /* util.c */; };
+		86CBF3831831876200A64A93 /* misc.c in Sources */ = {isa = PBXBuildFile; fileRef = FDD9FA4E14A1343D0043D4A9 /* misc.c */; };
+		86CBF3861831880F00A64A93 /* iterate_hfs_metadata.c in Sources */ = {isa = PBXBuildFile; fileRef = 86CBF3851831880F00A64A93 /* iterate_hfs_metadata.c */; };
+		86CBF3871831884600A64A93 /* Data.h in Headers */ = {isa = PBXBuildFile; fileRef = FDD9FA4714A1343D0043D4A9 /* Data.h */; };
 		C1B6FA0810CC0A0A00778D48 /* hfsutil_jnl.c in Sources */ = {isa = PBXBuildFile; fileRef = C1B6FA0610CC0A0A00778D48 /* hfsutil_jnl.c */; };
 		C1B6FA0910CC0A0A00778D48 /* hfsutil_main.c in Sources */ = {isa = PBXBuildFile; fileRef = C1B6FA0710CC0A0A00778D48 /* hfsutil_main.c */; };
 		C1B6FA3010CC0B9500778D48 /* hfs.util.8 in Copy man8 */ = {isa = PBXBuildFile; fileRef = C1B6FA2F10CC0B8A00778D48 /* hfs.util.8 */; };
+		FB20E0E51AE950C200CEBE7B /* hfs_iokit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0E41AE950C200CEBE7B /* hfs_iokit.cpp */; };
+		FB20E12D1AE9529400CEBE7B /* BTree.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0E81AE9529400CEBE7B /* BTree.c */; };
+		FB20E12E1AE9529400CEBE7B /* BTreeAllocate.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0E91AE9529400CEBE7B /* BTreeAllocate.c */; };
+		FB20E12F1AE9529400CEBE7B /* BTreeMiscOps.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0EA1AE9529400CEBE7B /* BTreeMiscOps.c */; };
+		FB20E1301AE9529400CEBE7B /* BTreeNodeOps.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0EB1AE9529400CEBE7B /* BTreeNodeOps.c */; };
+		FB20E1311AE9529400CEBE7B /* BTreeNodeReserve.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0EC1AE9529400CEBE7B /* BTreeNodeReserve.c */; };
+		FB20E1321AE9529400CEBE7B /* BTreeScanner.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0ED1AE9529400CEBE7B /* BTreeScanner.c */; };
+		FB20E1331AE9529400CEBE7B /* BTreeScanner.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0EE1AE9529400CEBE7B /* BTreeScanner.h */; };
+		FB20E1341AE9529400CEBE7B /* BTreesInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0EF1AE9529400CEBE7B /* BTreesInternal.h */; };
+		FB20E1351AE9529400CEBE7B /* BTreesPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0F01AE9529400CEBE7B /* BTreesPrivate.h */; };
+		FB20E1361AE9529400CEBE7B /* BTreeTreeOps.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0F11AE9529400CEBE7B /* BTreeTreeOps.c */; };
+		FB20E1371AE9529400CEBE7B /* BTreeWrapper.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0F21AE9529400CEBE7B /* BTreeWrapper.c */; };
+		FB20E1381AE9529400CEBE7B /* CatalogPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0F31AE9529400CEBE7B /* CatalogPrivate.h */; };
+		FB20E1391AE9529400CEBE7B /* CatalogUtilities.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0F41AE9529400CEBE7B /* CatalogUtilities.c */; };
+		FB20E13A1AE9529400CEBE7B /* FileExtentMapping.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0F51AE9529400CEBE7B /* FileExtentMapping.c */; };
+		FB20E13B1AE9529400CEBE7B /* FileIDsServices.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0F61AE9529400CEBE7B /* FileIDsServices.c */; };
+		FB20E13C1AE9529400CEBE7B /* FileMgrInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0F71AE9529400CEBE7B /* FileMgrInternal.h */; };
+		FB20E13D1AE9529400CEBE7B /* hfs_attrlist.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0F81AE9529400CEBE7B /* hfs_attrlist.c */; };
+		FB20E13E1AE9529400CEBE7B /* hfs_attrlist.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0F91AE9529400CEBE7B /* hfs_attrlist.h */; };
+		FB20E13F1AE9529400CEBE7B /* hfs_btreeio.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0FA1AE9529400CEBE7B /* hfs_btreeio.c */; };
+		FB20E1401AE9529400CEBE7B /* hfs_btreeio.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0FB1AE9529400CEBE7B /* hfs_btreeio.h */; };
+		FB20E1411AE9529400CEBE7B /* hfs_catalog.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0FC1AE9529400CEBE7B /* hfs_catalog.c */; };
+		FB20E1421AE9529400CEBE7B /* hfs_catalog.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E0FD1AE9529400CEBE7B /* hfs_catalog.h */; };
+		FB20E1431AE9529400CEBE7B /* hfs_chash.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0FE1AE9529400CEBE7B /* hfs_chash.c */; };
+		FB20E1441AE9529400CEBE7B /* hfs_cnode.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E0FF1AE9529400CEBE7B /* hfs_cnode.c */; };
+		FB20E1451AE9529400CEBE7B /* hfs_cnode.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1001AE9529400CEBE7B /* hfs_cnode.h */; };
+		FB20E1461AE9529400CEBE7B /* hfs_cprotect.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1011AE9529400CEBE7B /* hfs_cprotect.c */; };
+		FB20E1471AE9529400CEBE7B /* hfs_cprotect.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1021AE9529400CEBE7B /* hfs_cprotect.h */; };
+		FB20E1481AE9529400CEBE7B /* hfs_dbg.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1031AE9529400CEBE7B /* hfs_dbg.h */; };
+		FB20E14C1AE9529400CEBE7B /* hfs_endian.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1071AE9529400CEBE7B /* hfs_endian.c */; };
+		FB20E14D1AE9529400CEBE7B /* hfs_endian.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1081AE9529400CEBE7B /* hfs_endian.h */; };
+		FB20E14E1AE9529400CEBE7B /* hfs_extents.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1091AE9529400CEBE7B /* hfs_extents.c */; };
+		FB20E14F1AE9529400CEBE7B /* hfs_extents.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10A1AE9529400CEBE7B /* hfs_extents.h */; };
+		FB20E1501AE9529400CEBE7B /* hfs_format.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10B1AE9529400CEBE7B /* hfs_format.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB20E1511AE9529400CEBE7B /* hfs_fsctl.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10C1AE9529400CEBE7B /* hfs_fsctl.h */; settings = {ATTRIBUTES = (Private, ); }; };
+		FB20E1521AE9529400CEBE7B /* hfs_fsinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E10D1AE9529400CEBE7B /* hfs_fsinfo.c */; };
+		FB20E1531AE9529400CEBE7B /* hfs_hotfiles.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E10E1AE9529400CEBE7B /* hfs_hotfiles.c */; };
+		FB20E1541AE9529400CEBE7B /* hfs_hotfiles.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10F1AE9529400CEBE7B /* hfs_hotfiles.h */; };
+		FB20E1551AE9529400CEBE7B /* hfs_kdebug.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1101AE9529400CEBE7B /* hfs_kdebug.h */; };
+		FB20E1561AE9529400CEBE7B /* hfs_key_roll.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1111AE9529400CEBE7B /* hfs_key_roll.c */; };
+		FB20E1571AE9529400CEBE7B /* hfs_key_roll.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1121AE9529400CEBE7B /* hfs_key_roll.h */; };
+		FB20E1581AE9529400CEBE7B /* hfs_link.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1131AE9529400CEBE7B /* hfs_link.c */; };
+		FB20E1591AE9529400CEBE7B /* hfs_lookup.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1141AE9529400CEBE7B /* hfs_lookup.c */; };
+		FB20E15A1AE9529400CEBE7B /* hfs_macos_defs.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1151AE9529400CEBE7B /* hfs_macos_defs.h */; };
+		FB20E15B1AE9529400CEBE7B /* hfs_mount.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1161AE9529400CEBE7B /* hfs_mount.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB20E15C1AE9529400CEBE7B /* hfs_notification.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1171AE9529400CEBE7B /* hfs_notification.c */; };
+		FB20E15D1AE9529400CEBE7B /* hfs_quota.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1181AE9529400CEBE7B /* hfs_quota.c */; };
+		FB20E15E1AE9529400CEBE7B /* hfs_quota.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1191AE9529400CEBE7B /* hfs_quota.h */; };
+		FB20E15F1AE9529400CEBE7B /* hfs_readwrite.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E11A1AE9529400CEBE7B /* hfs_readwrite.c */; };
+		FB20E1601AE9529400CEBE7B /* hfs_resize.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E11B1AE9529400CEBE7B /* hfs_resize.c */; };
+		FB20E1611AE9529400CEBE7B /* hfs_search.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E11C1AE9529400CEBE7B /* hfs_search.c */; };
+		FB20E1621AE9529400CEBE7B /* hfs_unistr.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E11D1AE9529400CEBE7B /* hfs_unistr.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB20E1631AE9529400CEBE7B /* hfs_vfsops.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E11E1AE9529400CEBE7B /* hfs_vfsops.c */; };
+		FB20E1641AE9529400CEBE7B /* hfs_vfsutils.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E11F1AE9529400CEBE7B /* hfs_vfsutils.c */; };
+		FB20E1651AE9529400CEBE7B /* hfs_vnops.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1201AE9529400CEBE7B /* hfs_vnops.c */; };
+		FB20E1661AE9529400CEBE7B /* hfs_xattr.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1211AE9529400CEBE7B /* hfs_xattr.c */; };
+		FB20E1671AE9529400CEBE7B /* hfs.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1221AE9529400CEBE7B /* hfs.h */; };
+		FB20E1681AE9529400CEBE7B /* HFSUnicodeWrappers.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1231AE9529400CEBE7B /* HFSUnicodeWrappers.h */; };
+		FB20E1691AE9529400CEBE7B /* MacOSStubs.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1241AE9529400CEBE7B /* MacOSStubs.c */; };
+		FB20E16B1AE9529400CEBE7B /* rangelist.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1261AE9529400CEBE7B /* rangelist.c */; };
+		FB20E16C1AE9529400CEBE7B /* rangelist.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1271AE9529400CEBE7B /* rangelist.h */; };
+		FB20E16D1AE9529400CEBE7B /* UCStringCompareData.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1281AE9529400CEBE7B /* UCStringCompareData.h */; };
+		FB20E16E1AE9529400CEBE7B /* UnicodeWrappers.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1291AE9529400CEBE7B /* UnicodeWrappers.c */; };
+		FB20E16F1AE9529400CEBE7B /* hfs_journal.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E12A1AE9529400CEBE7B /* hfs_journal.c */; };
+		FB20E1701AE9529400CEBE7B /* hfs_journal.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E12B1AE9529400CEBE7B /* hfs_journal.h */; };
+		FB20E1711AE9529400CEBE7B /* VolumeAllocation.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E12C1AE9529400CEBE7B /* VolumeAllocation.c */; };
+		FB20E17B1AE968D300CEBE7B /* kext-config.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E17A1AE968D300CEBE7B /* kext-config.h */; };
+		FB285C2A1B7E81180099B2ED /* test-sparse-dev.c in Sources */ = {isa = PBXBuildFile; fileRef = FB285C281B7E81180099B2ED /* test-sparse-dev.c */; };
+		FB2B5C561B87656900ACEDD9 /* test-transcode.m in Sources */ = {isa = PBXBuildFile; fileRef = FB2B5C551B87656900ACEDD9 /* test-transcode.m */; };
+		FB2B5C731B87A0BF00ACEDD9 /* test-getattrlist.c in Sources */ = {isa = PBXBuildFile; fileRef = FB2B5C721B87A0BF00ACEDD9 /* test-getattrlist.c */; };
+		FB3BB20B1BE286CC0094F00E /* test-secluded-rename.c in Sources */ = {isa = PBXBuildFile; fileRef = FB3BB2091BE2862E0094F00E /* test-secluded-rename.c */; };
+		FB48E4A81BB307C300523121 /* hfs_encodings.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1061AE9529400CEBE7B /* hfs_encodings.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB48E4A91BB307CB00523121 /* hfs_format.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10B1AE9529400CEBE7B /* hfs_format.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB48E4AA1BB307D900523121 /* hfs_unistr.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E11D1AE9529400CEBE7B /* hfs_unistr.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB48E4AB1BB307F500523121 /* hfs_mount.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1161AE9529400CEBE7B /* hfs_mount.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB48E50D1BB379B400523121 /* hfs_format.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10B1AE9529400CEBE7B /* hfs_format.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB48E50E1BB379BB00523121 /* hfs_unistr.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E11D1AE9529400CEBE7B /* hfs_unistr.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB48E50F1BB379C000523121 /* hfs_mount.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1161AE9529400CEBE7B /* hfs_mount.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FB48E5121BB3853500523121 /* hfs_fsctl.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10C1AE9529400CEBE7B /* hfs_fsctl.h */; settings = {ATTRIBUTES = (Private, ); }; };
+		FB55AE541B7C271000701D03 /* test-doc-tombstone.c in Sources */ = {isa = PBXBuildFile; fileRef = FB55AE521B7C271000701D03 /* test-doc-tombstone.c */; };
+		FB55AE591B7CEB0600701D03 /* test-quotas.c in Sources */ = {isa = PBXBuildFile; fileRef = FB55AE581B7CEB0600701D03 /* test-quotas.c */; };
+		FB6A57E51B5554DE008AB046 /* hfs_fsctl.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E10C1AE9529400CEBE7B /* hfs_fsctl.h */; settings = {ATTRIBUTES = (Private, ); }; };
+		FB75A4061B4AEA20004B5A74 /* hfs_encodings.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1051AE9529400CEBE7B /* hfs_encodings.c */; };
+		FB75A40B1B4AF025004B5A74 /* hfs_encodings.h in Headers */ = {isa = PBXBuildFile; fileRef = FB20E1061AE9529400CEBE7B /* hfs_encodings.h */; settings = {ATTRIBUTES = (Private, ); }; };
+		FB75A40E1B4AF0BE004B5A74 /* hfs_encodings_kext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FB75A40C1B4AF0BA004B5A74 /* hfs_encodings_kext.cpp */; };
+		FB76B3D91B7A4BF000FA9F2B /* hfs-tests.mm in Sources */ = {isa = PBXBuildFile; fileRef = FB76B3CB1B7A48DE00FA9F2B /* hfs-tests.mm */; };
+		FB76B3DC1B7A530500FA9F2B /* test-external-jnl.c in Sources */ = {isa = PBXBuildFile; fileRef = FB76B3DA1B7A52BE00FA9F2B /* test-external-jnl.c */; };
+		FB76B3EE1B7BE24B00FA9F2B /* disk-image.m in Sources */ = {isa = PBXBuildFile; fileRef = FB76B3EB1B7BDFDB00FA9F2B /* disk-image.m */; };
+		FB76B3F21B7BE79800FA9F2B /* systemx.c in Sources */ = {isa = PBXBuildFile; fileRef = FB76B3EF1B7BE67400FA9F2B /* systemx.c */; };
+		FB7B02E81B55634F00BEE4BE /* hfs.util in CopyFiles */ = {isa = PBXBuildFile; fileRef = C1B6FD2B10CC0DB200778D48 /* hfs.util */; };
+		FB7B02E91B55644A00BEE4BE /* mount_hfs in CopyFiles */ = {isa = PBXBuildFile; fileRef = 4D0E899C1534FE65004CD678 /* mount_hfs */; };
+		FB7B02EA1B55663400BEE4BE /* fsck_hfs in CopyFiles */ = {isa = PBXBuildFile; fileRef = 4DFD93F41535FF510039B6BA /* fsck_hfs */; };
+		FB81AFBB1B83E2C0004E8F76 /* CopyHFSMeta in CopyFiles */ = {isa = PBXBuildFile; fileRef = FDD9FA2C14A132BF0043D4A9 /* CopyHFSMeta */; };
+		FB81AFBC1B83E2C6004E8F76 /* newfs_hfs in CopyFiles */ = {isa = PBXBuildFile; fileRef = 4DE6C75B153504C100C11066 /* newfs_hfs */; };
+		FBAA824C1B56F24E00EE6863 /* hfs_alloc_test.c in Sources */ = {isa = PBXBuildFile; fileRef = FBAA823D1B56F22400EE6863 /* hfs_alloc_test.c */; };
+		FBAA82581B56F27200EE6863 /* hfs_extents_test.c in Sources */ = {isa = PBXBuildFile; fileRef = FBAA823E1B56F22400EE6863 /* hfs_extents_test.c */; };
+		FBAA82641B56F28F00EE6863 /* rangelist_test.c in Sources */ = {isa = PBXBuildFile; fileRef = FBAA82401B56F22400EE6863 /* rangelist_test.c */; };
+		FBAA82701B56F39B00EE6863 /* hfs_extents.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1091AE9529400CEBE7B /* hfs_extents.c */; };
+		FBBBE2801B55BB3A009F534D /* hfs_encodinghint.c in Sources */ = {isa = PBXBuildFile; fileRef = FB20E1041AE9529400CEBE7B /* hfs_encodinghint.c */; };
+		FBCC53011B852759008B752C /* hfs-alloc-trace.c in Sources */ = {isa = PBXBuildFile; fileRef = FBCC53001B852759008B752C /* hfs-alloc-trace.c */; };
+		FBD69AFA1B9132E40022ECAD /* test-dateadded.c in Sources */ = {isa = PBXBuildFile; fileRef = FBD69AF81B91309C0022ECAD /* test-dateadded.c */; };
+		FBE1B1D41BD6E41D00CEB443 /* test-move-data-extents.c in Sources */ = {isa = PBXBuildFile; fileRef = FBE1B1D31BD6E3D700CEB443 /* test-move-data-extents.c */; };
 		FDD9FA4214A133F00043D4A9 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C1B6FA2210CC0AF400778D48 /* CoreFoundation.framework */; };
 		FDD9FA5214A1343D0043D4A9 /* DeviceWrapper.c in Sources */ = {isa = PBXBuildFile; fileRef = FDD9FA4814A1343D0043D4A9 /* DeviceWrapper.c */; };
 		FDD9FA5314A1343D0043D4A9 /* dump.c in Sources */ = {isa = PBXBuildFile; fileRef = FDD9FA4914A1343D0043D4A9 /* dump.c */; };
@@ -207,6 +431,160 @@
 			remoteGlobalIDString = 4DFD94BC15373C2C0039B6BA;
 			remoteInfo = fsck_makestrings;
 		};
+		8657285B18319A93007F580F /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 86CBF37E183186C300A64A93;
+			remoteInfo = hfs_metadata;
+		};
+		FB48E4BB1BB30CC400523121 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB48E49B1BB3070400523121;
+			remoteInfo = "OSX Kernel Framework Headers";
+		};
+		FB55AE5A1B7D190F00701D03 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB76B3D11B7A4BE600FA9F2B;
+			remoteInfo = "hfs-tests";
+		};
+		FB55AE671B7D47B300701D03 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB76B3D11B7A4BE600FA9F2B;
+			remoteInfo = "hfs-tests";
+		};
+		FB75A4081B4AED92004B5A74 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB75A3B11B4AE765004B5A74;
+			remoteInfo = "encodings-kext";
+		};
+		FB7B02EB1B5568A100BEE4BE /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 4DFD93F31535FF510039B6BA;
+			remoteInfo = fsck_hfs;
+		};
+		FB7B02ED1B5568A700BEE4BE /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 4D0E899B1534FE65004CD678;
+			remoteInfo = mount_hfs;
+		};
+		FB7B02EF1B5568AD00BEE4BE /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 8DD76FA90486AB0100D96B5E;
+			remoteInfo = hfs.util;
+		};
+		FB7C14121C23695E004F8B2C /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB7C140C1C2368E6004F8B2C;
+			remoteInfo = "kext-version";
+		};
+		FB81AFB71B83E2AE004E8F76 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FDD9FA2B14A132BF0043D4A9;
+			remoteInfo = CopyHFSMeta;
+		};
+		FB81AFB91B83E2B8004E8F76 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 4DE6C75A153504C100C11066;
+			remoteInfo = newfs_hfs;
+		};
+		FBA540001B7BF2DF00899E5B /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB6A57DD1B55544D008AB046;
+			remoteInfo = "System Framework Headers";
+		};
+		FBA95AAE1B5045D400887E82 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FBA95AA91B5025E700887E82;
+			remoteInfo = "mk-xnu";
+		};
+		FBAA82691B56F2B900EE6863 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FBAA82441B56F24100EE6863;
+			remoteInfo = hfs_alloc_test;
+		};
+		FBAA826B1B56F2B900EE6863 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FBAA82501B56F26A00EE6863;
+			remoteInfo = hfs_extents_test;
+		};
+		FBAA826D1B56F2B900EE6863 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FBAA825C1B56F28C00EE6863;
+			remoteInfo = rangelist_test;
+		};
+		FBC234BD1B4D87A20002D849 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB20E0DF1AE950C200CEBE7B;
+			remoteInfo = kext;
+		};
+		FBC234C31B4EC6AE0002D849 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB20E0DF1AE950C200CEBE7B;
+			remoteInfo = kext;
+		};
+		FBC234C51B4EC6B90002D849 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB75A3B11B4AE765004B5A74;
+			remoteInfo = "encodings-kext";
+		};
+		FBE3A5A21BBEE33D00CB9A33 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB55AE651B7D47B300701D03;
+			remoteInfo = "ios-tests";
+		};
+		FBE3A5A41BBEE34400CB9A33 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FBAA82651B56F2AB00EE6863;
+			remoteInfo = "osx-tests";
+		};
+		FBE3F7861AF6793E005BB768 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = FB20E0DF1AE950C200CEBE7B;
+			remoteInfo = kext;
+		};
 /* End PBXContainerItemProxy section */
 
 /* Begin PBXCopyFilesBuildPhase section */
@@ -276,9 +654,101 @@
 			name = "Copy man8";
 			runOnlyForDeploymentPostprocessing = 1;
 		};
+		FB76B3D01B7A4BE600FA9F2B /* CopyFiles */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = /usr/share/man/man1/;
+			dstSubfolderSpec = 0;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 1;
+		};
+		FB7B02E71B55634200BEE4BE /* CopyFiles */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = Contents/Resources;
+			dstSubfolderSpec = 1;
+			files = (
+				FB81AFBC1B83E2C6004E8F76 /* newfs_hfs in CopyFiles */,
+				FB81AFBB1B83E2C0004E8F76 /* CopyHFSMeta in CopyFiles */,
+				FB7B02EA1B55663400BEE4BE /* fsck_hfs in CopyFiles */,
+				FB7B02E91B55644A00BEE4BE /* mount_hfs in CopyFiles */,
+				FB7B02E81B55634F00BEE4BE /* hfs.util in CopyFiles */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBAA82431B56F24100EE6863 /* CopyFiles */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = /usr/share/man/man1/;
+			dstSubfolderSpec = 0;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 1;
+		};
+		FBAA824F1B56F26A00EE6863 /* CopyFiles */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = /usr/share/man/man1/;
+			dstSubfolderSpec = 0;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 1;
+		};
+		FBAA825B1B56F28C00EE6863 /* CopyFiles */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = /usr/share/man/man1/;
+			dstSubfolderSpec = 0;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 1;
+		};
+		FBCC52FC1B852758008B752C /* CopyFiles */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = /usr/share/man/man1/;
+			dstSubfolderSpec = 0;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 1;
+		};
 /* End PBXCopyFilesBuildPhase section */
 
 /* Begin PBXFileReference section */
+		0703A0531CD826160035BCFD /* test-defrag.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-defrag.c"; sourceTree = "<group>"; };
+		07C2BF881CB43F5E00D8327D /* test-renamex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-renamex.c"; sourceTree = "<group>"; };
+		2A386A3A1C221E67007FEDAC /* test-list-ids.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-list-ids.c"; sourceTree = "<group>"; };
+		2A84DBD31D9E1179007964B8 /* test-raw-dev-unaligned.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-raw-dev-unaligned.c"; sourceTree = "<group>"; };
+		2A9399941BDFEA6E00FB075B /* test-access.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-access.c"; sourceTree = "<group>"; };
+		2A9399961BDFEF3900FB075B /* test-chflags.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-chflags.c"; sourceTree = "<group>"; };
+		2A93999B1BE0146000FB075B /* test-class-roll.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-class-roll.c"; sourceTree = "<group>"; };
+		2A93999C1BE0146000FB075B /* test-deep-rm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-deep-rm.c"; sourceTree = "<group>"; };
+		2A93999F1BE0220B00FB075B /* test-dir-link.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-dir-link.c"; sourceTree = "<group>"; };
+		2A9399A11BE02A0E00FB075B /* test-dprotect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-dprotect.c"; sourceTree = "<group>"; };
+		2A9399A31BE02C1F00FB075B /* test-file-too-big.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-file-too-big.m"; sourceTree = "<group>"; };
+		2A9399A51BE0365F00FB075B /* test-fsync.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-fsync.c"; sourceTree = "<group>"; };
+		2A9399A71BE03A6200FB075B /* test-getattrlist-dprotect.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-getattrlist-dprotect.m"; sourceTree = "<group>"; };
+		2A9399A91BE0401D00FB075B /* test-hard-links.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-hard-links.m"; sourceTree = "<group>"; };
+		2A9399AB1BE128B700FB075B /* test-invalid-ranges.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-invalid-ranges.m"; sourceTree = "<group>"; };
+		2A9399B11BE12A6300FB075B /* test-fsinfo-cprotect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-fsinfo-cprotect.c"; sourceTree = "<group>"; };
+		2A9399B31BE12DE400FB075B /* test-fsinfo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-fsinfo.c"; sourceTree = "<group>"; };
+		2A9399B51BE131A000FB075B /* test-resize.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-resize.m"; sourceTree = "<group>"; };
+		2A9399B71BE14AA800FB075B /* test-scan-range-size.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-scan-range-size.c"; sourceTree = "<group>"; };
+		2A9399B91BE15F5F00FB075B /* test-fsinfo-sig.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-fsinfo-sig.c"; sourceTree = "<group>"; };
+		2A9399BA1BE15F5F00FB075B /* test-key-roll.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-key-roll.c"; sourceTree = "<group>"; };
+		2A9399BB1BE15F5F00FB075B /* test-msync-16k.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-msync-16k.c"; sourceTree = "<group>"; };
+		2A9399BC1BE15F5F00FB075B /* test-readdir.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-readdir.c"; sourceTree = "<group>"; };
+		2A9399BD1BE15F5F00FB075B /* test-set-create-time.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-set-create-time.c"; sourceTree = "<group>"; };
+		2A9399BE1BE15F5F00FB075B /* test-set-protection-class.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-set-protection-class.c"; sourceTree = "<group>"; };
+		2A9399C51BE1729200FB075B /* test-log2phys.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-log2phys.m"; sourceTree = "<group>"; };
+		2A9399C81BE1747200FB075B /* test-map-private.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-map-private.m"; sourceTree = "<group>"; };
+		2A9399CB1BE2BB1600FB075B /* test-journal-toggle.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-journal-toggle.c"; sourceTree = "<group>"; };
+		2A9399CC1BE2BC5800FB075B /* test-mmap-mod-time.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-mmap-mod-time.c"; sourceTree = "<group>"; };
+		2A9399CE1BE2BCE200FB075B /* test-mod-time.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-mod-time.c"; sourceTree = "<group>"; };
+		2A9399D01BE2BFF400FB075B /* test-throttled-io.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-throttled-io.c"; sourceTree = "<group>"; };
+		2A9399D21BE2C06000FB075B /* test-uncached-io.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-uncached-io.c"; sourceTree = "<group>"; };
+		2A9399D41BE2C14800FB075B /* test-unicode-file-names.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-unicode-file-names.c"; sourceTree = "<group>"; };
 		4D07DCB81538EF3A002B57CB /* fstyp_hfs */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = fstyp_hfs; sourceTree = BUILT_PRODUCTS_DIR; };
 		4D07DCC21538EF92002B57CB /* fstyp_hfs.8 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = fstyp_hfs.8; sourceTree = "<group>"; };
 		4D07DCC31538EF92002B57CB /* fstyp_hfs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fstyp_hfs.c; sourceTree = "<group>"; };
@@ -289,6 +759,12 @@
 		4D0E89A71534FF48004CD678 /* mount_hfs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mount_hfs.c; sourceTree = "<group>"; };
 		4D0E89A81534FF48004CD678 /* optical.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = optical.c; sourceTree = "<group>"; };
 		4D0E89A91534FF48004CD678 /* optical.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = optical.h; sourceTree = "<group>"; };
+		4D6E7827191D3E7E004E3F93 /* fsck_hfs.ios.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = fsck_hfs.ios.entitlements; sourceTree = "<group>"; };
+		4D6E7828191D3F26004E3F93 /* newfs_hfs.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = newfs_hfs.entitlements; path = newfs_hfs/newfs_hfs.entitlements; sourceTree = SOURCE_ROOT; };
+		4D6E7829191D3F41004E3F93 /* mount_hfs.ios.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = mount_hfs.ios.entitlements; sourceTree = "<group>"; };
+		4D7C8964192141CA002013C9 /* hfs_util.ios.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = hfs_util.ios.entitlements; sourceTree = "<group>"; };
+		4D7C8965192141DB002013C9 /* CopyHFSMeta.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = CopyHFSMeta.entitlements; sourceTree = "<group>"; };
+		4D7C8966192141ED002013C9 /* fstyp_hfs.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = fstyp_hfs.entitlements; sourceTree = "<group>"; };
 		4DE6C7461535012200C11066 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
 		4DE6C74A1535018100C11066 /* libutil.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libutil.dylib; path = /usr/lib/libutil.dylib; sourceTree = "<absolute>"; };
 		4DE6C75B153504C100C11066 /* newfs_hfs */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = newfs_hfs; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -319,7 +795,7 @@
 		4DFD9428153600060039B6BA /* DecompMakeData.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = DecompMakeData.c; sourceTree = "<group>"; };
 		4DFD9429153600060039B6BA /* dirhardlink.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dirhardlink.c; sourceTree = "<group>"; };
 		4DFD942A153600060039B6BA /* FixDecompsNotes.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = FixDecompsNotes.txt; sourceTree = "<group>"; };
-		4DFD942B153600060039B6BA /* HardLinkCheck.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = HardLinkCheck.c; sourceTree = "<group>"; };
+		4DFD942B153600060039B6BA /* HardLinkCheck.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = HardLinkCheck.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
 		4DFD942C153600060039B6BA /* hfs_endian.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_endian.c; sourceTree = "<group>"; };
 		4DFD942D153600060039B6BA /* hfs_endian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_endian.h; sourceTree = "<group>"; };
 		4DFD942F153600060039B6BA /* SAllocate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SAllocate.c; sourceTree = "<group>"; };
@@ -359,13 +835,137 @@
 		4DFD9537153746210039B6BA /* English */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
 		4DFD9539153746B30039B6BA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
 		4DFD953D15377C7D0039B6BA /* hfs.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = hfs.xcconfig; sourceTree = "<group>"; };
+		7204A9401BE94359007A9898 /* img-to-c.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "img-to-c.c"; sourceTree = "<group>"; };
+		7204A9811BE94BC9007A9898 /* gen-dmg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "gen-dmg.sh"; sourceTree = "<group>"; };
 		7279A68B1593AA5C00192947 /* fsck_journal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = fsck_journal.c; path = dfalib/fsck_journal.c; sourceTree = "<group>"; };
 		7279A68C1593AA5C00192947 /* fsck_journal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = fsck_journal.h; path = dfalib/fsck_journal.h; sourceTree = "<group>"; };
+		862C904B1834311200BAD882 /* iterate_hfs_metadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = iterate_hfs_metadata.h; path = libhfs_metadata/iterate_hfs_metadata.h; sourceTree = SOURCE_ROOT; };
+		863D03961820761900A4F0C4 /* util.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = util.c; sourceTree = "<group>"; };
+		86CBF37F183186C300A64A93 /* libhfs_metadata.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libhfs_metadata.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		86CBF3851831880F00A64A93 /* iterate_hfs_metadata.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = iterate_hfs_metadata.c; path = libhfs_metadata/iterate_hfs_metadata.c; sourceTree = SOURCE_ROOT; };
+		9D7AAC861B44874E0001F573 /* mount_hfs.osx.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = mount_hfs.osx.entitlements; sourceTree = "<group>"; };
+		9D7AAC871B44880B0001F573 /* hfs_util.osx.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = hfs_util.osx.entitlements; sourceTree = "<group>"; };
+		9D9067881B44633C003D2117 /* fsck_hfs.osx.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = fsck_hfs.osx.entitlements; sourceTree = "<group>"; };
 		C1B6FA0610CC0A0A00778D48 /* hfsutil_jnl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfsutil_jnl.c; sourceTree = "<group>"; };
 		C1B6FA0710CC0A0A00778D48 /* hfsutil_main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfsutil_main.c; sourceTree = "<group>"; };
 		C1B6FA2210CC0AF400778D48 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
 		C1B6FA2F10CC0B8A00778D48 /* hfs.util.8 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = hfs.util.8; sourceTree = "<group>"; };
 		C1B6FD2B10CC0DB200778D48 /* hfs.util */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = hfs.util; sourceTree = BUILT_PRODUCTS_DIR; };
+		FB02B8CE1B5ED0B50093DD47 /* make_opensource.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = make_opensource.sh; sourceTree = "<group>"; };
+		FB20E0E01AE950C200CEBE7B /* HFS.kext */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = HFS.kext; sourceTree = BUILT_PRODUCTS_DIR; };
+		FB20E0E31AE950C200CEBE7B /* macosx-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "macosx-Info.plist"; sourceTree = "<group>"; };
+		FB20E0E41AE950C200CEBE7B /* hfs_iokit.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = hfs_iokit.cpp; sourceTree = "<group>"; };
+		FB20E0E81AE9529400CEBE7B /* BTree.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BTree.c; sourceTree = "<group>"; };
+		FB20E0E91AE9529400CEBE7B /* BTreeAllocate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BTreeAllocate.c; sourceTree = "<group>"; };
+		FB20E0EA1AE9529400CEBE7B /* BTreeMiscOps.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BTreeMiscOps.c; sourceTree = "<group>"; };
+		FB20E0EB1AE9529400CEBE7B /* BTreeNodeOps.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BTreeNodeOps.c; sourceTree = "<group>"; };
+		FB20E0EC1AE9529400CEBE7B /* BTreeNodeReserve.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BTreeNodeReserve.c; sourceTree = "<group>"; };
+		FB20E0ED1AE9529400CEBE7B /* BTreeScanner.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BTreeScanner.c; sourceTree = "<group>"; };
+		FB20E0EE1AE9529400CEBE7B /* BTreeScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BTreeScanner.h; sourceTree = "<group>"; };
+		FB20E0EF1AE9529400CEBE7B /* BTreesInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BTreesInternal.h; sourceTree = "<group>"; };
+		FB20E0F01AE9529400CEBE7B /* BTreesPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BTreesPrivate.h; sourceTree = "<group>"; };
+		FB20E0F11AE9529400CEBE7B /* BTreeTreeOps.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BTreeTreeOps.c; sourceTree = "<group>"; };
+		FB20E0F21AE9529400CEBE7B /* BTreeWrapper.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = BTreeWrapper.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0F31AE9529400CEBE7B /* CatalogPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CatalogPrivate.h; sourceTree = "<group>"; };
+		FB20E0F41AE9529400CEBE7B /* CatalogUtilities.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = CatalogUtilities.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0F51AE9529400CEBE7B /* FileExtentMapping.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = FileExtentMapping.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0F61AE9529400CEBE7B /* FileIDsServices.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = FileIDsServices.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0F71AE9529400CEBE7B /* FileMgrInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileMgrInternal.h; sourceTree = "<group>"; };
+		FB20E0F81AE9529400CEBE7B /* hfs_attrlist.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_attrlist.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0F91AE9529400CEBE7B /* hfs_attrlist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_attrlist.h; sourceTree = "<group>"; };
+		FB20E0FA1AE9529400CEBE7B /* hfs_btreeio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_btreeio.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0FB1AE9529400CEBE7B /* hfs_btreeio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_btreeio.h; sourceTree = "<group>"; };
+		FB20E0FC1AE9529400CEBE7B /* hfs_catalog.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_catalog.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0FD1AE9529400CEBE7B /* hfs_catalog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_catalog.h; sourceTree = "<group>"; };
+		FB20E0FE1AE9529400CEBE7B /* hfs_chash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_chash.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E0FF1AE9529400CEBE7B /* hfs_cnode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_cnode.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1001AE9529400CEBE7B /* hfs_cnode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_cnode.h; sourceTree = "<group>"; };
+		FB20E1011AE9529400CEBE7B /* hfs_cprotect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_cprotect.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1021AE9529400CEBE7B /* hfs_cprotect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_cprotect.h; sourceTree = "<group>"; };
+		FB20E1031AE9529400CEBE7B /* hfs_dbg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_dbg.h; sourceTree = "<group>"; };
+		FB20E1041AE9529400CEBE7B /* hfs_encodinghint.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_encodinghint.c; sourceTree = "<group>"; };
+		FB20E1051AE9529400CEBE7B /* hfs_encodings.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_encodings.c; sourceTree = "<group>"; };
+		FB20E1061AE9529400CEBE7B /* hfs_encodings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_encodings.h; sourceTree = "<group>"; };
+		FB20E1071AE9529400CEBE7B /* hfs_endian.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_endian.c; sourceTree = "<group>"; };
+		FB20E1081AE9529400CEBE7B /* hfs_endian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_endian.h; sourceTree = "<group>"; };
+		FB20E1091AE9529400CEBE7B /* hfs_extents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_extents.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E10A1AE9529400CEBE7B /* hfs_extents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_extents.h; sourceTree = "<group>"; };
+		FB20E10B1AE9529400CEBE7B /* hfs_format.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_format.h; sourceTree = "<group>"; };
+		FB20E10C1AE9529400CEBE7B /* hfs_fsctl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_fsctl.h; sourceTree = "<group>"; };
+		FB20E10D1AE9529400CEBE7B /* hfs_fsinfo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_fsinfo.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E10E1AE9529400CEBE7B /* hfs_hotfiles.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_hotfiles.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E10F1AE9529400CEBE7B /* hfs_hotfiles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_hotfiles.h; sourceTree = "<group>"; };
+		FB20E1101AE9529400CEBE7B /* hfs_kdebug.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_kdebug.h; sourceTree = "<group>"; };
+		FB20E1111AE9529400CEBE7B /* hfs_key_roll.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_key_roll.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1121AE9529400CEBE7B /* hfs_key_roll.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_key_roll.h; sourceTree = "<group>"; };
+		FB20E1131AE9529400CEBE7B /* hfs_link.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_link.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1141AE9529400CEBE7B /* hfs_lookup.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_lookup.c; sourceTree = "<group>"; };
+		FB20E1151AE9529400CEBE7B /* hfs_macos_defs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_macos_defs.h; sourceTree = "<group>"; };
+		FB20E1161AE9529400CEBE7B /* hfs_mount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_mount.h; sourceTree = "<group>"; };
+		FB20E1171AE9529400CEBE7B /* hfs_notification.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_notification.c; sourceTree = "<group>"; };
+		FB20E1181AE9529400CEBE7B /* hfs_quota.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_quota.c; sourceTree = "<group>"; };
+		FB20E1191AE9529400CEBE7B /* hfs_quota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_quota.h; sourceTree = "<group>"; };
+		FB20E11A1AE9529400CEBE7B /* hfs_readwrite.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_readwrite.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E11B1AE9529400CEBE7B /* hfs_resize.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_resize.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E11C1AE9529400CEBE7B /* hfs_search.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_search.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E11D1AE9529400CEBE7B /* hfs_unistr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_unistr.h; sourceTree = "<group>"; };
+		FB20E11E1AE9529400CEBE7B /* hfs_vfsops.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_vfsops.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E11F1AE9529400CEBE7B /* hfs_vfsutils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_vfsutils.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1201AE9529400CEBE7B /* hfs_vnops.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_vnops.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1211AE9529400CEBE7B /* hfs_xattr.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_xattr.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1221AE9529400CEBE7B /* hfs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs.h; sourceTree = "<group>"; };
+		FB20E1231AE9529400CEBE7B /* HFSUnicodeWrappers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HFSUnicodeWrappers.h; sourceTree = "<group>"; };
+		FB20E1241AE9529400CEBE7B /* MacOSStubs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = MacOSStubs.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1261AE9529400CEBE7B /* rangelist.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = rangelist.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1271AE9529400CEBE7B /* rangelist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rangelist.h; sourceTree = "<group>"; };
+		FB20E1281AE9529400CEBE7B /* UCStringCompareData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UCStringCompareData.h; sourceTree = "<group>"; };
+		FB20E1291AE9529400CEBE7B /* UnicodeWrappers.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = UnicodeWrappers.c; sourceTree = "<group>"; };
+		FB20E12A1AE9529400CEBE7B /* hfs_journal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = hfs_journal.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E12B1AE9529400CEBE7B /* hfs_journal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_journal.h; sourceTree = "<group>"; };
+		FB20E12C1AE9529400CEBE7B /* VolumeAllocation.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = VolumeAllocation.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+		FB20E1781AE968BD00CEBE7B /* kext.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = kext.xcconfig; sourceTree = "<group>"; };
+		FB20E17A1AE968D300CEBE7B /* kext-config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "kext-config.h"; sourceTree = "<group>"; };
+		FB285C281B7E81180099B2ED /* test-sparse-dev.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-sparse-dev.c"; sourceTree = "<group>"; };
+		FB2B5C551B87656900ACEDD9 /* test-transcode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "test-transcode.m"; sourceTree = "<group>"; };
+		FB2B5C671B877A4D00ACEDD9 /* hfs-tests.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "hfs-tests.xcconfig"; sourceTree = "<group>"; };
+		FB2B5C691B877DEC00ACEDD9 /* hfs-tests.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = "hfs-tests.entitlements"; sourceTree = "<group>"; };
+		FB2B5C721B87A0BF00ACEDD9 /* test-getattrlist.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-getattrlist.c"; sourceTree = "<group>"; };
+		FB3BB2091BE2862E0094F00E /* test-secluded-rename.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-secluded-rename.c"; sourceTree = "<group>"; };
+		FB48E4A61BB3070500523121 /* Kernel.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Kernel.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		FB48E5041BB3798500523121 /* Sim_Headers */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = Sim_Headers; sourceTree = BUILT_PRODUCTS_DIR; };
+		FB55AE521B7C271000701D03 /* test-doc-tombstone.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-doc-tombstone.c"; sourceTree = "<group>"; };
+		FB55AE581B7CEB0600701D03 /* test-quotas.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-quotas.c"; sourceTree = "<group>"; };
+		FB55AE5D1B7D219700701D03 /* gen-test-plist.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "gen-test-plist.sh"; sourceTree = "<group>"; };
+		FB6A57DE1B55544D008AB046 /* hfs-System.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "hfs-System.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
+		FB75A4021B4AE765004B5A74 /* HFSEncodings.kext */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = HFSEncodings.kext; sourceTree = BUILT_PRODUCTS_DIR; };
+		FB75A4031B4AE765004B5A74 /* HFSEncodings-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "HFSEncodings-Info.plist"; sourceTree = "<group>"; };
+		FB75A40C1B4AF0BA004B5A74 /* hfs_encodings_kext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = hfs_encodings_kext.cpp; sourceTree = "<group>"; };
+		FB75A40F1B4AF8A3004B5A74 /* hfs_encodings_internal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = hfs_encodings_internal.h; sourceTree = "<group>"; };
+		FB76B3CB1B7A48DE00FA9F2B /* hfs-tests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = "hfs-tests.mm"; sourceTree = "<group>"; };
+		FB76B3CC1B7A48DE00FA9F2B /* hfs-tests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "hfs-tests.h"; sourceTree = "<group>"; };
+		FB76B3D21B7A4BE600FA9F2B /* hfs-tests */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "hfs-tests"; sourceTree = BUILT_PRODUCTS_DIR; };
+		FB76B3DA1B7A52BE00FA9F2B /* test-external-jnl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-external-jnl.c"; sourceTree = "<group>"; };
+		FB76B3EB1B7BDFDB00FA9F2B /* disk-image.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "disk-image.m"; sourceTree = "<group>"; };
+		FB76B3EC1B7BDFDB00FA9F2B /* disk-image.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "disk-image.h"; sourceTree = "<group>"; };
+		FB76B3EF1B7BE67400FA9F2B /* systemx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = systemx.c; sourceTree = "<group>"; };
+		FB76B3F01B7BE67400FA9F2B /* systemx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = systemx.h; sourceTree = "<group>"; };
+		FB7CCFCF1B4657C60078E79D /* hfs_iokit.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = hfs_iokit.h; sourceTree = "<group>"; };
+		FBAA823D1B56F22400EE6863 /* hfs_alloc_test.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = hfs_alloc_test.c; sourceTree = "<group>"; };
+		FBAA823E1B56F22400EE6863 /* hfs_extents_test.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = hfs_extents_test.c; sourceTree = "<group>"; };
+		FBAA823F1B56F22400EE6863 /* hfs_extents_test.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = hfs_extents_test.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
+		FBAA82401B56F22400EE6863 /* rangelist_test.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = rangelist_test.c; sourceTree = "<group>"; };
+		FBAA82451B56F24100EE6863 /* hfs_alloc_test */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = hfs_alloc_test; sourceTree = BUILT_PRODUCTS_DIR; };
+		FBAA82511B56F26A00EE6863 /* hfs_extents_test */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = hfs_extents_test; sourceTree = BUILT_PRODUCTS_DIR; };
+		FBAA825D1B56F28C00EE6863 /* rangelist_test */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = rangelist_test; sourceTree = BUILT_PRODUCTS_DIR; };
+		FBAA826F1B56F32900EE6863 /* test-utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "test-utils.h"; sourceTree = "<group>"; };
+		FBC234C21B4DA15E0002D849 /* iphoneos-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "iphoneos-Info.plist"; sourceTree = "<group>"; };
+		FBCC52FE1B852758008B752C /* hfs-alloc-trace */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "hfs-alloc-trace"; sourceTree = BUILT_PRODUCTS_DIR; };
+		FBCC53001B852759008B752C /* hfs-alloc-trace.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = "hfs-alloc-trace.c"; sourceTree = "<group>"; };
+		FBCC53051B853728008B752C /* hfs_alloc_trace.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = hfs_alloc_trace.h; sourceTree = "<group>"; };
+		FBD0D1CA1AF34C2B00AAAF5E /* install */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = install; sourceTree = "<group>"; };
+		FBD69AF81B91309C0022ECAD /* test-dateadded.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-dateadded.c"; sourceTree = "<group>"; };
+		FBE1B1D31BD6E3D700CEB443 /* test-move-data-extents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "test-move-data-extents.c"; sourceTree = "<group>"; };
+		FBE3F7851AF6776B005BB768 /* mk-root.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "mk-root.sh"; sourceTree = "<group>"; };
 		FDD9FA2C14A132BF0043D4A9 /* CopyHFSMeta */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = CopyHFSMeta; sourceTree = BUILT_PRODUCTS_DIR; };
 		FDD9FA4714A1343D0043D4A9 /* Data.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Data.h; sourceTree = "<group>"; };
 		FDD9FA4814A1343D0043D4A9 /* DeviceWrapper.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = DeviceWrapper.c; sourceTree = "<group>"; };
@@ -434,6 +1034,13 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
+		86CBF37C183186C300A64A93 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 		8DD76FAD0486AB0100D96B5E /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
@@ -442,6 +1049,55 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
+		FB20E0DC1AE950C200CEBE7B /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB75A3DE1B4AE765004B5A74 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB76B3CF1B7A4BE600FA9F2B /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBAA82421B56F24100EE6863 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBAA824E1B56F26A00EE6863 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBAA825A1B56F28C00EE6863 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBCC52FB1B852758008B752C /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 		FDD9FA2914A132BF0043D4A9 /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
@@ -459,14 +1115,20 @@
 			children = (
 				4DFD953D15377C7D0039B6BA /* hfs.xcconfig */,
 				FDD9FA4614A1343D0043D4A9 /* CopyHFSMeta */,
+				86CBF384183187D500A64A93 /* libhfs_metadata */,
 				FDD9FA3F14A1335D0043D4A9 /* hfs_util */,
 				4D0E899E1534FE65004CD678 /* mount_hfs */,
 				4DE6C75D153504C100C11066 /* newfs_hfs */,
 				4DFD93F61535FF510039B6BA /* fsck_hfs */,
 				4DFD95141537402A0039B6BA /* hfs.fs */,
 				4D07DCBA1538EF3A002B57CB /* fstyp_hfs */,
+				FB20E0E11AE950C200CEBE7B /* core */,
+				FB5E57081B8BE9F400C34A07 /* hfs_encodings */,
+				FBBBE2811B55F354009F534D /* tests */,
+				FBCC52FF1B852759008B752C /* hfs-alloc-trace */,
 				FDD9FA4014A133A50043D4A9 /* Frameworks */,
 				C1B6FD2C10CC0DB200778D48 /* Products */,
+				FB02B8CE1B5ED0B50093DD47 /* make_opensource.sh */,
 			);
 			name = hfs;
 			sourceTree = "<group>";
@@ -476,6 +1138,7 @@
 			children = (
 				4D07DCC31538EF92002B57CB /* fstyp_hfs.c */,
 				4D07DCC21538EF92002B57CB /* fstyp_hfs.8 */,
+				4D7C8966192141ED002013C9 /* fstyp_hfs.entitlements */,
 			);
 			path = fstyp_hfs;
 			sourceTree = "<group>";
@@ -488,6 +1151,8 @@
 				4D0E89A71534FF48004CD678 /* mount_hfs.c */,
 				4D0E89A81534FF48004CD678 /* optical.c */,
 				4D0E89A61534FF48004CD678 /* mount_hfs.8 */,
+				4D6E7829191D3F41004E3F93 /* mount_hfs.ios.entitlements */,
+				9D7AAC861B44874E0001F573 /* mount_hfs.osx.entitlements */,
 			);
 			path = mount_hfs;
 			sourceTree = "<group>";
@@ -501,6 +1166,7 @@
 				4DE6C7661535050700C11066 /* makehfs.c */,
 				4DE6C7641535050700C11066 /* hfs_endian.c */,
 				4DE6C7671535050700C11066 /* newfs_hfs.8 */,
+				4D6E7828191D3F26004E3F93 /* newfs_hfs.entitlements */,
 			);
 			path = newfs_hfs;
 			sourceTree = "<group>";
@@ -527,6 +1193,8 @@
 				4DFD9418153600060039B6BA /* dfalib */,
 				4DFD9440153600060039B6BA /* docs */,
 				4DFD9446153600060039B6BA /* fsck_hfs.8 */,
+				4D6E7827191D3E7E004E3F93 /* fsck_hfs.ios.entitlements */,
+				9D9067881B44633C003D2117 /* fsck_hfs.osx.entitlements */,
 			);
 			path = fsck_hfs;
 			sourceTree = "<group>";
@@ -595,6 +1263,16 @@
 			path = fs;
 			sourceTree = "<group>";
 		};
+		86CBF384183187D500A64A93 /* libhfs_metadata */ = {
+			isa = PBXGroup;
+			children = (
+				86CBF3851831880F00A64A93 /* iterate_hfs_metadata.c */,
+				862C904B1834311200BAD882 /* iterate_hfs_metadata.h */,
+			);
+			name = libhfs_metadata;
+			path = CopyHFSMeta;
+			sourceTree = "<group>";
+		};
 		C1B6FD2C10CC0DB200778D48 /* Products */ = {
 			isa = PBXGroup;
 			children = (
@@ -607,16 +1285,206 @@
 				4DFD94E615373C2C0039B6BA /* fsck_makestrings */,
 				4DFD95121537402A0039B6BA /* hfs.fs */,
 				4D07DCB81538EF3A002B57CB /* fstyp_hfs */,
+				86CBF37F183186C300A64A93 /* libhfs_metadata.a */,
+				FB20E0E01AE950C200CEBE7B /* HFS.kext */,
+				FB75A4021B4AE765004B5A74 /* HFSEncodings.kext */,
+				FB6A57DE1B55544D008AB046 /* hfs-System.framework */,
+				FBAA82451B56F24100EE6863 /* hfs_alloc_test */,
+				FBAA82511B56F26A00EE6863 /* hfs_extents_test */,
+				FBAA825D1B56F28C00EE6863 /* rangelist_test */,
+				FB76B3D21B7A4BE600FA9F2B /* hfs-tests */,
+				FBCC52FE1B852758008B752C /* hfs-alloc-trace */,
+				FB48E4A61BB3070500523121 /* Kernel.framework */,
+				FB48E5041BB3798500523121 /* Sim_Headers */,
 			);
 			name = Products;
 			sourceTree = "<group>";
 		};
+		FB20E0E11AE950C200CEBE7B /* core */ = {
+			isa = PBXGroup;
+			children = (
+				FB20E0E81AE9529400CEBE7B /* BTree.c */,
+				FB20E0E91AE9529400CEBE7B /* BTreeAllocate.c */,
+				FB20E0EA1AE9529400CEBE7B /* BTreeMiscOps.c */,
+				FB20E0EB1AE9529400CEBE7B /* BTreeNodeOps.c */,
+				FB20E0EC1AE9529400CEBE7B /* BTreeNodeReserve.c */,
+				FB20E0ED1AE9529400CEBE7B /* BTreeScanner.c */,
+				FB20E0EE1AE9529400CEBE7B /* BTreeScanner.h */,
+				FB20E0EF1AE9529400CEBE7B /* BTreesInternal.h */,
+				FB20E0F01AE9529400CEBE7B /* BTreesPrivate.h */,
+				FB20E0F11AE9529400CEBE7B /* BTreeTreeOps.c */,
+				FB20E0F21AE9529400CEBE7B /* BTreeWrapper.c */,
+				FB20E0F31AE9529400CEBE7B /* CatalogPrivate.h */,
+				FB20E0F41AE9529400CEBE7B /* CatalogUtilities.c */,
+				FB20E0F51AE9529400CEBE7B /* FileExtentMapping.c */,
+				FB20E0F61AE9529400CEBE7B /* FileIDsServices.c */,
+				FB20E0F71AE9529400CEBE7B /* FileMgrInternal.h */,
+				FBCC53051B853728008B752C /* hfs_alloc_trace.h */,
+				FB20E0F81AE9529400CEBE7B /* hfs_attrlist.c */,
+				FB20E0F91AE9529400CEBE7B /* hfs_attrlist.h */,
+				FB20E0FA1AE9529400CEBE7B /* hfs_btreeio.c */,
+				FB20E0FB1AE9529400CEBE7B /* hfs_btreeio.h */,
+				FB20E0FC1AE9529400CEBE7B /* hfs_catalog.c */,
+				FB20E0FD1AE9529400CEBE7B /* hfs_catalog.h */,
+				FB20E0FE1AE9529400CEBE7B /* hfs_chash.c */,
+				FB20E0FF1AE9529400CEBE7B /* hfs_cnode.c */,
+				FB20E1001AE9529400CEBE7B /* hfs_cnode.h */,
+				FB20E1011AE9529400CEBE7B /* hfs_cprotect.c */,
+				FB20E1021AE9529400CEBE7B /* hfs_cprotect.h */,
+				FB20E1031AE9529400CEBE7B /* hfs_dbg.h */,
+				FB20E1071AE9529400CEBE7B /* hfs_endian.c */,
+				FB20E1081AE9529400CEBE7B /* hfs_endian.h */,
+				FB20E1091AE9529400CEBE7B /* hfs_extents.c */,
+				FB20E10A1AE9529400CEBE7B /* hfs_extents.h */,
+				FB20E10B1AE9529400CEBE7B /* hfs_format.h */,
+				FB20E10C1AE9529400CEBE7B /* hfs_fsctl.h */,
+				FB20E10D1AE9529400CEBE7B /* hfs_fsinfo.c */,
+				FB20E10E1AE9529400CEBE7B /* hfs_hotfiles.c */,
+				FB20E10F1AE9529400CEBE7B /* hfs_hotfiles.h */,
+				FB20E0E41AE950C200CEBE7B /* hfs_iokit.cpp */,
+				FB7CCFCF1B4657C60078E79D /* hfs_iokit.h */,
+				FB20E12A1AE9529400CEBE7B /* hfs_journal.c */,
+				FB20E12B1AE9529400CEBE7B /* hfs_journal.h */,
+				FB20E1101AE9529400CEBE7B /* hfs_kdebug.h */,
+				FB20E1111AE9529400CEBE7B /* hfs_key_roll.c */,
+				FB20E1121AE9529400CEBE7B /* hfs_key_roll.h */,
+				FB20E1131AE9529400CEBE7B /* hfs_link.c */,
+				FB20E1141AE9529400CEBE7B /* hfs_lookup.c */,
+				FB20E1151AE9529400CEBE7B /* hfs_macos_defs.h */,
+				FB20E1161AE9529400CEBE7B /* hfs_mount.h */,
+				FB20E1171AE9529400CEBE7B /* hfs_notification.c */,
+				FB20E1181AE9529400CEBE7B /* hfs_quota.c */,
+				FB20E1191AE9529400CEBE7B /* hfs_quota.h */,
+				FB20E11A1AE9529400CEBE7B /* hfs_readwrite.c */,
+				FB20E11B1AE9529400CEBE7B /* hfs_resize.c */,
+				FB20E11C1AE9529400CEBE7B /* hfs_search.c */,
+				FB20E11D1AE9529400CEBE7B /* hfs_unistr.h */,
+				FB20E11E1AE9529400CEBE7B /* hfs_vfsops.c */,
+				FB20E11F1AE9529400CEBE7B /* hfs_vfsutils.c */,
+				FB20E1201AE9529400CEBE7B /* hfs_vnops.c */,
+				FB20E1211AE9529400CEBE7B /* hfs_xattr.c */,
+				FB20E1221AE9529400CEBE7B /* hfs.h */,
+				FB20E1231AE9529400CEBE7B /* HFSUnicodeWrappers.h */,
+				FBD0D1CA1AF34C2B00AAAF5E /* install */,
+				FBC234C21B4DA15E0002D849 /* iphoneos-Info.plist */,
+				FB20E17A1AE968D300CEBE7B /* kext-config.h */,
+				FB20E1781AE968BD00CEBE7B /* kext.xcconfig */,
+				FB20E1241AE9529400CEBE7B /* MacOSStubs.c */,
+				FB20E0E31AE950C200CEBE7B /* macosx-Info.plist */,
+				FBE3F7851AF6776B005BB768 /* mk-root.sh */,
+				FB20E1261AE9529400CEBE7B /* rangelist.c */,
+				FB20E1271AE9529400CEBE7B /* rangelist.h */,
+				FB20E1281AE9529400CEBE7B /* UCStringCompareData.h */,
+				FB20E1291AE9529400CEBE7B /* UnicodeWrappers.c */,
+				FB20E12C1AE9529400CEBE7B /* VolumeAllocation.c */,
+			);
+			path = core;
+			sourceTree = "<group>";
+			usesTabs = 1;
+		};
+		FB55AE551B7CD89600701D03 /* cases */ = {
+			isa = PBXGroup;
+			children = (
+				2A84DBD31D9E1179007964B8 /* test-raw-dev-unaligned.c */,
+				07C2BF881CB43F5E00D8327D /* test-renamex.c */,
+				2A386A3A1C221E67007FEDAC /* test-list-ids.c */,
+				2A9399D41BE2C14800FB075B /* test-unicode-file-names.c */,
+				0703A0531CD826160035BCFD /* test-defrag.c */,
+				2A9399D21BE2C06000FB075B /* test-uncached-io.c */,
+				2A9399D01BE2BFF400FB075B /* test-throttled-io.c */,
+				2A9399CE1BE2BCE200FB075B /* test-mod-time.c */,
+				2A9399CC1BE2BC5800FB075B /* test-mmap-mod-time.c */,
+				2A9399CB1BE2BB1600FB075B /* test-journal-toggle.c */,
+				2A9399C81BE1747200FB075B /* test-map-private.m */,
+				2A9399C51BE1729200FB075B /* test-log2phys.m */,
+				2A9399B91BE15F5F00FB075B /* test-fsinfo-sig.c */,
+				2A9399BA1BE15F5F00FB075B /* test-key-roll.c */,
+				2A9399BB1BE15F5F00FB075B /* test-msync-16k.c */,
+				2A9399BC1BE15F5F00FB075B /* test-readdir.c */,
+				2A9399BD1BE15F5F00FB075B /* test-set-create-time.c */,
+				2A9399BE1BE15F5F00FB075B /* test-set-protection-class.c */,
+				2A9399B71BE14AA800FB075B /* test-scan-range-size.c */,
+				2A9399B51BE131A000FB075B /* test-resize.m */,
+				2A9399B31BE12DE400FB075B /* test-fsinfo.c */,
+				2A9399B11BE12A6300FB075B /* test-fsinfo-cprotect.c */,
+				2A9399AB1BE128B700FB075B /* test-invalid-ranges.m */,
+				2A9399A91BE0401D00FB075B /* test-hard-links.m */,
+				2A9399A71BE03A6200FB075B /* test-getattrlist-dprotect.m */,
+				2A9399A51BE0365F00FB075B /* test-fsync.c */,
+				2A9399A31BE02C1F00FB075B /* test-file-too-big.m */,
+				2A9399A11BE02A0E00FB075B /* test-dprotect.c */,
+				2A93999F1BE0220B00FB075B /* test-dir-link.c */,
+				2A93999B1BE0146000FB075B /* test-class-roll.c */,
+				2A93999C1BE0146000FB075B /* test-deep-rm.c */,
+				2A9399961BDFEF3900FB075B /* test-chflags.c */,
+				2A9399941BDFEA6E00FB075B /* test-access.c */,
+				FB55AE521B7C271000701D03 /* test-doc-tombstone.c */,
+				FB76B3DA1B7A52BE00FA9F2B /* test-external-jnl.c */,
+				FB2B5C721B87A0BF00ACEDD9 /* test-getattrlist.c */,
+				FBE1B1D31BD6E3D700CEB443 /* test-move-data-extents.c */,
+				FB55AE581B7CEB0600701D03 /* test-quotas.c */,
+				FB3BB2091BE2862E0094F00E /* test-secluded-rename.c */,
+				FB285C281B7E81180099B2ED /* test-sparse-dev.c */,
+				FB2B5C551B87656900ACEDD9 /* test-transcode.m */,
+				FBD69AF81B91309C0022ECAD /* test-dateadded.c */,
+			);
+			path = cases;
+			sourceTree = "<group>";
+		};
+		FB5E57081B8BE9F400C34A07 /* hfs_encodings */ = {
+			isa = PBXGroup;
+			children = (
+				FB75A4031B4AE765004B5A74 /* HFSEncodings-Info.plist */,
+				FB20E1041AE9529400CEBE7B /* hfs_encodinghint.c */,
+				FB75A40F1B4AF8A3004B5A74 /* hfs_encodings_internal.h */,
+				FB75A40C1B4AF0BA004B5A74 /* hfs_encodings_kext.cpp */,
+				FB20E1051AE9529400CEBE7B /* hfs_encodings.c */,
+				FB20E1061AE9529400CEBE7B /* hfs_encodings.h */,
+			);
+			path = hfs_encodings;
+			sourceTree = "<group>";
+		};
+		FBBBE2811B55F354009F534D /* tests */ = {
+			isa = PBXGroup;
+			children = (
+				FB55AE551B7CD89600701D03 /* cases */,
+				FB76B3EC1B7BDFDB00FA9F2B /* disk-image.h */,
+				FB76B3EB1B7BDFDB00FA9F2B /* disk-image.m */,
+				FB55AE5D1B7D219700701D03 /* gen-test-plist.sh */,
+				7204A9811BE94BC9007A9898 /* gen-dmg.sh */,
+				7204A9401BE94359007A9898 /* img-to-c.c */,
+				FBAA823D1B56F22400EE6863 /* hfs_alloc_test.c */,
+				FBAA823E1B56F22400EE6863 /* hfs_extents_test.c */,
+				FBAA823F1B56F22400EE6863 /* hfs_extents_test.h */,
+				FB2B5C691B877DEC00ACEDD9 /* hfs-tests.entitlements */,
+				FB76B3CC1B7A48DE00FA9F2B /* hfs-tests.h */,
+				FB76B3CB1B7A48DE00FA9F2B /* hfs-tests.mm */,
+				FB2B5C671B877A4D00ACEDD9 /* hfs-tests.xcconfig */,
+				FBAA82401B56F22400EE6863 /* rangelist_test.c */,
+				FB76B3EF1B7BE67400FA9F2B /* systemx.c */,
+				FB76B3F01B7BE67400FA9F2B /* systemx.h */,
+				FBAA826F1B56F32900EE6863 /* test-utils.h */,
+			);
+			path = tests;
+			sourceTree = "<group>";
+			usesTabs = 1;
+		};
+		FBCC52FF1B852759008B752C /* hfs-alloc-trace */ = {
+			isa = PBXGroup;
+			children = (
+				FBCC53001B852759008B752C /* hfs-alloc-trace.c */,
+			);
+			path = "hfs-alloc-trace";
+			sourceTree = "<group>";
+		};
 		FDD9FA3F14A1335D0043D4A9 /* hfs_util */ = {
 			isa = PBXGroup;
 			children = (
 				C1B6FA2F10CC0B8A00778D48 /* hfs.util.8 */,
 				C1B6FA0610CC0A0A00778D48 /* hfsutil_jnl.c */,
 				C1B6FA0710CC0A0A00778D48 /* hfsutil_main.c */,
+				4D7C8964192141CA002013C9 /* hfs_util.ios.entitlements */,
+				9D7AAC871B44880B0001F573 /* hfs_util.osx.entitlements */,
 			);
 			path = hfs_util;
 			sourceTree = "<group>";
@@ -635,6 +1503,7 @@
 		FDD9FA4614A1343D0043D4A9 /* CopyHFSMeta */ = {
 			isa = PBXGroup;
 			children = (
+				863D03961820761900A4F0C4 /* util.c */,
 				FDD9FA4714A1343D0043D4A9 /* Data.h */,
 				FDD9FA4814A1343D0043D4A9 /* DeviceWrapper.c */,
 				FDD9FA4914A1343D0043D4A9 /* dump.c */,
@@ -645,14 +1514,101 @@
 				FDD9FA4F14A1343D0043D4A9 /* ScanExtents.c */,
 				FDD9FA5014A1343D0043D4A9 /* Sparse.h */,
 				FDD9FA5114A1343D0043D4A9 /* SparseBundle.c */,
+				4D7C8965192141DB002013C9 /* CopyHFSMeta.entitlements */,
 			);
 			path = CopyHFSMeta;
 			sourceTree = "<group>";
+			usesTabs = 1;
 		};
 /* End PBXGroup section */
 
-/* Begin PBXNativeTarget section */
-		4D07DCB71538EF3A002B57CB /* fstyp_hfs */ = {
+/* Begin PBXHeadersBuildPhase section */
+		86CBF37D183186C300A64A93 /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				862C904C1834311200BAD882 /* iterate_hfs_metadata.h in Headers */,
+				86CBF3871831884600A64A93 /* Data.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB20E0DD1AE950C200CEBE7B /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FB20E1381AE9529400CEBE7B /* CatalogPrivate.h in Headers */,
+				FB20E17B1AE968D300CEBE7B /* kext-config.h in Headers */,
+				FB20E1541AE9529400CEBE7B /* hfs_hotfiles.h in Headers */,
+				FB20E15A1AE9529400CEBE7B /* hfs_macos_defs.h in Headers */,
+				FB20E1401AE9529400CEBE7B /* hfs_btreeio.h in Headers */,
+				FB20E1701AE9529400CEBE7B /* hfs_journal.h in Headers */,
+				FB20E1471AE9529400CEBE7B /* hfs_cprotect.h in Headers */,
+				FB20E13C1AE9529400CEBE7B /* FileMgrInternal.h in Headers */,
+				FB20E1571AE9529400CEBE7B /* hfs_key_roll.h in Headers */,
+				FB20E14F1AE9529400CEBE7B /* hfs_extents.h in Headers */,
+				FB20E1341AE9529400CEBE7B /* BTreesInternal.h in Headers */,
+				FB20E15E1AE9529400CEBE7B /* hfs_quota.h in Headers */,
+				FB20E13E1AE9529400CEBE7B /* hfs_attrlist.h in Headers */,
+				FB20E1331AE9529400CEBE7B /* BTreeScanner.h in Headers */,
+				FB20E1671AE9529400CEBE7B /* hfs.h in Headers */,
+				FB20E1421AE9529400CEBE7B /* hfs_catalog.h in Headers */,
+				FB20E1501AE9529400CEBE7B /* hfs_format.h in Headers */,
+				FB20E1351AE9529400CEBE7B /* BTreesPrivate.h in Headers */,
+				FB20E1481AE9529400CEBE7B /* hfs_dbg.h in Headers */,
+				FB20E16D1AE9529400CEBE7B /* UCStringCompareData.h in Headers */,
+				FB20E1681AE9529400CEBE7B /* HFSUnicodeWrappers.h in Headers */,
+				FB20E1451AE9529400CEBE7B /* hfs_cnode.h in Headers */,
+				FB20E15B1AE9529400CEBE7B /* hfs_mount.h in Headers */,
+				FB20E16C1AE9529400CEBE7B /* rangelist.h in Headers */,
+				FB20E1511AE9529400CEBE7B /* hfs_fsctl.h in Headers */,
+				FB20E14D1AE9529400CEBE7B /* hfs_endian.h in Headers */,
+				FB20E1551AE9529400CEBE7B /* hfs_kdebug.h in Headers */,
+				FB20E1621AE9529400CEBE7B /* hfs_unistr.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB48E4A01BB3070500523121 /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FB48E4A81BB307C300523121 /* hfs_encodings.h in Headers */,
+				FB48E4A91BB307CB00523121 /* hfs_format.h in Headers */,
+				FB48E4AA1BB307D900523121 /* hfs_unistr.h in Headers */,
+				FB48E4AB1BB307F500523121 /* hfs_mount.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB48E50C1BB3798B00523121 /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FB48E50F1BB379C000523121 /* hfs_mount.h in Headers */,
+				FB48E50E1BB379BB00523121 /* hfs_unistr.h in Headers */,
+				FB48E50D1BB379B400523121 /* hfs_format.h in Headers */,
+				FB48E5121BB3853500523121 /* hfs_fsctl.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB6A57E41B5554D5008AB046 /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FB6A57E51B5554DE008AB046 /* hfs_fsctl.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB75A3DF1B4AE765004B5A74 /* Headers */ = {
+			isa = PBXHeadersBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FB75A40B1B4AF025004B5A74 /* hfs_encodings.h in Headers */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+		4D07DCB71538EF3A002B57CB /* fstyp_hfs */ = {
 			isa = PBXNativeTarget;
 			buildConfigurationList = 4D07DCC01538EF3A002B57CB /* Build configuration list for PBXNativeTarget "fstyp_hfs" */;
 			buildPhases = (
@@ -762,16 +1718,39 @@
 			buildConfigurationList = 4DFD951B1537402A0039B6BA /* Build configuration list for PBXNativeTarget "hfs.fs" */;
 			buildPhases = (
 				4DFD95101537402A0039B6BA /* Resources */,
+				FB7B02E71B55634200BEE4BE /* CopyFiles */,
 			);
 			buildRules = (
 			);
 			dependencies = (
+				FB81AFBA1B83E2B8004E8F76 /* PBXTargetDependency */,
+				FB81AFB81B83E2AE004E8F76 /* PBXTargetDependency */,
+				FB7B02F01B5568AD00BEE4BE /* PBXTargetDependency */,
+				FB7B02EE1B5568A700BEE4BE /* PBXTargetDependency */,
+				FB7B02EC1B5568A100BEE4BE /* PBXTargetDependency */,
 			);
 			name = hfs.fs;
 			productName = hfs.fs;
 			productReference = 4DFD95121537402A0039B6BA /* hfs.fs */;
 			productType = "com.apple.product-type.bundle";
 		};
+		86CBF37E183186C300A64A93 /* hfs_metadata */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 86CBF381183186C300A64A93 /* Build configuration list for PBXNativeTarget "hfs_metadata" */;
+			buildPhases = (
+				86CBF37B183186C300A64A93 /* Sources */,
+				86CBF37C183186C300A64A93 /* Frameworks */,
+				86CBF37D183186C300A64A93 /* Headers */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = hfs_metadata;
+			productName = hfs_metadata;
+			productReference = 86CBF37F183186C300A64A93 /* libhfs_metadata.a */;
+			productType = "com.apple.product-type.library.static";
+		};
 		8DD76FA90486AB0100D96B5E /* hfs.util */ = {
 			isa = PBXNativeTarget;
 			buildConfigurationList = 1DEB928508733DD80010E9CD /* Build configuration list for PBXNativeTarget "hfs.util" */;
@@ -779,7 +1758,6 @@
 				8DD76FAB0486AB0100D96B5E /* Sources */,
 				8DD76FAD0486AB0100D96B5E /* Frameworks */,
 				8DD76FAF0486AB0100D96B5E /* Copy man8 */,
-				4DFD9541153785060039B6BA /* Create symlink */,
 			);
 			buildRules = (
 			);
@@ -791,6 +1769,176 @@
 			productReference = C1B6FD2B10CC0DB200778D48 /* hfs.util */;
 			productType = "com.apple.product-type.tool";
 		};
+		FB20E0DF1AE950C200CEBE7B /* kext */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FB20E0E61AE950C200CEBE7B /* Build configuration list for PBXNativeTarget "kext" */;
+			buildPhases = (
+				FB20E0DB1AE950C200CEBE7B /* Sources */,
+				FB20E0DC1AE950C200CEBE7B /* Frameworks */,
+				FB20E0DD1AE950C200CEBE7B /* Headers */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+				FB7C14131C23695E004F8B2C /* PBXTargetDependency */,
+				FBA95AAF1B5045D400887E82 /* PBXTargetDependency */,
+			);
+			name = kext;
+			productName = kext;
+			productReference = FB20E0E01AE950C200CEBE7B /* HFS.kext */;
+			productType = "com.apple.product-type.kernel-extension";
+		};
+		FB48E49B1BB3070400523121 /* OSX Kernel Framework Headers */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FB48E4A21BB3070500523121 /* Build configuration list for PBXNativeTarget "OSX Kernel Framework Headers" */;
+			buildPhases = (
+				FB48E4A01BB3070500523121 /* Headers */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = "OSX Kernel Framework Headers";
+			productName = test;
+			productReference = FB48E4A61BB3070500523121 /* Kernel.framework */;
+			productType = "com.apple.product-type.bundle";
+		};
+		FB48E5031BB3798500523121 /* Sim_Headers */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FB48E5081BB3798500523121 /* Build configuration list for PBXNativeTarget "Sim_Headers" */;
+			buildPhases = (
+				FB48E50C1BB3798B00523121 /* Headers */,
+				FB48E5131BB385FF00523121 /* System.framework */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = Sim_Headers;
+			productName = Sim_Headers;
+			productReference = FB48E5041BB3798500523121 /* Sim_Headers */;
+			productType = "com.apple.product-type.tool";
+		};
+		FB6A57DD1B55544D008AB046 /* System Framework Headers */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FB6A57E11B55544D008AB046 /* Build configuration list for PBXNativeTarget "System Framework Headers" */;
+			buildPhases = (
+				FB6A57E41B5554D5008AB046 /* Headers */,
+				FB5695F81C0F5ED0004C52F2 /* ShellScript */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = "System Framework Headers";
+			productName = test;
+			productReference = FB6A57DE1B55544D008AB046 /* hfs-System.framework */;
+			productType = "com.apple.product-type.bundle";
+		};
+		FB75A3B11B4AE765004B5A74 /* encodings-kext */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FB75A3FF1B4AE765004B5A74 /* Build configuration list for PBXNativeTarget "encodings-kext" */;
+			buildPhases = (
+				FB75A3B41B4AE765004B5A74 /* Sources */,
+				FB75A3DE1B4AE765004B5A74 /* Frameworks */,
+				FB75A3DF1B4AE765004B5A74 /* Headers */,
+				FB75A3FD1B4AE765004B5A74 /* Resources */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = "encodings-kext";
+			productName = kext;
+			productReference = FB75A4021B4AE765004B5A74 /* HFSEncodings.kext */;
+			productType = "com.apple.product-type.kernel-extension";
+		};
+		FB76B3D11B7A4BE600FA9F2B /* hfs-tests */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FB76B3D61B7A4BE600FA9F2B /* Build configuration list for PBXNativeTarget "hfs-tests" */;
+			buildPhases = (
+				FB5695FC1C0F98F2004C52F2 /* Create DMG */,
+				FB76B3CE1B7A4BE600FA9F2B /* Sources */,
+				FB76B3CF1B7A4BE600FA9F2B /* Frameworks */,
+				FB76B3D01B7A4BE600FA9F2B /* CopyFiles */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = "hfs-tests";
+			productName = "hfs-tests";
+			productReference = FB76B3D21B7A4BE600FA9F2B /* hfs-tests */;
+			productType = "com.apple.product-type.tool";
+		};
+		FBAA82441B56F24100EE6863 /* hfs_alloc_test */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FBAA82491B56F24100EE6863 /* Build configuration list for PBXNativeTarget "hfs_alloc_test" */;
+			buildPhases = (
+				FBAA82411B56F24100EE6863 /* Sources */,
+				FBAA82421B56F24100EE6863 /* Frameworks */,
+				FBAA82431B56F24100EE6863 /* CopyFiles */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = hfs_alloc_test;
+			productName = hfs_alloc_test;
+			productReference = FBAA82451B56F24100EE6863 /* hfs_alloc_test */;
+			productType = "com.apple.product-type.tool";
+		};
+		FBAA82501B56F26A00EE6863 /* hfs_extents_test */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FBAA82551B56F26A00EE6863 /* Build configuration list for PBXNativeTarget "hfs_extents_test" */;
+			buildPhases = (
+				FBAA824D1B56F26A00EE6863 /* Sources */,
+				FBAA824E1B56F26A00EE6863 /* Frameworks */,
+				FBAA824F1B56F26A00EE6863 /* CopyFiles */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = hfs_extents_test;
+			productName = hfs_extents_test;
+			productReference = FBAA82511B56F26A00EE6863 /* hfs_extents_test */;
+			productType = "com.apple.product-type.tool";
+		};
+		FBAA825C1B56F28C00EE6863 /* rangelist_test */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FBAA82611B56F28C00EE6863 /* Build configuration list for PBXNativeTarget "rangelist_test" */;
+			buildPhases = (
+				FBAA82591B56F28C00EE6863 /* Sources */,
+				FBAA825A1B56F28C00EE6863 /* Frameworks */,
+				FBAA825B1B56F28C00EE6863 /* CopyFiles */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = rangelist_test;
+			productName = rangelist_test;
+			productReference = FBAA825D1B56F28C00EE6863 /* rangelist_test */;
+			productType = "com.apple.product-type.tool";
+		};
+		FBCC52FD1B852758008B752C /* hfs-alloc-trace */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = FBCC53041B852759008B752C /* Build configuration list for PBXNativeTarget "hfs-alloc-trace" */;
+			buildPhases = (
+				FBCC52FA1B852758008B752C /* Sources */,
+				FBCC52FB1B852758008B752C /* Frameworks */,
+				FBCC52FC1B852758008B752C /* CopyFiles */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = "hfs-alloc-trace";
+			productName = "hfs-alloc-trace";
+			productReference = FBCC52FE1B852758008B752C /* hfs-alloc-trace */;
+			productType = "com.apple.product-type.tool";
+		};
 		FDD9FA2B14A132BF0043D4A9 /* CopyHFSMeta */ = {
 			isa = PBXNativeTarget;
 			buildConfigurationList = FDD9FA3514A132BF0043D4A9 /* Build configuration list for PBXNativeTarget "CopyHFSMeta" */;
@@ -813,7 +1961,45 @@
 		08FB7793FE84155DC02AAC07 /* Project object */ = {
 			isa = PBXProject;
 			attributes = {
-				LastUpgradeCheck = 0450;
+				LastUpgradeCheck = 0710;
+				TargetAttributes = {
+					FB20E0DF1AE950C200CEBE7B = {
+						CreatedOnToolsVersion = 6.3;
+					};
+					FB48E5031BB3798500523121 = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FB6A57DD1B55544D008AB046 = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FB76B3D11B7A4BE600FA9F2B = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FB7C140C1C2368E6004F8B2C = {
+						CreatedOnToolsVersion = 7.2;
+					};
+					FBA95AA91B5025E700887E82 = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FBAA82441B56F24100EE6863 = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FBAA82501B56F26A00EE6863 = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FBAA825C1B56F28C00EE6863 = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FBAA82651B56F2AB00EE6863 = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FBCC52FD1B852758008B752C = {
+						CreatedOnToolsVersion = 7.0;
+					};
+					FBE3F7821AF67748005BB768 = {
+						CreatedOnToolsVersion = 6.3;
+					};
+				};
 			};
 			buildConfigurationList = 1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "hfs" */;
 			compatibilityVersion = "Xcode 3.2";
@@ -840,6 +2026,23 @@
 				4DFD93F31535FF510039B6BA /* fsck_hfs */,
 				4D07DCB71538EF3A002B57CB /* fstyp_hfs */,
 				4DFD94BC15373C2C0039B6BA /* fsck_makestrings */,
+				86CBF37E183186C300A64A93 /* hfs_metadata */,
+				FB20E0DF1AE950C200CEBE7B /* kext */,
+				FB75A3B11B4AE765004B5A74 /* encodings-kext */,
+				FBE3F7821AF67748005BB768 /* osx-root */,
+				FBC234B91B4D87A20002D849 /* ios-root */,
+				FBA95AA91B5025E700887E82 /* mk-xnu */,
+				FB6A57DD1B55544D008AB046 /* System Framework Headers */,
+				FB48E49B1BB3070400523121 /* OSX Kernel Framework Headers */,
+				FBAA82441B56F24100EE6863 /* hfs_alloc_test */,
+				FBAA82501B56F26A00EE6863 /* hfs_extents_test */,
+				FBAA825C1B56F28C00EE6863 /* rangelist_test */,
+				FB76B3D11B7A4BE600FA9F2B /* hfs-tests */,
+				FBAA82651B56F2AB00EE6863 /* osx-tests */,
+				FB55AE651B7D47B300701D03 /* ios-tests */,
+				FBCC52FD1B852758008B752C /* hfs-alloc-trace */,
+				FB48E5031BB3798500523121 /* Sim_Headers */,
+				FB7C140C1C2368E6004F8B2C /* kext-version */,
 			);
 		};
 /* End PBXProject section */
@@ -853,6 +2056,13 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
+		FB75A3FD1B4AE765004B5A74 /* Resources */ = {
+			isa = PBXResourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 /* End PBXResourcesBuildPhase section */
 
 /* Begin PBXShellScriptBuildPhase section */
@@ -887,7 +2097,7 @@
 			);
 			runOnlyForDeploymentPostprocessing = 1;
 			shellPath = /bin/sh;
-			shellScript = "ln -sfhv ${FS_BUNDLE_BIN_PATH}/mount_hfs ${DSTROOT}/sbin/mount_hfs\nchgrp -h wheel ${DSTROOT}/sbin/mount_hfs\n";
+			shellScript = "ln -sfhv ${FS_BUNDLE_BIN_PATH}/mount_hfs ${DSTROOT}/sbin/mount_hfs\nif [[ $UID == 0 ]] ; then\n  chgrp -h wheel ${DSTROOT}/sbin/mount_hfs\nfi\n";
 			showEnvVarsInLog = 0;
 		};
 		4DFD953F1537841C0039B6BA /* Create symlink */ = {
@@ -904,7 +2114,7 @@
 			);
 			runOnlyForDeploymentPostprocessing = 1;
 			shellPath = /bin/sh;
-			shellScript = "ln -sfhv ${FS_BUNDLE_BIN_PATH}/newfs_hfs ${DSTROOT}/sbin/newfs_hfs\nchgrp -h wheel ${DSTROOT}/sbin/newfs_hfs\n";
+			shellScript = "ln -sfhv ${FS_BUNDLE_BIN_PATH}/newfs_hfs ${DSTROOT}/sbin/newfs_hfs\nif [[ $UID == 0 ]] ; then\n  chgrp -h wheel ${DSTROOT}/sbin/newfs_hfs\nfi\n";
 			showEnvVarsInLog = 0;
 		};
 		4DFD95401537844E0039B6BA /* Create symlink */ = {
@@ -921,26 +2131,162 @@
 			);
 			runOnlyForDeploymentPostprocessing = 1;
 			shellPath = /bin/sh;
-			shellScript = "ln -sfhv ${FS_BUNDLE_BIN_PATH}/fsck_hfs ${DSTROOT}/sbin/fsck_hfs\nchgrp -h wheel ${DSTROOT}/sbin/fsck_hfs\n";
+			shellScript = "ln -sfhv ${FS_BUNDLE_BIN_PATH}/fsck_hfs ${DSTROOT}/sbin/fsck_hfs\nif [[ $UID == 0 ]] ; then\n  chgrp -h wheel ${DSTROOT}/sbin/fsck_hfs\nfi\n";
+			showEnvVarsInLog = 0;
+		};
+		FB48E5131BB385FF00523121 /* System.framework */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = System.framework;
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "DIR=\"$DSTROOT/System/Library/Frameworks/System.framework/Versions/B/PrivateHeaders/hfs\"\nmkdir -p \"$DIR\"\ncp \"$DSTROOT/usr/local/include/hfs/hfs_fsctl.h\" \"$DIR\"\n";
+			showEnvVarsInLog = 0;
+		};
+		FB55AE5C1B7D193B00701D03 /* Create BATS plist */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 12;
+			files = (
+			);
+			inputPaths = (
+				"$(SRCROOT)/tests/gen-test-plist.sh",
+				"$(BUILT_PRODUCTS_DIR)/hfs-tests",
+			);
+			name = "Create BATS plist";
+			outputPaths = (
+				"$(INSTALL_ROOT)/AppleInternal/CoreOS/BATS/unit_tests/hfs.plist",
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "\"$SCRIPT_INPUT_FILE_0\" \"$SCRIPT_OUTPUT_FILE_0\"";
+			showEnvVarsInLog = 0;
+		};
+		FB55AE6F1B7D47B300701D03 /* Create BATS plist */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 12;
+			files = (
+			);
+			inputPaths = (
+				"$(SRCROOT)/tests/gen-test-plist.sh",
+				"$(BUILT_PRODUCTS_DIR)/hfs-tests",
+			);
+			name = "Create BATS plist";
+			outputPaths = (
+				"$(INSTALL_ROOT)/AppleInternal/CoreOS/BATS/unit_tests/hfs.plist",
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "\"$SCRIPT_INPUT_FILE_0\" \"$SCRIPT_OUTPUT_FILE_0\"\n";
 			showEnvVarsInLog = 0;
 		};
-		4DFD9541153785060039B6BA /* Create symlink */ = {
+		FB5695F81C0F5ED0004C52F2 /* ShellScript */ = {
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 8;
 			files = (
 			);
 			inputPaths = (
-				"$(DSTROOT)$(FS_BUNDLE_BIN_PATH)/hfs.util",
 			);
-			name = "Create symlink";
 			outputPaths = (
-				"$(DSTROOT)$(FS_BUNDLE_PATH)/hfs.util",
 			);
 			runOnlyForDeploymentPostprocessing = 1;
 			shellPath = /bin/sh;
-			shellScript = "ln -sfhv ${FS_BUNDLE_BIN_DIR}/hfs.util ${DSTROOT}${FS_BUNDLE_PATH}/hfs.util";
+			shellScript = "ditto \"$BUILT_PRODUCTS_DIR/$FULL_PRODUCT_NAME\" \"$DSTROOT\"/System/Library/Frameworks/System.framework\n";
+		};
+		FB5695FC1C0F98F2004C52F2 /* Create DMG */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+				"$(SRCROOT)/tests/gen-dmg.sh",
+			);
+			name = "Create DMG";
+			outputPaths = (
+				"$(DERIVED_SOURCES_DIR)/dmg-made-for-$(PLATFORM_NAME)",
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "set -e\n\nif [ $PLATFORM_NAME != macosx ] ; then\n  \"$SCRIPT_INPUT_FILE_0\" \"$DERIVED_SOURCES_DIR/dmg.dat\"\nfi\ntouch \"$SCRIPT_OUTPUT_FILE_0\"\n";
+			showEnvVarsInLog = 0;
+		};
+		FB7C14111C2368F4004F8B2C /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			outputPaths = (
+				"$(PROJECT_DERIVED_FILE_DIR)/kext-Info.plist",
+				.FORCE,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/bash;
+			shellScript = "# Make sure version is the form 1.2.3\nif [[ \"$RC_ProjectSourceVersion\" =~ (^[1-9][0-9]*(\\.[0-9]+){0,2}) ]] ; then\n    VERSION=${BASH_REMATCH[0]}\nelse\n    if [ -f \"$PROJECT_DERIVED_FILE_DIR\"/last-build ] ; then\n        BUILD_NUM=$((`cat \"$PROJECT_DERIVED_FILE_DIR\"/last-build` + 1))\n    else\n        BUILD_NUM=1\n    fi\n    MINUTE=`date '+%M' | sed 's/^0//'`\n    VERSION=\"999.$BUILD_NUM.$MINUTE\"\n    echo $BUILD_NUM >\"$PROJECT_DERIVED_FILE_DIR\"/last-build\nfi\n\nif [ $PLATFORM_NAME == macosx ] ; then\n    PLIST=\"$SRCROOT/core/macosx-Info.plist\"\nelse\n    PLIST=\"$SRCROOT/core/iphoneos-Info.plist\"\nfi\n\nxcrun cc -E -P -x c -Wno-trigraphs \"$PLIST\" -o \"$PROJECT_DERIVED_FILE_DIR\"/kext-Info.plist -D HFS_KEXT_VERSION=\"$VERSION\"\n";
+		};
+		FBA95AAD1B5025EC00887E82 /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+				"$(SRCROOT)/core/kext.xcconfig",
+			);
+			outputPaths = (
+				"$(DERIVED_FILE_DIR)/no-xnu-build",
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "if [ ! \"$XNU_PATH\" ] ; then\n  touch \"$DERIVED_FILE_DIR/no-xnu-build\"\n  exit 0\nfi\nrm -f \"$DERIVED_FILE_DIR/no-xnu-build\"\ncd \"$XNU_PATH\"\nshopt -s nocasematch\nextra_args=()\nif [[ \"$SDKROOT\" =~ iphoneos ]] ; then\n  extra_args+=(SDKROOT=iphoneos.internal PRODUCT_CONFIGS=\"$DEVICES\")\nfi\nenv -i make BUILD_LTO=0 KERNEL_CONFIGS=development \"${extra_args[@]}\" install\n";
+			showEnvVarsInLog = 0;
+		};
+		FBAA82711B56F65800EE6863 /* Run local tests */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Run local tests";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "\"$BUILT_PRODUCTS_DIR\"/hfs_alloc_test || err=1\n\"$BUILT_PRODUCTS_DIR\"/hfs_extents_test || err=1\n\"$BUILT_PRODUCTS_DIR\"/rangelist_test || err=1\nexit $err\n";
 			showEnvVarsInLog = 0;
 		};
+		FBC234BE1B4D87A20002D849 /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = "/bin/sh -x";
+			shellScript = "\"$SRCROOT/core/mk-root.sh\"";
+		};
+		FBE3F7961AF67C43005BB768 /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = "/bin/sh -x";
+			shellScript = "\"$SRCROOT/core/mk-root.sh\"";
+		};
 /* End PBXShellScriptBuildPhase section */
 
 /* Begin PBXSourcesBuildPhase section */
@@ -1032,6 +2378,17 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
+		86CBF37B183186C300A64A93 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				86CBF382183186FB00A64A93 /* util.c in Sources */,
+				86CBF3831831876200A64A93 /* misc.c in Sources */,
+				8654E4C01832A68400808937 /* ScanExtents.c in Sources */,
+				86CBF3861831880F00A64A93 /* iterate_hfs_metadata.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 		8DD76FAB0486AB0100D96B5E /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
@@ -1041,27 +2398,169 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		FDD9FA2814A132BF0043D4A9 /* Sources */ = {
+		FB20E0DB1AE950C200CEBE7B /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				FDD9FA5514A1343D0043D4A9 /* main.c in Sources */,
-				FDD9FA5714A1343D0043D4A9 /* misc.c in Sources */,
-				FDD9FA5814A1343D0043D4A9 /* ScanExtents.c in Sources */,
-				FDD9FA5314A1343D0043D4A9 /* dump.c in Sources */,
-				FDD9FA5914A1343D0043D4A9 /* SparseBundle.c in Sources */,
-				FDD9FA5214A1343D0043D4A9 /* DeviceWrapper.c in Sources */,
-				FDD9FA5414A1343D0043D4A9 /* Gather.c in Sources */,
+				FB20E1601AE9529400CEBE7B /* hfs_resize.c in Sources */,
+				FB20E1651AE9529400CEBE7B /* hfs_vnops.c in Sources */,
+				FB20E13F1AE9529400CEBE7B /* hfs_btreeio.c in Sources */,
+				FB20E1301AE9529400CEBE7B /* BTreeNodeOps.c in Sources */,
+				FB20E12D1AE9529400CEBE7B /* BTree.c in Sources */,
+				FB20E16B1AE9529400CEBE7B /* rangelist.c in Sources */,
+				FB20E16F1AE9529400CEBE7B /* hfs_journal.c in Sources */,
+				FB20E1521AE9529400CEBE7B /* hfs_fsinfo.c in Sources */,
+				FB20E1431AE9529400CEBE7B /* hfs_chash.c in Sources */,
+				FB20E1661AE9529400CEBE7B /* hfs_xattr.c in Sources */,
+				FB20E1561AE9529400CEBE7B /* hfs_key_roll.c in Sources */,
+				FB20E13B1AE9529400CEBE7B /* FileIDsServices.c in Sources */,
+				FB20E14E1AE9529400CEBE7B /* hfs_extents.c in Sources */,
+				FB20E14C1AE9529400CEBE7B /* hfs_endian.c in Sources */,
+				FB20E1461AE9529400CEBE7B /* hfs_cprotect.c in Sources */,
+				FB20E15F1AE9529400CEBE7B /* hfs_readwrite.c in Sources */,
+				FB20E1391AE9529400CEBE7B /* CatalogUtilities.c in Sources */,
+				FB20E1371AE9529400CEBE7B /* BTreeWrapper.c in Sources */,
+				FB20E1411AE9529400CEBE7B /* hfs_catalog.c in Sources */,
+				FB20E1531AE9529400CEBE7B /* hfs_hotfiles.c in Sources */,
+				FB20E15D1AE9529400CEBE7B /* hfs_quota.c in Sources */,
+				FB20E1591AE9529400CEBE7B /* hfs_lookup.c in Sources */,
+				FB20E1611AE9529400CEBE7B /* hfs_search.c in Sources */,
+				FB20E1631AE9529400CEBE7B /* hfs_vfsops.c in Sources */,
+				FB20E12E1AE9529400CEBE7B /* BTreeAllocate.c in Sources */,
+				FB20E1711AE9529400CEBE7B /* VolumeAllocation.c in Sources */,
+				FB20E1441AE9529400CEBE7B /* hfs_cnode.c in Sources */,
+				FB20E1361AE9529400CEBE7B /* BTreeTreeOps.c in Sources */,
+				FB20E0E51AE950C200CEBE7B /* hfs_iokit.cpp in Sources */,
+				FB20E12F1AE9529400CEBE7B /* BTreeMiscOps.c in Sources */,
+				FB20E13A1AE9529400CEBE7B /* FileExtentMapping.c in Sources */,
+				FB20E1311AE9529400CEBE7B /* BTreeNodeReserve.c in Sources */,
+				FB20E1641AE9529400CEBE7B /* hfs_vfsutils.c in Sources */,
+				FB20E13D1AE9529400CEBE7B /* hfs_attrlist.c in Sources */,
+				FB20E1691AE9529400CEBE7B /* MacOSStubs.c in Sources */,
+				FB20E1321AE9529400CEBE7B /* BTreeScanner.c in Sources */,
+				FB20E16E1AE9529400CEBE7B /* UnicodeWrappers.c in Sources */,
+				FB20E15C1AE9529400CEBE7B /* hfs_notification.c in Sources */,
+				FB20E1581AE9529400CEBE7B /* hfs_link.c in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-/* End PBXSourcesBuildPhase section */
-
-/* Begin PBXTargetDependency section */
-		4DBD523F1548A499007AA736 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			target = 4DFD95111537402A0039B6BA /* hfs.fs */;
-			targetProxy = 4DBD523E1548A499007AA736 /* PBXContainerItemProxy */;
+		FB75A3B41B4AE765004B5A74 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FBBBE2801B55BB3A009F534D /* hfs_encodinghint.c in Sources */,
+				FB75A40E1B4AF0BE004B5A74 /* hfs_encodings_kext.cpp in Sources */,
+				FB75A4061B4AEA20004B5A74 /* hfs_encodings.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FB76B3CE1B7A4BE600FA9F2B /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				2A84DBD41D9E15F2007964B8 /* test-raw-dev-unaligned.c in Sources */,
+				2A386A3B1C22209C007FEDAC /* test-list-ids.c in Sources */,
+				2ABDCEA71BF3DAA100CFC70C /* test-journal-toggle.c in Sources */,
+				FBE1B1D41BD6E41D00CEB443 /* test-move-data-extents.c in Sources */,
+				FB3BB20B1BE286CC0094F00E /* test-secluded-rename.c in Sources */,
+				2A9399D51BE2C17800FB075B /* test-unicode-file-names.c in Sources */,
+				2A9399D31BE2C06800FB075B /* test-uncached-io.c in Sources */,
+				2A9399D11BE2BFFD00FB075B /* test-throttled-io.c in Sources */,
+				2A9399CF1BE2BCEA00FB075B /* test-mod-time.c in Sources */,
+				2A9399CD1BE2BC6900FB075B /* test-mmap-mod-time.c in Sources */,
+				2A9399CA1BE18A5000FB075B /* test-invalid-ranges.m in Sources */,
+				2A9399C91BE1747900FB075B /* test-map-private.m in Sources */,
+				2A9399C71BE172A400FB075B /* test-log2phys.m in Sources */,
+				2A9399BF1BE15F6800FB075B /* test-fsinfo-sig.c in Sources */,
+				2A9399C01BE15F6800FB075B /* test-key-roll.c in Sources */,
+				2A9399C11BE15F6800FB075B /* test-msync-16k.c in Sources */,
+				2A9399C21BE15F6800FB075B /* test-readdir.c in Sources */,
+				2A9399C31BE15F6800FB075B /* test-set-create-time.c in Sources */,
+				2A9399C41BE15F6800FB075B /* test-set-protection-class.c in Sources */,
+				2A9399B81BE14AAD00FB075B /* test-scan-range-size.c in Sources */,
+				2A9399B61BE131A400FB075B /* test-resize.m in Sources */,
+				2A9399B41BE12DE900FB075B /* test-fsinfo.c in Sources */,
+				2A9399B21BE12A6E00FB075B /* test-fsinfo-cprotect.c in Sources */,
+				2A9399AA1BE0402600FB075B /* test-hard-links.m in Sources */,
+				2A9399A81BE03A6800FB075B /* test-getattrlist-dprotect.m in Sources */,
+				2A9399A61BE0366E00FB075B /* test-fsync.c in Sources */,
+				2A9399A41BE02C6700FB075B /* test-file-too-big.m in Sources */,
+				07C2BF891CB43F5E00D8327D /* test-renamex.c in Sources */,
+				2A9399A21BE02A1600FB075B /* test-dprotect.c in Sources */,
+				2A9399A01BE0222800FB075B /* test-dir-link.c in Sources */,
+				2A93999D1BE0146E00FB075B /* test-class-roll.c in Sources */,
+				2A93999E1BE0146E00FB075B /* test-deep-rm.c in Sources */,
+				2A9399981BDFF7E500FB075B /* test-chflags.c in Sources */,
+				0703A0541CD826160035BCFD /* test-defrag.c in Sources */,
+				2A9399951BDFEB5200FB075B /* test-access.c in Sources */,
+				FB76B3DC1B7A530500FA9F2B /* test-external-jnl.c in Sources */,
+				FB2B5C561B87656900ACEDD9 /* test-transcode.m in Sources */,
+				FB55AE591B7CEB0600701D03 /* test-quotas.c in Sources */,
+				FB76B3D91B7A4BF000FA9F2B /* hfs-tests.mm in Sources */,
+				FB76B3EE1B7BE24B00FA9F2B /* disk-image.m in Sources */,
+				FB76B3F21B7BE79800FA9F2B /* systemx.c in Sources */,
+				FB285C2A1B7E81180099B2ED /* test-sparse-dev.c in Sources */,
+				FB55AE541B7C271000701D03 /* test-doc-tombstone.c in Sources */,
+				FBD69AFA1B9132E40022ECAD /* test-dateadded.c in Sources */,
+				FB2B5C731B87A0BF00ACEDD9 /* test-getattrlist.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBAA82411B56F24100EE6863 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FBAA824C1B56F24E00EE6863 /* hfs_alloc_test.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBAA824D1B56F26A00EE6863 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FBAA82581B56F27200EE6863 /* hfs_extents_test.c in Sources */,
+				FBAA82701B56F39B00EE6863 /* hfs_extents.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBAA82591B56F28C00EE6863 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FBAA82641B56F28F00EE6863 /* rangelist_test.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FBCC52FA1B852758008B752C /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FBCC53011B852759008B752C /* hfs-alloc-trace.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+		FDD9FA2814A132BF0043D4A9 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				FDD9FA5514A1343D0043D4A9 /* main.c in Sources */,
+				FDD9FA5714A1343D0043D4A9 /* misc.c in Sources */,
+				FDD9FA5814A1343D0043D4A9 /* ScanExtents.c in Sources */,
+				FDD9FA5314A1343D0043D4A9 /* dump.c in Sources */,
+				FDD9FA5914A1343D0043D4A9 /* SparseBundle.c in Sources */,
+				863D03971820761900A4F0C4 /* util.c in Sources */,
+				FDD9FA5214A1343D0043D4A9 /* DeviceWrapper.c in Sources */,
+				FDD9FA5414A1343D0043D4A9 /* Gather.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXTargetDependency section */
+		4DBD523F1548A499007AA736 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 4DFD95111537402A0039B6BA /* hfs.fs */;
+			targetProxy = 4DBD523E1548A499007AA736 /* PBXContainerItemProxy */;
 		};
 		4DBD52411548A49A007AA736 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
@@ -1113,6 +2612,116 @@
 			target = 4DFD94BC15373C2C0039B6BA /* fsck_makestrings */;
 			targetProxy = 4DBD52521548A4D4007AA736 /* PBXContainerItemProxy */;
 		};
+		8657285C18319A93007F580F /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 86CBF37E183186C300A64A93 /* hfs_metadata */;
+			targetProxy = 8657285B18319A93007F580F /* PBXContainerItemProxy */;
+		};
+		FB48E4BC1BB30CC400523121 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB48E49B1BB3070400523121 /* OSX Kernel Framework Headers */;
+			targetProxy = FB48E4BB1BB30CC400523121 /* PBXContainerItemProxy */;
+		};
+		FB55AE5B1B7D190F00701D03 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB76B3D11B7A4BE600FA9F2B /* hfs-tests */;
+			targetProxy = FB55AE5A1B7D190F00701D03 /* PBXContainerItemProxy */;
+		};
+		FB55AE661B7D47B300701D03 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB76B3D11B7A4BE600FA9F2B /* hfs-tests */;
+			targetProxy = FB55AE671B7D47B300701D03 /* PBXContainerItemProxy */;
+		};
+		FB75A4091B4AED92004B5A74 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB75A3B11B4AE765004B5A74 /* encodings-kext */;
+			targetProxy = FB75A4081B4AED92004B5A74 /* PBXContainerItemProxy */;
+		};
+		FB7B02EC1B5568A100BEE4BE /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 4DFD93F31535FF510039B6BA /* fsck_hfs */;
+			targetProxy = FB7B02EB1B5568A100BEE4BE /* PBXContainerItemProxy */;
+		};
+		FB7B02EE1B5568A700BEE4BE /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 4D0E899B1534FE65004CD678 /* mount_hfs */;
+			targetProxy = FB7B02ED1B5568A700BEE4BE /* PBXContainerItemProxy */;
+		};
+		FB7B02F01B5568AD00BEE4BE /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 8DD76FA90486AB0100D96B5E /* hfs.util */;
+			targetProxy = FB7B02EF1B5568AD00BEE4BE /* PBXContainerItemProxy */;
+		};
+		FB7C14131C23695E004F8B2C /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB7C140C1C2368E6004F8B2C /* kext-version */;
+			targetProxy = FB7C14121C23695E004F8B2C /* PBXContainerItemProxy */;
+		};
+		FB81AFB81B83E2AE004E8F76 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FDD9FA2B14A132BF0043D4A9 /* CopyHFSMeta */;
+			targetProxy = FB81AFB71B83E2AE004E8F76 /* PBXContainerItemProxy */;
+		};
+		FB81AFBA1B83E2B8004E8F76 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 4DE6C75A153504C100C11066 /* newfs_hfs */;
+			targetProxy = FB81AFB91B83E2B8004E8F76 /* PBXContainerItemProxy */;
+		};
+		FBA540011B7BF2DF00899E5B /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB6A57DD1B55544D008AB046 /* System Framework Headers */;
+			targetProxy = FBA540001B7BF2DF00899E5B /* PBXContainerItemProxy */;
+		};
+		FBA95AAF1B5045D400887E82 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FBA95AA91B5025E700887E82 /* mk-xnu */;
+			targetProxy = FBA95AAE1B5045D400887E82 /* PBXContainerItemProxy */;
+		};
+		FBAA826A1B56F2B900EE6863 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FBAA82441B56F24100EE6863 /* hfs_alloc_test */;
+			targetProxy = FBAA82691B56F2B900EE6863 /* PBXContainerItemProxy */;
+		};
+		FBAA826C1B56F2B900EE6863 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FBAA82501B56F26A00EE6863 /* hfs_extents_test */;
+			targetProxy = FBAA826B1B56F2B900EE6863 /* PBXContainerItemProxy */;
+		};
+		FBAA826E1B56F2B900EE6863 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FBAA825C1B56F28C00EE6863 /* rangelist_test */;
+			targetProxy = FBAA826D1B56F2B900EE6863 /* PBXContainerItemProxy */;
+		};
+		FBC234BC1B4D87A20002D849 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB20E0DF1AE950C200CEBE7B /* kext */;
+			targetProxy = FBC234BD1B4D87A20002D849 /* PBXContainerItemProxy */;
+		};
+		FBC234C41B4EC6AE0002D849 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB20E0DF1AE950C200CEBE7B /* kext */;
+			targetProxy = FBC234C31B4EC6AE0002D849 /* PBXContainerItemProxy */;
+		};
+		FBC234C61B4EC6B90002D849 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB75A3B11B4AE765004B5A74 /* encodings-kext */;
+			targetProxy = FBC234C51B4EC6B90002D849 /* PBXContainerItemProxy */;
+		};
+		FBE3A5A31BBEE33D00CB9A33 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB55AE651B7D47B300701D03 /* ios-tests */;
+			targetProxy = FBE3A5A21BBEE33D00CB9A33 /* PBXContainerItemProxy */;
+		};
+		FBE3A5A51BBEE34400CB9A33 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FBAA82651B56F2AB00EE6863 /* osx-tests */;
+			targetProxy = FBE3A5A41BBEE34400CB9A33 /* PBXContainerItemProxy */;
+		};
+		FBE3F7871AF6793E005BB768 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = FB20E0DF1AE950C200CEBE7B /* kext */;
+			targetProxy = FBE3F7861AF6793E005BB768 /* PBXContainerItemProxy */;
+		};
 /* End PBXTargetDependency section */
 
 /* Begin PBXVariantGroup section */
@@ -1130,8 +2739,12 @@
 		1DEB928708733DD80010E9CD /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				INSTALL_PATH = $FS_BUNDLE_BIN_PATH;
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = hfs_util/hfs_util.ios.entitlements;
+				"CODE_SIGN_ENTITLEMENTS[sdk=macosx*]" = hfs_util/hfs_util.osx.entitlements;
+				CODE_SIGN_IDENTITY = "-";
 				PRODUCT_NAME = hfs.util;
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
 			};
 			name = Release;
 		};
@@ -1145,19 +2758,26 @@
 		4D07DCBF1538EF3A002B57CB /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = fstyp_hfs/fstyp_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
 				INSTALL_PATH = /sbin;
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
 			};
 			name = Release;
 		};
 		4D0E89A41534FE65004CD678 /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = mount_hfs/mount_hfs.ios.entitlements;
+				"CODE_SIGN_ENTITLEMENTS[sdk=macosx*]" = mount_hfs/mount_hfs.osx.entitlements;
+				CODE_SIGN_IDENTITY = "-";
 				EXCLUDED_SOURCE_FILE_NAMES = "";
 				"EXCLUDED_SOURCE_FILE_NAMES[sdk=iphoneos*]" = optical.c;
 				"EXCLUDED_SOURCE_FILE_NAMES[sdk=iphonesimulator*]" = optical.c;
-				INSTALL_PATH = $FS_BUNDLE_BIN_PATH;
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
 			};
 			name = Release;
 		};
@@ -1165,6 +2785,12 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+					"-Winteger-overflow",
+				);
 			};
 			name = Release;
 		};
@@ -1185,29 +2811,39 @@
 		4DE6C763153504C100C11066 /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				INSTALL_PATH = $FS_BUNDLE_BIN_PATH;
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = newfs_hfs/newfs_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
 			};
 			name = Release;
 		};
 		4DFD93FB1535FF510039B6BA /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = fsck_hfs/fsck_hfs.ios.entitlements;
+				"CODE_SIGN_ENTITLEMENTS[sdk=macosx*]" = fsck_hfs/fsck_hfs.osx.entitlements;
+				CODE_SIGN_IDENTITY = "-";
 				GCC_PREPROCESSOR_DEFINITIONS = (
 					"BSD=1",
 					"CONFIG_HFS_TRIM=1",
 					"DEBUG_BUILD=0",
 				);
-				INSTALL_PATH = $FS_BUNDLE_BIN_PATH;
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
 			};
 			name = Release;
 		};
 		4DFD94AE153649070039B6BA /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = newfs_hfs/newfs_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
 				GCC_PREPROCESSOR_DEFINITIONS = "DEBUG_BUILD=1";
 				PRODUCT_NAME = newfs_hfs_debug;
+				SDKROOT = macosx.internal;
 			};
 			name = Release;
 		};
@@ -1227,6 +2863,7 @@
 		4DFD951C1537402A0039B6BA /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				COPY_PHASE_STRIP = NO;
 				INFOPLIST_FILE = fs/Info.plist;
 				INSTALL_PATH = /System/Library/Filesystems;
 				PRODUCT_NAME = hfs;
@@ -1235,109 +2872,2074 @@
 			};
 			name = Release;
 		};
-		FDD9FA3414A132BF0043D4A9 /* Release */ = {
+		86CBF380183186C300A64A93 /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				INSTALL_PATH = $FS_BUNDLE_BIN_PATH;
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = YES;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				DEPLOYMENT_POSTPROCESSING = YES;
+				ENABLE_NS_ASSERTIONS = NO;
+				EXECUTABLE_PREFIX = lib;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				GENERATE_MASTER_OBJECT_FILE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.9;
 				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				STRIPFLAGS = "";
+				STRIP_INSTALLED_PRODUCT = YES;
+				STRIP_STYLE = "non-global";
 			};
 			name = Release;
 		};
-/* End XCBuildConfiguration section */
-
-/* Begin XCConfigurationList section */
-		1DEB928508733DD80010E9CD /* Build configuration list for PBXNativeTarget "hfs.util" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				1DEB928708733DD80010E9CD /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB20E0E71AE950C200CEBE7B /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_ASSIGN_ENUM = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CODE_SIGN_IDENTITY = "-";
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_SYMBOLS_PRIVATE_EXTERN = YES;
+				GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
+				GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES;
+				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
+				GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
+				GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES;
+				GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES;
+				GCC_WARN_SHADOW = YES;
+				GCC_WARN_SIGN_COMPARE = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES;
+				GCC_WARN_UNKNOWN_PRAGMAS = YES;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_LABEL = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INFOPLIST_FILE = "$(PROJECT_DERIVED_FILE_DIR)/kext-Info.plist";
+				INSTALL_MODE_FLAG = "a+rX";
+				LLVM_LTO = YES;
+				MODULE_NAME = "com.apple.file-systems.hfs.kext";
+				MODULE_VERSION = 1.0.0;
+				PRODUCT_BUNDLE_IDENTIFIER = com.apple.filesystems.hfs.kext;
+				PRODUCT_NAME = HFS;
+				SDKROOT = macosx.internal;
+				WARNING_CFLAGS = (
+					"$(inherited)",
+					"-Wno-unused-parameter",
+					"-Wno-shorten-64-to-32",
+				);
+				WRAPPER_EXTENSION = kext;
+			};
+			name = Release;
 		};
-		1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "hfs" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				1DEB928B08733DD80010E9CD /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB48E4A31BB3070500523121 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-DKERNEL";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INSTALL_PATH = /System/Library/Frameworks;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				PRODUCT_NAME = Kernel;
+				PUBLIC_HEADERS_FOLDER_PATH = Kernel.framework/Versions/A/Headers/hfs;
+				WRAPPER_EXTENSION = framework;
+			};
+			name = Release;
 		};
-		4D07DCC01538EF3A002B57CB /* Build configuration list for PBXNativeTarget "fstyp_hfs" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4D07DCBF1538EF3A002B57CB /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB48E4A41BB3070500523121 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-DKERNEL";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INSTALL_PATH = /System/Library/Frameworks;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = Kernel;
+				PUBLIC_HEADERS_FOLDER_PATH = Kernel.framework/Versions/A/Headers/hfs;
+				WRAPPER_EXTENSION = framework;
+			};
+			name = Debug;
 		};
-		4D0E89A31534FE65004CD678 /* Build configuration list for PBXNativeTarget "mount_hfs" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4D0E89A41534FE65004CD678 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB48E4A51BB3070500523121 /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-DKERNEL";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INSTALL_PATH = /System/Library/Frameworks;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = Kernel;
+				PUBLIC_HEADERS_FOLDER_PATH = Kernel.framework/Versions/A/Headers/hfs;
+				WRAPPER_EXTENSION = framework;
+			};
+			name = Coverage;
 		};
-		4DBD523C1548A488007AA736 /* Build configuration list for PBXAggregateTarget "Common" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DBD523D1548A488007AA736 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB48E5091BB3798500523121 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				INSTALLHDRS_SCRIPT_PHASE = YES;
+				PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include/hfs;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				PUBLIC_HEADERS_FOLDER_PATH = /usr/include/hfs;
+			};
+			name = Release;
 		};
-		4DD302581538DB2700001AA0 /* Build configuration list for PBXAggregateTarget "All_MacOSX" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DD302591538DB2700001AA0 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB48E50A1BB3798500523121 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				INSTALLHDRS_SCRIPT_PHASE = YES;
+				PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include/hfs;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				PUBLIC_HEADERS_FOLDER_PATH = /usr/include/hfs;
+			};
+			name = Debug;
 		};
-		4DD3025B1538DB3A00001AA0 /* Build configuration list for PBXAggregateTarget "All_iOS" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DD3025C1538DB3A00001AA0 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB48E50B1BB3798500523121 /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				INSTALLHDRS_SCRIPT_PHASE = YES;
+				PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include/hfs;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				PUBLIC_HEADERS_FOLDER_PATH = /usr/include/hfs;
+			};
+			name = Coverage;
 		};
-		4DE6C762153504C100C11066 /* Build configuration list for PBXNativeTarget "newfs_hfs" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DE6C763153504C100C11066 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB55AE711B7D47B300701D03 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+				);
+			};
+			name = Release;
 		};
-		4DFD93FC1535FF510039B6BA /* Build configuration list for PBXNativeTarget "fsck_hfs" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DFD93FB1535FF510039B6BA /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB55AE721B7D47B300701D03 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+				);
+			};
+			name = Debug;
 		};
-		4DFD94AD153649070039B6BA /* Build configuration list for PBXNativeTarget "newfs_hfs_debug" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DFD94AE153649070039B6BA /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB6A57E21B55544D008AB046 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				PRIVATE_HEADERS_FOLDER_PATH = "hfs-System.framework/Versions/B/PrivateHeaders/hfs";
+				PRODUCT_NAME = "hfs-System";
+				SDKROOT = macosx;
+				SKIP_INSTALL = YES;
+				WRAPPER_EXTENSION = framework;
+			};
+			name = Release;
 		};
-		4DFD94E415373C2C0039B6BA /* Build configuration list for PBXNativeTarget "fsck_makestrings" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DFD94E515373C2C0039B6BA /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
+		FB6A57E31B55544D008AB046 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRIVATE_HEADERS_FOLDER_PATH = "hfs-System.framework/Versions/B/PrivateHeaders/hfs";
+				PRODUCT_NAME = "hfs-System";
+				SDKROOT = macosx;
+				SKIP_INSTALL = YES;
+				WRAPPER_EXTENSION = framework;
+			};
+			name = Debug;
 		};
-		4DFD951B1537402A0039B6BA /* Build configuration list for PBXNativeTarget "hfs.fs" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				4DFD951C1537402A0039B6BA /* Release */,
+		FB75A4001B4AE765004B5A74 /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CODE_SIGN_IDENTITY = "-";
+				COMBINE_HIDPI_IMAGES = YES;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				INFOPLIST_FILE = "$(SRCROOT)/hfs_encodings/HFSEncodings-Info.plist";
+				INSTALL_MODE_FLAG = "a+rX";
+				MODULE_NAME = "com.apple.file-systems.hfs.kext";
+				MODULE_VERSION = 1.0.0;
+				PRODUCT_BUNDLE_IDENTIFIER = com.apple.filesystems.hfs.encodings.kext;
+				PRODUCT_NAME = HFSEncodings;
+				SDKROOT = macosx.internal;
+				SUPPORTED_PLATFORMS = macosx;
+				WRAPPER_EXTENSION = kext;
+			};
+			name = Release;
+		};
+		FB75A4011B4AE765004B5A74 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CODE_SIGN_IDENTITY = "-";
+				COMBINE_HIDPI_IMAGES = YES;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				INFOPLIST_FILE = "$(SRCROOT)/hfs_encodings/HFSEncodings-Info.plist";
+				INSTALL_MODE_FLAG = "a+rX";
+				MODULE_NAME = "com.apple.file-systems.hfs.kext";
+				MODULE_VERSION = 1.0.0;
+				PRODUCT_BUNDLE_IDENTIFIER = com.apple.filesystems.hfs.encodings.kext;
+				PRODUCT_NAME = HFSEncodings;
+				SDKROOT = macosx.internal;
+				SUPPORTED_PLATFORMS = macosx;
+				WRAPPER_EXTENSION = kext;
+			};
+			name = Debug;
+		};
+		FB76B3D71B7A4BE600FA9F2B /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB2B5C671B877A4D00ACEDD9 /* hfs-tests.xcconfig */;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				CODE_SIGN_ENTITLEMENTS = "$(SRCROOT)/tests/hfs-tests.entitlements";
+				CODE_SIGN_IDENTITY = "-";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
+				);
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INSTALL_PATH = /AppleInternal/CoreOS/tests/hfs;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				OTHER_CFLAGS = "-fexceptions";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/tests";
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+					"-Winteger-overflow",
+				);
+			};
+			name = Release;
+		};
+		FB76B3D81B7A4BE600FA9F2B /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB2B5C671B877A4D00ACEDD9 /* hfs-tests.xcconfig */;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				CODE_SIGN_ENTITLEMENTS = "$(SRCROOT)/tests/hfs-tests.entitlements";
+				CODE_SIGN_IDENTITY = "-";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
+				);
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					DEBUG,
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INSTALL_PATH = /AppleInternal/CoreOS/tests/hfs;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				OTHER_CFLAGS = "-fexceptions";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/tests";
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+					"-Winteger-overflow",
+				);
+			};
+			name = Debug;
+		};
+		FB7C140E1C2368E6004F8B2C /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Release;
+		};
+		FB7C140F1C2368E6004F8B2C /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Debug;
+		};
+		FB7C14101C2368E6004F8B2C /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Coverage;
+		};
+		FBA95AAB1B5025E700887E82 /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Release;
+		};
+		FBA95AAC1B5025E700887E82 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Debug;
+		};
+		FBAA824A1B56F24100EE6863 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+				WARNING_CFLAGS = (
+					"$(inherited)",
+					"-Wno-shorten-64-to-32",
+				);
+			};
+			name = Release;
+		};
+		FBAA824B1B56F24100EE6863 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+				WARNING_CFLAGS = (
+					"$(inherited)",
+					"-Wno-shorten-64-to-32",
+				);
+			};
+			name = Debug;
+		};
+		FBAA82561B56F26A00EE6863 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					HFS_EXTENTS_TEST,
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Release;
+		};
+		FBAA82571B56F26A00EE6863 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					HFS_EXTENTS_TEST,
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBAA82621B56F28C00EE6863 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Release;
+		};
+		FBAA82631B56F28C00EE6863 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBAA82671B56F2AB00EE6863 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+				);
+			};
+			name = Release;
+		};
+		FBAA82681B56F2AB00EE6863 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+				);
+			};
+			name = Debug;
+		};
+		FBC234C01B4D87A20002D849 /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+			};
+			name = Release;
+		};
+		FBC234C11B4D87A20002D849 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+			};
+			name = Debug;
+		};
+		FBCC53021B852759008B752C /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx;
+			};
+			name = Release;
+		};
+		FBCC53031B852759008B752C /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx;
+			};
+			name = Debug;
+		};
+		FBD5C7D71B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 4DFD953D15377C7D0039B6BA /* hfs.xcconfig */;
+			buildSettings = {
+				ENABLE_TESTABILITY = YES;
+			};
+			name = Debug;
+		};
+		FBD5C7D81B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Debug;
+		};
+		FBD5C7D91B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Debug;
+		};
+		FBD5C7DA1B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+					"-Winteger-overflow",
+				);
+			};
+			name = Debug;
+		};
+		FBD5C7DB1B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_PHASE_STRIP = NO;
+				INFOPLIST_FILE = fs/Info.plist;
+				INSTALL_PATH = /System/Library/Filesystems;
+				PRODUCT_NAME = hfs;
+				STRINGS_FILE_OUTPUT_ENCODING = "UTF-8";
+				WRAPPER_EXTENSION = fs;
+			};
+			name = Debug;
+		};
+		FBD5C7DC1B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = hfs_util/hfs_util.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				PRODUCT_NAME = hfs.util;
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBD5C7DD1B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = CopyHFSMeta/CopyHFSMeta.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBD5C7DE1B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = mount_hfs/mount_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				EXCLUDED_SOURCE_FILE_NAMES = "";
+				"EXCLUDED_SOURCE_FILE_NAMES[sdk=iphoneos*]" = optical.c;
+				"EXCLUDED_SOURCE_FILE_NAMES[sdk=iphonesimulator*]" = optical.c;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBD5C7DF1B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = newfs_hfs/newfs_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBD5C7E01B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = newfs_hfs/newfs_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				GCC_PREPROCESSOR_DEFINITIONS = "DEBUG_BUILD=1";
+				PRODUCT_NAME = newfs_hfs_debug;
+				SDKROOT = macosx.internal;
+			};
+			name = Debug;
+		};
+		FBD5C7E11B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = fsck_hfs/fsck_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"BSD=1",
+					"CONFIG_HFS_TRIM=1",
+					"DEBUG_BUILD=0",
+				);
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBD5C7E21B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = fstyp_hfs/fstyp_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				INSTALL_PATH = /sbin;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+			};
+			name = Debug;
+		};
+		FBD5C7E31B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ARCHS = "$(NATIVE_ARCH_ACTUAL)";
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"BSD=1",
+					"FSCK_MAKESTRINGS=1",
+				);
+				PRODUCT_NAME = fsck_makestrings;
+				SKIP_INSTALL = YES;
+			};
+			name = Debug;
+		};
+		FBD5C7E41B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = YES;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				DEPLOYMENT_POSTPROCESSING = YES;
+				ENABLE_NS_ASSERTIONS = NO;
+				EXECUTABLE_PREFIX = lib;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				GENERATE_MASTER_OBJECT_FILE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.9;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				STRIPFLAGS = "";
+				STRIP_INSTALLED_PRODUCT = YES;
+				STRIP_STYLE = "non-global";
+			};
+			name = Debug;
+		};
+		FBD5C7E51B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_ASSIGN_ENUM = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CODE_SIGN_IDENTITY = "-";
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_SYMBOLS_PRIVATE_EXTERN = YES;
+				GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
+				GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES;
+				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
+				GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
+				GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES;
+				GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES;
+				GCC_WARN_SHADOW = YES;
+				GCC_WARN_SIGN_COMPARE = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES;
+				GCC_WARN_UNKNOWN_PRAGMAS = YES;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_LABEL = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INFOPLIST_FILE = "$(PROJECT_DERIVED_FILE_DIR)/kext-Info.plist";
+				INSTALL_MODE_FLAG = "a+rX";
+				MODULE_NAME = "com.apple.file-systems.hfs.kext";
+				MODULE_VERSION = 1.0.0;
+				PRODUCT_BUNDLE_IDENTIFIER = com.apple.filesystems.hfs.kext;
+				PRODUCT_NAME = HFS;
+				SDKROOT = macosx.internal;
+				WARNING_CFLAGS = (
+					"$(inherited)",
+					"-Wno-unused-parameter",
+					"-Wno-shorten-64-to-32",
+				);
+				WRAPPER_EXTENSION = kext;
+			};
+			name = Debug;
+		};
+		FBD5C7E61B1D591800B4620E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+			};
+			name = Debug;
+		};
+		FBD69B161B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 4DFD953D15377C7D0039B6BA /* hfs.xcconfig */;
+			buildSettings = {
+				ENABLE_TESTABILITY = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B171B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Coverage;
+		};
+		FBD69B181B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Coverage;
+		};
+		FBD69B191B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+					"-Winteger-overflow",
+				);
+			};
+			name = Coverage;
+		};
+		FBD69B1A1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_PHASE_STRIP = NO;
+				INFOPLIST_FILE = fs/Info.plist;
+				INSTALL_PATH = /System/Library/Filesystems;
+				PRODUCT_NAME = hfs;
+				STRINGS_FILE_OUTPUT_ENCODING = "UTF-8";
+				WRAPPER_EXTENSION = fs;
+			};
+			name = Coverage;
+		};
+		FBD69B1B1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = hfs_util/hfs_util.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				PRODUCT_NAME = hfs.util;
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B1C1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = CopyHFSMeta/CopyHFSMeta.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B1D1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = mount_hfs/mount_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				EXCLUDED_SOURCE_FILE_NAMES = "";
+				"EXCLUDED_SOURCE_FILE_NAMES[sdk=iphoneos*]" = optical.c;
+				"EXCLUDED_SOURCE_FILE_NAMES[sdk=iphonesimulator*]" = optical.c;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B1E1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = newfs_hfs/newfs_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B1F1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = newfs_hfs/newfs_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				GCC_PREPROCESSOR_DEFINITIONS = "DEBUG_BUILD=1";
+				PRODUCT_NAME = newfs_hfs_debug;
+				SDKROOT = macosx.internal;
+			};
+			name = Coverage;
+		};
+		FBD69B201B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = fsck_hfs/fsck_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"BSD=1",
+					"CONFIG_HFS_TRIM=1",
+					"DEBUG_BUILD=0",
+				);
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B211B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = fstyp_hfs/fstyp_hfs.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				INSTALL_PATH = /sbin;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+			};
+			name = Coverage;
+		};
+		FBD69B221B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ARCHS = "$(NATIVE_ARCH_ACTUAL)";
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"BSD=1",
+					"FSCK_MAKESTRINGS=1",
+				);
+				PRODUCT_NAME = fsck_makestrings;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B231B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = YES;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				DEPLOYMENT_POSTPROCESSING = YES;
+				ENABLE_NS_ASSERTIONS = NO;
+				EXECUTABLE_PREFIX = lib;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				GENERATE_MASTER_OBJECT_FILE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.9;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				STRIPFLAGS = "";
+				STRIP_INSTALLED_PRODUCT = YES;
+				STRIP_STYLE = "non-global";
+			};
+			name = Coverage;
+		};
+		FBD69B241B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_ASSIGN_ENUM = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CODE_SIGN_IDENTITY = "-";
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_SYMBOLS_PRIVATE_EXTERN = YES;
+				GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
+				GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES;
+				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
+				GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
+				GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES;
+				GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES;
+				GCC_WARN_SHADOW = YES;
+				GCC_WARN_SIGN_COMPARE = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES;
+				GCC_WARN_UNKNOWN_PRAGMAS = YES;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_LABEL = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INFOPLIST_FILE = "$(PROJECT_DERIVED_FILE_DIR)/kext-Info.plist";
+				INSTALL_MODE_FLAG = "a+rX";
+				MODULE_NAME = "com.apple.file-systems.hfs.kext";
+				MODULE_VERSION = 1.0.0;
+				PRODUCT_BUNDLE_IDENTIFIER = com.apple.filesystems.hfs.kext;
+				PRODUCT_NAME = HFS;
+				SDKROOT = macosx.internal;
+				WARNING_CFLAGS = (
+					"$(inherited)",
+					"-Wno-unused-parameter",
+					"-Wno-shorten-64-to-32",
+				);
+				WRAPPER_EXTENSION = kext;
+			};
+			name = Coverage;
+		};
+		FBD69B251B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CODE_SIGN_IDENTITY = "-";
+				COMBINE_HIDPI_IMAGES = YES;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				INFOPLIST_FILE = "$(SRCROOT)/hfs_encodings/HFSEncodings-Info.plist";
+				INSTALL_MODE_FLAG = "a+rX";
+				MODULE_NAME = "com.apple.file-systems.hfs.kext";
+				MODULE_VERSION = 1.0.0;
+				PRODUCT_BUNDLE_IDENTIFIER = com.apple.filesystems.hfs.encodings.kext;
+				PRODUCT_NAME = HFSEncodings;
+				SDKROOT = macosx.internal;
+				SUPPORTED_PLATFORMS = macosx;
+				WRAPPER_EXTENSION = kext;
+			};
+			name = Coverage;
+		};
+		FBD69B261B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+			};
+			name = Coverage;
+		};
+		FBD69B271B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+			};
+			name = Coverage;
+		};
+		FBD69B281B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+			};
+			name = Coverage;
+		};
+		FBD69B291B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COMBINE_HIDPI_IMAGES = YES;
+				COPY_HEADERS_RUN_UNIFDEF = YES;
+				COPY_HEADERS_UNIFDEF_FLAGS = "-UKERNEL";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRIVATE_HEADERS_FOLDER_PATH = "hfs-System.framework/Versions/B/PrivateHeaders/hfs";
+				PRODUCT_NAME = "hfs-System";
+				SDKROOT = macosx;
+				SKIP_INSTALL = YES;
+				WRAPPER_EXTENSION = framework;
+			};
+			name = Coverage;
+		};
+		FBD69B2A1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+				WARNING_CFLAGS = (
+					"$(inherited)",
+					"-Wno-shorten-64-to-32",
+				);
+			};
+			name = Coverage;
+		};
+		FBD69B2B1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					HFS_EXTENTS_TEST,
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B2C1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Coverage;
+		};
+		FBD69B2D1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB2B5C671B877A4D00ACEDD9 /* hfs-tests.xcconfig */;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				CODE_SIGN_ENTITLEMENTS = "$(SRCROOT)/tests/hfs-tests.entitlements";
+				CODE_SIGN_IDENTITY = "-";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
+				);
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					DEBUG,
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				INSTALL_PATH = /AppleInternal/CoreOS/tests/hfs;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				OTHER_CFLAGS = "-fexceptions";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/tests";
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+					"-Winteger-overflow",
+				);
+			};
+			name = Coverage;
+		};
+		FBD69B2E1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+				);
+			};
+			name = Coverage;
+		};
+		FBD69B2F1B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos.internal;
+				WARNING_CFLAGS = (
+					"-Wall",
+					"-W",
+					"-Wno-missing-field-initializers",
+				);
+			};
+			name = Coverage;
+		};
+		FBD69B301B94E9990022ECAD /* Coverage */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx;
+			};
+			name = Coverage;
+		};
+		FBE3F7831AF67748005BB768 /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = FB20E1781AE968BD00CEBE7B /* kext.xcconfig */;
+			buildSettings = {
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+			};
+			name = Release;
+		};
+		FDD9FA3414A132BF0043D4A9 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				"CODE_SIGN_ENTITLEMENTS[sdk=iphoneos*]" = CopyHFSMeta/CopyHFSMeta.entitlements;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "-";
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = macosx.internal;
+				SKIP_INSTALL = YES;
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		1DEB928508733DD80010E9CD /* Build configuration list for PBXNativeTarget "hfs.util" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				1DEB928708733DD80010E9CD /* Release */,
+				FBD5C7DC1B1D591800B4620E /* Debug */,
+				FBD69B1B1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "hfs" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				1DEB928B08733DD80010E9CD /* Release */,
+				FBD5C7D71B1D591800B4620E /* Debug */,
+				FBD69B161B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4D07DCC01538EF3A002B57CB /* Build configuration list for PBXNativeTarget "fstyp_hfs" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4D07DCBF1538EF3A002B57CB /* Release */,
+				FBD5C7E21B1D591800B4620E /* Debug */,
+				FBD69B211B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4D0E89A31534FE65004CD678 /* Build configuration list for PBXNativeTarget "mount_hfs" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4D0E89A41534FE65004CD678 /* Release */,
+				FBD5C7DE1B1D591800B4620E /* Debug */,
+				FBD69B1D1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DBD523C1548A488007AA736 /* Build configuration list for PBXAggregateTarget "Common" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DBD523D1548A488007AA736 /* Release */,
+				FBD5C7DA1B1D591800B4620E /* Debug */,
+				FBD69B191B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DD302581538DB2700001AA0 /* Build configuration list for PBXAggregateTarget "All_MacOSX" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DD302591538DB2700001AA0 /* Release */,
+				FBD5C7D81B1D591800B4620E /* Debug */,
+				FBD69B171B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DD3025B1538DB3A00001AA0 /* Build configuration list for PBXAggregateTarget "All_iOS" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DD3025C1538DB3A00001AA0 /* Release */,
+				FBD5C7D91B1D591800B4620E /* Debug */,
+				FBD69B181B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DE6C762153504C100C11066 /* Build configuration list for PBXNativeTarget "newfs_hfs" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DE6C763153504C100C11066 /* Release */,
+				FBD5C7DF1B1D591800B4620E /* Debug */,
+				FBD69B1E1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DFD93FC1535FF510039B6BA /* Build configuration list for PBXNativeTarget "fsck_hfs" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DFD93FB1535FF510039B6BA /* Release */,
+				FBD5C7E11B1D591800B4620E /* Debug */,
+				FBD69B201B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DFD94AD153649070039B6BA /* Build configuration list for PBXNativeTarget "newfs_hfs_debug" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DFD94AE153649070039B6BA /* Release */,
+				FBD5C7E01B1D591800B4620E /* Debug */,
+				FBD69B1F1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DFD94E415373C2C0039B6BA /* Build configuration list for PBXNativeTarget "fsck_makestrings" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DFD94E515373C2C0039B6BA /* Release */,
+				FBD5C7E31B1D591800B4620E /* Debug */,
+				FBD69B221B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		4DFD951B1537402A0039B6BA /* Build configuration list for PBXNativeTarget "hfs.fs" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				4DFD951C1537402A0039B6BA /* Release */,
+				FBD5C7DB1B1D591800B4620E /* Debug */,
+				FBD69B1A1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		86CBF381183186C300A64A93 /* Build configuration list for PBXNativeTarget "hfs_metadata" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				86CBF380183186C300A64A93 /* Release */,
+				FBD5C7E41B1D591800B4620E /* Debug */,
+				FBD69B231B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB20E0E61AE950C200CEBE7B /* Build configuration list for PBXNativeTarget "kext" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB20E0E71AE950C200CEBE7B /* Release */,
+				FBD5C7E51B1D591800B4620E /* Debug */,
+				FBD69B241B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB48E4A21BB3070500523121 /* Build configuration list for PBXNativeTarget "OSX Kernel Framework Headers" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB48E4A31BB3070500523121 /* Release */,
+				FB48E4A41BB3070500523121 /* Debug */,
+				FB48E4A51BB3070500523121 /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB48E5081BB3798500523121 /* Build configuration list for PBXNativeTarget "Sim_Headers" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB48E5091BB3798500523121 /* Release */,
+				FB48E50A1BB3798500523121 /* Debug */,
+				FB48E50B1BB3798500523121 /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB55AE701B7D47B300701D03 /* Build configuration list for PBXAggregateTarget "ios-tests" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB55AE711B7D47B300701D03 /* Release */,
+				FB55AE721B7D47B300701D03 /* Debug */,
+				FBD69B2F1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB6A57E11B55544D008AB046 /* Build configuration list for PBXNativeTarget "System Framework Headers" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB6A57E21B55544D008AB046 /* Release */,
+				FB6A57E31B55544D008AB046 /* Debug */,
+				FBD69B291B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB75A3FF1B4AE765004B5A74 /* Build configuration list for PBXNativeTarget "encodings-kext" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB75A4001B4AE765004B5A74 /* Release */,
+				FB75A4011B4AE765004B5A74 /* Debug */,
+				FBD69B251B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB76B3D61B7A4BE600FA9F2B /* Build configuration list for PBXNativeTarget "hfs-tests" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB76B3D71B7A4BE600FA9F2B /* Release */,
+				FB76B3D81B7A4BE600FA9F2B /* Debug */,
+				FBD69B2D1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FB7C140D1C2368E6004F8B2C /* Build configuration list for PBXAggregateTarget "kext-version" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FB7C140E1C2368E6004F8B2C /* Release */,
+				FB7C140F1C2368E6004F8B2C /* Debug */,
+				FB7C14101C2368E6004F8B2C /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBA95AAA1B5025E700887E82 /* Build configuration list for PBXAggregateTarget "mk-xnu" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBA95AAB1B5025E700887E82 /* Release */,
+				FBA95AAC1B5025E700887E82 /* Debug */,
+				FBD69B281B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBAA82491B56F24100EE6863 /* Build configuration list for PBXNativeTarget "hfs_alloc_test" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBAA824A1B56F24100EE6863 /* Release */,
+				FBAA824B1B56F24100EE6863 /* Debug */,
+				FBD69B2A1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBAA82551B56F26A00EE6863 /* Build configuration list for PBXNativeTarget "hfs_extents_test" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBAA82561B56F26A00EE6863 /* Release */,
+				FBAA82571B56F26A00EE6863 /* Debug */,
+				FBD69B2B1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBAA82611B56F28C00EE6863 /* Build configuration list for PBXNativeTarget "rangelist_test" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBAA82621B56F28C00EE6863 /* Release */,
+				FBAA82631B56F28C00EE6863 /* Debug */,
+				FBD69B2C1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBAA82661B56F2AB00EE6863 /* Build configuration list for PBXAggregateTarget "osx-tests" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBAA82671B56F2AB00EE6863 /* Release */,
+				FBAA82681B56F2AB00EE6863 /* Debug */,
+				FBD69B2E1B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBC234BF1B4D87A20002D849 /* Build configuration list for PBXAggregateTarget "ios-root" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBC234C01B4D87A20002D849 /* Release */,
+				FBC234C11B4D87A20002D849 /* Debug */,
+				FBD69B271B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBCC53041B852759008B752C /* Build configuration list for PBXNativeTarget "hfs-alloc-trace" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBCC53021B852759008B752C /* Release */,
+				FBCC53031B852759008B752C /* Debug */,
+				FBD69B301B94E9990022ECAD /* Coverage */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		FBE3F7841AF67748005BB768 /* Build configuration list for PBXAggregateTarget "osx-root" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				FBE3F7831AF67748005BB768 /* Release */,
+				FBD5C7E61B1D591800B4620E /* Debug */,
+				FBD69B261B94E9990022ECAD /* Coverage */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
@@ -1346,6 +4948,8 @@
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				FDD9FA3414A132BF0043D4A9 /* Release */,
+				FBD5C7DD1B1D591800B4620E /* Debug */,
+				FBD69B1C1B94E9990022ECAD /* Coverage */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;