summaryrefslogtreecommitdiff
path: root/config/libc.in
blob: 05662124d4f78d94ffb32191f2ffbbe74d21caed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
# C library options

menu "C-library"

config LIBC
    string

config LIBC_VERSION
    string
    help
      Enter the date of the snapshot you want to use in the form: YYYYMMDD
      where YYYY is the 4-digit year, MM the 2-digit month and DD the 2-digit
      day in the month.
      
      Please note:
      - glibc has snapshots done every monday, and only the last ten are kept.
      - uClibc has daily snapshots, and only the last 30-or-so are kept.
      
      So if you want to be able to re-build your toolchain later, you will
      have to save your C library tarball by yourself.

source "config.gen/libc.in"

config LIBC_SUPPORT_THREADS_ANY
    bool

config LIBC_SUPPORT_THREADS_NATIVE
    bool
    select LIBC_SUPPORT_THREADS_ANY

config LIBC_SUPPORT_THREADS_LT
    bool
    select LIBC_SUPPORT_THREADS_ANY

config LIBC_SUPPORT_THREADS_POSIX
    bool
    select LIBC_SUPPORT_THREADS_ANY

config LIBC_SUPPORT_THREADS_NONE
    bool

config LIBC_PROVIDES_CXA_ATEXIT
    bool

# C libraries should provide other values
config THREADS
    string
    default "none" if THREADS_NONE

if ! LIBC_none

comment "Common C library options"

choice
    bool
    prompt "Threading implementation to use:"
    default THREADS_NATIVE         if LIBC_SUPPORT_THREADS_NATIVE
    default THREADS_LT             if LIBC_SUPPORT_THREADS_LT
    default THREADS_POSIX          if LIBC_SUPPORT_THREADS_POSIX
    default THREADS_NONE

config THREADS_NATIVE
    bool
    prompt "native"
    depends on LIBC_SUPPORT_THREADS_NATIVE
    help
      This selects the native threads implementation for the selected
      system and C library.

      For example, on Linux with glibc, this is NPTL; on Windows with
      mingw, this is win32.

config THREADS_LT
    bool
    prompt "linuxthreads"
    depends on LIBC_SUPPORT_THREADS_LT

config THREADS_POSIX
    bool
    prompt "posix"
    depends on LIBC_SUPPORT_THREADS_POSIX

config THREADS_NONE
    bool
    prompt "none"
    depends on LIBC_SUPPORT_THREADS_NONE

endchoice

config CREATE_LDSO_CONF
    bool "Create /etc/ld.so.conf file"
    depends on SHARED_LIBS
    default y if MULTILIB
    help
      Create /etc/ld.so.conf file in the sysroot directory for the
      target.

      Note that Buildroot errors out if it sees /etc/ld.so.conf.

config LDSO_CONF_EXTRA_DIRS_ARRAY
    string "Extra directories to add to /etc/ld.so.conf"
    depends on CREATE_LDSO_CONF
    help
      Extra directories to include in /etc/ld.so.conf. The directories
      will be augmented per compiler's multilib specification,
      if applicable. For example, if the compiler's multilibs include
      /lib and /lib64, and you specify /usr/local/lib here, ld.so.conf
      will have both /usr/local/lib and /usr/local/lib64.

config LIBC_XLDD
    bool
    prompt "Install a cross ldd-like helper"
    depends on SHARED_LIBS
    depends on ! BARE_METAL
    default y
    help
      Say 'Y' here if you want to have a ldd-like helper that
      you can run on your build system, and that will (try to)
      resolve shared libraries dependencies as if run on the
      target.
      
      Note that the cross-ldd helper is not a full replacement
      for the native ldd. Please see the help, by running it
      with '--help' for more explanations.

source "config.gen/libc.in.2"

endif # ! LIBC_none

endmenu