diff options
author | Zeno Albisser <zeno.albisser@digia.com> | 2013-08-15 21:46:11 +0200 |
---|---|---|
committer | Zeno Albisser <zeno.albisser@digia.com> | 2013-08-15 21:46:11 +0200 |
commit | 679147eead574d186ebf3069647b4c23e8ccace6 (patch) | |
tree | fc247a0ac8ff119f7c8550879ebb6d3dd8d1ff69 /chromium/third_party/pdfsqueeze | |
download | qtwebengine-chromium-679147eead574d186ebf3069647b4c23e8ccace6.tar.gz |
Initial import.
Diffstat (limited to 'chromium/third_party/pdfsqueeze')
-rw-r--r-- | chromium/third_party/pdfsqueeze/ApplyGenericRGB.qfilter | 139 | ||||
-rw-r--r-- | chromium/third_party/pdfsqueeze/COPYING | 202 | ||||
-rw-r--r-- | chromium/third_party/pdfsqueeze/pdfsqueeze.m | 83 | ||||
-rw-r--r-- | chromium/third_party/pdfsqueeze/pdfsqueeze.xcodeproj/project.pbxproj | 213 |
4 files changed, 637 insertions, 0 deletions
diff --git a/chromium/third_party/pdfsqueeze/ApplyGenericRGB.qfilter b/chromium/third_party/pdfsqueeze/ApplyGenericRGB.qfilter new file mode 100644 index 00000000000..c6b08666ecc --- /dev/null +++ b/chromium/third_party/pdfsqueeze/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 + 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 + lQ== + </data> + </array> + </dict> + <key>FilterType</key> + <integer>1</integer> + <key>Name</key> + <string>Apply Generic RGB</string> +</dict> +</plist> diff --git a/chromium/third_party/pdfsqueeze/COPYING b/chromium/third_party/pdfsqueeze/COPYING new file mode 100644 index 00000000000..a95e82aaeb1 --- /dev/null +++ b/chromium/third_party/pdfsqueeze/COPYING @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2007 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.
\ No newline at end of file diff --git a/chromium/third_party/pdfsqueeze/pdfsqueeze.m b/chromium/third_party/pdfsqueeze/pdfsqueeze.m new file mode 100644 index 00000000000..61988b3811d --- /dev/null +++ b/chromium/third_party/pdfsqueeze/pdfsqueeze.m @@ -0,0 +1,83 @@ +// +// 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; + } + NSDictionary *oldAttributes = [pdf documentAttributes]; + NSMutableDictionary *newAttributes = [NSMutableDictionary dictionary]; + NSDate *date = [oldAttributes objectForKey:PDFDocumentCreationDateAttribute]; + if (date) { + [newAttributes setObject:date forKey:PDFDocumentCreationDateAttribute]; + } + date = [oldAttributes objectForKey:PDFDocumentModificationDateAttribute]; + if (date) { + [newAttributes setObject:date forKey:PDFDocumentModificationDateAttribute]; + } + [pdf setDocumentAttributes:newAttributes]; + 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:NSPropertyListImmutable + format:NULL + errorDescription:nil]; + QuartzFilter *filter = [QuartzFilter quartzFilterWithProperties:filterProps]; + return filter; +} diff --git a/chromium/third_party/pdfsqueeze/pdfsqueeze.xcodeproj/project.pbxproj b/chromium/third_party/pdfsqueeze/pdfsqueeze.xcodeproj/project.pbxproj new file mode 100644 index 00000000000..4b847a58f40 --- /dev/null +++ b/chromium/third_party/pdfsqueeze/pdfsqueeze.xcodeproj/project.pbxproj @@ -0,0 +1,213 @@ +// !$*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"; + developmentRegion = English; + hasScannedForEncodings = 1; + knownRegions = ( + en, + ); + 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)/ApplyGenericRGB.qfilter", + ); + name = "Generate ApplyGenericRGB.h"; + outputPaths = ( + "$(BUILD_ROOT)/ApplyGenericRGB.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_64_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 = ""; + }; + name = Debug; + }; + 1DEB927A08733DD40010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PREBINDING = NO; + SDKROOT = ""; + }; + 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 */; +} |