blob: 78eaafc3b5a403f8a4767a6fd5792aac7667c5fe [file] [log] [blame]
NAKAMURA Takumib5c4b8762013-12-10 11:13:32 +00001set(LLVM_LINK_COMPONENTS
Daniel Sanders3e4acaa2019-05-23 23:02:56 +00002 AllTargetsAsmParsers
3 AllTargetsCodeGens
4 AllTargetsDisassemblers
NAKAMURA Takumib5c4b8762013-12-10 11:13:32 +00005 BitReader
6 Core
7 MCDisassembler
8 Object
Amaury Sechetf01be742016-02-05 00:19:50 +00009 Support
NAKAMURA Takumib5c4b8762013-12-10 11:13:32 +000010 Target
11 )
Anders Waldenborgb932c662013-10-23 08:10:20 +000012
Chris Bieneman9ef9c112014-12-18 21:03:49 +000013# We should only have llvm-c-test use libLLVM if libLLVM is built with the
14# default list of components. Using libLLVM with custom components can result in
15# build failures.
16
17set (USE_LLVM_DYLIB FALSE)
18
19if (TARGET LLVM)
20 set (USE_LLVM_DYLIB TRUE)
21 if (DEFINED LLVM_DYLIB_COMPONENTS)
22 foreach(c in ${LLVM_LINK_COMPONENTS})
23 list(FIND LLVM_DYLIB_COMPONENTS ${c} C_IDX)
24 if (C_IDX EQUAL -1)
25 set(USE_LLVM_DYLIB FALSE)
26 break()
27 endif()
28 endforeach()
29 endif()
30endif()
31
32if(USE_LLVM_DYLIB)
NAKAMURA Takumif96d4232014-11-10 15:04:26 +000033 set(LLVM_LINK_COMPONENTS)
34endif()
35
Anders Waldenborgb932c662013-10-23 08:10:20 +000036if (LLVM_COMPILER_IS_GCC_COMPATIBLE)
Rafael Espindola4daaa8e2014-01-08 11:48:19 +000037 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wstrict-prototypes")
Anders Waldenborgb932c662013-10-23 08:10:20 +000038endif ()
39
40add_llvm_tool(llvm-c-test
Amaury Sechet003216b2016-11-15 22:19:59 +000041 attributes.c
Anders Waldenborgb932c662013-10-23 08:10:20 +000042 calc.c
whitequark789164d2017-11-01 22:18:52 +000043 debuginfo.c
Jeroen Ketemaad659c32016-04-08 09:19:02 +000044 diagnostic.c
Anders Waldenborgb932c662013-10-23 08:10:20 +000045 disassemble.c
Amaury Sechete8ea7d82016-02-04 23:26:19 +000046 echo.cpp
Anders Waldenborgb932c662013-10-23 08:10:20 +000047 helpers.c
48 include-all.c
49 main.c
50 module.c
Bjorn Steinbrinka09ac002015-01-28 16:35:59 +000051 metadata.c
Anders Waldenborgb932c662013-10-23 08:10:20 +000052 object.c
53 targets.c
54 )
NAKAMURA Takumif96d4232014-11-10 15:04:26 +000055
Chris Bieneman9ef9c112014-12-18 21:03:49 +000056if(USE_LLVM_DYLIB)
NAKAMURA Takumif96d4232014-11-10 15:04:26 +000057 target_link_libraries(llvm-c-test LLVM)
58endif()