1 |
27 |
unneback |
# ====================================================================
|
2 |
|
|
#
|
3 |
|
|
# string.cdl
|
4 |
|
|
#
|
5 |
|
|
# C library string related configuration data
|
6 |
|
|
#
|
7 |
|
|
# ====================================================================
|
8 |
|
|
#####ECOSGPLCOPYRIGHTBEGIN####
|
9 |
|
|
## -------------------------------------------
|
10 |
|
|
## This file is part of eCos, the Embedded Configurable Operating System.
|
11 |
|
|
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
|
12 |
|
|
##
|
13 |
|
|
## eCos is free software; you can redistribute it and/or modify it under
|
14 |
|
|
## the terms of the GNU General Public License as published by the Free
|
15 |
|
|
## Software Foundation; either version 2 or (at your option) any later version.
|
16 |
|
|
##
|
17 |
|
|
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
|
18 |
|
|
## WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
19 |
|
|
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
20 |
|
|
## for more details.
|
21 |
|
|
##
|
22 |
|
|
## You should have received a copy of the GNU General Public License along
|
23 |
|
|
## with eCos; if not, write to the Free Software Foundation, Inc.,
|
24 |
|
|
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
|
25 |
|
|
##
|
26 |
|
|
## As a special exception, if other files instantiate templates or use macros
|
27 |
|
|
## or inline functions from this file, or you compile this file and link it
|
28 |
|
|
## with other works to produce a work based on this file, this file does not
|
29 |
|
|
## by itself cause the resulting work to be covered by the GNU General Public
|
30 |
|
|
## License. However the source code for this file must still be made available
|
31 |
|
|
## in accordance with section (3) of the GNU General Public License.
|
32 |
|
|
##
|
33 |
|
|
## This exception does not invalidate any other reasons why a work based on
|
34 |
|
|
## this file might be covered by the GNU General Public License.
|
35 |
|
|
##
|
36 |
|
|
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
|
37 |
|
|
## at http://sources.redhat.com/ecos/ecos-license/
|
38 |
|
|
## -------------------------------------------
|
39 |
|
|
#####ECOSGPLCOPYRIGHTEND####
|
40 |
|
|
# ====================================================================
|
41 |
|
|
######DESCRIPTIONBEGIN####
|
42 |
|
|
#
|
43 |
|
|
# Author(s): jlarmour
|
44 |
|
|
# Contributors:
|
45 |
|
|
# Date: 2000-04-14
|
46 |
|
|
#
|
47 |
|
|
#####DESCRIPTIONEND####
|
48 |
|
|
#
|
49 |
|
|
# ====================================================================
|
50 |
|
|
|
51 |
|
|
cdl_package CYGPKG_LIBC_STRING {
|
52 |
|
|
display "ISO C library string functions"
|
53 |
|
|
description "
|
54 |
|
|
This package provides string functions specified by the
|
55 |
|
|
ISO C standard - ISO/IEC 9899:1990."
|
56 |
|
|
doc ref/libc.html
|
57 |
|
|
include_dir cyg/libc/string
|
58 |
|
|
parent CYGPKG_LIBC
|
59 |
|
|
implements CYGINT_ISO_STRTOK_R
|
60 |
|
|
implements CYGINT_ISO_STRING_LOCALE_FUNCS
|
61 |
|
|
implements CYGINT_ISO_STRING_MEMFUNCS
|
62 |
|
|
implements CYGINT_ISO_STRING_STRFUNCS
|
63 |
|
|
requires { CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == \
|
64 |
|
|
"" }
|
65 |
|
|
requires { CYGBLD_ISO_STRING_MEMFUNCS_HEADER == \
|
66 |
|
|
"" }
|
67 |
|
|
requires { CYGBLD_ISO_STRING_STRFUNCS_HEADER == \
|
68 |
|
|
"" }
|
69 |
|
|
requires { CYGBLD_ISO_STRTOK_R_HEADER == \
|
70 |
|
|
"" }
|
71 |
|
|
requires CYGPKG_ISOINFRA
|
72 |
|
|
|
73 |
|
|
compile memchr.cxx memcmp.cxx memmove.cxx \
|
74 |
|
|
strcat.cxx strchr.cxx strcmp.cxx \
|
75 |
|
|
strcoll.cxx strcpy.cxx strcspn.cxx \
|
76 |
|
|
strlen.cxx strncat.cxx strncmp.cxx \
|
77 |
|
|
strncpy.cxx strpbrk.cxx strrchr.cxx \
|
78 |
|
|
strspn.cxx strstr.cxx strsuppt.cxx \
|
79 |
|
|
strtok.cxx strxfrm.cxx
|
80 |
|
|
|
81 |
|
|
|
82 |
|
|
# ====================================================================
|
83 |
|
|
|
84 |
|
|
cdl_option CYGIMP_LIBC_STRING_INLINES {
|
85 |
|
|
display "Inline versions of functions"
|
86 |
|
|
default_value 1
|
87 |
|
|
description "
|
88 |
|
|
This option chooses whether some of the
|
89 |
|
|
particularly simple string functions from
|
90 |
|
|
are available as inline
|
91 |
|
|
functions. This may improve performance, and as
|
92 |
|
|
the functions are small, may even improve code
|
93 |
|
|
size."
|
94 |
|
|
}
|
95 |
|
|
|
96 |
|
|
cdl_option CYGIMP_LIBC_STRING_PREFER_SMALL_TO_FAST {
|
97 |
|
|
display "Optimize string functions for code size"
|
98 |
|
|
flavor bool
|
99 |
|
|
default_value 0
|
100 |
|
|
description "
|
101 |
|
|
This option tries to reduce string function
|
102 |
|
|
code size at the expense of execution speed. The
|
103 |
|
|
same effect can be produced if the code is
|
104 |
|
|
compiled with the -Os option to the compiler."
|
105 |
|
|
}
|
106 |
|
|
|
107 |
|
|
cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {
|
108 |
|
|
display "Provide BSD compatibility functions"
|
109 |
|
|
flavor bool
|
110 |
|
|
default_value 1
|
111 |
|
|
implements CYGINT_ISO_STRING_BSD_FUNCS
|
112 |
|
|
requires { CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == \
|
113 |
|
|
"" }
|
114 |
|
|
requires CYGINT_ISO_CTYPE
|
115 |
|
|
compile bsdstring.cxx
|
116 |
|
|
description "
|
117 |
|
|
Enabling this option causes various compatibility functions
|
118 |
|
|
commonly found in the BSD UNIX operating system to be included.
|
119 |
|
|
These are functions such as bzero, bcmp, bcopy, bzero, strcasecmp,
|
120 |
|
|
strncasecmp, index, rindex and swab."
|
121 |
|
|
}
|
122 |
|
|
|
123 |
|
|
cdl_component CYGPKG_LIBC_STRING_STRTOK {
|
124 |
|
|
display "strtok"
|
125 |
|
|
flavor none
|
126 |
|
|
description "
|
127 |
|
|
These options control the behaviour of the
|
128 |
|
|
strtok() and strtok_r() string tokenization
|
129 |
|
|
functions."
|
130 |
|
|
|
131 |
|
|
cdl_option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK {
|
132 |
|
|
display "Per-thread strtok()"
|
133 |
|
|
active_if CYGPKG_KERNEL
|
134 |
|
|
requires CYGVAR_KERNEL_THREADS_DATA
|
135 |
|
|
default_value CYGVAR_KERNEL_THREADS_DATA
|
136 |
|
|
description "
|
137 |
|
|
This option controls whether the string function
|
138 |
|
|
strtok() has its state recorded on a per-thread
|
139 |
|
|
basis rather than global. If this option is
|
140 |
|
|
disabled, some per-thread space can be saved.
|
141 |
|
|
Note there is also a POSIX-standard strtok_r()
|
142 |
|
|
function to achieve a similar effect with user
|
143 |
|
|
support. Enabling this option will use one slot
|
144 |
|
|
of kernel per-thread data. You should ensure you
|
145 |
|
|
have enough slots configured for all your
|
146 |
|
|
per-thread data."
|
147 |
|
|
}
|
148 |
|
|
|
149 |
|
|
cdl_option CYGNUM_LIBC_STRING_STRTOK_TRACE_LEVEL {
|
150 |
|
|
display "Tracing level"
|
151 |
|
|
flavor data
|
152 |
|
|
legal_values 0 to 1
|
153 |
|
|
default_value 0
|
154 |
|
|
description "
|
155 |
|
|
Trace verbosity level for debugging the
|
156 |
|
|
functions strtok() and strtok_r(). Increase this
|
157 |
|
|
value to get additional trace output."
|
158 |
|
|
}
|
159 |
|
|
}
|
160 |
|
|
|
161 |
|
|
cdl_component CYGPKG_LIBC_STRING_OPTIONS {
|
162 |
|
|
display "C library string functions build options"
|
163 |
|
|
flavor none
|
164 |
|
|
no_define
|
165 |
|
|
description "
|
166 |
|
|
Package specific build options including control over
|
167 |
|
|
compiler flags used only in building this package,
|
168 |
|
|
and details of which tests are built."
|
169 |
|
|
|
170 |
|
|
|
171 |
|
|
cdl_option CYGPKG_LIBC_STRING_CFLAGS_ADD {
|
172 |
|
|
display "Additional compiler flags"
|
173 |
|
|
flavor data
|
174 |
|
|
no_define
|
175 |
|
|
default_value { "" }
|
176 |
|
|
description "
|
177 |
|
|
This option modifies the set of compiler flags for
|
178 |
|
|
building the C library. These flags are used in addition
|
179 |
|
|
to the set of global flags."
|
180 |
|
|
}
|
181 |
|
|
|
182 |
|
|
cdl_option CYGPKG_LIBC_STRING_CFLAGS_REMOVE {
|
183 |
|
|
display "Suppressed compiler flags"
|
184 |
|
|
flavor data
|
185 |
|
|
no_define
|
186 |
|
|
default_value { "" }
|
187 |
|
|
description "
|
188 |
|
|
This option modifies the set of compiler flags for
|
189 |
|
|
building the C library. These flags are removed from
|
190 |
|
|
the set of global flags if present."
|
191 |
|
|
}
|
192 |
|
|
|
193 |
|
|
cdl_option CYGPKG_LIBC_STRING_TESTS {
|
194 |
|
|
display "C library string function tests"
|
195 |
|
|
flavor data
|
196 |
|
|
no_define
|
197 |
|
|
calculated { "tests/memchr tests/memcmp1 tests/memcmp2 tests/memcpy1 tests/memcpy2 tests/memmove1 tests/memmove2 tests/memset tests/strcat1 tests/strcat2 tests/strchr tests/strcmp1 tests/strcmp2 tests/strcoll1 tests/strcoll2 tests/strcpy1 tests/strcpy2 tests/strcspn tests/strcspn tests/strlen tests/strncat1 tests/strncat2 tests/strncpy1 tests/strncpy2 tests/strpbrk tests/strrchr tests/strspn tests/strstr tests/strtok tests/strxfrm1 tests/strxfrm2" }
|
198 |
|
|
description "
|
199 |
|
|
This option specifies the set of tests for the C library
|
200 |
|
|
string functions."
|
201 |
|
|
}
|
202 |
|
|
}
|
203 |
|
|
}
|
204 |
|
|
|
205 |
|
|
# ====================================================================
|
206 |
|
|
# EOF string.cdl
|
207 |
|
|
|