From 902887e1f95b7d283ebabf3582d4d72b178f7b85 Mon Sep 17 00:00:00 2001 From: Robert Date: Tue, 17 Jan 2017 16:32:00 +0500 Subject: [PATCH] move to swift --- iOS/AppDelegate.h | 19 -- iOS/AppDelegate.m | 59 ---- iOS/ViewController.h | 15 - iOS/ViewController.mm | 20 -- iOS/ios_api.h | 3 - iOS/main.m | 18 -- proj.ios/AppDelegate.swift | 31 ++ {iOS => proj.ios}/CustomGLKView.h | 0 {iOS => proj.ios}/CustomGLKView.mm | 8 +- proj.ios/CustomGLKView.swift | 95 ++++++ proj.ios/SENamespaceWrapper.cpp | 60 ++++ proj.ios/SENamespaceWrapper.h | 33 ++ proj.ios/ViewController.swift | 113 +++++++ {iOS => proj.ios}/en.lproj/InfoPlist.strings | 0 .../en.lproj/ViewController_iPad.xib | 0 .../en.lproj/ViewController_iPhone.xib | 0 {iOS => proj.ios}/ios_api.cpp | 2 +- proj.ios/ios_api.h | 6 + {iOS => proj.ios}/res/Icon.png | Bin {iOS => proj.ios}/res/Splash-landscape.png | Bin {iOS => proj.ios}/res/iTunesArtwork | Bin proj.ios/salmontemplate-Bridging-Header.h | 8 + .../salmontemplate.xcodeproj/project.pbxproj | 282 +++++++++++------- {iOS => proj.ios}/template-Info.plist | 100 +++---- {iOS => proj.ios}/template-Prefix.pch | 0 25 files changed, 571 insertions(+), 301 deletions(-) delete mode 100644 iOS/AppDelegate.h delete mode 100644 iOS/AppDelegate.m delete mode 100644 iOS/ViewController.h delete mode 100644 iOS/ViewController.mm delete mode 100644 iOS/ios_api.h delete mode 100644 iOS/main.m create mode 100644 proj.ios/AppDelegate.swift rename {iOS => proj.ios}/CustomGLKView.h (100%) mode change 100644 => 100755 rename {iOS => proj.ios}/CustomGLKView.mm (87%) mode change 100644 => 100755 create mode 100644 proj.ios/CustomGLKView.swift create mode 100644 proj.ios/SENamespaceWrapper.cpp create mode 100644 proj.ios/SENamespaceWrapper.h create mode 100644 proj.ios/ViewController.swift rename {iOS => proj.ios}/en.lproj/InfoPlist.strings (100%) mode change 100644 => 100755 rename {iOS => proj.ios}/en.lproj/ViewController_iPad.xib (100%) mode change 100644 => 100755 rename {iOS => proj.ios}/en.lproj/ViewController_iPhone.xib (100%) mode change 100644 => 100755 rename {iOS => proj.ios}/ios_api.cpp (70%) mode change 100644 => 100755 create mode 100755 proj.ios/ios_api.h rename {iOS => proj.ios}/res/Icon.png (100%) mode change 100644 => 100755 rename {iOS => proj.ios}/res/Splash-landscape.png (100%) mode change 100644 => 100755 rename {iOS => proj.ios}/res/iTunesArtwork (100%) mode change 100644 => 100755 create mode 100644 proj.ios/salmontemplate-Bridging-Header.h rename {iOS => proj.ios}/salmontemplate.xcodeproj/project.pbxproj (68%) mode change 100644 => 100755 rename {iOS => proj.ios}/template-Info.plist (94%) mode change 100644 => 100755 rename {iOS => proj.ios}/template-Prefix.pch (100%) mode change 100644 => 100755 diff --git a/iOS/AppDelegate.h b/iOS/AppDelegate.h deleted file mode 100644 index 4237984..0000000 --- a/iOS/AppDelegate.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// AppDelegate.h -// doublehitballs -// -// Created by vvv ооо on 13.07.12. -// Copyright (c) 2012 __MyCompanyName__. All rights reserved. -// - -#import - -@class ViewController; - -@interface AppDelegate : UIResponder - -@property (strong, nonatomic) UIWindow *window; - -@property (strong, nonatomic) ViewController *viewController; - -@end diff --git a/iOS/AppDelegate.m b/iOS/AppDelegate.m deleted file mode 100644 index 1283115..0000000 --- a/iOS/AppDelegate.m +++ /dev/null @@ -1,59 +0,0 @@ -// -// AppDelegate.m -// doublehitballs -// -// Created by vvv ооо on 13.07.12. -// Copyright (c) 2012 __MyCompanyName__. All rights reserved. -// - -#import "AppDelegate.h" - -#import "ViewController.h" - -@implementation AppDelegate - -@synthesize window = _window; -@synthesize viewController = _viewController; - -- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions -{ - self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; - // Override point for customization after application launch. - if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { - self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil]; - } else { - self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil]; - } - self.window.rootViewController = self.viewController; - [self.window makeKeyAndVisible]; - return YES; -} - -- (void)applicationWillResignActive:(UIApplication *)application -{ - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. -} - -- (void)applicationDidEnterBackground:(UIApplication *)application -{ - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. -} - -- (void)applicationWillEnterForeground:(UIApplication *)application -{ - // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. -} - -- (void)applicationDidBecomeActive:(UIApplication *)application -{ - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. -} - -- (void)applicationWillTerminate:(UIApplication *)application -{ - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. -} - -@end diff --git a/iOS/ViewController.h b/iOS/ViewController.h deleted file mode 100644 index 38eb6ac..0000000 --- a/iOS/ViewController.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// ViewController.h -// doublehitballs -// -// Created by vvv ооо on 13.07.12. -// Copyright (c) 2012 __MyCompanyName__. All rights reserved. -// - - -#import "include/Utils/IosApi/ObjC/ViewControllerTemplate.h" - -@interface ViewController : ViewControllerTemplate - -@end - diff --git a/iOS/ViewController.mm b/iOS/ViewController.mm deleted file mode 100644 index 01d3732..0000000 --- a/iOS/ViewController.mm +++ /dev/null @@ -1,20 +0,0 @@ -#import "ViewController.h" -#import "ios_api.h" - - -@implementation ViewController - - -- (void) appInitCaller -{ - CustomAppInit(); -} - -- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation -{ - return UIInterfaceOrientationIsLandscape(interfaceOrientation); -} - - - -@end \ No newline at end of file diff --git a/iOS/ios_api.h b/iOS/ios_api.h deleted file mode 100644 index c33973e..0000000 --- a/iOS/ios_api.h +++ /dev/null @@ -1,3 +0,0 @@ - - -void CustomAppInit(); \ No newline at end of file diff --git a/iOS/main.m b/iOS/main.m deleted file mode 100644 index f8b2c00..0000000 --- a/iOS/main.m +++ /dev/null @@ -1,18 +0,0 @@ -// -// main.m -// doublehitballs -// -// Created by vvv ооо on 13.07.12. -// Copyright (c) 2012 __MyCompanyName__. All rights reserved. -// - -#import - -#import "AppDelegate.h" - -int main(int argc, char *argv[]) -{ - @autoreleasepool { - return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); - } -} diff --git a/proj.ios/AppDelegate.swift b/proj.ios/AppDelegate.swift new file mode 100644 index 0000000..22abb53 --- /dev/null +++ b/proj.ios/AppDelegate.swift @@ -0,0 +1,31 @@ +// +// AppDelegate.swift +// salmontemplate +// +// Created by Роберт Хайреев on 16/01/2017. +// +// + +import Foundation +import UIKit + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + + var window: UIWindow? + var viewController: UIViewController? + + func applicationDidFinishLaunching(_ application: UIApplication) { + window = UIWindow(frame: UIScreen.main.bounds) + + if UIDevice.current.userInterfaceIdiom == .phone { + viewController = ViewController(nibName: "ViewController_iPhone", bundle: nil) + } else { + viewController = ViewController(nibName: "ViewController_iPad", bundle: nil) + } + + window?.rootViewController = viewController + window?.makeKeyAndVisible() + } + +} diff --git a/iOS/CustomGLKView.h b/proj.ios/CustomGLKView.h old mode 100644 new mode 100755 similarity index 100% rename from iOS/CustomGLKView.h rename to proj.ios/CustomGLKView.h diff --git a/iOS/CustomGLKView.mm b/proj.ios/CustomGLKView.mm old mode 100644 new mode 100755 similarity index 87% rename from iOS/CustomGLKView.mm rename to proj.ios/CustomGLKView.mm index a7fca3c..5b9214c --- a/iOS/CustomGLKView.mm +++ b/proj.ios/CustomGLKView.mm @@ -1,5 +1,5 @@ -#import "CustomGLKView.h" - -@implementation CustomGLKView - +#import "CustomGLKView.h" + +@implementation CustomGLKView + @end \ No newline at end of file diff --git a/proj.ios/CustomGLKView.swift b/proj.ios/CustomGLKView.swift new file mode 100644 index 0000000..c071e34 --- /dev/null +++ b/proj.ios/CustomGLKView.swift @@ -0,0 +1,95 @@ +// +// CustomGLKView.swift +// salmontemplate +// +// Created by Роберт Хайреев on 16/01/2017. +// +// + +import Foundation +import GLKit + +struct TTouchHashData { + var first: CGPoint! + var second: Bool! + var number: Int! +} + + + +class GLKViewTemplate: GLKView { + + var touchDict: [UITouch: TTouchHashData] = [:] + + override init(frame: CGRect) { + super.init(frame: frame) + isMultipleTouchEnabled = true + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + func addTouchToHash(touch: UITouch) { + let data = TTouchHashData() + touchDict[touch] = data + touchDict[touch]?.first = touch.location(in: self) + touchDict[touch]?.second = false + + for n in 0...255 { + var nExists = false + + for i in touchDict.values { + if i.number == n { + nExists = true + } + } + + if !nExists { + touchDict[touch]?.number = n + } + + } + + } + + func removeTouchFromHash(touch: UITouch) { + + } + + override func touchesBegan(_ touches: Set, with event: UIEvent?) { + for touch in touches { + let location = touch.location(in: self) + let prevLocation = touch.previousLocation(in: self) + + if abs(touchDict[touch]!.first!.x - location.x) > 10 || abs(touchDict[touch]!.first!.y - location.y) > 10 { + touchDict[touch]?.second = true + } + + let number = Int32(touchDict[touch]!.number) + + SE_AppOnScroll(Int32(Float(prevLocation.x) - Float(location.x)), -Int32(Float(prevLocation.y) - Float(location.y)), number) + } + } + + override func touchesEnded(_ touches: Set, with event: UIEvent?) { + for touch in touches { + let location = touch.location(in: self) + let number = Int32(touchDict[touch]!.number) + + if touchDict[touch]!.second == true { + SE_AppOnTapUpAfterMove(Int32(location.x), Int32(bounds.size.height - location.y), number) + } else { + SE_AppOnTapUp(Int32(location.x), Int32(bounds.size.height - location.y), number) + } + touchDict.removeValue(forKey: touch) + } + } + + override func touchesCancelled(_ touches: Set, with event: UIEvent?) { + for touch in touches { + touchDict.removeValue(forKey: touch) + } + } + +} diff --git a/proj.ios/SENamespaceWrapper.cpp b/proj.ios/SENamespaceWrapper.cpp new file mode 100644 index 0000000..d16ac9d --- /dev/null +++ b/proj.ios/SENamespaceWrapper.cpp @@ -0,0 +1,60 @@ +// +// SENamespaceWrapper.hpp +// salmontemplate +// +// Created by Роберт Хайреев on 16/01/2017. +// +// + +#include "include/Utils/Utils.h" + +//#import "include/Utils/IosApi/ObjC/ViewControllerTemplate.h" +#include "include/Utils/IosApi/IosWrapper.h" +#include "SENamespaceWrapper.h" + + +namespace SE { + void SetKeyboardText(const char* newText); + void OnKeyboardHide(); +} + + //TApplication *app = NULL; +void SE_AppDeinit() { + SE::AppDeinit(); +} + +void SE_AppUpdate(int dt) { + SE::AppUpdate(dt); +} + +void SE_AppDraw() { + SE::AppDraw(); +} + +void SE_AppOnTapDown(int posx, int posy, int touchNumber) { + SE::AppOnTapDown(posx, posy, touchNumber); +} + +void SE_AppOnTapUp(int posx, int posy, int touchNumber) { + SE::AppOnTapUp(posx, posy, touchNumber); +} + +void SE_AppOnTapUpAfterMove(int posx, int posy, int touchNumber) { + SE::AppOnTapUpAfterMove(posx, posy, touchNumber); +} + +void SE_AppOnScroll(int shiftx, int shifty, int touchNumber) { + SE::AppOnScroll(shiftx, shifty, touchNumber); +} + +void SE_AppOnScale(float scale) { + SE::AppOnScale(scale); +} + +void SE_SetKeyboardText(const char* newText) { + SE::SetKeyboardText(newText); +} + +void SE_OnKeyboardHide() { + SE::OnKeyboardHide(); +} diff --git a/proj.ios/SENamespaceWrapper.h b/proj.ios/SENamespaceWrapper.h new file mode 100644 index 0000000..8490729 --- /dev/null +++ b/proj.ios/SENamespaceWrapper.h @@ -0,0 +1,33 @@ +// +// SENamespaceWrapper.hpp +// salmontemplate +// +// Created by Роберт Хайреев on 16/01/2017. +// +// + +#ifndef SENamespace_h +#define SENamespace_h + +#ifdef __cplusplus +extern "C" { +#endif + //void SE_CreateEngine(); + //void SE_DestroyEngine(); + //TApplication *app = NULL; + void SE_AppDeinit(); + void SE_AppUpdate(int dt); + void SE_AppDraw(); + void SE_AppOnTapDown(int posx, int posy, int touchNumber); + void SE_AppOnTapUp(int posx, int posy, int touchNumber); + void SE_AppOnTapUpAfterMove(int posx, int posy, int touchNumber); + void SE_AppOnScroll(int shiftx, int shifty, int touchNumber); + void SE_AppOnScale(float scale); + void SE_SetKeyboardText(const char* newText); + void SE_OnKeyboardHide(); +#ifdef __cplusplus +} //end extern "C" +#endif + +#endif /* SENamespace_h */ + diff --git a/proj.ios/ViewController.swift b/proj.ios/ViewController.swift new file mode 100644 index 0000000..3d39c86 --- /dev/null +++ b/proj.ios/ViewController.swift @@ -0,0 +1,113 @@ +// +// ViewController.swift +// salmontemplate +// +// Created by Роберт Хайреев on 16/01/2017. +// +// + +import UIKit +import GLKit + +class ViewControllerTemplate: GLKViewController, UITextFieldDelegate { + + public var hiddenTextField: UITextField? + private var context: EAGLContext? + private var effect: GLKBaseEffect? + + override func viewDidLoad() { + super.viewDidLoad() + + guard let context = EAGLContext(api: .openGLES2) else { + print("Failed to create ES context") + return + } + + self.context = context + let view: GLKView = self.view as! GLKView + view.context = self.context! + view.drawableDepthFormat = .format24 + + //defaultView = view + + setupGL() + + let recognizer = UIPinchGestureRecognizer(target: self, action: #selector(respondToPinch(gestureRecognizer:))) + recognizer.delaysTouchesEnded = false + + view.addGestureRecognizer(recognizer) + view.isMultipleTouchEnabled = true + + hiddenTextField = UITextField(frame: CGRect(x: -200, y: -200, width: 0, height: 0)) + hiddenTextField?.autocorrectionType = .no + view.addSubview(hiddenTextField!) + hiddenTextField?.delegate = self + NotificationCenter.default.addObserver(self, selector: #selector(onReceiveKeyboardNotification(notification:)), name: .UITextFieldTextDidChange, object: nil) + } + + deinit { + tearDownGL() + } + + func setupGL() { + EAGLContext.setCurrent(context) + appInitCaller() + } + + func tearDownGL() { + EAGLContext.setCurrent(context) + SE_AppDeinit() + } + + func appInitCaller() { + // CustomAppInit() + } + + func respondToPinch(gestureRecognizer: UIPinchGestureRecognizer) { + SE_AppOnScale(Float(gestureRecognizer.scale)) + } + + func onReceiveKeyboardNotification(notification: NSNotification) { + if notification.name == .UITextFieldTextDidChange { + let textField = notification.object as! UITextField + let text = textField.text + SE_SetKeyboardText(text) + } + } + + func textFieldDidBeginEditing(_ textField: UITextField) { + print("Begin") + } + + func textFieldDidEndEditing(_ textField: UITextField) { + print("End") + } + + func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { + if string == "\n" { + textField.resignFirstResponder() + SE_OnKeyboardHide() + } + return true + } + + func update() { + SE_AppUpdate(Int32(self.timeSinceLastUpdate * 1000)) + } + + override func glkView(_ view: GLKView, drawIn rect: CGRect) { + SE_AppDraw() + } + +} + + +class ViewController: ViewControllerTemplate { + override func appInitCaller() { + CustomAppInit() + } + + override var supportedInterfaceOrientations: UIInterfaceOrientationMask { + return [.landscapeLeft, .landscapeRight] + } +} diff --git a/iOS/en.lproj/InfoPlist.strings b/proj.ios/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 similarity index 100% rename from iOS/en.lproj/InfoPlist.strings rename to proj.ios/en.lproj/InfoPlist.strings diff --git a/iOS/en.lproj/ViewController_iPad.xib b/proj.ios/en.lproj/ViewController_iPad.xib old mode 100644 new mode 100755 similarity index 100% rename from iOS/en.lproj/ViewController_iPad.xib rename to proj.ios/en.lproj/ViewController_iPad.xib diff --git a/iOS/en.lproj/ViewController_iPhone.xib b/proj.ios/en.lproj/ViewController_iPhone.xib old mode 100644 new mode 100755 similarity index 100% rename from iOS/en.lproj/ViewController_iPhone.xib rename to proj.ios/en.lproj/ViewController_iPhone.xib diff --git a/iOS/ios_api.cpp b/proj.ios/ios_api.cpp old mode 100644 new mode 100755 similarity index 70% rename from iOS/ios_api.cpp rename to proj.ios/ios_api.cpp index 06649a4..b011c97 --- a/iOS/ios_api.cpp +++ b/proj.ios/ios_api.cpp @@ -2,7 +2,7 @@ #include "main_code.h" -void CustomAppInit() +extern "C" void CustomAppInit() { AppInit(480, 320); } diff --git a/proj.ios/ios_api.h b/proj.ios/ios_api.h new file mode 100755 index 0000000..e83ed47 --- /dev/null +++ b/proj.ios/ios_api.h @@ -0,0 +1,6 @@ + +#ifdef __cplusplus +extern "C" void CustomAppInit(); +#else +void CustomAppInit(); +#endif diff --git a/iOS/res/Icon.png b/proj.ios/res/Icon.png old mode 100644 new mode 100755 similarity index 100% rename from iOS/res/Icon.png rename to proj.ios/res/Icon.png diff --git a/iOS/res/Splash-landscape.png b/proj.ios/res/Splash-landscape.png old mode 100644 new mode 100755 similarity index 100% rename from iOS/res/Splash-landscape.png rename to proj.ios/res/Splash-landscape.png diff --git a/iOS/res/iTunesArtwork b/proj.ios/res/iTunesArtwork old mode 100644 new mode 100755 similarity index 100% rename from iOS/res/iTunesArtwork rename to proj.ios/res/iTunesArtwork diff --git a/proj.ios/salmontemplate-Bridging-Header.h b/proj.ios/salmontemplate-Bridging-Header.h new file mode 100644 index 0000000..452d5c3 --- /dev/null +++ b/proj.ios/salmontemplate-Bridging-Header.h @@ -0,0 +1,8 @@ +// +// Use this file to import your target's public headers that you would like to expose to Swift. +// + +//#include "include/Utils/IosApi + +#import "SENamespaceWrapper.h" +#import "ios_api.h" diff --git a/iOS/salmontemplate.xcodeproj/project.pbxproj b/proj.ios/salmontemplate.xcodeproj/project.pbxproj old mode 100644 new mode 100755 similarity index 68% rename from iOS/salmontemplate.xcodeproj/project.pbxproj rename to proj.ios/salmontemplate.xcodeproj/project.pbxproj index 54952c6..a58d2b9 --- a/iOS/salmontemplate.xcodeproj/project.pbxproj +++ b/proj.ios/salmontemplate.xcodeproj/project.pbxproj @@ -13,27 +13,23 @@ 4C49B2C415B0991B003512CD /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C49B2C315B0991B003512CD /* GLKit.framework */; }; 4C49B2C615B0991B003512CD /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C49B2C515B0991B003512CD /* OpenGLES.framework */; }; 4C49B2CC15B0991B003512CD /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4C49B2CA15B0991B003512CD /* InfoPlist.strings */; }; - 4C49B2CE15B0991B003512CD /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C49B2CD15B0991B003512CD /* main.m */; }; - 4C49B2D215B0991B003512CD /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C49B2D115B0991B003512CD /* AppDelegate.m */; }; - 4C49B2D915B0991B003512CD /* ViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4C49B2D815B0991B003512CD /* ViewController.mm */; }; 4C49B2DC15B0991B003512CD /* ViewController_iPhone.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C49B2DA15B0991B003512CD /* ViewController_iPhone.xib */; }; 4C49B2DF15B0991B003512CD /* ViewController_iPad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C49B2DD15B0991B003512CD /* ViewController_iPad.xib */; }; - 4C4C807515BA8F460037C6CE /* libsquirrel.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C4C807415BA8F460037C6CE /* libsquirrel.a */; }; - 4C4C807715BA8F5B0037C6CE /* libz.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C4C807615BA8F5B0037C6CE /* libz.a */; }; - 4C6EB44515C3CFD300316CB6 /* libpng.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C6EB44415C3CFD300316CB6 /* libpng.a */; }; 4C74848615C5AD6E0056EC44 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 4C74848315C5AD6E0056EC44 /* Icon.png */; }; 4C74848715C5AD6E0056EC44 /* iTunesArtwork in Resources */ = {isa = PBXBuildFile; fileRef = 4C74848415C5AD6E0056EC44 /* iTunesArtwork */; }; 4C74848815C5AD6E0056EC44 /* Splash-landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 4C74848515C5AD6E0056EC44 /* Splash-landscape.png */; }; - 4C74849815C5AF7C0056EC44 /* main_code.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C74849615C5AF7C0056EC44 /* main_code.cpp */; }; - 4C77831315BABD68003D5142 /* libvorbis-tremor-ios.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C77831215BABD68003D5142 /* libvorbis-tremor-ios.a */; }; 4C77831815BABE26003D5142 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C77831415BABD8B003D5142 /* AudioToolbox.framework */; }; 4C77831915BABE26003D5142 /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C77831515BABD8B003D5142 /* OpenAL.framework */; }; 4C7AD44C15B1D77700A599F6 /* ios_api.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C7AD44B15B1D77700A599F6 /* ios_api.cpp */; }; - 4C7C584B15C31E6500CAE4F4 /* libboost.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C7C584A15C31E6500CAE4F4 /* libboost.a */; }; - 4CBCD3EE1754F276006831C9 /* libjpeg.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CBCD3ED1754F276006831C9 /* libjpeg.a */; }; - 4CC971AC15C57DCE00359A2B /* libSalmon Engine.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C902A7815C5735700FBC901 /* libSalmon Engine.a */; }; 4CCC0ECC15B30D6B005432FB /* CustomGLKView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4CCC0ECB15B30D6B005432FB /* CustomGLKView.mm */; }; 4CE6A9D215B2F979006A3965 /* assets in Resources */ = {isa = PBXBuildFile; fileRef = 4CE6A9D115B2F979006A3965 /* assets */; }; + 74AC9EBD1E2CE407003C9749 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74AC9EBC1E2CE407003C9749 /* ViewController.swift */; }; + 74AC9EC11E2CF533003C9749 /* SENamespaceWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74AC9EBF1E2CF533003C9749 /* SENamespaceWrapper.cpp */; }; + 74C3AE3B1E2E35F9003C07F2 /* main_code.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74C3AE3A1E2E35F9003C07F2 /* main_code.cpp */; }; + 74EEBAEF1E2D13A6004C6C65 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74EEBAEE1E2D13A6004C6C65 /* AppDelegate.swift */; }; + 74EEBAF11E2D1C7C004C6C65 /* CustomGLKView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74EEBAF01E2D1C7C004C6C65 /* CustomGLKView.swift */; }; + 84D0FEBE1E274DDD00EC3FE5 /* libSalmon Engine.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C902A7815C5735700FBC901 /* libSalmon Engine.a */; }; + 84D0FEC91E274E4A00EC3FE5 /* libvorbis-tremor-ios.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 84D0FEC61E274E3700EC3FE5 /* libvorbis-tremor-ios.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -44,6 +40,27 @@ remoteGlobalIDString = 4C8CE90215B0A0F400078175; remoteInfo = "Salmon Engine"; }; + 84D0FEBF1E274DF700EC3FE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 4C902A7015C5735500FBC901 /* Salmon Engine.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = 4C8CE90115B0A0F400078175; + remoteInfo = "Salmon Engine"; + }; + 84D0FEC51E274E3700EC3FE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 84D0FEC11E274E3700EC3FE5 /* vorbis-tremor-ios.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 4C77827D15BAB67E003D5142; + remoteInfo = "vorbis-tremor-ios"; + }; + 84D0FEC71E274E3F00EC3FE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 84D0FEC11E274E3700EC3FE5 /* vorbis-tremor-ios.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = 4C77827C15BAB67E003D5142; + remoteInfo = "vorbis-tremor-ios"; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ @@ -55,33 +72,29 @@ 4C49B2C515B0991B003512CD /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; 4C49B2C915B0991B003512CD /* template-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "template-Info.plist"; sourceTree = ""; }; 4C49B2CB15B0991B003512CD /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; - 4C49B2CD15B0991B003512CD /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 4C49B2CF15B0991B003512CD /* template-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "template-Prefix.pch"; sourceTree = ""; }; - 4C49B2D015B0991B003512CD /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 4C49B2D115B0991B003512CD /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 4C49B2D715B0991B003512CD /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; - 4C49B2D815B0991B003512CD /* ViewController.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ViewController.mm; sourceTree = ""; }; 4C49B2DB15B0991B003512CD /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/ViewController_iPhone.xib; sourceTree = ""; }; 4C49B2DE15B0991B003512CD /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/ViewController_iPad.xib; sourceTree = ""; }; - 4C4C807415BA8F460037C6CE /* libsquirrel.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsquirrel.a; path = "../../libs/SQUIRREL2_1_1_sqplus/build-ios/ios-device/libsquirrel.a"; sourceTree = ""; }; - 4C4C807615BA8F5B0037C6CE /* libz.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libz.a; path = "../../libs/zlib-1.2.7/build-ios/ios-device/libz.a"; sourceTree = ""; }; - 4C6EB44415C3CFD300316CB6 /* libpng.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpng.a; path = "../../libs/libpng-1.5.12/build-ios/ios-simulator/libpng.a"; sourceTree = ""; }; 4C74848315C5AD6E0056EC44 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Icon.png; path = res/Icon.png; sourceTree = ""; }; 4C74848415C5AD6E0056EC44 /* iTunesArtwork */ = {isa = PBXFileReference; lastKnownFileType = file; name = iTunesArtwork; path = res/iTunesArtwork; sourceTree = ""; }; 4C74848515C5AD6E0056EC44 /* Splash-landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "Splash-landscape.png"; path = "res/Splash-landscape.png"; sourceTree = ""; }; - 4C74849615C5AF7C0056EC44 /* main_code.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = main_code.cpp; path = ../jni/main_code.cpp; sourceTree = ""; }; - 4C74849715C5AF7C0056EC44 /* main_code.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = main_code.h; path = ../jni/main_code.h; sourceTree = ""; }; - 4C77831215BABD68003D5142 /* libvorbis-tremor-ios.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libvorbis-tremor-ios.a"; path = "../../libs/vorbis-tremor-ios/build-ios/ios-device/libvorbis-tremor-ios.a"; sourceTree = ""; }; 4C77831415BABD8B003D5142 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; 4C77831515BABD8B003D5142 /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; }; 4C7AD44B15B1D77700A599F6 /* ios_api.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ios_api.cpp; sourceTree = ""; }; - 4C7C584A15C31E6500CAE4F4 /* libboost.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libboost.a; path = "../../libs/boost_1_47_0/build-ios/ios-simulator/libboost.a"; sourceTree = ""; }; 4C902A7015C5735500FBC901 /* Salmon Engine.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "Salmon Engine.xcodeproj"; path = "../../Engine/iOS/Salmon Engine/Salmon Engine.xcodeproj"; sourceTree = ""; }; - 4CBCD3ED1754F276006831C9 /* libjpeg.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjpeg.a; path = "../../../libs/jpeg-9/build-ios/ios-device/libjpeg.a"; sourceTree = ""; }; 4CCC0ECA15B30D6A005432FB /* CustomGLKView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomGLKView.h; sourceTree = ""; }; 4CCC0ECB15B30D6B005432FB /* CustomGLKView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CustomGLKView.mm; sourceTree = ""; }; 4CCC0ECD15B310FB005432FB /* ios_api.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ios_api.h; sourceTree = ""; }; 4CE6A9D115B2F979006A3965 /* assets */ = {isa = PBXFileReference; lastKnownFileType = folder; name = assets; path = ../assets; sourceTree = ""; }; + 74AC9EBB1E2CE407003C9749 /* salmontemplate-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "salmontemplate-Bridging-Header.h"; sourceTree = ""; }; + 74AC9EBC1E2CE407003C9749 /* ViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + 74AC9EBF1E2CF533003C9749 /* SENamespaceWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SENamespaceWrapper.cpp; sourceTree = ""; }; + 74AC9EC01E2CF533003C9749 /* SENamespaceWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SENamespaceWrapper.h; sourceTree = ""; }; + 74C3AE3A1E2E35F9003C07F2 /* main_code.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = main_code.cpp; path = ../game/main_code.cpp; sourceTree = ""; }; + 74C3AE3C1E2E35FD003C07F2 /* main_code.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = main_code.h; path = ../game/main_code.h; sourceTree = ""; }; + 74EEBAEE1E2D13A6004C6C65 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 74EEBAF01E2D1C7C004C6C65 /* CustomGLKView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CustomGLKView.swift; sourceTree = ""; }; + 84D0FEC11E274E3700EC3FE5 /* vorbis-tremor-ios.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "vorbis-tremor-ios.xcodeproj"; path = "../../libs/vorbis-tremor-ios/vorbis-tremor-ios.xcodeproj"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -89,8 +102,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4CBCD3EE1754F276006831C9 /* libjpeg.a in Frameworks */, - 4CC971AC15C57DCE00359A2B /* libSalmon Engine.a in Frameworks */, + 84D0FEC91E274E4A00EC3FE5 /* libvorbis-tremor-ios.a in Frameworks */, + 84D0FEBE1E274DDD00EC3FE5 /* libSalmon Engine.a in Frameworks */, 4C77831815BABE26003D5142 /* AudioToolbox.framework in Frameworks */, 4C77831915BABE26003D5142 /* OpenAL.framework in Frameworks */, 4C49B2BE15B0991B003512CD /* UIKit.framework in Frameworks */, @@ -98,11 +111,6 @@ 4C49B2C215B0991B003512CD /* CoreGraphics.framework in Frameworks */, 4C49B2C415B0991B003512CD /* GLKit.framework in Frameworks */, 4C49B2C615B0991B003512CD /* OpenGLES.framework in Frameworks */, - 4C4C807515BA8F460037C6CE /* libsquirrel.a in Frameworks */, - 4C4C807715BA8F5B0037C6CE /* libz.a in Frameworks */, - 4C77831315BABD68003D5142 /* libvorbis-tremor-ios.a in Frameworks */, - 4C7C584B15C31E6500CAE4F4 /* libboost.a in Frameworks */, - 4C6EB44515C3CFD300316CB6 /* libpng.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -112,6 +120,7 @@ 4C49B2AE15B0991B003512CD = { isa = PBXGroup; children = ( + 84D0FEC11E274E3700EC3FE5 /* vorbis-tremor-ios.xcodeproj */, 4C902A7015C5735500FBC901 /* Salmon Engine.xcodeproj */, 4C7B819515C40F770024D61A /* Libs */, 4CC1FC3415B200130025C6F7 /* Resources */, @@ -149,10 +158,9 @@ 4CE6A9E315B2F9A4006A3965 /* Game */, 4CCC0ECD15B310FB005432FB /* ios_api.h */, 4C7AD44B15B1D77700A599F6 /* ios_api.cpp */, - 4C49B2D015B0991B003512CD /* AppDelegate.h */, - 4C49B2D115B0991B003512CD /* AppDelegate.m */, - 4C49B2D715B0991B003512CD /* ViewController.h */, - 4C49B2D815B0991B003512CD /* ViewController.mm */, + 74AC9EBC1E2CE407003C9749 /* ViewController.swift */, + 74EEBAEE1E2D13A6004C6C65 /* AppDelegate.swift */, + 74EEBAF01E2D1C7C004C6C65 /* CustomGLKView.swift */, 4C49B2DA15B0991B003512CD /* ViewController_iPhone.xib */, 4C49B2DD15B0991B003512CD /* ViewController_iPad.xib */, 4C49B2C815B0991B003512CD /* Supporting Files */, @@ -167,8 +175,10 @@ children = ( 4C49B2C915B0991B003512CD /* template-Info.plist */, 4C49B2CA15B0991B003512CD /* InfoPlist.strings */, - 4C49B2CD15B0991B003512CD /* main.m */, 4C49B2CF15B0991B003512CD /* template-Prefix.pch */, + 74AC9EBB1E2CE407003C9749 /* salmontemplate-Bridging-Header.h */, + 74AC9EC01E2CF533003C9749 /* SENamespaceWrapper.h */, + 74AC9EBF1E2CF533003C9749 /* SENamespaceWrapper.cpp */, ); name = "Supporting Files"; sourceTree = ""; @@ -176,12 +186,6 @@ 4C7B819515C40F770024D61A /* Libs */ = { isa = PBXGroup; children = ( - 4CBCD3ED1754F276006831C9 /* libjpeg.a */, - 4C6EB44415C3CFD300316CB6 /* libpng.a */, - 4C7C584A15C31E6500CAE4F4 /* libboost.a */, - 4C77831215BABD68003D5142 /* libvorbis-tremor-ios.a */, - 4C4C807615BA8F5B0037C6CE /* libz.a */, - 4C4C807415BA8F460037C6CE /* libsquirrel.a */, ); name = Libs; sourceTree = ""; @@ -208,12 +212,20 @@ 4CE6A9E315B2F9A4006A3965 /* Game */ = { isa = PBXGroup; children = ( - 4C74849615C5AF7C0056EC44 /* main_code.cpp */, - 4C74849715C5AF7C0056EC44 /* main_code.h */, + 74C3AE3A1E2E35F9003C07F2 /* main_code.cpp */, + 74C3AE3C1E2E35FD003C07F2 /* main_code.h */, ); name = Game; sourceTree = ""; }; + 84D0FEC21E274E3700EC3FE5 /* Products */ = { + isa = PBXGroup; + children = ( + 84D0FEC61E274E3700EC3FE5 /* libvorbis-tremor-ios.a */, + ); + name = Products; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -222,12 +234,14 @@ buildConfigurationList = 4C49B2E215B0991B003512CD /* Build configuration list for PBXNativeTarget "salmontemplate" */; buildPhases = ( 4C49B2B515B0991B003512CD /* Sources */, - 4C49B2B615B0991B003512CD /* Frameworks */, 4C49B2B715B0991B003512CD /* Resources */, + 4C49B2B615B0991B003512CD /* Frameworks */, ); buildRules = ( ); dependencies = ( + 84D0FEC81E274E3F00EC3FE5 /* PBXTargetDependency */, + 84D0FEC01E274DF700EC3FE5 /* PBXTargetDependency */, ); name = salmontemplate; productName = doublehitballs; @@ -240,7 +254,13 @@ 4C49B2B015B0991B003512CD /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0430; + LastUpgradeCheck = 0800; + TargetAttributes = { + 4C49B2B815B0991B003512CD = { + DevelopmentTeam = R89DR83966; + LastSwiftMigration = 0820; + }; + }; }; buildConfigurationList = 4C49B2B315B0991B003512CD /* Build configuration list for PBXProject "salmontemplate" */; compatibilityVersion = "Xcode 3.2"; @@ -257,6 +277,10 @@ ProductGroup = 4C902A7115C5735500FBC901 /* Products */; ProjectRef = 4C902A7015C5735500FBC901 /* Salmon Engine.xcodeproj */; }, + { + ProductGroup = 84D0FEC21E274E3700EC3FE5 /* Products */; + ProjectRef = 84D0FEC11E274E3700EC3FE5 /* vorbis-tremor-ios.xcodeproj */; + }, ); projectRoot = ""; targets = ( @@ -273,6 +297,13 @@ remoteRef = 4C902A7715C5735700FBC901 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; + 84D0FEC61E274E3700EC3FE5 /* libvorbis-tremor-ios.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libvorbis-tremor-ios.a"; + remoteRef = 84D0FEC51E274E3700EC3FE5 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; /* End PBXReferenceProxy section */ /* Begin PBXResourcesBuildPhase section */ @@ -297,17 +328,31 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4C49B2CE15B0991B003512CD /* main.m in Sources */, - 4C49B2D215B0991B003512CD /* AppDelegate.m in Sources */, - 4C49B2D915B0991B003512CD /* ViewController.mm in Sources */, + 74EEBAEF1E2D13A6004C6C65 /* AppDelegate.swift in Sources */, + 74C3AE3B1E2E35F9003C07F2 /* main_code.cpp in Sources */, + 74EEBAF11E2D1C7C004C6C65 /* CustomGLKView.swift in Sources */, + 74AC9EBD1E2CE407003C9749 /* ViewController.swift in Sources */, + 74AC9EC11E2CF533003C9749 /* SENamespaceWrapper.cpp in Sources */, 4C7AD44C15B1D77700A599F6 /* ios_api.cpp in Sources */, 4CCC0ECC15B30D6B005432FB /* CustomGLKView.mm in Sources */, - 4C74849815C5AF7C0056EC44 /* main_code.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ +/* Begin PBXTargetDependency section */ + 84D0FEC01E274DF700EC3FE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Salmon Engine"; + targetProxy = 84D0FEBF1E274DF700EC3FE5 /* PBXContainerItemProxy */; + }; + 84D0FEC81E274E3F00EC3FE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "vorbis-tremor-ios"; + targetProxy = 84D0FEC71E274E3F00EC3FE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + /* Begin PBXVariantGroup section */ 4C49B2CA15B0991B003512CD /* InfoPlist.strings */ = { isa = PBXVariantGroup; @@ -340,12 +385,27 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + ARCHS = ( + "$(ARCHS_STANDARD)", + x86_64, + ); CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -353,12 +413,17 @@ ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 5.1; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; + VALID_ARCHS = "arm64 armv7 armv7s i386 x86_64"; }; name = Debug; }; @@ -366,20 +431,38 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + ARCHS = ( + "$(ARCHS_STANDARD)", + x86_64, + ); CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 5.1; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; + VALID_ARCHS = "arm64 armv7 armv7s i386 x86_64"; }; name = Release; }; @@ -388,6 +471,8 @@ buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + DEVELOPMENT_TEAM = R89DR83966; GCC_INLINES_ARE_PRIVATE_EXTERN = NO; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "template-Prefix.pch"; @@ -400,40 +485,26 @@ GCC_PREPROCESSOR_DEFINITIONS_NOT_USED_IN_PRECOMPS = ""; "GCC_THUMB_SUPPORT[arch=armv6]" = ""; HEADER_SEARCH_PATHS = ( - "$(SalmonEnginePath)", - "$(LibsPath)/lpng1510", - "$(LibsPath)/sqplus/sqplus", - "$(LibsPath)/sqplus/include", - "$(LibsPath)/boost_1_52_0", - ../jni, - "$(LibsPath)/vorbis-tremor-ios/vorbis", - "$(LibsPath)/jpeg-9", - "$(LibsPath)/jpeg-9/vc10", + ../../engine, + ../../libs/lpng1510, + ../../libs/sqplus/sqplus, + ../../libs/sqplus/include, + ../../boost_1_63_0, + ../game, + "../../libs/vorbis-tremor-ios/vorbis", + "../../libs/jpeg-9", + "../../libs/jpeg-9/vc10", ); INFOPLIST_FILE = "template-Info.plist"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../../libs/jpeg-9/build-ios/ios-device\"", - ); - "LIBRARY_SEARCH_PATHS[sdk=iphoneos*]" = ( - "$(LibsPath)/lpng1510/build-ios/ios-device", - "$(LibsPath)/boost_1_52_0/build-ios/ios-device", - "$(LibsPath)/sqplus/build-ios/ios-device", - "$(LibsPath)/zlib-1.2.6/build-ios/ios-device", - "$(LibsPath)/vorbis-tremor-ios/build-ios/ios-device", - "$(LibsPath)/jpeg-9/build-ios/ios-device", - ); - "LIBRARY_SEARCH_PATHS[sdk=iphonesimulator*]" = ( - "$(LibsPath)/lpng1510/build-ios/ios-simulator", - "$(LibsPath)/sqplus/build-ios/ios-simulator", - "$(LibsPath)/boost_1_52_0/build-ios/ios-simulator", - "$(LibsPath)/zlib-1.2.6/build-ios/ios-simulator", - "$(LibsPath)/vorbis-tremor-ios/build-ios/ios-simulator", - "$(LibsPath)/jpeg-9/build-ios/ios-simulator", - ); + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = fishrungames.template; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "salmontemplate-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; SYMROOT = build; TARGETED_DEVICE_FAMILY = 1; + VALID_ARCHS = "arm64 armv7 armv7s i386 x86_64"; WRAPPER_EXTENSION = app; }; name = Debug; @@ -443,6 +514,8 @@ buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + DEVELOPMENT_TEAM = R89DR83966; GCC_INLINES_ARE_PRIVATE_EXTERN = NO; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "template-Prefix.pch"; @@ -454,39 +527,24 @@ GCC_SYMBOLS_PRIVATE_EXTERN = NO; "GCC_THUMB_SUPPORT[arch=armv6]" = ""; HEADER_SEARCH_PATHS = ( - "$(SalmonEnginePath)", - "$(LibsPath)/lpng1510", - "$(LibsPath)/sqplus/sqplus", - "$(LibsPath)/sqplus/include", - "$(LibsPath)/boost_1_52_0", - ../jni, - "$(LibsPath)/vorbis-tremor-ios/vorbis", - "$(LibsPath)/jpeg-9", - "$(LibsPath)/jpeg-9/vc10", + ../../engine, + ../../libs/lpng1510, + ../../libs/sqplus/sqplus, + ../../libs/sqplus/include, + ../../boost_1_63_0, + ../game, + "../../libs/vorbis-tremor-ios/vorbis", + "../../libs/jpeg-9", + "../../libs/jpeg-9/vc10", ); INFOPLIST_FILE = "template-Info.plist"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../../libs/jpeg-9/build-ios/ios-device\"", - ); - "LIBRARY_SEARCH_PATHS[sdk=iphoneos*]" = ( - "$(LibsPath)/lpng1510/build-ios/ios-device", - "$(LibsPath)/boost_1_52_0/build-ios/ios-device", - "$(LibsPath)/sqplus/build-ios/ios-device", - "$(LibsPath)/zlib-1.2.6/build-ios/ios-device", - "$(LibsPath)/vorbis-tremor-ios/build-ios/ios-device", - "$(LibsPath)/jpeg-9/build-ios/ios-device", - ); - "LIBRARY_SEARCH_PATHS[sdk=iphonesimulator*]" = ( - "$(LibsPath)/lpng1510/build-ios/ios-simulator", - "$(LibsPath)/sqplus/build-ios/ios-simulator", - "$(LibsPath)/boost_1_52_0/build-ios/ios-simulator", - "$(LibsPath)/zlib-1.2.6/build-ios/ios-simulator", - "$(LibsPath)/vorbis-tremor-ios/build-ios/ios-simulator", - "$(LibsPath)/jpeg-9/build-ios/ios-simulator", - ); + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = fishrungames.template; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "salmontemplate-Bridging-Header.h"; + SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = 1; + VALID_ARCHS = "arm64 armv7 armv7s i386 x86_64"; WRAPPER_EXTENSION = app; }; name = Release; diff --git a/iOS/template-Info.plist b/proj.ios/template-Info.plist old mode 100644 new mode 100755 similarity index 94% rename from iOS/template-Info.plist rename to proj.ios/template-Info.plist index d06ba45..b45d6f6 --- a/iOS/template-Info.plist +++ b/proj.ios/template-Info.plist @@ -1,50 +1,50 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleDisplayName - Salmon Universal Template - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIconFile - Icon.png - CFBundleIdentifier - fishrungames.template - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1.0 - LSRequiresIPhoneOS - - UILaunchImageFile - Splash-landscape.png - UIPrerenderedIcon - - UIRequiredDeviceCapabilities - - armv7 - - UIStatusBarHidden - - UISupportedInterfaceOrientations - - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - + + + + + CFBundleDevelopmentRegion + en + CFBundleDisplayName + Salmon Universal Template + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + Icon.png + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + UILaunchImageFile + Splash-landscape.png + UIPrerenderedIcon + + UIRequiredDeviceCapabilities + + armv7 + + UIStatusBarHidden + + UISupportedInterfaceOrientations + + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/iOS/template-Prefix.pch b/proj.ios/template-Prefix.pch old mode 100644 new mode 100755 similarity index 100% rename from iOS/template-Prefix.pch rename to proj.ios/template-Prefix.pch