Summary:
This diff expands fbcode_builder so that it can optionally spawn a macos lego job to run a build.
I've pulled in the macOS third party dependencies used by the watchman and eden builds to support this.
Longer term I want to move to a more granular solution for the third party deps. Medium term we can move the logic for managing these deps to somewhere more central than just the watchman code.
In the linux flavor of fbcode builder, the setup step is responsible for installing system packages, so I've inserted the LFS download of the macOS deps into that stage.
In order for those macOS deps to be picked up without modifying the folly cmake we need to adjust the environment so this diff also inserts that logic at the top of each generated sandcastle step.
A similar technique could potentially be used for windows builds, but note that fbcode_builder makes some assumptions about linux and requires that bash be available. Cygwin vs. native paths passed through the environment may be a real concern. That is something for a follow up diff.
Reviewed By: simpkins
Differential Revision: D14514601
fbshipit-source-id: c2882f45aa4b910b5e65ce6b246c750d20ca2948
Summary:
Two things
- Use thenValue instead of then in one specific occurrence as later one has been deprecated
- Build googletest on `release-1.8.1` as it is the one that compiles with c++11
Reviewed By: cenzhao
Differential Revision: D10178139
fbshipit-source-id: 069578716e5e55ef0a25ea87e9ef5ceded1ff9d6
Summary:
this [commit](e3bd4cbeae (diff-af3b638bc2a3e6c650974192a53c7291)) in gtest makes this change necessary. now running cmake from the tld. Also, the option is necessary since they define a dependent variable before the variable it depends on. sigh
Fixes T20971367
Reviewed By: saifhhasan
Differential Revision: D5624039
fbshipit-source-id: afc2cddf0e6436be076314dd40fa991298f698a3
Summary:
this diff provides ci builds for our two open source projects, openr and fbzmq, by leveraging snarkmaster 's awesome tool, fbcode builder. this will run our external cmake build process on lego-linux sandcastle boxes and also generates scripts for building on travis with docker externally.
this diff is modeled on D4441467. it also includes some changes to fbcode builder itself and some minor changes in our cmake files.
snarkmaster , please take a look at my fbcode builder changes. I needed to make some modifications in order to build some of our dependencies which have slightly non-standard build steps and to run tests. I split up the configure step, and I addressed an issue around workdir with cmake. the last workdir was just a relative path, `build`, so it was hard to get back to it in a future step to run tests.
Reviewed By: saifhhasan
Differential Revision: D5141184
fbshipit-source-id: 94cacab807a3a0da4d0d81016d7f36f37656145d