diff --git a/build/fbcode_builder/getdeps/builder.py b/build/fbcode_builder/getdeps/builder.py index 3ed744bba..a8a7c15a0 100644 --- a/build/fbcode_builder/getdeps/builder.py +++ b/build/fbcode_builder/getdeps/builder.py @@ -799,6 +799,7 @@ class Boost(BuilderBase): self.b2_args = b2_args def _build(self, install_dirs, reconfigure): + env = self._compute_env(install_dirs) linkage = ["static"] if self.build_opts.is_windows(): linkage.append("shared") @@ -814,12 +815,14 @@ class Boost(BuilderBase): for link in linkage: if self.build_opts.is_windows(): bootstrap = os.path.join(self.src_dir, "bootstrap.bat") - self._run_cmd([bootstrap], cwd=self.src_dir) + self._run_cmd([bootstrap], cwd=self.src_dir, env=env) args += ["address-model=64"] else: bootstrap = os.path.join(self.src_dir, "bootstrap.sh") self._run_cmd( - [bootstrap, "--prefix=%s" % self.inst_dir], cwd=self.src_dir + [bootstrap, "--prefix=%s" % self.inst_dir], + cwd=self.src_dir, + env=env, ) b2 = os.path.join(self.src_dir, "b2") @@ -843,6 +846,7 @@ class Boost(BuilderBase): "install", ], cwd=self.src_dir, + env=env, ) diff --git a/build/fbcode_builder/getdeps/buildopts.py b/build/fbcode_builder/getdeps/buildopts.py index ec7f7b0be..2c7cad9aa 100644 --- a/build/fbcode_builder/getdeps/buildopts.py +++ b/build/fbcode_builder/getdeps/buildopts.py @@ -187,6 +187,12 @@ class BuildOptions(object): env["GETDEPS_BUILD_DIR"] = os.path.join(self.scratch_dir, "build") env["GETDEPS_INSTALL_DIR"] = self.install_dir + # On macOS we need to set `SDKROOT` when we use clang for system + # header files. + if self.is_darwin() and "SDKROOT" not in env: + sdkroot = subprocess.check_output(["xcrun", "--show-sdk-path"]) + env["SDKROOT"] = sdkroot.decode().strip() + if self.fbsource_dir: env["YARN_YARN_OFFLINE_MIRROR"] = os.path.join( self.fbsource_dir, "xplat/third-party/yarn/offline-mirror"