Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • B buck
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 201
    • Issues 201
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 22
    • Merge requests 22
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Meta
  • buck
  • Merge requests
  • !2459

[Fix] Strip symlink root from headers module map

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Administrator requested to merge github/fork/tjwio/fix/headers_module_map into master May 06, 2020
  • Overview 8
  • Commits 4
  • Pipelines 0
  • Changes 3

Created by: tjwio

Background When using modulemap_mode = HEADERS, buck was successfully building the module map but it would include the header symlink root in the header path which would cause it to not be found in the xcode header search paths. ie. for the module map generated at gen/out/folder/anotherfolder/module_name.modulemap it would include headers like: header "gen/out/folder/anotherfolder/module_name/HeaderTest.h" when it should actually be header "HeaderTest.h"

UPDATE: Seems to be two cases actually, one of which is already handled and the other not. The case where relative path to header is already handled (ie. Library/A.h) and working. However, there is another case (not sure how to get to the state but our buck config generates targets in this state) where the module map includes FULL header paths instead of relative ones (ie. gen/out/folder/anotherfolder/Library/A.h). So we need to handle both cases in ModuleMapFactory and check for both prefixes and strip them out if possible.

Change Strip out symlink root along with module name from headers generation

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/tjwio/fix/headers_module_map