From 3dd5d5b7a66591276067d07fa5c94582cf576afb Mon Sep 17 00:00:00 2001 From: Kornel Date: Sat, 21 Oct 2023 17:26:52 +0100 Subject: [PATCH] Add an Xcode project file --- .gitignore | 1 - pngquant.xcodeproj/project.pbxproj | 263 +++++++++++++++++++++++++++++ 2 files changed, 263 insertions(+), 1 deletion(-) create mode 100644 pngquant.xcodeproj/project.pbxproj diff --git a/.gitignore b/.gitignore index 3d432d82..e6af34ce 100644 --- a/.gitignore +++ b/.gitignore @@ -2,7 +2,6 @@ *.mode1v3 *.o *.lo -*.pbxproj *.pbxuser build DerivedData diff --git a/pngquant.xcodeproj/project.pbxproj b/pngquant.xcodeproj/project.pbxproj new file mode 100644 index 00000000..2bc2cf64 --- /dev/null +++ b/pngquant.xcodeproj/project.pbxproj @@ -0,0 +1,263 @@ +// !$*UTF8*$! +{ + /* generated with cargo-xcode 1.8.2 */ + archiveVersion = 1; + classes = { + }; + objectVersion = 53; + objects = { + +/* Begin PBXBuildFile section */ + CA00FD3D7ED13B3B3D19E325 /* Cargo.toml in Sources */ = {isa = PBXBuildFile; fileRef = CAF971CC4B513EF4668187A5 /* Cargo.toml */; settings = {COMPILER_FLAGS = "--bin 'pngquant' --no-default-features"; }; }; + +/* End PBXBuildFile section */ + +/* Begin PBXBuildRule section */ + CAF471CC4B51AC6C1400ACA8 /* PBXBuildRule */ = { + isa = PBXBuildRule; + compilerSpec = com.apple.compilers.proxy.script; + dependencyFile = "$(DERIVED_FILE_DIR)/$(CARGO_XCODE_TARGET_ARCH)-$(EXECUTABLE_NAME).d"; + filePatterns = "*/Cargo.toml"; + fileType = pattern.proxy; + inputFiles = ( + ); + isEditable = 0; + name = "Cargo project build"; + outputFiles = ( + "$(OBJECT_FILE_DIR)/$(CARGO_XCODE_TARGET_ARCH)-$(EXECUTABLE_NAME)", + ); + script = "# generated with cargo-xcode 1.8.2\nset -xeu;\nexport PATH=\"$HOME/.cargo/bin:$PATH:/usr/local/bin:/opt/homebrew/bin\";\n# don't use ios/watchos linker for build scripts and proc macros\nexport CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=/usr/bin/ld\nexport CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=/usr/bin/ld\n\nif [ \"${IS_MACCATALYST-NO}\" = YES ]; then\n CARGO_XCODE_TARGET_OS=ios-macabi\nfi\nCARGO_XCODE_TARGET_TRIPLE=\"${CARGO_XCODE_TARGET_ARCH}-apple-${CARGO_XCODE_TARGET_OS}\"\n\nif [ \"$CARGO_XCODE_BUILD_PROFILE\" == release ]; then\n OTHER_INPUT_FILE_FLAGS=\"${OTHER_INPUT_FILE_FLAGS} --release\"\nfi\n\nif [ \"$ACTION\" = clean ]; then\n cargo clean --verbose --manifest-path=\"$SCRIPT_INPUT_FILE\" ${OTHER_INPUT_FILE_FLAGS} --target=\"${CARGO_XCODE_TARGET_TRIPLE}\";\n rm -f \"$SCRIPT_OUTPUT_FILE_0\"\n exit 0\nfi\ncargo build --verbose --manifest-path=\"$SCRIPT_INPUT_FILE\" --features=\"${CARGO_XCODE_FEATURES:-}\" ${OTHER_INPUT_FILE_FLAGS} --target=\"${CARGO_XCODE_TARGET_TRIPLE}\" || {\n if command -v rustup &> /dev/null; then\n if ! rustup target list --installed | grep -Eq \"${CARGO_XCODE_TARGET_TRIPLE}\"; then\n echo >&2 \"warning: this build requires rustup toolchain for $CARGO_XCODE_TARGET_TRIPLE, but it isn't installed (will try rustup next)\"\n rustup target add \"${CARGO_XCODE_TARGET_TRIPLE}\" || echo >&2 \"warning: can't install $CARGO_XCODE_TARGET_TRIPLE\"\n fi\n fi\n echo >&2 \"error: cargo build failed\"; exit 1; }\n\n# it's too hard to explain Cargo's actual exe path to Xcode build graph, so hardlink to a known-good path instead\nBUILT_SRC=\"${CARGO_TARGET_DIR}/${CARGO_XCODE_TARGET_TRIPLE}/${CARGO_XCODE_BUILD_PROFILE}/${CARGO_XCODE_CARGO_FILE_NAME}\"\nln -f -- \"$BUILT_SRC\" \"$SCRIPT_OUTPUT_FILE_0\" || { echo >&2 \"can't hardlink $BUILT_SRC to $SCRIPT_OUTPUT_FILE_0\"; exit 1; }\n\n# cargo generates a dep file, but for its own path, so append our rename to it\nDEP_FILE_SRC=\"${CARGO_TARGET_DIR}/${CARGO_XCODE_TARGET_TRIPLE}/${CARGO_XCODE_BUILD_PROFILE}/${CARGO_XCODE_CARGO_DEP_FILE_NAME}\"\nif [ -f \"$DEP_FILE_SRC\" ]; then\n DEP_FILE_DST=\"${DERIVED_FILE_DIR}/${CARGO_XCODE_TARGET_ARCH}-${EXECUTABLE_NAME}.d\"\n cp -f \"$DEP_FILE_SRC\" \"$DEP_FILE_DST\" || { echo >&2 \"can't copy $DEP_FILE_SRC to $DEP_FILE_DST\"; exit 1; }\n\n echo >> \"$DEP_FILE_DST\" \"${SCRIPT_OUTPUT_FILE_0/ /\\\\ /}: ${BUILT_SRC/ /\\\\ /}\"\nfi\n\n# lipo script needs to know all the platform-specific files that have been built\n# archs is in the file name, so that paths don't stay around after archs change\n# must match input for LipoScript\nFILE_LIST=\"${DERIVED_FILE_DIR}/${ARCHS}-${EXECUTABLE_NAME}.xcfilelist\"\ntouch \"$FILE_LIST\"\nif ! grep -Eq \"$SCRIPT_OUTPUT_FILE_0\" \"$FILE_LIST\" ; then\n echo >> \"$FILE_LIST\" \"$SCRIPT_OUTPUT_FILE_0\"\nfi\n\necho \"success: $ACTION of $SCRIPT_OUTPUT_FILE_0 for $CARGO_XCODE_TARGET_TRIPLE\"\n"; + }; +/* End PBXBuildRule section */ + +/* Begin PBXFileReference section */ + CA008FFA42538780035A8A54 /* pngquant */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = pngquant; sourceTree = BUILT_PRODUCTS_DIR; }; + CAF971CC4B513EF4668187A5 /* Cargo.toml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cargo.toml; sourceTree = ""; }; + +/* End PBXFileReference section */ + +/* Begin PBXGroup section */ + CAF071CC4B51D65BC3C892A8 = { + isa = PBXGroup; + children = ( + CAF971CC4B513EF4668187A5 /* Cargo.toml */, + CAF171CC4B5122869D176AE5 /* Products */, + CAF271CC4B5198AF0B5890DB /* Frameworks */, + ); + sourceTree = ""; + }; + CAF171CC4B5122869D176AE5 /* Products */ = { + isa = PBXGroup; + children = ( + CA008FFA42538780035A8A54 /* pngquant */, + ); + name = Products; + sourceTree = ""; + }; + CAF271CC4B5198AF0B5890DB /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + CA008FFA42533B3B3D19E325 /* pngquant-bin */ = { + isa = PBXNativeTarget; + buildConfigurationList = CA00C6FFFF673B3B3D19E325 /* Build configuration list for PBXNativeTarget "pngquant-bin" */; + buildPhases = ( + CA005B305E043B3B3D19E325 /* Sources */, + CAF571CC4B51AF6EBB7F357C /* Universal Binary lipo */, + ); + buildRules = ( + CAF471CC4B51AC6C1400ACA8 /* PBXBuildRule */, + ); + dependencies = ( + ); + name = "pngquant-bin"; + productName = pngquant; + productReference = CA008FFA42538780035A8A54 /* pngquant */; + productType = "com.apple.product-type.tool"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + CAF371CC4B51E04653AD465F /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1500; + TargetAttributes = { + CA008FFA42533B3B3D19E325 = { + CreatedOnToolsVersion = 9.2; + ProvisioningStyle = Automatic; + }; + }; + }; + buildConfigurationList = CAF671CC4B5180E02D6C7F57 /* Build configuration list for PBXProject "pngquant" */; + compatibilityVersion = "Xcode 11.4"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = CAF071CC4B51D65BC3C892A8; + productRefGroup = CAF171CC4B5122869D176AE5 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + CA008FFA42533B3B3D19E325 /* pngquant-bin */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXShellScriptBuildPhase section */ + CAF571CC4B51AF6EBB7F357C /* Universal Binary lipo */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "$(DERIVED_FILE_DIR)/$(ARCHS)-$(EXECUTABLE_NAME).xcfilelist", + ); + name = "Universal Binary lipo"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# generated with cargo-xcode 1.8.2\nset -eux;\ntr '\\n' '\\0' < \"$DERIVED_FILE_DIR/$ARCHS-$EXECUTABLE_NAME.xcfilelist\" | xargs -0 lipo -create -output \"$TARGET_BUILD_DIR/$EXECUTABLE_PATH\"\nif [ ${LD_DYLIB_INSTALL_NAME:+1} ]; then\n install_name_tool -id \"$LD_DYLIB_INSTALL_NAME\" \"$TARGET_BUILD_DIR/$EXECUTABLE_PATH\"\nfi\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + CA005B305E043B3B3D19E325 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + CA00FD3D7ED13B3B3D19E325 /* Cargo.toml in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + CA003B5FE0C83B3B3D19E325 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CARGO_XCODE_CARGO_DEP_FILE_NAME = pngquant.d; + CARGO_XCODE_CARGO_FILE_NAME = pngquant; + + PRODUCT_NAME = pngquant; + SUPPORTED_PLATFORMS = macosx; + + }; + name = Release; + }; + CA009AA08B823B3B3D19E325 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CARGO_XCODE_CARGO_DEP_FILE_NAME = pngquant.d; + CARGO_XCODE_CARGO_FILE_NAME = pngquant; + + PRODUCT_NAME = pngquant; + SUPPORTED_PLATFORMS = macosx; + + }; + name = Debug; + }; + + CAF76179D3823CC16B37690B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ADDITIONAL_SDKS = macosx; + ALWAYS_SEARCH_USER_PATHS = NO; + CARGO_TARGET_DIR = "$(PROJECT_TEMP_DIR)/cargo_target"; + CARGO_XCODE_BUILD_PROFILE = release; + CARGO_XCODE_FEATURES = "static,cocoa"; + CARGO_XCODE_TARGET_ARCH = "$(CURRENT_ARCH)"; + "CARGO_XCODE_TARGET_ARCH[arch=arm64]" = aarch64; + "CARGO_XCODE_TARGET_ARCH[arch=arm64e]" = aarch64; + "CARGO_XCODE_TARGET_ARCH[arch=i386]" = i686; + "CARGO_XCODE_TARGET_ARCH[arch=x86_64h]" = x86_64; + CARGO_XCODE_TARGET_OS = "$(PLATFORM_NAME)"; + "CARGO_XCODE_TARGET_OS[sdk=appletvos]" = tvos; + "CARGO_XCODE_TARGET_OS[sdk=appletvsimulator]" = tvos; + "CARGO_XCODE_TARGET_OS[sdk=iphoneos]" = ios; + "CARGO_XCODE_TARGET_OS[sdk=iphonesimulator]" = "ios-sim"; + "CARGO_XCODE_TARGET_OS[sdk=iphonesimulator][arch=x86_64]" = ios; + "CARGO_XCODE_TARGET_OS[sdk=macosx*]" = darwin; + "CARGO_XCODE_TARGET_OS[sdk=watchsimulator]" = "watchos-sim"; + CURRENT_PROJECT_VERSION = 3.0; + MARKETING_VERSION = 3.0.2; + PRODUCT_NAME = pngquant; + RUSTUP_TOOLCHAIN = ""; + SDKROOT = macosx; + SUPPORTS_MACCATALYST = YES; + }; + name = Release; + }; + CAF86179D382228BE02872F8 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ADDITIONAL_SDKS = macosx; + ALWAYS_SEARCH_USER_PATHS = NO; + CARGO_TARGET_DIR = "$(PROJECT_TEMP_DIR)/cargo_target"; + CARGO_XCODE_BUILD_PROFILE = debug; + CARGO_XCODE_FEATURES = "static,cocoa"; + CARGO_XCODE_TARGET_ARCH = "$(CURRENT_ARCH)"; + "CARGO_XCODE_TARGET_ARCH[arch=arm64]" = aarch64; + "CARGO_XCODE_TARGET_ARCH[arch=arm64e]" = aarch64; + "CARGO_XCODE_TARGET_ARCH[arch=i386]" = i686; + "CARGO_XCODE_TARGET_ARCH[arch=x86_64h]" = x86_64; + CARGO_XCODE_TARGET_OS = "$(PLATFORM_NAME)"; + "CARGO_XCODE_TARGET_OS[sdk=appletvos]" = tvos; + "CARGO_XCODE_TARGET_OS[sdk=appletvsimulator]" = tvos; + "CARGO_XCODE_TARGET_OS[sdk=iphoneos]" = ios; + "CARGO_XCODE_TARGET_OS[sdk=iphonesimulator]" = "ios-sim"; + "CARGO_XCODE_TARGET_OS[sdk=iphonesimulator][arch=x86_64]" = ios; + "CARGO_XCODE_TARGET_OS[sdk=macosx*]" = darwin; + "CARGO_XCODE_TARGET_OS[sdk=watchsimulator]" = "watchos-sim"; + CURRENT_PROJECT_VERSION = 3.0; + MARKETING_VERSION = 3.0.2; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = pngquant; + RUSTUP_TOOLCHAIN = ""; + SDKROOT = macosx; + SUPPORTS_MACCATALYST = YES; + }; + name = Debug; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + CA00C6FFFF673B3B3D19E325 /* Build configuration list for PBXNativeTarget "pngquant-bin" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + CA003B5FE0C83B3B3D19E325 /* Release */, + CA009AA08B823B3B3D19E325 /* Debug */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + + CAF671CC4B5180E02D6C7F57 /* Build configuration list for PBXProject "pngquant" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + CAF76179D3823CC16B37690B /* Release */, + CAF86179D382228BE02872F8 /* Debug */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = CAF371CC4B51E04653AD465F /* Project object */; +}