diff options
Diffstat (limited to 'platform')
43 files changed, 659 insertions, 13 deletions
diff --git a/platform/iphone/xcode/godot_xcode/data.pck b/platform/iphone/xcode/godot_xcode/data.pck new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/data.pck diff --git a/platform/iphone/xcode/godot_xcode/godot_debug.iphone b/platform/iphone/xcode/godot_xcode/godot_debug.iphone new file mode 100755 index 0000000000..e69de29bb2 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_debug.iphone diff --git a/platform/iphone/xcode/godot_xcode/godot_ios.xcodeproj/project.pbxproj b/platform/iphone/xcode/godot_xcode/godot_ios.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..bdba8488c8 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios.xcodeproj/project.pbxproj @@ -0,0 +1,370 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + D07CD43F1C5D573600B7FB28 /* Default-568h@2x~iphone.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD4331C5D573600B7FB28 /* Default-568h@2x~iphone.png */; }; + D07CD4401C5D573600B7FB28 /* Default-667h.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD4341C5D573600B7FB28 /* Default-667h.png */; }; + D07CD4411C5D573600B7FB28 /* Default-667h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD4351C5D573600B7FB28 /* Default-667h@2x.png */; }; + D07CD4421C5D573600B7FB28 /* Default-736h.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD4361C5D573600B7FB28 /* Default-736h.png */; }; + D07CD4431C5D573600B7FB28 /* Default-736h@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD4371C5D573600B7FB28 /* Default-736h@3x.png */; }; + D07CD4441C5D573600B7FB28 /* Default-Landscape-736h.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD4381C5D573600B7FB28 /* Default-Landscape-736h.png */; }; + D07CD4451C5D573600B7FB28 /* Default-Landscape@2x~ipad.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD4391C5D573600B7FB28 /* Default-Landscape@2x~ipad.png */; }; + D07CD4461C5D573600B7FB28 /* Default-Landscape~ipad.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD43A1C5D573600B7FB28 /* Default-Landscape~ipad.png */; }; + D07CD4471C5D573600B7FB28 /* Default-Portrait@2x~ipad.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD43B1C5D573600B7FB28 /* Default-Portrait@2x~ipad.png */; }; + D07CD4481C5D573600B7FB28 /* Default-Portrait~ipad.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD43C1C5D573600B7FB28 /* Default-Portrait~ipad.png */; }; + D07CD4491C5D573600B7FB28 /* Default@2x~iphone.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD43D1C5D573600B7FB28 /* Default@2x~iphone.png */; }; + D07CD44A1C5D573600B7FB28 /* Default~iphone.png in Resources */ = {isa = PBXBuildFile; fileRef = D07CD43E1C5D573600B7FB28 /* Default~iphone.png */; }; + D07CD44E1C5D589C00B7FB28 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D07CD44D1C5D589C00B7FB28 /* Images.xcassets */; }; + D0BCFE3818AEBDA2004A7AAE /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D0BCFE3718AEBDA2004A7AAE /* Foundation.framework */; }; + D0BCFE3A18AEBDA2004A7AAE /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D0BCFE3918AEBDA2004A7AAE /* CoreGraphics.framework */; }; + D0BCFE3C18AEBDA2004A7AAE /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D0BCFE3B18AEBDA2004A7AAE /* UIKit.framework */; }; + D0BCFE3E18AEBDA2004A7AAE /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D0BCFE3D18AEBDA2004A7AAE /* GLKit.framework */; }; + D0BCFE4018AEBDA2004A7AAE /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D0BCFE3F18AEBDA2004A7AAE /* OpenGLES.framework */; }; + D0BCFE4618AEBDA2004A7AAE /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = D0BCFE4418AEBDA2004A7AAE /* InfoPlist.strings */; }; + D0BCFE7818AEBFEB004A7AAE /* data.pck in Resources */ = {isa = PBXBuildFile; fileRef = D0BCFE7718AEBFEB004A7AAE /* data.pck */; }; + D0BCFE7A18AEC06A004A7AAE /* godot_opt.iphone in Resources */ = {isa = PBXBuildFile; fileRef = D0BCFE7918AEC06A004A7AAE /* godot_opt.iphone */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + D07CD4331C5D573600B7FB28 /* Default-568h@2x~iphone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x~iphone.png"; sourceTree = "<group>"; }; + D07CD4341C5D573600B7FB28 /* Default-667h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-667h.png"; sourceTree = "<group>"; }; + D07CD4351C5D573600B7FB28 /* Default-667h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-667h@2x.png"; sourceTree = "<group>"; }; + D07CD4361C5D573600B7FB28 /* Default-736h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-736h.png"; sourceTree = "<group>"; }; + D07CD4371C5D573600B7FB28 /* Default-736h@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-736h@3x.png"; sourceTree = "<group>"; }; + D07CD4381C5D573600B7FB28 /* Default-Landscape-736h.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Landscape-736h.png"; sourceTree = "<group>"; }; + D07CD4391C5D573600B7FB28 /* Default-Landscape@2x~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Landscape@2x~ipad.png"; sourceTree = "<group>"; }; + D07CD43A1C5D573600B7FB28 /* Default-Landscape~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Landscape~ipad.png"; sourceTree = "<group>"; }; + D07CD43B1C5D573600B7FB28 /* Default-Portrait@2x~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Portrait@2x~ipad.png"; sourceTree = "<group>"; }; + D07CD43C1C5D573600B7FB28 /* Default-Portrait~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-Portrait~ipad.png"; sourceTree = "<group>"; }; + D07CD43D1C5D573600B7FB28 /* Default@2x~iphone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x~iphone.png"; sourceTree = "<group>"; }; + D07CD43E1C5D573600B7FB28 /* Default~iphone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default~iphone.png"; sourceTree = "<group>"; }; + D07CD44D1C5D589C00B7FB28 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; }; + D0BCFE3418AEBDA2004A7AAE /* godot_ios.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = godot_ios.app; sourceTree = BUILT_PRODUCTS_DIR; }; + D0BCFE3718AEBDA2004A7AAE /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + D0BCFE3918AEBDA2004A7AAE /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; + D0BCFE3B18AEBDA2004A7AAE /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + D0BCFE3D18AEBDA2004A7AAE /* GLKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLKit.framework; path = System/Library/Frameworks/GLKit.framework; sourceTree = SDKROOT; }; + D0BCFE3F18AEBDA2004A7AAE /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; + D0BCFE4318AEBDA2004A7AAE /* godot_ios-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "godot_ios-Info.plist"; sourceTree = "<group>"; }; + D0BCFE4518AEBDA2004A7AAE /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; }; + D0BCFE4918AEBDA2004A7AAE /* godot_ios-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "godot_ios-Prefix.pch"; sourceTree = "<group>"; }; + D0BCFE6118AEBDA3004A7AAE /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; + D0BCFE7718AEBFEB004A7AAE /* data.pck */ = {isa = PBXFileReference; lastKnownFileType = text; path = data.pck; sourceTree = "<group>"; }; + D0BCFE7918AEC06A004A7AAE /* godot_opt.iphone */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; path = godot_opt.iphone; sourceTree = "<group>"; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + D0BCFE3118AEBDA2004A7AAE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + D0BCFE4018AEBDA2004A7AAE /* OpenGLES.framework in Frameworks */, + D0BCFE3A18AEBDA2004A7AAE /* CoreGraphics.framework in Frameworks */, + D0BCFE3C18AEBDA2004A7AAE /* UIKit.framework in Frameworks */, + D0BCFE3E18AEBDA2004A7AAE /* GLKit.framework in Frameworks */, + D0BCFE3818AEBDA2004A7AAE /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + D0BCFE2B18AEBDA2004A7AAE = { + isa = PBXGroup; + children = ( + D0BCFE7918AEC06A004A7AAE /* godot_opt.iphone */, + D0BCFE7718AEBFEB004A7AAE /* data.pck */, + D0BCFE4118AEBDA2004A7AAE /* godot_ios */, + D0BCFE3618AEBDA2004A7AAE /* Frameworks */, + D0BCFE3518AEBDA2004A7AAE /* Products */, + ); + sourceTree = "<group>"; + }; + D0BCFE3518AEBDA2004A7AAE /* Products */ = { + isa = PBXGroup; + children = ( + D0BCFE3418AEBDA2004A7AAE /* godot_ios.app */, + ); + name = Products; + sourceTree = "<group>"; + }; + D0BCFE3618AEBDA2004A7AAE /* Frameworks */ = { + isa = PBXGroup; + children = ( + D0BCFE3718AEBDA2004A7AAE /* Foundation.framework */, + D0BCFE3918AEBDA2004A7AAE /* CoreGraphics.framework */, + D0BCFE3B18AEBDA2004A7AAE /* UIKit.framework */, + D0BCFE3D18AEBDA2004A7AAE /* GLKit.framework */, + D0BCFE3F18AEBDA2004A7AAE /* OpenGLES.framework */, + D0BCFE6118AEBDA3004A7AAE /* XCTest.framework */, + ); + name = Frameworks; + sourceTree = "<group>"; + }; + D0BCFE4118AEBDA2004A7AAE /* godot_ios */ = { + isa = PBXGroup; + children = ( + D07CD4331C5D573600B7FB28 /* Default-568h@2x~iphone.png */, + D07CD4341C5D573600B7FB28 /* Default-667h.png */, + D07CD4351C5D573600B7FB28 /* Default-667h@2x.png */, + D07CD4361C5D573600B7FB28 /* Default-736h.png */, + D07CD4371C5D573600B7FB28 /* Default-736h@3x.png */, + D07CD4381C5D573600B7FB28 /* Default-Landscape-736h.png */, + D07CD4391C5D573600B7FB28 /* Default-Landscape@2x~ipad.png */, + D07CD43A1C5D573600B7FB28 /* Default-Landscape~ipad.png */, + D07CD43B1C5D573600B7FB28 /* Default-Portrait@2x~ipad.png */, + D07CD43C1C5D573600B7FB28 /* Default-Portrait~ipad.png */, + D07CD43D1C5D573600B7FB28 /* Default@2x~iphone.png */, + D07CD43E1C5D573600B7FB28 /* Default~iphone.png */, + D07CD44D1C5D589C00B7FB28 /* Images.xcassets */, + D0BCFE4218AEBDA2004A7AAE /* Supporting Files */, + ); + path = godot_ios; + sourceTree = "<group>"; + }; + D0BCFE4218AEBDA2004A7AAE /* Supporting Files */ = { + isa = PBXGroup; + children = ( + D0BCFE4318AEBDA2004A7AAE /* godot_ios-Info.plist */, + D0BCFE4418AEBDA2004A7AAE /* InfoPlist.strings */, + D0BCFE4918AEBDA2004A7AAE /* godot_ios-Prefix.pch */, + ); + name = "Supporting Files"; + sourceTree = "<group>"; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + D0BCFE3318AEBDA2004A7AAE /* godot_ios */ = { + isa = PBXNativeTarget; + buildConfigurationList = D0BCFE7118AEBDA3004A7AAE /* Build configuration list for PBXNativeTarget "godot_ios" */; + buildPhases = ( + D0BCFE3018AEBDA2004A7AAE /* Sources */, + D0BCFE3118AEBDA2004A7AAE /* Frameworks */, + D0BCFE3218AEBDA2004A7AAE /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = godot_ios; + productName = godot_ios; + productReference = D0BCFE3418AEBDA2004A7AAE /* godot_ios.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + D0BCFE2C18AEBDA2004A7AAE /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0500; + ORGANIZATIONNAME = GodotEngine; + }; + buildConfigurationList = D0BCFE2F18AEBDA2004A7AAE /* Build configuration list for PBXProject "godot_ios" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = D0BCFE2B18AEBDA2004A7AAE; + productRefGroup = D0BCFE3518AEBDA2004A7AAE /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D0BCFE3318AEBDA2004A7AAE /* godot_ios */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + D0BCFE3218AEBDA2004A7AAE /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D07CD4471C5D573600B7FB28 /* Default-Portrait@2x~ipad.png in Resources */, + D07CD44E1C5D589C00B7FB28 /* Images.xcassets in Resources */, + D0BCFE7818AEBFEB004A7AAE /* data.pck in Resources */, + D07CD4461C5D573600B7FB28 /* Default-Landscape~ipad.png in Resources */, + D07CD4411C5D573600B7FB28 /* Default-667h@2x.png in Resources */, + D07CD4401C5D573600B7FB28 /* Default-667h.png in Resources */, + D07CD4431C5D573600B7FB28 /* Default-736h@3x.png in Resources */, + D07CD43F1C5D573600B7FB28 /* Default-568h@2x~iphone.png in Resources */, + D07CD4451C5D573600B7FB28 /* Default-Landscape@2x~ipad.png in Resources */, + D07CD44A1C5D573600B7FB28 /* Default~iphone.png in Resources */, + D07CD4491C5D573600B7FB28 /* Default@2x~iphone.png in Resources */, + D07CD4441C5D573600B7FB28 /* Default-Landscape-736h.png in Resources */, + D07CD4421C5D573600B7FB28 /* Default-736h.png in Resources */, + D0BCFE4618AEBDA2004A7AAE /* InfoPlist.strings in Resources */, + D0BCFE7A18AEC06A004A7AAE /* godot_opt.iphone in Resources */, + D07CD4481C5D573600B7FB28 /* Default-Portrait~ipad.png in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + D0BCFE3018AEBDA2004A7AAE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + D0BCFE4418AEBDA2004A7AAE /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + D0BCFE4518AEBDA2004A7AAE /* en */, + ); + name = InfoPlist.strings; + sourceTree = "<group>"; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + D0BCFE6F18AEBDA3004A7AAE /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; + 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__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + 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; + IPHONEOS_DEPLOYMENT_TARGET = 7.0; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + D0BCFE7018AEBDA3004A7AAE /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; + 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__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = YES; + ENABLE_NS_ASSERTIONS = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + 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; + IPHONEOS_DEPLOYMENT_TARGET = 7.0; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + D0BCFE7218AEBDA3004A7AAE /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD)"; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)"; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "godot_ios/godot_ios-Prefix.pch"; + INFOPLIST_FILE = "godot_ios/godot_ios-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 6.0; + PRODUCT_BUNDLE_IDENTIFIER = org.godotengine.game.ios; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALID_ARCHS = "armv7 armv7s"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + D0BCFE7318AEBDA3004A7AAE /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD)"; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "iPhone Distribution: Ariel Manzur (BYC57PA2Q5)"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)"; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "godot_ios/godot_ios-Prefix.pch"; + INFOPLIST_FILE = "godot_ios/godot_ios-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 6.0; + PRODUCT_BUNDLE_IDENTIFIER = org.godotengine.game.ios; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALID_ARCHS = "armv7 armv7s"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + D0BCFE2F18AEBDA2004A7AAE /* Build configuration list for PBXProject "godot_ios" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D0BCFE6F18AEBDA3004A7AAE /* Debug */, + D0BCFE7018AEBDA3004A7AAE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D0BCFE7118AEBDA3004A7AAE /* Build configuration list for PBXNativeTarget "godot_ios" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D0BCFE7218AEBDA3004A7AAE /* Debug */, + D0BCFE7318AEBDA3004A7AAE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = D0BCFE2C18AEBDA2004A7AAE /* Project object */; +} diff --git a/platform/iphone/xcode/godot_xcode/godot_ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/platform/iphone/xcode/godot_xcode/godot_ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000000..3c9ba38bbe --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Workspace + version = "1.0"> + <FileRef + location = "self:godot_ios.xcodeproj"> + </FileRef> +</Workspace> diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-568h@2x~iphone.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-568h@2x~iphone.png Binary files differnew file mode 100644 index 0000000000..1341174454 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-568h@2x~iphone.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-667h.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-667h.png Binary files differnew file mode 100644 index 0000000000..c480d2e3c0 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-667h.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-667h@2x.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-667h@2x.png Binary files differnew file mode 100644 index 0000000000..3cc1dfa290 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-667h@2x.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-736h.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-736h.png Binary files differnew file mode 100644 index 0000000000..813d689162 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-736h.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-736h@3x.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-736h@3x.png Binary files differnew file mode 100644 index 0000000000..7707005e76 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-736h@3x.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape-736h.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape-736h.png Binary files differnew file mode 100644 index 0000000000..b02873323e --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape-736h.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape@2x~ipad.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape@2x~ipad.png Binary files differnew file mode 100644 index 0000000000..d86c4a2510 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape@2x~ipad.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape~ipad.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape~ipad.png Binary files differnew file mode 100644 index 0000000000..e4f6cef02b --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Landscape~ipad.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-Portrait@2x~ipad.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Portrait@2x~ipad.png Binary files differnew file mode 100644 index 0000000000..f306652a31 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Portrait@2x~ipad.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default-Portrait~ipad.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Portrait~ipad.png Binary files differnew file mode 100644 index 0000000000..71a16db6df --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default-Portrait~ipad.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default@2x~iphone.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default@2x~iphone.png Binary files differnew file mode 100644 index 0000000000..5305cb9bdb --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default@2x~iphone.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Default~iphone.png b/platform/iphone/xcode/godot_xcode/godot_ios/Default~iphone.png Binary files differnew file mode 100644 index 0000000000..91c62d1e43 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Default~iphone.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Contents.json b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000000..a458b67873 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,128 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "1x", + "filename": "Icon-29.png", + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x", + "filename": "Icon-58.png", + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x", + "filename": "icon-87.png", + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x", + "filename": "Icon-80.png", + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x", + "filename": "Icon-120.png", + }, + { + "idiom" : "iphone", + "size" : "57x57", + "scale" : "1x", + "filename": "Icon-57.png", + }, + { + "idiom" : "iphone", + "size" : "57x57", + "scale" : "2x", + "filename": "Icon-114.png", + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x", + "filename": "Icon-120.png", + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x", + "filename": "Icon-180.png", + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x", + "filename": "Icon-29.png", + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x", + "filename": "Icon-58.png", + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x", + "filename": "Icon-40.png", + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x", + "filename": "Icon-80.png", + }, + { + "idiom" : "ipad", + "size" : "50x50", + "scale" : "1x", + "filename": "Icon-50.png", + }, + { + "idiom" : "ipad", + "size" : "50x50", + "scale" : "2x", + "filename": "Icon-100.png", + }, + { + "idiom" : "ipad", + "size" : "72x72", + "scale" : "1x", + "filename": "Icon-72.png", + }, + { + "idiom" : "ipad", + "size" : "72x72", + "scale" : "2x", + "filename": "Icon-144.png", + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-76.png", + "scale" : "1x", + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x", + "filename": "Icon-152.png", + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x", + "filename": "icon-167.png", + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-100.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-100.png Binary files differnew file mode 100644 index 0000000000..f9dca1ab57 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-100.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-114.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-114.png Binary files differnew file mode 100644 index 0000000000..e7f9bd7388 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-114.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-120.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-120.png Binary files differnew file mode 100644 index 0000000000..4faa0f28e2 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-120.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-144.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-144.png Binary files differnew file mode 100644 index 0000000000..1c4cb51d56 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-144.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-152.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-152.png Binary files differnew file mode 100644 index 0000000000..e99b11c519 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-152.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-180.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-180.png Binary files differnew file mode 100644 index 0000000000..3edbcadfc5 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-180.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-29.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-29.png Binary files differnew file mode 100644 index 0000000000..0ae5893203 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-29.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-40.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-40.png Binary files differnew file mode 100644 index 0000000000..bb4ffa70ad --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-40.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-50.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-50.png Binary files differnew file mode 100644 index 0000000000..7a4b7107e7 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-50.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-57.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-57.png Binary files differnew file mode 100644 index 0000000000..b00bd79091 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-57.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-58.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-58.png Binary files differnew file mode 100644 index 0000000000..46335efdf6 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-58.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-60.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-60.png Binary files differnew file mode 100644 index 0000000000..2c9c2b61dc --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-60.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-72.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-72.png Binary files differnew file mode 100644 index 0000000000..d711958ef1 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-72.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-76.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-76.png Binary files differnew file mode 100644 index 0000000000..464e7e7289 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-76.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-80.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-80.png Binary files differnew file mode 100644 index 0000000000..1151bc6b4b --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/Icon-80.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/icon-167.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/icon-167.png Binary files differnew file mode 100644 index 0000000000..487c8326be --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/icon-167.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/icon-87.png b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/icon-87.png Binary files differnew file mode 100644 index 0000000000..e54cee23a6 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/icon-87.png diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/sizes b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/sizes new file mode 100644 index 0000000000..e328a62cb6 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/Images.xcassets/AppIcon.appiconset/sizes @@ -0,0 +1,17 @@ +100 +114 +120 +144 +152 +167 +180 +29 +40 +50 +57 +58 +60 +72 +76 +80 +87 diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/en.lproj/InfoPlist.strings b/platform/iphone/xcode/godot_xcode/godot_ios/en.lproj/InfoPlist.strings new file mode 100644 index 0000000000..477b28ff8f --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/godot_ios-Info.plist b/platform/iphone/xcode/godot_xcode/godot_ios/godot_ios-Info.plist new file mode 100644 index 0000000000..f97b0fca36 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/godot_ios-Info.plist @@ -0,0 +1,50 @@ +<?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>CFBundleDevelopmentRegion</key> + <string>en</string> + <key>CFBundleDisplayName</key> + <string>Insert Name Here</string> + <key>CFBundleExecutable</key> + <string>godot_opt.iphone</string> + <key>CFBundleIcons</key> + <dict/> + <key>CFBundleIcons~ipad</key> + <dict/> + <key>CFBundleIdentifier</key> + <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>${PRODUCT_NAME}</string> + <key>CFBundlePackageType</key> + <string>APPL</string> + <key>CFBundleShortVersionString</key> + <string>1.0</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1.0</string> + <key>LSRequiresIPhoneOS</key> + <true/> + <key>UIRequiredDeviceCapabilities</key> + <array> + <string>armv7</string> + </array> + <key>UIRequiresFullScreen</key> + <true/> + <key>UIStatusBarHidden</key> + <true/> + <key>UISupportedInterfaceOrientations</key> + <array> + <string>UIInterfaceOrientationLandscapeLeft</string> + <string>UIInterfaceOrientationLandscapeRight</string> + </array> + <key>UISupportedInterfaceOrientations~ipad</key> + <array> + <string>UIInterfaceOrientationLandscapeLeft</string> + <string>UIInterfaceOrientationLandscapeRight</string> + </array> +</dict> +</plist> diff --git a/platform/iphone/xcode/godot_xcode/godot_ios/main.m b/platform/iphone/xcode/godot_xcode/godot_ios/main.m new file mode 100644 index 0000000000..3e4ea5e129 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_ios/main.m @@ -0,0 +1,39 @@ +/*************************************************************************/ +/* main.m */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* http://www.godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ +/* */ +/* Permission is hereby granted, free of charge, to any person obtaining */ +/* a copy of this software and associated documentation files (the */ +/* "Software"), to deal in the Software without restriction, including */ +/* without limitation the rights to use, copy, modify, merge, publish, */ +/* distribute, sublicense, and/or sell copies of the Software, and to */ +/* permit persons to whom the Software is furnished to do so, subject to */ +/* the following conditions: */ +/* */ +/* The above copyright notice and this permission notice shall be */ +/* included in all copies or substantial portions of the Software. */ +/* */ +/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ +/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ +/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ +/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ +/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ +/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ +/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +/*************************************************************************/ + +#import <UIKit/UIKit.h> + +#import "AppDelegate.h" + +int main(int argc, char * argv[]) +{ + @autoreleasepool { + return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); + } +} diff --git a/platform/iphone/xcode/godot_xcode/godot_opt.iphone b/platform/iphone/xcode/godot_xcode/godot_opt.iphone new file mode 100755 index 0000000000..e69de29bb2 --- /dev/null +++ b/platform/iphone/xcode/godot_xcode/godot_opt.iphone diff --git a/platform/windows/joystick.cpp b/platform/windows/joystick.cpp index f4fb09820f..f8526b5ec1 100644 --- a/platform/windows/joystick.cpp +++ b/platform/windows/joystick.cpp @@ -472,7 +472,7 @@ InputDefault::JoyAxis joystick_windows::axis_correct(int p_val, bool p_xinput, b InputDefault::JoyAxis jx; if (Math::abs(p_val) < MIN_JOY_AXIS) { - jx.min = -1; + jx.min = p_trigger ? 0 : -1; jx.value = 0.0f; return jx; } diff --git a/platform/x11/detect.py b/platform/x11/detect.py index f49475a2d5..6b147db130 100644 --- a/platform/x11/detect.py +++ b/platform/x11/detect.py @@ -56,7 +56,7 @@ def get_opts(): ('use_sanitizer','Use llvm compiler sanitize address','no'), ('use_leak_sanitizer','Use llvm compiler sanitize memory leaks','no'), ('pulseaudio','Detect & Use pulseaudio','yes'), - ('gamepad','Gamepad support, requires libudev and libevdev','yes'), + ('udev','Use udev for gamepad connection callbacks','no'), ('new_wm_api', 'Use experimental window management API','no'), ('debug_release', 'Add debug symbols to release version','no'), ] @@ -156,20 +156,18 @@ def configure(env): else: print("ALSA libraries not found, disabling driver") - if (env["gamepad"]=="yes" and platform.system() == "Linux"): + if (platform.system() == "Linux"): + env.Append(CPPFLAGS=["-DJOYDEV_ENABLED"]) + if (env["udev"]=="yes"): # pkg-config returns 0 when the lib exists... found_udev = not os.system("pkg-config --exists libudev") - + if (found_udev): - print("Enabling gamepad support with udev") - env.Append(CPPFLAGS=["-DJOYDEV_ENABLED"]) + print("Enabling udev support") + env.Append(CPPFLAGS=["-DUDEV_ENABLED"]) env.ParseConfig('pkg-config libudev --cflags --libs') else: - print("libudev development libraries not found") - - print("Some libraries are missing for the required gamepad support, aborting!") - print("Install the mentioned libraries or build with 'gamepad=no' to disable gamepad support.") - sys.exit(255) + print("libudev development libraries not found, disabling udev support") if (env["pulseaudio"]=="yes"): if not os.system("pkg-config --exists libpulse-simple"): diff --git a/platform/x11/joystick_linux.cpp b/platform/x11/joystick_linux.cpp index ef866d5d3a..9a52c4ff36 100644 --- a/platform/x11/joystick_linux.cpp +++ b/platform/x11/joystick_linux.cpp @@ -33,11 +33,14 @@ #include "joystick_linux.h" #include <linux/input.h> -#include <libudev.h> #include <unistd.h> #include <fcntl.h> #include <errno.h> +#ifdef UDEV_ENABLED +#include <libudev.h> +#endif + #define LONG_BITS (sizeof(long) * 8) #define test_bit(nr, addr) (((1UL << ((nr) % LONG_BITS)) & ((addr)[(nr) / LONG_BITS])) != 0) #define NBITS(x) ((((x)-1)/LONG_BITS)+1) @@ -99,14 +102,18 @@ void joystick_linux::joy_thread_func(void *p_user) { } void joystick_linux::run_joystick_thread() { - +#ifdef UDEV_ENABLED udev *_udev = udev_new(); ERR_FAIL_COND(!_udev); enumerate_joysticks(_udev); monitor_joysticks(_udev); udev_unref(_udev); +#else + monitor_joysticks(); +#endif } +#ifdef UDEV_ENABLED void joystick_linux::enumerate_joysticks(udev *p_udev) { udev_enumerate *enumerate; @@ -192,6 +199,23 @@ void joystick_linux::monitor_joysticks(udev *p_udev) { //printf("exit udev\n"); udev_monitor_unref(mon); } +#endif + +void joystick_linux::monitor_joysticks() { + + while (!exit_udev) { + joy_mutex->lock(); + for (int i = 0; i < 32; i++) { + char fname[64]; + sprintf(fname, "/dev/input/event%d", i); + if (attached_devices.find(fname) == -1) { + open_joystick(fname); + } + } + joy_mutex->unlock(); + usleep(1000000); // 1s + } +} int joystick_linux::get_free_joy_slot() const { @@ -229,6 +253,7 @@ void joystick_linux::close_joystick(int p_id) { close(joy.fd); joy.fd = -1; + attached_devices.remove(attached_devices.find(joy.devpath)); input->joy_connection_changed(p_id, false, ""); }; }; @@ -302,6 +327,9 @@ void joystick_linux::open_joystick(const char *p_path) { unsigned long keybit[NBITS(KEY_MAX)] = { 0 }; unsigned long absbit[NBITS(ABS_MAX)] = { 0 }; + // add to attached devices so we don't try to open it again + attached_devices.push_back(String(p_path)); + if ((ioctl(fd, EVIOCGBIT(0, sizeof(evbit)), evbit) < 0) || (ioctl(fd, EVIOCGBIT(EV_KEY, sizeof(keybit)), keybit) < 0) || (ioctl(fd, EVIOCGBIT(EV_ABS, sizeof(absbit)), absbit) < 0)) { @@ -446,6 +474,9 @@ uint32_t joystick_linux::process_joysticks(uint32_t p_event_id) { p_event_id = input->joy_axis(p_event_id, i, index, joy->curr_axis[index]); } } + if (len == 0 || (len < 0 && errno != EAGAIN)) { + close_joystick(i); + }; } joy_mutex->unlock(); return p_event_id; diff --git a/platform/x11/joystick_linux.h b/platform/x11/joystick_linux.h index 7f96e3451f..e433f5e8e3 100644 --- a/platform/x11/joystick_linux.h +++ b/platform/x11/joystick_linux.h @@ -73,6 +73,7 @@ private: Thread *joy_thread; InputDefault *input; Joystick joysticks[JOYSTICKS_MAX]; + Vector<String> attached_devices; static void joy_thread_func(void *p_user); @@ -81,8 +82,11 @@ private: void setup_joystick_properties(int p_id); void close_joystick(int p_id = -1); +#ifdef UDEV_ENABLED void enumerate_joysticks(struct udev *_udev); void monitor_joysticks(struct udev *_udev); +#endif + void monitor_joysticks(); void run_joystick_thread(); void open_joystick(const char* path); |