Internal changes
PiperOrigin-RevId: 211458505
diff --git a/src/TulsiGenerator/BazelSettingsProvider.swift b/src/TulsiGenerator/BazelSettingsProvider.swift
index 82e7cd4..ede387b 100644
--- a/src/TulsiGenerator/BazelSettingsProvider.swift
+++ b/src/TulsiGenerator/BazelSettingsProvider.swift
@@ -148,11 +148,19 @@
static let tulsiNonSwiftFlags = BazelFlagsSet(
release: BazelFlags(build: ["--apple_generate_dsym"]))
+ /// Universal flags that apply to all Bazel invocations (even queries).
let universalFlags: BazelFlags
+
+ /// Cache-able flags for builds.
let cacheableFlags: BazelFlagsSet
+
+ /// Non-cacheable flags for builds. Avoid changing these if possible.
let nonCacheableFlags: BazelFlagsSet
+ /// Flags used for targets which depend on Swift.
let swiftFlags: BazelFlagsSet
+
+ /// Flags used for targets which do not depend on Swift.
let nonSwiftFlags: BazelFlagsSet
public convenience init(universalFlags: BazelFlags) {
diff --git a/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift b/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
index feabb33..7f9024c 100644
--- a/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
+++ b/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
@@ -53,11 +53,15 @@
init(bazelURL: URL, workspaceRootURL: URL, localizedMessageLogger: LocalizedMessageLogger) {
let universalFlags: BazelFlags
+ // Install to ~/Library/Application Support when not running inside a test.
if let applicationSupport = ApplicationSupport() {
let tulsiVersion = Bundle.main.infoDictionary?["CFBundleVersion"] as? String ?? "UNKNOWN"
let aspectPath = try! applicationSupport.copyTulsiAspectFiles(tulsiVersion: tulsiVersion)
- universalFlags = BazelFlags(build: ["--override_repository=tulsi=\(aspectPath)"])
- } else {
+ universalFlags = BazelFlags(
+ // TODO(tulsi-team): See if we can avoid using --override_repository.
+ build: ["--override_repository=tulsi=\(aspectPath)"]
+ )
+ } else { // Running inside a test, just refer to the files directly from TulsiGenerator.
let bundle = Bundle(for: type(of: self))
let bazelWorkspace =
bundle.url(forResource: "WORKSPACE", withExtension: nil)!.deletingLastPathComponent()
diff --git a/src/TulsiGenerator/Scripts/bazel_build.py b/src/TulsiGenerator/Scripts/bazel_build.py
index 0f4cc36..0bea027 100755
--- a/src/TulsiGenerator/Scripts/bazel_build.py
+++ b/src/TulsiGenerator/Scripts/bazel_build.py
@@ -1673,6 +1673,9 @@
if __name__ == '__main__':
_LockFileAcquire('/tmp/tulsi_bazel_build.lock')
_logger = tulsi_logging.Logger()
+ logger_warning = tulsi_logging.validity_check()
+ if logger_warning:
+ _PrintXcodeWarning(logger_warning)
_timer = Timer('Everything', 'complete_build').Start()
signal.signal(signal.SIGINT, _InterruptHandler)
_exit_code = main(sys.argv)
diff --git a/src/TulsiGenerator/Scripts/tulsi_logging.py b/src/TulsiGenerator/Scripts/tulsi_logging.py
index f330634..9b72cb2 100755
--- a/src/TulsiGenerator/Scripts/tulsi_logging.py
+++ b/src/TulsiGenerator/Scripts/tulsi_logging.py
@@ -20,6 +20,11 @@
import sys
+def validity_check():
+ """Returns a warning message from logger initialization, if applicable."""
+ return None
+
+
class Logger(object):
"""Tulsi specific logging."""