{"push_id":1244677741,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"af4a756e8a982781783f8e643184b25901bf0899","before":"6e527ff6d11bc20a1ce19fd22f86c3a5d886be6b","commits":[{"sha":"af4a756e8a982781783f8e643184b25901bf0899","author":{"name":"Mark Wang","email":"ef7450a1f0ef1dd83819119188f9feef0990e9ee@fb.com"},"message":"Add prebuilt dynamic framework support\n\nSummary:\nManually imported from https://github.com/facebook/buck/pull/818\n\nThis PR proposes a way to embed prebuilt dynamic frameworks into `apple_bundle`s, linking that framework against the binary for the apple bundle. This is a start to solving #440, in buck it (mostly) works, the project generation still has to be done. The rule syntax for this would be:\n```\nprebuilt_apple_framework(\n    name = 'BuckTest',\n    framework = 'BuckTest.framework',\n)\n```\n\nYou can add this rule to an apple_library or apple_binary, this should do the following:\n- Symlink the `Headers` folder inside the framework as the exposed headers for the rule.\n- Export linkerflag `-rpath loader_path/Frameworks`/ `-rpath executable_path/Frameworks`\n- Export the linkerflag `-framework <frameworkname>`, and `-F path/to/framework/`\n- Embed the framework in the bundle's \"Frameworks\" folder\n\nI've updated the PR to do the following:\n\n- In cxx preprocess deps gathering step, go through the frameworks and see if any is a buildrule. If so add that rule as a preprocessing dep step.\n- Simplify the `prebuilt_apple_framework` build rule to copy the framework to a gen folder, and pass the framework search paths option`-F` to clang on linking and as an preprocessor dep.\n\nLets keep this PR restricted to just the prebuilt framework, and I'll incorporate the feedback for frameworks from `apple_library`'s (and removing the apple library #framework flavor) in a future one.\n\nTest Plan: CI\n\nReviewed By: Coneko\n\nfbshipit-source-id: 772e3c4","distinct":true,"url":"https://api.github.com/repos/facebook/buck/commits/af4a756e8a982781783f8e643184b25901bf0899"}]}
{"actor":{"display_login":"facebook-github-bot-8"}}