commit | ee185c4c20ea4384bc3cbf8ccd8705c904154abb | [log] [tgz] |
---|---|---|
author | Googler <noreply@google.com> | Mon Feb 24 12:56:39 2020 -0500 |
committer | David Goldman <davg@google.com> | Tue Feb 25 10:35:29 2020 -0500 |
tree | 88afbad9cf20c5256da7e96a42b4eaa71e4a73ae | |
parent | cbbe3d773747e434cb8a0321a61674eeeb93690b [diff] |
Use last_downstream_green instead of last_green > last_green refers to the Bazel binary that was built at the most recent commit that passed Bazel CI. Ideally this binary should be very close to Bazel-at-head. > last_downstream_green points to the most recent Bazel binary that builds and tests all downstream projects successfully. We should not blindly use Bazel@HEAD for Tulsi, instead we should use a known commit that works for all downstream projects (including Tulsi). This way, a bug or an incompatible change like bazelbuild/bazel#10829 can be detected when we see Tulsi is green in the main pipeline but red in the downstream pipeline. Close https://github.com/bazelbuild/tulsi/pull/129 PiperOrigin-RevId: 296914365
.bazelrc
to see if the Xcode version used by Tulsi is installed locally. If it isn't, feel free to remove the --xcode_version
flag or modify it as you wish, but note that Tulsi may not build correctly with different versions of Xcode.build_and_run.sh
. This will install Tulsi.app inside ~/Applications.Tulsi-generated Xcode projects use Bazel to build, not Xcode via xcbuild. This means that many common components of an Xcode project are handled differently than you may be used to. Notable differences:
bazel
invocations, some of which may affect Bazel caching. In order to maximize cache re-use when building from the command line, try using the user_build.py
script which is located in the generated xcodeproj at <xcodeproj>/.tulsi/Scripts/user_build.py
.Tulsi projects contain a few settings which control various behaviors during project generation and builds.
build
flags, customizable per compilation mode (dbg
and opt
)build
startup flags, also customizable per compilation modedbg
or opt
, no fastbuild
) used during project generation.dbg
, swap to opt
if you normally build Release builds in Xcode (i.e. profiling your app). Setting this improperly shouldn't break your project although it may potentially worsen generation and build performance.No
, swap to Yes
if your project contains Swift (even in its dependencies). Setting this improperly shouldn't break your project although it may potentially worsen generation and build performance.