diff --git a/pylib/gyp/generator/ninja.py b/pylib/gyp/generator/ninja.py index 3644b266..48f6fe6e 100644 --- a/pylib/gyp/generator/ninja.py +++ b/pylib/gyp/generator/ninja.py @@ -42,7 +42,7 @@ # the start of a string, while $| is used for variables that can appear # anywhere in a string. "INTERMEDIATE_DIR": "$!INTERMEDIATE_DIR", - "SHARED_INTERMEDIATE_DIR": "$!PRODUCT_DIR/gen", + "SHARED_INTERMEDIATE_DIR": "$!PRODUCT_DIR/$|OBJ/gen", "PRODUCT_DIR": "$!PRODUCT_DIR", "CONFIGURATION_NAME": "$|CONFIGURATION_NAME", # Special variables that may be used by gyp 'rule' targets. @@ -285,7 +285,8 @@ def ExpandSpecial(self, path, product_dir=None): CONFIGURATION_NAME = "$|CONFIGURATION_NAME" path = path.replace(CONFIGURATION_NAME, self.config_name) - return path + obj = "obj" if self.toolset == "target" else f"obj.{self.toolset}" + return path.replace("$|OBJ", obj) def ExpandRuleVariables(self, path, root, dirname, source, ext, name): if self.flavor == "win":