mirror of
https://github.com/status-im/react-native.git
synced 2025-02-24 07:08:27 +00:00
Summary: This change fixes https://github.com/facebook/react-native/issues/23645. The issue is that the `YGMarker.cpp`, `YGValue.cpp`, `YGConfig.cpp` and `log.cpp` files are already included in the Yoga compilation unit, so including these files in React's compile sources too results in "duplicate symbols" errors when loading React Native with `-force_load` (which behaves slightly differently to `-ObjC` - according to a colleague, "ObjC will scan through each object file in each library and force linking of any object file that contains Objective C code, while force_load will link every object file in a particular staticlib (regardless of whether or not the object file contains Objective C code)"). These changes seemed to be introduced by a few commits: - D13819111 ->43601f1a17
- D13439602 ->b5c66a3fbe
- D14123390->e8f95dc7a1
- D7530369 ->95f625e151
Perhaps we need to check with the original authors/any C++ experts to confirm if this fix is correct - it compiles for me but I'm not sure what the original intention of these changes was. [iOS] [Fixed] - Remove duplicated Yoga compile sources to prevent "duplicate symbols" errors when linking using -force_load Pull Request resolved: https://github.com/facebook/react-native/pull/23823 Reviewed By: davidaurelio Differential Revision: D14387657 Pulled By: hramos fbshipit-source-id: d85221b6dc1a0377662624f4201b27222aed8219