It also removes the cycle-dependency between FortranSemantics and FortranEvaluate.
Details
- Reviewers
jdoerfert sscalpone DavidTruby - Group Reviewers
Restricted Project - Commits
- rG2d6b9dbfef55: [flang] Use the Flang cmake-functions to add targets.
Diff Detail
Event Timeline
flang/lib/Evaluate/CMakeLists.txt | ||
---|---|---|
35 | This dependency was added here: https://reviews.llvm.org/rGa1726e65bc1fdbd2800839e48e68cb4a68cc7092 |
flang/lib/Evaluate/CMakeLists.txt | ||
---|---|---|
35 | I have verified with four configurations ( gcc-8+gold, gcc-9+gold, clang-8+lld and clang-9+lld) on Ubuntu 18.04 x86_64. |
flang/lib/Evaluate/CMakeLists.txt | ||
---|---|---|
35 | That sounds good to me. |
I don't have commit access.
Please, Someone who has commit access commit these changes.
@ChinouneMehdi this looks good to me and I can commit it for you, could you let me know what email address you want used?
Thanks!
flang/lib/Evaluate/CMakeLists.txt | ||
---|---|---|
35 | I'm not sure why it doesn't reintroduce the linker issue from there, but it doesn't seem to. I'll just double check on the configuration I used there. |
flang/lib/Evaluate/CMakeLists.txt | ||
---|---|---|
35 | Yep, no issue with this patch. Not sure why the issue has gone away, but it should make fixing shared library builds easier! |
flang still can't be build with -DBUILD_SHARED_LIBS=ON, at link time it fails. As of now I see following libraries libFortranDecimal libFortranCommon libFortranLower libLLVMDemangle and libLLVMSupport are getting building fine. I suspect there is some circular dependency between libFortranParser libFortranSemantics and libFortranEvaluate ?
Static build's are fine.
It's a known issue, there is a circular dependency between FortranEvaluate and FortranParser.
It's a known issue, there is a circular dependency between FortranEvaluate and FortranParser.
The circular dependency is between FortranEvaluate and FortranSemantics.
This dependency was added here: https://reviews.llvm.org/rGa1726e65bc1fdbd2800839e48e68cb4a68cc7092
Have you verified that this change doesn't re-introduce the problem that that one was fixing?