Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[native] Ensure separate debug and release .a files (#9150)
Context: a7b5768 Context: 2ec6f54 Commit a7b5768, among other things, reorganized the way we build our native runtime. One of the changes was subdivision of source code into separate subdirectories, each of them a separate static library. One of reasons behind it was preparation for the future work where we will be linking the application native runtime dynamically at application build time, mixing and matching various libraries as necessary. For the last reason, some of the `.a` archives are output to the location where we store files to be packaged and distributed to end users. However, what a7b5768 missed was the fact that this mode operation causes later builds to overwrite the earlier ones, since archive names are the same. This can cause, for instance, the library debug build to be silently replaced with the release one. While this won't be a problem on CI (and thus in our distribution packages), it may have weird effects on one's local workflow (e.g. parts of the runtime may be built for release and parts for debug, depending on the build order). Commit 2ec6f54 added a partial solution to this issue, but one that covered only the UBSAN and ASAN scenarios and ignored the debug vs release ones. Complete the fix started by 2ec6f54 by by making all output libraries use the `-debug` or `-release` prefix. Also, libxamarin-native-tracing is not a static library, don't mistakenly treat it as one.
- Loading branch information