// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 44;
	objects = {

/* Begin PBXBuildFile section */
		14461C7109C3C37F005840C0 /* png.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C5D09C3C37F005840C0 /* png.c */; };
		14461C7209C3C37F005840C0 /* png.h in Headers */ = {isa = PBXBuildFile; fileRef = 14461C5E09C3C37F005840C0 /* png.h */; settings = {ATTRIBUTES = (Public, ); }; };
		14461C7309C3C37F005840C0 /* pngconf.h in Headers */ = {isa = PBXBuildFile; fileRef = 14461C5F09C3C37F005840C0 /* pngconf.h */; settings = {ATTRIBUTES = (Public, ); }; };
		14461C7409C3C37F005840C0 /* pngerror.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6009C3C37F005840C0 /* pngerror.c */; };
		14461C7509C3C37F005840C0 /* pnggccrd.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6109C3C37F005840C0 /* pnggccrd.c */; };
		14461C7609C3C37F005840C0 /* pngget.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6209C3C37F005840C0 /* pngget.c */; };
		14461C7709C3C37F005840C0 /* pngmem.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6309C3C37F005840C0 /* pngmem.c */; };
		14461C7809C3C37F005840C0 /* pngpread.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6409C3C37F005840C0 /* pngpread.c */; };
		14461C7909C3C37F005840C0 /* pngread.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6509C3C37F005840C0 /* pngread.c */; };
		14461C7A09C3C37F005840C0 /* pngrio.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6609C3C37F005840C0 /* pngrio.c */; };
		14461C7B09C3C37F005840C0 /* pngrtran.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6709C3C37F005840C0 /* pngrtran.c */; };
		14461C7C09C3C37F005840C0 /* pngrutil.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6809C3C37F005840C0 /* pngrutil.c */; };
		14461C7D09C3C37F005840C0 /* pngset.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6909C3C37F005840C0 /* pngset.c */; };
		14461C7F09C3C37F005840C0 /* pngtrans.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6B09C3C37F005840C0 /* pngtrans.c */; };
		14461C8009C3C37F005840C0 /* pngvcrd.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6C09C3C37F005840C0 /* pngvcrd.c */; };
		14461C8109C3C37F005840C0 /* pngwio.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6D09C3C37F005840C0 /* pngwio.c */; };
		14461C8209C3C37F005840C0 /* pngwrite.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6E09C3C37F005840C0 /* pngwrite.c */; };
		14461C8309C3C37F005840C0 /* pngwtran.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C6F09C3C37F005840C0 /* pngwtran.c */; };
		14461C8409C3C37F005840C0 /* pngwutil.c in Sources */ = {isa = PBXBuildFile; fileRef = 14461C7009C3C37F005840C0 /* pngwutil.c */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		14461C5D09C3C37F005840C0 /* png.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = png.c; path = ../../png.c; sourceTree = SOURCE_ROOT; };
		14461C5E09C3C37F005840C0 /* png.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = png.h; path = ../../png.h; sourceTree = SOURCE_ROOT; };
		14461C5F09C3C37F005840C0 /* pngconf.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pngconf.h; path = ../../pngconf.h; sourceTree = SOURCE_ROOT; };
		14461C6009C3C37F005840C0 /* pngerror.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngerror.c; path = ../../pngerror.c; sourceTree = SOURCE_ROOT; };
		14461C6109C3C37F005840C0 /* pnggccrd.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pnggccrd.c; path = ../../pnggccrd.c; sourceTree = SOURCE_ROOT; };
		14461C6209C3C37F005840C0 /* pngget.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngget.c; path = ../../pngget.c; sourceTree = SOURCE_ROOT; };
		14461C6309C3C37F005840C0 /* pngmem.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngmem.c; path = ../../pngmem.c; sourceTree = SOURCE_ROOT; };
		14461C6409C3C37F005840C0 /* pngpread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngpread.c; path = ../../pngpread.c; sourceTree = SOURCE_ROOT; };
		14461C6509C3C37F005840C0 /* pngread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngread.c; path = ../../pngread.c; sourceTree = SOURCE_ROOT; };
		14461C6609C3C37F005840C0 /* pngrio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngrio.c; path = ../../pngrio.c; sourceTree = SOURCE_ROOT; };
		14461C6709C3C37F005840C0 /* pngrtran.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngrtran.c; path = ../../pngrtran.c; sourceTree = SOURCE_ROOT; };
		14461C6809C3C37F005840C0 /* pngrutil.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngrutil.c; path = ../../pngrutil.c; sourceTree = SOURCE_ROOT; };
		14461C6909C3C37F005840C0 /* pngset.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngset.c; path = ../../pngset.c; sourceTree = SOURCE_ROOT; };
		14461C6B09C3C37F005840C0 /* pngtrans.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngtrans.c; path = ../../pngtrans.c; sourceTree = SOURCE_ROOT; };
		14461C6C09C3C37F005840C0 /* pngvcrd.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngvcrd.c; path = ../../pngvcrd.c; sourceTree = SOURCE_ROOT; };
		14461C6D09C3C37F005840C0 /* pngwio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngwio.c; path = ../../pngwio.c; sourceTree = SOURCE_ROOT; };
		14461C6E09C3C37F005840C0 /* pngwrite.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngwrite.c; path = ../../pngwrite.c; sourceTree = SOURCE_ROOT; };
		14461C6F09C3C37F005840C0 /* pngwtran.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngwtran.c; path = ../../pngwtran.c; sourceTree = SOURCE_ROOT; };
		14461C7009C3C37F005840C0 /* pngwutil.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pngwutil.c; path = ../../pngwutil.c; sourceTree = SOURCE_ROOT; };
		8D07F2C70486CC7A007CD1D0 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
		8D07F2C80486CC7A007CD1D0 /* libpng.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = libpng.framework; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		8D07F2C30486CC7A007CD1D0 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		034768DDFF38A45A11DB9C8B /* Products */ = {
			isa = PBXGroup;
			children = (
				8D07F2C80486CC7A007CD1D0 /* libpng.framework */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		0867D691FE84028FC02AAC07 /* libpng */ = {
			isa = PBXGroup;
			children = (
				08FB77ACFE841707C02AAC07 /* Source */,
				089C1665FE841158C02AAC07 /* Resources */,
				034768DDFF38A45A11DB9C8B /* Products */,
			);
			name = libpng;
			sourceTree = "<group>";
		};
		089C1665FE841158C02AAC07 /* Resources */ = {
			isa = PBXGroup;
			children = (
				8D07F2C70486CC7A007CD1D0 /* Info.plist */,
			);
			name = Resources;
			sourceTree = "<group>";
		};
		08FB77ACFE841707C02AAC07 /* Source */ = {
			isa = PBXGroup;
			children = (
				14461C5D09C3C37F005840C0 /* png.c */,
				14461C5E09C3C37F005840C0 /* png.h */,
				14461C5F09C3C37F005840C0 /* pngconf.h */,
				14461C6009C3C37F005840C0 /* pngerror.c */,
				14461C6109C3C37F005840C0 /* pnggccrd.c */,
				14461C6209C3C37F005840C0 /* pngget.c */,
				14461C6309C3C37F005840C0 /* pngmem.c */,
				14461C6409C3C37F005840C0 /* pngpread.c */,
				14461C6509C3C37F005840C0 /* pngread.c */,
				14461C6609C3C37F005840C0 /* pngrio.c */,
				14461C6709C3C37F005840C0 /* pngrtran.c */,
				14461C6809C3C37F005840C0 /* pngrutil.c */,
				14461C6909C3C37F005840C0 /* pngset.c */,
				14461C6B09C3C37F005840C0 /* pngtrans.c */,
				14461C6C09C3C37F005840C0 /* pngvcrd.c */,
				14461C6D09C3C37F005840C0 /* pngwio.c */,
				14461C6E09C3C37F005840C0 /* pngwrite.c */,
				14461C6F09C3C37F005840C0 /* pngwtran.c */,
				14461C7009C3C37F005840C0 /* pngwutil.c */,
			);
			name = Source;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		8D07F2BD0486CC7A007CD1D0 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				14461C7209C3C37F005840C0 /* png.h in Headers */,
				14461C7309C3C37F005840C0 /* pngconf.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		8D07F2BC0486CC7A007CD1D0 /* libpng */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 4FADC24208B4156D00ABE55E /* Build configuration list for PBXNativeTarget "libpng" */;
			buildPhases = (
				8D07F2BD0486CC7A007CD1D0 /* Headers */,
				8D07F2BF0486CC7A007CD1D0 /* Resources */,
				8D07F2C10486CC7A007CD1D0 /* Sources */,
				8D07F2C30486CC7A007CD1D0 /* Frameworks */,
				8D07F2C50486CC7A007CD1D0 /* Rez */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = libpng;
			productInstallPath = "$(HOME)/Library/Frameworks";
			productName = libpng;
			productReference = 8D07F2C80486CC7A007CD1D0 /* libpng.framework */;
			productType = "com.apple.product-type.framework";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		0867D690FE84028FC02AAC07 /* Project object */ = {
			isa = PBXProject;
			buildConfigurationList = 4FADC24608B4156D00ABE55E /* Build configuration list for PBXProject "libpng" */;
			compatibilityVersion = "Xcode 2.4";
			hasScannedForEncodings = 1;
			mainGroup = 0867D691FE84028FC02AAC07 /* libpng */;
			productRefGroup = 034768DDFF38A45A11DB9C8B /* Products */;
			projectDirPath = "";
			projectRoot = ../..;
			targets = (
				8D07F2BC0486CC7A007CD1D0 /* libpng */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		8D07F2BF0486CC7A007CD1D0 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXRezBuildPhase section */
		8D07F2C50486CC7A007CD1D0 /* Rez */ = {
			isa = PBXRezBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXRezBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		8D07F2C10486CC7A007CD1D0 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				14461C7109C3C37F005840C0 /* png.c in Sources */,
				14461C7409C3C37F005840C0 /* pngerror.c in Sources */,
				14461C7509C3C37F005840C0 /* pnggccrd.c in Sources */,
				14461C7609C3C37F005840C0 /* pngget.c in Sources */,
				14461C7709C3C37F005840C0 /* pngmem.c in Sources */,
				14461C7809C3C37F005840C0 /* pngpread.c in Sources */,
				14461C7909C3C37F005840C0 /* pngread.c in Sources */,
				14461C7A09C3C37F005840C0 /* pngrio.c in Sources */,
				14461C7B09C3C37F005840C0 /* pngrtran.c in Sources */,
				14461C7C09C3C37F005840C0 /* pngrutil.c in Sources */,
				14461C7D09C3C37F005840C0 /* pngset.c in Sources */,
				14461C7F09C3C37F005840C0 /* pngtrans.c in Sources */,
				14461C8009C3C37F005840C0 /* pngvcrd.c in Sources */,
				14461C8109C3C37F005840C0 /* pngwio.c in Sources */,
				14461C8209C3C37F005840C0 /* pngwrite.c in Sources */,
				14461C8309C3C37F005840C0 /* pngwtran.c in Sources */,
				14461C8409C3C37F005840C0 /* pngwutil.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin XCBuildConfiguration section */
		4FADC24308B4156D00ABE55E /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				COPY_PHASE_STRIP = NO;
				DYLIB_COMPATIBILITY_VERSION = 3;
				DYLIB_CURRENT_VERSION = 3;
				FRAMEWORK_VERSION = 1.2.59;
				GCC_PRECOMPILE_PREFIX_HEADER = NO;
				GCC_PREFIX_HEADER = "";
				INFOPLIST_FILE = Info.plist;
				INSTALL_PATH = "@executable_path/../Frameworks";
				LIBRARY_STYLE = DYNAMIC;
				MACH_O_TYPE = mh_dylib;
				OTHER_LDFLAGS = "-lz";
				PRODUCT_NAME = libpng;
				WRAPPER_EXTENSION = framework;
			};
			name = Debug;
		};
		4FADC24408B4156D00ABE55E /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DYLIB_COMPATIBILITY_VERSION = 3;
				DYLIB_CURRENT_VERSION = 3;
				FRAMEWORK_VERSION = 1.2.59;
				GCC_PRECOMPILE_PREFIX_HEADER = NO;
				GCC_PREFIX_HEADER = "";
				INFOPLIST_FILE = Info.plist;
				INSTALL_PATH = "@executable_path/../Frameworks";
				LIBRARY_STYLE = DYNAMIC;
				MACH_O_TYPE = mh_dylib;
				OTHER_LDFLAGS = "-lz";
				PRODUCT_NAME = libpng;
				WRAPPER_EXTENSION = framework;
			};
			name = Release;
		};
		4FADC24708B4156D00ABE55E /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ARCHS = (
					i386,
					ppc,
					ppc64,
					x86_64,
				);
				DEPLOYMENT_POSTPROCESSING = YES;
				GCC_ENABLE_CPP_EXCEPTIONS = NO;
				GCC_ENABLE_CPP_RTTI = NO;
				GCC_ENABLE_FIX_AND_CONTINUE = YES;
				GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
				GCC_VERSION_i386 = 4.0;
				GCC_VERSION_ppc = 3.3;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				MACOSX_DEPLOYMENT_TARGET = 10.5;
				"MACOSX_DEPLOYMENT_TARGET[arch=i386]" = 10.4;
				"MACOSX_DEPLOYMENT_TARGET[arch=ppc]" = 10.2;
				MACOSX_DEPLOYMENT_TARGET_i386 = 10.4;
				MACOSX_DEPLOYMENT_TARGET_ppc = 10.2;
				PREBINDING = NO;
				SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk";
				"SDKROOT[arch=i386]" = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk";
				"SDKROOT[arch=ppc]" = "$(DEVELOPER_SDK_DIR)/MacOSX10.3.9.sdk";
				SDKROOT_i386 = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk";
				SDKROOT_ppc = "$(DEVELOPER_SDK_DIR)/MacOSX10.3.9.sdk";
				ZERO_LINK = NO;
			};
			name = Debug;
		};
		4FADC24808B4156D00ABE55E /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ARCHS = (
					i386,
					ppc,
					ppc64,
					x86_64,
				);
				GCC_ENABLE_CPP_EXCEPTIONS = NO;
				GCC_ENABLE_CPP_RTTI = NO;
				GCC_ENABLE_FIX_AND_CONTINUE = NO;
				GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
				GCC_OPTIMIZATION_LEVEL = 2;
				GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
				GCC_VERSION_i386 = 4.0;
				GCC_VERSION_ppc = 3.3;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				MACOSX_DEPLOYMENT_TARGET = 10.5;
				"MACOSX_DEPLOYMENT_TARGET[arch=i386]" = 10.4;
				"MACOSX_DEPLOYMENT_TARGET[arch=ppc]" = 10.2;
				MACOSX_DEPLOYMENT_TARGET_i386 = 10.4;
				MACOSX_DEPLOYMENT_TARGET_ppc = 10.2;
				PREBINDING = NO;
				SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk";
				"SDKROOT[arch=i386]" = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk";
				"SDKROOT[arch=ppc]" = "$(DEVELOPER_SDK_DIR)/MacOSX10.3.9.sdk";
				SDKROOT_i386 = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk";
				SDKROOT_ppc = "$(DEVELOPER_SDK_DIR)/MacOSX10.3.9.sdk";
				ZERO_LINK = NO;
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		4FADC24208B4156D00ABE55E /* Build configuration list for PBXNativeTarget "libpng" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				4FADC24308B4156D00ABE55E /* Debug */,
				4FADC24408B4156D00ABE55E /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		4FADC24608B4156D00ABE55E /* Build configuration list for PBXProject "libpng" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				4FADC24708B4156D00ABE55E /* Debug */,
				4FADC24808B4156D00ABE55E /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}
