Home | History | Annotate | Download | only in llvm-c-test
      1 set(LLVM_LINK_COMPONENTS
      2   ${LLVM_TARGETS_TO_BUILD}
      3   BitReader
      4   Core
      5   MCDisassembler
      6   Object
      7   Support
      8   Target
      9   )
     10 
     11 # We should only have llvm-c-test use libLLVM if libLLVM is built with the
     12 # default list of components. Using libLLVM with custom components can result in
     13 # build failures.
     14 
     15 set (USE_LLVM_DYLIB FALSE)
     16 
     17 if (TARGET LLVM)
     18   set (USE_LLVM_DYLIB TRUE)
     19   if (DEFINED LLVM_DYLIB_COMPONENTS)
     20     foreach(c in ${LLVM_LINK_COMPONENTS})
     21       list(FIND LLVM_DYLIB_COMPONENTS ${c} C_IDX)
     22       if (C_IDX EQUAL -1)
     23         set(USE_LLVM_DYLIB FALSE)
     24         break()
     25       endif()
     26     endforeach()
     27   endif()
     28 endif()
     29 
     30 if(USE_LLVM_DYLIB)
     31   set(LLVM_LINK_COMPONENTS)
     32 endif()
     33 
     34 if (LLVM_COMPILER_IS_GCC_COMPATIBLE)
     35   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wstrict-prototypes")
     36 endif ()
     37 
     38 add_llvm_tool(llvm-c-test
     39   attributes.c
     40   calc.c
     41   debuginfo.c
     42   diagnostic.c
     43   disassemble.c
     44   echo.cpp
     45   helpers.c
     46   include-all.c
     47   main.c
     48   module.c
     49   metadata.c
     50   object.c
     51   targets.c
     52   )
     53 
     54 if(USE_LLVM_DYLIB)
     55   target_link_libraries(llvm-c-test LLVM)
     56 endif()
     57