add_llvm_subdirectory(FLANG TOOL ${name})
endmacro()
-macro(add_flang_library name)
+function(add_flang_library name)
+ set(options SHARED STATIC INSTALL_WITH_TOOLCHAIN)
+ set(multiValueArgs ADDITIONAL_HEADERS CLANG_LIBS)
cmake_parse_arguments(ARG
- "SHARED;STATIC;INSTALL_WITH_TOOLCHAIN"
+ "${options}"
""
- "ADDITIONAL_HEADERS"
+ "${multiValueArgs}"
${ARGN})
+
set(srcs)
if (MSVC_IDE OR XCODE)
# Add public headers
llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs})
+ clang_target_link_libraries(${name} PRIVATE ${ARG_CLANG_LIBS})
+
if (TARGET ${name})
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "libflang"
set_target_properties(${name} PROPERTIES FOLDER "Flang libraries")
set_flang_windows_version_resource_properties(${name})
-endmacro(add_flang_library)
+endfunction(add_flang_library)
macro(add_flang_executable name)
add_llvm_executable(${name} ${ARGN})
TargetParser
FrontendOpenACC
FrontendOpenMP
-)
-
-if(CLANG_LINK_CLANG_DYLIB)
- add_dependencies(flangFrontend clang-cpp)
-else()
- add_dependencies(flangFrontend clangBasic)
-endif()
-clang_target_link_libraries(flangFrontend
- PRIVATE
+ CLANG_LIBS
clangBasic
clangDriver
)
LINK_COMPONENTS
Option
Support
-)
-
-if(CLANG_LINK_CLANG_DYLIB)
- add_dependencies(flangFrontend clang-cpp)
-else()
- add_dependencies(flangFrontendTool clangBasic)
-endif()
-clang_target_link_libraries(flangFrontendTool
- PRIVATE
+ CLANG_LIBS
clangBasic
clangDriver
)