diff --git a/build/fbcode_builder/getdeps.py b/build/fbcode_builder/getdeps.py index f488eb6c2..d6cefa27c 100755 --- a/build/fbcode_builder/getdeps.py +++ b/build/fbcode_builder/getdeps.py @@ -468,7 +468,12 @@ class BuildCmd(ProjectCmdBase): build_dir = loader.get_project_build_dir(m) inst_dir = loader.get_project_install_dir(m) - if m == manifest or not args.no_deps: + if ( + m == manifest + and not args.only_deps + or m != manifest + and not args.no_deps + ): print("Assessing %s..." % m.name) project_hash = loader.get_project_hash(m) ctx = loader.ctx_gen.get_context(m.name) @@ -610,6 +615,16 @@ class BuildCmd(ProjectCmdBase): "slow up-to-date-ness checks" ), ) + parser.add_argument( + "--only-deps", + action="store_true", + default=False, + help=( + "Only build the named project's deps. " + "This is most useful when you want to separate out building " + "of all of the deps and your project" + ), + ) parser.add_argument( "--no-build-cache", action="store_false", diff --git a/build/fbcode_builder/manifests/mononoke b/build/fbcode_builder/manifests/mononoke new file mode 100644 index 000000000..c15367b26 --- /dev/null +++ b/build/fbcode_builder/manifests/mononoke @@ -0,0 +1,41 @@ +[manifest] +name = mononoke +fbsource_path = fbcode/eden +shipit_project = eden +shipit_fbcode_builder = true + +[git] +repo_url = https://github.com/facebookexperimental/eden.git + +[build.os=linux] +builder = cargo + +[build.not(os=linux)] +# building Mononoke on windows is not supported +builder = nop + +[cargo] +build_doc = true +workspace_dir = eden/mononoke + +[shipit.pathmap] +fbcode/configerator/structs/scm/mononoke/public_autocargo = eden/mononoke/config_structs +fbcode/configerator/structs/scm/mononoke = eden/mononoke/config_structs +fbcode/eden/oss = . +fbcode/eden = eden +fbcode/eden/mononoke/public_autocargo = eden/mononoke +fbcode/tools/lfs = tools/lfs +tools/rust/ossconfigs = . + +[shipit.strip] +# strip all code unrelated to mononoke to prevent triggering unnecessary checks +^fbcode/eden/(?!mononoke|scm/lib/xdiff.*)/.*$ +^fbcode/eden/mononoke/(?!public_autocargo).+/Cargo\.toml$ +^fbcode/configerator/structs/scm/mononoke/(?!public_autocargo).+/Cargo\.toml$ + +[dependencies] +fbthrift-rust +rust-shed + +[dependencies.fb=on] +rust