Created by: zayhero-zz
In PR #1164, we introduce the logic to allow SwiftCompile use the header maps to built bridging headers. However, we encounter race condition issue when we building with this logic.
The headers maps, is generated by CxxLibraryDescription, and SwiftCompile step is generated by SwiftLibraryDescription. These two build rules are running in parallel, so its not guarantee that header maps are ready when we running SwiftCpmile.
To fix this issue, I am making changes to:
- passing the headers from
AppleLibraryDescription
andAppleBinaryDescription
toSwiftLibraryDescription
- in
SwiftLibraryDescription
, use the headers to generate symlink tree build rules for headers - force
SwiftCompile
build rule depends on the symlink tree build rules
@ryu2 @nguyentruongtho Could you take a look? Thanks!