initial check in



git-svn-id: http://pdfsqueeze.googlecode.com/svn/trunk@2 d2487286-fd82-11dd-b556-9305e745af9e
diff --git a/ApplyGenericRGB.qfilter b/ApplyGenericRGB.qfilter
new file mode 100644
index 0000000..c6b0866
--- /dev/null
+++ b/ApplyGenericRGB.qfilter
@@ -0,0 +1,139 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>Domains</key>
+	<dict>
+		<key>Applications</key>
+		<true/>
+		<key>Printing</key>
+		<true/>
+	</dict>
+	<key>FilterData</key>
+	<dict>
+		<key>ColorSettings</key>
+		<dict>
+			<key>DocumentColorSettings</key>
+			<dict>
+				<key>TargetColorSpace</key>
+				<integer>0</integer>
+			</dict>
+		</dict>
+		<key>FilterProfileArray</key>
+		<array>
+			<data>
+			AAAFsGFwcGwCIAAAbW50clJHQiBYWVogB9IABQANAAwAAAAAYWNz
+			cEFQUEwAAAAAYXBwbAAAAAAAAAAAAAAAAAAAAAAAAPbWAAEAAAAA
+			0y1hcHBsS1ZP0uM2Ga2OskvYGL1VAQAAAAAAAAAAAAAAAAAAAAAA
+			AAAAAAAAAAAAAAAAAAANclhZWgAAASAAAAAUZ1hZWgAAATQAAAAU
+			YlhZWgAAAUgAAAAUd3RwdAAAAVwAAAAUY2hhZAAAAXAAAAAsclRS
+			QwAAAZwAAAAOZ1RSQwAAAZwAAAAOYlRSQwAAAZwAAAAOZGVzYwAA
+			BUAAAABvY3BydAAAAhQAAAA4dmNndAAAAawAAAAwbmRpbgAAAdwA
+			AAA4ZHNjbQAAAkwAAALyWFlaIAAAAAAAAHRLAAA+HQAAA8tYWVog
+			AAAAAAAAWnMAAKymAAAXJlhZWiAAAAAAAAAoGAAAFVcAALgzWFla
+			IAAAAAAAAPNSAAEAAAABFs9zZjMyAAAAAAABDEIAAAXe///zJgAA
+			B5IAAP2R///7ov///aMAAAPcAADAbGN1cnYAAAAAAAAAAQHNAAB2
+			Y2d0AAAAAAAAAAEAALhSAAAAAAABAAAAALhSAAAAAAABAAAAALhS
+			AAAAAAABAABuZGluAAAAAAAAADgAAKFIAABXCgAAS4UAAJrhAAAn
+			rgAAE7YAAFANAABUOQACgAAAAoAAAAKAAHRleHQAAAAAQ29weXJp
+			Z2h0IDIwMDcgQXBwbGUgSW5jLiwgYWxsIHJpZ2h0cyByZXNlcnZl
+			ZC4AbWx1YwAAAAAAAAARAAAADGVuVVMAAAAmAAACfmVzRVMAAAAm
+			AAABgmRhREsAAAAuAAAB6mRlREUAAAAsAAABqGZpRkkAAAAoAAAA
+			3GZyRlUAAAAoAAABKml0SVQAAAAoAAACVm5sTkwAAAAoAAACGG5i
+			Tk8AAAAmAAABBHB0QlIAAAAmAAABgnN2U0UAAAAmAAABBGphSlAA
+			AAAaAAABUmtvS1IAAAAWAAACQHpoVFcAAAAWAAABbHpoQ04AAAAW
+			AAAB1HJ1UlUAAAAiAAACpHBsUEwAAAAsAAACxgBZAGwAZQBpAG4A
+			ZQBuACAAUgBHAEIALQBwAHIAbwBmAGkAaQBsAGkARwBlAG4AZQBy
+			AGkAcwBrACAAUgBHAEIALQBwAHIAbwBmAGkAbABQAHIAbwBmAGkA
+			bAAgAEcA6QBuAOkAcgBpAHEAdQBlACAAUgBWAEJOAIIsACAAUgBH
+			AEIAIDDXMO0w1TChMKQw65AadSgAIABSAEcAQgAggnJfaWPPj/AA
+			UABlAHIAZgBpAGwAIABSAEcAQgAgAEcAZQBuAOkAcgBpAGMAbwBB
+			AGwAbABnAGUAbQBlAGkAbgBlAHMAIABSAEcAQgAtAFAAcgBvAGYA
+			aQBsZm6QGgAgAFIARwBCACBjz4/wZYdO9gBHAGUAbgBlAHIAZQBs
+			ACAAUgBHAEIALQBiAGUAcwBrAHIAaQB2AGUAbABzAGUAQQBsAGcA
+			ZQBtAGUAZQBuACAAUgBHAEIALQBwAHIAbwBmAGkAZQBsx3y8GAAg
+			AFIARwBCACDVBLhc0wzHfABQAHIAbwBmAGkAbABvACAAUgBHAEIA
+			IABHAGUAbgBlAHIAaQBjAG8ARwBlAG4AZQByAGkAYwAgAFIARwBC
+			ACAAUAByAG8AZgBpAGwAZQQeBDEESQQ4BDkAIAQ/BEAEPgREBDgE
+			OwRMACAAUgBHAEIAVQBuAGkAdwBlAHIAcwBhAGwAbgB5ACAAcABy
+			AG8AZgBpAGwAIABSAEcAQgAAZGVzYwAAAAAAAAAUR2VuZXJpYyBS
+			R0IgUHJvZmlsZQAAAAAAAAAAAAAAFEdlbmVyaWMgUkdCIFByb2Zp
+			bGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+			AAAAAAAAAAAAAAAAAHiFL6AQpiEcKeJulRTevZIBAAAAIIYaAJjZ
+			/78LVr2SMMAQANVNvJK42f+/MU68kniFL6AQhBoAKeJulTYAAAAB
+			AAAAEGoxGvuTe5V6fXeV6/54lRilYaA43P+/BgB5laAcoSIAAAAA
+			AAAAAOTg/78BBAAAHNz/vwEAAAACAAAAAQAAAFDa/78Q2v+/EAAA
+			ABAAAAAQhBoAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAruD/vx8A
+			AADIHKEiHwAAAKAcoSIAcAUAwK8FAAQAAAABAAAACAAAAAEAAABx
+			Q4SUPuKvIvAcoSKI2/+/iHqElDhwBQCg2v+/KeJulboKb5UBAAAA
+			OQIAADkCAAAEAAAAgG0gHABwBQAAAAQAAwAAABAAAADQ2v+/KeJu
+			lXFDhJRbwS8c4OAvHNjb/7/aS4SUOHAFAOCGzpMQ2/+/0Nr/vxAA
+			AADbAAAA2wAAAAkAAADKEWGglBowoNja/79SxbKWlBowoEwmzpMA
+			AAUAUAAAAABwBQDMcQUAqHEFAINtIBwDAK8iBwAAAD7iryKAwK8i
+			AOCvIuBWoCJI3P+/AgAAANgGBQBgStiTKeJuldVVvZLwfjEarQAA
+			AK0ABAAwAAAA8MsbAJQaMKCUGjCgAAAAAFvBLxwDAAAA4OAvHIDA
+			LxwAcAUAcHIFAKhxBQCgHKEiAACgIgEAAQCgHKEikByhIhAAAACA
+			wK8imNv/v0C9IhxsBQAAVHQaAIxJGgBldHeVQL0iHEC9Ihyo2/+/
+			nnR3lThwBQBAvSIcKeJulYBtIBwAACAcAQAAAIBtIByAbSAcgC0A
+			AYDALxzkVqAioByhIhAAAABgStiTroaElKcWdpWkHKEioByhIljc
+			/7+IeoSUOHAFAKAcoSKALQACgC0AARAAAAAAgBdEKeJulQEAAAAQ
+			HaEiAHAFAEjcAQAAAAAAyPBioBwAAADAVqAiVWKElCAAAAAAcAUA
+			qNz/v7xlhJRAbBkAoByhIljc/7+MBwABoByhIq3c/78BBAAAhEFq
+			kQEAAACgHKEigMCvIgEAAACgHKEirdwCAPAcoSIBAAAAPuKvIkYh
+			ycxEIcnMAgAAACAAAACt3P+/rdz/vz/iryKgoWGgEAAAAdjc/79n
+			8IOUoxyhIgIAAADY3P+/DfKDlDhwBQBkbWFjroaElCEPdpWAFQEB
+			gBUBAkS+IhzV74OUAAAAABwAAAAY3f+/GPCDlABwBQAcAAAAyPBi
+			oHF9b5VAO2KgVLkvoAACAAAcAAAAcFigAQAAAADAr2GgugpvldAc
+			oSIEAAAA2OH/v+MTb5UAcAUAHAAAAABwBQDTwbGhAQAAAAAAAABL
+			OXaVwN3/vwEAAAACAAAACOL/v90Xb5XAgTEaBAAAAAQAAACgoWGg
+			AQAAAMDd/7/Ar2Gg8N3/vxAAAAAEAAAAAwAAAP////8BAAAAAAAA
+			AEI2dpWgoWGgAAAAAPDd/7/Ar2GgJlF2lXBYoCIBAAAAAAAAAKyB
+			MRoAAAAA/////wAAAAAAAAAAQL4iHEA7YqBUuS+gBQAAAAAAAAAA
+			AAAAAQAAAIayzZMQRIMAoCVJoDje/7+ggTEaoCVJoBCEGgDlFs6T
+			4Pa9kgAAAADghs6TcN7/vzDe/78BAAAAcG0YADxmGAAAAAAAAAAA
+			AAAAAAAAAAAAAAAAAAQt1JMELdSTKeJulboKb5UBAAAAAAAAAAjf
+			/78B372S8HcYANDe/7+Q3v+/4N7/vxAAAAAghhoAqN7/vyu2vJIA
+			AAAAAAAAAKje/7+goWGgCwAAADjj/7+ArH6VcBExGkBFFwAAAAAA
+			MkEyQg0AAAAyQTJCcBExGsje/79D6vyRAAAAAP/e/78AAAAABQAA
+			AHARMRrAZi8cCN//v47/RpVwETEaMkEyQv/e/78uACQA0v4vHP/e
+			/78BAAAADAAAAKAAAAAgZy8coAAAADF8hAAMAAAAAQAAAGjf/7+L
+			AEeVoxyhIgoAAABI3/+/CQAAADhwBQBsAMjIqHEFAIh6hJRwWxkA
+			CAAAACCGGgD8Zi8cAAAAAAEAAACuhoSUAQAAABC/IhwAcAUAdBEB
+			AAAAAACAZi8cIEJHUq6GhJRVYoSUYAAAAABwBQD43/+/vGWElMjw
+			YqBwETEaAQAAAAIAAACwBQAAbHBwYcjwYqB0ETEaIEJHUiBaWViA
+			wC8cAQAAAAAAAABwcwYAsL4iHAEAR5WC5S8cCBYAAAgEAAAGAAAA
+			YAAAANb2AAAAAAEAMXyElNTh/79wETEaeOD/v2fwg5SjHKEiBgAA
+			ACjg/78JAAAAOHAFAIAXAQGocQUAAAAAAHARMRoAgAcAQL4iHIh6
+			hJQAAAAAAAAAAGjg/7+IeoSUAHAFALC+IhyAFgEGHwAAAHBnLxwA
+			cAUAgMAfAAQAAACAvSIcAHAFABC/BAADAAAAEAAAAABwBQDo4P+/
+			cUOElIDlLxzAvSIcyOH/v9pLhJQ4cAUAAgABAEBnLxwiACEA0/4v
+			HHsFAAB7BQAACQAAACAAAABQZwEAYGcvHB8AIADT/i8cVAAAAOjg
+			/78BAAAAAHAFAMxxBQCocQUAhL0iHAQABQCAFwEBhGYvAGfwg5Sj
+			HKEiAQAAABjh/78EAAAA2CsFABAAAAA44f+/GPCDlABwBQAQAAAA
+			OOEEAEAAAAAAAAAAEAAAAFjh/78Y8IOU+8UvHAQAAACA5S8cgMAv
+			HAEAAABAvSIcAAIAABAAAACuAm2REAAAAMFtd5UAAAAAAwAAANBW
+			oCILAAAAYepylcS9IhzAvSIcyOH/v9/rcpWgoWGgAAAAAAS+IhzL
+			6HKVAOKGANBWoCKuhoSUgL0iHAAAIByGEQAAgL0iHIC9IhzsumGg
+			gMAvHAAAAADAvSIcBAAAAEg9GgDI8GKgiHqElMS9IhzAvSIcSOL/
+			v+YXdpU4cAUAwL0iHES9IhwBAAAAwByhIgBwBQBI4gEAAAAAANAc
+			oSLQHKEiAAAAAFVihJQgAAAAAHAFAIji/7+8ZYSUoKFhoAAAAAEA
+			AAAAAAAAAADihgBUSRKggBAAAQ7ocpUAAAAATOqGAIDAryIBAAAA
+			wUBskQDiAgCgHKEiAQBskT7iryK2RiHJpkYhyQIAAAAgAAAAoBwE
+			AIBtIBwxfISU4OAvHDGiIioxoiIqZ/CDlMS9IhwCAAAAuOL/vzIA
+			AAA4cAUAEAAAAKhxBQBxfW+VoxyhIv//////////BZaElAAAAAAA
+			AAAA+OL/v1qWhJQAcAUAoByhItBWoCJAvSIcgL0iHMC9IhwABgAA
+			AERcoABwBQCAbSAcAAAAALETdpWgHKEioKFhoEjj/79TFHaVoByh
+			IiAAAAAgAAAAWEkSoAMAAAAFAAAACwAAAEQAAAABAm2RwB0RAAAA
+			AACuIXaVAAAAAAQAAACuhoSUIPNulQYAAAAAAAAAmOP/v8jzbpUA
+			AAAAEQAAAAwAAAAAAAAAIBkRACw+Tl50TBKg0FagIuy6YaBQZy8c
+			08GxoQIAAACU8GKglPBioCDzbpWC8WuRgG0gHFRJEqC44/+/vt9u
+			lQ==
+			</data>
+		</array>
+	</dict>
+	<key>FilterType</key>
+	<integer>1</integer>
+	<key>Name</key>
+	<string>Apply Generic RGB</string>
+</dict>
+</plist>
diff --git a/pdfsqueeze.m b/pdfsqueeze.m
new file mode 100644
index 0000000..e6a9d27
--- /dev/null
+++ b/pdfsqueeze.m
@@ -0,0 +1,73 @@
+//
+//  pdfsqueeze.m
+//  
+//  Takes PDFs or Adobe Illustrator files and removes extraneous information
+//  and reduces them down to the Generic RGB Profile.
+//  Often useful as part of a build process.
+//  
+//  Copyright 2009 Google Inc.
+//
+//  Licensed under the Apache License, Version 2.0 (the "License"); you may not
+//  use this file except in compliance with the License.  You may obtain a copy
+//  of the License at
+// 
+//  http://www.apache.org/licenses/LICENSE-2.0
+// 
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+//  WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+//  License for the specific language governing permissions and limitations under
+//  the License.
+//
+
+#import <Foundation/Foundation.h>
+#import <Quartz/Quartz.h>
+#import <stdio.h>
+#include "ApplyGenericRGB.h"
+
+static QuartzFilter *GetGenericProfileFilter();
+
+int main (int argc, const char * argv[]) {
+  NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+  if (argc != 3) {
+    fprintf(stderr, "pdfsqueeze <inputFile> <outputFile>\n"
+            "Reduces the size of pdf or Adobe Illustrator files by "
+            "removing extraneous information and applying generic "
+            "rgb profile.\nVersion 1.0\n");
+    return 1;
+  }
+  
+  
+  NSString *inPath = [NSString stringWithUTF8String:argv[1]];
+  NSString *outPath = [NSString stringWithUTF8String:argv[2]];
+  NSURL *inURL = [NSURL fileURLWithPath:inPath];
+  NSURL *outURL = [NSURL fileURLWithPath:outPath];
+  PDFDocument *pdf = [[[PDFDocument alloc] initWithURL:inURL] autorelease];
+  if (!pdf) {
+    fprintf(stderr, "pdfsqueeze:0: error: Unable to open %s\n", [inPath UTF8String]);
+    return 1;
+  }
+  [pdf setDocumentAttributes:[NSDictionary dictionary]];
+  QuartzFilter *filter = GetGenericProfileFilter();
+  NSDictionary *options = [NSDictionary dictionaryWithObject:filter 
+                                                      forKey:@"QuartzFilter"];
+  if (![pdf writeToURL:outURL withOptions:options]) {
+    fprintf(stderr, "pdfsqueeze:0: error: Unable to write to %s\n", [outPath UTF8String]);
+  }
+  [pool drain];
+  return 0;
+}
+
+QuartzFilter *GetGenericProfileFilter() {
+  // Create up our filter from the filter data
+  NSData *data = [NSData dataWithBytesNoCopy:ApplyGenericRGB_qfilter
+                                      length:ApplyGenericRGB_qfilter_len
+                                freeWhenDone:NO];
+  NSDictionary *filterProps 
+    = [NSPropertyListSerialization propertyListFromData:data
+                                       mutabilityOption:kCFPropertyListImmutable
+                                                 format:NULL
+                                       errorDescription:nil];
+  QuartzFilter *filter = [QuartzFilter quartzFilterWithProperties:filterProps];
+  return filter;
+}
diff --git a/pdfsqueeze.xcodeproj/project.pbxproj b/pdfsqueeze.xcodeproj/project.pbxproj
new file mode 100644
index 0000000..a63d924
--- /dev/null
+++ b/pdfsqueeze.xcodeproj/project.pbxproj
@@ -0,0 +1,209 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 45;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		8B67FA1B0F4B5791001FDD77 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8B67FA1A0F4B5791001FDD77 /* Quartz.framework */; };
+		8DD76F9A0486AA7600D96B5E /* pdfsqueeze.m in Sources */ = {isa = PBXBuildFile; fileRef = 08FB7796FE84155DC02AAC07 /* pdfsqueeze.m */; settings = {ATTRIBUTES = (); }; };
+		8DD76F9C0486AA7600D96B5E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB779EFE84155DC02AAC07 /* Foundation.framework */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+		08FB7796FE84155DC02AAC07 /* pdfsqueeze.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = pdfsqueeze.m; sourceTree = "<group>"; };
+		08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
+		8B67FA1A0F4B5791001FDD77 /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = /System/Library/Frameworks/Quartz.framework; sourceTree = "<absolute>"; };
+		8B67FB9F0F4BCCE5001FDD77 /* ApplyGenericRGB.qfilter */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = ApplyGenericRGB.qfilter; sourceTree = "<group>"; };
+		8B67FC7B0F4BD7FE001FDD77 /* ApplyGenericRGB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ApplyGenericRGB.h; path = ../ApplyGenericRGB.h; sourceTree = BUILT_PRODUCTS_DIR; };
+		8DD76FA10486AA7600D96B5E /* pdfsqueeze */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = pdfsqueeze; sourceTree = BUILT_PRODUCTS_DIR; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		8DD76F9B0486AA7600D96B5E /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				8DD76F9C0486AA7600D96B5E /* Foundation.framework in Frameworks */,
+				8B67FA1B0F4B5791001FDD77 /* Quartz.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		08FB7794FE84155DC02AAC07 /* pdfcompress */ = {
+			isa = PBXGroup;
+			children = (
+				08FB7795FE84155DC02AAC07 /* Source */,
+				08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */,
+				1AB674ADFE9D54B511CA2CBB /* Products */,
+			);
+			name = pdfcompress;
+			sourceTree = "<group>";
+		};
+		08FB7795FE84155DC02AAC07 /* Source */ = {
+			isa = PBXGroup;
+			children = (
+				8B67FC7B0F4BD7FE001FDD77 /* ApplyGenericRGB.h */,
+				08FB7796FE84155DC02AAC07 /* pdfsqueeze.m */,
+				8B67FB9F0F4BCCE5001FDD77 /* ApplyGenericRGB.qfilter */,
+			);
+			name = Source;
+			sourceTree = "<group>";
+		};
+		08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */ = {
+			isa = PBXGroup;
+			children = (
+				8B67FA1A0F4B5791001FDD77 /* Quartz.framework */,
+				08FB779EFE84155DC02AAC07 /* Foundation.framework */,
+			);
+			name = "External Frameworks and Libraries";
+			sourceTree = "<group>";
+		};
+		1AB674ADFE9D54B511CA2CBB /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				8DD76FA10486AA7600D96B5E /* pdfsqueeze */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		8DD76F960486AA7600D96B5E /* pdfsqueeze */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "pdfsqueeze" */;
+			buildPhases = (
+				8B67FC3C0F4BD55C001FDD77 /* Generate ApplyGenericRGB.h */,
+				8DD76F990486AA7600D96B5E /* Sources */,
+				8DD76F9B0486AA7600D96B5E /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = pdfsqueeze;
+			productInstallPath = "$(HOME)/bin";
+			productName = pdfcompress;
+			productReference = 8DD76FA10486AA7600D96B5E /* pdfsqueeze */;
+			productType = "com.apple.product-type.tool";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		08FB7793FE84155DC02AAC07 /* Project object */ = {
+			isa = PBXProject;
+			buildConfigurationList = 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "pdfsqueeze" */;
+			compatibilityVersion = "Xcode 3.1";
+			hasScannedForEncodings = 1;
+			mainGroup = 08FB7794FE84155DC02AAC07 /* pdfcompress */;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				8DD76F960486AA7600D96B5E /* pdfsqueeze */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXShellScriptBuildPhase section */
+		8B67FC3C0F4BD55C001FDD77 /* Generate ApplyGenericRGB.h */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+				"$(SRCROOT)/RemoveProfile.qfilter",
+			);
+			name = "Generate ApplyGenericRGB.h";
+			outputPaths = (
+				"$(BUILD_ROOT)/RemoveProfile.h",
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "# Generate our inline filter data\nxxd -i ApplyGenericRGB.qfilter > ${BUILD_ROOT}/ApplyGenericRGB.h";
+		};
+/* End PBXShellScriptBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+		8DD76F990486AA7600D96B5E /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				8DD76F9A0486AA7600D96B5E /* pdfsqueeze.m in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+		1DEB927508733DD40010E9CD /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				HEADER_SEARCH_PATHS = build;
+				PRODUCT_NAME = pdfsqueeze;
+			};
+			name = Debug;
+		};
+		1DEB927608733DD40010E9CD /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				HEADER_SEARCH_PATHS = build;
+				PRODUCT_NAME = pdfsqueeze;
+			};
+			name = Release;
+		};
+		1DEB927908733DD40010E9CD /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+				GCC_C_LANGUAGE_STANDARD = c99;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PREBINDING = NO;
+				SDKROOT = macosx10.5;
+			};
+			name = Debug;
+		};
+		1DEB927A08733DD40010E9CD /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+				GCC_C_LANGUAGE_STANDARD = c99;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				PREBINDING = NO;
+				SDKROOT = macosx10.5;
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "pdfsqueeze" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				1DEB927508733DD40010E9CD /* Debug */,
+				1DEB927608733DD40010E9CD /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "pdfsqueeze" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				1DEB927908733DD40010E9CD /* Debug */,
+				1DEB927A08733DD40010E9CD /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;
+}