blob: ee3527d000e9d28e118755c7cb27399ef15f9fa4 [file] [log] [blame]
# Copyright 2021 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
android_root = "//third_party/android/platform"
visibility = [ ":*" ]
libc_common_src_files = [
"async_safe/async_safe_log.cpp",
"bionic/ether_aton.c",
"bionic/ether_ntoa.c",
"bionic/exit.cpp",
"bionic/fts.c",
"bionic/initgroups.c",
"bionic/isatty.c",
"bionic/sched_cpualloc.c",
"bionic/sched_cpucount.c",
"stdio/fmemopen.cpp",
"stdio/parsefloat.c",
"stdio/refill.c",
"stdio/stdio.cpp",
"stdio/stdio_ext.cpp",
"stdio/vfscanf.cpp",
"stdio/vfwscanf.c",
]
config("headers") {
cflags = [
"-idirafter",
rebase_path("include", root_build_dir),
"-idirafter",
rebase_path("kernel/uapi", root_build_dir),
"-idirafter",
rebase_path("kernel/android/uapi", root_build_dir),
]
if (target_cpu == "arm64") {
cflags += [
"-idirafter",
rebase_path("kernel/uapi/asm-arm64", root_build_dir),
]
} else if (target_cpu == "x64") {
cflags += [
"-idirafter",
rebase_path("kernel/uapi/asm-x86", root_build_dir),
]
}
}
config("bionic_config") {
visibility += [ "*" ]
cflags_c = [ "-Wno-strict-prototypes" ]
cflags_cc = [
"-Wno-conversion",
"-Wno-extra-semi",
]
configs = [ ":headers" ]
}
config("bionic_config_private") {
include_dirs = [
".",
"$android_root/bionic/libstdc++/include",
"$android_root/system/core/libcutils/include",
"async_safe/include",
"platform",
]
cflags = [
"-Wno-incompatible-pointer-types-discards-qualifiers",
"-Wno-implicit-fallthrough",
"-Wno-unused-function",
"-Wno-gcc-compat",
]
cflags_cc = [
"-Wno-char-subscripts",
"-Wno-reorder-init-list",
]
configs = [ ":bionic_config" ]
}
source_set("libc_tzcode") {
sources = [
"tzcode/asctime.c",
"tzcode/bionic.cpp",
"tzcode/difftime.c",
"tzcode/localtime.c",
"tzcode/strftime.c",
"tzcode/strptime.c",
"tzcode/tzfile.h",
]
cflags = [
"-Wno-unused-parameter",
# Don't use ridiculous amounts of stack.
"-DALL_STATE",
# Include tzsetwall, timelocal, timegm, time2posix, and posix2time.
"-DSTD_INSPIRED",
# Obviously, we want to be thread-safe.
"-DTHREAD_SAFE",
# The name of the tm_gmtoff field in our struct tm.
"-DTM_GMTOFF=tm_gmtoff",
# Where we store our tzdata.
"-DTZDIR=\"/system/usr/share/zoneinfo\"",
# Include `tzname`, `timezone`, and `daylight` globals.
"-DHAVE_POSIX_DECLS=0",
"-DUSG_COMPAT=1",
# Use the empty string (instead of " ") as the timezone abbreviation
# fallback.
"-DWILDABBR=\"\"",
"-DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU",
"-Dlint",
]
configs += [ ":bionic_config_private" ]
}
source_set("libc_dns") {
sources = [
"dns/include/hostent.h",
"dns/include/nsswitch.h",
"dns/include/resolv_cache.h",
"dns/include/resolv_netid.h",
"dns/include/resolv_params.h",
"dns/include/resolv_private.h",
"dns/include/resolv_static.h",
"dns/include/resolv_stats.h",
"dns/nameser/ns_name.c",
"dns/nameser/ns_netint.c",
"dns/nameser/ns_parse.c",
"dns/nameser/ns_print.c",
"dns/nameser/ns_samedomain.c",
"dns/nameser/ns_ttl.c",
"dns/net/getaddrinfo.c",
# "dns/net/gethnamaddr.c",
"dns/net/getnameinfo.c",
"dns/net/getservent.c",
"dns/net/nsdispatch.c",
"dns/net/services.h",
# "dns/net/sethostent.c",
"dns/resolv/herror.c",
"dns/resolv/res_cache.c",
"dns/resolv/res_comp.c",
"dns/resolv/res_data.c",
"dns/resolv/res_debug.c",
"dns/resolv/res_debug.h",
"dns/resolv/res_init.c",
"dns/resolv/res_mkquery.c",
"dns/resolv/res_private.h",
"dns/resolv/res_query.c",
"dns/resolv/res_send.c",
"dns/resolv/res_state.c",
"dns/resolv/res_stats.c",
# "upstream-netbsd/lib/libc/isc/ev_streams.c",
# "upstream-netbsd/lib/libc/isc/ev_timers.c",
]
cflags = [
"-DANDROID_CHANGES",
"-DINET6",
"-Wno-unused-parameter",
"-include",
"netbsd-compat.h",
"-Wframe-larger-than=66000",
]
include_dirs = [
"dns/include",
"private",
"upstream-netbsd/lib/libc/include",
"upstream-netbsd/android/include",
]
configs += [ ":bionic_config_private" ]
}
source_set("libc_freebsd") {
sources = [
"upstream-freebsd/lib/libc/gen/ldexp.c",
"upstream-freebsd/lib/libc/stdlib/getopt_long.c",
"upstream-freebsd/lib/libc/stdlib/hcreate.c",
"upstream-freebsd/lib/libc/stdlib/hcreate_r.c",
"upstream-freebsd/lib/libc/stdlib/hdestroy_r.c",
"upstream-freebsd/lib/libc/stdlib/hsearch_r.c",
"upstream-freebsd/lib/libc/stdlib/qsort.c",
"upstream-freebsd/lib/libc/stdlib/quick_exit.c",
"upstream-freebsd/lib/libc/string/wcpcpy.c",
"upstream-freebsd/lib/libc/string/wcpncpy.c",
"upstream-freebsd/lib/libc/string/wcscasecmp.c",
"upstream-freebsd/lib/libc/string/wcscat.c",
"upstream-freebsd/lib/libc/string/wcschr.c",
"upstream-freebsd/lib/libc/string/wcscmp.c",
"upstream-freebsd/lib/libc/string/wcscpy.c",
"upstream-freebsd/lib/libc/string/wcscspn.c",
"upstream-freebsd/lib/libc/string/wcsdup.c",
"upstream-freebsd/lib/libc/string/wcslcat.c",
"upstream-freebsd/lib/libc/string/wcslen.c",
"upstream-freebsd/lib/libc/string/wcsncasecmp.c",
"upstream-freebsd/lib/libc/string/wcsncat.c",
"upstream-freebsd/lib/libc/string/wcsncmp.c",
"upstream-freebsd/lib/libc/string/wcsncpy.c",
"upstream-freebsd/lib/libc/string/wcsnlen.c",
"upstream-freebsd/lib/libc/string/wcspbrk.c",
"upstream-freebsd/lib/libc/string/wcsrchr.c",
"upstream-freebsd/lib/libc/string/wcsspn.c",
"upstream-freebsd/lib/libc/string/wcsstr.c",
"upstream-freebsd/lib/libc/string/wcstok.c",
"upstream-freebsd/lib/libc/string/wmemchr.c",
"upstream-freebsd/lib/libc/string/wmemcmp.c",
"upstream-freebsd/lib/libc/string/wmemcpy.c",
"upstream-freebsd/lib/libc/string/wmemmove.c",
"upstream-freebsd/lib/libc/string/wmemset.c",
]
if (target_cpu == "arm64") {
sources -= [ "upstream-freebsd/lib/libc/string/wmemmove.c" ]
}
cflags_c = [
"-Wno-sign-compare",
"-Wno-unused-parameter",
"-include",
"freebsd-compat.h",
]
include_dirs = [ "upstream-freebsd/android/include" ]
configs += [ ":bionic_config_private" ]
}
source_set("libc_freebsd_large_stack") {
sources = [ "upstream-freebsd/lib/libc/gen/glob.c" ]
cflags_c = [
"-Wno-sign-compare",
"-include",
"freebsd-compat.h",
"-Wframe-larger-than=66000",
]
include_dirs = [ "upstream-freebsd/android/include" ]
configs += [ ":bionic_config_private" ]
}
source_set("libc_netbsd") {
sources = [
"upstream-netbsd/common/lib/libc/stdlib/random.c",
"upstream-netbsd/lib/libc/gen/nice.c",
"upstream-netbsd/lib/libc/gen/psignal.c",
"upstream-netbsd/lib/libc/gen/utime.c",
"upstream-netbsd/lib/libc/inet/nsap_addr.c",
"upstream-netbsd/lib/libc/regex/regcomp.c",
"upstream-netbsd/lib/libc/regex/regerror.c",
"upstream-netbsd/lib/libc/regex/regexec.c",
"upstream-netbsd/lib/libc/regex/regfree.c",
"upstream-netbsd/lib/libc/stdlib/_rand48.c",
"upstream-netbsd/lib/libc/stdlib/bsearch.c",
"upstream-netbsd/lib/libc/stdlib/drand48.c",
"upstream-netbsd/lib/libc/stdlib/erand48.c",
"upstream-netbsd/lib/libc/stdlib/jrand48.c",
"upstream-netbsd/lib/libc/stdlib/lcong48.c",
"upstream-netbsd/lib/libc/stdlib/lrand48.c",
"upstream-netbsd/lib/libc/stdlib/mrand48.c",
"upstream-netbsd/lib/libc/stdlib/nrand48.c",
"upstream-netbsd/lib/libc/stdlib/rand_r.c",
"upstream-netbsd/lib/libc/stdlib/reallocarr.c",
"upstream-netbsd/lib/libc/stdlib/seed48.c",
"upstream-netbsd/lib/libc/stdlib/srand48.c",
]
cflags_c = [
"-Wno-sign-compare",
"-Wno-unused-parameter",
"-DPOSIX_MISTAKE",
"-include",
"netbsd-compat.h",
]
include_dirs = [
"upstream-netbsd/android/include",
"upstream-netbsd/lib/libc/include",
]
configs += [ ":bionic_config_private" ]
}
source_set("libc_openbsd_ndk") {
sources = [
"upstream-openbsd/lib/libc/gen/alarm.c",
"upstream-openbsd/lib/libc/gen/ctype_.c",
"upstream-openbsd/lib/libc/gen/daemon.c",
"upstream-openbsd/lib/libc/gen/err.c",
"upstream-openbsd/lib/libc/gen/errx.c",
"upstream-openbsd/lib/libc/gen/fnmatch.c",
"upstream-openbsd/lib/libc/gen/ftok.c",
"upstream-openbsd/lib/libc/gen/getprogname.c",
"upstream-openbsd/lib/libc/gen/setprogname.c",
"upstream-openbsd/lib/libc/gen/verr.c",
"upstream-openbsd/lib/libc/gen/verrx.c",
"upstream-openbsd/lib/libc/gen/vwarn.c",
"upstream-openbsd/lib/libc/gen/vwarnx.c",
"upstream-openbsd/lib/libc/gen/warn.c",
"upstream-openbsd/lib/libc/gen/warnx.c",
"upstream-openbsd/lib/libc/locale/btowc.c",
"upstream-openbsd/lib/libc/locale/mbrlen.c",
"upstream-openbsd/lib/libc/locale/mbstowcs.c",
"upstream-openbsd/lib/libc/locale/mbtowc.c",
"upstream-openbsd/lib/libc/locale/wcscoll.c",
"upstream-openbsd/lib/libc/locale/wcstoimax.c",
"upstream-openbsd/lib/libc/locale/wcstol.c",
"upstream-openbsd/lib/libc/locale/wcstoll.c",
"upstream-openbsd/lib/libc/locale/wcstombs.c",
"upstream-openbsd/lib/libc/locale/wcstoul.c",
"upstream-openbsd/lib/libc/locale/wcstoull.c",
"upstream-openbsd/lib/libc/locale/wcstoumax.c",
"upstream-openbsd/lib/libc/locale/wcsxfrm.c",
"upstream-openbsd/lib/libc/locale/wctob.c",
"upstream-openbsd/lib/libc/locale/wctomb.c",
"upstream-openbsd/lib/libc/net/base64.c",
"upstream-openbsd/lib/libc/net/htonl.c",
"upstream-openbsd/lib/libc/net/htons.c",
"upstream-openbsd/lib/libc/net/inet_lnaof.c",
"upstream-openbsd/lib/libc/net/inet_makeaddr.c",
"upstream-openbsd/lib/libc/net/inet_netof.c",
"upstream-openbsd/lib/libc/net/inet_ntoa.c",
"upstream-openbsd/lib/libc/net/inet_ntop.c",
"upstream-openbsd/lib/libc/net/inet_pton.c",
"upstream-openbsd/lib/libc/net/ntohl.c",
"upstream-openbsd/lib/libc/net/ntohs.c",
"upstream-openbsd/lib/libc/net/res_random.c",
"upstream-openbsd/lib/libc/stdio/fgetln.c",
"upstream-openbsd/lib/libc/stdio/fgetwc.c",
"upstream-openbsd/lib/libc/stdio/fgetws.c",
"upstream-openbsd/lib/libc/stdio/flags.c",
"upstream-openbsd/lib/libc/stdio/fpurge.c",
"upstream-openbsd/lib/libc/stdio/fputwc.c",
"upstream-openbsd/lib/libc/stdio/fputws.c",
"upstream-openbsd/lib/libc/stdio/fvwrite.c",
"upstream-openbsd/lib/libc/stdio/fwide.c",
"upstream-openbsd/lib/libc/stdio/getdelim.c",
"upstream-openbsd/lib/libc/stdio/gets.c",
"upstream-openbsd/lib/libc/stdio/makebuf.c",
"upstream-openbsd/lib/libc/stdio/mktemp.c",
"upstream-openbsd/lib/libc/stdio/open_memstream.c",
"upstream-openbsd/lib/libc/stdio/open_wmemstream.c",
"upstream-openbsd/lib/libc/stdio/rget.c",
"upstream-openbsd/lib/libc/stdio/setvbuf.c",
"upstream-openbsd/lib/libc/stdio/ungetc.c",
"upstream-openbsd/lib/libc/stdio/ungetwc.c",
"upstream-openbsd/lib/libc/stdio/vasprintf.c",
"upstream-openbsd/lib/libc/stdio/vdprintf.c",
"upstream-openbsd/lib/libc/stdio/vsscanf.c",
"upstream-openbsd/lib/libc/stdio/vswprintf.c",
"upstream-openbsd/lib/libc/stdio/vswscanf.c",
"upstream-openbsd/lib/libc/stdio/wbuf.c",
"upstream-openbsd/lib/libc/stdio/wsetup.c",
"upstream-openbsd/lib/libc/stdlib/abs.c",
"upstream-openbsd/lib/libc/stdlib/div.c",
"upstream-openbsd/lib/libc/stdlib/getenv.c",
"upstream-openbsd/lib/libc/stdlib/getsubopt.c",
"upstream-openbsd/lib/libc/stdlib/imaxabs.c",
"upstream-openbsd/lib/libc/stdlib/imaxdiv.c",
"upstream-openbsd/lib/libc/stdlib/insque.c",
"upstream-openbsd/lib/libc/stdlib/labs.c",
"upstream-openbsd/lib/libc/stdlib/ldiv.c",
"upstream-openbsd/lib/libc/stdlib/llabs.c",
"upstream-openbsd/lib/libc/stdlib/lldiv.c",
"upstream-openbsd/lib/libc/stdlib/lsearch.c",
"upstream-openbsd/lib/libc/stdlib/recallocarray.c",
"upstream-openbsd/lib/libc/stdlib/remque.c",
"upstream-openbsd/lib/libc/stdlib/setenv.c",
"upstream-openbsd/lib/libc/stdlib/tfind.c",
"upstream-openbsd/lib/libc/stdlib/tsearch.c",
"upstream-openbsd/lib/libc/string/memccpy.c",
"upstream-openbsd/lib/libc/string/strcasecmp.c",
"upstream-openbsd/lib/libc/string/strcasestr.c",
"upstream-openbsd/lib/libc/string/strcoll.c",
"upstream-openbsd/lib/libc/string/strcspn.c",
"upstream-openbsd/lib/libc/string/strdup.c",
"upstream-openbsd/lib/libc/string/strndup.c",
"upstream-openbsd/lib/libc/string/strpbrk.c",
"upstream-openbsd/lib/libc/string/strsep.c",
"upstream-openbsd/lib/libc/string/strspn.c",
"upstream-openbsd/lib/libc/string/strtok.c",
"upstream-openbsd/lib/libc/string/strxfrm.c",
"upstream-openbsd/lib/libc/string/wcslcpy.c",
"upstream-openbsd/lib/libc/string/wcswidth.c",
]
cflags_c = [
"-Wno-sign-compare",
"-Wno-unused-parameter",
"-include",
"openbsd-compat.h",
]
include_dirs = [
"private",
"stdio",
"upstream-openbsd/android/include",
"upstream-openbsd/lib/libc/include",
"upstream-openbsd/lib/libc/gdtoa",
]
configs += [ ":bionic_config_private" ]
}
source_set("libc_openbsd_large_stack") {
sources = [
"stdio/vfprintf.cpp",
"stdio/vfwprintf.cpp",
"upstream-openbsd/lib/libc/string/memmem.c",
"upstream-openbsd/lib/libc/string/strstr.c",
]
cflags_c = [ "-Wno-sign-compare" ]
cflags = [
"-include",
"openbsd-compat.h",
"-Wframe-larger-than=5000",
]
include_dirs = [
"upstream-openbsd/android/include",
"upstream-openbsd/lib/libc/include",
"upstream-openbsd/lib/libc/gdtoa",
"upstream-openbsd/lib/libc/stdio",
]
configs += [ ":bionic_config_private" ]
}
source_set("libc_openbsd") {
sources = [
# These two depend on getentropy, which isn't in libc_ndk.a.
"upstream-openbsd/lib/libc/crypt/arc4random.c",
"upstream-openbsd/lib/libc/crypt/arc4random_uniform.c",
# May be overriden by per-arch optimized versions
"upstream-openbsd/lib/libc/string/memchr.c",
"upstream-openbsd/lib/libc/string/memrchr.c",
"upstream-openbsd/lib/libc/string/stpcpy.c",
"upstream-openbsd/lib/libc/string/stpncpy.c",
"upstream-openbsd/lib/libc/string/strcat.c",
"upstream-openbsd/lib/libc/string/strcpy.c",
"upstream-openbsd/lib/libc/string/strlcat.c",
"upstream-openbsd/lib/libc/string/strlcpy.c",
"upstream-openbsd/lib/libc/string/strncat.c",
"upstream-openbsd/lib/libc/string/strncmp.c",
"upstream-openbsd/lib/libc/string/strncpy.c",
]
if (target_cpu == "arm64") {
sources -= [
"upstream-openbsd/lib/libc/string/memchr.c",
"upstream-openbsd/lib/libc/string/memrchr.c",
"upstream-openbsd/lib/libc/string/stpcpy.c",
"upstream-openbsd/lib/libc/string/strcpy.c",
"upstream-openbsd/lib/libc/string/strncmp.c",
]
}
if (target_cpu == "x64") {
sources -= [
"upstream-openbsd/lib/libc/string/stpcpy.c",
"upstream-openbsd/lib/libc/string/stpncpy.c",
"upstream-openbsd/lib/libc/string/strcat.c",
"upstream-openbsd/lib/libc/string/strcpy.c",
"upstream-openbsd/lib/libc/string/strncat.c",
"upstream-openbsd/lib/libc/string/strncmp.c",
"upstream-openbsd/lib/libc/string/strncpy.c",
]
}
cflags = [
"-Wno-sign-compare",
"-Wno-unused-parameter",
"-include",
"openbsd-compat.h",
]
include_dirs = [
"private",
"upstream-openbsd/android/include",
]
configs += [ ":bionic_config_private" ]
}
source_set("libc_gdtoa") {
sources = [
"upstream-openbsd/android/gdtoa_support.cpp",
"upstream-openbsd/lib/libc/gdtoa/dmisc.c",
"upstream-openbsd/lib/libc/gdtoa/dtoa.c",
"upstream-openbsd/lib/libc/gdtoa/gdtoa.c",
"upstream-openbsd/lib/libc/gdtoa/gethex.c",
"upstream-openbsd/lib/libc/gdtoa/gmisc.c",
"upstream-openbsd/lib/libc/gdtoa/hd_init.c",
"upstream-openbsd/lib/libc/gdtoa/hdtoa.c",
"upstream-openbsd/lib/libc/gdtoa/hexnan.c",
"upstream-openbsd/lib/libc/gdtoa/ldtoa.c",
"upstream-openbsd/lib/libc/gdtoa/misc.c",
"upstream-openbsd/lib/libc/gdtoa/smisc.c",
"upstream-openbsd/lib/libc/gdtoa/strtod.c",
"upstream-openbsd/lib/libc/gdtoa/strtodg.c",
"upstream-openbsd/lib/libc/gdtoa/strtof.c",
"upstream-openbsd/lib/libc/gdtoa/strtorQ.c",
"upstream-openbsd/lib/libc/gdtoa/strtord.c",
"upstream-openbsd/lib/libc/gdtoa/sum.c",
"upstream-openbsd/lib/libc/gdtoa/ulp.c",
]
cflags_c = [
"-Wno-array-bounds",
"-Wno-sign-compare",
]
cflags = [
"-include",
"openbsd-compat.h",
]
include_dirs = [
"private",
"upstream-openbsd/android/include",
"upstream-openbsd/lib/libc/include",
]
configs += [ ":bionic_config_private" ]
}
# Skipped libc_fortify
source_set("libc_bionic") {
sources = [
"bionic/setjmp_cookie.cpp",
"bionic/sysconf.cpp",
"bionic/vdso.cpp",
# The following must not be statically linked into libc_ndk.a, because
# debuggerd will look for the abort message in libc.so's copy.
"bionic/android_set_abort_message.cpp",
"bionic/strchr.cpp",
"bionic/strchrnul.cpp",
"bionic/strnlen.c",
"bionic/strrchr.cpp",
]
if (target_cpu == "arm64") {
sources += [
"arch-arm64/generic/bionic/memcpy.S",
"arch-arm64/generic/bionic/memmove.S",
"arch-arm64/generic/bionic/memset.S",
"arch-arm64/generic/bionic/wmemmove.S",
# "arch-arm64/bionic/__bionic_clone.S",
# "arch-arm64/bionic/_exit_with_stack_teardown.S",
# "arch-arm64/bionic/setjmp.S",
# "arch-arm64/bionic/syscall.S",
# "arch-arm64/bionic/vfork.S",
]
sources -= [
"bionic/__memcpy_chk.cpp",
"bionic/strchr.cpp",
"bionic/strchrnul.cpp",
"bionic/strnlen.c",
"bionic/strrchr.cpp",
]
}
if (target_cpu == "x64") {
sources += [
# "arch-x86_64/string/avx2-wmemset-kbl.S",
"arch-x86_64/string/sse2-memmove-slm.S",
# "arch-x86_64/string/sse2-memset-slm.S",
"arch-x86_64/string/sse2-stpcpy-slm.S",
"arch-x86_64/string/sse2-stpncpy-slm.S",
"arch-x86_64/string/sse2-strcat-slm.S",
"arch-x86_64/string/sse2-strcpy-slm.S",
"arch-x86_64/string/sse2-strlen-slm.S",
"arch-x86_64/string/sse2-strncat-slm.S",
"arch-x86_64/string/sse2-strncpy-slm.S",
"arch-x86_64/string/sse4-memcmp-slm.S",
"arch-x86_64/string/ssse3-strcmp-slm.S",
"arch-x86_64/string/ssse3-strncmp-slm.S",
# "arch-x86_64/bionic/__bionic_clone.S",
# "arch-x86_64/bionic/__restore_rt.S",
# "arch-x86_64/bionic/_exit_with_stack_teardown.S",
# "arch-x86_64/bionic/setjmp.S",
# "arch-x86_64/bionic/syscall.S",
# "arch-x86_64/bionic/vfork.S",
]
}
configs += [ ":bionic_config_private" ]
}
source_set("libc_bionic_ndk") {
sources = [
"bionic/NetdClientDispatch.cpp",
"bionic/__bionic_get_shell_path.cpp",
"bionic/__cmsg_nxthdr.cpp",
"bionic/__errno.cpp",
"bionic/__gnu_basename.cpp",
"bionic/__libc_current_sigrtmax.cpp",
"bionic/__libc_current_sigrtmin.cpp",
"bionic/abort.cpp",
"bionic/accept.cpp",
"bionic/access.cpp",
"bionic/arpa_inet.cpp",
"bionic/assert.cpp",
"bionic/atof.cpp",
"bionic/bind.cpp",
"bionic/bionic_allocator.cpp",
"bionic/bionic_appcompat.cpp",
"bionic/bionic_arc4random.cpp",
"bionic/bionic_futex.cpp",
"bionic/bionic_netlink.cpp",
"bionic/bionic_time_conversions.cpp",
"bionic/brk.cpp",
"bionic/c16rtomb.cpp",
"bionic/c32rtomb.cpp",
"bionic/chmod.cpp",
"bionic/chown.cpp",
"bionic/clearenv.cpp",
"bionic/clock.cpp",
"bionic/clock_getcpuclockid.cpp",
"bionic/clock_nanosleep.cpp",
"bionic/clone.cpp",
# "bionic/ctype.cpp",
"bionic/dirent.cpp",
"bionic/dup.cpp",
"bionic/environ.cpp",
"bionic/error.cpp",
"bionic/eventfd.cpp",
"bionic/exec.cpp",
"bionic/faccessat.cpp",
"bionic/fchmod.cpp",
"bionic/fchmodat.cpp",
"bionic/fcntl.cpp",
"bionic/fdsan.cpp",
"bionic/fdtrack.cpp",
"bionic/ffs.cpp",
"bionic/fgetxattr.cpp",
"bionic/flistxattr.cpp",
"bionic/flockfile.cpp",
"bionic/fpclassify.cpp",
"bionic/fsetxattr.cpp",
"bionic/ftruncate.cpp",
"bionic/ftw.cpp",
"bionic/futimens.cpp",
"bionic/get_device_api_level.cpp",
"bionic/getcwd.cpp",
"bionic/getdomainname.cpp",
"bionic/getentropy.cpp",
"bionic/gethostname.cpp",
"bionic/getloadavg.cpp",
"bionic/getpagesize.cpp",
"bionic/getpgrp.cpp",
"bionic/getpid.cpp",
"bionic/getpriority.cpp",
"bionic/gettid.cpp",
# "bionic/grp_pwd.cpp",
"bionic/grp_pwd_file.cpp",
"bionic/iconv.cpp",
"bionic/icu_wrappers.cpp",
"bionic/ifaddrs.cpp",
"bionic/inotify_init.cpp",
"bionic/ioctl.cpp",
"bionic/killpg.cpp",
"bionic/langinfo.cpp",
"bionic/lchown.cpp",
"bionic/lfs64_support.cpp",
"bionic/libc_init_common.cpp",
"bionic/libgen.cpp",
"bionic/link.cpp",
"bionic/locale.cpp",
"bionic/lockf.cpp",
"bionic/lstat.cpp",
"bionic/mblen.cpp",
"bionic/mbrtoc16.cpp",
"bionic/mbrtoc32.cpp",
"bionic/memory_mitigation_state.cpp",
"bionic/mempcpy.cpp",
"bionic/mkdir.cpp",
"bionic/mkfifo.cpp",
"bionic/mknod.cpp",
"bionic/mntent.cpp",
"bionic/mremap.cpp",
"bionic/net_if.cpp",
"bionic/netdb.cpp",
"bionic/netinet_in.cpp",
"bionic/nl_types.cpp",
"bionic/open.cpp",
"bionic/pathconf.cpp",
"bionic/pause.cpp",
"bionic/pipe.cpp",
"bionic/poll.cpp",
"bionic/posix_fadvise.cpp",
"bionic/posix_fallocate.cpp",
"bionic/posix_madvise.cpp",
"bionic/posix_timers.cpp",
"bionic/ptrace.cpp",
"bionic/pty.cpp",
"bionic/raise.cpp",
"bionic/rand.cpp",
"bionic/readlink.cpp",
"bionic/realpath.cpp",
"bionic/reboot.cpp",
"bionic/recv.cpp",
"bionic/recvmsg.cpp",
"bionic/rename.cpp",
"bionic/rmdir.cpp",
"bionic/scandir.cpp",
"bionic/sched_getaffinity.cpp",
"bionic/sched_getcpu.cpp",
"bionic/semaphore.cpp",
"bionic/send.cpp",
"bionic/setegid.cpp",
"bionic/seteuid.cpp",
"bionic/setpgrp.cpp",
"bionic/sigaction.cpp",
"bionic/signal.cpp",
"bionic/sigprocmask.cpp",
"bionic/sleep.cpp",
"bionic/socketpair.cpp",
"bionic/spawn.cpp",
"bionic/stat.cpp",
"bionic/stdlib_l.cpp",
"bionic/strerror.cpp",
"bionic/string_l.cpp",
"bionic/strings_l.cpp",
"bionic/strsignal.cpp",
"bionic/strtol.cpp",
"bionic/strtold.cpp",
"bionic/swab.cpp",
"bionic/symlink.cpp",
"bionic/sync_file_range.cpp",
"bionic/sys_epoll.cpp",
"bionic/sys_msg.cpp",
"bionic/sys_sem.cpp",
"bionic/sys_shm.cpp",
"bionic/sys_signalfd.cpp",
"bionic/sys_statfs.cpp",
"bionic/sys_statvfs.cpp",
"bionic/sys_time.cpp",
"bionic/sysinfo.cpp",
"bionic/syslog.cpp",
"bionic/system.cpp",
# "bionic/system_property_api.cpp",
# "bionic/system_property_set.cpp",
"bionic/tdestroy.cpp",
"bionic/termios.cpp",
"bionic/thread_private.cpp",
"bionic/threads.cpp",
"bionic/timespec_get.cpp",
"bionic/tmpfile.cpp",
"bionic/umount.cpp",
"bionic/unlink.cpp",
"bionic/usleep.cpp",
"bionic/utmp.cpp",
"bionic/wait.cpp",
"bionic/wchar.cpp",
"bionic/wchar_l.cpp",
"bionic/wcstod.cpp",
"bionic/wctype.cpp",
"bionic/wcwidth.cpp",
"bionic/wmempcpy.cpp",
# This contains a weak stub implementation of __find_icu_symbol for wctype.cpp,
# which will be overridden by the actual one in libc.so.
"bionic/icu_static.cpp",
]
include_dirs = [ "stdio" ]
configs += [ ":bionic_config_private" ]
}
# Skipped libc_pthread
# Skipped libc_syscalls
source_set("libc") {
visibility += [ "//src/proc/lib/bionic" ]
sources = libc_common_src_files
deps = [
":libc_bionic",
":libc_bionic_ndk",
":libc_dns",
":libc_freebsd",
":libc_freebsd_large_stack",
":libc_gdtoa",
":libc_netbsd",
":libc_openbsd",
":libc_openbsd_large_stack",
":libc_openbsd_ndk",
":libc_tzcode",
]
configs += [ ":bionic_config_private" ]
}