summaryrefslogtreecommitdiff
path: root/config/libc/eglibc.in
blob: d1ecd0fd118119ea71df3c67c30f3dfa4d5c47c1 (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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
# eglibc options

## depends on ! WINDOWS && ! BARE_METAL && ARCH_USE_MMU
##
## select LIBC_SUPPORT_THREADS_NATIVE
## select CC_CORE_PASSES_NEEDED
##
## help EGLIBC (Embedded GLIBC) is a variant of the standard GNU GLIBC
## help that is designed to work well on embedded systems.  EGLIBC strives
## help to be source and binary compatible with GLIBC.  Its goals include
## help a reduced footprint, configurable components, and improved
## help cross-compilation support.  EGLIBC also includes some embedded ports
## help (such as e500/spe) that are normally separate add-ons of GLIBC.

config THREADS
    default "nptl"

choice
    bool
    prompt "eglibc version"
# Don't remove next line
# CT_INSERT_VERSION_BELOW

config LIBC_EGLIBC_LINARO_V_2_19
    bool
    prompt "Linaro 2.19-2014.08"
    select LIBC_EGLIBC_2_16_or_later

config LIBC_EGLIBC_V_2_18
    bool
    prompt "2_18"
    select LIBC_EGLIBC_2_16_or_later

config LIBC_EGLIBC_V_2_17
    bool
    prompt "2_17"
    select LIBC_EGLIBC_2_16_or_later

config LIBC_EGLIBC_V_2_16
    bool
    prompt "2_16"
    select LIBC_GLIBC_PORTS_EXTERNAL
    select LIBC_EGLIBC_2_16_or_later

config LIBC_EGLIBC_V_2_15
    bool
    prompt "2_15"
    select LIBC_GLIBC_PORTS_EXTERNAL

config LIBC_EGLIBC_V_2_14
    bool
    prompt "2_14"
    select LIBC_GLIBC_PORTS_EXTERNAL

config LIBC_EGLIBC_V_2_13
    bool
    prompt "2_13"
    select LIBC_GLIBC_PORTS_EXTERNAL

config LIBC_EGLIBC_V_2_12
    bool
    prompt "2_12"
    select LIBC_GLIBC_PORTS_EXTERNAL

config LIBC_EGLIBC_V_2_11
    bool
    prompt "2_11"
    select LIBC_GLIBC_PORTS_EXTERNAL

config LIBC_EGLIBC_V_2_10
    bool
    prompt "2_10"
    select LIBC_GLIBC_PORTS_EXTERNAL

config LIBC_EGLIBC_V_2_9
    bool
    prompt "2_9"
    select LIBC_GLIBC_PORTS_EXTERNAL

config LIBC_EGLIBC_V_TRUNK
    bool
    prompt "'trunk'"
    select LIBC_EGLIBC_2_16_or_later
    help
      Selecting this will export the trunk of the eglibc subversion repository.

config LIBC_EGLIBC_CUSTOM
    bool
    prompt "Custom eglibc"
    depends on EXPERIMENTAL
    select LIBC_EGLIBC_2_16_or_later
    select LIBC_CUSTOM

endchoice

config LIBC_VERSION
    string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
    default "linaro-2.19-2014.08" if LIBC_EGLIBC_LINARO_V_2_19
    default "2_18" if LIBC_EGLIBC_V_2_18
    default "2_17" if LIBC_EGLIBC_V_2_17
    default "2_16" if LIBC_EGLIBC_V_2_16
    default "2_15" if LIBC_EGLIBC_V_2_15
    default "2_14" if LIBC_EGLIBC_V_2_14
    default "2_13" if LIBC_EGLIBC_V_2_13
    default "2_12" if LIBC_EGLIBC_V_2_12
    default "2_11" if LIBC_EGLIBC_V_2_11
    default "2_10" if LIBC_EGLIBC_V_2_10
    default "2_9" if LIBC_EGLIBC_V_2_9
    default "trunk" if LIBC_EGLIBC_V_TRUNK
    default "custom" if LIBC_EGLIBC_CUSTOM

config LIBC_EGLIBC_2_16_or_later
    bool

config LIBC_CUSTOM
    bool

if LIBC_EGLIBC_CUSTOM

config LIBC_EGLIBC_CUSTOM_LOCATION
    string
    prompt "Full path to custom eglibc source"
    default ""
    help
      Enter the path to the directory (or tarball) of your source for eglibc,
      or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/eglibc

endif # LIBC_EGLIBC_CUSTOM
if ! LIBC_EGLIBC_CUSTOM

if CONFIGURE_has_svn

config EGLIBC_REVISION
    string
    prompt "Revision to use"
    default "HEAD"
    help
      Enter the revision of trunk you want to use.
      Default is HEAD.
      
      A revision argument can be one of:
          NUMBER       revision number
          '{' DATE '}' revision at start of the date (*)
          'HEAD'       latest in repository
      
      (*) If you want to use a date, please use ISO-8601 formats if
          at all possible.

config EGLIBC_HTTP
    bool
    prompt "use http:// instead of svn://"
    help
      By default, when eglibc is downloaded it is checked out using
      svn://svn.eglibc.org. This option allows you to download eglibc
      from http://www.eglibc.org, if you are behind a proxy or firewall.
      If you are behind a proxy, don't forget to update your
      .subversion/servers file with your proxy info in [global].

config EGLIBC_CHECKOUT
    bool
    prompt "checkout instead of export"
    default y if LIBC_EGLIBC_V_TRUNK
    help
      By default, the eglibc download will be an export of the subversion
      repository. If you say 'y' here, then the repository will instead be
      checked-out, so that you can update it later.
      
      Note that crosstool-NG will *not* update your working copy, you will
      have to do that yourself.

endif # ! CONFIGURE_has_svn
if ! CONFIGURE_has_svn

comment "svn is missing. You'll have to either:"
comment "|  - have a pre-downloaded local tarball"
comment "|  - or have a LAN mirror with a pre-downloaded tarball"
comment "otherwise you won't be able to download eglibc"

endif # ! CONFIGURE_has_svn
endif # ! LIBC_EGLIBC_CUSTOM

config EGLIBC_OPT_SIZE
    bool
    prompt "optimize eglibc for size (-Os)"
    help
      Optimize eglibc for size using -Os instead of -O2. This will make eglibc
      smaller but may make it slower.

config EGLIBC_CUSTOM_CONFIG
    bool
    prompt "Use custom configuration file"
    help
      Use a custom configuration file to disable some features in the eglibc
      library. The configuration file options are described in detail in the
      option-groups.def file in the eglibc source directory.

if EGLIBC_CUSTOM_CONFIG
    config EGLIBC_OPTION_GROUPS_FILE
        string
        prompt "Path to the option-groups configuration file"
        default ""
        help
          Path to the option groups configuration file.

    config EGLIBC_BUNDLED_NSS_CONFIG
        bool
        prompt "Use bundled NSS config file"
        default y
        help
          Use minimal nsswitch configuration file bundled in eglibc.
          This option is only meaningful when runtime nss configuration
          is disabled in the option groups file.

    config EGLIBC_NSS_CONFIG_FILE
        string
        prompt "Path to the NSS config file"
        default ""
        depends on !EGLIBC_BUNDLED_NSS_CONFIG
        help
          Path to the nsswitch configuration file

    config EGLIBC_BUNDLED_NSS_FUNCTIONS
        bool
        prompt "Use bundled NSS functions file"
        default y
        help
          Use minimal nsswitch functions file bundled in eglibc.
          This option is only meaningful when runtime nss configuration
          is disabled in the option groups file.

    config EGLIBC_NSS_FUNCTIONS_FILE
        string
        prompt "Path to the NSS functions file"
        default ""
        depends on !EGLIBC_BUNDLED_NSS_FUNCTIONS
        help
          Path to the nsswitch functions file
endif