46 lines · plain
1# Ensure that libLLVMTargetParser does not carry any static global initializer.2# ManagedStatic can be used to enable lazy-initialization of globals.3#4# HAS_WERROR_GLOBAL_CTORS and LLVM_HAS_NOGLOBAL_CTOR_MUTEX should have been set5# by llvm/lib/Support/CMakeLists.txt (which provides the required Support6# dependency).7if (HAS_WERROR_GLOBAL_CTORS AND NOT LLVM_HAS_NOGLOBAL_CTOR_MUTEX)8 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=global-constructors")9endif()10 11# Solaris code uses kstat, so specify dependency explicitly for shared builds.12if ("${CMAKE_SYSTEM_NAME}" MATCHES "SunOS")13 set(system_libs kstat)14endif()15 16add_llvm_component_library(LLVMTargetParser17 AArch64TargetParser.cpp18 ARMTargetParserCommon.cpp19 ARMTargetParser.cpp20 CSKYTargetParser.cpp21 Host.cpp22 LoongArchTargetParser.cpp23 PPCTargetParser.cpp24 RISCVISAInfo.cpp25 RISCVTargetParser.cpp26 SubtargetFeature.cpp27 TargetParser.cpp28 Triple.cpp29 TargetDataLayout.cpp30 X86TargetParser.cpp31 XtensaTargetParser.cpp32 33 ADDITIONAL_HEADER_DIRS34 Unix35 Windows36 37 LINK_LIBS38 ${system_libs}39 40 LINK_COMPONENTS41 Support42 43 DEPENDS44 target_parser_gen45 )46