[Flang][CMake] Add explicit libFortranCommon dependency for f18 etc.
When I tried Solaris builds with `-DBUILD_SHARED_LIBS=ON`, some commands failed to link: [ 94%] Linking CXX executable ../../../../bin/f18 Undefined first referenced symbol in file Fortran::common::IntrinsicTypeDefaultKinds::set_sizeIntegerKind(int) CMakeFiles/f18.dir/f18.cpp.o (symbol belongs to implicit dependency /var/llvm/local-amd64-release-shared-gcc8-make/lib/libFortranCommon.so.11git) Fortran::common::IntrinsicTypeDefaultKinds::set_subscriptIntegerKind(int) CMakeFiles/f18.dir/f18.cpp.o (symbol belongs to implicit dependency /var/llvm/local-amd64-release-shared-gcc8-make/lib/libFortranCommon.so.11git) Fortran::common::EnumIndexToString[abi:cxx11](int, char const*) CMakeFiles/f18.dir/f18.cpp.o (symbol belongs to implicit dependency /var/llvm/local-amd64-release-shared-gcc8-make/lib/libFortranCommon.so.11git) Fortran::common::IntrinsicTypeDefaultKinds::set_defaultIntegerKind(int) CMakeFiles/f18.dir/f18.cpp.o (symbol belongs to implicit dependency /var/llvm/local-amd64-release-shared-gcc8-make/lib/libFortranCommon.so.11git) Fortran::common::IntrinsicTypeDefaultKinds::IntrinsicTypeDefaultKinds() CMakeFiles/f18.dir/f18.cpp.o (symbol belongs to implicit dependency /var/llvm/local-amd64-release-shared-gcc8-make/lib/libFortranCommon.so.11git) Fortran::common::IntrinsicTypeDefaultKinds::set_defaultRealKind(int) CMakeFiles/f18.dir/f18.cpp.o (symbol belongs to implicit dependency /var/llvm/local-amd64-release-shared-gcc8-make/lib/libFortranCommon.so.11git) ld: fatal: symbol referencing errors This patch fixes this by adding explicit dependencies on `libFortranCommon` to the affected commands. Tested on `amd64-pc-solaris2.11`, `sparcv9-sun-solaris2.11`, and `x86-64-pc-linux-gnu`. Differential Revision: https://reviews.llvm.org/D78761
This commit is contained in:
parent
89f6a2376e
commit
3119bdb5d6
|
@ -5,5 +5,6 @@ add_flang_tool(f18-parse-demo
|
|||
|
||||
target_link_libraries(f18-parse-demo
|
||||
PRIVATE
|
||||
FortranCommon
|
||||
FortranParser
|
||||
)
|
||||
|
|
|
@ -5,6 +5,7 @@ add_flang_tool(f18
|
|||
|
||||
target_link_libraries(f18
|
||||
PRIVATE
|
||||
FortranCommon
|
||||
FortranParser
|
||||
FortranEvaluate
|
||||
FortranSemantics
|
||||
|
|
|
@ -41,6 +41,7 @@ add_executable(expression-test
|
|||
)
|
||||
|
||||
target_link_libraries(expression-test
|
||||
FortranCommon
|
||||
FortranEvaluateTesting
|
||||
FortranEvaluate
|
||||
FortranSemantics
|
||||
|
@ -64,6 +65,7 @@ add_executable(intrinsics-test
|
|||
)
|
||||
|
||||
target_link_libraries(intrinsics-test
|
||||
FortranCommon
|
||||
FortranEvaluateTesting
|
||||
FortranEvaluate
|
||||
FortranDecimal
|
||||
|
@ -130,6 +132,7 @@ add_executable(folding-test
|
|||
)
|
||||
|
||||
target_link_libraries(folding-test
|
||||
FortranCommon
|
||||
FortranEvaluateTesting
|
||||
FortranEvaluate
|
||||
FortranSemantics
|
||||
|
|
Loading…
Reference in New Issue