123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- LIBRARY()
- # Part of compiler-rt LLVM subproject
- # git repository: https://github.com/llvm/llvm-project.git
- # directory: compiler-rt/lib/builtins
- # revision: 08f0372c351a57b01afee6c64066961203da28c5
- # os_version_check.c was taken from revision 81b89fd7bdddb7da66f2cdace97d6ede5f99d58a
- # os_version_check.c was patched from git repository https://github.com/apple/llvm-project.git revision a02454b91d2aec347b9ce03020656c445f3b2841
- LICENSE(
- Apache-2.0 AND
- Apache-2.0 WITH LLVM-exception AND
- MIT AND
- NCSA
- )
- LICENSE_TEXTS(.yandex_meta/licenses.list.txt)
- VERSION(2016-03-03-08f0372c351a57b01afee6c64066961203da28c5)
- ORIGINAL_SOURCE(https://github.com/llvm/llvm-project)
- # Check MUSL before NO_PLATFORM() disables it.
- IF (MUSL)
- # We use C headers despite NO_PLATFORM, but we do not propagate
- # them with ADDINCL GLOBAL because we do not have an API, and we
- # can not propagate them because libcxx has to put its own
- # includes before musl includes for its include_next to work.
- ADDINCL(
- contrib/libs/musl/arch/x86_64
- contrib/libs/musl/arch/generic
- contrib/libs/musl/include
- contrib/libs/musl/extra
- )
- ENDIF()
- NO_UTIL()
- NO_RUNTIME()
- NO_PLATFORM()
- NO_COMPILER_WARNINGS()
- IF (GCC OR CLANG)
- # Clang (maybe GCC too) LTO code generator leaves the builtin calls unresolved
- # even if they are available. After the code generation pass is done
- # a linker is forced to select original object files from this library again
- # as they contain unresolved symbols. But code generation is already done,
- # object files actually are not ELFs but an LLVM bytecode and we get
- # "member at xxxxx is not an ELF object" errors from the linker.
- # Just generate native code from the beginning.
- DISABLE(USE_LTO)
- ENDIF()
- SRCS(
- addtf3.c
- ashlti3.c
- clzti2.c
- comparetf2.c
- divdc3.c
- divsc3.c
- divtf3.c
- divti3.c
- divxc3.c
- extenddftf2.c
- extendsftf2.c
- fixdfti.c
- fixsfti.c
- fixtfdi.c
- fixtfsi.c
- fixunsdfti.c
- fixunssfti.c
- fixunstfdi.c
- fixunstfsi.c
- fixunstfti.c
- fixunsxfti.c
- floatditf.c
- floatsitf.c
- floattidf.c
- floattisf.c
- floattixf.c
- floatunditf.c
- floatunsitf.c
- floatuntidf.c
- floatuntisf.c
- gcc_personality_v0.c
- int_util.c
- lshrti3.c
- modti3.c
- muldc3.c
- muloti4.c
- mulsc3.c
- multf3.c
- mulxc3.c
- popcountdi2.c
- subtf3.c
- trunctfdf2.c
- trunctfsf2.c
- udivmodti4.c
- udivti3.c
- umodti3.c
- )
- IF (OS_DARWIN OR OS_IOS)
- SRCS(
- os_version_check.c
- )
- ENDIF()
- IF (ARCH_ARM)
- SRCS(
- clear_cache.c
- multc3.c
- )
- ENDIF()
- END()
|