Implement universal framework
This commit is contained in:
@@ -3,5 +3,7 @@ osx_image: xcode61
|
|||||||
before_install:
|
before_install:
|
||||||
- gem install cocoapods
|
- gem install cocoapods
|
||||||
- gem install xcpretty
|
- gem install xcpretty
|
||||||
script: xcodebuild -project Stencil.xcodeproj -scheme Stencil test | xcpretty -c; exit ${PIPESTATUS[0]}
|
script:
|
||||||
|
- set -o pipefail
|
||||||
|
- xcodebuild -project Stencil.xcodeproj -scheme Stencil test | xcpretty -c
|
||||||
|
- xcodebuild -project Stencil.xcodeproj -scheme Stencil test -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty -c
|
||||||
|
|||||||
18
Configurations/UniversalFramework_Base.xcconfig
Normal file
18
Configurations/UniversalFramework_Base.xcconfig
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
//
|
||||||
|
// UniversalFramework_Base.xcconfig
|
||||||
|
// Stencil
|
||||||
|
//
|
||||||
|
// Created by Marius Rackwitz on 29/11/14.
|
||||||
|
// Copyright (c) 2014 Marius Rackwitz. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
// Make it universal
|
||||||
|
SUPPORTED_PLATFORMS = iphonesimulator iphoneos macosx
|
||||||
|
VALID_ARCHS[sdk=iphoneos*] = arm64 armv7 armv7s
|
||||||
|
VALID_ARCHS[sdk=iphonesimulator*] = arm64 armv7 armv7s
|
||||||
|
VALID_ARCHS[sdk=macosx*] = i386 x86_64
|
||||||
|
|
||||||
|
// Dynamic linking uses different default copy paths
|
||||||
|
LD_RUNPATH_SEARCH_PATHS[sdk=iphoneos*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||||
|
LD_RUNPATH_SEARCH_PATHS[sdk=iphonesimulator*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||||
|
LD_RUNPATH_SEARCH_PATHS[sdk=macosx*] = $(inherited) '@executable_path/../Frameworks' '@loader_path/Frameworks'
|
||||||
18
Configurations/UniversalFramework_Framework.xcconfig
Normal file
18
Configurations/UniversalFramework_Framework.xcconfig
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
//
|
||||||
|
// UniversalFramework_Framework.xcconfig
|
||||||
|
// Stencil
|
||||||
|
//
|
||||||
|
// Created by Marius Rackwitz on 29/11/14.
|
||||||
|
// Copyright (c) 2014 Marius Rackwitz. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "UniversalFramework_Base.xcconfig"
|
||||||
|
|
||||||
|
// iOS-specific default settings
|
||||||
|
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer
|
||||||
|
TARGETED_DEVICE_FAMILY[sdk=iphonesimulator*] = 1,2
|
||||||
|
TARGETED_DEVICE_FAMILY[sdk=iphone*] = 1,2
|
||||||
|
|
||||||
|
// OSX-specific default settings
|
||||||
|
FRAMEWORK_VERSION[sdk=macosx*] = A
|
||||||
|
COMBINE_HIDPI_IMAGES[sdk=macosx*] = YES
|
||||||
16
Configurations/UniversalFramework_Test.xcconfig
Normal file
16
Configurations/UniversalFramework_Test.xcconfig
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// UniversalFramework_Test.xcconfig
|
||||||
|
// Stencil
|
||||||
|
//
|
||||||
|
// Created by Marius Rackwitz on 29/11/14.
|
||||||
|
// Copyright (c) 2014 Marius Rackwitz. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "UniversalFramework_Base.xcconfig"
|
||||||
|
|
||||||
|
FRAMEWORK_SEARCH_PATHS[sdk=iphoneos*] = $(inherited) '$(SDKROOT)/Developer/Library/Frameworks'
|
||||||
|
FRAMEWORK_SEARCH_PATHS[sdk=iphonesimulator*] = $(inherited) '$(SDKROOT)/Developer/Library/Frameworks'
|
||||||
|
FRAMEWORK_SEARCH_PATHS[sdk=macosx*] = $(inherited) '$(DEVELOPER_FRAMEWORKS_DIR)'
|
||||||
|
|
||||||
|
// Yep.
|
||||||
|
LD_RUNPATH_SEARCH_PATHS[sdk=macosx*] = $(inherited) '@executable_path/../Frameworks' '@loader_path/../Frameworks'
|
||||||
@@ -7,6 +7,9 @@
|
|||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
|
27E2138D1A4CD5F50073E063 /* UniversalFramework_Base.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 27E2138A1A4CD5F50073E063 /* UniversalFramework_Base.xcconfig */; };
|
||||||
|
27E2138E1A4CD5F50073E063 /* UniversalFramework_Framework.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 27E2138B1A4CD5F50073E063 /* UniversalFramework_Framework.xcconfig */; };
|
||||||
|
27E2138F1A4CD5F50073E063 /* UniversalFramework_Test.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 27E2138C1A4CD5F50073E063 /* UniversalFramework_Test.xcconfig */; };
|
||||||
71CE4C0A19FD29D000B9E0C5 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71CE4C0919FD29D000B9E0C5 /* Result.swift */; };
|
71CE4C0A19FD29D000B9E0C5 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71CE4C0919FD29D000B9E0C5 /* Result.swift */; };
|
||||||
7725B3CB19F92B4F002CF74B /* VariableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7725B3CA19F92B4F002CF74B /* VariableTests.swift */; };
|
7725B3CB19F92B4F002CF74B /* VariableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7725B3CA19F92B4F002CF74B /* VariableTests.swift */; };
|
||||||
7725B3CD19F92B61002CF74B /* Variable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7725B3CC19F92B61002CF74B /* Variable.swift */; };
|
7725B3CD19F92B61002CF74B /* Variable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7725B3CC19F92B61002CF74B /* Variable.swift */; };
|
||||||
@@ -37,6 +40,9 @@
|
|||||||
/* End PBXContainerItemProxy section */
|
/* End PBXContainerItemProxy section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
|
27E2138A1A4CD5F50073E063 /* UniversalFramework_Base.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = UniversalFramework_Base.xcconfig; sourceTree = "<group>"; };
|
||||||
|
27E2138B1A4CD5F50073E063 /* UniversalFramework_Framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = UniversalFramework_Framework.xcconfig; sourceTree = "<group>"; };
|
||||||
|
27E2138C1A4CD5F50073E063 /* UniversalFramework_Test.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = UniversalFramework_Test.xcconfig; sourceTree = "<group>"; };
|
||||||
71CE4C0919FD29D000B9E0C5 /* Result.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Result.swift; sourceTree = "<group>"; };
|
71CE4C0919FD29D000B9E0C5 /* Result.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Result.swift; sourceTree = "<group>"; };
|
||||||
7725B3CA19F92B4F002CF74B /* VariableTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VariableTests.swift; sourceTree = "<group>"; };
|
7725B3CA19F92B4F002CF74B /* VariableTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VariableTests.swift; sourceTree = "<group>"; };
|
||||||
7725B3CC19F92B61002CF74B /* Variable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Variable.swift; sourceTree = "<group>"; };
|
7725B3CC19F92B61002CF74B /* Variable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Variable.swift; sourceTree = "<group>"; };
|
||||||
@@ -78,11 +84,22 @@
|
|||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
|
27E213891A4CD5F50073E063 /* Configurations */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
27E2138A1A4CD5F50073E063 /* UniversalFramework_Base.xcconfig */,
|
||||||
|
27E2138B1A4CD5F50073E063 /* UniversalFramework_Framework.xcconfig */,
|
||||||
|
27E2138C1A4CD5F50073E063 /* UniversalFramework_Test.xcconfig */,
|
||||||
|
);
|
||||||
|
path = Configurations;
|
||||||
|
sourceTree = SOURCE_ROOT;
|
||||||
|
};
|
||||||
77FAAE4819F91E480029DC5E = {
|
77FAAE4819F91E480029DC5E = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
77FAAE5419F91E480029DC5E /* Stencil */,
|
77FAAE5419F91E480029DC5E /* Stencil */,
|
||||||
77FAAE6119F91E480029DC5E /* StencilTests */,
|
77FAAE6119F91E480029DC5E /* StencilTests */,
|
||||||
|
27E213891A4CD5F50073E063 /* Configurations */,
|
||||||
77FAAE5319F91E480029DC5E /* Products */,
|
77FAAE5319F91E480029DC5E /* Products */,
|
||||||
);
|
);
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -234,6 +251,9 @@
|
|||||||
isa = PBXResourcesBuildPhase;
|
isa = PBXResourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
27E2138F1A4CD5F50073E063 /* UniversalFramework_Test.xcconfig in Resources */,
|
||||||
|
27E2138E1A4CD5F50073E063 /* UniversalFramework_Framework.xcconfig in Resources */,
|
||||||
|
27E2138D1A4CD5F50073E063 /* UniversalFramework_Base.xcconfig in Resources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -370,6 +390,7 @@
|
|||||||
};
|
};
|
||||||
77FAAE6919F91E480029DC5E /* Debug */ = {
|
77FAAE6919F91E480029DC5E /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
|
baseConfigurationReference = 27E2138B1A4CD5F50073E063 /* UniversalFramework_Framework.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
COMBINE_HIDPI_IMAGES = YES;
|
COMBINE_HIDPI_IMAGES = YES;
|
||||||
@@ -380,7 +401,6 @@
|
|||||||
FRAMEWORK_VERSION = A;
|
FRAMEWORK_VERSION = A;
|
||||||
INFOPLIST_FILE = Stencil/Info.plist;
|
INFOPLIST_FILE = Stencil/Info.plist;
|
||||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
@@ -389,6 +409,7 @@
|
|||||||
};
|
};
|
||||||
77FAAE6A19F91E480029DC5E /* Release */ = {
|
77FAAE6A19F91E480029DC5E /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
|
baseConfigurationReference = 27E2138B1A4CD5F50073E063 /* UniversalFramework_Framework.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
COMBINE_HIDPI_IMAGES = YES;
|
COMBINE_HIDPI_IMAGES = YES;
|
||||||
@@ -399,7 +420,6 @@
|
|||||||
FRAMEWORK_VERSION = A;
|
FRAMEWORK_VERSION = A;
|
||||||
INFOPLIST_FILE = Stencil/Info.plist;
|
INFOPLIST_FILE = Stencil/Info.plist;
|
||||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
};
|
};
|
||||||
@@ -407,32 +427,24 @@
|
|||||||
};
|
};
|
||||||
77FAAE6C19F91E480029DC5E /* Debug */ = {
|
77FAAE6C19F91E480029DC5E /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
|
baseConfigurationReference = 27E2138C1A4CD5F50073E063 /* UniversalFramework_Test.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
COMBINE_HIDPI_IMAGES = YES;
|
COMBINE_HIDPI_IMAGES = YES;
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
"$(inherited)",
|
|
||||||
);
|
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
"DEBUG=1",
|
"DEBUG=1",
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
);
|
);
|
||||||
INFOPLIST_FILE = StencilTests/Info.plist;
|
INFOPLIST_FILE = StencilTests/Info.plist;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
};
|
};
|
||||||
77FAAE6D19F91E480029DC5E /* Release */ = {
|
77FAAE6D19F91E480029DC5E /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
|
baseConfigurationReference = 27E2138C1A4CD5F50073E063 /* UniversalFramework_Test.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
COMBINE_HIDPI_IMAGES = YES;
|
COMBINE_HIDPI_IMAGES = YES;
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
"$(inherited)",
|
|
||||||
);
|
|
||||||
INFOPLIST_FILE = StencilTests/Info.plist;
|
INFOPLIST_FILE = StencilTests/Info.plist;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Cocoa
|
import Foundation
|
||||||
import XCTest
|
import XCTest
|
||||||
import Stencil
|
import Stencil
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Cocoa
|
import Foundation
|
||||||
import XCTest
|
import XCTest
|
||||||
import Stencil
|
import Stencil
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Cocoa
|
import Foundation
|
||||||
import XCTest
|
import XCTest
|
||||||
import Stencil
|
import Stencil
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Cocoa
|
import Foundation
|
||||||
import XCTest
|
import XCTest
|
||||||
import Stencil
|
import Stencil
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Cocoa
|
import Foundation
|
||||||
import XCTest
|
import XCTest
|
||||||
import Stencil
|
import Stencil
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Cocoa
|
import Foundation
|
||||||
import XCTest
|
import XCTest
|
||||||
import Stencil
|
import Stencil
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Cocoa
|
import Foundation
|
||||||
import XCTest
|
import XCTest
|
||||||
import Stencil
|
import Stencil
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user