Watch apps fail to link due to missing path for bitcode symbol map
Created by: rmaz
Currently it is not possible to link watch apps built with buck. This is due to the default link options being specified in https://github.com/facebook/buck/blob/6f7961687cafc29d25230507a539fd17d4c05895/src/com/facebook/buck/apple/AppleCxxPlatforms.java#L201
The bitcode_symbol_map
flag requires a path:
-bitcode_symbol_map path
Specifies the output for bitcode symbol reverse mapping (.bcsymbolmap). If path is an existing directory,
UUID.bcsymbolmap will be written to that directory. Otherwise, the reverse map will be written to a file at
path.
This causes linker errors as the next arg in the link list is interpreted as a path and fails the link.
Ideally we would pass in the gen folder for the linked target in at this point, but that is not possible from this method. This should be removed from the platform and added in some helper class further up IMO. In the short term we can just remove these flags and add them to the specific targets that require them. Another simple alternative is to specify a single folder path here, but that makes it difficult to know what symbolmap belongs to which target.