Allow header and framework search paths to inherit from the project
This commit is contained in:
parent
2153c7daf1
commit
0eea9275f5
|
@ -21,6 +21,7 @@ Please, check out guidelines: https://keepachangelog.com/en/1.0.0/
|
|||
- Fix manifest target linker errors https://github.com/tuist/tuist/pull/287 by @kwridan
|
||||
- Build settings not being generated properly https://github.com/tuist/tuist/pull/282 by @pepibumur
|
||||
- Fix `instance method nearly matches optional requirements` warning in generated `AppDelegate.swift` in iOS projects https://github.com/tuist/tuist/pull/291 by @BalestraPatrick
|
||||
- Fix Header & Framework search paths override project or xcconfig settings TBC by @ollieatkinson
|
||||
|
||||
## 0.12.0
|
||||
|
||||
|
|
|
@ -178,7 +178,7 @@ final class LinkGenerator: LinkGenerating {
|
|||
|
||||
let pathsValue = Set(paths).sorted().joined(separator: " ")
|
||||
buildConfigurations?.forEach { buildConfiguration in
|
||||
var frameworkSearchPaths = (buildConfiguration.buildSettings["FRAMEWORK_SEARCH_PATHS"] as? String) ?? ""
|
||||
var frameworkSearchPaths = (buildConfiguration.buildSettings["FRAMEWORK_SEARCH_PATHS"] as? String) ?? "$(inherited)"
|
||||
if frameworkSearchPaths.isEmpty {
|
||||
frameworkSearchPaths = pathsValue
|
||||
} else {
|
||||
|
@ -198,7 +198,7 @@ final class LinkGenerator: LinkGenerating {
|
|||
throw LinkGeneratorError.missingConfigurationList(targetName: pbxTarget.name)
|
||||
}
|
||||
configurationList.buildConfigurations.forEach {
|
||||
var headers = ($0.buildSettings["HEADER_SEARCH_PATHS"] as? String) ?? ""
|
||||
var headers = ($0.buildSettings["HEADER_SEARCH_PATHS"] as? String) ?? "$(inherited)"
|
||||
headers.append(" \(relativePaths.joined(separator: " "))")
|
||||
$0.buildSettings["HEADER_SEARCH_PATHS"] = headers
|
||||
}
|
||||
|
|
|
@ -96,7 +96,7 @@ final class LinkGeneratorErrorTests: XCTestCase {
|
|||
pbxTarget: pbxTarget,
|
||||
sourceRootPath: sourceRootPath)
|
||||
|
||||
let expected = "$(SRCROOT)/Dependencies $(SRCROOT)/Dependencies/C"
|
||||
let expected = "$(inherited) $(SRCROOT)/Dependencies $(SRCROOT)/Dependencies/C"
|
||||
XCTAssertEqual(debugConfig.buildSettings["FRAMEWORK_SEARCH_PATHS"] as? String, expected)
|
||||
XCTAssertEqual(releaseConfig.buildSettings["FRAMEWORK_SEARCH_PATHS"] as? String, expected)
|
||||
}
|
||||
|
@ -122,7 +122,7 @@ final class LinkGeneratorErrorTests: XCTestCase {
|
|||
pbxTarget: pbxTarget,
|
||||
sourceRootPath: sourceRootPath)
|
||||
|
||||
XCTAssertEqual(config.buildSettings["HEADER_SEARCH_PATHS"] as? String, " $(SRCROOT)/headers")
|
||||
XCTAssertEqual(config.buildSettings["HEADER_SEARCH_PATHS"] as? String, "$(inherited) $(SRCROOT)/headers")
|
||||
}
|
||||
|
||||
func test_setupHeadersSearchPath_throws_whenTheConfigurationListIsMissing() throws {
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
import ProjectDescription
|
||||
|
||||
let settings = Settings(base: [
|
||||
"HEADER_SEARCH_PATHS": "path/to/lib/include",
|
||||
])
|
||||
let project = Project(name: "MainApp",
|
||||
settings: settings,
|
||||
targets: [
|
||||
Target(name: "App",
|
||||
platform: .iOS,
|
||||
|
|
Loading…
Reference in New Issue