brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · f59c49f Raw
70 lines · plain
1import("//compiler-rt/target.gni")2 3static_library("profile") {4  output_dir = crt_current_out_dir5  if (current_os == "mac") {6    output_name = "clang_rt.profile_osx"7  } else {8    output_name = "clang_rt.profile$crt_current_target_suffix"9  }10 11  complete_static_lib = true12  configs -= [ "//llvm/utils/gn/build:thin_archive" ]13 14  cflags = []15  if (current_os != "win") {16    cflags = [17      "-fPIC",18      "-Wno-pedantic",19    ]20  } else {21    # This appears to be a C-only warning banning the use of locals in22    # aggregate initializers. All other compilers accept this, though.23    #     nonstandard extension used : 'identifier' :24    #     cannot be initialized using address of automatic variable25    cflags += [ "/wd4221" ]26  }27 28  include_dirs = [ "../../include" ]29 30  sources = [31    "GCDAProfiling.c",32    "InstrProfiling.c",33    "InstrProfiling.h",34    "InstrProfilingBuffer.c",35    "InstrProfilingFile.c",36    "InstrProfilingInternal.c",37    "InstrProfilingInternal.h",38    "InstrProfilingMerge.c",39    "InstrProfilingMergeFile.c",40    "InstrProfilingNameVar.c",41    "InstrProfilingPlatformAIX.c",42    "InstrProfilingPlatformDarwin.c",43    "InstrProfilingPlatformFuchsia.c",44    "InstrProfilingPlatformLinux.c",45    "InstrProfilingPlatformOther.c",46    "InstrProfilingPlatformWindows.c",47    "InstrProfilingPort.h",48    "InstrProfilingRuntime.cpp",49    "InstrProfilingUtil.c",50    "InstrProfilingUtil.h",51    "InstrProfilingValue.c",52    "InstrProfilingVersionVar.c",53    "InstrProfilingWriter.c",54  ]55  if (current_os == "win") {56    sources += [57      "WindowsMMap.c",58      "WindowsMMap.h",59    ]60  }61 62  if (current_os != "win") {63    defines = [64      "COMPILER_RT_HAS_UNAME",65      "COMPILER_RT_HAS_ATOMICS",66      "COMPILER_RT_HAS_FCNTL_LCK",67    ]68  }69}70