URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc
- from Rev 24 to Rev 25
- ↔ Reverse comparison
Rev 24 → Rev 25
/trunk/ecos-2.0/configure
0,0 → 1,1245
#! /bin/sh |
|
# Guess values for system-dependent variables and create Makefiles. |
# Generated automatically using autoconf version 2.13 |
# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. |
# |
# This configure script is free software; the Free Software Foundation |
# gives unlimited permission to copy, distribute and modify it. |
|
# Defaults: |
ac_help= |
ac_default_prefix=/usr/local |
# Any additions from configure.in: |
ac_help="$ac_help |
--enable-maintainer-mode enable make rules and dependencies not useful |
(and sometimes confusing) to the casual installer" |
|
# Initialize some variables set by options. |
# The variables have the same names as the options, with |
# dashes changed to underlines. |
build=NONE |
cache_file=./config.cache |
exec_prefix=NONE |
host=NONE |
no_create= |
nonopt=NONE |
no_recursion= |
prefix=NONE |
program_prefix=NONE |
program_suffix=NONE |
program_transform_name=s,x,x, |
silent= |
site= |
srcdir= |
target=NONE |
verbose= |
x_includes=NONE |
x_libraries=NONE |
bindir='${exec_prefix}/bin' |
sbindir='${exec_prefix}/sbin' |
libexecdir='${exec_prefix}/libexec' |
datadir='${prefix}/share' |
sysconfdir='${prefix}/etc' |
sharedstatedir='${prefix}/com' |
localstatedir='${prefix}/var' |
libdir='${exec_prefix}/lib' |
includedir='${prefix}/include' |
oldincludedir='/usr/include' |
infodir='${prefix}/info' |
mandir='${prefix}/man' |
|
# Initialize some other variables. |
subdirs= |
MFLAGS= MAKEFLAGS= |
SHELL=${CONFIG_SHELL-/bin/sh} |
# Maximum number of lines to put in a shell here document. |
ac_max_here_lines=12 |
|
ac_prev= |
for ac_option |
do |
|
# If the previous option needs an argument, assign it. |
if test -n "$ac_prev"; then |
eval "$ac_prev=\$ac_option" |
ac_prev= |
continue |
fi |
|
case "$ac_option" in |
-*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; |
*) ac_optarg= ;; |
esac |
|
# Accept the important Cygnus configure options, so we can diagnose typos. |
|
case "$ac_option" in |
|
-bindir | --bindir | --bindi | --bind | --bin | --bi) |
ac_prev=bindir ;; |
-bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) |
bindir="$ac_optarg" ;; |
|
-build | --build | --buil | --bui | --bu) |
ac_prev=build ;; |
-build=* | --build=* | --buil=* | --bui=* | --bu=*) |
build="$ac_optarg" ;; |
|
-cache-file | --cache-file | --cache-fil | --cache-fi \ |
| --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) |
ac_prev=cache_file ;; |
-cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ |
| --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) |
cache_file="$ac_optarg" ;; |
|
-datadir | --datadir | --datadi | --datad | --data | --dat | --da) |
ac_prev=datadir ;; |
-datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ |
| --da=*) |
datadir="$ac_optarg" ;; |
|
-disable-* | --disable-*) |
ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` |
# Reject names that are not valid shell variable names. |
if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then |
{ echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } |
fi |
ac_feature=`echo $ac_feature| sed 's/-/_/g'` |
eval "enable_${ac_feature}=no" ;; |
|
-enable-* | --enable-*) |
ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` |
# Reject names that are not valid shell variable names. |
if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then |
{ echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } |
fi |
ac_feature=`echo $ac_feature| sed 's/-/_/g'` |
case "$ac_option" in |
*=*) ;; |
*) ac_optarg=yes ;; |
esac |
eval "enable_${ac_feature}='$ac_optarg'" ;; |
|
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ |
| --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ |
| --exec | --exe | --ex) |
ac_prev=exec_prefix ;; |
-exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ |
| --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ |
| --exec=* | --exe=* | --ex=*) |
exec_prefix="$ac_optarg" ;; |
|
-gas | --gas | --ga | --g) |
# Obsolete; use --with-gas. |
with_gas=yes ;; |
|
-help | --help | --hel | --he) |
# Omit some internal or obsolete options to make the list less imposing. |
# This message is too long to be a string in the A/UX 3.1 sh. |
cat << EOF |
Usage: configure [options] [host] |
Options: [defaults in brackets after descriptions] |
Configuration: |
--cache-file=FILE cache test results in FILE |
--help print this message |
--no-create do not create output files |
--quiet, --silent do not print \`checking...' messages |
--version print the version of autoconf that created configure |
Directory and file names: |
--prefix=PREFIX install architecture-independent files in PREFIX |
[$ac_default_prefix] |
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX |
[same as prefix] |
--bindir=DIR user executables in DIR [EPREFIX/bin] |
--sbindir=DIR system admin executables in DIR [EPREFIX/sbin] |
--libexecdir=DIR program executables in DIR [EPREFIX/libexec] |
--datadir=DIR read-only architecture-independent data in DIR |
[PREFIX/share] |
--sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] |
--sharedstatedir=DIR modifiable architecture-independent data in DIR |
[PREFIX/com] |
--localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] |
--libdir=DIR object code libraries in DIR [EPREFIX/lib] |
--includedir=DIR C header files in DIR [PREFIX/include] |
--oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] |
--infodir=DIR info documentation in DIR [PREFIX/info] |
--mandir=DIR man documentation in DIR [PREFIX/man] |
--srcdir=DIR find the sources in DIR [configure dir or ..] |
--program-prefix=PREFIX prepend PREFIX to installed program names |
--program-suffix=SUFFIX append SUFFIX to installed program names |
--program-transform-name=PROGRAM |
run sed PROGRAM on installed program names |
EOF |
cat << EOF |
Host type: |
--build=BUILD configure for building on BUILD [BUILD=HOST] |
--host=HOST configure for HOST [guessed] |
--target=TARGET configure for TARGET [TARGET=HOST] |
Features and packages: |
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) |
--enable-FEATURE[=ARG] include FEATURE [ARG=yes] |
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes] |
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) |
--x-includes=DIR X include files are in DIR |
--x-libraries=DIR X library files are in DIR |
EOF |
if test -n "$ac_help"; then |
echo "--enable and --with options recognized:$ac_help" |
fi |
exit 0 ;; |
|
-host | --host | --hos | --ho) |
ac_prev=host ;; |
-host=* | --host=* | --hos=* | --ho=*) |
host="$ac_optarg" ;; |
|
-includedir | --includedir | --includedi | --included | --include \ |
| --includ | --inclu | --incl | --inc) |
ac_prev=includedir ;; |
-includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ |
| --includ=* | --inclu=* | --incl=* | --inc=*) |
includedir="$ac_optarg" ;; |
|
-infodir | --infodir | --infodi | --infod | --info | --inf) |
ac_prev=infodir ;; |
-infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) |
infodir="$ac_optarg" ;; |
|
-libdir | --libdir | --libdi | --libd) |
ac_prev=libdir ;; |
-libdir=* | --libdir=* | --libdi=* | --libd=*) |
libdir="$ac_optarg" ;; |
|
-libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ |
| --libexe | --libex | --libe) |
ac_prev=libexecdir ;; |
-libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ |
| --libexe=* | --libex=* | --libe=*) |
libexecdir="$ac_optarg" ;; |
|
-localstatedir | --localstatedir | --localstatedi | --localstated \ |
| --localstate | --localstat | --localsta | --localst \ |
| --locals | --local | --loca | --loc | --lo) |
ac_prev=localstatedir ;; |
-localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ |
| --localstate=* | --localstat=* | --localsta=* | --localst=* \ |
| --locals=* | --local=* | --loca=* | --loc=* | --lo=*) |
localstatedir="$ac_optarg" ;; |
|
-mandir | --mandir | --mandi | --mand | --man | --ma | --m) |
ac_prev=mandir ;; |
-mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) |
mandir="$ac_optarg" ;; |
|
-nfp | --nfp | --nf) |
# Obsolete; use --without-fp. |
with_fp=no ;; |
|
-no-create | --no-create | --no-creat | --no-crea | --no-cre \ |
| --no-cr | --no-c) |
no_create=yes ;; |
|
-no-recursion | --no-recursion | --no-recursio | --no-recursi \ |
| --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) |
no_recursion=yes ;; |
|
-oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ |
| --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ |
| --oldin | --oldi | --old | --ol | --o) |
ac_prev=oldincludedir ;; |
-oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ |
| --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ |
| --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) |
oldincludedir="$ac_optarg" ;; |
|
-prefix | --prefix | --prefi | --pref | --pre | --pr | --p) |
ac_prev=prefix ;; |
-prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) |
prefix="$ac_optarg" ;; |
|
-program-prefix | --program-prefix | --program-prefi | --program-pref \ |
| --program-pre | --program-pr | --program-p) |
ac_prev=program_prefix ;; |
-program-prefix=* | --program-prefix=* | --program-prefi=* \ |
| --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) |
program_prefix="$ac_optarg" ;; |
|
-program-suffix | --program-suffix | --program-suffi | --program-suff \ |
| --program-suf | --program-su | --program-s) |
ac_prev=program_suffix ;; |
-program-suffix=* | --program-suffix=* | --program-suffi=* \ |
| --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) |
program_suffix="$ac_optarg" ;; |
|
-program-transform-name | --program-transform-name \ |
| --program-transform-nam | --program-transform-na \ |
| --program-transform-n | --program-transform- \ |
| --program-transform | --program-transfor \ |
| --program-transfo | --program-transf \ |
| --program-trans | --program-tran \ |
| --progr-tra | --program-tr | --program-t) |
ac_prev=program_transform_name ;; |
-program-transform-name=* | --program-transform-name=* \ |
| --program-transform-nam=* | --program-transform-na=* \ |
| --program-transform-n=* | --program-transform-=* \ |
| --program-transform=* | --program-transfor=* \ |
| --program-transfo=* | --program-transf=* \ |
| --program-trans=* | --program-tran=* \ |
| --progr-tra=* | --program-tr=* | --program-t=*) |
program_transform_name="$ac_optarg" ;; |
|
-q | -quiet | --quiet | --quie | --qui | --qu | --q \ |
| -silent | --silent | --silen | --sile | --sil) |
silent=yes ;; |
|
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) |
ac_prev=sbindir ;; |
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ |
| --sbi=* | --sb=*) |
sbindir="$ac_optarg" ;; |
|
-sharedstatedir | --sharedstatedir | --sharedstatedi \ |
| --sharedstated | --sharedstate | --sharedstat | --sharedsta \ |
| --sharedst | --shareds | --shared | --share | --shar \ |
| --sha | --sh) |
ac_prev=sharedstatedir ;; |
-sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ |
| --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ |
| --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ |
| --sha=* | --sh=*) |
sharedstatedir="$ac_optarg" ;; |
|
-site | --site | --sit) |
ac_prev=site ;; |
-site=* | --site=* | --sit=*) |
site="$ac_optarg" ;; |
|
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr) |
ac_prev=srcdir ;; |
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) |
srcdir="$ac_optarg" ;; |
|
-sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ |
| --syscon | --sysco | --sysc | --sys | --sy) |
ac_prev=sysconfdir ;; |
-sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ |
| --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) |
sysconfdir="$ac_optarg" ;; |
|
-target | --target | --targe | --targ | --tar | --ta | --t) |
ac_prev=target ;; |
-target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) |
target="$ac_optarg" ;; |
|
-v | -verbose | --verbose | --verbos | --verbo | --verb) |
verbose=yes ;; |
|
-version | --version | --versio | --versi | --vers) |
echo "configure generated by autoconf version 2.13" |
exit 0 ;; |
|
-with-* | --with-*) |
ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` |
# Reject names that are not valid shell variable names. |
if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then |
{ echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } |
fi |
ac_package=`echo $ac_package| sed 's/-/_/g'` |
case "$ac_option" in |
*=*) ;; |
*) ac_optarg=yes ;; |
esac |
eval "with_${ac_package}='$ac_optarg'" ;; |
|
-without-* | --without-*) |
ac_package=`echo $ac_option|sed -e 's/-*without-//'` |
# Reject names that are not valid shell variable names. |
if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then |
{ echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } |
fi |
ac_package=`echo $ac_package| sed 's/-/_/g'` |
eval "with_${ac_package}=no" ;; |
|
--x) |
# Obsolete; use --with-x. |
with_x=yes ;; |
|
-x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ |
| --x-incl | --x-inc | --x-in | --x-i) |
ac_prev=x_includes ;; |
-x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ |
| --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) |
x_includes="$ac_optarg" ;; |
|
-x-libraries | --x-libraries | --x-librarie | --x-librari \ |
| --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) |
ac_prev=x_libraries ;; |
-x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ |
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) |
x_libraries="$ac_optarg" ;; |
|
-*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } |
;; |
|
*) |
if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then |
echo "configure: warning: $ac_option: invalid host type" 1>&2 |
fi |
if test "x$nonopt" != xNONE; then |
{ echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } |
fi |
nonopt="$ac_option" |
;; |
|
esac |
done |
|
if test -n "$ac_prev"; then |
{ echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } |
fi |
|
trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 |
|
# File descriptor usage: |
# 0 standard input |
# 1 file creation |
# 2 errors and warnings |
# 3 some systems may open it to /dev/tty |
# 4 used on the Kubota Titan |
# 6 checking for... messages and results |
# 5 compiler messages saved in config.log |
if test "$silent" = yes; then |
exec 6>/dev/null |
else |
exec 6>&1 |
fi |
exec 5>./config.log |
|
echo "\ |
This file contains any messages produced by compilers while |
running configure, to aid debugging if configure makes a mistake. |
" 1>&5 |
|
# Strip out --no-create and --no-recursion so they do not pile up. |
# Also quote any args containing shell metacharacters. |
ac_configure_args= |
for ac_arg |
do |
case "$ac_arg" in |
-no-create | --no-create | --no-creat | --no-crea | --no-cre \ |
| --no-cr | --no-c) ;; |
-no-recursion | --no-recursion | --no-recursio | --no-recursi \ |
| --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; |
*" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) |
ac_configure_args="$ac_configure_args '$ac_arg'" ;; |
*) ac_configure_args="$ac_configure_args $ac_arg" ;; |
esac |
done |
|
# NLS nuisances. |
# Only set these to C if already set. These must not be set unconditionally |
# because not all systems understand e.g. LANG=C (notably SCO). |
# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! |
# Non-C LC_CTYPE values break the ctype check. |
if test "${LANG+set}" = set; then LANG=C; export LANG; fi |
if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi |
if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi |
if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi |
|
# confdefs.h avoids OS command line length limits that DEFS can exceed. |
rm -rf conftest* confdefs.h |
# AIX cpp loses on an empty file, so make sure it contains at least a newline. |
echo > confdefs.h |
|
# A filename unique to this package, relative to the directory that |
# configure is in, which we can look for to find out if srcdir is correct. |
ac_unique_file=acsupport/config.guess |
|
# Find the source files, if location was not specified. |
if test -z "$srcdir"; then |
ac_srcdir_defaulted=yes |
# Try the directory containing this script, then its parent. |
ac_prog=$0 |
ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` |
test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. |
srcdir=$ac_confdir |
if test ! -r $srcdir/$ac_unique_file; then |
srcdir=.. |
fi |
else |
ac_srcdir_defaulted=no |
fi |
if test ! -r $srcdir/$ac_unique_file; then |
if test "$ac_srcdir_defaulted" = yes; then |
{ echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } |
else |
{ echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } |
fi |
fi |
srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` |
|
# Prefer explicitly selected file to automatically selected ones. |
if test -z "$CONFIG_SITE"; then |
if test "x$prefix" != xNONE; then |
CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" |
else |
CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" |
fi |
fi |
for ac_site_file in $CONFIG_SITE; do |
if test -r "$ac_site_file"; then |
echo "loading site script $ac_site_file" |
. "$ac_site_file" |
fi |
done |
|
if test -r "$cache_file"; then |
echo "loading cache $cache_file" |
. $cache_file |
else |
echo "creating cache $cache_file" |
> $cache_file |
fi |
|
ac_ext=c |
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. |
ac_cpp='$CPP $CPPFLAGS' |
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' |
ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' |
cross_compiling=$ac_cv_prog_cc_cross |
|
ac_exeext= |
ac_objext=o |
if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then |
# Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. |
if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then |
ac_n= ac_c=' |
' ac_t=' ' |
else |
ac_n=-n ac_c= ac_t= |
fi |
else |
ac_n= ac_c='\c' ac_t= |
fi |
|
|
ac_aux_dir= |
for ac_dir in acsupport $srcdir/acsupport; do |
if test -f $ac_dir/install-sh; then |
ac_aux_dir=$ac_dir |
ac_install_sh="$ac_aux_dir/install-sh -c" |
break |
elif test -f $ac_dir/install.sh; then |
ac_aux_dir=$ac_dir |
ac_install_sh="$ac_aux_dir/install.sh -c" |
break |
fi |
done |
if test -z "$ac_aux_dir"; then |
{ echo "configure: error: can not find install-sh or install.sh in acsupport $srcdir/acsupport" 1>&2; exit 1; } |
fi |
ac_config_guess=$ac_aux_dir/config.guess |
ac_config_sub=$ac_aux_dir/config.sub |
ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. |
|
|
# Make sure we can run config.sub. |
if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : |
else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } |
fi |
|
echo $ac_n "checking host system type""... $ac_c" 1>&6 |
echo "configure:554: checking host system type" >&5 |
|
host_alias=$host |
case "$host_alias" in |
NONE) |
case $nonopt in |
NONE) |
if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : |
else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } |
fi ;; |
*) host_alias=$nonopt ;; |
esac ;; |
esac |
|
host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` |
host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` |
host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` |
host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` |
echo "$ac_t""$host" 1>&6 |
|
# Find a good install program. We prefer a C program (faster), |
# so one script is as good as another. But avoid the broken or |
# incompatible versions: |
# SysV /etc/install, /usr/sbin/install |
# SunOS /usr/etc/install |
# IRIX /sbin/install |
# AIX /bin/install |
# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag |
# AFS /usr/afsws/bin/install, which mishandles nonexistent args |
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" |
# ./install, which can be erroneously created by make from ./install.sh. |
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 |
echo "configure:586: checking for a BSD compatible install" >&5 |
if test -z "$INSTALL"; then |
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then |
echo $ac_n "(cached) $ac_c" 1>&6 |
else |
IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" |
for ac_dir in $PATH; do |
# Account for people who put trailing slashes in PATH elements. |
case "$ac_dir/" in |
/|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; |
*) |
# OSF1 and SCO ODT 3.0 have their own names for install. |
# Don't use installbsd from OSF since it installs stuff as root |
# by default. |
for ac_prog in ginstall scoinst install; do |
if test -f $ac_dir/$ac_prog; then |
if test $ac_prog = install && |
grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then |
# AIX install. It has an incompatible calling convention. |
: |
else |
ac_cv_path_install="$ac_dir/$ac_prog -c" |
break 2 |
fi |
fi |
done |
;; |
esac |
done |
IFS="$ac_save_IFS" |
|
fi |
if test "${ac_cv_path_install+set}" = set; then |
INSTALL="$ac_cv_path_install" |
else |
# As a last resort, use the slow shell script. We don't cache a |
# path for INSTALL within a source directory, because that will |
# break other packages using the cache if that directory is |
# removed, or if the path is relative. |
INSTALL="$ac_install_sh" |
fi |
fi |
echo "$ac_t""$INSTALL" 1>&6 |
|
# Use test -z because SunOS4 sh mishandles braces in ${var-val}. |
# It thinks the first close brace ends the variable substitution. |
test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' |
|
test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' |
|
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' |
|
echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 |
echo "configure:639: checking whether build environment is sane" >&5 |
# Just in case |
sleep 1 |
echo timestamp > conftestfile |
# Do `set' in a subshell so we don't clobber the current shell's |
# arguments. Must try -L first in case configure is actually a |
# symlink; some systems play weird games with the mod time of symlinks |
# (eg FreeBSD returns the mod time of the symlink's containing |
# directory). |
if ( |
set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` |
if test "$*" = "X"; then |
# -L didn't work. |
set X `ls -t $srcdir/configure conftestfile` |
fi |
if test "$*" != "X $srcdir/configure conftestfile" \ |
&& test "$*" != "X conftestfile $srcdir/configure"; then |
|
# If neither matched, then we have a broken ls. This can happen |
# if, for instance, CONFIG_SHELL is bash and it inherits a |
# broken ls alias from the environment. This has actually |
# happened. Such a system could not be considered "sane". |
{ echo "configure: error: ls -t appears to fail. Make sure there is not a broken |
alias in your environment" 1>&2; exit 1; } |
fi |
|
test "$2" = conftestfile |
) |
then |
# Ok. |
: |
else |
{ echo "configure: error: newly created file is older than distributed files! |
Check your system clock" 1>&2; exit 1; } |
fi |
rm -f conftest* |
echo "$ac_t""yes" 1>&6 |
if test "$program_transform_name" = s,x,x,; then |
program_transform_name= |
else |
# Double any \ or $. echo might interpret backslashes. |
cat <<\EOF_SED > conftestsed |
s,\\,\\\\,g; s,\$,$$,g |
EOF_SED |
program_transform_name="`echo $program_transform_name|sed -f conftestsed`" |
rm -f conftestsed |
fi |
test "$program_prefix" != NONE && |
program_transform_name="s,^,${program_prefix},; $program_transform_name" |
# Use a double $ so make ignores it. |
test "$program_suffix" != NONE && |
program_transform_name="s,\$\$,${program_suffix},; $program_transform_name" |
|
# sed with no file args requires a program. |
test "$program_transform_name" = "" && program_transform_name="s,x,x," |
|
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 |
echo "configure:696: checking whether ${MAKE-make} sets \${MAKE}" >&5 |
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` |
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then |
echo $ac_n "(cached) $ac_c" 1>&6 |
else |
cat > conftestmake <<\EOF |
all: |
@echo 'ac_maketemp="${MAKE}"' |
EOF |
# GNU make sometimes prints "make[1]: Entering...", which would confuse us. |
eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` |
if test -n "$ac_maketemp"; then |
eval ac_cv_prog_make_${ac_make}_set=yes |
else |
eval ac_cv_prog_make_${ac_make}_set=no |
fi |
rm -f conftestmake |
fi |
if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then |
echo "$ac_t""yes" 1>&6 |
SET_MAKE= |
else |
echo "$ac_t""no" 1>&6 |
SET_MAKE="MAKE=${MAKE-make}" |
fi |
|
|
PACKAGE=eCos |
|
VERSION=2.0 |
|
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then |
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } |
fi |
|
|
|
missing_dir=`cd $ac_aux_dir && pwd` |
echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 |
echo "configure:735: checking for working aclocal" >&5 |
# Run test in a subshell; some versions of sh will print an error if |
# an executable is not found, even if stderr is redirected. |
# Redirect stdin to placate older versions of autoconf. Sigh. |
if (aclocal --version) < /dev/null > /dev/null 2>&1; then |
ACLOCAL=aclocal |
echo "$ac_t""found" 1>&6 |
else |
ACLOCAL="$missing_dir/missing aclocal" |
echo "$ac_t""missing" 1>&6 |
fi |
|
echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 |
echo "configure:748: checking for working autoconf" >&5 |
# Run test in a subshell; some versions of sh will print an error if |
# an executable is not found, even if stderr is redirected. |
# Redirect stdin to placate older versions of autoconf. Sigh. |
if (autoconf --version) < /dev/null > /dev/null 2>&1; then |
AUTOCONF=autoconf |
echo "$ac_t""found" 1>&6 |
else |
AUTOCONF="$missing_dir/missing autoconf" |
echo "$ac_t""missing" 1>&6 |
fi |
|
echo $ac_n "checking for working automake""... $ac_c" 1>&6 |
echo "configure:761: checking for working automake" >&5 |
# Run test in a subshell; some versions of sh will print an error if |
# an executable is not found, even if stderr is redirected. |
# Redirect stdin to placate older versions of autoconf. Sigh. |
if (automake --version) < /dev/null > /dev/null 2>&1; then |
AUTOMAKE=automake |
echo "$ac_t""found" 1>&6 |
else |
AUTOMAKE="$missing_dir/missing automake" |
echo "$ac_t""missing" 1>&6 |
fi |
|
echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 |
echo "configure:774: checking for working autoheader" >&5 |
# Run test in a subshell; some versions of sh will print an error if |
# an executable is not found, even if stderr is redirected. |
# Redirect stdin to placate older versions of autoconf. Sigh. |
if (autoheader --version) < /dev/null > /dev/null 2>&1; then |
AUTOHEADER=autoheader |
echo "$ac_t""found" 1>&6 |
else |
AUTOHEADER="$missing_dir/missing autoheader" |
echo "$ac_t""missing" 1>&6 |
fi |
|
echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 |
echo "configure:787: checking for working makeinfo" >&5 |
# Run test in a subshell; some versions of sh will print an error if |
# an executable is not found, even if stderr is redirected. |
# Redirect stdin to placate older versions of autoconf. Sigh. |
if (makeinfo --version) < /dev/null > /dev/null 2>&1; then |
MAKEINFO=makeinfo |
echo "$ac_t""found" 1>&6 |
else |
MAKEINFO="$missing_dir/missing makeinfo" |
echo "$ac_t""missing" 1>&6 |
fi |
|
|
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 |
echo "configure:801: checking whether to enable maintainer-specific portions of Makefiles" >&5 |
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. |
if test "${enable_maintainer_mode+set}" = set; then |
enableval="$enable_maintainer_mode" |
USE_MAINTAINER_MODE=$enableval |
else |
USE_MAINTAINER_MODE=no |
fi |
|
echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6 |
|
|
if test $USE_MAINTAINER_MODE = yes; then |
MAINTAINER_MODE_TRUE= |
MAINTAINER_MODE_FALSE='#' |
else |
MAINTAINER_MODE_TRUE='#' |
MAINTAINER_MODE_FALSE= |
fi |
MAINT=$MAINTAINER_MODE_TRUE |
|
|
|
echo $ac_n "checking that a separate build tree is being used""... $ac_c" 1>&6 |
echo "configure:825: checking that a separate build tree is being used" >&5 |
ecos_cwd=`/bin/pwd` |
if test "${srcdir}" = "." ; then |
srcdir=${ecos_cwd} |
fi |
if test "${ecos_cwd}" = "${srcdir}" ; then |
echo "$ac_t""no" 1>&6 |
{ echo "configure: error: This configure script should not be run inside the source tree. Instead please use a separate build tree" 1>&2; exit 1; } |
else |
echo "$ac_t""yes" 1>&6 |
fi |
|
|
|
if test -f "${srcdir}/host/configure" ; then |
SUBDIRS="host" |
elif test -f "${srcdir}/tools/src/configure" ; then |
SUBDIRS="tools/src" |
else |
SUBDIRS="" |
fi |
|
|
PKGHOSTDIRS="" |
FOUND_CONFIGURES="" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/*/*/*/host/configure" |
for configure in ${FOUND_CONFIGURES}; do |
if test -f ${configure}; then |
hostdir=`dirname ${configure}` |
hostdir=`echo ${hostdir} | sed -e "s:^${srcdir}/::"` |
PKGHOSTDIRS="${PKGHOSTDIRS} ${hostdir}" |
fi |
done |
|
SUBDIRS="${SUBDIRS} ${PKGHOSTDIRS}" |
|
|
|
|
subdirs="${SUBDIRS}" |
|
trap '' 1 2 15 |
cat > confcache <<\EOF |
# This file is a shell script that caches the results of configure |
# tests run on this system so they can be shared between configure |
# scripts and configure runs. It is not useful on other systems. |
# If it contains results you don't want to keep, you may remove or edit it. |
# |
# By default, configure uses ./config.cache as the cache file, |
# creating it if it does not exist already. You can give configure |
# the --cache-file=FILE option to use a different cache file; that is |
# what configure does when it calls configure scripts in |
# subdirectories, so they share the cache. |
# Giving --cache-file=/dev/null disables caching, for debugging configure. |
# config.status only pays attention to the cache file if you give it the |
# --recheck option to rerun configure. |
# |
EOF |
# The following way of writing the cache mishandles newlines in values, |
# but we know of no workaround that is simple, portable, and efficient. |
# So, don't put newlines in cache variables' values. |
# Ultrix sh set writes to stderr and can't be redirected directly, |
# and sets the high bit in the cache file unless we assign to the vars. |
(set) 2>&1 | |
case `(ac_space=' '; set | grep ac_space) 2>&1` in |
*ac_space=\ *) |
# `set' does not quote correctly, so add quotes (double-quote substitution |
# turns \\\\ into \\, and sed turns \\ into \). |
sed -n \ |
-e "s/'/'\\\\''/g" \ |
-e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" |
;; |
*) |
# `set' quotes correctly as required by POSIX, so do not add quotes. |
sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' |
;; |
esac >> confcache |
if cmp -s $cache_file confcache; then |
: |
else |
if test -w $cache_file; then |
echo "updating cache $cache_file" |
cat confcache > $cache_file |
else |
echo "not updating unwritable cache $cache_file" |
fi |
fi |
rm -f confcache |
|
trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 |
|
test "x$prefix" = xNONE && prefix=$ac_default_prefix |
# Let make expand exec_prefix. |
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' |
|
# Any assignment to VPATH causes Sun make to only execute |
# the first set of double-colon rules, so remove it if not needed. |
# If there is a colon in the path, we need to keep it. |
if test "x$srcdir" = x.; then |
ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' |
fi |
|
trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 |
|
# Transform confdefs.h into DEFS. |
# Protect against shell expansion while executing Makefile rules. |
# Protect against Makefile macro expansion. |
cat > conftest.defs <<\EOF |
s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g |
s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g |
s%\[%\\&%g |
s%\]%\\&%g |
s%\$%$$%g |
EOF |
DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` |
rm -f conftest.defs |
|
|
# Without the "./", some shells look in PATH for config.status. |
: ${CONFIG_STATUS=./config.status} |
|
echo creating $CONFIG_STATUS |
rm -f $CONFIG_STATUS |
cat > $CONFIG_STATUS <<EOF |
#! /bin/sh |
# Generated automatically by configure. |
# Run this file to recreate the current configuration. |
# This directory was configured as follows, |
# on host `(hostname || uname -n) 2>/dev/null | sed 1q`: |
# |
# $0 $ac_configure_args |
# |
# Compiler output produced by configure, useful for debugging |
# configure, is in ./config.log if it exists. |
|
ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" |
for ac_option |
do |
case "\$ac_option" in |
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) |
echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" |
exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; |
-version | --version | --versio | --versi | --vers | --ver | --ve | --v) |
echo "$CONFIG_STATUS generated by autoconf version 2.13" |
exit 0 ;; |
-help | --help | --hel | --he | --h) |
echo "\$ac_cs_usage"; exit 0 ;; |
*) echo "\$ac_cs_usage"; exit 1 ;; |
esac |
done |
|
ac_given_srcdir=$srcdir |
ac_given_INSTALL="$INSTALL" |
|
trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 |
EOF |
cat >> $CONFIG_STATUS <<EOF |
|
# Protect against being on the right side of a sed subst in config.status. |
sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; |
s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF |
$ac_vpsub |
$extrasub |
s%@SHELL@%$SHELL%g |
s%@CFLAGS@%$CFLAGS%g |
s%@CPPFLAGS@%$CPPFLAGS%g |
s%@CXXFLAGS@%$CXXFLAGS%g |
s%@FFLAGS@%$FFLAGS%g |
s%@DEFS@%$DEFS%g |
s%@LDFLAGS@%$LDFLAGS%g |
s%@LIBS@%$LIBS%g |
s%@exec_prefix@%$exec_prefix%g |
s%@prefix@%$prefix%g |
s%@program_transform_name@%$program_transform_name%g |
s%@bindir@%$bindir%g |
s%@sbindir@%$sbindir%g |
s%@libexecdir@%$libexecdir%g |
s%@datadir@%$datadir%g |
s%@sysconfdir@%$sysconfdir%g |
s%@sharedstatedir@%$sharedstatedir%g |
s%@localstatedir@%$localstatedir%g |
s%@libdir@%$libdir%g |
s%@includedir@%$includedir%g |
s%@oldincludedir@%$oldincludedir%g |
s%@infodir@%$infodir%g |
s%@mandir@%$mandir%g |
s%@host@%$host%g |
s%@host_alias@%$host_alias%g |
s%@host_cpu@%$host_cpu%g |
s%@host_vendor@%$host_vendor%g |
s%@host_os@%$host_os%g |
s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g |
s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g |
s%@INSTALL_DATA@%$INSTALL_DATA%g |
s%@PACKAGE@%$PACKAGE%g |
s%@VERSION@%$VERSION%g |
s%@ACLOCAL@%$ACLOCAL%g |
s%@AUTOCONF@%$AUTOCONF%g |
s%@AUTOMAKE@%$AUTOMAKE%g |
s%@AUTOHEADER@%$AUTOHEADER%g |
s%@MAKEINFO@%$MAKEINFO%g |
s%@SET_MAKE@%$SET_MAKE%g |
s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g |
s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g |
s%@MAINT@%$MAINT%g |
s%@SUBDIRS@%$SUBDIRS%g |
s%@subdirs@%$subdirs%g |
|
CEOF |
EOF |
|
cat >> $CONFIG_STATUS <<\EOF |
|
# Split the substitutions into bite-sized pieces for seds with |
# small command number limits, like on Digital OSF/1 and HP-UX. |
ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. |
ac_file=1 # Number of current file. |
ac_beg=1 # First line for current file. |
ac_end=$ac_max_sed_cmds # Line after last line for current file. |
ac_more_lines=: |
ac_sed_cmds="" |
while $ac_more_lines; do |
if test $ac_beg -gt 1; then |
sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file |
else |
sed "${ac_end}q" conftest.subs > conftest.s$ac_file |
fi |
if test ! -s conftest.s$ac_file; then |
ac_more_lines=false |
rm -f conftest.s$ac_file |
else |
if test -z "$ac_sed_cmds"; then |
ac_sed_cmds="sed -f conftest.s$ac_file" |
else |
ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" |
fi |
ac_file=`expr $ac_file + 1` |
ac_beg=$ac_end |
ac_end=`expr $ac_end + $ac_max_sed_cmds` |
fi |
done |
if test -z "$ac_sed_cmds"; then |
ac_sed_cmds=cat |
fi |
EOF |
|
cat >> $CONFIG_STATUS <<EOF |
|
CONFIG_FILES=\${CONFIG_FILES-"Makefile"} |
EOF |
cat >> $CONFIG_STATUS <<\EOF |
for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then |
# Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". |
case "$ac_file" in |
*:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` |
ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; |
*) ac_file_in="${ac_file}.in" ;; |
esac |
|
# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. |
|
# Remove last slash and all that follows it. Not all systems have dirname. |
ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` |
if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then |
# The file is in a subdirectory. |
test ! -d "$ac_dir" && mkdir "$ac_dir" |
ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" |
# A "../" for each directory in $ac_dir_suffix. |
ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` |
else |
ac_dir_suffix= ac_dots= |
fi |
|
case "$ac_given_srcdir" in |
.) srcdir=. |
if test -z "$ac_dots"; then top_srcdir=. |
else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; |
/*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; |
*) # Relative path. |
srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" |
top_srcdir="$ac_dots$ac_given_srcdir" ;; |
esac |
|
case "$ac_given_INSTALL" in |
[/$]*) INSTALL="$ac_given_INSTALL" ;; |
*) INSTALL="$ac_dots$ac_given_INSTALL" ;; |
esac |
|
echo creating "$ac_file" |
rm -f "$ac_file" |
configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." |
case "$ac_file" in |
*Makefile*) ac_comsub="1i\\ |
# $configure_input" ;; |
*) ac_comsub= ;; |
esac |
|
ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` |
sed -e "$ac_comsub |
s%@configure_input@%$configure_input%g |
s%@srcdir@%$srcdir%g |
s%@top_srcdir@%$top_srcdir%g |
s%@INSTALL@%$INSTALL%g |
" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file |
fi; done |
rm -f conftest.s* |
|
EOF |
cat >> $CONFIG_STATUS <<EOF |
REQUIRED_DIRS="${SUBDIRS}" |
|
EOF |
cat >> $CONFIG_STATUS <<\EOF |
${CONFIG_SHELL-/bin/sh} ${top_srcdir}/acsupport/mkinstalldirs ${REQUIRED_DIRS} |
|
exit 0 |
EOF |
chmod +x $CONFIG_STATUS |
rm -fr confdefs* $ac_clean_files |
test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 |
|
if test "$no_recursion" != yes; then |
|
# Remove --cache-file and --srcdir arguments so they do not pile up. |
ac_sub_configure_args= |
ac_prev= |
for ac_arg in $ac_configure_args; do |
if test -n "$ac_prev"; then |
ac_prev= |
continue |
fi |
case "$ac_arg" in |
-cache-file | --cache-file | --cache-fil | --cache-fi \ |
| --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) |
ac_prev=cache_file ;; |
-cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ |
| --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) |
;; |
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr) |
ac_prev=srcdir ;; |
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) |
;; |
*) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;; |
esac |
done |
|
for ac_config_dir in ${SUBDIRS}; do |
|
# Do not complain, so a configure script can configure whichever |
# parts of a large source tree are present. |
if test ! -d $srcdir/$ac_config_dir; then |
continue |
fi |
|
echo configuring in $ac_config_dir |
|
case "$srcdir" in |
.) ;; |
*) |
if test -d ./$ac_config_dir || mkdir ./$ac_config_dir; then :; |
else |
{ echo "configure: error: can not create `pwd`/$ac_config_dir" 1>&2; exit 1; } |
fi |
;; |
esac |
|
ac_popdir=`pwd` |
cd $ac_config_dir |
|
# A "../" for each directory in /$ac_config_dir. |
ac_dots=`echo $ac_config_dir|sed -e 's%^\./%%' -e 's%[^/]$%&/%' -e 's%[^/]*/%../%g'` |
|
case "$srcdir" in |
.) # No --srcdir option. We are building in place. |
ac_sub_srcdir=$srcdir ;; |
/*) # Absolute path. |
ac_sub_srcdir=$srcdir/$ac_config_dir ;; |
*) # Relative path. |
ac_sub_srcdir=$ac_dots$srcdir/$ac_config_dir ;; |
esac |
|
# Check for guested configure; otherwise get Cygnus style configure. |
if test -f $ac_sub_srcdir/configure; then |
ac_sub_configure=$ac_sub_srcdir/configure |
elif test -f $ac_sub_srcdir/configure.in; then |
ac_sub_configure=$ac_configure |
else |
echo "configure: warning: no configuration information is in $ac_config_dir" 1>&2 |
ac_sub_configure= |
fi |
|
# The recursion is here. |
if test -n "$ac_sub_configure"; then |
|
# Make the cache file name correct relative to the subdirectory. |
case "$cache_file" in |
/*) ac_sub_cache_file=$cache_file ;; |
*) # Relative path. |
ac_sub_cache_file="$ac_dots$cache_file" ;; |
esac |
case "$ac_given_INSTALL" in |
[/$]*) INSTALL="$ac_given_INSTALL" ;; |
*) INSTALL="$ac_dots$ac_given_INSTALL" ;; |
esac |
|
echo "running ${CONFIG_SHELL-/bin/sh} $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_sub_srcdir" |
# The eval makes quoting arguments work. |
if eval ${CONFIG_SHELL-/bin/sh} $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_sub_srcdir |
then : |
else |
{ echo "configure: error: $ac_sub_configure failed for $ac_config_dir" 1>&2; exit 1; } |
fi |
fi |
|
cd $ac_popdir |
done |
fi |
|
/trunk/ecos-2.0/Makefile.in
0,0 → 1,363
# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am |
|
# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. |
# This Makefile.in is free software; the Free Software Foundation |
# gives unlimited permission to copy and/or distribute it, |
# with or without modifications, as long as this notice is preserved. |
|
# This program is distributed in the hope that it will be useful, |
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without |
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
# PARTICULAR PURPOSE. |
|
#######ECOSHOSTGPLCOPYRIGHTBEGIN#### |
# Copyright (C) 2002 Bart Veer |
# Copyright (C) 1998, 1999, 2000, 2001 Red Hat, Inc. |
# |
# This file is part of the eCos host tools. |
# |
# This program is free software; you can redistribute it and/or modify it |
# under the terms of the GNU General Public License as published by the Free |
# Software Foundation; either version 2 of the License, or (at your option) |
# any later version. |
# |
# This program is distributed in the hope that it will be useful, but WITHOUT |
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
# more details. |
# |
# You should have received a copy of the GNU General Public License along with |
# this program; if not, write to the Free Software Foundation, Inc., |
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
#######ECOSHOSTGPLCOPYRIGHTEND#### |
#######DESCRIPTIONBEGIN#### |
######DESCRIPTIONEND#### |
|
|
SHELL = @SHELL@ |
|
srcdir = @srcdir@ |
top_srcdir = @top_srcdir@ |
VPATH = @srcdir@ |
prefix = @prefix@ |
exec_prefix = @exec_prefix@ |
|
bindir = @bindir@ |
sbindir = @sbindir@ |
libexecdir = @libexecdir@ |
datadir = @datadir@ |
sysconfdir = @sysconfdir@ |
sharedstatedir = @sharedstatedir@ |
localstatedir = @localstatedir@ |
libdir = @libdir@ |
infodir = @infodir@ |
mandir = @mandir@ |
includedir = @includedir@ |
oldincludedir = /usr/include |
|
DESTDIR = |
|
pkgdatadir = $(datadir)/@PACKAGE@ |
pkglibdir = $(libdir)/@PACKAGE@ |
pkgincludedir = $(includedir)/@PACKAGE@ |
|
top_builddir = . |
|
ACLOCAL = @ACLOCAL@ |
AUTOCONF = @AUTOCONF@ |
AUTOMAKE = @AUTOMAKE@ |
AUTOHEADER = @AUTOHEADER@ |
|
INSTALL = @INSTALL@ |
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) |
INSTALL_DATA = @INSTALL_DATA@ |
INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
transform = @program_transform_name@ |
|
NORMAL_INSTALL = : |
PRE_INSTALL = : |
POST_INSTALL = : |
NORMAL_UNINSTALL = : |
PRE_UNINSTALL = : |
POST_UNINSTALL = : |
host_alias = @host_alias@ |
host_triplet = @host@ |
CC = @CC@ |
CXX = @CXX@ |
ECOS_REPOSITORY = @ECOS_REPOSITORY@ |
MAINT = @MAINT@ |
MAKEINFO = @MAKEINFO@ |
MSVC_SRCDIR = @MSVC_SRCDIR@ |
PACKAGE = @PACKAGE@ |
PACKAGE_DIR = @PACKAGE_DIR@ |
PACKAGE_INSTALL = @PACKAGE_INSTALL@ |
PACKAGE_VERSION = @PACKAGE_VERSION@ |
VERSION = @VERSION@ |
ecos_CFLAGS = @ecos_CFLAGS@ |
ecos_CXXFLAGS = @ecos_CXXFLAGS@ |
ecos_INCLUDES = @ecos_INCLUDES@ |
ecos_LDADD = @ecos_LDADD@ |
ecos_LIBS = @ecos_LIBS@ |
ecos_infra_incdir = @ecos_infra_incdir@ |
ecos_infra_libdir = @ecos_infra_libdir@ |
ecos_libcdl_incdir = @ecos_libcdl_incdir@ |
ecos_libcdl_libdir = @ecos_libcdl_libdir@ |
ecos_tk_includes = @ecos_tk_includes@ |
ecos_tk_libs = @ecos_tk_libs@ |
|
AUTOMAKE_OPTIONS = 1.3 foreign |
SUBDIRS = @SUBDIRS@ |
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
mkinstalldirs = $(SHELL) $(top_srcdir)/acsupport/mkinstalldirs |
CONFIG_CLEAN_FILES = |
DIST_COMMON = COPYING ChangeLog Makefile.am Makefile.in acinclude.m4 \ |
aclocal.m4 configure configure.in |
|
|
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) |
|
TAR = gtar |
GZIP_ENV = --best |
all: all-redirect |
.SUFFIXES: |
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) |
cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile |
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) |
cd $(top_builddir) \ |
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status |
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4 |
cd $(srcdir) && $(ACLOCAL) |
|
config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) |
$(SHELL) ./config.status --recheck |
$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) |
cd $(srcdir) && $(AUTOCONF) |
|
# This directory's subdirectories are mostly independent; you can cd |
# into them and run `make' without going through this Makefile. |
# To change the values of `make' variables: instead of editing Makefiles, |
# (1) if the variable is set in `config.status', edit `config.status' |
# (which will cause the Makefiles to be regenerated when you run `make'); |
# (2) otherwise, pass the desired values on the `make' command line. |
|
@SET_MAKE@ |
|
all-recursive install-data-recursive install-exec-recursive \ |
installdirs-recursive install-recursive uninstall-recursive \ |
check-recursive installcheck-recursive info-recursive dvi-recursive: |
@set fnord $(MAKEFLAGS); amf=$$2; \ |
dot_seen=no; \ |
target=`echo $@ | sed s/-recursive//`; \ |
list='$(SUBDIRS)'; for subdir in $$list; do \ |
echo "Making $$target in $$subdir"; \ |
if test "$$subdir" = "."; then \ |
dot_seen=yes; \ |
local_target="$$target-am"; \ |
else \ |
local_target="$$target"; \ |
fi; \ |
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ |
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ |
done; \ |
if test "$$dot_seen" = "no"; then \ |
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ |
fi; test -z "$$fail" |
|
mostlyclean-recursive clean-recursive distclean-recursive \ |
maintainer-clean-recursive: |
@set fnord $(MAKEFLAGS); amf=$$2; \ |
dot_seen=no; \ |
rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ |
rev="$$subdir $$rev"; \ |
test "$$subdir" != "." || dot_seen=yes; \ |
done; \ |
test "$$dot_seen" = "no" && rev=". $$rev"; \ |
target=`echo $@ | sed s/-recursive//`; \ |
for subdir in $$rev; do \ |
echo "Making $$target in $$subdir"; \ |
if test "$$subdir" = "."; then \ |
local_target="$$target-am"; \ |
else \ |
local_target="$$target"; \ |
fi; \ |
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ |
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ |
done && test -z "$$fail" |
tags-recursive: |
list='$(SUBDIRS)'; for subdir in $$list; do \ |
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ |
done |
|
tags: TAGS |
|
ID: $(HEADERS) $(SOURCES) $(LISP) |
list='$(SOURCES) $(HEADERS)'; \ |
unique=`for i in $$list; do echo $$i; done | \ |
awk ' { files[$$0] = 1; } \ |
END { for (i in files) print i; }'`; \ |
here=`pwd` && cd $(srcdir) \ |
&& mkid -f$$here/ID $$unique $(LISP) |
|
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) |
tags=; \ |
here=`pwd`; \ |
list='$(SUBDIRS)'; for subdir in $$list; do \ |
if test "$$subdir" = .; then :; else \ |
test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ |
fi; \ |
done; \ |
list='$(SOURCES) $(HEADERS)'; \ |
unique=`for i in $$list; do echo $$i; done | \ |
awk ' { files[$$0] = 1; } \ |
END { for (i in files) print i; }'`; \ |
test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ |
|| (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) |
|
mostlyclean-tags: |
|
clean-tags: |
|
distclean-tags: |
-rm -f TAGS ID |
|
maintainer-clean-tags: |
|
distdir = $(PACKAGE)-$(VERSION) |
top_distdir = $(distdir) |
|
# This target untars the dist file and tries a VPATH configuration. Then |
# it guarantees that the distribution is self-contained by making another |
# tarfile. |
distcheck: dist |
-rm -rf $(distdir) |
GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz |
mkdir $(distdir)/=build |
mkdir $(distdir)/=inst |
dc_install_base=`cd $(distdir)/=inst && pwd`; \ |
cd $(distdir)/=build \ |
&& ../configure --srcdir=.. --prefix=$$dc_install_base \ |
&& $(MAKE) $(AM_MAKEFLAGS) \ |
&& $(MAKE) $(AM_MAKEFLAGS) dvi \ |
&& $(MAKE) $(AM_MAKEFLAGS) check \ |
&& $(MAKE) $(AM_MAKEFLAGS) install \ |
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \ |
&& $(MAKE) $(AM_MAKEFLAGS) dist |
-rm -rf $(distdir) |
@banner="$(distdir).tar.gz is ready for distribution"; \ |
dashes=`echo "$$banner" | sed s/./=/g`; \ |
echo "$$dashes"; \ |
echo "$$banner"; \ |
echo "$$dashes" |
dist: distdir |
-chmod -R a+r $(distdir) |
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) |
-rm -rf $(distdir) |
dist-all: distdir |
-chmod -R a+r $(distdir) |
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) |
-rm -rf $(distdir) |
distdir: $(DISTFILES) |
-rm -rf $(distdir) |
mkdir $(distdir) |
-chmod 777 $(distdir) |
here=`cd $(top_builddir) && pwd`; \ |
top_distdir=`cd $(distdir) && pwd`; \ |
distdir=`cd $(distdir) && pwd`; \ |
cd $(top_srcdir) \ |
&& $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign Makefile |
@for file in $(DISTFILES); do \ |
d=$(srcdir); \ |
if test -d $$d/$$file; then \ |
cp -pr $$d/$$file $(distdir)/$$file; \ |
else \ |
test -f $(distdir)/$$file \ |
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ |
|| cp -p $$d/$$file $(distdir)/$$file || :; \ |
fi; \ |
done |
for subdir in $(SUBDIRS); do \ |
if test "$$subdir" = .; then :; else \ |
test -d $(distdir)/$$subdir \ |
|| mkdir $(distdir)/$$subdir \ |
|| exit 1; \ |
chmod 777 $(distdir)/$$subdir; \ |
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \ |
|| exit 1; \ |
fi; \ |
done |
info-am: |
info: info-recursive |
dvi-am: |
dvi: dvi-recursive |
check-am: all-am |
check: check-recursive |
installcheck-am: |
installcheck: installcheck-recursive |
install-exec-am: |
install-exec: install-exec-recursive |
|
install-data-am: |
install-data: install-data-recursive |
|
install-am: all-am |
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am |
install: install-recursive |
uninstall-am: |
uninstall: uninstall-recursive |
all-am: Makefile |
all-redirect: all-recursive |
install-strip: |
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install |
installdirs: installdirs-recursive |
installdirs-am: |
|
|
mostlyclean-generic: |
|
clean-generic: |
|
distclean-generic: |
-rm -f Makefile $(CONFIG_CLEAN_FILES) |
-rm -f config.cache config.log stamp-h stamp-h[0-9]* |
|
maintainer-clean-generic: |
mostlyclean-am: mostlyclean-tags mostlyclean-generic |
|
mostlyclean: mostlyclean-recursive |
|
clean-am: clean-tags clean-generic mostlyclean-am |
|
clean: clean-recursive |
|
distclean-am: distclean-tags distclean-generic clean-am |
|
distclean: distclean-recursive |
-rm -f config.status |
|
maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \ |
distclean-am |
@echo "This command is intended for maintainers to use;" |
@echo "it deletes files that may require special tools to rebuild." |
|
maintainer-clean: maintainer-clean-recursive |
-rm -f config.status |
|
.PHONY: install-data-recursive uninstall-data-recursive \ |
install-exec-recursive uninstall-exec-recursive installdirs-recursive \ |
uninstalldirs-recursive all-recursive check-recursive \ |
installcheck-recursive info-recursive dvi-recursive \ |
mostlyclean-recursive distclean-recursive clean-recursive \ |
maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ |
distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ |
dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ |
install-exec install-data-am install-data install-am install \ |
uninstall-am uninstall all-redirect all-am all installdirs-am \ |
installdirs mostlyclean-generic distclean-generic clean-generic \ |
maintainer-clean-generic clean mostlyclean distclean maintainer-clean |
|
|
# Tell versions [3.59,3.63) of GNU make to not export all variables. |
# Otherwise a system limit (for SysV at least) may be exceeded. |
.NOEXPORT: |
/trunk/ecos-2.0/ecos.ecc
0,0 → 1,11795
# eCos saved configuration |
|
# ---- commands -------------------------------------------------------- |
# This section contains information about the savefile format. |
# It should not be edited. Any modifications made to this section |
# may make it impossible for the configuration tools to read |
# the savefile. |
|
cdl_savefile_version 1; |
cdl_savefile_command cdl_savefile_version {}; |
cdl_savefile_command cdl_savefile_command {}; |
cdl_savefile_command cdl_configuration { description hardware template package }; |
cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value }; |
cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value }; |
cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value }; |
cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value }; |
|
# ---- toplevel -------------------------------------------------------- |
# This section defines the toplevel configuration object. The only |
# values that can be changed are the name of the configuration and |
# the description field. It is not possible to modify the target, |
# the template or the set of packages simply by editing the lines |
# below because these changes have wide-ranging effects. Instead |
# the appropriate tools should be used to make such modifications. |
|
cdl_configuration eCos { |
description "" ; |
|
# These fields should not be modified. |
hardware ORP ; |
template default ; |
package -hardware CYGPKG_HAL_OPENRISC current ; |
package -hardware CYGPKG_HAL_OPENRISC_ORP current ; |
package -hardware CYGPKG_DEVS_FLASH_OPENRISC_ORP current ; |
package -hardware CYGPKG_DEVS_FLASH_AMD_AM29XXXXX v2_0 ; |
package -template CYGPKG_HAL v2_0 ; |
package -template CYGPKG_IO v2_0 ; |
package -template CYGPKG_IO_SERIAL v2_0 ; |
package -template CYGPKG_INFRA v2_0 ; |
package -template CYGPKG_KERNEL v2_0 ; |
package -template CYGPKG_MEMALLOC v2_0 ; |
package -template CYGPKG_ISOINFRA v2_0 ; |
package -template CYGPKG_LIBC v2_0 ; |
package -template CYGPKG_LIBC_I18N v2_0 ; |
package -template CYGPKG_LIBC_SETJMP v2_0 ; |
package -template CYGPKG_LIBC_SIGNALS v2_0 ; |
package -template CYGPKG_LIBC_STARTUP v2_0 ; |
package -template CYGPKG_LIBC_STDIO v2_0 ; |
package -template CYGPKG_LIBC_STDLIB v2_0 ; |
package -template CYGPKG_LIBC_STRING v2_0 ; |
package -template CYGPKG_LIBC_TIME v2_0 ; |
package -template CYGPKG_LIBM v2_0 ; |
package -template CYGPKG_IO_WALLCLOCK v2_0 ; |
package -template CYGPKG_ERROR v2_0 ; |
}; |
|
# ---- conflicts ------------------------------------------------------- |
# There are no conflicts. |
|
# ---- contents -------------------------------------------------------- |
# > |
# > |
# Global build options |
# Global build options including control over |
# compiler flags, linker flags and choice of toolchain. |
# |
cdl_component CYGBLD_GLOBAL_OPTIONS { |
# There is no associated value. |
|
# The following properties are affected by this value |
}; |
|
# > |
# Global command prefix |
# This option specifies the command prefix used when |
# invoking the build tools. |
# |
cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value or32-elf |
# value_source default |
# Default value: or32-elf |
}; |
|
# Global compiler flags |
# This option controls the global compiler flags which |
# are used to compile all packages by |
# default. Individual packages may define |
# options which override these global flags. |
# |
cdl_option CYGBLD_GLOBAL_CFLAGS { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" |
# value_source default |
# Default value: "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" |
|
# The following properties are affected by this value |
# option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS |
# Requires: is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") |
# option CYGBLD_INFRA_CFLAGS_PIPE |
# Requires: is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") |
}; |
|
# Global linker flags |
# This option controls the global linker flags. Individual |
# packages may define options which override these global flags. |
# |
cdl_option CYGBLD_GLOBAL_LDFLAGS { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "-msoft-float -g -nostdlib -Wl,--gc-sections -Wl,-static" |
# value_source default |
# Default value: "-msoft-float -g -nostdlib -Wl,--gc-sections -Wl,-static" |
}; |
|
# Build GDB stub ROM image |
# This option enables the building of the GDB stubs for the |
# board. The common HAL controls takes care of most of the |
# build process, but the final conversion from ELF image to |
# binary data is handled by the platform CDL, allowing |
# relocation of the data if necessary. |
# |
cdl_option CYGBLD_BUILD_GDB_STUBS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYG_HAL_STARTUP == "ROM" |
# CYG_HAL_STARTUP == ROM |
# --> 1 |
# Requires: CYGSEM_HAL_ROM_MONITOR |
# CYGSEM_HAL_ROM_MONITOR == 1 |
# --> 1 |
# Requires: CYGBLD_BUILD_COMMON_GDB_STUBS |
# CYGBLD_BUILD_COMMON_GDB_STUBS == 0 |
# --> 0 |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 0 |
# Requires: ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
# CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0 |
# --> 1 |
# Requires: ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT |
# CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1 |
# --> 0 |
# Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT |
# CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 1 |
# --> 0 |
# Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM |
# CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 1 |
# --> 0 |
}; |
|
# Build common GDB stub ROM image |
# Unless a target board has specific requirements to the |
# stub implementation, it can use a simple common stub. |
# This option, which gets enabled by platform HALs as |
# appropriate, controls the building of the common stub. |
# |
cdl_option CYGBLD_BUILD_COMMON_GDB_STUBS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: CYGBLD_BUILD_COMMON_GDB_STUBS |
}; |
|
# < |
# Redboot HAL options |
# This option lists the target's requirements for a valid Redboot |
# configuration. |
# |
cdl_component CYGPKG_REDBOOT_HAL_OPTIONS { |
# This option is not active |
# ActiveIf constraint: CYGPKG_REDBOOT |
# CYGPKG_REDBOOT (unknown) == 0 |
# --> 0 |
|
# There is no associated value. |
}; |
|
# > |
# Build Redboot ROM binary image |
# This option enables the conversion of the Redboot ELF |
# image to a binary image suitable for ROM programming. |
# |
cdl_option CYGBLD_BUILD_REDBOOT_BIN { |
# This option is not active |
# The parent CYGPKG_REDBOOT_HAL_OPTIONS is not active |
# ActiveIf constraint: CYGBLD_BUILD_REDBOOT |
# CYGBLD_BUILD_REDBOOT (unknown) == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Flash memory support for OpenRISC ORP |
# |
cdl_package CYGPKG_DEVS_FLASH_OPENRISC_ORP { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This option is not active |
# ActiveIf constraint: CYGPKG_IO_FLASH |
# CYGPKG_IO_FLASH (unknown) == 0 |
# --> 0 |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 current |
# Requires: CYGPKG_HAL_OPENRISC_ORP |
# CYGPKG_HAL_OPENRISC_ORP == current |
# --> 1 |
# Requires: CYGHWR_DEVS_FLASH_AMD_AM29LV160 |
# CYGHWR_DEVS_FLASH_AMD_AM29LV160 == 0 |
# --> 0 |
}; |
|
# > |
# AMD AM29LV160 driver required |
# |
cdl_interface CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED { |
# Implemented by CYGPKG_DEVS_FLASH_OPENRISC_ORP, inactive, enabled |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_OPENRISC_ORP is not active |
|
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# package CYGPKG_DEVS_FLASH_AMD_AM29XXXXX |
# ActiveIf: CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED |
}; |
|
# < |
# AMD AM29XXXXX FLASH memory support |
# FLASH memory device support for AMD AM29XXXXX |
# |
cdl_package CYGPKG_DEVS_FLASH_AMD_AM29XXXXX { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This option is not active |
# ActiveIf constraint: CYGPKG_IO_FLASH |
# CYGPKG_IO_FLASH (unknown) == 0 |
# --> 0 |
# ActiveIf constraint: CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED |
# CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED == 0 |
# --> 0 |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGINT_DEVS_FLASH_AMD_VARIANTS != 0 |
# CYGINT_DEVS_FLASH_AMD_VARIANTS == 0 |
# --> 0 |
}; |
|
# > |
# Number of included variants |
# |
cdl_interface CYGINT_DEVS_FLASH_AMD_VARIANTS { |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29F040B, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV160, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV320D, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV200, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_ST_M29W200B, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV640, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL322D, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL323D, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL324D, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL640D, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29F800, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV800, inactive, disabled |
# Implemented by CYGHWR_DEVS_FLASH_AMD_TC58FVB800, inactive, disabled |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# package CYGPKG_DEVS_FLASH_AMD_AM29XXXXX |
# Requires: CYGINT_DEVS_FLASH_AMD_VARIANTS != 0 |
}; |
|
# AMD AM29F040B flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AMD29F040B |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29F040B { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29LV160 flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AMD29LV160 |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV160 { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# package CYGPKG_DEVS_FLASH_OPENRISC_ORP |
# Requires: CYGHWR_DEVS_FLASH_AMD_AM29LV160 |
}; |
|
# AMD AM29LV320 flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AMD29LV320 |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV320D { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29LV200 flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AMD29LV200 |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV200 { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# ST M29W200B flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the ST M29W200B part. This |
# memory device is pin- and software compatible with the |
# AMD AM29LV200 device. |
# |
cdl_option CYGHWR_DEVS_FLASH_ST_M29W200B { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29LV640 flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AMD29LV640 |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV640 { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29DL322D flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AM29DL322D |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL322D { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29DL323D flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AM29DL323D |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL323D { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29DL324D flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AM29DL324D |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL324D { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29DL640D flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AM29DL640D |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL640D { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29F800 flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AM29F800 |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29F800 { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# AMD AM29LV800 flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the AM29LV800 |
# part in the family. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV800 { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Toshiba TC58FVB800 flash memory support |
# When this option is enabled, the AMD flash driver will be |
# able to recognize and handle the Toshiba TC58FVB800. |
# |
cdl_option CYGHWR_DEVS_FLASH_AMD_TC58FVB800 { |
# This option is not active |
# The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# < |
# < |
# eCos HAL |
# doc: ref/the-ecos-hardware-abstraction-layer.html |
# The eCos HAL package provide a porting layer for |
# higher-level parts of the system such as the kernel and the |
# C library. Each installation should have HAL packages for |
# one or more architectures, and for each architecture there |
# may be one or more supported platforms. It is necessary to |
# select one target architecture and one platform for that |
# architecture. There are also a number of configuration |
# options that are common to all HAL packages. |
# |
cdl_package CYGPKG_HAL { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_INFRA |
# CYGPKG_INFRA == v2_0 |
# --> 1 |
|
# The following properties are affected by this value |
}; |
|
# > |
# Platform-independent HAL options |
# A number of configuration options are common to most or all |
# HAL packages, for example options controlling how much state |
# should be saved during a context switch. The implementations |
# of these options will vary from architecture to architecture. |
# |
cdl_component CYGPKG_HAL_COMMON { |
# There is no associated value. |
}; |
|
# > |
# Provide eCos kernel support |
# The HAL can be configured to either support the full eCos |
# kernel, or to support only very simple applications which do |
# not require a full kernel. If kernel support is not required |
# then some of the startup, exception, and interrupt handling |
# code can be eliminated. |
# |
cdl_option CYGFUN_HAL_COMMON_KERNEL_SUPPORT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
# Requires: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
}; |
|
# HAL exception support |
# When a processor exception occurs, for example an attempt to |
# execute an illegal instruction or to perform a divide by |
# zero, this exception may be handled in a number of different |
# ways. If the target system has gdb support then typically |
# the exception will be handled by gdb code. Otherwise if the |
# HAL exception support is enabled then the HAL will invoke a |
# routine deliver_exception(). Typically this routine will be |
# provided by the eCos kernel, but it is possible for |
# application code to provide its own implementation. If the |
# HAL exception support is not enabled and a processor |
# exception occurs then the behaviour of the system is |
# undefined. |
# |
cdl_option CYGPKG_HAL_EXCEPTIONS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGPKG_KERNEL_EXCEPTIONS |
# CYGPKG_KERNEL_EXCEPTIONS == 1 |
# --> 1 |
# Requires: CYGPKG_KERNEL_EXCEPTIONS |
# CYGPKG_KERNEL_EXCEPTIONS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# component CYGPKG_KERNEL_EXCEPTIONS |
# Requires: CYGPKG_HAL_EXCEPTIONS |
}; |
|
# Stop calling constructors early |
# This option supports environments where some constructors |
# must be run in the context of a thread rather than at |
# simple system startup time. A boolean flag named |
# cyg_hal_stop_constructors is set to 1 when constructors |
# should no longer be invoked. It is up to some other |
# package to deal with the rest of the constructors. |
# In the current version this is only possible with the |
# C library. |
# |
cdl_option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS |
# CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS |
# Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG |
}; |
|
# HAL uses the MMU and allows for CDL manipulation of it's use |
# |
cdl_interface CYGINT_HAL_SUPPORTS_MMU_TABLES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_INSTALL_MMU_TABLES |
# ActiveIf: CYGINT_HAL_SUPPORTS_MMU_TABLES |
}; |
|
# Install MMU tables. |
# This option controls whether this application installs |
# its own Memory Management Unit (MMU) tables, or relies on the |
# existing environment to run. |
# |
cdl_option CYGSEM_HAL_INSTALL_MMU_TABLES { |
# This option is not active |
# ActiveIf constraint: CYGINT_HAL_SUPPORTS_MMU_TABLES |
# CYGINT_HAL_SUPPORTS_MMU_TABLES == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYG_HAL_STARTUP != "RAM" |
# CYG_HAL_STARTUP == ROM |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_STATIC_MMU_TABLES |
# Requires: CYGSEM_HAL_INSTALL_MMU_TABLES |
}; |
|
# Use static MMU tables. |
# This option defines an environment where any Memory |
# Management Unit (MMU) tables are constant. Normally used by ROM |
# based environments, this provides a way to save RAM usage which |
# would otherwise be required for these tables. |
# |
cdl_option CYGSEM_HAL_STATIC_MMU_TABLES { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGSEM_HAL_INSTALL_MMU_TABLES |
# CYGSEM_HAL_INSTALL_MMU_TABLES == 0 |
# --> 0 |
}; |
|
# Route diagnostic output to debug channel |
# If not inheriting the console setup from the ROM monitor, |
# it is possible to redirect diagnostic output to the debug |
# channel by enabling this option. Depending on the debugger |
# used it may also be necessary to select a mangler for the |
# output to be displayed by the debugger. |
# |
cdl_component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN { |
# ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE |
# CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0 |
# --> 1 |
# ActiveIf constraint: CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG |
# CYGPKG_HAL_ARM (unknown) == 0 |
# CYGPKG_HAL_POWERPC_MPC8xx (unknown) == 0 |
# CYGPKG_HAL_V85X_V850 (unknown) == 0 |
# CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS || CYG_HAL_STARTUP == "RAM") ? 1 : 0 |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# CYG_HAL_STARTUP == ROM |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE |
# Calculated: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN |
}; |
|
# > |
# Mangler used on diag output |
# It is sometimes necessary to mangle (encode) the |
# diag ASCII text output in order for it to show up at the |
# other end. In particular, GDB may silently ignore raw |
# ASCII text. |
# |
cdl_option CYGSEM_HAL_DIAG_MANGLER { |
# This option is not active |
# The parent CYGDBG_HAL_DIAG_TO_DEBUG_CHAN is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value GDB |
# value_source default |
# Default value: GDB |
# Legal values: "GDB" "None" |
}; |
|
# < |
# < |
# HAL interrupt handling |
# A number of configuration options related to interrupt |
# handling are common to most or all HAL packages, even though |
# the implementations will vary from architecture to |
# architecture. |
# |
cdl_component CYGPKG_HAL_COMMON_INTERRUPTS { |
# There is no associated value. |
}; |
|
# > |
# Use separate stack for interrupts |
# When an interrupt occurs this interrupt can be handled either |
# on the current stack or on a separate stack maintained by the |
# HAL. Using a separate stack requires a small number of extra |
# instructions in the interrupt handling code, but it has the |
# advantage that it is no longer necessary to allow extra space |
# in every thread stack for the interrupt handlers. The amount |
# of extra space required depends on the interrupt handlers |
# that are being used. |
# |
cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Interrupt stack size |
# This configuration option specifies the stack size in bytes |
# for the interrupt stack. Typically this should be a multiple |
# of 16, but the exact requirements will vary from architecture |
# to architecture. The interrupt stack serves two separate |
# purposes. It is used as the stack during system |
# initialization. In addition, if the interrupt system is |
# configured to use a separate stack then all interrupts will |
# be processed on this stack. The exact memory requirements |
# will vary from application to application, and will depend |
# heavily on whether or not other interrupt-related options, |
# for example nested interrupts, are enabled. On most targets, |
# in a configuration with no kernel this stack will also be |
# the stack used to invoke the application, and must obviously |
# be appropriately large in that case. |
# |
cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 4096 |
# value_source default |
# Default value: CYGPKG_KERNEL ? 4096 : 32768 |
# CYGPKG_KERNEL == v2_0 |
# --> 4096 |
# Legal values: 1024 to 1048576 |
}; |
|
# Allow nested interrupts |
# When an interrupt occurs the HAL interrupt handling code can |
# either leave interrupts disabled for the duration of the |
# interrupt handling code, or by doing some extra work it can |
# reenable interrupts before invoking the interrupt handler and |
# thus allow nested interrupts to happen. If all the interrupt |
# handlers being used are small and do not involve any loops |
# then it is usually better to disallow nested interrupts. |
# However if any of the interrupt handlers are more complicated |
# than nested interrupts will usually be required. |
# |
cdl_option CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Save minimum context on interrupt |
# The HAL interrupt handling code can exploit the calling conventions |
# defined for a given architecture to reduce the amount of state |
# that has to be saved. Generally this improves performance and |
# reduces code size. However it can make source-level debugging |
# more difficult. |
# |
cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT |
}; |
|
# Chain all interrupts together |
# Interrupts can be attached to vectors either singly, or be |
# chained together. The latter is necessary if there is no way |
# of discovering which device has interrupted without |
# inspecting the device itself. It can also reduce the amount |
# of RAM needed for interrupt decoding tables and code. |
# |
cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGIMP_KERNEL_INTERRUPTS_CHAIN |
# Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN |
}; |
|
# Ignore spurious [fleeting] interrupts |
# On some hardware, interrupt sources may not be de-bounced or |
# de-glitched. Rather than try to handle these interrupts (no |
# handling may be possible), this option allows the HAL to simply |
# ignore them. In most cases, if the interrupt is real it will |
# reoccur in a detectable form. |
# |
cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_IGNORE_SPURIOUS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# < |
# HAL context switch support |
# A number of configuration options related to thread contexts |
# are common to most or all HAL packages, even though the |
# implementations will vary from architecture to architecture. |
# |
cdl_component CYGPKG_HAL_COMMON_CONTEXT { |
# There is no associated value. |
|
# The following properties are affected by this value |
}; |
|
# > |
# Use minimum thread context |
# The thread context switch code can exploit the calling |
# conventions defined for a given architecture to reduce the |
# amount of state that has to be saved during a context |
# switch. Generally this improves performance and reduces |
# code size. However it can make source-level debugging more |
# difficult. |
# |
cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM |
}; |
|
# < |
# Explicit control over cache behaviour |
# These options let the default behaviour of the caches |
# be easily configurable. |
# |
cdl_component CYGPKG_HAL_CACHE_CONTROL { |
# There is no associated value. |
}; |
|
# > |
# Enable DATA cache on startup |
# Enabling this option will cause the data cache to be enabled |
# as soon as practicable when eCos starts up. One would choose |
# to disable this if the data cache cannot safely be turned on, |
# such as a case where the cache(s) require additional platform |
# specific setup. |
# |
cdl_component CYGSEM_HAL_ENABLE_DCACHE_ON_STARTUP { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# DATA cache mode on startup |
# This option controls the mode the cache will be set to |
# when enabled on startup. |
# |
cdl_option CYGSEM_HAL_DCACHE_STARTUP_MODE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value COPYBACK |
# value_source default |
# Default value: COPYBACK |
# Legal values: "COPYBACK" "WRITETHRU" |
}; |
|
# < |
# Enable INSTRUCTION cache on startup |
# Enabling this option will cause the instruction cache to be enabled |
# as soon as practicable when eCos starts up. One would choose |
# to disable this if the instruction cache cannot safely be turned on, |
# such as a case where the cache(s) require additional platform |
# specific setup. |
# |
cdl_option CYGSEM_HAL_ENABLE_ICACHE_ON_STARTUP { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Source-level debugging support |
# If the source level debugger gdb is to be used for debugging |
# application code then it may be necessary to configure in support |
# for this in the HAL. |
# |
cdl_component CYGPKG_HAL_DEBUG { |
# There is no associated value. |
}; |
|
# > |
# Support for GDB stubs |
# The HAL implements GDB stubs for the target. |
# |
cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS { |
# Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
|
# The following properties are affected by this value |
# option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS |
}; |
|
# Include GDB stubs in HAL |
# This option causes a set of GDB stubs to be included into the |
# system. On some target systems the GDB support will be |
# provided by other means, for example by a ROM monitor. On |
# other targets, especially when building a ROM-booting system, |
# the necessary support has to go into the target library |
# itself. When GDB stubs are include in a configuration, HAL |
# serial drivers must also be included. |
# |
cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS { |
# ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS |
# CYGINT_HAL_DEBUG_GDB_STUBS == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: ! CYGSEM_HAL_USE_ROM_MONITOR |
# CYGSEM_HAL_USE_ROM_MONITOR == 0 |
# --> 1 |
# Requires: !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1 |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN |
# DefaultValue: (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS || CYG_HAL_STARTUP == "RAM") ? 1 : 0 |
# option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
# DefaultValue: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT |
# ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT |
# DefaultValue: !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGBLD_BUILD_COMMON_GDB_STUBS |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGPKG_HAL_GDB_FILEIO |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
}; |
|
# Support for external break support in GDB stubs |
# The HAL implements external break (or asynchronous interrupt) |
# in the GDB stubs for the target. |
# |
cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS_BREAK { |
# Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
|
# The following properties are affected by this value |
# option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
# ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK |
}; |
|
# Include GDB external break support for stubs |
# This option causes the GDB stub to add a serial interrupt handler |
# which will listen for GDB break packets. This lets you stop the |
# target asynchronously when using GDB, usually by hitting Control+C |
# or pressing the STOP button. This option differs from |
# CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT in that it is used when |
# GDB stubs are present. |
# |
cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT { |
# ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK |
# CYGINT_HAL_DEBUG_GDB_STUBS_BREAK == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 0 |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT |
# Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
}; |
|
# Platform does not support CTRLC |
# |
cdl_interface CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT |
# ActiveIf: CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 |
}; |
|
# Include GDB external break support when no stubs |
# This option adds an interrupt handler for the GDB serial line |
# which will listen for GDB break packets. This lets you stop the |
# target asynchronously when using GDB, usually by hitting Control+C |
# or pressing the STOP button. This option differs from |
# CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT in that it is used when the GDB |
# stubs are NOT present. |
# |
cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT { |
# This option is not active |
# ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGSEM_HAL_USE_ROM_MONITOR == 0 |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 0 |
# ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 |
# CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 1 |
# Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
# CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0 |
# --> 1 |
}; |
|
# Include GDB multi-threading debug support |
# This option enables some extra HAL code which is needed |
# to support multi-threaded source level debugging. |
# |
cdl_option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT { |
# ActiveIf constraint: CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT |
# CYGSEM_HAL_ROM_MONITOR == 1 |
# CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT |
# option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT |
# Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT |
}; |
|
# Number of times to retry sending a $O packet |
# This option controls the number of attempts that eCos programs |
# will make to send a $O packet to a host GDB process. If it is |
# set non-zero, then the target process will attempt to resend the |
# $O packet data up to this number of retries. Caution: use of |
# this option is not recommended as it can thoroughly confuse the |
# host GDB process. |
# |
cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Timeout period for GDB packets |
# This option controls the time (in milliseconds) that eCos programs |
# will wait for a response when sending packets to a host GDB process. |
# If this time elapses, then the packet will be resent, up to some |
# maximum number of times (CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES). |
# |
cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_TIMEOUT { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 500 |
# value_source default |
# Default value: 500 |
}; |
|
# < |
# ROM monitor support |
# Support for ROM monitors can be built in to your application. |
# It may also be relevant to build your application as a ROM monitor |
# itself. Such options are contained here if relevant for your chosen |
# platform. The options and ROM monitors available to choose are |
# platform-dependent. |
# |
cdl_component CYGPKG_HAL_ROM_MONITOR { |
# There is no associated value. |
|
# The following properties are affected by this value |
}; |
|
# > |
# Target has virtual vector support |
# |
cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT { |
# Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
|
# The following properties are affected by this value |
# component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT |
# ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT |
}; |
|
# Target supports baud rate control via vectors |
# Whether this target supports the __COMMCTL_GETBAUD |
# and __COMMCTL_SETBAUD virtual vector comm control operations. |
# |
cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT { |
# Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
|
# The following properties are affected by this value |
}; |
|
# Enable use of virtual vector calling interface |
# Virtual vector support allows the HAL to let the ROM |
# monitor handle certain operations. The virtual vector table |
# defines a calling interface between applications running in |
# RAM and the ROM monitor. |
# |
cdl_component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT { |
# ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT |
# CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT == 1 |
# --> 1 |
|
# Calculated value: 1 |
# Flavor: bool |
# Current value: 1 |
}; |
|
# > |
# Inherit console settings from ROM monitor |
# When this option is set, the application will inherit |
# the console as set up by the ROM monitor. This means |
# that the application will use whatever channel and |
# mangling style was used by the ROM monitor when |
# the application was launched. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE { |
# This option is not active |
# ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR |
# CYGSEM_HAL_USE_ROM_MONITOR == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1 |
# --> 0 |
|
# The following properties are affected by this value |
# component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN |
# ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE |
# option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE |
# Calculated: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN |
}; |
|
# Debug channel is configurable |
# This option is a configuration hint - it is enabled |
# when the HAL initialization code will make use |
# of the debug channel configuration option. |
# |
cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE { |
# Calculated value: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1 |
# Flavor: bool |
# Current value: 1 |
|
# The following properties are affected by this value |
# option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL |
# ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE |
}; |
|
# Console channel is configurable |
# This option is a configuration hint - it is enabled |
# when the HAL initialization code will make use |
# of the console channel configuration option. |
# |
cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE { |
# Calculated value: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN |
# CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0 |
# CYGDBG_HAL_DIAG_TO_DEBUG_CHAN == 0 |
# Flavor: bool |
# Current value: 1 |
|
# The following properties are affected by this value |
# option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL |
# ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE |
}; |
|
# Initialize whole of virtual vector table |
# This option will cause the whole of the virtual |
# vector table to be initialized with dummy values on |
# startup. When this option is enabled, all the |
# options below must also be enabled - or the |
# table would be empty when the application |
# launches. |
# On targets where older ROM monitors without |
# virtual vector support may still be in use, it is |
# necessary for RAM applictions to initialize the |
# table (since all HAL diagnostics and debug IO |
# happens via the table). |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR |
# CYG_HAL_STARTUP == ROM |
# CYGSEM_HAL_USE_ROM_MONITOR == 0 |
# --> 1 |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET == 1 |
# --> 1 |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US == 1 |
# --> 1 |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE == 1 |
# --> 1 |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA == 1 |
# --> 1 |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
}; |
|
# Claim virtual vector table entries by default |
# By default most virtual vectors will be claimed by |
# RAM startup configurations, meaning that the RAM |
# application will provide the services. The |
# exception is COMMS support (HAL |
# diagnostics/debugging IO) which is left in the |
# control of the ROM monitor. |
# The reasoning behind this is to get as much of the |
# code exercised during regular development so it |
# is known to be working the few times a new ROM |
# monitor or a ROM production configuration is used |
# - COMMS are excluded only by necessity in order to |
# avoid breaking an existing debugger connections |
# (there may be ways around this). |
# For production RAM configurations this option can |
# be switched off, causing the appliction to rely on |
# the ROM monitor for these services, thus |
# saving some space. |
# Individual vectors may also be left unclaimed, |
# controlled by the below options (meaning that the |
# associated service provided by the ROM monitor |
# will be used). |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT { |
# This option is not active |
# ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA |
# DefaultValue: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
}; |
|
# Claim reset virtual vectors |
# This option will cause the reset and kill_by_reset |
# virtual vectors to be claimed. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1 |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET |
}; |
|
# Claim version virtual vectors |
# This option will cause the version |
# virtual vectors to be claimed. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1 |
# --> 1 |
}; |
|
# Claim delay_us virtual vector |
# This option will cause the delay_us |
# virtual vector to be claimed. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1 |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US |
}; |
|
# Claim cache virtual vectors |
# This option will cause the cache virtual vectors |
# to be claimed. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1 |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE |
}; |
|
# Claim data virtual vectors |
# This option will cause the data virtual vectors |
# to be claimed. At present there is only one, used |
# by the RedBoot ethernet driver to share diag output. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT |
# CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1 |
# CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA |
}; |
|
# Claim comms virtual vectors |
# This option will cause the communication tables |
# that are part of the virtual vectors mechanism to |
# be claimed. Note that doing this may cause an |
# existing ROM monitor communication connection to |
# be closed. For this reason, the option is disabled |
# per default for normal application |
# configurations. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1 |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# Requires: !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE |
# DefaultValue: !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE |
# Calculated: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
}; |
|
# Do diagnostic IO via virtual vector table |
# All HAL IO happens via the virtual vector table / comm |
# tables when those tables are supported by the HAL. |
# If so desired, the low-level IO functions can |
# still be provided by the RAM application by |
# enabling the CLAIM_COMMS option. |
# |
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG { |
# Calculated value: 1 |
# Flavor: bool |
# Current value: 1 |
|
# The following properties are affected by this value |
# component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN |
# ActiveIf: CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG |
# option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# Requires: !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS |
}; |
|
# < |
# Work with a ROM monitor |
# Support can be enabled for three different varieties of ROM monitor. |
# This support changes various eCos semantics such as the encoding |
# of diagnostic output, or the overriding of hardware interrupt |
# vectors. |
# Firstly there is "Generic" support which prevents the HAL |
# from overriding the hardware vectors that it does not use, to |
# instead allow an installed ROM monitor to handle them. This is |
# the most basic support which is likely to be common to most |
# implementations of ROM monitor. |
# "CygMon" provides support for the Cygnus ROM Monitor. |
# And finally, "GDB_stubs" provides support when GDB stubs are |
# included in the ROM monitor or boot ROM. |
# |
cdl_option CYGSEM_HAL_USE_ROM_MONITOR { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: CYG_HAL_STARTUP == "RAM" ? "CygMon" : 0 |
# CYG_HAL_STARTUP == ROM |
# --> 0 0 |
# Legal values: "Generic" "CygMon" "GDB_stubs" |
# Requires: CYG_HAL_STARTUP == "RAM" |
# CYG_HAL_STARTUP == ROM |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# Requires: ! CYGSEM_HAL_USE_ROM_MONITOR |
# option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT |
# ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE |
# ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# DefaultValue: CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR |
}; |
|
# Behave as a ROM monitor |
# Enable this option if this program is to be used as a ROM monitor, |
# i.e. applications will be loaded into RAM on the board, and this |
# ROM monitor may process exceptions or interrupts generated from the |
# application. This enables features such as utilizing a separate |
# interrupt stack when exceptions are generated. |
# |
cdl_option CYGSEM_HAL_ROM_MONITOR { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYG_HAL_STARTUP == "ROM" |
# CYG_HAL_STARTUP == ROM |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: CYGSEM_HAL_ROM_MONITOR |
# option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT |
# ActiveIf: CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT |
}; |
|
# < |
# Platform defined I/O channels. |
# Platforms which provide additional I/O channels can implement |
# this interface, indicating that the function plf_if_init() |
# needs to be called. |
# |
cdl_interface CYGINT_HAL_PLF_IF_INIT { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Platform IDE I/O support. |
# Platforms which provide IDE controllers can implement |
# this interface, indicating that IDE I/O macros are |
# available. |
# |
cdl_interface CYGINT_HAL_PLF_IF_IDE { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# File I/O operations via GDB |
# This option enables support for various file I/O |
# operations using the GDB remote protocol to communicate |
# with GDB. The operations are then performed on the |
# debugging host by proxy. These operations are only |
# currently available by using a system call interface |
# to RedBoot. This may change in the future. |
# |
cdl_option CYGPKG_HAL_GDB_FILEIO { |
# This option is not active |
# ActiveIf constraint: CYGSEM_REDBOOT_BSP_SYSCALLS |
# CYGSEM_REDBOOT_BSP_SYSCALLS (unknown) == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
# CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 |
# --> 0 |
}; |
|
# Build Compiler sanity checking tests |
# Enabling this option causes compiler tests to be built. |
# |
cdl_option CYGPKG_HAL_BUILD_COMPILER_TESTS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# component CYGPKG_HAL_TESTS |
# Calculated: "tests/context tests/basic" |
# . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "") |
# . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "") |
# . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ? " tests/intr" : "") |
}; |
|
# Common HAL tests |
# This option specifies the set of tests for the common HAL. |
# |
cdl_component CYGPKG_HAL_TESTS { |
# Calculated value: "tests/context tests/basic" |
# . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "") |
# . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "") |
# . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ? " tests/intr" : "") |
# CYGINT_HAL_TESTS_NO_CACHES == 0 |
# CYGPKG_HAL_BUILD_COMPILER_TESTS == 0 |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# Flavor: data |
# Current_value: tests/context tests/basic tests/cache |
}; |
|
# > |
# Interface for cache presence |
# Some architectures and/or platforms do not have caches. By |
# implementing this interface, these can disable the various |
# cache-related tests. |
# |
cdl_interface CYGINT_HAL_TESTS_NO_CACHES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
|
# The following properties are affected by this value |
# component CYGPKG_HAL_TESTS |
# Calculated: "tests/context tests/basic" |
# . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "") |
# . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "") |
# . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ? " tests/intr" : "") |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
}; |
|
# < |
# OpenRISC architecture |
# The OpenRISC architecture HAL package provides generic support |
# for this processor architecture. It is also necessary to |
# select a specific target platform HAL package. |
# |
cdl_package CYGPKG_HAL_OPENRISC { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 current |
|
# The following properties are affected by this value |
}; |
|
# > |
# Linker script |
# |
cdl_option CYGBLD_LINKER_SCRIPT { |
# Calculated value: "src/openrisc.ld" |
# Flavor: data |
# Current_value: src/openrisc.ld |
}; |
|
# CPU frequency |
# This option contains the frequency of the CPU in MegaHertz. |
# Choose the frequency to match the processor you have. This |
# may affect thing like serial device, interval clock and |
# memory access speed settings. |
# |
cdl_option CYGHWR_HAL_OPENRISC_CPU_FREQ { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 104 |
# value_source default |
# Default value: 104 |
# Legal values: 0 to 1000000 |
|
# The following properties are affected by this value |
# option CYGNUM_HAL_RTC_PERIOD |
# DefaultValue: CYGHWR_HAL_OPENRISC_CPU_FREQ * 1000000 / CYGNUM_HAL_RTC_DENOMINATOR |
}; |
|
# OpenRISC Reference Platform |
# The ORP HAL package should be used when targetting the |
# OpenRISC Reference Platform. |
# |
cdl_package CYGPKG_HAL_OPENRISC_ORP { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 current |
|
# The following properties are affected by this value |
# package CYGPKG_DEVS_FLASH_OPENRISC_ORP |
# Requires: CYGPKG_HAL_OPENRISC_ORP |
}; |
|
# > |
# Startup type |
# Selects whether code initially runs from ROM or RAM. In the case of ROM startup, |
# it's possible for the code to be copied into RAM and executed there. |
# |
cdl_component CYG_HAL_STARTUP { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value ROM |
# value_source default |
# Default value: ROM |
# Legal values: "RAM" "ROM" |
|
# The following properties are affected by this value |
# option CYGBLD_BUILD_GDB_STUBS |
# Requires: CYG_HAL_STARTUP == "ROM" |
# component CYGHWR_MEMORY_LAYOUT |
# Calculated: CYG_HAL_STARTUP == "RAM" ? "openrisc_orp_ram" : "openrisc_orp_rom" |
# option CYGHWR_MEMORY_LAYOUT_LDI |
# Calculated: CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_openrisc_orp_ram.ldi>" : "<pkgconf/mlt_openrisc_orp_rom.ldi>" |
# option CYGHWR_MEMORY_LAYOUT_H |
# Calculated: CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_openrisc_orp_ram.h>" : "<pkgconf/mlt_openrisc_orp_rom.h>" |
# option CYGSEM_HAL_USE_ROM_MONITOR |
# DefaultValue: CYG_HAL_STARTUP == "RAM" ? "CygMon" : 0 |
# option CYGSEM_HAL_USE_ROM_MONITOR |
# Requires: CYG_HAL_STARTUP == "RAM" |
# option CYGSEM_HAL_ROM_MONITOR |
# Requires: CYG_HAL_STARTUP == "ROM" |
# option CYGSEM_HAL_INSTALL_MMU_TABLES |
# DefaultValue: CYG_HAL_STARTUP != "RAM" |
# component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN |
# DefaultValue: (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS || CYG_HAL_STARTUP == "RAM") ? 1 : 0 |
# option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE |
# DefaultValue: CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR |
}; |
|
# Diagnostic serial port baud rate |
# This option selects the baud rate used for the diagnostic console. |
# Note: this should match the value chosen for the GDB port if the |
# diagnostic and GDB port are the same. |
# Note: very high baud rates are useful during simulation. |
# |
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 115200 |
# value_source default |
# Default value: 115200 |
# Legal values: 9600 19200 38400 57600 115200 230400 460800 921600 |
}; |
|
# GDB serial port baud rate |
# This option controls the baud rate used for the GDB connection. |
# Note: very high baud rates are useful during simulation. |
# |
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 115200 |
# value_source default |
# Default value: 115200 |
# Legal values: 9600 19200 38400 57600 115200 230400 460800 921600 |
}; |
|
# Real-time clock constants. |
# |
cdl_component CYGNUM_HAL_RTC_CONSTANTS { |
# There is no associated value. |
}; |
|
# > |
# Real-time clock numerator |
# |
cdl_option CYGNUM_HAL_RTC_NUMERATOR { |
# Calculated value: 1000000000 |
# Flavor: data |
# Current_value: 1000000000 |
}; |
|
# Real-time clock denominator |
# |
cdl_option CYGNUM_HAL_RTC_DENOMINATOR { |
# Calculated value: 100 |
# Flavor: data |
# Current_value: 100 |
|
# The following properties are affected by this value |
# option CYGNUM_HAL_RTC_PERIOD |
# DefaultValue: CYGHWR_HAL_OPENRISC_CPU_FREQ * 1000000 / CYGNUM_HAL_RTC_DENOMINATOR |
}; |
|
# Real-time clock period |
# The tick timer facility is used |
# to drive the eCos kernel RTC. The count register |
# increments at the CPU clock speed. By default, 100 Hz |
# |
cdl_option CYGNUM_HAL_RTC_PERIOD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 1040000 |
# value_source default |
# Default value: CYGHWR_HAL_OPENRISC_CPU_FREQ * 1000000 / CYGNUM_HAL_RTC_DENOMINATOR |
# CYGHWR_HAL_OPENRISC_CPU_FREQ == 104 |
# CYGNUM_HAL_RTC_DENOMINATOR == 100 |
# --> 1040000 |
}; |
|
# < |
# Number of breakpoints supported by the HAL. |
# This option determines the number of breakpoints supported by the HAL. |
# |
cdl_option CYGNUM_HAL_BREAKPOINT_LIST_SIZE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 25 |
# value_source default |
# Default value: 25 |
}; |
|
# Number of communication channels on the board |
# |
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL |
# LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 |
# option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL |
# LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 |
}; |
|
# Debug serial port |
# The ORP platform has at least one serial port, but it can potentially have several. |
# This option chooses which port will be used to connect to a host |
# running GDB. |
# |
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL { |
# ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE |
# CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE == 1 |
# --> 1 |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 |
# CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 1 |
}; |
|
# Diagnostic serial port |
# The ORP platform has at least one serial port, but it can potentially have several. |
# This option chooses which port will be used for diagnostic output. |
# |
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL { |
# ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE |
# CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE == 1 |
# --> 1 |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 |
# CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 1 |
}; |
|
# Memory layout |
# |
cdl_component CYGHWR_MEMORY_LAYOUT { |
# Calculated value: CYG_HAL_STARTUP == "RAM" ? "openrisc_orp_ram" : "openrisc_orp_rom" |
# CYG_HAL_STARTUP == ROM |
# Flavor: data |
# Current_value: openrisc_orp_rom |
}; |
|
# > |
# Memory layout linker script fragment |
# |
cdl_option CYGHWR_MEMORY_LAYOUT_LDI { |
# Calculated value: CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_openrisc_orp_ram.ldi>" : "<pkgconf/mlt_openrisc_orp_rom.ldi>" |
# CYG_HAL_STARTUP == ROM |
# Flavor: data |
# Current_value: <pkgconf/mlt_openrisc_orp_rom.ldi> |
}; |
|
# Memory layout header file |
# |
cdl_option CYGHWR_MEMORY_LAYOUT_H { |
# Calculated value: CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_openrisc_orp_ram.h>" : "<pkgconf/mlt_openrisc_orp_rom.h>" |
# CYG_HAL_STARTUP == ROM |
# Flavor: data |
# Current_value: <pkgconf/mlt_openrisc_orp_rom.h> |
}; |
|
# < |
# < |
# < |
# < |
# I/O sub-system |
# doc: ref/io.html |
# The eCos system is supplied with a number of different |
# device drivers. This option enables the basic I/O system |
# support which is the basis for all drivers. |
# |
cdl_package CYGPKG_IO { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_ERROR |
# CYGPKG_ERROR == v2_0 |
# --> 1 |
|
# The following properties are affected by this value |
# package CYGPKG_IO_SERIAL |
# ActiveIf: CYGPKG_IO |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGPKG_IO |
}; |
|
# > |
# Debug I/O sub-system |
# This option enables verbose messages to be displayed on the |
# system 'diag' device during I/O system initialization. |
# |
cdl_option CYGDBG_IO_INIT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Basic support for file based I/O |
# This option control support for simple file I/O primitives. It is only |
# present if the FILEIO package is not included. |
# |
cdl_component CYGPKG_IO_FILE_SUPPORT { |
# ActiveIf constraint: !CYGPKG_IO_FILEIO |
# CYGPKG_IO_FILEIO (unknown) == 0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# Number of open files |
# This option controls the number of open files. |
# |
cdl_option CYGPKG_IO_NFILE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 16 |
# value_source default |
# Default value: 16 |
}; |
|
# < |
# < |
# Serial device drivers |
# doc: ref/io.html |
# This option enables drivers for basic I/O services on |
# serial devices. |
# |
cdl_package CYGPKG_IO_SERIAL { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# ActiveIf constraint: CYGPKG_IO |
# CYGPKG_IO == v2_0 |
# --> 1 |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_ERROR |
# CYGPKG_ERROR == v2_0 |
# --> 1 |
}; |
|
# > |
# Support non-blocking read and write calls |
# This option enables extra code in the generic serial driver |
# which allows clients to switch read() and write() call |
# semantics from blocking to non-blocking. |
# |
cdl_option CYGOPT_IO_SERIAL_SUPPORT_NONBLOCKING { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Driver requires block transfer callback functions |
# Some low-level drivers can be optimized to transfer blocks |
# of data instead of a single character at a time. These usually |
# rely on a hardware FIFO of some sort. |
# |
cdl_interface CYGINT_IO_SERIAL_BLOCK_TRANSFER { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Serial driver supports line status |
# |
cdl_interface CYGINT_IO_SERIAL_LINE_STATUS_HW { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS |
# Requires: CYGINT_IO_SERIAL_LINE_STATUS_HW > 0 |
# option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS |
# DefaultValue: 0 != CYGINT_IO_SERIAL_LINE_STATUS_HW |
}; |
|
# Support line status callbacks |
# This option indicates that if the serial driver supports it, |
# serial line status and modem status information should be |
# propagated to higher layers via callbacks. |
# |
cdl_option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 != CYGINT_IO_SERIAL_LINE_STATUS_HW |
# CYGINT_IO_SERIAL_LINE_STATUS_HW == 0 |
# --> 0 |
# Requires: CYGINT_IO_SERIAL_LINE_STATUS_HW > 0 |
# CYGINT_IO_SERIAL_LINE_STATUS_HW == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW |
# Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS |
# option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW |
# DefaultValue: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ? CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 |
}; |
|
# Flow control |
# This component contains options related to flow control. |
# |
cdl_component CYGPKG_IO_SERIAL_FLOW_CONTROL { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW) |
# CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE == 0 |
# CYGOPT_IO_SERIAL_FLOW_CONTROL_HW == 0 |
# --> 0 |
}; |
|
# > |
# Software flow control |
# This component enables support of software flow control. |
# |
cdl_component CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# component CYGPKG_IO_SERIAL_FLOW_CONTROL |
# Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW) |
}; |
|
# > |
# Start character |
# This option specifies the ascii character used to |
# indicate that transmission should start. |
# |
cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XON_CHAR { |
# This option is not active |
# The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 17 |
# value_source default |
# Default value: 17 |
# Legal values: 0 to 255 |
}; |
|
# Stop character |
# This option specifies the ascii character used to |
# indicate that transmission should stop. |
# |
cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XOFF_CHAR { |
# This option is not active |
# The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 19 |
# value_source default |
# Default value: 19 |
# Legal values: 0 to 255 |
}; |
|
# < |
# Hardware flow control |
# If the hardware supports it, this option allows hardware |
# flow control to be enabled. This may be in the form of |
# either or both of RTS/CTS, or DSR/DTR flow control. |
# |
cdl_option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled |
# ActiveIf constraint: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 |
# CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ? CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 |
# CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0 |
# CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0 |
# --> 0 |
# Requires: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 |
# CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0 |
# --> 0 |
# Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS |
# CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# component CYGPKG_IO_SERIAL_FLOW_CONTROL |
# Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW) |
}; |
|
# Serial h/w supports hardware flow control |
# |
cdl_interface CYGINT_IO_SERIAL_FLOW_CONTROL_HW { |
# No options implement this inferface |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled |
|
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW |
# ActiveIf: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 |
# option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW |
# Requires: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 |
# option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW |
# DefaultValue: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ? CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 |
}; |
|
# Default flow control method |
# This option allows a default flow control method |
# to be defined. Combinations of flow control methods |
# may also be set, but this is only possible by |
# using the cyg_io_set_config() API in source code. |
# |
cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_DEFAULT { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value NONE |
# value_source default |
# Default value: NONE |
# Legal values: "NONE" "XONXOFF" "RTSCTS" "DSRDTR" |
}; |
|
# Rx flow control low water mark |
# This sets the water mark used for determining |
# when to disable flow control, expressed |
# as a percentage of the buffer size. When the |
# receive buffer size is lower than this percentage, |
# if the transmitter had previously been throttled, it |
# will now be informed it can restart. |
# |
cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 33 |
# value_source default |
# Default value: 33 |
# Legal values: 1 to 100 |
|
# The following properties are affected by this value |
# option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT |
# Requires: CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >= CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT |
}; |
|
# Rx flow control high water mark |
# This sets the water mark used for determining |
# when to enable flow control, expressed |
# as a percentage of the buffer size. When the |
# receive buffer size exceeds this percentage, |
# signals are sent to the transmitter to tell it |
# to throttle tranmission. |
# |
cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 66 |
# value_source default |
# Default value: 66 |
# Legal values: 1 to 100 |
# Requires: CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >= CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT |
# CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT == 0 |
# CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT |
# Requires: CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >= CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT |
}; |
|
# < |
# TTY-mode serial device drivers |
# This option enables a simple terminal-like device driver |
# that can be used for serial devices that interact with humans, |
# such as a system console. |
# |
cdl_component CYGPKG_IO_SERIAL_TTY { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# HAL/diag serial device driver |
# This option enables the use of the HAL diagnostic channel |
# via the standard I/O drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_HALDIAG { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGPKG_IO_SERIAL_HALDIAG |
}; |
|
# Console device name |
# This option selects the TTY device to use for the console. |
# |
cdl_option CYGDAT_IO_SERIAL_TTY_CONSOLE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ttydiag\"" |
# value_source default |
# Default value: "\"/dev/ttydiag\"" |
|
# The following properties are affected by this value |
# option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE |
# DefaultValue: CYGDAT_IO_SERIAL_TTY_CONSOLE |
}; |
|
# TTY mode HAL/diag channel |
# This option causes '/dev/ttydiag' to be included in the standard |
# drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_TTY_TTYDIAG { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# TTY mode channel #0 |
# This option causes '/dev/tty0' to be included in the standard |
# drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_TTY_TTY0 { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# TTY mode channel #0 device |
# This option selects the physical device to use for |
# '/dev/tty0'. |
# |
cdl_option CYGDAT_IO_SERIAL_TTY_TTY0_DEV { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TTY_TTY0 is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ser0\"" |
# value_source default |
# Default value: "\"/dev/ser0\"" |
}; |
|
# < |
# TTY mode channel #1 |
# This option causes '/dev/tty1' to be included in the standard |
# drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_TTY_TTY1 { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# TTY mode channel #1 device |
# This option selects the physical device to use for |
# '/dev/tty1'. |
# |
cdl_option CYGDAT_IO_SERIAL_TTY_TTY1_DEV { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TTY_TTY1 is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ser1\"" |
# value_source default |
# Default value: "\"/dev/ser1\"" |
}; |
|
# < |
# TTY mode channel #2 |
# This option causes '/dev/tty2' to be included in the standard |
# drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_TTY_TTY2 { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# TTY mode channel #2 device |
# This option selects the physical device to use for |
# '/dev/tty2'. |
# |
cdl_option CYGDAT_IO_SERIAL_TTY_TTY2_DEV { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TTY_TTY2 is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ser2\"" |
# value_source default |
# Default value: "\"/dev/ser2\"" |
}; |
|
# < |
# < |
# Termios compatible TTY drivers |
# This option enables terminal drivers compatible with |
# POSIX termios. |
# |
cdl_component CYGPKG_IO_SERIAL_TERMIOS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO |
# CYGPKG_ISOINFRA == v2_0 |
# CYGPKG_IO_FILEIO (unknown) == 0 |
# CYGINT_ISO_ERRNO_CODES == 1 |
# CYGINT_ISO_ERRNO == 1 |
# --> 0 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
# Requires: CYGPKG_IO_FILEIO |
# CYGPKG_IO_FILEIO (unknown) == 0 |
# --> 0 |
# Requires: CYGINT_ISO_ERRNO_CODES |
# CYGINT_ISO_ERRNO_CODES == 1 |
# --> 1 |
# Requires: CYGINT_ISO_ERRNO |
# CYGINT_ISO_ERRNO == 1 |
# --> 1 |
# Requires: CYGINT_ISO_MALLOC |
# CYGINT_ISO_MALLOC == 1 |
# --> 1 |
}; |
|
# > |
# Interface for termios tty driver file enabling |
# |
cdl_interface CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY { |
# Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0, inactive, disabled |
# Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1, inactive, disabled |
# Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2, inactive, disabled |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS is disabled |
|
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# option CYGBLD_IO_SERIAL_TERMIOS_TERMIOS_TTY |
# ActiveIf: CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY > 0 |
}; |
|
# Build termios tty driver file |
# |
cdl_option CYGBLD_IO_SERIAL_TERMIOS_TERMIOS_TTY { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS is disabled |
# ActiveIf constraint: CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY > 0 |
# CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY == 0 |
# --> 0 |
|
# Calculated value: 1 |
# Flavor: bool |
# Current value: 1 |
}; |
|
# Termios TTY channel #0 |
# This option causes '/dev/termios0' to be included in the standard |
# drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# Termios TTY channel #0 device |
# This option selects the physical device to use for |
# '/dev/termios0'. |
# |
cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS0_DEV { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ser0\"" |
# value_source default |
# Default value: "\"/dev/ser0\"" |
}; |
|
# < |
# Termios TTY channel #1 |
# This option causes '/dev/termios1' to be included in the standard |
# drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# Termios TTY channel #1 device |
# This option selects the physical device to use for |
# '/dev/termios1'. |
# |
cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS1_DEV { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ser1\"" |
# value_source default |
# Default value: "\"/dev/ser1\"" |
}; |
|
# < |
# Termios TTY channel #2 |
# This option causes '/dev/termios2' to be included in the standard |
# drivers. |
# |
cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# Termios TTY channel #2 device |
# This option selects the physical device to use for |
# '/dev/termios2'. |
# |
cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS2_DEV { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ser2\"" |
# value_source default |
# Default value: "\"/dev/ser2\"" |
}; |
|
# < |
# Support signals |
# This option selects whether those parts of the termios |
# interface involving signals is supported. This includes |
# BRKINT mode, the INTR and QUIT characters, and whether |
# SIGHUP is sent on terminal close. |
# |
cdl_option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS { |
# This option is not active |
# The parent CYGPKG_IO_SERIAL_TERMIOS is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGINT_ISO_SIGNAL_NUMBERS != 0 && CYGINT_ISO_SIGNAL_IMPL != 0 |
# CYGINT_ISO_SIGNAL_NUMBERS == 1 |
# CYGINT_ISO_SIGNAL_IMPL == 1 |
# --> 1 |
# Requires: CYGINT_ISO_SIGNAL_NUMBERS |
# CYGINT_ISO_SIGNAL_NUMBERS == 1 |
# --> 1 |
# Requires: CYGINT_ISO_SIGNAL_IMPL |
# CYGINT_ISO_SIGNAL_IMPL == 1 |
# --> 1 |
}; |
|
# < |
# Hardware serial device drivers |
# This option enables the hardware device drivers |
# for the current platform. |
# |
cdl_component CYGPKG_IO_SERIAL_DEVICES { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGPKG_IO_SERIAL_TESTS |
# Calculated: CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : "" |
}; |
|
# Build extra serial tests |
# This option enables the building of some extra tests which |
# can be used when testing / debugging serial drivers. These |
# are not built by default since they do not use the dedicated |
# testing infrastructure. |
# |
cdl_option CYGBLD_IO_SERIAL_EXTRA_TESTS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Serial device driver build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_IO_SERIAL_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the serial device drivers. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_IO_SERIAL_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the serial device drivers. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_IO_SERIAL_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Serial device driver tests |
# This option specifies the set of tests for the serial device drivers. |
# |
cdl_option CYGPKG_IO_SERIAL_TESTS { |
# Calculated value: CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : "" |
# CYGPKG_IO_SERIAL_DEVICES == 0 |
# Flavor: data |
# Current_value: |
}; |
|
# < |
# Enable serial device select support |
# This option enables support for the select() API function on all |
# serial devices. |
# |
cdl_option CYGPKG_IO_SERIAL_SELECT_SUPPORT { |
# This option is not active |
# ActiveIf constraint: CYGPKG_IO_FILEIO |
# CYGPKG_IO_FILEIO (unknown) == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGPKG_IO_FILEIO |
# CYGPKG_IO_FILEIO (unknown) == 0 |
# --> 0 |
}; |
|
# Serial testing specification |
# |
cdl_component CYGPKG_IO_SERIAL_TEST_SPECS { |
# Calculated value: 1 |
# Flavor: bool |
# Current value: 1 |
}; |
|
# > |
# Skip 9600 baud testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_9600 { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip 14400 baud testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_14400 { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip 19200 baud testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_19200 { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip 38400 baud testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_38400 { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip 57600 baud testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_57600 { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip 115200 baud testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_115200 { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip even-parity testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_EVEN { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip odd-parity testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_ODD { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Skip 2-stop bit testing |
# |
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_STOP_2 { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
}; |
|
# < |
# < |
# Infrastructure |
# Common types and useful macros. |
# Tracing and assertion facilities. |
# Package startup options. |
# |
cdl_package CYGPKG_INFRA { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
|
# The following properties are affected by this value |
# package CYGPKG_HAL |
# Requires: CYGPKG_INFRA |
}; |
|
# > |
# Asserts & Tracing |
# The eCos source code contains a significant amount of |
# internal debugging support, in the form of assertions and |
# tracing. |
# Assertions check at runtime that various conditions are as |
# expected; if not, execution is halted. |
# Tracing takes the form of text messages that are output |
# whenever certain events occur, or whenever functions are |
# called or return. |
# The most important property of these checks and messages is |
# that they are not required for the program to run. |
# It is prudent to develop software with assertions enabled, |
# but disable them when making a product release, thus |
# removing the overhead of that checking. |
# It is possible to enable assertions and tracing |
# independently. |
# There are also options controlling the exact behaviour of |
# the assertion and tracing facilities, thus giving users |
# finer control over the code and data size requirements. |
# |
cdl_component CYGPKG_INFRA_DEBUG { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# component CYGFUN_KERNEL_THREADS_STACK_CHECKING |
# ActiveIf: CYGPKG_INFRA_DEBUG |
# component CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT |
# DefaultValue: 0 != CYGPKG_INFRA_DEBUG |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
}; |
|
# > |
# Use asserts |
# If this option is defined, asserts in the code are tested. |
# Assert functions (CYG_ASSERT()) are defined in |
# 'include/cyg/infra/cyg_ass.h' within the 'install' tree. |
# If it is not defined, these result in no additional |
# object code and no checking of the asserted conditions. |
# |
cdl_component CYGDBG_USE_ASSERTS { |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: 1 == CYGINT_INFRA_DEBUG_TRACE_IMPL |
# CYGINT_INFRA_DEBUG_TRACE_IMPL == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# component CYGFUN_KERNEL_THREADS_STACK_CHECKING |
# ActiveIf: CYGDBG_USE_ASSERTS |
# option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG |
# Requires: CYGDBG_USE_ASSERTS |
# option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG |
# DefaultValue: 0 != CYGDBG_USE_ASSERTS |
# option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL |
# Requires: CYGDBG_USE_ASSERTS |
}; |
|
# > |
# Preconditions |
# This option allows individual control of preconditions. |
# A precondition is one type of assert, which it is |
# useful to control separately from more general asserts. |
# The function is CYG_PRECONDITION(condition,msg). |
# |
cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS { |
# This option is not active |
# The parent CYGDBG_USE_ASSERTS is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Postconditions |
# This option allows individual control of postconditions. |
# A postcondition is one type of assert, which it is |
# useful to control separately from more general asserts. |
# The function is CYG_POSTCONDITION(condition,msg). |
# |
cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS { |
# This option is not active |
# The parent CYGDBG_USE_ASSERTS is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Loop invariants |
# This option allows individual control of loop invariants. |
# A loop invariant is one type of assert, which it is |
# useful to control separately from more general asserts, |
# particularly since a loop invariant is typically evaluated |
# a great many times when used correctly. |
# The function is CYG_LOOP_INVARIANT(condition,msg). |
# |
cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS { |
# This option is not active |
# The parent CYGDBG_USE_ASSERTS is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Use assert text |
# All assertions within eCos contain a text message |
# which should give some information about the condition |
# being tested. |
# These text messages will end up being embedded in the |
# application image and hence there is a significant penalty |
# in terms of image size. |
# It is possible to suppress the use of these messages by |
# disabling this option. |
# This results in smaller code size, but there is less |
# human-readable information if an assertion actually gets |
# triggered. |
# |
cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE { |
# This option is not active |
# The parent CYGDBG_USE_ASSERTS is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Use tracing |
# If this option is defined, tracing operations |
# result in output or logging, depending on other options. |
# This may have adverse effects on performance, if the time |
# taken to output message overwhelms the available CPU |
# power or output bandwidth. |
# Trace functions (CYG_TRACE()) are defined in |
# 'include/cyg/infra/cyg_trac.h' within the 'install' tree. |
# If it is not defined, these result in no additional |
# object code and no trace information. |
# |
cdl_component CYGDBG_USE_TRACING { |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: 1 == CYGINT_INFRA_DEBUG_TRACE_IMPL |
# CYGINT_INFRA_DEBUG_TRACE_IMPL == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE |
# ActiveIf: CYGDBG_USE_TRACING |
# option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP |
# ActiveIf: CYGDBG_USE_TRACING |
# option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT |
# ActiveIf: CYGDBG_USE_TRACING |
# option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT |
# ActiveIf: CYGDBG_USE_TRACING |
# option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT |
# ActiveIf: CYGDBG_USE_TRACING |
# option CYGDBG_KERNEL_TRACE_TIMESLICE |
# ActiveIf: CYGDBG_USE_TRACING |
# component CYGPKG_LIBM_TRACE |
# Requires: CYGDBG_USE_TRACING |
}; |
|
# > |
# Trace function reports |
# This option allows individual control of |
# function entry/exit tracing, independent of |
# more general tracing output. |
# This may be useful to remove clutter from a |
# trace log. |
# |
cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS { |
# This option is not active |
# The parent CYGDBG_USE_TRACING is not active |
# The parent CYGDBG_USE_TRACING is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Use trace text |
# All trace calls within eCos contain a text message |
# which should give some information about the circumstances. |
# These text messages will end up being embedded in the |
# application image and hence there is a significant penalty |
# in terms of image size. |
# It is possible to suppress the use of these messages by |
# disabling this option. |
# This results in smaller code size, but there is less |
# human-readable information available in the trace output, |
# possibly only filenames and line numbers. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_MESSAGE { |
# This option is not active |
# The parent CYGDBG_USE_TRACING is not active |
# The parent CYGDBG_USE_TRACING is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Trace output implementations |
# |
cdl_interface CYGINT_INFRA_DEBUG_TRACE_IMPL { |
# Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL, inactive, disabled |
# Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE, inactive, disabled |
# Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY, inactive, disabled |
# Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER, inactive, enabled |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# component CYGDBG_USE_ASSERTS |
# Requires: 1 == CYGINT_INFRA_DEBUG_TRACE_IMPL |
# component CYGDBG_USE_TRACING |
# Requires: 1 == CYGINT_INFRA_DEBUG_TRACE_IMPL |
}; |
|
# Null output |
# A null output module which is useful when |
# debugging interactively; the output routines |
# can be breakpointed rather than have them actually |
# 'print' something. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL { |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Simple output |
# An output module which produces simple output |
# from tracing and assertion events. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE { |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGDBG_KERNEL_TRACE_TIMESLICE |
# Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE |
}; |
|
# Fancy output |
# An output module which produces fancy output |
# from tracing and assertion events. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY { |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGDBG_KERNEL_TRACE_TIMESLICE |
# Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY |
}; |
|
# Buffered tracing |
# An output module which buffers output |
# from tracing and assertion events. The stored |
# messages are output when an assert fires, or |
# CYG_TRACE_PRINT() (defined in <cyg/infra/cyg_trac.h>) |
# is called. |
# Of course, there will only be stored messages |
# if tracing per se (CYGDBG_USE_TRACING) |
# is enabled above. |
# |
cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER { |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# Trace buffer size |
# The size of the trace buffer. This counts the number |
# of trace records stored. When the buffer fills it |
# either wraps, stops recording, or generates output. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE { |
# This option is not active |
# The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active |
# ActiveIf constraint: CYGDBG_USE_TRACING |
# CYGDBG_USE_TRACING == 0 |
# --> 0 |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 32 |
# value_source default |
# Default value: 32 |
# Legal values: 5 to 65535 |
}; |
|
# Wrap trace buffer when full |
# When the trace buffer has filled with records it |
# starts again at the beginning. Hence only the last |
# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will |
# be recorded. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP { |
# This option is not active |
# The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active |
# ActiveIf constraint: CYGDBG_USE_TRACING |
# CYGDBG_USE_TRACING == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Halt trace buffer when full |
# When the trace buffer has filled with records it |
# stops recording. Hence only the first |
# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will |
# be recorded. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT { |
# This option is not active |
# The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active |
# ActiveIf constraint: CYGDBG_USE_TRACING |
# CYGDBG_USE_TRACING == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Print trace buffer when full |
# When the trace buffer has filled with records it |
# prints the contents of the buffer. The buffer is then |
# emptied and the system continues. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT { |
# This option is not active |
# The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active |
# ActiveIf constraint: CYGDBG_USE_TRACING |
# CYGDBG_USE_TRACING == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Print trace buffer on assert fail |
# When an assertion fails the trace buffer will be |
# printed to the default diagnostic device. |
# |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT { |
# This option is not active |
# The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active |
# ActiveIf constraint: CYGDBG_USE_TRACING |
# CYGDBG_USE_TRACING == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Use function names |
# All trace and assert calls within eCos contain a |
# reference to the builtin macro '__PRETTY_FUNCTION__', |
# which evaluates to a string containing |
# the name of the current function. |
# This is useful when reading a trace log. |
# It is possible to suppress the use of the function name |
# by disabling this option. |
# This results in smaller code size, but there is less |
# human-readable information available in the trace output, |
# possibly only filenames and line numbers. |
# |
cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO { |
# This option is not active |
# The parent CYGPKG_INFRA_DEBUG is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Startup options |
# Some packages require a startup routine to be called. |
# This can be carried out by application code, by supplying |
# a routine called cyg_package_start() which calls the |
# appropriate package startup routine(s). |
# Alternatively, this routine can be constructed automatically |
# and configured to call the startup routines of your choice. |
# |
cdl_component CYGPKG_INFRA_STARTUP { |
# There is no associated value. |
}; |
|
# > |
# Start uITRON subsystem |
# Generate a call to initialize the |
# uITRON compatibility subsystem |
# within the system version of cyg_package_start(). |
# This enables compatibility with uITRON. |
# You must configure uITRON with the correct tasks before |
# starting the uItron subsystem. |
# If this is disabled, and you want to use uITRON, |
# you must call cyg_uitron_start() from your own |
# cyg_package_start() or cyg_userstart(). |
# |
cdl_option CYGSEM_START_UITRON_COMPATIBILITY { |
# This option is not active |
# ActiveIf constraint: CYGPKG_UITRON |
# CYGPKG_UITRON (unknown) == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGPKG_UITRON |
# CYGPKG_UITRON (unknown) == 0 |
# --> 0 |
}; |
|
# < |
# Smaller slower memcpy() |
# Enabling this option causes the implementation of |
# the standard memcpy() routine to reduce code |
# size at the expense of execution speed. This |
# option is automatically enabled with the use of |
# the -Os option to the compiler. Also note that |
# the compiler will try to use its own builtin |
# version of memcpy() if possible, ignoring the |
# implementation in this package, unless given |
# the -fno-builtin compiler option. |
# |
cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Smaller slower memset() |
# Enabling this option causes the implementation of |
# the standard memset() routine to reduce code |
# size at the expense of execution speed. This |
# option is automatically enabled with the use of |
# the -Os option to the compiler. Also note that |
# the compiler will try to use its own builtin |
# version of memset() if possible, ignoring the |
# implementation in this package, unless given |
# the -fno-builtin compiler option. |
# |
cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMSET { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Provide empty C++ delete functions |
# To deal with virtual destructors, where the correct delete() |
# function must be called for the derived class in question, the |
# underlying delete is called when needed, from destructors. This |
# is regardless of whether the destructor is called by delete itself. |
# So there is a reference to delete() from all destructors. The |
# default builtin delete() attempts to call free() if there is |
# one defined. So, if you have destructors, and you have free(), |
# as in malloc() and free(), any destructor counts as a reference |
# to free(). So the dynamic memory allocation code is linked |
# in regardless of whether it gets explicitly called. This |
# increases code and data size needlessly. |
# To defeat this undesirable behaviour, we define empty versions |
# of delete and delete. But doing this prevents proper use |
# of dynamic memory in C++ programs via C++'s new and delete |
# operators. |
# Therefore, this option is provided |
# for explicitly disabling the provision of these empty functions, |
# so that new and delete can be used, if that is what is required. |
# |
cdl_option CYGFUN_INFRA_EMPTY_DELETE_FUNCTIONS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Provide dummy abort() function |
# This option controls the inclusion of a dummy abort() function. |
# Parts of the C and C++ compiler runtime systems contain references |
# to abort(), particulary in the C++ exception handling code. It is |
# not possible to eliminate these references, so this dummy function |
# in included to satisfy them. It is not expected that this function |
# will ever be called, so its current behaviour is to simply loop. |
# |
cdl_option CYGFUN_INFRA_DUMMY_ABORT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: CYGINT_ISO_EXIT == 0 |
# CYGINT_ISO_EXIT == 1 |
# --> 0 |
# Requires: !CYGINT_ISO_EXIT |
# CYGINT_ISO_EXIT == 1 |
# --> 0 |
}; |
|
# Provide dummy strlen() function |
# This option controls the inclusion of a dummy strlen() function. |
# Parts of the C and C++ compiler runtime systems contain references |
# to strlen(), particulary in the C++ exception handling code. It is |
# not possible to eliminate these references, so this dummy function |
# in included to satisfy them. While it is not expected that this function |
# will ever be called, it is functional but uses the simplest, smallest |
# algorithm. There is a faster version of strlen() in the C library. |
# |
cdl_option CYGFUN_INFRA_DUMMY_STRLEN { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: CYGINT_ISO_STRING_STRFUNCS == 0 |
# CYGINT_ISO_STRING_STRFUNCS == 1 |
# --> 0 |
# Requires: !CYGINT_ISO_STRING_STRFUNCS |
# CYGINT_ISO_STRING_STRFUNCS == 1 |
# --> 0 |
}; |
|
# Make all compiler warnings show as errors |
# Enabling this option will cause all compiler warnings to show |
# as errors and bring the library build to a halt. This is used |
# to ensure that the code base is warning free, and thus ensure |
# that newly introduced warnings stand out and get fixed before |
# they show up as weird run-time behavior. |
# |
cdl_option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") |
# CYGBLD_GLOBAL_CFLAGS == "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" |
# --> 0 |
}; |
|
# Make compiler and assembler communicate by pipe |
# Enabling this option will cause the compiler to feed the |
# assembly output the the assembler via a pipe instead of |
# via a temporary file. This normally reduces the build |
# time. |
# |
cdl_option CYGBLD_INFRA_CFLAGS_PIPE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") |
# CYGBLD_GLOBAL_CFLAGS == "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" |
# --> 0 |
}; |
|
# Infra build options |
# Package specific build options including control over |
# compiler flags used only in building this package. |
# |
cdl_component CYGPKG_INFRA_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the eCos infra package. These flags are used |
# in addition to the set of global flags. |
# |
cdl_option CYGPKG_INFRA_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the eCos infra package. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_INFRA_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed linker flags |
# This option modifies the set of linker flags for |
# building the eCos infra package tests. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_INFRA_LDFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value -Wl,--gc-sections |
# value_source default |
# Default value: -Wl,--gc-sections |
}; |
|
# Additional linker flags |
# This option modifies the set of linker flags for |
# building the eCos infra package tests. These flags are added to |
# the set of global flags if present. |
# |
cdl_option CYGPKG_INFRA_LDFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value -Wl,--fatal-warnings |
# value_source default |
# Default value: -Wl,--fatal-warnings |
}; |
|
# Infra package tests |
# |
cdl_option CYGPKG_INFRA_TESTS { |
# Calculated value: "" |
# Flavor: data |
# Current_value: |
}; |
|
# < |
# < |
# eCos kernel |
# doc: ref/kernel.html |
# This package contains the core functionality of the eCos |
# kernel. It relies on functionality provided by various HAL |
# packages and by the eCos infrastructure. In turn the eCos |
# kernel provides support for other packages such as the device |
# drivers and the uITRON compatibility layer. |
# |
cdl_package CYGPKG_KERNEL { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
|
# The following properties are affected by this value |
# option CYGFUN_HAL_COMMON_KERNEL_SUPPORT |
# Requires: CYGPKG_KERNEL |
# option CYGFUN_HAL_COMMON_KERNEL_SUPPORT |
# DefaultValue: CYGPKG_KERNEL |
# option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE |
# DefaultValue: CYGPKG_KERNEL ? 4096 : 32768 |
# option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE |
# ActiveIf: CYGPKG_KERNEL |
# option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE |
# ActiveIf: CYGPKG_KERNEL |
# option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE |
# ActiveIf: CYGPKG_KERNEL |
# option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE |
# Requires: CYGPKG_KERNEL |
# option CYGSEM_MEMALLOC_ALLOCATOR_SEPMETA_THREADAWARE |
# ActiveIf: CYGPKG_KERNEL |
# option CYGFUN_MEMALLOC_KAPI |
# ActiveIf: CYGPKG_KERNEL |
# option CYGSEM_LIBC_SIGNALS_THREAD_SAFE |
# Requires: CYGPKG_KERNEL |
# option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT |
# DefaultValue: 0 == CYGPKG_KERNEL && 0 == |
# CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# component CYGSEM_LIBC_STARTUP_MAIN_THREAD |
# Requires: CYGPKG_KERNEL |
# component CYGSEM_LIBC_STARTUP_MAIN_THREAD |
# DefaultValue: 0 != CYGPKG_KERNEL && 0 == CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# option CYGSEM_LIBC_EXIT_STOPS_SYSTEM |
# Requires: CYGPKG_KERNEL |
# option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS |
# Requires: CYGPKG_KERNEL |
# option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS |
# DefaultValue: 0 != CYGPKG_KERNEL |
# option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK |
# ActiveIf: CYGPKG_KERNEL |
# option CYGPKG_WALLCLOCK_EMULATE |
# Requires: CYGPKG_KERNEL |
# option CYGIMP_WALLCLOCK_NONE |
# DefaultValue: !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS |
# option CYGPKG_IO_WALLCLOCK_TESTS |
# Calculated: CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : "" |
}; |
|
# > |
# Kernel interrupt handling |
# doc: ref/kernel-interrupts.html |
# The majority of configuration options related to interrupt |
# handling are in the HAL packages, since usually the code has |
# to be platform-specific. There are a number of options |
# provided within the kernel related to slightly higher-level |
# concepts, for example Delayed Service Routines. |
# |
cdl_component CYGPKG_KERNEL_INTERRUPTS { |
# There is no associated value. |
|
# The following properties are affected by this value |
# option CYGDBG_KERNEL_INSTRUMENT_INTR |
# ActiveIf: CYGPKG_KERNEL_INTERRUPTS |
}; |
|
# > |
# Use delayed service routines (DSRs) |
# In eCos the recommended way to handle device interrupts is to |
# do a minimum amount of work inside the low level interrupt |
# handler itself, and instead do as much as possible in a |
# Delayed Service Routine or DSR. If an application does not |
# make use of DSRs directly or indirectly then it is possible |
# to disable the DSR support completely, which reduces the |
# overheads of context switches and interrupt handling. Note |
# that the kernel real-time clock makes use of DSRs, as do many |
# of the device drivers. |
# |
cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGVAR_KERNEL_COUNTERS_CLOCK |
# Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS |
}; |
|
# > |
# |
cdl_interface CYGINT_KERNEL_INTERRUPTS_DSRS { |
# Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST, active, enabled |
# Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS |
# CYGINT_KERNEL_INTERRUPTS_DSRS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_KERNEL_INTERRUPTS_DSRS |
# Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS |
}; |
|
# Use linked lists for DSRs |
# When DSR support is enabled the kernel must keep track of all |
# the DSRs that are pending. This information can be kept in a |
# fixed-size table or in a linked list. The list implementation |
# requires that the kernel disable interrupts for a very short |
# period of time outside interrupt handlers, but there is no |
# possibility of a table overflow occurring. |
# |
cdl_option CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Use fixed-size table for DSRs |
# When DSR support is enabled the kernel must keep track of all |
# the DSRs that are pending. This information can be kept in a |
# fixed-size table or in a linked list. The table |
# implementation involves a very small risk of overflow at |
# run-time if a given interrupt source is able to have more |
# than one pending DSR. However it has the advantage that |
# the kernel does not need to disable interrupts outside |
# interrupt handlers. |
# |
cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# Number of entries in fixed-size DSR table |
# When DSR support is enabled the kernel must keep track of all |
# the DSRs that are pending. One approach involves a fixed-size |
# table, which involves a very small risk of overflow at |
# run-time. By increasing the table size it is possible to reduce |
# this risk. |
# |
cdl_option CYGNUM_KERNEL_INTERRUPTS_DSRS_TABLE_SIZE { |
# This option is not active |
# The parent CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 32 |
# value_source default |
# Default value: 32 |
# Legal values: 2 to 1024 |
}; |
|
# < |
# Chain all interrupts together |
# Interrupts can be attached to vectors either singly, or be |
# chained together. The latter is necessary if there is no way |
# of discovering which device has interrupted without |
# inspecting the device itself. It can also reduce the amount |
# of RAM needed for interrupt decoding tables and code. |
# |
cdl_option CYGIMP_KERNEL_INTERRUPTS_CHAIN { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN |
# CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN == 0 |
# --> 0 |
}; |
|
# < |
# < |
# Exception handling |
# doc: ref/kernel-exceptions.html |
# In the context of the eCos kernel exceptions are unexpected |
# events detected by the hardware, for example an attempt to |
# execute an illegal instruction. There is no relation with |
# other forms of exception, for example the catch and throw |
# facilities of languages like C++. It is possible to disable |
# all support for exceptions and thus save some memory. |
# |
cdl_component CYGPKG_KERNEL_EXCEPTIONS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGPKG_HAL_EXCEPTIONS |
# CYGPKG_HAL_EXCEPTIONS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGPKG_HAL_EXCEPTIONS |
# Requires: CYGPKG_KERNEL_EXCEPTIONS |
# option CYGPKG_HAL_EXCEPTIONS |
# DefaultValue: CYGPKG_KERNEL_EXCEPTIONS |
}; |
|
# > |
# Decode exception types in kernel |
# On targets where several different types of exception are |
# possible, for example executing an illegal instruction and |
# division by zero, it is possible for the kernel to do some |
# decoding of the exception type and deliver the different |
# types of exception to different handlers in the application |
# code. Alternatively the kernel can simply pass all |
# exceptions directly to application code, leaving the |
# decoding to be done by the application |
# |
cdl_option CYGSEM_KERNEL_EXCEPTIONS_DECODE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS |
# Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE |
}; |
|
# Use global exception handlers |
# In the context of the eCos kernel exceptions are |
# unexpected events detected by the hardware, for |
# example an attempt to execute an illegal |
# instruction. If the kernel is configured |
# to support exceptions then two implementations are |
# possible. The default implementation involves a single set |
# of exception handlers that are in use for the entire |
# system. The alternative implementation allows different |
# exception handlers to be specified for each thread. |
# |
cdl_option CYGSEM_KERNEL_EXCEPTIONS_GLOBAL { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS |
# Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL |
}; |
|
# < |
# Kernel schedulers |
# doc: ref/kernel-overview.html#KERNEL-OVERVIEW-SCHEDULERS |
# The eCos kernel provides a choice of schedulers. In addition |
# there are a number of configuration options to control the |
# detailed behaviour of these schedulers. |
# |
cdl_component CYGPKG_KERNEL_SCHED { |
# There is no associated value. |
|
# The following properties are affected by this value |
# option CYGDBG_KERNEL_INSTRUMENT_SCHED |
# ActiveIf: CYGPKG_KERNEL_SCHED |
}; |
|
# > |
# Number of schedulers in this configuration |
# |
cdl_interface CYGINT_KERNEL_SCHEDULER { |
# Implemented by CYGSEM_KERNEL_SCHED_MLQUEUE, active, enabled |
# Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 == CYGINT_KERNEL_SCHEDULER |
# CYGINT_KERNEL_SCHEDULER == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_KERNEL_SCHEDULER |
# Requires: 1 == CYGINT_KERNEL_SCHEDULER |
}; |
|
# Non-zero if the active schedule only has unique priorities |
# Not all schedulers allow mutiple threads to use the same |
# priority. That property is signalled via this option, allowing |
# scheduler and tests to behave accordingly. |
# |
cdl_interface CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES { |
# Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL |
# Requires: CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 |
}; |
|
# Multi-level queue scheduler |
# The multi-level queue scheduler supports multiple priority |
# levels and multiple threads at each priority level. |
# Preemption between priority levels is automatic. Timeslicing |
# within a given priority level is controlled by a separate |
# configuration option. |
# |
cdl_component CYGSEM_KERNEL_SCHED_MLQUEUE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGPRI_KERNEL_SCHED_IMPL_HXX |
# Calculated: CYGSEM_KERNEL_SCHED_BITMAP ? "<cyg/kernel/bitmap.hxx>" : CYGSEM_KERNEL_SCHED_MLQUEUE ? "<cyg/kernel/mlqueue.hxx>" : CYGSEM_KERNEL_SCHED_LOTTERY ? "<cyg/kernel/lottery.hxx>" : "!!!-- Configuration broken - no scheduler selected --!!!" |
# component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL |
# ActiveIf: CYGSEM_KERNEL_SCHED_MLQUEUE |
}; |
|
# > |
# Output timeslices when tracing |
# When tracing is enabled, output trace messages every |
# timeslice. This can be quite verbose so is disabled by |
# default. |
# |
cdl_option CYGDBG_KERNEL_TRACE_TIMESLICE { |
# This option is not active |
# ActiveIf constraint: CYGDBG_USE_TRACING |
# CYGDBG_USE_TRACING == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE |
# CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE == 0 |
# --> 1 |
# Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY |
# CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY == 0 |
# --> 1 |
}; |
|
# < |
# Bitmap scheduler |
# The bitmap scheduler supports multiple priority levels but |
# only one thread can exist at each priority level. This means |
# that scheduling decisions are very simple and hence the |
# scheduler is efficient. Preemption between priority levels is |
# automatic. Timeslicing within a given priority level is |
# irrelevant since there can be only one thread at each |
# priority level. |
# |
cdl_option CYGSEM_KERNEL_SCHED_BITMAP { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: !CYGPKG_KERNEL_SMP_SUPPORT |
# CYGPKG_KERNEL_SMP_SUPPORT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGPRI_KERNEL_SCHED_IMPL_HXX |
# Calculated: CYGSEM_KERNEL_SCHED_BITMAP ? "<cyg/kernel/bitmap.hxx>" : CYGSEM_KERNEL_SCHED_MLQUEUE ? "<cyg/kernel/mlqueue.hxx>" : CYGSEM_KERNEL_SCHED_LOTTERY ? "<cyg/kernel/lottery.hxx>" : "!!!-- Configuration broken - no scheduler selected --!!!" |
# component CYGSEM_KERNEL_SCHED_TIMESLICE |
# Requires: !CYGSEM_KERNEL_SCHED_BITMAP |
}; |
|
# Scheduler header file |
# This option sets a preprocessor symbol which names the header |
# file for the selected scheduler. It is used internally by the |
# common scheduler code to include the correct header file. |
# |
cdl_option CYGPRI_KERNEL_SCHED_IMPL_HXX { |
# Calculated value: CYGSEM_KERNEL_SCHED_BITMAP ? "<cyg/kernel/bitmap.hxx>" : CYGSEM_KERNEL_SCHED_MLQUEUE ? "<cyg/kernel/mlqueue.hxx>" : CYGSEM_KERNEL_SCHED_LOTTERY ? "<cyg/kernel/lottery.hxx>" : "!!!-- Configuration broken - no scheduler selected --!!!" |
# CYGSEM_KERNEL_SCHED_BITMAP == 0 |
# CYGSEM_KERNEL_SCHED_MLQUEUE == 1 |
# CYGSEM_KERNEL_SCHED_LOTTERY (unknown) == 0 |
# Flavor: data |
# Current_value: <cyg/kernel/mlqueue.hxx> |
}; |
|
# Number of priority levels |
# This option controls the number of priority levels that are |
# available. For some types of scheduler including the bitmap |
# scheduler this may impose an upper bound on the number of |
# threads in the system. For other schedulers such as the |
# mlqueue scheduler the number of threads is independent from |
# the number of priority levels. Note that the lowest priority |
# level is normally used only by the idle thread, although |
# application threads can run at this priority if necessary. |
# |
cdl_component CYGNUM_KERNEL_SCHED_PRIORITIES { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 32 |
# value_source default |
# Default value: 32 |
# Legal values: 1 to 32 |
|
# The following properties are affected by this value |
# option CYGIMP_IDLE_THREAD_YIELD |
# ActiveIf: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1) |
# option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY |
# LegalValues: 0 to CYGNUM_KERNEL_SCHED_PRIORITIES - 1 |
}; |
|
# > |
# Bitmap size |
# This option automatically defines the size of bitmap |
# used to track occupied priority levels. |
# |
cdl_option CYGNUM_KERNEL_SCHED_BITMAP_SIZE { |
# Calculated value: "CYGNUM_KERNEL_SCHED_PRIORITIES" |
# Flavor: data |
# Current_value: CYGNUM_KERNEL_SCHED_PRIORITIES |
}; |
|
# Dequeue oldest threads first |
# With this option enabled, threads queued in a thread queue |
# will be dequeued in priority order, rather than last in, |
# first out (LIFO). Threads of equal priority are dequeued |
# oldest first. The only exception is the scheduler run |
# queues where order is less important as each is already |
# sorted by priority. Note that this makes the thread queueing |
# less deterministic. |
# |
cdl_option CYGIMP_KERNEL_SCHED_SORTED_QUEUES { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# < |
# Scheduler timeslicing |
# Some schedulers including the mlqueue scheduler support |
# timeslicing. This means that the kernel will check regularly |
# whether or not there is another runnable thread with the |
# same priority, and if there is such a thread there will be |
# an automatic context switch. Not all applications require |
# timeslicing, for example because every thread performs a |
# blocking operation regularly. For these applications it is |
# possible to disable timeslicing, which reduces the overheads |
# associated with timer interrupts. |
# |
cdl_component CYGSEM_KERNEL_SCHED_TIMESLICE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: !CYGSEM_KERNEL_SCHED_BITMAP |
# CYGSEM_KERNEL_SCHED_BITMAP == 0 |
# --> 1 |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
}; |
|
# > |
# Number of clock ticks between timeslices |
# Assuming timeslicing is enabled, how frequently should it |
# take place? The value of this option corresponds to the |
# number of clock ticks that should occur before a timeslice |
# takes place, so increasing the value reduces the frequency |
# of timeslices. |
# |
cdl_option CYGNUM_KERNEL_SCHED_TIMESLICE_TICKS { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 5 |
# value_source default |
# Default value: 5 |
# Legal values: 1 to 65535 |
}; |
|
# Support runtime enable of timeslice per-thread |
# This option makes timslicing a per-thread runtime |
# option. When enabled, threads may have timeslicing |
# turned on or off dynamically. This is generally used |
# by higher level APIs (such as POSIX) to implement |
# differing scheduling policies. |
# |
cdl_option CYGSEM_KERNEL_SCHED_TIMESLICE_ENABLE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: false |
# false (unknown) == 0 |
# --> 0 |
}; |
|
# < |
# Enable ASR support |
# This component controls support for Asynchronous Service |
# Routines (ASRs). This is a function that may be called |
# from the scheduler when it has just exited the scheduler |
# lock. This is primarily for use by API compatibility layers. |
# |
cdl_component CYGSEM_KERNEL_SCHED_ASR_SUPPORT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: false |
# false (unknown) == 0 |
# --> 0 |
}; |
|
# > |
# Make ASR function global |
# This option controls whether the ASR function is shared by |
# all threads, or whether each thread may have its own ASR |
# function. |
# |
cdl_option CYGSEM_KERNEL_SCHED_ASR_GLOBAL { |
# This option is not active |
# The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: true |
# true (unknown) == 0 |
# --> 0 |
}; |
|
# Make ASR data global |
# This option controls whether the ASR data is shared by |
# all threads, or whether each thread may have its own ASR |
# data. This is independent of the previous option because |
# it may be useful to pass per-thread data to a shared ASR |
# function. |
# |
cdl_option CYGSEM_KERNEL_SCHED_ASR_DATA_GLOBAL { |
# This option is not active |
# The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: true |
# true (unknown) == 0 |
# --> 0 |
}; |
|
# < |
# < |
# SMP support |
# |
cdl_component CYGPKG_KERNEL_SMP_SUPPORT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGPKG_HAL_SMP_SUPPORT |
# CYGPKG_HAL_SMP_SUPPORT (unknown) == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGSEM_KERNEL_SCHED_BITMAP |
# Requires: !CYGPKG_KERNEL_SMP_SUPPORT |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
}; |
|
# Counters and clocks |
# doc: ref/kernel-counters.html |
# The counter objects provided by the kernel provide an |
# abstraction of the clock facility that is generally provided. |
# Application code can associate alarms with counters, where an |
# alarm is identified by the number of ticks until it triggers, |
# the action to be taken on triggering, and whether or not the |
# alarm should be repeated. |
# |
cdl_component CYGPKG_KERNEL_COUNTERS { |
# There is no associated value. |
}; |
|
# > |
# Provide real-time clock |
# On all current target systems the kernel can provide a |
# real-time clock. This clock serves two purposes. First it is |
# necessary to support clock and alarm related functions. |
# Second it is needed to implement timeslicing in some of the |
# schedulers including the mlqueue scheduler. If the |
# application does not require any of these facilities then it |
# is possible to disable the real time clock support |
# completely. |
# |
cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS |
# CYGIMP_KERNEL_INTERRUPTS_DSRS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# component CYGSEM_KERNEL_SCHED_TIMESLICE |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# component CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# option CYGFUN_KERNEL_THREADS_TIMER |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# option CYGDBG_KERNEL_INSTRUMENT_CLOCK |
# ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK |
# option CYGDBG_KERNEL_INSTRUMENT_ALARM |
# ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK |
# option CYGDBG_KERNEL_INSTRUMENT_SMP |
# ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK |
# component CYGPKG_HAL_TESTS |
# Calculated: "tests/context tests/basic" |
# . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "") |
# . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "") |
# . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ? " tests/intr" : "") |
# option CYGSEM_LIBC_TIME_CLOCK_WORKING |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
}; |
|
# Override default clock settings |
# The kernel has default settings for the clock interrupt |
# frequency. These settings will vary from platform to |
# platform, but typically there will be a 100 clock interrupts |
# every second. It is possible to change this frequency, but |
# it requires some knowledge of the target hardware. |
# |
cdl_component CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION |
# Calculated: CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ? "{CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_NUMERATOR, CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_DENOMINATOR}" : "{CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR}" |
# option CYGNUM_KERNEL_COUNTERS_RTC_PERIOD |
# Calculated: CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ? "CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD" : "CYGNUM_HAL_RTC_PERIOD" |
}; |
|
# > |
# Clock hardware initialization value |
# During system initialization this value is used to initialize |
# the clock hardware. The exact meaning of the value and the |
# range of legal values therefore depends on the target hardware, |
# and the hardware documentation should be consulted for further |
# details. In addition the clock resolution numerator and |
# denominator values should be updated. Typical values for |
# this option would be 150000 on the MN10300 stdeval1 board, |
# 15625 on the tx39 jmr3904 board, and 20833 on the powerpc |
# cogent board. |
# |
cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD { |
# This option is not active |
# The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 9999 |
# value_source default |
# Default value: 9999 |
# Legal values: 1 to 0x7fffffff |
}; |
|
# Clock resolution numerator |
# If a non-default clock interrupt frequency is used then it |
# is necessary to specify the clock resolution explicitly. |
# This resolution involves two separate values, the numerator |
# and the denominator. The result of dividing the numerator by |
# the denominator should correspond to the number of |
# nanoseconds between clock interrupts. For example a |
# numerator of 1000000000 and a denominator of 100 means that |
# there are 10000000 nanoseconds (or 10 milliseconds) between |
# clock interrupts. Expressing the resolution as a fraction |
# should minimize clock drift even for frequencies that cannot |
# be expressed as a simple integer. For example a frequency of |
# 60Hz corresponds to a clock resolution of 16666666.66... |
# nanoseconds. This can be expressed accurately as 1000000000 |
# over 60. |
# |
cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_NUMERATOR { |
# This option is not active |
# The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 1000000000 |
# value_source default |
# Default value: 1000000000 |
# Legal values: 1 to 0x7fffffff |
}; |
|
# Clock resolution denominator |
# If a non-default clock interrupt frequency is used then it |
# is necessary to specify the clock resolution explicitly. |
# This resolution involves two separate values, the numerator |
# and the denominator. The result of dividing the numerator by |
# the denominator should correspond to the number of |
# nanoseconds between clock interrupts. For example a |
# numerator of 1000000000 and a denominator of 100 means that |
# there are 10000000 nanoseconds (or 10 milliseconds) between |
# clock interrupts. Expressing the resolution as a fraction |
# should minimize clock drift even for frequencies that cannot |
# be expressed as a simple integer. For example a frequency of |
# 60Hz corresponds to a clock resolution of 16666666.66... |
# nanoseconds. This can be expressed accurately as 1000000000 |
# over 60. |
# |
cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_DENOMINATOR { |
# This option is not active |
# The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 100 |
# value_source default |
# Default value: 100 |
# Legal values: 1 to 0x7fffffff |
}; |
|
# < |
# |
cdl_interface CYGINT_KERNEL_COUNTERS { |
# Implemented by CYGIMP_KERNEL_COUNTERS_SINGLE_LIST, active, enabled |
# Implemented by CYGIMP_KERNEL_COUNTERS_MULTI_LIST, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 == CYGINT_KERNEL_COUNTERS |
# CYGINT_KERNEL_COUNTERS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_KERNEL_COUNTERS |
# Requires: 1 == CYGINT_KERNEL_COUNTERS |
}; |
|
# Implement counters using a single list |
# There are two different implementations of the counter |
# objects. The first implementation stores all alarms in a |
# single linked list. The alternative implementation uses a |
# table of linked lists. A single list is more efficient in |
# terms of memory usage and is generally adequate when the |
# application only makes use of a small number of alarms. |
# |
cdl_option CYGIMP_KERNEL_COUNTERS_SINGLE_LIST { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Implement counters using a table of lists |
# There are two different implementations of the counter |
# objects. The first implementation stores all alarms in a |
# single linked list. The alternative implementation uses a |
# table of linked lists, with the size of the table being a |
# separate configurable option. For more complicated |
# operations it is better to have a table of lists since this |
# reduces the amount of computation whenever the timer goes |
# off. Assuming a table size of 8 (the default value) on |
# average the timer code will only need to check 1/8 of the |
# pending alarms instead of all of them. |
# |
cdl_component CYGIMP_KERNEL_COUNTERS_MULTI_LIST { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# Size of counter list table |
# If counters are implemented using an array of linked lists |
# then this option controls the size of the array. A larger |
# size reduces the amount of computation that needs to take |
# place whenever the timer goes off, but requires extra |
# memory. |
# |
cdl_option CYGNUM_KERNEL_COUNTERS_MULTI_LIST_SIZE { |
# This option is not active |
# The parent CYGIMP_KERNEL_COUNTERS_MULTI_LIST is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 8 |
# value_source default |
# Default value: 8 |
# Legal values: 1 to 1024 |
}; |
|
# < |
# Sort the counter list |
# Sorting the counter lists reduces the amount of work that |
# has to be done when a counter tick is processed, since the |
# next alarm to expire is always at the front of the list. |
# However, it makes adding an alarm to the list more expensive |
# since a search must be done for the correct place to put it. |
# Many alarms are used to implement timeouts, which seldom trigger, |
# so it is worthwhile optimizing this case. For this reason |
# sorted list are disabled by default. |
# |
cdl_option CYGIMP_KERNEL_COUNTERS_SORT_LIST { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Measure real-time [clock] interrupt latency |
# Measure the interrupt latency as seen by the real-time clock |
# timer interrupt. This requires hardware support, defined by |
# the HAL_CLOCK_LATENCY() macro. |
# |
cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY |
# option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY |
# DefaultValue: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY |
}; |
|
# Measure real-time [clock] DSR latency |
# Measure the DSR latency as seen by the real-time clock |
# timer interrupt. This requires hardware support, defined by |
# the HAL_CLOCK_LATENCY() macro. |
# |
cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY |
# CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0 |
# --> 0 |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY |
# CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0 |
# --> 0 |
}; |
|
# RTC resolution |
# This option automatically defines the tuple which is used to |
# initialize the RTC resolution, consisting of a numerator and |
# denominator. For more information, see the option to |
# override default clock settings |
# (CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE) and associated options. |
# |
cdl_option CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION { |
# Calculated value: CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ? "{CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_NUMERATOR, CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_DENOMINATOR}" : "{CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR}" |
# CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE == 0 |
# Flavor: data |
# Current_value: {CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR} |
}; |
|
# RTC period |
# This option automatically defines the RTC period to be used in |
# setting the system clock hardware. For more information, see the |
# option to override default clock settings |
# (CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE) and associated options. |
# |
cdl_option CYGNUM_KERNEL_COUNTERS_RTC_PERIOD { |
# Calculated value: CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ? "CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD" : "CYGNUM_HAL_RTC_PERIOD" |
# CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE == 0 |
# Flavor: data |
# Current_value: CYGNUM_HAL_RTC_PERIOD |
}; |
|
# < |
# Thread-related options |
# There are a number of configuration options related to the |
# implementation of threads, for example whether or not the |
# eCos kernel supports per-thread data. |
# |
cdl_component CYGPKG_KERNEL_THREADS { |
# There is no associated value. |
|
# The following properties are affected by this value |
# option CYGDBG_KERNEL_INSTRUMENT_THREAD |
# ActiveIf: CYGPKG_KERNEL_THREADS |
}; |
|
# > |
# Allow per-thread timers |
# This option controls whether or not the kernel should support |
# per-thread clock and alarm related functions. Also some of |
# the synchronization primitives such as semaphore and |
# condition variable timed wait operations require per-thread |
# timer support. If none of these facilities are required then |
# the option can be disabled. |
# |
cdl_option CYGFUN_KERNEL_THREADS_TIMER { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT |
# Requires: CYGFUN_KERNEL_THREADS_TIMER |
# option CYGSEM_LIBC_TIME_CLOCK_WORKING |
# Requires: CYGFUN_KERNEL_THREADS_TIMER |
}; |
|
# Support optional name for each thread |
# Threads may optionally be supplied with a name string that is |
# used to identify them during debugging. This name is only |
# present if `this option is defined. Disabling it reduces both |
# code and data size. |
# |
cdl_option CYGVAR_KERNEL_THREADS_NAME { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Keep track of all threads using a linked list |
# Threads may optionally be placed on a housekeeping list so |
# that all threads may be located easily. This is useful mainly |
# in conjunction with source-level debugging. |
# |
cdl_option CYGVAR_KERNEL_THREADS_LIST { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGFUN_KERNEL_ALL_THREADS_STACK_CHECKING |
# Requires: CYGVAR_KERNEL_THREADS_LIST |
# option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT |
# Requires: CYGVAR_KERNEL_THREADS_LIST |
}; |
|
# Keep track of the base of each thread's stack |
# This option makes the kernel keep track of the lower limit on |
# each thread's stack. It allows the kernel to adjust the lower |
# limit, thus making space for per-thread data. Note that it |
# does not imply any form of run-time stack overflow checking. |
# |
cdl_option CYGFUN_KERNEL_THREADS_STACK_LIMIT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# component CYGVAR_KERNEL_THREADS_DATA |
# Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT |
}; |
|
# Check thread stacks for overflows |
# This option enables a variety of checks for stack overflow |
# including signatures at the top and base of thread stacks, |
# which are asserted for correctness whenever a thread switches. |
# |
cdl_component CYGFUN_KERNEL_THREADS_STACK_CHECKING { |
# This option is not active |
# ActiveIf constraint: CYGPKG_INFRA_DEBUG |
# CYGPKG_INFRA_DEBUG == 0 |
# --> 0 |
# ActiveIf constraint: CYGDBG_USE_ASSERTS |
# CYGDBG_USE_ASSERTS == 0 |
# --> 0 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# Check all threads whenever possible |
# This option enables more active checking of all threads for |
# wrongdoing. In theory, checking threads other than the old and new |
# executing threads in a thread-switch is pointless, because no other |
# thread has run, so no other stack can be exceeded. But errors such |
# as memory scribbling, dangling pointers, overlapping use of store |
# or errors accessing objects adjacent to a stack which can be very |
# hard to find can be detected this way, saving debug time. |
# |
cdl_option CYGFUN_KERNEL_ALL_THREADS_STACK_CHECKING { |
# This option is not active |
# The parent CYGFUN_KERNEL_THREADS_STACK_CHECKING is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGVAR_KERNEL_THREADS_LIST |
# CYGVAR_KERNEL_THREADS_LIST == 1 |
# --> 1 |
}; |
|
# Signature size in bytes, at stack top and bottom |
# This is the size of the area reserved for a signature at the top |
# and bottom of all stacks. It also provides a buffer zone for |
# detecting overflow before external objects are corrupted, hence the |
# ability to vary it here. But if you are short of stack, increasing |
# this value will make the overflow more, not less likely, of course. |
# |
cdl_option CYGNUM_KERNEL_THREADS_STACK_CHECK_DATA_SIZE { |
# This option is not active |
# The parent CYGFUN_KERNEL_THREADS_STACK_CHECKING is not active |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 32 |
# value_source default |
# Default value: 32 |
# Legal values: 8 to 512 |
}; |
|
# < |
# Measure stack usage |
# This option allows measurement of each thread's stack by initializing |
# it to a predefined value at thread creation time. Later use of the |
# cyg_thread_measure_stack_usage() function allows the maximum stack |
# usage of the thread so far to be obtained. Note that this is not |
# necessarily the true maximum stack usage that the thread will ever |
# use since all that has been measured is the stack usage corresponding |
# to the code path followed this time, and not the code path that may |
# be followed in future. |
# |
cdl_component CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 != CYGPKG_INFRA_DEBUG |
# CYGPKG_INFRA_DEBUG == 0 |
# --> 0 |
}; |
|
# > |
# Output stack usage on thread exit |
# This will output the measured stack usage on the diagnostic |
# output when a thread exits. |
# |
cdl_option CYGDBG_KERNEL_THREADS_STACK_MEASUREMENT_VERBOSE_EXIT { |
# This option is not active |
# The parent CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# < |
# Support for per-thread data |
# doc: ref/kernel-thread-data.html |
# It is possible for the kernel to support per-thread data, in |
# other words an area of memory specific to each thread which |
# can be used to store data for that thread. This per-thread |
# data can be used by applications or by other packages such as |
# the ISO C library. |
# |
cdl_component CYGVAR_KERNEL_THREADS_DATA { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT |
# CYGFUN_KERNEL_THREADS_STACK_LIMIT == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_I18N_PER_THREAD_MB |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# option CYGSEM_LIBC_PER_THREAD_RAND |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK |
# DefaultValue: CYGVAR_KERNEL_THREADS_DATA |
# option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# option CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# option CYGSEM_ERROR_PER_THREAD_ERRNO |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
}; |
|
# > |
# Number of words of per-thread data |
# It is possible for the kernel to support per-thread data, in |
# other words an area of memory specific to each thread which |
# can be used to store data for that thread. This per-thread |
# data can be used by applications or by other packages such as |
# the ISO C library. This configuration option controls the |
# number of words of per-thread data that the kernel will |
# allow. In the current implementation a bitmask is used to identify |
# used per-thread data slots and so the maximum legal value must |
# remain 32. |
# |
cdl_option CYGNUM_KERNEL_THREADS_DATA_MAX { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 6 |
# value_source default |
# Default value: 6 |
# Legal values: 4 to 32 |
}; |
|
# Bitmap of preallocated slots of thread data |
# Per thread data options. Per thread data support is based loosely |
# on that defined by POSIX. Each thread has an array of slots, up to |
# CYGNUM_KERNEL_THREADS_DATA_MAX, that may contain data. Some of the |
# slots have been preallocated to specific packages. Others may be |
# allocated dynamically. |
# |
cdl_component CYGNUM_KERNEL_THREADS_DATA_ALL { |
# Calculated value: 15 |
# Flavor: data |
# Current_value: 15 |
}; |
|
# > |
# Slot 0 preallocated for the kernel |
# This option defines the index of a per-thread data |
# slot which is reserved by |
# the eCos kernel |
# for private use. |
# |
cdl_option CYGNUM_KERNEL_THREADS_DATA_KERNEL { |
# Calculated value: 0 |
# Flavor: data |
# Current_value: 0 |
}; |
|
# Slot 1 preallocated for uITRON |
# This option defines the index of a per-thread data |
# slot which is reserved by |
# the uITRON compatibility layer |
# for private use. |
# |
cdl_option CYGNUM_KERNEL_THREADS_DATA_ITRON { |
# Calculated value: 1 |
# Flavor: data |
# Current_value: 1 |
}; |
|
# Slot 2 preallocated for errno |
# This option defines the index of a per-thread data |
# slot which is reserved for use by an errno variable. |
# |
cdl_option CYGNUM_KERNEL_THREADS_DATA_ERRNO { |
# Calculated value: 2 |
# Flavor: data |
# Current_value: 2 |
}; |
|
# Slot 3 preallocated for POSIX |
# This option defines the index of a per-thread data |
# slot which is reserved by |
# POSIX |
# for private use. |
# |
cdl_option CYGNUM_KERNEL_THREADS_DATA_POSIX { |
# Calculated value: 3 |
# Flavor: data |
# Current_value: 3 |
}; |
|
# < |
# < |
# Thread destructors |
# doc: ref/kernel-thread-destructors.html |
# This option enables support for registered destructor functions to |
# be called on thread exit. |
# |
cdl_component CYGPKG_KERNEL_THREADS_DESTRUCTORS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# > |
# Number of possible destructors |
# This option gives the number of possible destructors allowed. |
# Increasing this will increase the size of every |
# thread control structure if per-thread destructors are |
# enabled. |
# |
cdl_option CYGNUM_KERNEL_THREADS_DESTRUCTORS { |
# This option is not active |
# The parent CYGPKG_KERNEL_THREADS_DESTRUCTORS is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 8 |
# value_source default |
# Default value: 8 |
# Legal values: 1 to 65535 |
}; |
|
# Per-thread destructors |
# Enabling this option makes the thread destructors a per-thread |
# property, with each thread having its own list of destructors. |
# Disabling this option makes the thread destructor list |
# global so all threads have the same destructors. |
# |
cdl_option CYGSEM_KERNEL_THREADS_DESTRUCTORS_PER_THREAD { |
# This option is not active |
# The parent CYGPKG_KERNEL_THREADS_DESTRUCTORS is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Stack size for the idle thread |
# This configuration option specifies the stack size in bytes |
# for the idle thread. Unless the HAL is configured to use a |
# separate interrupt stack this size must be sufficient to meet |
# the requirements of all interrupt handlers - these |
# requirements are cumulative if nested interrupted are |
# enabled. Depending on the target architecture, the stack size |
# typically has to be a multiple of eight or sixteen bytes. |
# This will be overridden where it is used if the |
# architectural HAL requires a minimum stack size |
# to handle interrupts correctly. |
# |
cdl_option CYGNUM_KERNEL_THREADS_IDLE_STACK_SIZE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 2048 |
# value_source default |
# Default value: 2048 |
# Legal values: 512 to 65536 |
}; |
|
# Maximal suspend count |
# This option provides for an assertion that the count value for |
# counted thread suspends do not exceed set limits. This is to help |
# with debugging, to allow a runaway loop, for example, to be |
# detected more easily. |
# If the option is not defined, no assert is included. Whether asserts |
# are themselves included depends on infrastructure configury in |
# infra.h |
# |
cdl_option CYGNUM_KERNEL_MAX_SUSPEND_COUNT_ASSERT { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 500 |
# value_source default |
# Default value: 500 |
}; |
|
# Maximal wake count |
# This option provides for an assertion that the count value for |
# counted thread wakeups do not exceed set limits. This is to |
# help with debugging, to allow a runaaway loop, for example, to |
# be detected more easily. |
# If the option is not defined, no assert is included. Whether asserts |
# are themselves included depends on infrastructure configury in |
# infra.h |
# |
cdl_option CYGNUM_KERNEL_MAX_COUNTED_WAKE_COUNT_ASSERT { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 500 |
# value_source default |
# Default value: 500 |
}; |
|
# Idle thread must always yield |
# If the scheduler configuration only has a single priority |
# level, then the idle thread must yield each time around its loop. |
# |
cdl_option CYGIMP_IDLE_THREAD_YIELD { |
# This option is not active |
# ActiveIf constraint: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1) |
# CYGNUM_KERNEL_SCHED_PRIORITIES == 32 |
# --> 0 |
|
# Calculated value: 1 |
# Flavor: bool |
# Current value: 1 |
}; |
|
# < |
# Synchronization primitives |
# The eCos kernel supports a number of different |
# synchronization primitives such as mutexes, semaphores, |
# condition variables, and message boxes. There are |
# configuration options to control the exact behaviour of some |
# of these synchronization primitives. |
# |
cdl_component CYGPKG_KERNEL_SYNCH { |
# There is no associated value. |
|
# The following properties are affected by this value |
# option CYGDBG_KERNEL_INSTRUMENT_MUTEX |
# ActiveIf: CYGPKG_KERNEL_SYNCH |
# option CYGDBG_KERNEL_INSTRUMENT_CONDVAR |
# ActiveIf: CYGPKG_KERNEL_SYNCH |
# option CYGDBG_KERNEL_INSTRUMENT_BINSEM |
# ActiveIf: CYGPKG_KERNEL_SYNCH |
# option CYGDBG_KERNEL_INSTRUMENT_CNTSEM |
# ActiveIf: CYGPKG_KERNEL_SYNCH |
# option CYGDBG_KERNEL_INSTRUMENT_MBOXT |
# ActiveIf: CYGPKG_KERNEL_SYNCH |
}; |
|
# > |
# Priority inversion protection protocols |
# doc: ref/kernel-mutexes.html |
# This component controls the protocols used to protect mutexes against |
# priority inversion. If this option is enabled it defines which |
# algorithm is used to implement this protection. At present only |
# one such algorithm is defined: "SIMPLE". The implementation |
# will only work in the mlqueue scheduler, and it does not handle the |
# rare case of nested mutexes completely correctly. However it is |
# both fast and deterministic. |
# |
cdl_component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL { |
# ActiveIf constraint: CYGSEM_KERNEL_SCHED_MLQUEUE |
# CYGSEM_KERNEL_SCHED_MLQUEUE == 1 |
# --> 1 |
|
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 1 SIMPLE |
# value_source default |
# Default value: 1 SIMPLE |
# Legal values: "SIMPLE" |
# Requires: CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 |
# CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 |
# --> 1 |
}; |
|
# > |
# Enable priority inheritance protocol |
# This option enables priority inheritance protocol. This protocol |
# causes the owner of a mutex to be executed at the highest priority |
# of the threads waiting for access to the mutex. |
# |
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT |
# DefaultValue: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ? |
# "INHERIT" : |
# CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ? |
# "CEILING" : "NONE" |
}; |
|
# Enable priority ceiling protocol |
# This option enables priority ceiling protocol. This protocol |
# causes the owner of a mutex to be executed at a priority |
# associated with the mutex. |
# |
cdl_component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY |
# ActiveIf: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING |
# option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT |
# DefaultValue: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ? |
# "INHERIT" : |
# CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ? |
# "CEILING" : "NONE" |
}; |
|
# > |
# Default priority ceiling |
# This option defines the default priority ceiling to be |
# used if the chosen default priority inversion protocol is |
# priority ceoptioniling protocol. The default value for this is zero, |
# making all such mutexes boost threads to the maximum priority. |
# |
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY { |
# ActiveIf constraint: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING |
# CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING == 1 |
# --> 1 |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to CYGNUM_KERNEL_SCHED_PRIORITIES - 1 |
# CYGNUM_KERNEL_SCHED_PRIORITIES == 32 |
}; |
|
# < |
# No priority inversion protocol |
# This option enables the ability to have no priority inversion protocol. |
# It is equivalent to disabling the priority inversion protocol at |
# the top level, but is necessary for the runtime and default |
# selection options. |
# |
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Default priority inversion protocol |
# This option defines the default inversion protocol used for mutexes that |
# are created without an explicit protocol being specified. The protocol |
# chosen by default is to use priority inheritance if it is present otherwise |
# priority ceiling, or none if neither is present. |
# |
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT { |
# ActiveIf constraint: CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 |
# CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT == 3 |
# --> 1 |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value INHERIT |
# value_source default |
# Default value: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ? |
# "INHERIT" : |
# CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ? |
# "CEILING" : "NONE" |
# CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT == 1 |
# CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING == 1 |
# --> INHERIT |
# Legal values: "INHERIT" "CEILING" "NONE" |
}; |
|
# Specify mutex priority inversion protocol at runtime |
# This option controls whether the priority inversion protocol used by |
# a mutex can be specified when that mutex is created. |
# |
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC { |
# ActiveIf constraint: CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 |
# CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT == 3 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Number of protocols selected |
# |
cdl_interface CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT { |
# Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT, active, enabled |
# Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING, active, enabled |
# Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 3 |
|
# The following properties are affected by this value |
# option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT |
# ActiveIf: CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 |
# option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC |
# ActiveIf: CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 |
}; |
|
# < |
# Message box blocking put support |
# doc: ref/kernel-mail-boxes.html |
# Message boxes can support three different versions of the |
# put-message operation. The first is tryput(), which will fail |
# if the message box is already full. The other two are the |
# ordinary put() function which will block if the message box |
# is full, and a timed put() operation which will block for |
# upto a certain length of time if the message box is currently |
# full. The blocking versions require extra memory in the |
# message box data structure and extra code in the other |
# message box functions, so they can be disabled if the |
# application does not require them. If this option is enabled |
# then the system will always provide the blocking put() |
# function, and it will also provide the timed put() function |
# if thread timers are enabled. |
# |
cdl_option CYGMFN_KERNEL_SYNCH_MBOXT_PUT_CAN_WAIT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Message box queue size |
# doc: ref/kernel-mail-boxes.html |
# This configuration option controls the number of messages |
# that can be queued in a message box before a non-blocking |
# put() operation will fail or a blocking put() operation will |
# block. The cost in memory is one pointer per message box for |
# each possible message. |
# |
cdl_option CYGNUM_KERNEL_SYNCH_MBOX_QUEUE_SIZE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 10 |
# value_source default |
# Default value: 10 |
# Legal values: 1 to 65535 |
}; |
|
# Condition variable timed-wait support |
# doc: ref/kernel-condition-variables.html |
# This option enables the condition variable timed wait |
# facility. |
# |
cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_KERNEL_THREADS_TIMER |
# CYGFUN_KERNEL_THREADS_TIMER == 1 |
# --> 1 |
}; |
|
# Condition variable explicit mutex wait support |
# doc: ref/kernel-condition-variables.html |
# This option enables the condition variable explicit mutex wait |
# facility. By default condition variables in eCos are created with |
# a statically associated mutex. This option permits wait (and timed wait |
# if CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT is enabled) to provide a |
# different mutex as an argument. This makes no difference to the semantics |
# the wait operation except that a different mutex will be used during it. |
# |
cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_WAIT_MUTEX { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Avoid inlines in mqueue implementation |
# With this option disabled, the 'mqueue' message queue implementation |
# provides most of its implementation via inlines. However this can |
# adversely affect code size in application that make lots of mqueue |
# calls from different places, so enabling this option provides |
# non-inline versions to be used instead. |
# |
cdl_option CYGIMP_KERNEL_SYNCH_MQUEUE_NOT_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# < |
# Kernel instrumentation |
# The current release of the kernel contains an initial version |
# of instrumentation support. The various parts of the kernel |
# will invoke instrumentation routines whenever appropriate |
# events occur, and these will be stored in a circular buffer |
# for later reference. |
# |
cdl_component CYGPKG_KERNEL_INSTRUMENT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
}; |
|
# > |
# Use buffer provided by the application |
# In most circumstances the kernel should provide the |
# instrumentation circular buffer itself. Occasionally |
# application code may wish to provide the buffer instead, |
# giving the application code more convenient access to the |
# buffer. This also makes it possible to put the circular |
# buffer in special areas of memory, for example a region that |
# is shared with the host. |
# |
cdl_option CYGVAR_KERNEL_INSTRUMENT_EXTERNAL_BUFFER { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Size of instrumentation buffer size |
# If kernel instrumentation is enabled then the instrumentation |
# data goes into a circular buffer. A larger buffer allows |
# more data to be stored, but at a significant cost in memory. |
# The value of this option corresponds to the number of entries |
# in the table, and typically each entry will require 16 bytes |
# of memory. |
# |
cdl_option CYGNUM_KERNEL_INSTRUMENT_BUFFER_SIZE { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 256 |
# value_source default |
# Default value: 256 |
# Legal values: 16 to 0x100000 |
}; |
|
# Wrap instrument buffer |
# When the instrumentation buffer is full it can either be restarted |
# from the beginning, overwriting older data, or it can stop at the |
# end. The former is useful if you want to look at the last entries |
# made while the latter is useful if you want to look at the first |
# few. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_BUFFER_WRAP { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Perform selective instrumentation |
# The kernel can either collect all instrumentation events, or |
# it can filter out events at runtime based on a set of flags. |
# For example it would be possible to decide at runtime that |
# only scheduler and interrupt instrumentation flags are of |
# interest and that all other flags should be ignored. This |
# flag mechanism involves extra code and processor cycle |
# overhead in the instrumentation code, so it can be disabled |
# if the application developer is interested in all |
# instrumentation events. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_FLAGS { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument the scheduler |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the scheduling code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_SCHED { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_SCHED |
# CYGPKG_KERNEL_SCHED == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument thread operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the code that manipulates threads. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_THREAD { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_THREADS |
# CYGPKG_KERNEL_THREADS == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument interrupts |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the interrupt handling code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_INTR { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_INTERRUPTS |
# CYGPKG_KERNEL_INTERRUPTS == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument mutex operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the mutex code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_MUTEX { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_SYNCH |
# CYGPKG_KERNEL_SYNCH == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument condition variable operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the condition variable code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_CONDVAR { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_SYNCH |
# CYGPKG_KERNEL_SYNCH == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument binary semaphore operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the binary semaphore code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_BINSEM { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_SYNCH |
# CYGPKG_KERNEL_SYNCH == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument counting semaphore operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the counting semaphore code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_CNTSEM { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_SYNCH |
# CYGPKG_KERNEL_SYNCH == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument message box operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the message box code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_MBOXT { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGPKG_KERNEL_SYNCH |
# CYGPKG_KERNEL_SYNCH == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument clock operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the real-time clock code. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_CLOCK { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument alarm-related operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the code related to alarm operations. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_ALARM { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Instrument SMP-related operations |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not instrumentation support is compiled into |
# the code related to SMP operations. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_SMP { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
# ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Support application-level instrumentation |
# It is possible to perform selective instrumentation at |
# run-time. It is also possible to disable instrumentation |
# in various kernel components at compile-time, thus |
# reducing the code size overheads. This option controls |
# whether or not application-level instrumentation gets |
# compiled in. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_USER { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Print user friendly instrument messages |
# Include code which will convert the instrument type field |
# into a more human understandable string |
# |
cdl_component CYGDBG_KERNEL_INSTRUMENT_MSGS { |
# This option is not active |
# The parent CYGPKG_KERNEL_INSTRUMENT is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# Rebuild the header file |
# Make (using a shell script) include/cyg/kernel/instrument_desc.h in |
# your build tree; this is normally simply copied from the repository. |
# If you make a permanent change to include/instrmnt.h, such that |
# instrument_desc.h needs updating, it's up to you to first delete the |
# master file |
# ECOS_REPOSITORY/kernel/VERSION/include/instrument_desc.h |
# in your source repository, make the new version by enabling this |
# option then copy the new file |
# back from your build place to its source in |
# ECOS_REPOSITORY/kernel/VERSION/include/instrument_desc.h |
# and/or commit this to any version control system that you use. |
# |
cdl_option CYGDBG_KERNEL_INSTRUMENT_MSGS_BUILD_HEADERFILE { |
# This option is not active |
# The parent CYGDBG_KERNEL_INSTRUMENT_MSGS is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Build the host tool to print out a dump |
# Generate a host program which can dump the instrumentation |
# data in a human readable format. You have to somehow get the |
# instrumentation buffer into a file on the host. 'Exercise for |
# the reader' as university lecturers tend to say. |
# |
cdl_component CYGDBG_KERNEL_INSTRUMENT_BUILD_HOST_DUMP { |
# This option is not active |
# The parent CYGDBG_KERNEL_INSTRUMENT_MSGS is not active |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# < |
# < |
# Source-level debugging support |
# If the source level debugger gdb is to be used for debugging |
# application code then it may be necessary to configure in support |
# for this in the kernel. |
# |
cdl_component CYGPKG_KERNEL_DEBUG { |
# There is no associated value. |
}; |
|
# > |
# Include GDB multi-threading debug support |
# This option enables some extra kernel code which is needed |
# to support multi-threaded source level debugging. |
# |
cdl_option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGVAR_KERNEL_THREADS_LIST |
# CYGVAR_KERNEL_THREADS_LIST == 1 |
# --> 1 |
# Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT |
# CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT |
# ActiveIf: CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT |
}; |
|
# < |
# Kernel APIs |
# The eCos kernel is implemented in C++, so a C++ interface |
# to the kernel is always available. There is also an optional |
# C API. Additional API's may be provided in future versions. |
# |
cdl_component CYGPKG_KERNEL_API { |
# There is no associated value. |
}; |
|
# > |
# Provide C API |
# The eCos kernel is implemented in C++, but there is an |
# optional C API for use by application code. This C API can be |
# disabled if the application code does not invoke the kernel |
# directly, but instead uses higher level code such as the |
# uITRON compatibility layer. |
# |
cdl_option CYGFUN_KERNEL_API_C { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
# option CYGPKG_KERNEL_TESTS |
# Calculated: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
# option CYGFUN_MEMALLOC_KAPI |
# DefaultValue: CYGFUN_KERNEL_API_C |
}; |
|
# < |
# Kernel build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_KERNEL_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the eCos kernel. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_KERNEL_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the eCos kernel. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_KERNEL_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Kernel tests |
# This option specifies the set of tests for the eCos kernel. |
# |
cdl_option CYGPKG_KERNEL_TESTS { |
# Calculated value: |
# "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" |
# . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest" : "") |
# . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "") |
# . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "") |
# . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "") |
# |
# CYGFUN_KERNEL_API_C == 1 |
# CYGPKG_INFRA_DEBUG == 0 |
# CYGPKG_KERNEL_INSTRUMENT == 0 |
# CYGFUN_KERNEL_API_C == 1 |
# CYGPKG_KERNEL_SMP_SUPPORT == 0 |
# CYGFUN_KERNEL_API_C == 1 |
# CYGINT_HAL_TESTS_NO_CACHES == 0 |
# CYGFUN_KERNEL_API_C == 1 |
# Flavor: data |
# Current_value: tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/tm_basic tests/fptest tests/dhrystone tests/kcache1 tests/kcache2 |
}; |
|
# < |
# < |
# Dynamic memory allocation |
# This package provides memory allocator infrastructure required for |
# dynamic memory allocators, including the ISO standard malloc |
# interface. It also contains some sample implementations. |
# |
cdl_package CYGPKG_MEMALLOC { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
}; |
|
# > |
# Memory allocator implementations |
# This component contains configuration options related to the |
# various memory allocators available. |
# |
cdl_component CYGPKG_MEMALLOC_ALLOCATORS { |
# There is no associated value. |
}; |
|
# > |
# Fixed block allocator |
# This component contains configuration options related to the |
# fixed block memory allocator. |
# |
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_FIXED { |
# There is no associated value. |
}; |
|
# > |
# Make thread safe |
# With this option enabled, this allocator will be |
# made thread-safe. Additionally allocation functions |
# are made available that allow a thread to wait |
# until memory is available. |
# |
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE { |
# ActiveIf constraint: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Simple variable block allocator |
# This component contains configuration options related to the |
# simple variable block memory allocator. This allocator is not |
# very fast, and in particular does not scale well with large |
# numbers of allocations. It is however very compact in terms of |
# code size and does not have very much overhead per allocation. |
# |
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_VARIABLE { |
# There is no associated value. |
}; |
|
# > |
# Make thread safe |
# With this option enabled, this allocator will be |
# made thread-safe. Additionally allocation functions |
# are added that allow a thread to wait until memory |
# are made available that allow a thread to wait |
# until memory is available. |
# |
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE { |
# ActiveIf constraint: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Coalesce memory |
# The variable-block memory allocator can perform coalescing |
# of memory whenever the application code releases memory back |
# to the pool. This coalescing reduces the possibility of |
# memory fragmentation problems, but involves extra code and |
# processor cycles. |
# |
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE |
# Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE |
}; |
|
# < |
# Doug Lea's malloc |
# This component contains configuration options related to the |
# port of Doug Lea's memory allocator, normally known as |
# dlmalloc. dlmalloc has a reputation for being both fast |
# and space-conserving, as well as resisting fragmentation well. |
# It is a common choice for a general purpose allocator and |
# has been used in both newlib and Linux glibc. |
# |
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_DLMALLOC { |
# There is no associated value. |
}; |
|
# > |
# Debug build |
# Doug Lea's malloc implementation has substantial amounts |
# of internal checking in order to verify the operation |
# and consistency of the allocator. However this imposes |
# substantial overhead on each operation. Therefore this |
# checking may be individually disabled. |
# |
cdl_option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 != CYGDBG_USE_ASSERTS |
# CYGDBG_USE_ASSERTS == 0 |
# --> 0 |
# Requires: CYGDBG_USE_ASSERTS |
# CYGDBG_USE_ASSERTS == 0 |
# --> 0 |
}; |
|
# Make thread safe |
# With this option enabled, this allocator will be |
# made thread-safe. Additionally allocation functions |
# are made available that allow a thread to wait |
# until memory is available. |
# |
cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE { |
# ActiveIf constraint: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
}; |
|
# Support more than one instance |
# Having this option disabled allows important |
# implementation structures to be declared as a single |
# static instance, allowing faster access. However this |
# would fail if there is more than one instance of |
# the dlmalloc allocator class. Therefore this option can |
# be enabled if multiple instances are required. Note: as |
# a special case, if this allocator is used as the |
# implementation of malloc, and it can be determined there |
# is more than one malloc pool, then this option will be |
# silently enabled. |
# |
cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_SAFE_MULTIPLE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Use system memcpy() and memset() |
# This may be used to control whether memset() and memcpy() |
# are used within the implementation. The alternative is |
# to use some macro equivalents, which some people report |
# are faster in some circumstances. |
# |
cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
}; |
|
# < |
# Variable block allocator with separate metadata |
# This component contains configuration options related to the |
# variable block memory allocator with separate metadata. |
# |
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_SEPMETA { |
# There is no associated value. |
}; |
|
# > |
# Make thread safe |
# With this option enabled, this allocator will be |
# made thread-safe. Additionally allocation functions |
# are made available that allow a thread to wait |
# until memory is available. |
# |
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_SEPMETA_THREADAWARE { |
# ActiveIf constraint: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# < |
# Kernel C API support for memory allocation |
# This option must be enabled to provide the extensions required |
# to support integration into the kernel C API. |
# |
cdl_option CYGFUN_MEMALLOC_KAPI { |
# ActiveIf constraint: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGFUN_KERNEL_API_C |
# CYGFUN_KERNEL_API_C == 1 |
# --> 1 |
}; |
|
# malloc(0) returns NULL |
# This option controls the behavior of malloc(0) ( or calloc with |
# either argument 0 ). It is permitted by the standard to return |
# either a NULL pointer or a unique pointer. Enabling this option |
# forces a NULL pointer to be returned. |
# |
cdl_option CYGSEM_MEMALLOC_MALLOC_ZERO_RETURNS_NULL { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# malloc() and supporting allocators |
# This component enables support for dynamic memory |
# allocation as supplied by the functions malloc(), |
# free(), calloc() and realloc(). As these |
# functions are often used, but can have quite an |
# overhead, disabling them here can ensure they |
# cannot even be used accidentally when static |
# allocation is preferred. Within this component are |
# various allocators that can be selected for use |
# as the underlying implementation of the dynamic |
# allocation functions. |
# |
cdl_component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS { |
# ActiveIf constraint: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# Use external heap definition |
# This option allows other components in the |
# system to override the default system |
# provision of heap memory pools. This should |
# be set to a header which provides the equivalent |
# definitions to <pkgconf/heaps.hxx>. |
# |
cdl_component CYGBLD_MEMALLOC_MALLOC_EXTERNAL_HEAP_H { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# malloc() allocator implementations |
# |
cdl_interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS { |
# Implemented by CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE, active, disabled |
# Implemented by CYGIMP_MEMALLOC_MALLOC_DLMALLOC, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 |
# CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS |
# Requires: CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 |
}; |
|
# malloc() implementation instantiation data |
# Memory allocator implementations that are capable of being |
# used underneath malloc() must be instantiated. The code |
# to do this is set in this option. It is only intended to |
# be set by the implementation, not the user. |
# |
cdl_option CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value <cyg/memalloc/dlmalloc.hxx> |
# value_source default |
# Default value: <cyg/memalloc/dlmalloc.hxx> |
|
# The following properties are affected by this value |
# option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE |
# Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "<cyg/memalloc/memvar.hxx>" |
# option CYGIMP_MEMALLOC_MALLOC_DLMALLOC |
# Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "<cyg/memalloc/dlmalloc.hxx>" |
}; |
|
# Simple variable block implementation |
# This causes malloc() to use the simple |
# variable block allocator. |
# |
cdl_option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "<cyg/memalloc/memvar.hxx>" |
# CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == <cyg/memalloc/dlmalloc.hxx> |
# --> 0 |
# Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE |
# CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE == 1 |
# --> 1 |
}; |
|
# Doug Lea's malloc implementation |
# This causes malloc() to use a version of Doug Lea's |
# malloc (dlmalloc) as the underlying implementation. |
# |
cdl_option CYGIMP_MEMALLOC_MALLOC_DLMALLOC { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "<cyg/memalloc/dlmalloc.hxx>" |
# CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == <cyg/memalloc/dlmalloc.hxx> |
# --> 1 |
}; |
|
# < |
# Size of the fallback dynamic memory pool in bytes |
# If *no* heaps are configured in your memory layout, |
# dynamic memory allocation by |
# malloc() and calloc() must be from a fixed-size, |
# contiguous memory pool (note here that it is the |
# pool that is of a fixed size, but malloc() is still |
# able to allocate variable sized chunks of memory |
# from it). This option is the size |
# of that pool, in bytes. Note that not all of |
# this is available for programs to |
# use - some is needed for internal information |
# about memory regions, and some may be lost to |
# ensure that memory allocation only returns |
# memory aligned on word (or double word) |
# boundaries - a very common architecture |
# constraint. |
# |
cdl_option CYGNUM_MEMALLOC_FALLBACK_MALLOC_POOL_SIZE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 16384 |
# value_source default |
# Default value: 16384 |
# Legal values: 32 to 0x7fffffff |
}; |
|
# Common memory allocator package build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_MEMALLOC_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_MEMALLOC_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_MEMALLOC_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Tests |
# This option specifies the set of tests for this package. |
# |
cdl_option CYGPKG_MEMALLOC_TESTS { |
# Calculated value: "tests/dlmalloc1 tests/dlmalloc2 tests/heaptest tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc tests/sepmeta1 tests/sepmeta2" |
# Flavor: data |
# Current_value: tests/dlmalloc1 tests/dlmalloc2 tests/heaptest tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc tests/sepmeta1 tests/sepmeta2 |
}; |
|
# < |
# < |
# ISO C and POSIX infrastructure |
# eCos supports implementations of ISO C libraries and POSIX |
# implementations. This package provides infrastructure used by |
# all such implementations. |
# |
cdl_package CYGPKG_ISOINFRA { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
|
# The following properties are affected by this value |
# component CYGPKG_IO_SERIAL_TERMIOS |
# Requires: CYGPKG_ISOINFRA |
# component CYGPKG_IO_SERIAL_TERMIOS |
# DefaultValue: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO |
# option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY |
# Requires: CYGPKG_ISOINFRA |
# option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY |
# DefaultValue: 0 != CYGPKG_ISOINFRA |
# component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS |
# ActiveIf: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_I18N |
# Requires: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_SETJMP |
# Requires: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_SIGNALS |
# Requires: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_STARTUP |
# Requires: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_STDLIB |
# Requires: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_STRING |
# Requires: CYGPKG_ISOINFRA |
# package CYGPKG_LIBC_TIME |
# Requires: CYGPKG_ISOINFRA |
}; |
|
# > |
# Startup and termination |
# |
cdl_component CYGPKG_ISO_STARTUP { |
# There is no associated value. |
}; |
|
# > |
# main() startup implementations |
# Implementations of this interface arrange for a user-supplied |
# main() to be called in an ISO compatible environment. |
# |
cdl_interface CYGINT_ISO_MAIN_STARTUP { |
# Implemented by CYGPKG_LIBC_STARTUP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_MAIN_STARTUP |
# CYGINT_ISO_MAIN_STARTUP == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_MAIN_STARTUP |
# Requires: 1 >= CYGINT_ISO_MAIN_STARTUP |
}; |
|
# environ implementations |
# Implementations of this interface provide the environ |
# variable required by POSIX. |
# |
cdl_interface CYGINT_ISO_ENVIRON { |
# Implemented by CYGPKG_LIBC_STARTUP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_ENVIRON |
# CYGINT_ISO_ENVIRON == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_ENVIRON |
# Requires: 1 >= CYGINT_ISO_ENVIRON |
}; |
|
# < |
# ctype.h functions |
# |
cdl_component CYGPKG_ISO_CTYPE_H { |
# There is no associated value. |
}; |
|
# > |
# Number of implementations of ctype functions |
# |
cdl_interface CYGINT_ISO_CTYPE { |
# Implemented by CYGPKG_LIBC_I18N, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_CTYPE |
# CYGINT_ISO_CTYPE == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_CTYPE |
# Requires: 1 >= CYGINT_ISO_CTYPE |
# package CYGPKG_LIBC_STDLIB |
# Requires: CYGINT_ISO_CTYPE |
# option CYGFUN_LIBC_STRING_BSD_FUNCS |
# Requires: CYGINT_ISO_CTYPE |
}; |
|
# Ctype implementation header |
# |
cdl_option CYGBLD_ISO_CTYPE_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/i18n/ctype.inl> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# option CYGIMP_LIBC_I18N_CTYPE_INLINES |
# Requires: CYGBLD_ISO_CTYPE_HEADER == "<cyg/libc/i18n/ctype.inl>" |
}; |
|
# < |
# Error handling |
# |
cdl_component CYGPKG_ISO_ERRNO { |
# There is no associated value. |
}; |
|
# > |
# Number of implementations of error codes |
# |
cdl_interface CYGINT_ISO_ERRNO_CODES { |
# Implemented by CYGPKG_ERROR, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_ERRNO_CODES |
# CYGINT_ISO_ERRNO_CODES == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_ERRNO_CODES |
# Requires: 1 >= CYGINT_ISO_ERRNO_CODES |
# component CYGPKG_IO_SERIAL_TERMIOS |
# Requires: CYGINT_ISO_ERRNO_CODES |
# component CYGPKG_IO_SERIAL_TERMIOS |
# DefaultValue: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO |
# option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO |
# Requires: CYGINT_ISO_ERRNO_CODES |
# option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO |
# Requires: CYGINT_ISO_ERRNO_CODES |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGINT_ISO_ERRNO_CODES |
}; |
|
# Error codes implementation header |
# |
cdl_option CYGBLD_ISO_ERRNO_CODES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/error/codes.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_ERROR |
# Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "<cyg/error/codes.h>" |
}; |
|
# Number of implementations of errno variable |
# |
cdl_interface CYGINT_ISO_ERRNO { |
# Implemented by CYGPKG_ERROR_ERRNO, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_ERRNO |
# CYGINT_ISO_ERRNO == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_ERRNO |
# Requires: 1 >= CYGINT_ISO_ERRNO |
# component CYGPKG_IO_SERIAL_TERMIOS |
# Requires: CYGINT_ISO_ERRNO |
# component CYGPKG_IO_SERIAL_TERMIOS |
# DefaultValue: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO |
# option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO |
# Requires: CYGINT_ISO_ERRNO |
# option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO |
# Requires: CYGINT_ISO_ERRNO |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGINT_ISO_ERRNO |
}; |
|
# errno variable implementation header |
# |
cdl_option CYGBLD_ISO_ERRNO_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/error/errno.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# component CYGPKG_ERROR_ERRNO |
# Requires: CYGBLD_ISO_ERRNO_HEADER == "<cyg/error/errno.h>" |
}; |
|
# < |
# Locale-related functions |
# |
cdl_component CYGPKG_ISO_LOCALE { |
# There is no associated value. |
}; |
|
# > |
# Number of implementations of locale functions |
# |
cdl_interface CYGINT_ISO_LOCALE { |
# Implemented by CYGPKG_LIBC_I18N, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_LOCALE |
# CYGINT_ISO_LOCALE == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_LOCALE |
# Requires: 1 >= CYGINT_ISO_LOCALE |
}; |
|
# Locale implementation header |
# |
cdl_option CYGBLD_ISO_LOCALE_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Standard I/O-related functionality |
# |
cdl_component CYGPKG_ISO_STDIO { |
# There is no associated value. |
}; |
|
# > |
# Number of implementations of stdio file types |
# |
cdl_interface CYGINT_ISO_STDIO_FILETYPES { |
# Implemented by CYGPKG_LIBC_STDIO, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_FILETYPES |
# CYGINT_ISO_STDIO_FILETYPES == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_FILETYPES |
# Requires: 1 >= CYGINT_ISO_STDIO_FILETYPES |
}; |
|
# Stdio file types implementation header |
# |
cdl_option CYGBLD_ISO_STDIO_FILETYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdio/stdio.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGBLD_ISO_STDIO_FILETYPES_HEADER == "<cyg/libc/stdio/stdio.h>" |
}; |
|
# Stdio standard streams implementations |
# |
cdl_interface CYGINT_ISO_STDIO_STREAMS { |
# Implemented by CYGPKG_LIBC_STDIO, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_STREAMS |
# CYGINT_ISO_STDIO_STREAMS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_STREAMS |
# Requires: 1 >= CYGINT_ISO_STDIO_STREAMS |
}; |
|
# Stdio standard streams implementation header |
# This header file must define stdin, stdout |
# and stderr. |
# |
cdl_option CYGBLD_ISO_STDIO_STREAMS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdio/stdio.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGBLD_ISO_STDIO_STREAMS_HEADER == "<cyg/libc/stdio/stdio.h>" |
}; |
|
# Number of implementations of stdio file operations |
# |
cdl_interface CYGINT_ISO_STDIO_FILEOPS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_STDIO_FILEOPS |
# CYGINT_ISO_STDIO_FILEOPS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_FILEOPS |
# Requires: 1 >= CYGINT_ISO_STDIO_FILEOPS |
}; |
|
# Stdio file operations implementation header |
# This header controls the file system operations on a file |
# such as remove(), rename(), tmpfile(), tmpnam() and associated |
# constants. |
# |
cdl_option CYGBLD_ISO_STDIO_FILEOPS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of stdio file access functionals |
# |
cdl_interface CYGINT_ISO_STDIO_FILEACCESS { |
# Implemented by CYGPKG_LIBC_STDIO, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_FILEACCESS |
# CYGINT_ISO_STDIO_FILEACCESS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_FILEACCESS |
# Requires: 1 >= CYGINT_ISO_STDIO_FILEACCESS |
# option CYGSEM_LIBC_EXIT_CALLS_FFLUSH |
# Requires: CYGINT_ISO_STDIO_FILEACCESS |
# option CYGSEM_LIBC_EXIT_CALLS_FFLUSH |
# DefaultValue: 0 != CYGINT_ISO_STDIO_FILEACCESS |
}; |
|
# Stdio file access implementation header |
# This header controls the file access operations |
# such as fclose(), fflush(), fopen(), freopen(), setbuf(), |
# setvbuf(), and associated constants. |
# |
cdl_option CYGBLD_ISO_STDIO_FILEACCESS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdio/stdio.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGBLD_ISO_STDIO_FILEACCESS_HEADER == "<cyg/libc/stdio/stdio.h>" |
}; |
|
# Number of implementations of stdio formatted I/O |
# |
cdl_interface CYGINT_ISO_STDIO_FORMATTED_IO { |
# Implemented by CYGPKG_LIBC_STDIO, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_FORMATTED_IO |
# CYGINT_ISO_STDIO_FORMATTED_IO == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_FORMATTED_IO |
# Requires: 1 >= CYGINT_ISO_STDIO_FORMATTED_IO |
}; |
|
# Stdio formatted I/O implementation header |
# |
cdl_option CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdio/stdio.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == "<cyg/libc/stdio/stdio.h>" |
}; |
|
# Number of implementations of stdio character I/O |
# |
cdl_interface CYGINT_ISO_STDIO_CHAR_IO { |
# Implemented by CYGPKG_LIBC_STDIO, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_CHAR_IO |
# CYGINT_ISO_STDIO_CHAR_IO == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_CHAR_IO |
# Requires: 1 >= CYGINT_ISO_STDIO_CHAR_IO |
}; |
|
# Stdio character I/O implementation header |
# |
cdl_option CYGBLD_ISO_STDIO_CHAR_IO_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdio/stdio.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGBLD_ISO_STDIO_CHAR_IO_HEADER == "<cyg/libc/stdio/stdio.h>" |
}; |
|
# Number of implementations of stdio direct I/O |
# |
cdl_interface CYGINT_ISO_STDIO_DIRECT_IO { |
# Implemented by CYGPKG_LIBC_STDIO, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_DIRECT_IO |
# CYGINT_ISO_STDIO_DIRECT_IO == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_DIRECT_IO |
# Requires: 1 >= CYGINT_ISO_STDIO_DIRECT_IO |
}; |
|
# Stdio direct I/O implementation header |
# |
cdl_option CYGBLD_ISO_STDIO_DIRECT_IO_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdio/stdio.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == "<cyg/libc/stdio/stdio.h>" |
}; |
|
# Number of implementations of stdio file positioning |
# |
cdl_interface CYGINT_ISO_STDIO_FILEPOS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_STDIO_FILEPOS |
# CYGINT_ISO_STDIO_FILEPOS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_FILEPOS |
# Requires: 1 >= CYGINT_ISO_STDIO_FILEPOS |
}; |
|
# Stdio file positioning implementation header |
# |
cdl_option CYGBLD_ISO_STDIO_FILEPOS { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of stdio error handling |
# |
cdl_interface CYGINT_ISO_STDIO_ERROR { |
# Implemented by CYGPKG_LIBC_STDIO, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_ERROR |
# CYGINT_ISO_STDIO_ERROR == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_ERROR |
# Requires: 1 >= CYGINT_ISO_STDIO_ERROR |
}; |
|
# Stdio error handling implementation header |
# |
cdl_option CYGBLD_ISO_STDIO_ERROR_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdio/stdio.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGBLD_ISO_STDIO_ERROR_HEADER == "<cyg/libc/stdio/stdio.h>" |
}; |
|
# POSIX fd-related function implementations |
# |
cdl_interface CYGINT_ISO_STDIO_POSIX_FDFUNCS { |
# Implemented by CYGPKG_LIBC_STDIO_OPEN, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STDIO_POSIX_FDFUNCS |
# CYGINT_ISO_STDIO_POSIX_FDFUNCS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDIO_POSIX_FDFUNCS |
# Requires: 1 >= CYGINT_ISO_STDIO_POSIX_FDFUNCS |
}; |
|
# POSIX fd-related function implementation header |
# |
cdl_option CYGBLD_ISO_STDIO_POSIX_FDFUNCS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Standard general utility functions |
# |
cdl_component CYGPKG_ISO_STDLIB { |
# There is no associated value. |
}; |
|
# > |
# String conversion function implementations |
# |
cdl_interface CYGINT_ISO_STDLIB_STRCONV { |
# Implemented by CYGPKG_LIBC_STDLIB, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV |
# CYGINT_ISO_STDLIB_STRCONV == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDLIB_STRCONV |
# Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGINT_ISO_STDLIB_STRCONV |
}; |
|
# String conversion function implementation header |
# |
cdl_option CYGBLD_ISO_STDLIB_STRCONV_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdlib/atox.inl> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# option CYGIMP_LIBC_STDLIB_INLINE_ATOX |
# Requires: CYGBLD_ISO_STDLIB_STRCONV_HEADER == "<cyg/libc/stdlib/atox.inl>" |
}; |
|
# String to FP conversion function implementations |
# |
cdl_interface CYGINT_ISO_STDLIB_STRCONV_FLOAT { |
# Implemented by CYGFUN_LIBC_strtod, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT |
# CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDLIB_STRCONV_FLOAT |
# Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT |
# option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT |
# Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT |
# option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT |
# DefaultValue: 0 != CYGPKG_LIBM && |
# 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT |
}; |
|
# String to FP conversion function implementation header |
# |
cdl_option CYGBLD_ISO_STDLIB_STRCONV_FLOAT_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Random number generator implementations |
# |
cdl_interface CYGINT_ISO_RAND { |
# Implemented by CYGIMP_LIBC_RAND_SIMPLEST, active, disabled |
# Implemented by CYGIMP_LIBC_RAND_SIMPLE1, active, enabled |
# Implemented by CYGIMP_LIBC_RAND_KNUTH1, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_RAND |
# CYGINT_ISO_RAND == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_RAND |
# Requires: 1 >= CYGINT_ISO_RAND |
}; |
|
# Random number generator implementation header |
# |
cdl_option CYGBLD_ISO_RAND_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Malloc implementations |
# |
cdl_interface CYGINT_ISO_MALLOC { |
# Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_MALLOC |
# CYGINT_ISO_MALLOC == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_MALLOC |
# Requires: 1 >= CYGINT_ISO_MALLOC |
# component CYGPKG_IO_SERIAL_TERMIOS |
# Requires: CYGINT_ISO_MALLOC |
# option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC |
# Requires: CYGINT_ISO_MALLOC |
# option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC |
# DefaultValue: 0 != CYGINT_ISO_MALLOC |
# option CYGPKG_LIBC_STDIO_OPEN |
# Requires: CYGINT_ISO_MALLOC |
# option CYGPKG_LIBC_STDIO_OPEN |
# DefaultValue: 0 != CYGINT_ISO_MALLOC |
}; |
|
# Malloc implementation header |
# |
cdl_option CYGBLD_ISO_MALLOC_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Mallinfo() implementations |
# |
cdl_interface CYGINT_ISO_MALLINFO { |
# Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_MALLINFO |
# CYGINT_ISO_MALLINFO == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_MALLINFO |
# Requires: 1 >= CYGINT_ISO_MALLINFO |
}; |
|
# Mallinfo() implementation header |
# |
cdl_option CYGBLD_ISO_MALLINFO_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Program exit functionality implementations |
# |
cdl_interface CYGINT_ISO_EXIT { |
# Implemented by CYGPKG_LIBC_STARTUP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_EXIT |
# CYGINT_ISO_EXIT == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_EXIT |
# Requires: 1 >= CYGINT_ISO_EXIT |
# option CYGFUN_INFRA_DUMMY_ABORT |
# Requires: !CYGINT_ISO_EXIT |
# option CYGFUN_INFRA_DUMMY_ABORT |
# DefaultValue: CYGINT_ISO_EXIT == 0 |
}; |
|
# Program exit functionality implementation header |
# |
cdl_option CYGBLD_ISO_EXIT_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Program environment implementations |
# |
cdl_interface CYGINT_ISO_STDLIB_ENVIRON { |
# Implemented by CYGPKG_LIBC_STDLIB, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_ENVIRON |
# CYGINT_ISO_STDLIB_ENVIRON == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDLIB_ENVIRON |
# Requires: 1 >= CYGINT_ISO_STDLIB_ENVIRON |
}; |
|
# Program environment implementation header |
# |
cdl_option CYGBLD_ISO_STDLIB_ENVIRON_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# system() implementations |
# |
cdl_interface CYGINT_ISO_STDLIB_SYSTEM { |
# Implemented by CYGPKG_LIBC_STDLIB, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_SYSTEM |
# CYGINT_ISO_STDLIB_SYSTEM == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDLIB_SYSTEM |
# Requires: 1 >= CYGINT_ISO_STDLIB_SYSTEM |
}; |
|
# system() implementation header |
# |
cdl_option CYGBLD_ISO_STDLIB_SYSTEM_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# bsearch() implementations |
# |
cdl_interface CYGINT_ISO_BSEARCH { |
# Implemented by CYGPKG_LIBC_STDLIB, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_BSEARCH |
# CYGINT_ISO_BSEARCH == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_BSEARCH |
# Requires: 1 >= CYGINT_ISO_BSEARCH |
}; |
|
# bsearch() implementation header |
# |
cdl_option CYGBLD_ISO_BSEARCH_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# qsort() implementations |
# |
cdl_interface CYGINT_ISO_QSORT { |
# Implemented by CYGPKG_LIBC_STDLIB, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_QSORT |
# CYGINT_ISO_STDLIB_QSORT (unknown) == 0 |
# --> 1 |
|
# The following properties are affected by this value |
}; |
|
# qsort() implementation header |
# |
cdl_option CYGBLD_ISO_QSORT_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# abs()/labs() implementations |
# |
cdl_interface CYGINT_ISO_ABS { |
# Implemented by CYGPKG_LIBC_STDLIB, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_ABS |
# CYGINT_ISO_STDLIB_ABS (unknown) == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_TIME |
# Requires: CYGINT_ISO_ABS |
}; |
|
# abs()/labs() implementation header |
# |
cdl_option CYGBLD_ISO_STDLIB_ABS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdlib/abs.inl> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# option CYGIMP_LIBC_STDLIB_INLINE_ABS |
# Requires: CYGBLD_ISO_STDLIB_ABS_HEADER == "<cyg/libc/stdlib/abs.inl>" |
}; |
|
# div()/ldiv() implementations |
# |
cdl_interface CYGINT_ISO_DIV { |
# Implemented by CYGPKG_LIBC_STDLIB, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_DIV |
# CYGINT_ISO_STDLIB_DIV (unknown) == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_TIME |
# Requires: CYGINT_ISO_DIV |
}; |
|
# div()/ldiv() implementation header |
# |
cdl_option CYGBLD_ISO_STDLIB_DIV_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/stdlib/div.inl> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# option CYGIMP_LIBC_STDLIB_INLINE_DIV |
# Requires: CYGBLD_ISO_STDLIB_DIV_HEADER == "<cyg/libc/stdlib/div.inl>" |
}; |
|
# Header defining the implementation's MB_CUR_MAX |
# |
cdl_option CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# interface CYGINT_LIBC_I18N_MB_REQUIRED |
# Requires: CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER == "<cyg/libc/i18n/mb.h>" |
}; |
|
# Multibyte character implementations |
# |
cdl_interface CYGINT_ISO_STDLIB_MULTIBYTE { |
# Implemented by CYGPKG_LIBC_I18N, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_STDLIB_MULTIBYTE |
# CYGINT_ISO_STDLIB_MULTIBYTE == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STDLIB_MULTIBYTE |
# Requires: 1 >= CYGINT_ISO_STDLIB_MULTIBYTE |
}; |
|
# Multibyte character implementation header |
# |
cdl_option CYGBLD_ISO_STDLIB_MULTIBYTE_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# String functions |
# |
cdl_component CYGPKG_ISO_STRING { |
# There is no associated value. |
}; |
|
# > |
# Number of implementations of strerror() function |
# |
cdl_interface CYGINT_ISO_STRERROR { |
# Implemented by CYGPKG_ERROR_STRERROR, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STRERROR |
# CYGINT_ISO_STRERROR == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STRERROR |
# Requires: 1 >= CYGINT_ISO_STRERROR |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGINT_ISO_STRERROR |
}; |
|
# strerror() implementation header |
# |
cdl_option CYGBLD_ISO_STRERROR_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/error/strerror.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# option CYGPKG_ERROR_STRERROR |
# Requires: CYGBLD_ISO_STRERROR_HEADER == "<cyg/error/strerror.h>" |
}; |
|
# memcpy() implementation header |
# |
cdl_option CYGBLD_ISO_MEMCPY_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# memset() implementation header |
# |
cdl_option CYGBLD_ISO_MEMSET_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of strtok_r() function |
# |
cdl_interface CYGINT_ISO_STRTOK_R { |
# Implemented by CYGPKG_LIBC_STRING, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STRTOK_R |
# CYGINT_ISO_STRTOK_R == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STRTOK_R |
# Requires: 1 >= CYGINT_ISO_STRTOK_R |
}; |
|
# strtok_r() implementation header |
# |
cdl_option CYGBLD_ISO_STRTOK_R_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/string/string.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STRING |
# Requires: CYGBLD_ISO_STRTOK_R_HEADER == "<cyg/libc/string/string.h>" |
}; |
|
# Number of implementations of locale-specific string functions |
# This covers locale-dependent string functions such as strcoll() |
# and strxfrm(). |
# |
cdl_interface CYGINT_ISO_STRING_LOCALE_FUNCS { |
# Implemented by CYGPKG_LIBC_STRING, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STRING_LOCALE_FUNCS |
# CYGINT_ISO_STRING_LOCALE_FUNCS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STRING_LOCALE_FUNCS |
# Requires: 1 >= CYGINT_ISO_STRING_LOCALE_FUNCS |
}; |
|
# Locale-specific string functions' implementation header |
# This covers locale-dependent string functions such as strcoll() |
# and strxfrm(). |
# |
cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/string/string.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STRING |
# Requires: CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == "<cyg/libc/string/string.h>" |
}; |
|
# Number of implementations of BSD string functions |
# |
cdl_interface CYGINT_ISO_STRING_BSD_FUNCS { |
# Implemented by CYGFUN_LIBC_STRING_BSD_FUNCS, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STRING_BSD_FUNCS |
# CYGINT_ISO_STRING_BSD_FUNCS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STRING_BSD_FUNCS |
# Requires: 1 >= CYGINT_ISO_STRING_BSD_FUNCS |
}; |
|
# BSD string functions' implementation header |
# |
cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/string/bsdstring.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# option CYGFUN_LIBC_STRING_BSD_FUNCS |
# Requires: CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == "<cyg/libc/string/bsdstring.h>" |
}; |
|
# Number of implementations of other mem*() functions |
# |
cdl_interface CYGINT_ISO_STRING_MEMFUNCS { |
# Implemented by CYGPKG_LIBC_STRING, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STRING_MEMFUNCS |
# CYGINT_ISO_STRING_MEMFUNCS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STRING_MEMFUNCS |
# Requires: 1 >= CYGINT_ISO_STRING_MEMFUNCS |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGINT_ISO_STRING_MEMFUNCS |
}; |
|
# Other mem*() functions' implementation header |
# |
cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/string/string.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STRING |
# Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "<cyg/libc/string/string.h>" |
}; |
|
# Number of implementations of other ISO C str*() functions |
# This covers the other str*() functions defined by ISO C. |
# |
cdl_interface CYGINT_ISO_STRING_STRFUNCS { |
# Implemented by CYGPKG_LIBC_STRING, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_STRING_STRFUNCS |
# CYGINT_ISO_STRING_STRFUNCS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_STRING_STRFUNCS |
# Requires: 1 >= CYGINT_ISO_STRING_STRFUNCS |
# option CYGFUN_INFRA_DUMMY_STRLEN |
# Requires: !CYGINT_ISO_STRING_STRFUNCS |
# option CYGFUN_INFRA_DUMMY_STRLEN |
# DefaultValue: CYGINT_ISO_STRING_STRFUNCS == 0 |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGINT_ISO_STRING_STRFUNCS |
# package CYGPKG_LIBC_STDLIB |
# Requires: CYGINT_ISO_STRING_STRFUNCS |
}; |
|
# Other ISO C str*() functions' implementation header |
# This covers the other str*() functions defined by ISO C. |
# |
cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/string/string.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STRING |
# Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "<cyg/libc/string/string.h>" |
}; |
|
# < |
# Clock and time functionality |
# |
cdl_component CYGPKG_ISO_TIME { |
# There is no associated value. |
}; |
|
# > |
# time_t implementation header |
# |
cdl_option CYGBLD_ISO_TIME_T_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# clock_t implementation header |
# |
cdl_option CYGBLD_ISO_CLOCK_T_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# struct timeval implementation header |
# |
cdl_option CYGBLD_ISO_STRUCTTIMEVAL_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of POSIX timer types |
# |
cdl_interface CYGINT_ISO_POSIX_TIMER_TYPES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_POSIX_TIMER_TYPES |
# CYGINT_ISO_POSIX_TIMER_TYPES == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POSIX_TIMER_TYPES |
# Requires: 1 >= CYGINT_ISO_POSIX_TIMER_TYPES |
}; |
|
# POSIX timer types implementation header |
# |
cdl_option CYGBLD_ISO_POSIX_TIMER_TYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of POSIX clock types |
# |
cdl_interface CYGINT_ISO_POSIX_CLOCK_TYPES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_POSIX_CLOCK_TYPES |
# CYGINT_ISO_POSIX_CLOCK_TYPES == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POSIX_CLOCK_TYPES |
# Requires: 1 >= CYGINT_ISO_POSIX_CLOCK_TYPES |
}; |
|
# POSIX clock types implementation header |
# |
cdl_option CYGBLD_ISO_POSIX_CLOCK_TYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of ISO C types |
# |
cdl_interface CYGINT_ISO_C_TIME_TYPES { |
# Implemented by CYGPKG_LIBC_TIME, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_C_TIME_TYPES |
# CYGINT_ISO_C_TIME_TYPES == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_C_TIME_TYPES |
# Requires: 1 >= CYGINT_ISO_C_TIME_TYPES |
}; |
|
# ISO C time types implementation header |
# |
cdl_option CYGBLD_ISO_C_TIME_TYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/time/time.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_TIME |
# Requires: CYGBLD_ISO_C_TIME_TYPES_HEADER == "<cyg/libc/time/time.h>" |
}; |
|
# Number of implementations of POSIX timers |
# |
cdl_interface CYGINT_ISO_POSIX_TIMERS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_POSIX_TIMERS |
# CYGINT_ISO_POSIX_TIMERS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POSIX_TIMERS |
# Requires: 1 >= CYGINT_ISO_POSIX_TIMERS |
}; |
|
# POSIX timer implementation header |
# |
cdl_option CYGBLD_ISO_POSIX_TIMERS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of POSIX clocks |
# |
cdl_interface CYGINT_ISO_POSIX_CLOCKS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_POSIX_CLOCKS |
# CYGINT_ISO_POSIX_CLOCKS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POSIX_CLOCKS |
# Requires: 1 >= CYGINT_ISO_POSIX_CLOCKS |
}; |
|
# POSIX clocks implementation header |
# |
cdl_option CYGBLD_ISO_POSIX_CLOCKS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Number of implementations of ISO C clock functions |
# |
cdl_interface CYGINT_ISO_C_CLOCK_FUNCS { |
# Implemented by CYGPKG_LIBC_TIME, active, enabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 1 |
# Requires: 1 >= CYGINT_ISO_C_CLOCK_FUNCS |
# CYGINT_ISO_C_CLOCK_FUNCS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_C_CLOCK_FUNCS |
# Requires: 1 >= CYGINT_ISO_C_CLOCK_FUNCS |
}; |
|
# ISO C clock functions' implementation header |
# |
cdl_option CYGBLD_ISO_C_CLOCK_FUNCS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/time/time.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_TIME |
# Requires: CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == "<cyg/libc/time/time.h>" |
}; |
|
# Number of implementations of tzset() function |
# |
cdl_interface CYGINT_ISO_TZSET { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_TZSET |
# CYGINT_ISO_TZSET == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_TZSET |
# Requires: 1 >= CYGINT_ISO_TZSET |
}; |
|
# tzset() implementation header |
# |
cdl_option CYGBLD_ISO_TZSET_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Signal functionality |
# |
cdl_component CYGPKG_ISO_SIGNAL { |
# There is no associated value. |
}; |
|
# > |
# Number of implementations of signal numbers |
# |
cdl_interface CYGINT_ISO_SIGNAL_NUMBERS { |
# Implemented by CYGPKG_LIBC_SIGNALS, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_SIGNAL_NUMBERS |
# CYGINT_ISO_SIGNAL_NUMBERS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_SIGNAL_NUMBERS |
# Requires: 1 >= CYGINT_ISO_SIGNAL_NUMBERS |
# option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS |
# Requires: CYGINT_ISO_SIGNAL_NUMBERS |
# option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS |
# DefaultValue: CYGINT_ISO_SIGNAL_NUMBERS != 0 && CYGINT_ISO_SIGNAL_IMPL != 0 |
}; |
|
# Signal numbering implementation header |
# This header provides the mapping of signal |
# names (e.g. SIGBUS) to numbers. |
# |
cdl_option CYGBLD_ISO_SIGNAL_NUMBERS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/signals/signal.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_SIGNALS |
# Requires: CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == "<cyg/libc/signals/signal.h>" |
}; |
|
# Number of signal implementations |
# |
cdl_interface CYGINT_ISO_SIGNAL_IMPL { |
# Implemented by CYGPKG_LIBC_SIGNALS, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_SIGNAL_IMPL |
# CYGINT_ISO_SIGNAL_IMPL == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_SIGNAL_IMPL |
# Requires: 1 >= CYGINT_ISO_SIGNAL_IMPL |
# option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS |
# Requires: CYGINT_ISO_SIGNAL_IMPL |
# option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS |
# DefaultValue: CYGINT_ISO_SIGNAL_NUMBERS != 0 && CYGINT_ISO_SIGNAL_IMPL != 0 |
}; |
|
# Signals implementation header |
# |
cdl_option CYGBLD_ISO_SIGNAL_IMPL_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/signals/signal.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_SIGNALS |
# Requires: CYGBLD_ISO_SIGNAL_IMPL_HEADER == "<cyg/libc/signals/signal.h>" |
}; |
|
# POSIX real time signals feature test macro |
# This defines the POSIX feature test macro |
# that indicates that the POSIX real time signals |
# are present. |
# |
cdl_interface CYGINT_POSIX_REALTIME_SIGNALS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_POSIX_REALTIME_SIGNALS |
# CYGINT_POSIX_REALTIME_SIGNALS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_POSIX_REALTIME_SIGNALS |
# Requires: 1 >= CYGINT_POSIX_REALTIME_SIGNALS |
}; |
|
# < |
# Non-local jumps functionality |
# |
cdl_component CYGPKG_ISO_SETJMP { |
# There is no associated value. |
}; |
|
# > |
# setjmp() / longjmp() implementations |
# |
cdl_interface CYGINT_ISO_SETJMP { |
# Implemented by CYGPKG_LIBC_SETJMP, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 >= CYGINT_ISO_SETJMP |
# CYGINT_ISO_SETJMP == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_SETJMP |
# Requires: 1 >= CYGINT_ISO_SETJMP |
}; |
|
# setjmp() / longjmp() implementation header |
# |
cdl_option CYGBLD_ISO_SETJMP_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# The inferred value should not be edited directly. |
inferred_value 1 <cyg/libc/setjmp/setjmp.h> |
# value_source inferred |
# Default value: 0 0 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_SETJMP |
# Requires: CYGBLD_ISO_SETJMP_HEADER == "<cyg/libc/setjmp/setjmp.h>" |
}; |
|
# sigsetjmp() / siglongjmp() implementations |
# |
cdl_interface CYGINT_ISO_SIGSETJMP { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_SIGSETJMP |
# CYGINT_ISO_SIGSETJMP == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_SIGSETJMP |
# Requires: 1 >= CYGINT_ISO_SIGSETJMP |
}; |
|
# sigsetjmp() / siglongjmp() implementation header |
# |
cdl_option CYGBLD_ISO_SIGSETJMP_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Assertions implementation header |
# |
cdl_option CYGBLD_ISO_ASSERT_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX file control |
# This covers the POSIX file control definitions, |
# normally found in <fcntl.h> |
# |
cdl_component CYGPKG_ISO_POSIX_FCNTL { |
# There is no associated value. |
}; |
|
# > |
# POSIX open flags implementation header |
# |
cdl_option CYGBLD_ISO_OFLAG_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX fcntl() implementations |
# |
cdl_interface CYGINT_ISO_FCNTL { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_FCNTL |
# CYGINT_ISO_FCNTL == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_FCNTL |
# Requires: 1 >= CYGINT_ISO_FCNTL |
}; |
|
# POSIX fcntl() implementation header |
# |
cdl_option CYGBLD_ISO_FCNTL_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX file open implementations |
# |
cdl_interface CYGINT_ISO_OPEN { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_OPEN |
# CYGINT_ISO_OPEN == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_OPEN |
# Requires: 1 >= CYGINT_ISO_OPEN |
}; |
|
# POSIX file open implementation header |
# |
cdl_option CYGBLD_ISO_OPEN_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# <sys/stat.h> definitions implementation header |
# |
cdl_option CYGBLD_ISO_STAT_DEFS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX directory reading implementation |
# |
cdl_interface CYGINT_ISO_DIRENT { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_DIRENT |
# CYGINT_ISO_DIRENT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_DIRENT |
# Requires: 1 >= CYGINT_ISO_DIRENT |
}; |
|
# <dirent.h> definitions implementation header |
# |
cdl_option CYGBLD_ISO_DIRENT_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX <sys/types.h> contents |
# This covers the types required by POSIX to be in |
# <sys/types.h> |
# |
cdl_component CYGPKG_ISO_POSIX_TYPES { |
# There is no associated value. |
}; |
|
# > |
# POSIX thread types implementations |
# |
cdl_interface CYGINT_ISO_PTHREADTYPES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_PTHREADTYPES |
# CYGINT_ISO_PTHREADTYPES == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_PTHREADTYPES |
# Requires: 1 >= CYGINT_ISO_PTHREADTYPES |
# interface CYGINT_ISO_PMUTEXTYPES |
# Requires: 1 >= CYGINT_ISO_PTHREADTYPES |
}; |
|
# POSIX thread types implementation header |
# |
cdl_option CYGBLD_ISO_PTHREADTYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX mutex types implementations |
# |
cdl_interface CYGINT_ISO_PMUTEXTYPES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_PTHREADTYPES |
# CYGINT_ISO_PTHREADTYPES == 0 |
# --> 1 |
}; |
|
# POSIX mutex types implementation header |
# |
cdl_option CYGBLD_ISO_PMUTEXTYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# ssize_t implementation header |
# |
cdl_option CYGBLD_ISO_SSIZE_T_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Filesystem types implementation header |
# |
cdl_option CYGBLD_ISO_FSTYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# gid_t, pid_t, uid_t implementation header |
# |
cdl_option CYGBLD_ISO_SCHEDTYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Non-POSIX <sys/types.h> contents |
# This covers the extra types required by non-POSIX |
# packages to be in <sys/types.h>. These would normally |
# only be visible if _POSIX_SOURCE is not defined. |
# |
cdl_component CYGPKG_ISO_EXTRA_TYPES { |
# There is no associated value. |
}; |
|
# > |
# BSD compatible types |
# |
cdl_interface CYGINT_ISO_BSDTYPES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_BSDTYPES |
# CYGINT_ISO_BSDTYPES == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_BSDTYPES |
# Requires: 1 >= CYGINT_ISO_BSDTYPES |
}; |
|
# BSD types header |
# |
cdl_option CYGBLD_ISO_BSDTYPES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Utsname structure |
# |
cdl_component CYGPKG_ISO_UTSNAME { |
# There is no associated value. |
}; |
|
# > |
# Utsname header |
# |
cdl_option CYGBLD_ISO_UTSNAME_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# POSIX scheduler |
# |
cdl_component CYGPKG_ISO_SCHED { |
# There is no associated value. |
}; |
|
# > |
# POSIX scheduler implementations |
# |
cdl_interface CYGINT_ISO_SCHED_IMPL { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_SCHED_IMPL |
# CYGINT_ISO_SCHED_IMPL == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_SCHED_IMPL |
# Requires: 1 >= CYGINT_ISO_SCHED_IMPL |
}; |
|
# POSIX scheduler implementation header |
# |
cdl_option CYGBLD_ISO_SCHED_IMPL_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# POSIX semaphores |
# |
cdl_component CYGPKG_ISO_SEMAPHORES { |
# There is no associated value. |
}; |
|
# > |
# POSIX semaphore implementations |
# |
cdl_interface CYGINT_ISO_SEMAPHORES { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_SEMAPHORES |
# CYGINT_ISO_SEMAPHORES == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_SEMAPHORES |
# Requires: 1 >= CYGINT_ISO_SEMAPHORES |
}; |
|
# POSIX semaphore implementation header |
# |
cdl_option CYGBLD_ISO_SEMAPHORES_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# POSIX message queues |
# |
cdl_component CYGPKG_ISO_MQUEUE { |
# There is no associated value. |
}; |
|
# > |
# Implementations |
# |
cdl_interface CYGINT_ISO_MQUEUE { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_MQUEUE |
# CYGINT_ISO_MQUEUE == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_MQUEUE |
# Requires: 1 >= CYGINT_ISO_MQUEUE |
# option CYGNUM_ISO_MQUEUE_OPEN_MAX |
# ActiveIf: CYGINT_ISO_MQUEUE |
# option CYGNUM_ISO_MQUEUE_PRIO_MAX |
# ActiveIf: CYGINT_ISO_MQUEUE |
}; |
|
# Implementation header |
# |
cdl_option CYGBLD_ISO_MQUEUE_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Maximum number of open message queues |
# |
cdl_option CYGNUM_ISO_MQUEUE_OPEN_MAX { |
# This option is not active |
# ActiveIf constraint: CYGINT_ISO_MQUEUE |
# CYGINT_ISO_MQUEUE == 0 |
# --> 0 |
|
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: CYGNUM_POSIX_MQUEUE_OPEN_MAX > 0 ? CYGNUM_POSIX_MQUEUE_OPEN_MAX : 0 |
# CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0 |
# CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0 |
# --> 0 0 |
}; |
|
# Maximum number of message priorities |
# |
cdl_option CYGNUM_ISO_MQUEUE_PRIO_MAX { |
# This option is not active |
# ActiveIf constraint: CYGINT_ISO_MQUEUE |
# CYGINT_ISO_MQUEUE == 0 |
# --> 0 |
|
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 1 65535 |
# value_source default |
# Default value: 1 65535 |
}; |
|
# < |
# POSIX threads |
# |
cdl_component CYGPKG_ISO_PTHREAD { |
# There is no associated value. |
}; |
|
# > |
# POSIX pthread implementations |
# |
cdl_interface CYGINT_ISO_PTHREAD_IMPL { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_PTHREAD_IMPL |
# CYGINT_ISO_PTHREAD_IMPL == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_PTHREAD_IMPL |
# Requires: 1 >= CYGINT_ISO_PTHREAD_IMPL |
}; |
|
# POSIX pthread implementation header |
# |
cdl_option CYGBLD_ISO_PTHREAD_IMPL_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX mutex/cond var implementations |
# |
cdl_interface CYGINT_ISO_PTHREAD_MUTEX { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_PTHREAD_MUTEX |
# CYGINT_ISO_PTHREAD_MUTEX == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_PTHREAD_MUTEX |
# Requires: 1 >= CYGINT_ISO_PTHREAD_MUTEX |
}; |
|
# POSIX mutex/cond var implementation header |
# |
cdl_option CYGBLD_ISO_PTHREAD_MUTEX_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Limits |
# |
cdl_component CYGPKG_ISO_LIMITS { |
# There is no associated value. |
}; |
|
# > |
# POSIX pthread limits implementations |
# |
cdl_interface CYGINT_ISO_POSIX_LIMITS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_POSIX_LIMITS |
# CYGINT_ISO_POSIX_LIMITS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POSIX_LIMITS |
# Requires: 1 >= CYGINT_ISO_POSIX_LIMITS |
}; |
|
# POSIX pthread limits implementation header |
# |
cdl_option CYGBLD_ISO_POSIX_LIMITS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# OPEN_MAX implementation header |
# |
cdl_option CYGBLD_ISO_OPEN_MAX_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# LINK_MAX implementation header |
# |
cdl_option CYGBLD_ISO_LINK_MAX_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# NAME_MAX implementation header |
# |
cdl_option CYGBLD_ISO_NAME_MAX_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# PATH_MAX implementation header |
# |
cdl_option CYGBLD_ISO_PATH_MAX_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# POSIX termios |
# |
cdl_component CYGPKG_ISO_TERMIOS { |
# There is no associated value. |
}; |
|
# > |
# POSIX termios implementations |
# |
cdl_interface CYGINT_ISO_TERMIOS { |
# Implemented by CYGPKG_IO_SERIAL_TERMIOS, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_TERMIOS |
# CYGINT_ISO_TERMIOS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_TERMIOS |
# Requires: 1 >= CYGINT_ISO_TERMIOS |
}; |
|
# POSIX termios implementation header |
# |
cdl_option CYGBLD_ISO_TERMIOS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Dynamic load API |
# |
cdl_component CYGPKG_ISO_DLFCN { |
# There is no associated value. |
}; |
|
# > |
# Dynamic load implementations |
# |
cdl_interface CYGINT_ISO_DLFCN { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
# Requires: 1 >= CYGINT_ISO_DLFCN |
# CYGINT_ISO_DLFCN == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_DLFCN |
# Requires: 1 >= CYGINT_ISO_DLFCN |
}; |
|
# Dynamic load implementation header |
# |
cdl_option CYGBLD_ISO_DLFCN_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# UNIX standard functions |
# |
cdl_component CYGPKG_ISO_UNISTD { |
# There is no associated value. |
}; |
|
# > |
# POSIX timer operations implementations |
# |
cdl_interface CYGINT_ISO_POSIX_TIMER_OPS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_POSIX_TIMER_OPS |
# CYGINT_ISO_POSIX_TIMER_OPS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POSIX_TIMER_OPS |
# Requires: 1 >= CYGINT_ISO_POSIX_TIMER_OPS |
}; |
|
# POSIX timer operations implementation header |
# |
cdl_option CYGBLD_ISO_POSIX_TIMER_OPS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# POSIX sleep() implementations |
# |
cdl_interface CYGINT_ISO_POSIX_SLEEP { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_POSIX_SLEEP |
# CYGINT_ISO_POSIX_SLEEP == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POSIX_SLEEP |
# Requires: 1 >= CYGINT_ISO_POSIX_SLEEP |
}; |
|
# POSIX sleep() implementation header |
# |
cdl_option CYGBLD_ISO_POSIX_SLEEP_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# select()/poll() functions |
# |
cdl_component CYGPKG_ISO_SELECT { |
# There is no associated value. |
}; |
|
# > |
# select() implementations |
# |
cdl_interface CYGINT_ISO_SELECT { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_SELECT |
# CYGINT_ISO_SELECT == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_SELECT |
# Requires: 1 >= CYGINT_ISO_SELECT |
}; |
|
# select() implementation header |
# |
cdl_option CYGBLD_ISO_SELECT_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# poll() implementations |
# |
cdl_interface CYGINT_ISO_POLL { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: 1 >= CYGINT_ISO_POLL |
# CYGINT_ISO_POLL == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_POLL |
# Requires: 1 >= CYGINT_ISO_POLL |
}; |
|
# poll() implementation header |
# |
cdl_option CYGBLD_ISO_POLL_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# NetDB utility functions |
# |
cdl_component CYGPKG_ISO_NETDB { |
# There is no associated value. |
}; |
|
# > |
# DNS implementations |
# |
cdl_interface CYGINT_ISO_DNS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: bool |
# Current value: 0 |
# Requires: 1 >= CYGINT_ISO_DNS |
# CYGINT_ISO_DNS == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_DNS |
# Requires: 1 >= CYGINT_ISO_DNS |
}; |
|
# DNS implementation header |
# |
cdl_option CYGBLD_ISO_DNS_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Protocol network database implementations |
# |
cdl_interface CYGINT_ISO_NETDB_PROTO { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: bool |
# Current value: 0 |
# Requires: 1 >= CYGINT_ISO_NETDB_PROTO |
# CYGINT_ISO_NETDB_PROTO == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_NETDB_PROTO |
# Requires: 1 >= CYGINT_ISO_NETDB_PROTO |
}; |
|
# Protocol network database implementation header |
# |
cdl_option CYGBLD_ISO_NETDB_PROTO_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# Services network database implementations |
# |
cdl_interface CYGINT_ISO_NETDB_SERV { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: bool |
# Current value: 0 |
# Requires: 1 >= CYGINT_ISO_NETDB_SERV |
# CYGINT_ISO_NETDB_SERV == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_ISO_NETDB_SERV |
# Requires: 1 >= CYGINT_ISO_NETDB_SERV |
}; |
|
# Services network database implementation header |
# |
cdl_option CYGBLD_ISO_NETDB_SERV_HEADER { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 0 0 |
# value_source default |
# Default value: 0 0 |
}; |
|
# < |
# Build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_ISOINFRA_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the ISO C and POSIX infrastructure package. |
# These flags are used in addition to the set of global flags. |
# |
cdl_option CYGPKG_ISOINFRA_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the ISO C and POSIX infrastructure package. |
# These flags are removed from the set of global flags |
# if present. |
# |
cdl_option CYGPKG_ISOINFRA_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# < |
# < |
# ISO C library |
# doc: ref/libc.html |
# The packages under this package enable compatibility with the ISO C |
# standard - ISO/IEC 9899:1990. This allows the user application to use |
# well known standard C library functions, and in eCos starts a thread |
# to invoke the user function main(). This package is a top-level placeholder |
# to contain the implementations. |
# |
cdl_package CYGPKG_LIBC { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
|
# The following properties are affected by this value |
# component CYGNUM_LIBM_COMPATIBILITY |
# Requires: CYGPKG_LIBC |
}; |
|
# > |
# ISO C library internationalization functions |
# doc: ref/libc.html |
# This package provides internationalization functions specified by the |
# ISO C standard - ISO/IEC 9899:1990. These include locale-related |
# functionality and <ctype.h> functionality. |
# |
cdl_package CYGPKG_LIBC_I18N { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STDIO |
# Requires: CYGPKG_LIBC_I18N |
}; |
|
# > |
# Supported locales |
# These options determine which locales other than the "C" locale |
# are supported and hence contribute to the size of the executable. |
# |
cdl_component CYGPKG_LIBC_I18N_LOCALES { |
# There is no associated value. |
}; |
|
# > |
# Support for multiple locales required |
# |
cdl_interface CYGINT_LIBC_I18N_MB_REQUIRED { |
# Implemented by CYGFUN_LIBC_I18N_LOCALE_C_SJIS, active, disabled |
# Implemented by CYGFUN_LIBC_I18N_LOCALE_C_JIS, active, disabled |
# Implemented by CYGFUN_LIBC_I18N_LOCALE_C_EUCJP, active, disabled |
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 0 0 |
# Requires: CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER == "<cyg/libc/i18n/mb.h>" |
# CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER == 0 |
# --> 0 |
|
# The following properties are affected by this value |
}; |
|
# C-SJIS locale support |
# This option controls if the "C-SJIS" locale will be |
# supported by setlocale(). The locale is a hybrid locale |
# that is mostly the "C" locale with Japanese SJIS multibyte |
# support added. |
# |
cdl_option CYGFUN_LIBC_I18N_LOCALE_C_SJIS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE |
# LegalValues: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff |
# option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE |
# DefaultValue: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) |
}; |
|
# C-JIS locale support |
# This option controls if the "C-JIS" locale will be |
# supported by setlocale(). The locale is a hybrid locale |
# that is mostly the "C" locale with Japanese JIS multibyte |
# support added. |
# |
cdl_option CYGFUN_LIBC_I18N_LOCALE_C_JIS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE |
# LegalValues: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff |
# option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE |
# DefaultValue: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) |
}; |
|
# C-EUCJP locale support |
# This option controls if the "C-EUCJP" locale will be |
# supported by setlocale(). The locale is a hybrid locale |
# that is mostly the "C" locale with Japanese EUCJP multibyte |
# support added. |
# |
cdl_option CYGFUN_LIBC_I18N_LOCALE_C_EUCJP { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE |
# LegalValues: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff |
# option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE |
# DefaultValue: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) |
}; |
|
# < |
# Per-thread multibyte state |
# This option controls whether the multibyte character |
# handling functions mblen(), mbtowc(), and wctomb(), |
# have their state recorded on a per-thread |
# basis rather than global. If this option is |
# disabled, some per-thread space can be saved. |
# Enabling this option will use three slots |
# of kernel per-thread data. You should ensure you |
# have enough slots configured for all your |
# per-thread data. |
# |
cdl_option CYGSEM_LIBC_I18N_PER_THREAD_MB { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# CYGVAR_KERNEL_THREADS_DATA == 1 |
# --> 1 |
}; |
|
# Size of locale name strings |
# This option controls the maximum size of |
# locale names and is used, among other things |
# to instantiate a static string used |
# as a return value from the |
# setlocale() function. When requesting the |
# current locale settings with LC_ALL, a string |
# must be constructed to contain this data, rather |
# than just returning a constant string. This |
# string data is stored in the static string. |
# This depends on the length of locale names, |
# hence this option. If just the C locale is |
# present, this option can be set as low as 2. |
# |
cdl_option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 2 |
# value_source default |
# Default value: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) |
# CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0 |
# CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0 |
# CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0 |
# --> 2 |
# Legal values: (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 : (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 : (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff |
# CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0 |
# CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0 |
# CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0 |
}; |
|
# Inline versions of <ctype.h> functions |
# This option chooses whether the simple character |
# classification and conversion functions (e.g. |
# isupper(), isalpha(), toupper(), etc.) |
# from <ctype.h> are available as inline |
# functions. This may improve performance and as |
# the functions are small, may even improve code |
# size. |
# |
cdl_option CYGIMP_LIBC_I18N_CTYPE_INLINES { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_ISO_CTYPE_HEADER == "<cyg/libc/i18n/ctype.inl>" |
# CYGBLD_ISO_CTYPE_HEADER == <cyg/libc/i18n/ctype.inl> |
# --> 1 |
}; |
|
# C library i18n functions build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_I18N_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_I18N_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_I18N_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# C library i18n function tests |
# This option specifies the set of tests for the C library |
# i18n functions. |
# |
cdl_option CYGPKG_LIBC_I18N_TESTS { |
# Calculated value: "tests/ctype tests/setlocale tests/i18nmb" |
# Flavor: data |
# Current_value: tests/ctype tests/setlocale tests/i18nmb |
}; |
|
# < |
# < |
# ISO C library setjmp/longjmp functions |
# doc: ref/libc.html |
# This package provides non-local jumps based on setjmp() and |
# longjmp() in <setjmp.h> as specified by the ISO C |
# standard - ISO/IEC 9899:1990. |
# |
cdl_package CYGPKG_LIBC_SETJMP { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
# Requires: CYGBLD_ISO_SETJMP_HEADER == "<cyg/libc/setjmp/setjmp.h>" |
# CYGBLD_ISO_SETJMP_HEADER == <cyg/libc/setjmp/setjmp.h> |
# --> 1 |
}; |
|
# > |
# C library setjmp build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_SETJMP_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# C library setjmp tests |
# This option specifies the set of tests for this package. |
# |
cdl_option CYGPKG_LIBC_SETJMP_TESTS { |
# Calculated value: "tests/setjmp" |
# Flavor: data |
# Current_value: tests/setjmp |
}; |
|
# < |
# < |
# ISO C library signal functions |
# doc: ref/libc.html |
# This component controls signal functionality, |
# as implemented in ISO/IEC 9899:1990 chapter 7.7 with |
# the signal() and raise() functions. As well as |
# allowing a program to send itself signals, it is |
# also possible to cause hardware exceptions to |
# be signalled to the program in a similar way. |
# |
cdl_package CYGPKG_LIBC_SIGNALS { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == "<cyg/libc/signals/signal.h>" |
# CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == <cyg/libc/signals/signal.h> |
# --> 1 |
# Requires: CYGBLD_ISO_SIGNAL_IMPL_HEADER == "<cyg/libc/signals/signal.h>" |
# CYGBLD_ISO_SIGNAL_IMPL_HEADER == <cyg/libc/signals/signal.h> |
# --> 1 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
}; |
|
# > |
# Thread safe signals |
# Because signal handlers are global, and not |
# thread-specific (as mandated by POSIX 1003.1) |
# it is possible for multiple threads to clash |
# and corrupt data if setting the same signal |
# handler at the same time. With this option |
# enabled, a kernel mutex will be used to protect |
# the shared data. |
# |
cdl_option CYGSEM_LIBC_SIGNALS_THREAD_SAFE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
}; |
|
# Hardware exceptions cause signals |
# This causes hardware exceptions like |
# arithmetic exceptions (e.g. divide by zero) |
# or bad memory accesses to be passed through as |
# signals. It is thus possible for a program to |
# handle these exceptions in a generic way using |
# the appropriate signal handlers. The details of |
# exactly which exceptions are passed through |
# under what circumstances depend on the |
# underlying HAL implementation. Consequently it |
# must be remembered that signal handlers cannot |
# be guaranteed to be invoked in the expected |
# circumstances if you do not know about the |
# underlying HAL implementation - it is possible |
# that the architecture is unable to detect that |
# exception. |
# |
cdl_component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL |
# CYGSEM_KERNEL_EXCEPTIONS_GLOBAL == 1 |
# --> 1 |
# Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE |
# CYGSEM_KERNEL_EXCEPTIONS_DECODE == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGPKG_LIBC_SIGNALS_TESTS |
# Calculated: |
# "tests/signal1" |
# . ((CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS) ? " tests/signal2" : "") |
# |
}; |
|
# > |
# Chain old exception handlers |
# When hardware exceptions are generated, it |
# is possible to chain into the old kernel exception |
# handler before calling any registered signal |
# handler. If this is not required, disable this |
# option and only the signal handler will be |
# called when this exception occurs. Disabling |
# this option will also save some space and code |
# usage. |
# |
cdl_option CYGSEM_LIBC_SIGNALS_CHAIN_HWEXCEPTIONS { |
# This option is not active |
# The parent CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS is disabled |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Inline versions of functions |
# Some functions can be made inline instead of |
# being function calls. These can be set here. |
# |
cdl_component CYGPKG_LIBC_SIGNALS_INLINE { |
# There is no associated value. |
}; |
|
# > |
# raise() |
# Enabling this option makes raise() an inline function. |
# |
cdl_option CYGIMP_LIBC_SIGNALS_RAISE_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# signal() |
# Enabling this option makes signal() an inline function. |
# |
cdl_option CYGIMP_LIBC_SIGNALS_SIGNAL_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# < |
# Error handling |
# You may or may not want errno to be set by |
# certain functions. Not using errno could save |
# both space, code, and avoid worrying about |
# interactions between multiple threads when |
# setting it. |
# |
cdl_component CYGPKG_LIBC_SIGNALS_ERROR_HANDLING { |
# There is no associated value. |
}; |
|
# > |
# Bad signal fatal |
# Enabling this option will cause an assertion |
# failure if the signal handling code is |
# passed a bad signal. Otherwise an error will |
# be returned, or in the case of a |
# hardware-generated exception it will be silently |
# ignored. |
# |
cdl_option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGDBG_USE_ASSERTS |
# CYGDBG_USE_ASSERTS == 0 |
# --> 0 |
}; |
|
# raise() sets errno |
# You may or may not want errno to be set by |
# raise() on error conditions. Not using errno |
# could save both space, code, and avoid worrying |
# about interactions between multiple threads when |
# setting it. Strictly ISO C does not mandate |
# that errno be set by raise(). |
# |
cdl_option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGINT_ISO_ERRNO |
# CYGINT_ISO_ERRNO == 1 |
# --> 1 |
# Requires: CYGINT_ISO_ERRNO_CODES |
# CYGINT_ISO_ERRNO_CODES == 1 |
# --> 1 |
}; |
|
# signal() sets errno |
# You may or may not want errno to be set by |
# signal() on error conditions. Not using errno |
# could save both space, code, and avoid worrying |
# about interactions between multiple threads when |
# setting it. Strictly ISO C mandates |
# that errno be set by signal(). |
# |
cdl_option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGINT_ISO_ERRNO |
# CYGINT_ISO_ERRNO == 1 |
# --> 1 |
# Requires: CYGINT_ISO_ERRNO_CODES |
# CYGINT_ISO_ERRNO_CODES == 1 |
# --> 1 |
}; |
|
# < |
# Tracing |
# These options control the trace output for the C |
# library internal signal implementation. |
# |
cdl_component CYGPKG_LIBC_SIGNALS_TRACING { |
# There is no associated value. |
}; |
|
# > |
# Default trace level for raise() |
# This gives the default tracing level for the |
# raise() function. Higher numbers are more |
# verbose. |
# |
cdl_option CYGNUM_LIBC_SIGNALS_RAISE_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# Default hardware exception handler trace level |
# This gives the default tracing level for the |
# hardware exception handler function (if enabled). |
# Higher numbers are more verbose. |
# |
cdl_option CYGNUM_LIBC_SIGNALS_HWHANDLER_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# < |
# C library signal functions build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_SIGNALS_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# C library signal function tests |
# This option specifies the set of tests for the C library |
# signal functions. |
# |
cdl_option CYGPKG_LIBC_SIGNALS_TESTS { |
# Calculated value: |
# "tests/signal1" |
# . ((CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS) ? " tests/signal2" : "") |
# |
# CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS == 0 |
# Flavor: data |
# Current_value: tests/signal1 |
}; |
|
# < |
# < |
# ISO environment startup/termination |
# doc: ref/c-library-startup.html |
# This package manages the control of the |
# environment (in the general sense) that an |
# application would require for full ISO C / POSIX |
# compatibility, including a main() entry point |
# supplied with arguments and an environment |
# (as retrievable by the getenv() function). |
# It also includes at the other end of things, |
# what happens when main() returns or exit() is |
# called. |
# |
cdl_package CYGPKG_LIBC_STARTUP { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
# Requires: CYGINT_LIBC_STARTUP_CONTEXT == 1 |
# CYGINT_LIBC_STARTUP_CONTEXT == 1 |
# --> 1 |
}; |
|
# > |
# main() can be invoked elsewhere |
# Implementors of this interface show that they |
# allow main() to be invoked elsewhere. |
# |
cdl_interface CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: bool |
# Current value: 0 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT |
# DefaultValue: 0 == CYGPKG_KERNEL && 0 == |
# CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# component CYGSEM_LIBC_STARTUP_MAIN_THREAD |
# DefaultValue: 0 != CYGPKG_KERNEL && 0 == CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# option CYGSEM_LIBC_STARTUP_MAIN_OTHER |
# DefaultValue: 0 != CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# option CYGSEM_LIBC_STARTUP_MAIN_OTHER |
# Requires: CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
}; |
|
# Arguments to main() |
# This option allows the setting of the arguments |
# to the main function. This only has any effect |
# when cyg_iso_c_start() is used to start the |
# ISO C compatibility. This will automatically |
# invoke main() in an ISO C compatible fashion. |
# This option is in fact used as argv, and so is |
# an n-tuple of string constants. The final |
# entry must be NULL. Conventionally if argv[0] |
# is supplied, it is used to inform the program |
# of its name. |
# |
cdl_option CYGDAT_LIBC_ARGUMENTS { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "{\"\", NULL}" |
# value_source default |
# Default value: "{\"\", NULL}" |
}; |
|
# Startup context for main() |
# This component describes the options available for |
# what context main() is invoked in, such as in a thread |
# etc. |
# |
cdl_component CYGPKG_LIBC_STARTUP_CONTEXT { |
# There is no associated value. |
}; |
|
# > |
# Startup context implementors |
# |
cdl_interface CYGINT_LIBC_STARTUP_CONTEXT { |
# Implemented by CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT, active, disabled |
# Implemented by CYGSEM_LIBC_STARTUP_MAIN_THREAD, active, enabled |
# Implemented by CYGSEM_LIBC_STARTUP_MAIN_OTHER, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
|
# The following properties are affected by this value |
# package CYGPKG_LIBC_STARTUP |
# Requires: CYGINT_LIBC_STARTUP_CONTEXT == 1 |
}; |
|
# Invoked from initialization context |
# With this option selected, main() will be |
# called via cyg_user_start() (unless the program |
# overrides the default cyg_user_start()). This |
# means it is run in the context of the system |
# initialization code, without the eCos kernel |
# scheduler running, and using the startup stack. |
# This means that any functions that may require |
# interactions with a running kernel will not |
# work (including libc functions, if configured |
# to be thread safe for example), so you should |
# restrict yourself to only calling fully |
# re-entrant functions from within main() in |
# this case. |
# |
cdl_option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 == CYGPKG_KERNEL && 0 == |
# CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# CYGPKG_KERNEL == v2_0 |
# CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0 |
# --> 0 |
}; |
|
# Invoked as eCos thread |
# With this option selected, main() is invoked from an eCos |
# thread. |
# |
cdl_component CYGSEM_LIBC_STARTUP_MAIN_THREAD { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGPKG_KERNEL && 0 == CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# CYGPKG_KERNEL == v2_0 |
# CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0 |
# --> 1 |
# Requires: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS |
# Requires: CYGSEM_LIBC_STARTUP_MAIN_THREAD || (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) |
}; |
|
# > |
# System provides stack for main()'s thread |
# This option controls whether the stack of |
# main()'s thread is provided by the application or |
# provided by the system. When disabled, the |
# application must declare a pointer variable |
# cyg_libc_main_stack which is a pointer to an |
# appropriately aligned region of memory. The |
# application must also declare a variable of |
# type `int' called cyg_libc_main_stack_size |
# which contains the size of the stack in bytes. |
# This must be a multiple of 8. |
# |
cdl_option CYGSEM_LIBC_MAIN_STACK_FROM_SYSTEM { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Priority of main()'s thread |
# This option is used to provide the thread |
# priority which main()'s thread runs at. Be |
# sure to check that this number is appropriate |
# for the kernel scheduler chosen. Different |
# kernel schedulers impose different restrictions |
# on the usable priorities. |
# |
cdl_option CYGNUM_LIBC_MAIN_THREAD_PRIORITY { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 10 |
# value_source default |
# Default value: 10 |
# Legal values: 0 to 0x7fffffff |
}; |
|
# < |
# Invoked elsewhere |
# With this option selected, main() must be |
# invoked by a separate package, or by the user. |
# |
cdl_option CYGSEM_LIBC_STARTUP_MAIN_OTHER { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 != CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0 |
# --> 0 |
# Requires: CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE |
# CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0 |
# --> 0 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS |
# Requires: CYGSEM_LIBC_STARTUP_MAIN_THREAD || (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) |
}; |
|
# < |
# Don't allow main()'s stack size to be set |
# This interface describes whether the stack size |
# value set in this package is supported by the |
# implementation that invokes main. If not, that |
# option is disabled. |
# |
cdl_interface CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE { |
# Implemented by CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT, active, disabled |
# This value cannot be modified here. |
# Flavor: bool |
# Current value: 0 |
|
# The following properties are affected by this value |
# option CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE |
# ActiveIf: !CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE |
}; |
|
# main()'s default thread stack size |
# This option sets the size of the stack used |
# in the context that invokes main(). For example, |
# with an eCos kernel, when the cyg_iso_c_start() |
# function is used to invoke the user-supplied |
# main() function in an ISO C compatible fashion, |
# a separate thread is created to call main(). |
# This option controls the size of that thread's |
# stack, which is allocated in the BSS. It |
# must be a multiple of 8. Note, a low number |
# here may be overriden by the HAL if there is |
# a minimum requirement to process interrupts |
# etc. This option cannot be set if the implementation |
# that invokes main() does not use it. |
# |
cdl_option CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE { |
# ActiveIf constraint: !CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE |
# CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE == 0 |
# --> 1 |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 8192 |
# value_source default |
# Default value: 8192 |
# Legal values: 16 to 0x7fffffff |
}; |
|
# Include atexit() function |
# This option enables the use of the atexit() |
# function, and ensure that the atexit handlers |
# are invoked from within exit() as defined in |
# the ISO C standard. |
# |
cdl_component CYGFUN_LIBC_ATEXIT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# > |
# Number of functions atexit() supports |
# This option sets the number of functions |
# that atexit() has room for. In other words, |
# the number of separate atexit() calls that |
# can be made before calling exit() or returning |
# from main() ( in an environment controlled by |
# cyg_iso_c_start() ). For strict compliance |
# with the ISO C standard this should be at |
# least 32. |
# |
cdl_option CYGNUM_LIBC_ATEXIT_HANDLERS { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 32 |
# value_source default |
# Default value: 32 |
# Legal values: 1 to 0x7fffffff |
}; |
|
# < |
# Make exit() call fflush() |
# This option will ensure that all output |
# streams are flushed when exitting using |
# exit() as prescribed by the ISO C standard. |
# |
cdl_option CYGSEM_LIBC_EXIT_CALLS_FFLUSH { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGINT_ISO_STDIO_FILEACCESS |
# CYGINT_ISO_STDIO_FILEACCESS == 1 |
# --> 1 |
# Requires: CYGINT_ISO_STDIO_FILEACCESS |
# CYGINT_ISO_STDIO_FILEACCESS == 1 |
# --> 1 |
}; |
|
# _exit() stops all threads |
# If this option is enabled then _exit(), |
# which is called from exit() which itself is |
# called on return from main(), stops the eCos |
# scheduler. For strict POSIX 1003.1 |
# compatibility this would be the normal |
# behaviour. To allow the thread to simply |
# exit, without affecting other threads, simply |
# leave this option disabled. If there is no eCos |
# scheduler, then _exit() simply loops |
# irrespective of the setting of this option. |
# |
cdl_option CYGSEM_LIBC_EXIT_STOPS_SYSTEM { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
}; |
|
# Default environment |
# This option allows the setting of the default |
# contents of the environment. This is in fact |
# the contents of the global environment pointer |
# char **environ defined by POSIX 1003.1. Strings |
# must be of the form NAME=VALUE, and the final |
# entry must be NULL. |
# |
cdl_option CYGDAT_LIBC_DEFAULT_ENVIRONMENT { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "{ NULL }" |
# value_source default |
# Default value: "{ NULL }" |
}; |
|
# Invoke default static constructors |
# This option causes the C library to call |
# static constructors with default priority |
# from within the context of the main() thread, |
# working with the co-operation of the HAL. |
# This may be needed for environments that |
# expect static constructors to be run in a |
# thread context. Note that this uses an object |
# with priority 65534. Therefore do not use |
# priority 65534 for any other static objects |
# with this option enabled. |
# |
cdl_option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG |
# CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG == 0 |
# --> 0 |
# Requires: CYGSEM_LIBC_STARTUP_MAIN_THREAD || (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) |
# CYGSEM_LIBC_STARTUP_MAIN_THREAD == 1 |
# CYGSEM_LIBC_STARTUP_MAIN_OTHER == 0 |
# CYGPKG_POSIX_PTHREAD (unknown) == 0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG |
# Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS |
}; |
|
# ISO environment startup/termination build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_STARTUP_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# ISO environment startup/termination tests |
# This option specifies the set of tests for this package. |
# |
cdl_option CYGPKG_LIBC_STARTUP_TESTS { |
# Calculated value: "tests/atexit" |
# Flavor: data |
# Current_value: tests/atexit |
}; |
|
# < |
# < |
# ISO C library standard input/output functions |
# doc: ref/libc.html |
# This package provides standard input/output functions associated |
# with the header file <stdio.h> as specified by the |
# ISO C standard - ISO/IEC 9899:1990. |
# |
cdl_package CYGPKG_LIBC_STDIO { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_IO |
# CYGPKG_IO == v2_0 |
# --> 1 |
# Requires: CYGPKG_IO_SERIAL_HALDIAG |
# CYGPKG_IO_SERIAL_HALDIAG == 1 |
# --> 1 |
# Requires: CYGPKG_LIBC_I18N |
# CYGPKG_LIBC_I18N == v2_0 |
# --> 1 |
# Requires: CYGBLD_ISO_STDIO_FILETYPES_HEADER == "<cyg/libc/stdio/stdio.h>" |
# CYGBLD_ISO_STDIO_FILETYPES_HEADER == <cyg/libc/stdio/stdio.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STDIO_FILEACCESS_HEADER == "<cyg/libc/stdio/stdio.h>" |
# CYGBLD_ISO_STDIO_FILEACCESS_HEADER == <cyg/libc/stdio/stdio.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == "<cyg/libc/stdio/stdio.h>" |
# CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == <cyg/libc/stdio/stdio.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STDIO_CHAR_IO_HEADER == "<cyg/libc/stdio/stdio.h>" |
# CYGBLD_ISO_STDIO_CHAR_IO_HEADER == <cyg/libc/stdio/stdio.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == "<cyg/libc/stdio/stdio.h>" |
# CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == <cyg/libc/stdio/stdio.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STDIO_ERROR_HEADER == "<cyg/libc/stdio/stdio.h>" |
# CYGBLD_ISO_STDIO_ERROR_HEADER == <cyg/libc/stdio/stdio.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STDIO_STREAMS_HEADER == "<cyg/libc/stdio/stdio.h>" |
# CYGBLD_ISO_STDIO_STREAMS_HEADER == <cyg/libc/stdio/stdio.h> |
# --> 1 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
# Requires: CYGINT_ISO_ERRNO_CODES |
# CYGINT_ISO_ERRNO_CODES == 1 |
# --> 1 |
# Requires: CYGINT_ISO_ERRNO |
# CYGINT_ISO_ERRNO == 1 |
# --> 1 |
# Requires: CYGINT_ISO_STRERROR |
# CYGINT_ISO_STRERROR == 1 |
# --> 1 |
# Requires: CYGINT_ISO_STRING_STRFUNCS |
# CYGINT_ISO_STRING_STRFUNCS == 1 |
# --> 1 |
# Requires: CYGINT_ISO_STRING_MEMFUNCS |
# CYGINT_ISO_STRING_MEMFUNCS == 1 |
# --> 1 |
# Requires: CYGINT_ISO_STDLIB_STRCONV |
# CYGINT_ISO_STDLIB_STRCONV == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBM_USE_STDERR |
# Requires: CYGPKG_LIBC_STDIO |
}; |
|
# > |
# Inline versions of <stdio.h> functions |
# This option chooses whether some of the |
# particularly simple functions from |
# <stdio.h> are available as inline |
# functions. This may improve performance, and as |
# the functions are small, may even improve code |
# size. |
# |
cdl_option CYGIMP_LIBC_STDIO_INLINES { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Permitted number of open files |
# This option controls the guaranteed minimum |
# number of simultaneously open files. The ISO |
# C standard requires it to be defined (para |
# 7.9.1), and if strictly compliant, it must be |
# at least 8 (para 7.9.3). In practice it can be |
# as low as 3 - for stdin, stdout and stderr. |
# |
cdl_option FOPEN_MAX { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 8 |
# value_source default |
# Default value: 8 |
# Legal values: 3 to 0x7fffffff |
}; |
|
# Maximum length of filename |
# This option defines the maximum allowed size of |
# a filename in characters. The ISO C standard |
# requires it to be defined (para 7.9.1). |
# |
cdl_option FILENAME_MAX { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 16 |
# value_source default |
# Default value: 16 |
# Legal values: 1 to 0x7fffffff |
}; |
|
# Maximum length of filenames for temporary files |
# This option defines the maximum allowed size of |
# filenames for temporary files as generated by |
# tmpnam(). It is measured in characters, and the |
# ISO C standard requires it to be defined (para |
# 7.9.1). |
# |
cdl_option L_tmpnam { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 16 |
# value_source default |
# Default value: 16 |
# Legal values: 1 to 0x7fffffff |
}; |
|
# Unique file names generated by tmpnam() |
# This option defines the minimum number of |
# unique file names generated by tmpnam(). The |
# ISO C standard requires it to be defined (para |
# 7.9.1). |
# |
cdl_option TMP_MAX { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 0x7fffffff |
}; |
|
# Buffered I/O |
# This option controls whether input/output |
# through the <stdio.h> functions is buffered. |
# This may save some memory per file. It |
# is equivalent to putting every file into |
# non-buffered mode (_IONBF) through setvbuf(), |
# except now it can never be altered back to |
# buffered mode. Disabling buffering is strictly |
# non-compliant with the ISO C standard. |
# |
cdl_component CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option BUFSIZ |
# Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0 |
# option CYGPKG_LIBC_STDIO_FILEIO |
# Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO |
}; |
|
# > |
# Default buffer size |
# This option defines the default size of buffer |
# used with calls to setbuf(), and is the default |
# size for buffered streams that have not had |
# either setbuf() or setvbuf() invoked on them. |
# It is exactly equivalent to the standard |
# constant BUFSIZ, except that it is 0 if |
# CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO is disabled. |
# The ISO C standard requires this to be defined |
# (para 7.9.1), and says it must be at least 256 |
# (para 7.9.2). |
# |
cdl_option CYGNUM_LIBC_STDIO_BUFSIZE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 256 |
# value_source default |
# Default value: 256 |
# Legal values: 1 to 0x7fffffff |
|
# The following properties are affected by this value |
# option BUFSIZ |
# Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0 |
}; |
|
# setbuf()/setvbuf() allows dynamic setting |
# This option controls whether I/O buffers are |
# implemented dynamically within the stdio |
# implementation. Otherwise they will be static, |
# and cannot be changed by setbuf()/setvbuf(). If |
# they are static (i.e. this option is disabled), |
# any attempt to use an arbitrary buffer size, or |
# to pass a user-supplied buffer to setbuf() or |
# setvbuf() will fail - the buffer is implemented |
# internally as a static array taking the size |
# of the configuration option BUFSIZ. The only |
# exception is if a user buffer is not supplied, |
# and the buffer size requested is less than |
# BUFSIZ. In this case, the buffer will |
# be configured to only use that amount of |
# buffering. However the unused memory left over |
# will NOT be freed. If this option is enabled, |
# then setvbuf() can be used to assign a user supplied |
# buffer to the stream. |
# Either setting can be considered to |
# be compliant with the ISO C standard. |
# |
cdl_option CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC |
# Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF |
}; |
|
# setbuf()/setvbuf() uses malloc() |
# This option controls whether buffers set by setbuf() and |
# setvbuf() may be allocated using malloc(). |
# |
cdl_option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGINT_ISO_MALLOC |
# CYGINT_ISO_MALLOC == 1 |
# --> 1 |
# Requires: CYGINT_ISO_MALLOC |
# CYGINT_ISO_MALLOC == 1 |
# --> 1 |
# Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF |
# CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF == 1 |
# --> 1 |
}; |
|
# < |
# Default buffer size (BUFSIZ) |
# |
cdl_option BUFSIZ { |
# Calculated value: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0 |
# CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1 |
# CYGNUM_LIBC_STDIO_BUFSIZE == 256 |
# Flavor: data |
# Current_value: 256 |
}; |
|
# Support for ungetc() |
# This option controls whether ungetc() is |
# supported. If not, then some space can be |
# saved, and speed is improved. Note that you |
# MUST have this defined if you want to use the |
# scanf() family of functions. |
# |
cdl_option CYGFUN_LIBC_STDIO_ungetc { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Dynamic opening/closing of files |
# fopen() and fclose() use dynamic memory |
# allocation routines to allocate memory for |
# new FILE structure pointers. If a malloc |
# implementation is available, this option |
# may be enabled to use |
# fopen() and fclose(). If disabled, only the |
# default console streams - stdin, stdout and |
# stderr - will be available. |
# |
cdl_option CYGPKG_LIBC_STDIO_OPEN { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGINT_ISO_MALLOC |
# CYGINT_ISO_MALLOC == 1 |
# --> 1 |
# Requires: CYGINT_ISO_MALLOC |
# CYGINT_ISO_MALLOC == 1 |
# --> 1 |
}; |
|
# Default console device |
# This option allows you to choose the |
# default console device. In the current |
# implementation, all these devices begin |
# with the prefix /dev/ and are followed by |
# the name of a device. The name of the device |
# depends on the device drivers you have |
# configured in your system. For example, |
# /dev/ttydiag could be the HAL diagnostic output |
# pseudo-device, or /dev/tty0 could be your |
# first serial driver, depending on your |
# configuration. |
# |
cdl_option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "\"/dev/ttydiag\"" |
# value_source default |
# Default value: CYGDAT_IO_SERIAL_TTY_CONSOLE |
# CYGDAT_IO_SERIAL_TTY_CONSOLE == "\"/dev/ttydiag\"" |
# --> "\"/dev/ttydiag\"" |
}; |
|
# Floating point support |
# This component allows floating point support |
# to be enabled in certain standard I/O |
# functions. |
# |
cdl_component CYGPKG_LIBC_STDIO_FLOATING_POINT { |
# There is no associated value. |
}; |
|
# > |
# printf() family |
# This option enables the use of floating point |
# number output in the printf() family (i.e. |
# printf(), sprintf(), vprintf(), etc.) of |
# functions. A substantial amount of code space |
# can be saved if this option is disabled. If it |
# is disabled then floating point specifiers |
# (%e, %f, %g) are ignored, and nothing is |
# output. |
# |
cdl_option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGPKG_LIBM |
# CYGPKG_LIBM == v2_0 |
# --> 1 |
# Requires: CYGPKG_LIBM |
# CYGPKG_LIBM == v2_0 |
# --> 1 |
}; |
|
# scanf() family |
# This option enables the use of floating point |
# number conversion in the scanf() family (i.e. |
# scanf(), sscanf(), vscanf(), etc.) of |
# functions. A substantial amount of code space |
# can be saved if this option is disabled. If it |
# is disabled then floating point specifiers |
# (%e, %f, %g) are ignored, and nothing is |
# converted. |
# |
cdl_option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGPKG_LIBM && |
# 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT |
# CYGPKG_LIBM == v2_0 |
# CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1 |
# --> 1 |
# Requires: CYGPKG_LIBM |
# CYGPKG_LIBM == v2_0 |
# --> 1 |
# Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT |
# CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1 |
# --> 1 |
}; |
|
# < |
# Thread safe I/O streams |
# doc: ref/libc-thread-safety.html |
# This option controls whether standard I/O streams |
# are thread-safe. Having this option set allows |
# the streams to be locked when accessed by |
# multiple threads simultaneously. |
# |
cdl_option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
# Requires: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
}; |
|
# C library stdio functions build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_STDIO_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_STDIO_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_STDIO_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# C library stdio function tests |
# This option specifies the set of tests for the C library |
# stdio functions. |
# |
cdl_option CYGPKG_LIBC_STDIO_TESTS { |
# Calculated value: "tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput" |
# Flavor: data |
# Current_value: tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput |
}; |
|
# < |
# Enable use of FILEIO package for IO operations. |
# |
cdl_option CYGPKG_LIBC_STDIO_FILEIO { |
# This option is not active |
# ActiveIf constraint: CYGPKG_IO_FILEIO |
# CYGPKG_IO_FILEIO (unknown) == 0 |
# --> 0 |
|
# Calculated value: 1 |
# Flavor: bool |
# Current value: 1 |
# Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO |
# CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1 |
# --> 1 |
}; |
|
# < |
# ISO C library general utility functions |
# doc: ref/libc.html |
# This package provides general utility functions in <stdlib.h> |
# as specified by the ISO C standard - ISO/IEC 9899:1990. |
# |
cdl_package CYGPKG_LIBC_STDLIB { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
# Requires: CYGINT_ISO_CTYPE |
# CYGINT_ISO_CTYPE == 1 |
# --> 1 |
# Requires: CYGINT_ISO_STRING_STRFUNCS |
# CYGINT_ISO_STRING_STRFUNCS == 1 |
# --> 1 |
}; |
|
# > |
# Inline versions of <stdlib.h> functions |
# This option chooses whether some of the |
# particularly simple standard utility functions |
# from <stdlib.h> are available as inline |
# functions. This may improve performance, and as |
# the functions are small, may even improve code |
# size. |
# |
cdl_component CYGIMP_LIBC_STDLIB_INLINES { |
# There is no associated value. |
}; |
|
# > |
# abs() / labs() |
# |
cdl_option CYGIMP_LIBC_STDLIB_INLINE_ABS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_ISO_STDLIB_ABS_HEADER == "<cyg/libc/stdlib/abs.inl>" |
# CYGBLD_ISO_STDLIB_ABS_HEADER == <cyg/libc/stdlib/abs.inl> |
# --> 1 |
}; |
|
# div() / ldiv() |
# |
cdl_option CYGIMP_LIBC_STDLIB_INLINE_DIV { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_ISO_STDLIB_DIV_HEADER == "<cyg/libc/stdlib/div.inl>" |
# CYGBLD_ISO_STDLIB_DIV_HEADER == <cyg/libc/stdlib/div.inl> |
# --> 1 |
}; |
|
# atof() / atoi() / atol() |
# |
cdl_option CYGIMP_LIBC_STDLIB_INLINE_ATOX { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_ISO_STDLIB_STRCONV_HEADER == "<cyg/libc/stdlib/atox.inl>" |
# CYGBLD_ISO_STDLIB_STRCONV_HEADER == <cyg/libc/stdlib/atox.inl> |
# --> 1 |
}; |
|
# < |
# Random number generation |
# These options control the behaviour of the |
# functions rand(), srand() and rand_r() |
# |
cdl_component CYGPKG_LIBC_RAND { |
# There is no associated value. |
}; |
|
# > |
# Per-thread random seed |
# doc: ref/libc-thread-safety.html |
# This option controls whether the pseudo-random |
# number generation functions rand() and srand() |
# have their state recorded on a per-thread |
# basis rather than global. If this option is |
# disabled, some per-thread space can be saved. |
# Note there is also a POSIX-standard rand_r() |
# function to achieve a similar effect with user |
# support. Enabling this option will use one slot |
# of kernel per-thread data. You should ensure you |
# have enough slots configured for all your |
# per-thread data. |
# |
cdl_option CYGSEM_LIBC_PER_THREAD_RAND { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# CYGVAR_KERNEL_THREADS_DATA == 1 |
# --> 1 |
}; |
|
# Random number seed |
# This selects the initial random number seed for |
# rand()'s pseudo-random number generator. For |
# strict ISO standard compliance, this should be 1, |
# as per section 7.10.2.2 of the standard. |
# |
cdl_option CYGNUM_LIBC_RAND_SEED { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Legal values: 0 to 0x7fffffff |
}; |
|
# Tracing level |
# Trace verbosity level for debugging the rand(), |
# srand() and rand_r() functions. Increase this |
# value to get additional trace output. |
# |
cdl_option CYGNUM_LIBC_RAND_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# Simplest implementation |
# This provides a very simple implementation of rand() |
# that does not perform well with randomness in the |
# lower significant bits. However it is exceptionally |
# fast. It uses the sample algorithm from the ISO C |
# standard itself. |
# |
cdl_option CYGIMP_LIBC_RAND_SIMPLEST { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Simple implementation #1 |
# This provides a very simple implementation of rand() |
# based on the simplest implementation above. However |
# it does try to work around the lack of randomness |
# in the lower significant bits, at the expense of a |
# little speed. |
# |
cdl_option CYGIMP_LIBC_RAND_SIMPLE1 { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Knuth implementation #1 |
# This implements a slightly more complex algorithm |
# published in Donald E. Knuth's Art of Computer |
# Programming Vol.2 section 3.6 (p.185 in the 3rd ed.). |
# This produces better random numbers than the |
# simplest approach but is slower. |
# |
cdl_option CYGIMP_LIBC_RAND_KNUTH1 { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# < |
# Provides strtod() |
# This option allows use of the utility function |
# strtod() (and consequently atof()) to convert |
# from string to double precision floating point |
# numbers. Disabling this option removes the |
# dependency on the math library package. |
# |
cdl_option CYGFUN_LIBC_strtod { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 != CYGPKG_LIBM |
# CYGPKG_LIBM == v2_0 |
# --> 1 |
# Requires: CYGPKG_LIBM |
# CYGPKG_LIBM == v2_0 |
# --> 1 |
}; |
|
# bsearch() tracing level |
# Trace verbosity level for debugging the <stdlib.h> |
# binary search function bsearch(). Increase this |
# value to get additional trace output. |
# |
cdl_option CYGNUM_LIBC_BSEARCH_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# qsort() tracing level |
# Trace verbosity level for debugging the <stdlib.h> |
# quicksort function qsort(). Increase this value |
# to get additional trace output. |
# |
cdl_option CYGNUM_LIBC_QSORT_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# C library stdlib build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_STDLIB_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building this package. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# C library stdlib tests |
# This option specifies the set of tests for this package. |
# |
cdl_option CYGPKG_LIBC_STDLIB_TESTS { |
# Calculated value: "tests/abs tests/atoi tests/atol tests/bsearch tests/div tests/getenv tests/labs tests/ldiv tests/qsort tests/rand1 tests/rand2 tests/rand3 tests/rand4 tests/srand tests/strtol tests/strtoul" |
# Flavor: data |
# Current_value: tests/abs tests/atoi tests/atol tests/bsearch tests/div tests/getenv tests/labs tests/ldiv tests/qsort tests/rand1 tests/rand2 tests/rand3 tests/rand4 tests/srand tests/strtol tests/strtoul |
}; |
|
# < |
# < |
# ISO C library string functions |
# doc: ref/libc.html |
# This package provides string functions specified by the |
# ISO C standard - ISO/IEC 9899:1990. |
# |
cdl_package CYGPKG_LIBC_STRING { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == "<cyg/libc/string/string.h>" |
# CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == <cyg/libc/string/string.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "<cyg/libc/string/string.h>" |
# CYGBLD_ISO_STRING_MEMFUNCS_HEADER == <cyg/libc/string/string.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "<cyg/libc/string/string.h>" |
# CYGBLD_ISO_STRING_STRFUNCS_HEADER == <cyg/libc/string/string.h> |
# --> 1 |
# Requires: CYGBLD_ISO_STRTOK_R_HEADER == "<cyg/libc/string/string.h>" |
# CYGBLD_ISO_STRTOK_R_HEADER == <cyg/libc/string/string.h> |
# --> 1 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
}; |
|
# > |
# Inline versions of <string.h> functions |
# This option chooses whether some of the |
# particularly simple string functions from |
# <string.h> are available as inline |
# functions. This may improve performance, and as |
# the functions are small, may even improve code |
# size. |
# |
cdl_option CYGIMP_LIBC_STRING_INLINES { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Optimize string functions for code size |
# This option tries to reduce string function |
# code size at the expense of execution speed. The |
# same effect can be produced if the code is |
# compiled with the -Os option to the compiler. |
# |
cdl_option CYGIMP_LIBC_STRING_PREFER_SMALL_TO_FAST { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Provide BSD compatibility functions |
# Enabling this option causes various compatibility functions |
# commonly found in the BSD UNIX operating system to be included. |
# These are functions such as bzero, bcmp, bcopy, bzero, strcasecmp, |
# strncasecmp, index, rindex and swab. |
# |
cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == "<cyg/libc/string/bsdstring.h>" |
# CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == <cyg/libc/string/bsdstring.h> |
# --> 1 |
# Requires: CYGINT_ISO_CTYPE |
# CYGINT_ISO_CTYPE == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGFUN_LIBC_TIME_POSIX |
# Requires: CYGFUN_LIBC_STRING_BSD_FUNCS |
}; |
|
# strtok |
# These options control the behaviour of the |
# strtok() and strtok_r() string tokenization |
# functions. |
# |
cdl_component CYGPKG_LIBC_STRING_STRTOK { |
# There is no associated value. |
}; |
|
# > |
# Per-thread strtok() |
# This option controls whether the string function |
# strtok() has its state recorded on a per-thread |
# basis rather than global. If this option is |
# disabled, some per-thread space can be saved. |
# Note there is also a POSIX-standard strtok_r() |
# function to achieve a similar effect with user |
# support. Enabling this option will use one slot |
# of kernel per-thread data. You should ensure you |
# have enough slots configured for all your |
# per-thread data. |
# |
cdl_option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK { |
# ActiveIf constraint: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
|
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: CYGVAR_KERNEL_THREADS_DATA |
# CYGVAR_KERNEL_THREADS_DATA == 1 |
# --> 1 |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# CYGVAR_KERNEL_THREADS_DATA == 1 |
# --> 1 |
}; |
|
# Tracing level |
# Trace verbosity level for debugging the <string.h> |
# functions strtok() and strtok_r(). Increase this |
# value to get additional trace output. |
# |
cdl_option CYGNUM_LIBC_STRING_STRTOK_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# < |
# C library string functions build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_STRING_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_STRING_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_STRING_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# C library string function tests |
# This option specifies the set of tests for the C library |
# string functions. |
# |
cdl_option CYGPKG_LIBC_STRING_TESTS { |
# Calculated value: "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" |
# Flavor: data |
# Current_value: 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 |
}; |
|
# < |
# < |
# ISO C library date and time functions |
# doc: ref/libc.html |
# This package provides time functions specified by the |
# ISO C standard - ISO/IEC 9899:1990. |
# |
cdl_package CYGPKG_LIBC_TIME { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGBLD_ISO_C_TIME_TYPES_HEADER == "<cyg/libc/time/time.h>" |
# CYGBLD_ISO_C_TIME_TYPES_HEADER == <cyg/libc/time/time.h> |
# --> 1 |
# Requires: CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == "<cyg/libc/time/time.h>" |
# CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == <cyg/libc/time/time.h> |
# --> 1 |
# Requires: CYGPKG_ISOINFRA |
# CYGPKG_ISOINFRA == v2_0 |
# --> 1 |
# Requires: CYGINT_ISO_DIV |
# CYGINT_ISO_DIV == 1 |
# --> 1 |
# Requires: CYGINT_ISO_ABS |
# CYGINT_ISO_ABS == 1 |
# --> 1 |
}; |
|
# > |
# Working clock() function |
# This option controls whether clock() will |
# actually try and determine the process time |
# usage. With this option disabled, clock() does |
# not disappear, but will permanently return |
# (clock_t)-1 as mandated by the ISO C standard. |
# |
cdl_option CYGSEM_LIBC_TIME_CLOCK_WORKING { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_KERNEL_THREADS_TIMER |
# CYGFUN_KERNEL_THREADS_TIMER == 1 |
# --> 1 |
# Requires: CYGVAR_KERNEL_COUNTERS_CLOCK |
# CYGVAR_KERNEL_COUNTERS_CLOCK == 1 |
# --> 1 |
}; |
|
# Working time() function |
# This option controls whether time() will |
# actually try and determine the current calendar |
# time. With this option disabled, time() does |
# not disappear, but will permanently return |
# (time_t)-1 as mandated by the ISO C standard. |
# |
cdl_option CYGSEM_LIBC_TIME_TIME_WORKING { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGPKG_IO_WALLCLOCK |
# CYGPKG_IO_WALLCLOCK == v2_0 |
# --> 1 |
}; |
|
# Working cyg_libc_time_settime() function |
# This option controls whether cyg_libc_time_settime() |
# will actually try and set the current calendar |
# time. With this option disabled, |
# cyg_libc_time_settime() does not disappear, but |
# will permanently return an error. |
# |
cdl_option CYGSEM_LIBC_TIME_SETTIME_WORKING { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGPKG_IO_WALLCLOCK |
# CYGPKG_IO_WALLCLOCK == v2_0 |
# --> 1 |
}; |
|
# POSIX time functions |
# Enabling this option allows the use of the |
# following functions defined in POSIX 1003.1: |
# asctime_r(), ctime_r(), gmtime_r(), strptime(), and |
# localtime_r(). |
# |
cdl_option CYGFUN_LIBC_TIME_POSIX { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_LIBC_STRING_BSD_FUNCS |
# CYGFUN_LIBC_STRING_BSD_FUNCS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# option CYGIMP_LIBC_TIME_CTIME_R_INLINE |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# option CYGIMP_LIBC_TIME_GMTIME_R_INLINE |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# option CYGPKG_LIBC_TIME_TESTS |
# Calculated: |
# "tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time " |
# . (CYGFUN_LIBC_TIME_POSIX ? "tests/strptime" : "") |
# |
}; |
|
# Single UNIX extensions |
# Enabling this option allows the use of |
# certain additional conversion specifiers |
# in the strftime function. |
# |
cdl_option CYGFUN_LIBC_TIME_SUS_EXTNS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Time zone offsets |
# These options control the default STandarD (STD) |
# and Daylight Savings Time (DST) |
# time offsets so that dates can be set correctly |
# for the local environment. |
# |
cdl_component CYGPKG_LIBC_TIME_ZONES { |
# There is no associated value. |
}; |
|
# > |
# Default Daylight Savings Time state |
# This option controls whether the initial |
# time environment is set up as STD, DST or |
# unknown. Use the value 1 for DST, 0 for STD, |
# and (-1) for unknown. This can also be set at |
# runtime using the cyg_libc_time_setdst() |
# function. |
# |
cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_STATE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value -1 |
# value_source default |
# Default value: -1 |
# Legal values: -1 to 1 |
}; |
|
# Default Standard Time offset |
# This option controls the offset from UTC in |
# seconds when in local Standard Time. This |
# value can be positive or negative. It |
# can also be set at run time using the |
# cyg_libc_time_setzoneoffsets() function. |
# |
cdl_option CYGNUM_LIBC_TIME_STD_DEFAULT_OFFSET { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: -90000 to 90000 |
}; |
|
# Default Daylight Savings Time offset |
# This option controls the offset from UTC in |
# seconds when in local Daylight Savings Time. This |
# value can be positive or negative. It |
# can also be set at run time using the |
# cyg_libc_time_setzoneoffsets() function. |
# |
cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_OFFSET { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 3600 |
# value_source default |
# Default value: 3600 |
# Legal values: -90000 to 90000 |
}; |
|
# < |
# Inline functions |
# These options control whether certain functions |
# are available in inline form. This may lead to |
# faster code at the expense of code space. But for |
# some functions, or some functions with constant |
# arguments, it may in fact lead to smaller code. |
# |
cdl_component CYGPKG_LIBC_TIME_INLINES { |
# There is no associated value. |
}; |
|
# > |
# asctime() |
# Allow the asctime() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_ASCTIME_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# ctime() |
# Allow the ctime() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_CTIME_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# difftime() |
# Allow the difftime() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_DIFFTIME_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# gmtime() |
# Allow the gmtime() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_GMTIME_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# localtime() |
# Allow the localtime() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_LOCALTIME_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# mktime() |
# Allow the mktime() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_MKTIME_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# asctime_r() |
# Allow the asctime_r() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# CYGFUN_LIBC_TIME_POSIX == 1 |
# --> 1 |
}; |
|
# ctime_r() |
# Allow the ctime_r() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_CTIME_R_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# CYGFUN_LIBC_TIME_POSIX == 1 |
# --> 1 |
}; |
|
# gmtime_r() |
# Allow the gmtime_r() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_GMTIME_R_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# CYGFUN_LIBC_TIME_POSIX == 1 |
# --> 1 |
}; |
|
# localtime_r() |
# Allow the localtime_r() function to be inlined |
# |
cdl_option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGFUN_LIBC_TIME_POSIX |
# CYGFUN_LIBC_TIME_POSIX == 1 |
# --> 1 |
}; |
|
# < |
# clock() tracing level |
# Trace verbosity level for debugging the clock() |
# function. Increase this value to get |
# additional trace output when tracing is enabled. |
# |
cdl_option CYGNUM_LIBC_TIME_CLOCK_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# C library time functions build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBC_TIME_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBC_TIME_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value -Wno-format |
# value_source default |
# Default value: -Wno-format |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the C library. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBC_TIME_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# C library time and date function tests |
# This option specifies the set of tests for the C library |
# time and date functions. |
# |
cdl_option CYGPKG_LIBC_TIME_TESTS { |
# Calculated value: |
# "tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time " |
# . (CYGFUN_LIBC_TIME_POSIX ? "tests/strptime" : "") |
# |
# CYGFUN_LIBC_TIME_POSIX == 1 |
# Flavor: data |
# Current_value: tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time tests/strptime |
}; |
|
# < |
# < |
# < |
# Math library |
# doc: ref/libc.html |
# ISO standard floating point mathematical library |
# containing many useful functions for mathematical |
# calculations. |
# |
cdl_package CYGPKG_LIBM { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT |
# Requires: CYGPKG_LIBM |
# option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT |
# DefaultValue: 0 != CYGPKG_LIBM |
# option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT |
# Requires: CYGPKG_LIBM |
# option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT |
# DefaultValue: 0 != CYGPKG_LIBM && |
# 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT |
# option CYGFUN_LIBC_strtod |
# Requires: CYGPKG_LIBM |
# option CYGFUN_LIBC_strtod |
# DefaultValue: 0 != CYGPKG_LIBM |
}; |
|
# > |
# Compatibility mode |
# These options deal with behaviour related to |
# the various compatibility modes - POSIX, IEEE, |
# X/OPEN and SVID. |
# |
cdl_component CYGPKG_LIBM_COMPATIBILITY { |
# There is no associated value. |
}; |
|
# > |
# |
cdl_interface CYGINT_LIBM_COMPAT { |
# Implemented by CYGSEM_LIBM_COMPAT_IEEE_ONLY, active, disabled |
# Implemented by CYGNUM_LIBM_COMPATIBILITY, active, enabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 == CYGINT_LIBM_COMPAT |
# CYGINT_LIBM_COMPAT == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_LIBM_COMPAT |
# Requires: 1 == CYGINT_LIBM_COMPAT |
}; |
|
# IEEE-only |
# The math library can be hard-coded to only |
# behave in one compatibility mode - IEEE. This |
# cannot be changed at run-time. IEEE mode is the |
# most minimal of the compatibility modes, and so |
# this will best help code size and speed, as well |
# as omitting the code for other compatibility |
# modes. If not defined, the math library can be |
# set at run-time to any of the supported |
# compatibility modes. |
# |
cdl_option CYGSEM_LIBM_COMPAT_IEEE_ONLY { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBM_USE_STDERR |
# Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY |
# option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE |
# Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY |
}; |
|
# Default mode |
# If you want to have support for more than one |
# compatibility mode settable at run-time, rather |
# than hard-coded IEEE mode, this component lets |
# you choose which mode should be the default. |
# |
cdl_component CYGNUM_LIBM_COMPATIBILITY { |
# Flavor: booldata |
# No user value, uncomment the following line to provide one. |
# user_value 1 POSIX |
# value_source default |
# Default value: 1 POSIX |
# Legal values: "POSIX" "IEEE" "XOPEN" "SVID" |
# Requires: CYGPKG_LIBC |
# CYGPKG_LIBC == v2_0 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGNUM_LIBM_COMPAT_DEFAULT |
# Calculated: CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE" ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID" ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>" |
# option CYGNUM_LIBM_COMPAT_DEFAULT |
# Calculated: CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE" ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID" ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>" |
# option CYGNUM_LIBM_COMPAT_DEFAULT |
# Calculated: CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE" ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID" ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>" |
# option CYGNUM_LIBM_COMPAT_DEFAULT |
# Calculated: CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE" ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID" ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>" |
}; |
|
# > |
# Numeric representation |
# This option automatically defines the default compatibility |
# mode for numeric representation in terms of the values used |
# to set that mode at run-time. |
# |
cdl_option CYGNUM_LIBM_COMPAT_DEFAULT { |
# Calculated value: CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE" ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID" ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>" |
# CYGNUM_LIBM_COMPATIBILITY == POSIX |
# CYGNUM_LIBM_COMPATIBILITY == POSIX |
# CYGNUM_LIBM_COMPATIBILITY == POSIX |
# CYGNUM_LIBM_COMPATIBILITY == POSIX |
# Flavor: data |
# Current_value: CYGNUM_LIBM_COMPAT_POSIX |
}; |
|
# < |
# SVID3-style scalb() |
# SVID3 defined the scalb() function as double |
# scalb(double, double) rather than double |
# scalb(double, int) which is used by IBM, DEC, and |
# probably others. Enabling this option chooses |
# the (double, double) version. Note there is a |
# function double scalbn(double, int) which is |
# unaffected by this choice. |
# |
cdl_option CYGFUN_LIBM_SVID3_scalb { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
}; |
|
# Reduce namespace pollution |
# If you do not want to use either the X/Open or |
# SVID3 compatibility modes, you may want to define |
# this option to reduce the chance of namespace |
# pollution. This is particularly likely to occur |
# here as these standards define symbols with |
# names that often appear in applications, such as |
# exception, DOMAIN, OVERFLOW, etc. If your |
# application also used these names, it may cause |
# problems. |
# |
cdl_option CYGSYM_LIBM_NO_XOPEN_SVID_NAMESPACE_POLLUTION { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
}; |
|
# Output to stderr for math errors |
# The SVID3 standard says that error |
# messages should be output on the stderr console |
# output stream. This option allows this ability |
# to be explicitly controlled. However, this still |
# only has an effect in SVID3 compatibility mode. |
# |
cdl_option CYGSEM_LIBM_USE_STDERR { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY |
# CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0 |
# --> 1 |
# Requires: CYGPKG_LIBC_STDIO |
# CYGPKG_LIBC_STDIO == v2_0 |
# --> 1 |
}; |
|
# < |
# Thread safety |
# This option controls whether the C library has |
# support for thread safe operation in general. |
# This requires eCos kernel support for per-thread |
# data, and adjustment of the stack limit. |
# |
cdl_component CYGPKG_LIBM_THREAD_SAFETY { |
# There is no associated value. |
}; |
|
# > |
# Compatibility mode setting |
# This option makes the setting of the compatiblity |
# mode be a per-thread property. This directly |
# implies that it also becomes thread-safe. |
# |
cdl_option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY |
# CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0 |
# --> 1 |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# CYGVAR_KERNEL_THREADS_DATA == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL |
# Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE |
}; |
|
# gamma() and lgamma() |
# This option makes the gamma() and lgamma() |
# functions be thread-safe. Note that these |
# functions are identical - they take the log of |
# the absolute value of their argument. The sign |
# of the argument is stored in a variable called |
# signgam. Enabling this option makes signgam |
# a per-thread variable. Note there are also |
# gamma_r() and lgamma_r() alternatives that |
# allow signgam to be passed in by reference as |
# an argument. |
# |
cdl_option CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# CYGVAR_KERNEL_THREADS_DATA == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGNUM_LIBM_SIGNGAM_TRACE_LEVEL |
# Requires: CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS |
}; |
|
# < |
# Tracing output levels in math library |
# Tracing support is useful for debugging. Some |
# Math library modules can be configured with |
# different levels of tracing verbosity. These |
# levels can be configured here. |
# |
cdl_component CYGPKG_LIBM_TRACE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Requires: CYGDBG_USE_TRACING |
# CYGDBG_USE_TRACING == 0 |
# --> 0 |
}; |
|
# > |
# Compatibility mode get/set |
# Trace level for debugging the getting and |
# setting of the compatibility mode when it is |
# configured to be thread-safe. |
# |
cdl_option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL { |
# This option is not active |
# The parent CYGPKG_LIBM_TRACE is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
# Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE |
# CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE == 0 |
# --> 0 |
}; |
|
# signgam variable access |
# Trace level for debugging all accesses to the |
# signgam variable in thread-safe mode. |
# |
cdl_option CYGNUM_LIBM_SIGNGAM_TRACE_LEVEL { |
# This option is not active |
# The parent CYGPKG_LIBM_TRACE is disabled |
|
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
# Requires: CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS |
# CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS == 0 |
# --> 0 |
}; |
|
# < |
# Bessel function limit of significance |
# For the Bessel functions (j0(), j1(), jn(), |
# y0(), y1(), yn()) this option defines the |
# maximum absolute value of the ordinate |
# before we assume total loss of significance. |
# This number must be a floating-point number (e.g. |
# contains a decimal point), and should be |
# large. |
# |
cdl_option X_TLOSS { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 1.41484755040569E+16 |
# value_source default |
# Default value: 1.41484755040569E+16 |
# Legal values: 1 to 1e308 |
}; |
|
# Math library build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_LIBM_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the math library. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_LIBM_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: ((0 == CYGPKG_HAL_I386) && (0 == CYGPKG_HAL_SYNTH_I386)) ? "" : "-ffloat-store" |
# CYGPKG_HAL_I386 (unknown) == 0 |
# CYGPKG_HAL_SYNTH_I386 (unknown) == 0 |
# --> "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the math library. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_LIBM_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Math library tests |
# This option specifies the set of tests for the math library. |
# |
cdl_option CYGPKG_LIBM_TESTS { |
# Calculated value: "tests/vectors/acos tests/vectors/asin tests/vectors/atan tests/vectors/atan2 tests/vectors/ceil tests/vectors/cos tests/vectors/cosh tests/vectors/exp tests/vectors/fabs tests/vectors/floor tests/vectors/fmod tests/vectors/frexp tests/vectors/ldexp tests/vectors/log tests/vectors/log10 tests/vectors/modf tests/vectors/pow tests/vectors/sin tests/vectors/sinh tests/vectors/sqrt tests/vectors/tan tests/vectors/tanh" |
# Flavor: data |
# Current_value: tests/vectors/acos tests/vectors/asin tests/vectors/atan tests/vectors/atan2 tests/vectors/ceil tests/vectors/cos tests/vectors/cosh tests/vectors/exp tests/vectors/fabs tests/vectors/floor tests/vectors/fmod tests/vectors/frexp tests/vectors/ldexp tests/vectors/log tests/vectors/log10 tests/vectors/modf tests/vectors/pow tests/vectors/sin tests/vectors/sinh tests/vectors/sqrt tests/vectors/tan tests/vectors/tanh |
}; |
|
# < |
# < |
# Wallclock device |
# The wallclock device provides real time stamps, as opposed |
# to the eCos kernel timers which typically just count the |
# number of clock ticks since the hardware was powered up. |
# Depending on the target platform this device may involve |
# interacting with a suitable clock chip, or it may be |
# emulated by using the kernel timers. |
# |
cdl_package CYGPKG_IO_WALLCLOCK { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
|
# The following properties are affected by this value |
# option CYGSEM_LIBC_TIME_TIME_WORKING |
# Requires: CYGPKG_IO_WALLCLOCK |
# option CYGSEM_LIBC_TIME_SETTIME_WORKING |
# Requires: CYGPKG_IO_WALLCLOCK |
}; |
|
# > |
# Number of wallclock hardware implementations |
# |
cdl_interface CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# option CYGPKG_WALLCLOCK_EMULATE |
# DefaultValue: 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS |
# option CYGIMP_WALLCLOCK_NONE |
# DefaultValue: !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS |
}; |
|
# Number of wallclock implementations |
# |
cdl_interface CYGINT_WALLCLOCK_IMPLEMENTATIONS { |
# Implemented by CYGPKG_WALLCLOCK_EMULATE, active, enabled |
# Implemented by CYGIMP_WALLCLOCK_NONE, active, disabled |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 1 |
# Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS |
# CYGINT_WALLCLOCK_IMPLEMENTATIONS == 1 |
# --> 1 |
|
# The following properties are affected by this value |
# interface CYGINT_WALLCLOCK_IMPLEMENTATIONS |
# Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS |
}; |
|
# Wallclock driver supports set/get mode |
# |
cdl_interface CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED { |
# No options implement this inferface |
# This value cannot be modified here. |
# Flavor: data |
# Current_value: 0 |
|
# The following properties are affected by this value |
# option CYGSEM_WALLCLOCK_MODE |
# DefaultValue: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ? "set_get" : "init_get" |
# option CYGSEM_WALLCLOCK_MODE |
# Requires: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED || CYGSEM_WALLCLOCK_MODE == "init_get" |
}; |
|
# Wallclock mode |
# The wallclock driver can be used in one of two |
# modes. Set/get mode allows time to be kept during power |
# off (assuming there's a battery backed clock). Init/get |
# mode is slightly smaller and can be used when there is no |
# battery backed clock - in this mode time 0 is the time of |
# the board power up. |
# |
cdl_option CYGSEM_WALLCLOCK_MODE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value init_get |
# value_source default |
# Default value: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ? "set_get" : "init_get" |
# CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0 |
# --> init_get |
# Legal values: "init_get" "set_get" |
# Requires: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED || CYGSEM_WALLCLOCK_MODE == "init_get" |
# CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0 |
# CYGSEM_WALLCLOCK_MODE == init_get |
# --> 1 |
|
# The following properties are affected by this value |
# option CYGSEM_WALLCLOCK_MODE |
# Requires: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED || CYGSEM_WALLCLOCK_MODE == "init_get" |
# option CYGSEM_WALLCLOCK_SET_GET_MODE |
# Calculated: CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0 |
}; |
|
# Wallclock set/get mode |
# |
cdl_option CYGSEM_WALLCLOCK_SET_GET_MODE { |
# Calculated value: CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0 |
# CYGSEM_WALLCLOCK_MODE == init_get |
# Flavor: bool |
# Current value: 0 |
}; |
|
# Wallclock implementation |
# Implementations of the wallclock device. |
# |
cdl_component CYGPKG_IO_WALLCLOCK_IMPLEMENTATION { |
# There is no associated value. |
}; |
|
# > |
# Wallclock emulator |
# When this option is enabled, a wallclock device will be |
# emulated using the kernel real-time clock. |
# |
cdl_option CYGPKG_WALLCLOCK_EMULATE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS |
# CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0 |
# --> 1 |
# Requires: CYGPKG_KERNEL |
# CYGPKG_KERNEL == v2_0 |
# --> 1 |
}; |
|
# No wallclock |
# Disables the wallclock. |
# |
cdl_option CYGIMP_WALLCLOCK_NONE { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS |
# CYGPKG_KERNEL == v2_0 |
# CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0 |
# --> 0 |
}; |
|
# < |
# Wallclock build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_IO_WALLCLOCK_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the wallclock device. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the wallclock device. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Wallclock tests |
# This option specifies the set of tests for the |
# wallclock device. |
# |
cdl_option CYGPKG_IO_WALLCLOCK_TESTS { |
# Calculated value: CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : "" |
# CYGPKG_KERNEL == v2_0 |
# Flavor: data |
# Current_value: tests/wallclock tests/wallclock2 |
}; |
|
# < |
# < |
# Common error code support |
# This package contains the common list of error and |
# status codes. It is held centrally to allow |
# packages to interchange error codes and status |
# codes in a common way, rather than each package |
# having its own conventions for error/status |
# reporting. The error codes are modelled on the |
# POSIX style naming e.g. EINVAL etc. This package |
# also provides the standard strerror() function to |
# convert error codes to textual representation, as |
# well as an implementation of the errno idiom. |
# |
cdl_package CYGPKG_ERROR { |
# Packages cannot be added or removed, nor can their version be changed, |
# simply by editing their value. Instead the appropriate configuration |
# should be used to perform these actions. |
|
# This value cannot be modified here. |
# Flavor: booldata |
# Current value: 1 v2_0 |
# Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "<cyg/error/codes.h>" |
# CYGBLD_ISO_ERRNO_CODES_HEADER == <cyg/error/codes.h> |
# --> 1 |
|
# The following properties are affected by this value |
# package CYGPKG_IO |
# Requires: CYGPKG_ERROR |
# package CYGPKG_IO_SERIAL |
# Requires: CYGPKG_ERROR |
}; |
|
# > |
# errno variable |
# This package controls the behaviour of the |
# errno variable (or more strictly, expression) |
# from <errno.h>. |
# |
cdl_component CYGPKG_ERROR_ERRNO { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_ISO_ERRNO_HEADER == "<cyg/error/errno.h>" |
# CYGBLD_ISO_ERRNO_HEADER == <cyg/error/errno.h> |
# --> 1 |
}; |
|
# > |
# Per-thread errno |
# This option controls whether the standard error |
# code reporting variable errno is a per-thread |
# variable, rather than global. |
# |
cdl_option CYGSEM_ERROR_PER_THREAD_ERRNO { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGVAR_KERNEL_THREADS_DATA |
# CYGVAR_KERNEL_THREADS_DATA == 1 |
# --> 1 |
}; |
|
# Tracing level |
# Trace verbosity level for debugging the errno |
# retrieval mechanism in errno.cxx. Increase this |
# value to get additional trace output. |
# |
cdl_option CYGNUM_ERROR_ERRNO_TRACE_LEVEL { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value 0 |
# value_source default |
# Default value: 0 |
# Legal values: 0 to 1 |
}; |
|
# < |
# strerror function |
# This package controls the presence and behaviour of the |
# strerror() function from <string.h> |
# |
cdl_option CYGPKG_ERROR_STRERROR { |
# Flavor: bool |
# No user value, uncomment the following line to provide one. |
# user_value 1 |
# value_source default |
# Default value: 1 |
# Requires: CYGBLD_ISO_STRERROR_HEADER == "<cyg/error/strerror.h>" |
# CYGBLD_ISO_STRERROR_HEADER == <cyg/error/strerror.h> |
# --> 1 |
}; |
|
# Error package build options |
# Package specific build options including control over |
# compiler flags used only in building this package, |
# and details of which tests are built. |
# |
cdl_component CYGPKG_ERROR_OPTIONS { |
# There is no associated value. |
}; |
|
# > |
# Additional compiler flags |
# This option modifies the set of compiler flags for |
# building the error package. These flags are used in addition |
# to the set of global flags. |
# |
cdl_option CYGPKG_ERROR_CFLAGS_ADD { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# Suppressed compiler flags |
# This option modifies the set of compiler flags for |
# building the error package. These flags are removed from |
# the set of global flags if present. |
# |
cdl_option CYGPKG_ERROR_CFLAGS_REMOVE { |
# Flavor: data |
# No user value, uncomment the following line to provide one. |
# user_value "" |
# value_source default |
# Default value: "" |
}; |
|
# < |
# < |
# < |
|
/trunk/ecos-2.0/configure.in
0,0 → 1,195
dnl Process this file with autoconf to produce a configure script. |
dnl ==================================================================== |
dnl |
dnl configure.in |
dnl |
dnl Top-level configure script for eCos software. |
dnl |
dnl ==================================================================== |
dnl ####ECOSHOSTGPLCOPYRIGHTBEGIN#### |
dnl ---------------------------------------------------------------------------- |
dnl Copyright (C) 2002, 2003 Bart Veer |
dnl Copyright (C) 1998, 1999, 2000, 2001 Red Hat, Inc. |
dnl |
dnl This file is part of the eCos host tools. |
dnl |
dnl This program is free software; you can redistribute it and/or modify it |
dnl under the terms of the GNU General Public License as published by the Free |
dnl Software Foundation; either version 2 of the License, or (at your option) |
dnl any later version. |
dnl |
dnl This program is distributed in the hope that it will be useful, but WITHOUT |
dnl ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
dnl FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
dnl more details. |
dnl |
dnl You should have received a copy of the GNU General Public License along with |
dnl this program; if not, write to the Free Software Foundation, Inc., |
dnl 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
dnl ---------------------------------------------------------------------------- |
dnl ####ECOSHOSTGPLCOPYRIGHTEND#### |
dnl ==================================================================== |
dnl#####DESCRIPTIONBEGIN#### |
dnl |
dnl Author(s): bartv |
dnl Contact(s): bartv |
dnl Date: 1998/12/17 |
dnl Version: 0.01 |
dnl |
dnl####DESCRIPTIONEND#### |
dnl ==================================================================== |
|
dnl eCos is a componentized architecture for deeply embedded systems. |
dnl It requires a very different configuration system from typical |
dnl autoconfiscated software such as the various GNU packages. |
dnl |
dnl The main eCos host-side software is autoconfiscated to some extent, |
dnl in that the usual sequence of "configure;make;make install" will |
dnl work under the right conditions. However it does not conform to |
dnl the GNU coding standards in numerous ways, for example "make dist" |
dnl will not work. The main eCos host-side software lives in the |
dnl "host" subdirectory, and is built unconditionally. |
dnl |
dnl The eCos target-side software lives in the "packages" subdirectory, |
dnl and is organized in numerous subdirectories corresponding to different |
dnl packages and potentially different versions of each package. In the |
dnl master repository managed by CVS there will only be one version of |
dnl each package, "current", which simplifies things somewhat. Other |
dnl repositories will not be quite so straightforward and require a |
dnl suitable administration tool. |
dnl |
dnl The various eCos packages are not currently auto-confiscated. |
dnl In particular building eCos requires the use of eCos configuration |
dnl technology, not autoconf - there is simply no good way of handling |
dnl a system as highly configurable as eCos using a few command-line |
dnl options passed to "configure". There would also be serious confusion |
dnl between host and target, especially when e.g. cross-compiling the |
dnl host tools. However a possible future enhancement |
dnl would involve making eCos releases via configure and make, thus |
dnl allowing for a release process that combines building the various |
dnl host-side tools such as gcc with creating eCos epk's for the various |
dnl packages. |
dnl |
dnl A complication is that some of the eCos target-side packages also |
dnl contain package-specific host-side support. For example the |
dnl Linux synthetic target support uses special host-side software |
dnl to provide I/O facilities: the architectural HAL package provdes |
dnl generic support, the synthetic ethernet package extends this |
dnl with ethernet support, and so on. Such package-specific host-side |
dnl software does not belong in the main host subdirectory, that |
dnl would make it very difficult to distribute new packages or |
dnl new versions of a package. However keeping the code with the |
dnl various packages makes building more complicated. |
dnl |
dnl 1) if the entire repository is managed by CVS or anoncvs, this |
dnl configure script will search the packages tree for any packages |
dnl that have host-side software that needs to be built - |
dnl specifically, that have a file "configure" inside a "host" |
dnl subdirectory in a version of a package. |
dnl |
dnl 2) if instead the repository contains additional packages |
dnl installed as epk's and managed by an administration tool then |
dnl it is the responsibility of that tool to let the users build |
dnl and rebuild the host-side software as required, for whichever |
dnl host platform or platforms are being used. In other words |
dnl it is the responsibility of the admin tool to create a |
dnl suitable build directory and run "configure; make; make install", |
dnl usually as part of the installation process. Note that several |
dnl versions of a package may be installed, and it is the |
dnl responsibility of each package to take this into account |
dnl (although the configure macros are aware of this to some extent, |
dnl and will e.g. generate suitable install directory names). |
dnl Also note that the top-level configure script will not pick |
dnl up such packages because they will be versioned, i.e. the |
dnl test for current/host/configure will fail because the |
dnl version will not be "current". |
dnl |
dnl 3) as a special case it may be desirable to ship pre-built binaries |
dnl of some of the package-specific software. It is not clear |
dnl just what would be the best way of shipping these - putting |
dnl them into the epk's would not be quite right because that would |
dnl make the epk's host-specific rather than generic. |
dnl |
dnl There is an unresolved problem with possible dependencies between |
dnl packages, if e.g. the host-side of the synthetic ethernet package could |
dnl only be built after the architectural synthetic target package. |
|
dnl Some of the eCos documentation is generic and lives in the "doc" |
dnl subdirectory. Other eCos documentation is package-specific and lives |
dnl in the appropriate package directory. At present there is no support |
dnl for building the documentation via configure and make, but such |
dnl support may be added in future. |
dnl |
dnl There is a subdirectory acsupport containing various files such |
dnl as config.guess and install.sh that are common. This also contains |
dnl an acinclude.m4 file with various macros that are useful for |
dnl eCos. |
|
dnl Generic initialization. |
AC_INIT(acsupport/config.guess) |
AC_CONFIG_AUX_DIR(acsupport) |
AC_CANONICAL_HOST |
AM_INIT_AUTOMAKE(eCos,2.0,0) |
AM_MAINTAINER_MODE |
ECOS_CHECK_BUILD_ne_SRC |
|
dnl Nothing actually gets built in this directory, so there should be no |
dnl need to worry about compiler flags etc. Instead, the problem is |
dnl figuring out what should actually get built. |
dnl |
dnl 1) the host subdirectory should always get built, if it exists. |
dnl With the 2.0 release system the directory gets moved to |
dnl tools/src |
|
if test -f "${srcdir}/host/configure" ; then |
SUBDIRS="host" |
elif test -f "${srcdir}/tools/src/configure" ; then |
SUBDIRS="tools/src" |
else |
SUBDIRS="" |
fi |
|
dnl 2) any package which has a configure script in a |
dnl current/host subdirectory should also get built. |
dnl |
dnl Searching the directory tree is currently done by shell globbing. |
dnl Invoking "find" with suitable arguments might be quicker, but |
dnl less portable. On some hosts there may be problems with environmental |
dnl limits if too many packages provide host-side software. |
dnl |
dnl Currently there is no ordering of packages, so e.g. a device |
dnl driver's host-side support cannot depend on some HAL package |
dnl because the latter may not have been built and installed yet. |
dnl This is a good thing because packages are meant to be self-contained |
dnl whenever possible. Interaction between packages is typically handled |
dnl at the Tcl level at run-time, so there are no build-time complications. |
|
PKGHOSTDIRS="" |
FOUND_CONFIGURES="" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/*/*/host/configure" |
FOUND_CONFIGURES="${FOUND_CONFIGURES} ${srcdir}/packages/*/*/*/*/*/*/host/configure" |
for configure in ${FOUND_CONFIGURES}; do |
if test -f ${configure}; then |
dnl A configure script has been found in the source tree. |
dnl First turn it into a directory, then replace the absolute path |
dnl with a relative one. |
hostdir=`dirname ${configure}` |
hostdir=`echo ${hostdir} | sed -e "s:^${srcdir}/::"` |
PKGHOSTDIRS="${PKGHOSTDIRS} ${hostdir}" |
fi |
done |
|
SUBDIRS="${SUBDIRS} ${PKGHOSTDIRS}" |
|
dnl Because the eCos directory layout does not conform to GNU conventions |
dnl it is necessary to create various levels of intermediate directories. |
dnl This happens via config.status, prior to the recursion into the |
dnl appropriate directories. |
AC_OUTPUT_COMMANDS([${CONFIG_SHELL-/bin/sh} ${top_srcdir}/acsupport/mkinstalldirs ${REQUIRED_DIRS}],REQUIRED_DIRS="${SUBDIRS}") |
|
AC_SUBST(SUBDIRS) |
AC_CONFIG_SUBDIRS(${SUBDIRS}) |
AC_OUTPUT(Makefile) |
/trunk/ecos-2.0/ChangeLog
0,0 → 1,116
2003-03-27 Bart Veer <bartv@ecoscentric.com> |
|
* configure.in, configure: |
Look for the host-side sources in tools/src as well as in host, as |
per the 2.0 release tree. |
Look for per-package host-side software in any/all versions of a |
package, not just "current". |
|
2003-02-12 Bart Veer <bartv@ecoscentric.com> |
|
* README.host: update Tcl-related instructions |
|
* Makefile.in: regenerate |
|
2002-08-13 Bart Veer <bartv@ecoscentric.com> |
|
* README.host: update host-side build instructions |
|
2002-08-03 Bart Veer <bartv@ecoscentric.com> |
|
* acinclude.m4, configure.in, Makefile.am: |
Rework host-side autoconf support |
|
1999-11-10 Bart Veer <bartv@cygnus.co.uk> |
|
* configure.in |
* configure |
Added host/tools/configtool/standalone/common |
|
1999-11-09 Bart Veer <bartv@cygnus.co.uk> |
|
* configure: |
* configure.in: |
Added host/tools/ecostest/common, suppressed the configtool |
support for now. |
|
1999-08-12 Bart Veer <bartv@cygnus.co.uk> |
|
* Makefile.in: |
* acinclude.m4: |
* aclocal.m4: |
* configure.in: |
* configure: |
First attempt at autoconfiscation of the configtool. |
|
1999-06-03 Bart Veer <bartv@cygnus.co.uk> |
|
* acinclude.m4: |
Trying to sort out the compiler flags a bit better. |
|
1999-06-02 Bart Veer <bartv@cygnus.co.uk> |
|
* acinclude.m4: |
Added -enable-debuginfo flag which will do the right thing |
for both gcc/g++ (add -g) and VC++ (add -MDd or -MD) |
|
1999-03-25 Bart Veer <bartv@cygnus.co.uk> |
|
* configure.in: |
* aclocal.m4: |
* acinclude.m4: |
* Makefile.am: |
Sorting out the banner. |
|
1999-01-26 Bart Veer <bartv@cygnus.co.uk> |
|
* configure.in: |
* configure: |
* aclocal.m4: |
* Makefile.in |
Update to use autoconf 2.13 and automake 1.4 |
|
* acinclude.m4 (CYG_AC_PATH_TCL): |
Improve the support for linking with Tcl |
|
1999-01-21 Bart Veer <bartv@cygnus.co.uk> |
|
* acinclude.m4: |
Added new macro CYG_AC_SUBST_VERSION so that different packages |
can use different symbols for versioning. |
|
1999-01-19 Bart Veer <bartv@cygnus.co.uk> |
|
* acinclude.m4: |
* aclocal.m4: |
* Makefile.in: |
Added new macros: CYG_AC_MSVC_PATH for handling pathname |
problems between cygwin and VC++; and CYG_AC_PATH_TCL so |
that the user can specify the location of a suitable Tcl |
installation. |
|
1998-12-24 Bart Veer <bartv@cygnus.co.uk> |
|
* configure.in: |
* configure: |
* aclocal.m4: |
* acinclude.m4: |
* Makefile.in: |
* Makefile.am: |
Provide support for building all host-side packages. |
|
1998-07-13 Bart Veer <bartv@cygnus.co.uk> |
|
* ltconfig |
* ltmain-sh |
Merge with latest versions from devo |
|
* missing |
* mkinstalldirs |
* config.guess |
* config.sub |
* install-sh |
* ltconfig |
* ltmain-sh |
Restore files that had been removed prematurely |
|
/trunk/ecos-2.0/COPYING
0,0 → 1,340
GNU GENERAL PUBLIC LICENSE |
Version 2, June 1991 |
|
Copyright (C) 1989, 1991 Free Software Foundation, Inc. |
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
Everyone is permitted to copy and distribute verbatim copies |
of this license document, but changing it is not allowed. |
|
Preamble |
|
The licenses for most software are designed to take away your |
freedom to share and change it. By contrast, the GNU General Public |
License is intended to guarantee your freedom to share and change free |
software--to make sure the software is free for all its users. This |
General Public License applies to most of the Free Software |
Foundation's software and to any other program whose authors commit to |
using it. (Some other Free Software Foundation software is covered by |
the GNU Library General Public License instead.) You can apply it to |
your programs, too. |
|
When we speak of free software, we are referring to freedom, not |
price. Our General Public Licenses are designed to make sure that you |
have the freedom to distribute copies of free software (and charge for |
this service if you wish), that you receive source code or can get it |
if you want it, that you can change the software or use pieces of it |
in new free programs; and that you know you can do these things. |
|
To protect your rights, we need to make restrictions that forbid |
anyone to deny you these rights or to ask you to surrender the rights. |
These restrictions translate to certain responsibilities for you if you |
distribute copies of the software, or if you modify it. |
|
For example, if you distribute copies of such a program, whether |
gratis or for a fee, you must give the recipients all the rights that |
you have. You must make sure that they, too, receive or can get the |
source code. And you must show them these terms so they know their |
rights. |
|
We protect your rights with two steps: (1) copyright the software, and |
(2) offer you this license which gives you legal permission to copy, |
distribute and/or modify the software. |
|
Also, for each author's protection and ours, we want to make certain |
that everyone understands that there is no warranty for this free |
software. If the software is modified by someone else and passed on, we |
want its recipients to know that what they have is not the original, so |
that any problems introduced by others will not reflect on the original |
authors' reputations. |
|
Finally, any free program is threatened constantly by software |
patents. We wish to avoid the danger that redistributors of a free |
program will individually obtain patent licenses, in effect making the |
program proprietary. To prevent this, we have made it clear that any |
patent must be licensed for everyone's free use or not licensed at all. |
|
The precise terms and conditions for copying, distribution and |
modification follow. |
|
GNU GENERAL PUBLIC LICENSE |
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION |
|
0. This License applies to any program or other work which contains |
a notice placed by the copyright holder saying it may be distributed |
under the terms of this General Public License. The "Program", below, |
refers to any such program or work, and a "work based on the Program" |
means either the Program or any derivative work under copyright law: |
that is to say, a work containing the Program or a portion of it, |
either verbatim or with modifications and/or translated into another |
language. (Hereinafter, translation is included without limitation in |
the term "modification".) Each licensee is addressed as "you". |
|
Activities other than copying, distribution and modification are not |
covered by this License; they are outside its scope. The act of |
running the Program is not restricted, and the output from the Program |
is covered only if its contents constitute a work based on the |
Program (independent of having been made by running the Program). |
Whether that is true depends on what the Program does. |
|
1. You may copy and distribute verbatim copies of the Program's |
source code as you receive it, in any medium, provided that you |
conspicuously and appropriately publish on each copy an appropriate |
copyright notice and disclaimer of warranty; keep intact all the |
notices that refer to this License and to the absence of any warranty; |
and give any other recipients of the Program a copy of this License |
along with the Program. |
|
You may charge a fee for the physical act of transferring a copy, and |
you may at your option offer warranty protection in exchange for a fee. |
|
2. You may modify your copy or copies of the Program or any portion |
of it, thus forming a work based on the Program, and copy and |
distribute such modifications or work under the terms of Section 1 |
above, provided that you also meet all of these conditions: |
|
a) You must cause the modified files to carry prominent notices |
stating that you changed the files and the date of any change. |
|
b) You must cause any work that you distribute or publish, that in |
whole or in part contains or is derived from the Program or any |
part thereof, to be licensed as a whole at no charge to all third |
parties under the terms of this License. |
|
c) If the modified program normally reads commands interactively |
when run, you must cause it, when started running for such |
interactive use in the most ordinary way, to print or display an |
announcement including an appropriate copyright notice and a |
notice that there is no warranty (or else, saying that you provide |
a warranty) and that users may redistribute the program under |
these conditions, and telling the user how to view a copy of this |
License. (Exception: if the Program itself is interactive but |
does not normally print such an announcement, your work based on |
the Program is not required to print an announcement.) |
|
These requirements apply to the modified work as a whole. If |
identifiable sections of that work are not derived from the Program, |
and can be reasonably considered independent and separate works in |
themselves, then this License, and its terms, do not apply to those |
sections when you distribute them as separate works. But when you |
distribute the same sections as part of a whole which is a work based |
on the Program, the distribution of the whole must be on the terms of |
this License, whose permissions for other licensees extend to the |
entire whole, and thus to each and every part regardless of who wrote it. |
|
Thus, it is not the intent of this section to claim rights or contest |
your rights to work written entirely by you; rather, the intent is to |
exercise the right to control the distribution of derivative or |
collective works based on the Program. |
|
In addition, mere aggregation of another work not based on the Program |
with the Program (or with a work based on the Program) on a volume of |
a storage or distribution medium does not bring the other work under |
the scope of this License. |
|
3. You may copy and distribute the Program (or a work based on it, |
under Section 2) in object code or executable form under the terms of |
Sections 1 and 2 above provided that you also do one of the following: |
|
a) Accompany it with the complete corresponding machine-readable |
source code, which must be distributed under the terms of Sections |
1 and 2 above on a medium customarily used for software interchange; or, |
|
b) Accompany it with a written offer, valid for at least three |
years, to give any third party, for a charge no more than your |
cost of physically performing source distribution, a complete |
machine-readable copy of the corresponding source code, to be |
distributed under the terms of Sections 1 and 2 above on a medium |
customarily used for software interchange; or, |
|
c) Accompany it with the information you received as to the offer |
to distribute corresponding source code. (This alternative is |
allowed only for noncommercial distribution and only if you |
received the program in object code or executable form with such |
an offer, in accord with Subsection b above.) |
|
The source code for a work means the preferred form of the work for |
making modifications to it. For an executable work, complete source |
code means all the source code for all modules it contains, plus any |
associated interface definition files, plus the scripts used to |
control compilation and installation of the executable. However, as a |
special exception, the source code distributed need not include |
anything that is normally distributed (in either source or binary |
form) with the major components (compiler, kernel, and so on) of the |
operating system on which the executable runs, unless that component |
itself accompanies the executable. |
|
If distribution of executable or object code is made by offering |
access to copy from a designated place, then offering equivalent |
access to copy the source code from the same place counts as |
distribution of the source code, even though third parties are not |
compelled to copy the source along with the object code. |
|
4. You may not copy, modify, sublicense, or distribute the Program |
except as expressly provided under this License. Any attempt |
otherwise to copy, modify, sublicense or distribute the Program is |
void, and will automatically terminate your rights under this License. |
However, parties who have received copies, or rights, from you under |
this License will not have their licenses terminated so long as such |
parties remain in full compliance. |
|
5. You are not required to accept this License, since you have not |
signed it. However, nothing else grants you permission to modify or |
distribute the Program or its derivative works. These actions are |
prohibited by law if you do not accept this License. Therefore, by |
modifying or distributing the Program (or any work based on the |
Program), you indicate your acceptance of this License to do so, and |
all its terms and conditions for copying, distributing or modifying |
the Program or works based on it. |
|
6. Each time you redistribute the Program (or any work based on the |
Program), the recipient automatically receives a license from the |
original licensor to copy, distribute or modify the Program subject to |
these terms and conditions. You may not impose any further |
restrictions on the recipients' exercise of the rights granted herein. |
You are not responsible for enforcing compliance by third parties to |
this License. |
|
7. If, as a consequence of a court judgment or allegation of patent |
infringement or for any other reason (not limited to patent issues), |
conditions are imposed on you (whether by court order, agreement or |
otherwise) that contradict the conditions of this License, they do not |
excuse you from the conditions of this License. If you cannot |
distribute so as to satisfy simultaneously your obligations under this |
License and any other pertinent obligations, then as a consequence you |
may not distribute the Program at all. For example, if a patent |
license would not permit royalty-free redistribution of the Program by |
all those who receive copies directly or indirectly through you, then |
the only way you could satisfy both it and this License would be to |
refrain entirely from distribution of the Program. |
|
If any portion of this section is held invalid or unenforceable under |
any particular circumstance, the balance of the section is intended to |
apply and the section as a whole is intended to apply in other |
circumstances. |
|
It is not the purpose of this section to induce you to infringe any |
patents or other property right claims or to contest validity of any |
such claims; this section has the sole purpose of protecting the |
integrity of the free software distribution system, which is |
implemented by public license practices. Many people have made |
generous contributions to the wide range of software distributed |
through that system in reliance on consistent application of that |
system; it is up to the author/donor to decide if he or she is willing |
to distribute software through any other system and a licensee cannot |
impose that choice. |
|
This section is intended to make thoroughly clear what is believed to |
be a consequence of the rest of this License. |
|
8. If the distribution and/or use of the Program is restricted in |
certain countries either by patents or by copyrighted interfaces, the |
original copyright holder who places the Program under this License |
may add an explicit geographical distribution limitation excluding |
those countries, so that distribution is permitted only in or among |
countries not thus excluded. In such case, this License incorporates |
the limitation as if written in the body of this License. |
|
9. The Free Software Foundation may publish revised and/or new versions |
of the General Public License from time to time. Such new versions will |
be similar in spirit to the present version, but may differ in detail to |
address new problems or concerns. |
|
Each version is given a distinguishing version number. If the Program |
specifies a version number of this License which applies to it and "any |
later version", you have the option of following the terms and conditions |
either of that version or of any later version published by the Free |
Software Foundation. If the Program does not specify a version number of |
this License, you may choose any version ever published by the Free Software |
Foundation. |
|
10. If you wish to incorporate parts of the Program into other free |
programs whose distribution conditions are different, write to the author |
to ask for permission. For software which is copyrighted by the Free |
Software Foundation, write to the Free Software Foundation; we sometimes |
make exceptions for this. Our decision will be guided by the two goals |
of preserving the free status of all derivatives of our free software and |
of promoting the sharing and reuse of software generally. |
|
NO WARRANTY |
|
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY |
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN |
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES |
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED |
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS |
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE |
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, |
REPAIR OR CORRECTION. |
|
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING |
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR |
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, |
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING |
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED |
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY |
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER |
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE |
POSSIBILITY OF SUCH DAMAGES. |
|
END OF TERMS AND CONDITIONS |
|
How to Apply These Terms to Your New Programs |
|
If you develop a new program, and you want it to be of the greatest |
possible use to the public, the best way to achieve this is to make it |
free software which everyone can redistribute and change under these terms. |
|
To do so, attach the following notices to the program. It is safest |
to attach them to the start of each source file to most effectively |
convey the exclusion of warranty; and each file should have at least |
the "copyright" line and a pointer to where the full notice is found. |
|
<one line to give the program's name and a brief idea of what it does.> |
Copyright (C) <year> <name of author> |
|
This program is free software; you can redistribute it and/or modify |
it under the terms of the GNU General Public License as published by |
the Free Software Foundation; either version 2 of the License, or |
(at your option) any later version. |
|
This program is distributed in the hope that it will be useful, |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
GNU General Public License for more details. |
|
You should have received a copy of the GNU General Public License |
along with this program; if not, write to the Free Software |
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
|
Also add information on how to contact you by electronic and paper mail. |
|
If the program is interactive, make it output a short notice like this |
when it starts in an interactive mode: |
|
Gnomovision version 69, Copyright (C) year name of author |
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. |
This is free software, and you are welcome to redistribute it |
under certain conditions; type `show c' for details. |
|
The hypothetical commands `show w' and `show c' should show the appropriate |
parts of the General Public License. Of course, the commands you use may |
be called something other than `show w' and `show c'; they could even be |
mouse-clicks or menu items--whatever suits your program. |
|
You should also get your employer (if you work as a programmer) or your |
school, if any, to sign a "copyright disclaimer" for the program, if |
necessary. Here is a sample; alter the names: |
|
Yoyodyne, Inc., hereby disclaims all copyright interest in the program |
`Gnomovision' (which makes passes at compilers) written by James Hacker. |
|
<signature of Ty Coon>, 1 April 1989 |
Ty Coon, President of Vice |
|
This General Public License does not permit incorporating your program into |
proprietary programs. If your program is a subroutine library, you may |
consider it more useful to permit linking proprietary applications with the |
library. If this is what you want to do, use the GNU Library General |
Public License instead of this License. |
/trunk/ecos-2.0/Makefile.am
0,0 → 1,44
## Process this file with automake to produce Makefile.in |
## ===================================================================== |
## |
## Makefile.am |
## |
## eCos host-side software toplevel makefile |
## |
## ===================================================================== |
#######ECOSHOSTGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
# Copyright (C) 2002 Bart Veer |
# Copyright (C) 1998, 1999, 2000, 2001 Red Hat, Inc. |
# |
# This file is part of the eCos host tools. |
# |
# This program is free software; you can redistribute it and/or modify it |
# under the terms of the GNU General Public License as published by the Free |
# Software Foundation; either version 2 of the License, or (at your option) |
# any later version. |
# |
# This program is distributed in the hope that it will be useful, but WITHOUT |
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
# more details. |
# |
# You should have received a copy of the GNU General Public License along with |
# this program; if not, write to the Free Software Foundation, Inc., |
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
## ------------------------------------------- |
#######ECOSHOSTGPLCOPYRIGHTEND#### |
## ===================================================================== |
#######DESCRIPTIONBEGIN#### |
## |
## Author(s): bartv |
## Contact(s): bartv |
## Date: 1998/12/17 |
## Version: 0.01 |
## |
######DESCRIPTIONEND#### |
## ===================================================================== |
|
AUTOMAKE_OPTIONS = 1.3 foreign |
SUBDIRS = @SUBDIRS@ |
|
/trunk/ecos-2.0/README.host
0,0 → 1,365
eCos Host-side Software |
======================= |
|
This README file only describes the eCos host-side software. For |
details of the eCos target-side software or the required toolchains, |
please see other documentation. A good starting point is |
http://sources.redhat.com/ecos |
|
There are two categories of host-side software. The host subdirectory |
contains generic software, primarily related to the eCos configuration |
technology. All eCos users will need to use some of this technology to |
configure and build eCos, either using pre-built binaries or by |
building the host-side software from source. The generic software |
should be portable to a wide range of host platforms. |
|
There is also package-specific host-side software. Much of this is I/O |
related. For example the generic USB-slave package contains some |
programs related to testing; a test application is run on a target |
with suitable USB slave-side hardware, and needs to interact with |
another program running on the USB host; the latter is |
package-specific host-side software and can be found in the |
subdirectory packages/io/usb/slave. Code like this may have |
significant platform dependencies and may only work on a single |
platform or on a small number of platforms. There may also be |
special requirements, for example it may be necessary to install some |
programs suid root so that they have appropriate access to the |
hardware. |
|
|
The host subdirectory includes the following: |
|
infra/ |
This is an implementation of the eCos infrastructure that can be |
used on the host-side, and provides assertion, tracing and |
testcase support. |
|
NOTE: the eCos infrastructure facilities are not especially |
well-suited to host-side development, in particular they are not |
C++-oriented. There are plans to remove the current infrastructure |
completely and replace it with something more suitable. People |
planning new projects should be aware of this, and may wish to |
avoid using the current infrastructure. |
|
libcdl/ |
The CDL library lies at the heart of the eCos configuration |
technology. |
|
tools/configtool/ |
The sources to the various configuration tools can be found here. |
|
tools/configtool/common/common/ |
Contains sources related to makefile generation, shared by the |
command line and graphical tools. |
|
tools/configtool/standalone/common/ |
Contains the command line ecosconfig tool. |
|
tools/configtool/standalone/wxwin/ |
Contains sources for the wxWindows-based, Linux and Windows graphical |
configuration tool. The Windows version can currently only be |
built with Visual C++, not with cygwin g++. |
|
tools/configtool/common/win32/ |
tools/configtool/standalone/win32/ |
Contains sources for the older, MFC-based, Windows-only graphical |
configuration tool. Again this can currently only be built with |
Visual C++. |
|
The two graphical configuration tools have their own build procedures, |
described in tools/configtool/standalone/wxwin/ReadMe and |
tools/configtool/standalone/win32/ReadMe respectively. |
|
Package-specific host-side code lives in the host subdirectory of the |
appropriate package, for example packages/io/usb/slave/<version>/host. |
Most packages only provide target-side code and hence will not have a |
host subdirectory. Users can install various packages from a variety |
of sources, and where a package does have host-side software the |
package documentation should be consulted for further information. |
|
|
Installing on Linux, Other Unix Systems, and Cygwin |
--------------------------------------------------- |
|
Both generic host-side software (infra, libcdl and ecosconfig) and |
package-specific software can be built with the conventional |
"configure/make/make install" sequence. However the code does not |
conform fully to GNU coding standards so some operations such as "make |
dist" are not supported. There is limited support for DejaGnu-based |
testing. |
|
Much of the host-side software has a dependency on Tcl. This is not |
supplied with the sources since many users will already have a |
suitable installation, for example it is shipped as standard with all |
major Linux distributions. The generic host-side software should work |
with any release of Tcl from 8.0 onwards. The package-specific |
software requires a more recent version, 8.3 or later. If no suitable |
Tcl installation is available then the configure step will still |
succeed but some of the package-specific software will not be built. |
|
There are two main approaches to building the host-side software: |
|
1) build the generic and the package-specific code in one build tree. |
This uses the top-level configure script. The script automatically |
invokes the configure script in the main host subdirectory. In |
addition it searches the packages hierarchy for host subdirectories |
containing their own configure scripts and will invoke those. |
|
Note: the search for host subdirectories happens during configure |
time, not during the make. If new packages with host-side code are |
added to the repository then it will be necessary to re-run the |
toplevel configure script. |
|
2) build the generic code in one build tree, using the configure |
script in the toplevel's host subdirectory. Then build some or all |
of the package-specific code in separate build trees, using the |
configure scripts in each package's host subdirectory. |
|
The first approach is generally simpler. However some of the |
package-specific code requires special installation, for example a |
program may have to be installed suid root so that it has the right |
privileges to access hardware, and hence the "make install" step has |
to be run by the superuser. Also some of the package-specific code is |
rather specialized and may be of no interest to many users. For |
example, the USB testing code is only useful when developing |
USB-based applications. Hence some users may prefer the second |
approach, building just the generic code and a subset of the |
package-specific code. |
|
It is necessary to use a separate build tree rather than build |
directly in the source tree. This is enforced by the configure scripts. |
|
$ mkdir build |
$ cd build |
|
The next step is to run the desired configure script. To build all |
the host-side software this means the toplevel configure script: |
|
$ <path>/configure <args> |
|
Alternatively to build just the generic host-side software, use the |
configure script in the host subdirectory. |
|
$ mkdir host |
$ cd host |
$ <path>/host/configure <args> |
|
Or, to build just one package's host-side code: |
|
$ mkdir -p packages/io/usb/slave/current/host |
$ cd packages/io/usb/slave/current/host |
$ <path>/packages/io/usb/slave/current/host/configure <args> |
|
(It is not actually necessary to use the same directory structure in |
the build tree as in the source tree, but doing so can avoid |
confusion). |
|
A list of all the command-line options can be obtained by running |
"configure --help". The most important ones are as follows: |
|
1) --prefix. This can be used to specify the location of the install |
tree, defaulting to /usr/local, so the ecosconfig program ends up |
in /usr/local/bin/ecosconfig and the CDL library ends up in |
/usr/local/lib/libcdl.a. If an alternative location is preferred |
this can be specified with --prefix, for example: |
|
$ <path>/configure --prefix=/usr/local/ecos <args> |
|
2) --enable-debug. By default all assertions and tracing are disabled. |
When debugging any of the generic host-side software these should |
be enabled. Some package-specific code may not have any extra |
debug support, in which case --enable-debug would be ignored. |
|
$ <path>/configure --enable-debug |
|
It is also possible to control most of the assertion and tracing |
macros at a finer grain. This is intended mainly for use by the |
developers. |
|
--disable-asserts disable all assertions |
--disable-preconditions disable a subset of the assertions |
--disable-postconditions disable a subset of the assertions |
--disable-invariants disable a subset of the assertions |
--disable-loopinvariants disable a subset of the assertions |
--disable-tracing disable tracing |
--disable-fntracing disable function entry/exit tracing |
|
3) --with-tcl=<path> |
--with-tcl-version=<number> |
|
The host-side tools have a dependency on Tcl, which is not supplied |
with the sources because many people will already have a suitable |
installation. Specifically it is necessary to have the header file |
tcl.h and appropriate libraries such that -ltcl will work - this |
can involve either static or shared libraries. Some tools may require |
Tk as well as Tcl. |
|
Unfortunately there is considerable variation in Tcl installations. |
In theory all Tcl installations have a file tclConfig.sh which |
defines exactly how to compile and link code that uses Tcl, and Tk |
has a similar file tkConfig.sh. The eCos configure scripts look for |
these files, first in $(prefix)/lib, then in /usr/lib. If the system |
already has a Tcl installation in /usr then the configure script will |
automatically find /usr/lib/tclConfig.sh and it is not necessary |
to pass additional options when configuring the eCos host-side |
software. Alternatively, if for example you have installed a more |
recent version of Tcl/Tk in the same place that you want to install the |
eCos software, e.g. /usr/local, then $(prefix)/lib/tclConfig.sh |
will be read in. |
|
It is also possible that a more recent version of Tcl has been installed |
in a different location. For example, you may wish to install the eCos host |
tools in /opt/ecos but use a version of Tcl installed in /usr/local. The |
eCos configure scripts need to be told explicitly where to look for |
the Tcl: |
|
$ <path>/configure --with-tcl=/usr/local ... |
|
Some systems, for example Debian Linux 3.0, do not install tclConfig.sh |
in /usr/lib because that makes it more difficult to have several different |
versions of Tcl installed at the same time. Instead tclConfig.sh is found |
in a versioned directory such as /usr/lib/tcl8.3. Since several versions |
may be installed the desired one must be specified explicitly. |
|
$ <path>/configure --with-tcl-version=8.3 |
|
The --with-tcl and --with-tcl-version options are combined to give a search path: |
|
<with>/lib/tclConfig.sh |
<with>/lib/tcl<vsn>/tclConfig.sh |
<prefix>/lib/tclConfig.sh |
<prefix>/lib/tcl<vsn>/tclConfig.sh |
/usr/lib/tclConfig.sh |
/usr/lib/tcl<vsn>/tclConfig.sh |
|
If tclConfig.sh cannot be found in any of these places then it is assumed |
that Tcl has not been properly installed and the eCos configure script will |
fail. The --with-tcl and --with-tcl-version are also used to give a search |
path for tkConfig.sh |
|
<with>/lib/tkConfig.sh |
<with>/lib/tk<vsn>/tkConfig.sh |
<prefix>/lib/tkConfig.sh |
<prefix>/lib/tk<vsn>/tkConfig.sh |
/usr/lib/tkConfig.sh |
/usr/lib/tk<vsn>/tkConfig.sh |
|
Again, the configure scripts must be able to find tkConfig.sh |
|
Once tclConfig.sh and tkConfig.sh have been found and read in, the eCos |
configure scripts should have all the information needed to compile and |
link code that uses Tcl. First the location of key headers such as |
<tcl.h> is needed. A tclConfig.sh file may define TCL_INC_DIR to give |
a specific location, otherwise the header files should be in |
$(TCL_PREFIX)/include. If <tcl.h> cannot be found then the eCos configure |
scripts will fail. |
|
Next it is necessary to work out how to link applications with Tcl. This |
information should be provided by a tclConfig.sh variable TCL_LIB_SPEC. |
Unfortunately not all Tcl installations set this, for example the cygwin |
Tcl 8.4 release. If TCL_LIB_SPEC is not defined then instead the |
configure script will look for a library libtcl<vsn>.a, where <vsn> is |
specified using --with-tcl-version, then for a library libtcl.a |
|
Following the configure step the build tree should be set up |
correctly. All that remains is the actual build and install: |
|
$ make |
$ make install |
|
This should result in an ecosconfig executable, plus appropriate |
libraries and header files. If the install prefix is a system |
location, for example /usr/local/, then "make install" will normally |
require root privileges. Also some of the package-specific software |
has special installation requirements, for example programs that need |
to be installed suid root, and this will also need root privileges. |
|
|
Installing with Visual C++ |
-------------------------- |
|
Under Windows it is possible to build the generic host-side software |
(infra, libcdl and ecosconfig) with Visual C++ but this is deprecated. |
Building with g++ under cygwin is preferred. |
|
It is still necessary to run the configure script and a suitable make |
utility. That requires a shell and a Unix-like environment, as |
provided by cygwin. The Visual C++ compiler cl.exe needs to be on the |
shell's search path, and some environment variables such as INCLUDE |
and LIB may need to be set to point at the Visual C++ installation - |
the details may vary depending on the version of the compiler. Then |
the configure command should be run like this: |
|
$ CC=cl CXX=cl <path>/host/configure <args> |
|
Note that the path should be a cygwin path: cygwin mount points are |
accepted and forward slashes should be used. The various configure |
scripts now detect that Visual C++ should be used, and adapt |
accordingly. |
|
Depending on what cygwin mount points are set up, /usr/local may or |
may not be an appropriate install location for VC++ applications. |
If not, the install location should be specified with --prefix: |
|
$ CC=cl CXX=cl <path>/configure --prefix=<install-path> <args> |
|
It is also necessary to use the right version of Tcl. For a VC++ build |
the cygwin release of Tcl should not be used. Instead a suitable |
prebuilt Tcl package can be obtained from http://www.tcl.tk/. |
It is necessary to tell the configure script where this has been |
installed, for example: |
|
$ CC=cl CXX=cl <path>/configure --prefix=<install-path> \ |
--with-tcl=/cygdrive/d/local/scriptics/Tcl/tcl8.1 <args> |
|
The library name will be of the form tcl81.lib, and there will not be |
a symbolic link from tcl.lib to the appropriate version. It will be |
necessary to specify the Tcl version explicitly since the default |
version is currently 8.0. |
|
$ CC=cl CXX=cl <path>/configure --prefix=<install-path> \ |
--with-tcl=/d/local/scriptics/Tcl/tcl8.1 --with-tcl-version=81 <args> |
|
Following a successful configure, the tools can be built and installed |
in the normal fashion: |
|
$ make |
$ make install |
|
|
More Information |
================ |
|
Please see the eCos web site, http://sources.redhat.com/ecos/, for |
further details. This includes the FAQ, a form for reporting problems, |
and details of the various mailing lists |
(http://sources.redhat.com/ecos/intouch.html) At the time of writing |
there are no separate mailing lists for the eCos host-side sources, |
the main mailing list ecos-discuss@sources.redhat.com should be used |
instead. |
|
//####COPYRIGHTBEGIN#### |
// |
//---------------------------------------------------------------------------- |
// Copyright (C) 2002 Bart Veer |
// Copyright (C) 2000, 2001 Red Hat, Inc. |
// |
// This file is part of the eCos host tools. |
// |
// This program is free software; you can redistribute it and/or modify it |
// under the terms of the GNU General Public License as published by the Free |
// Software Foundation; either version 2 of the License, or (at your option) |
// any later version. |
// |
// This program is distributed in the hope that it will be useful, but WITHOUT |
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
// more details. |
// |
// You should have received a copy of the GNU General Public License along with |
// this program; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
// |
// ---------------------------------------------------------------------------- |
// |
//####COPYRIGHTEND#### |
/trunk/ecos-2.0/buildid.txt
0,0 → 1,365
v2.0-20030509-0835 |
/trunk/ecos-2.0/README.txt
0,0 → 1,81
eCos - the Embedded Configurable Operating System - release 2.0 README |
====================================================================== |
|
May 2003 |
|
|
Welcome to the eCos 2.0 public net release. |
|
This README contains a list of known problems with the eCos 2.0 release. |
Please check for further issues by searching the Bugzilla database for |
product "eCos" version "2.0": |
|
http://bugzilla.redhat.com/bugzilla/query.cgi?product=eCos |
|
If you discover new bugs with this release please report them using |
Bugzilla: |
|
http://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=eCos |
|
|
------------------------------------------------------------------------------ |
eCos 2.0 Errata |
--------------- |
|
* When building RedBoot for ROM startup, the following warning may be produced |
by BFD: |
|
allocated section `.bss' is not in segment |
|
This warning is due to mishandling of overlapping segments and is harmless. A |
patch has been submitted to the binutils mailing list. |
|
* When building eCos for the 'linux' target with the 'net' template, the |
following warning is produced: |
|
/usr/bin/ld: warning: no memory region specified for section |
`.rel.ecos.table._Net_inits.data.0x88000001domain_routecyg_net_add_domain' |
|
This warning is harmless and may be ignored. |
|
* eCos fails to build for target 'flexanet' since the platform support has not |
been maintained with respect to the rest of the repository. |
|
* RedBoot fails to build for target 'dreamcast' since the package |
CYGPKG_FS_ISO is not present in the eCos public repository. |
|
* The eCos tests 'pselect' and 'cpuload' may fail erroneously on some eCos |
targets (false negative). |
|
* We are aware of the following issues with specific versions of the cygwin1 |
DLL: |
|
- version 1.3.19 cannot be used to configure eCos toolchains due to a |
problem with vasprintf. |
- version 1.3.20 causes various toolchain failures when building eCos on |
Win95/98/ME only. We suspect this is an mmap issue. |
|
* The PSIM PowerPC simulator treats all data cache instructions as noops. |
The behaviour is benign with the exception of the dcbz instruction. It causes |
the eCos kcache2 test to fail on target 'psim'. |
|
* Register handling in the GDB stub code for the MIPS32 variant has been |
changed to supply 32 bit registers rather than 64 bit. This change allows |
use the public gcc 3.2.x compiler but will cause problems with the |
mipsisa32-elf toolchain from ftp://ftp.mips.com/pub/redhat/linux/ |
|
* There are a number of minor issues with the eCos Configuration Tool: |
|
84946 Configtool build progress bar inoperative |
84948 Cannot add new command prefix in platform editor dialog box |
85588 Starting help spawns xterm which doesn't disappear |
85597 Configtool internal doc viewer issues |
89778 Configtool platforms list is not sorted |
90180 NT config tool configuration pane divider dragging unreliable |
|
* The eCos documentation does not describe how to invoke the Insight graphical |
debugger. Insight is invoked by specifying the "-w" switch on the GDB command |
line. |
|
* The Insight graphical debugger exhibits a lack of robustness on Win95/98/ME |
hosts. We recommend using command-line GDB on these platforms. |
/trunk/ecos-2.0/aclocal.m4
0,0 → 1,182
dnl aclocal.m4 generated automatically by aclocal 1.4-p5 |
|
dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. |
dnl This file is free software; the Free Software Foundation |
dnl gives unlimited permission to copy and/or distribute it, |
dnl with or without modifications, as long as this notice is preserved. |
|
dnl This program is distributed in the hope that it will be useful, |
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without |
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
dnl PARTICULAR PURPOSE. |
|
dnl Process this file with aclocal to get an aclocal.m4 file. Then |
dnl process that with autoconf. |
dnl ==================================================================== |
dnl |
dnl acinclude.m4 |
dnl |
dnl ==================================================================== |
dnl ####ECOSHOSTGPLCOPYRIGHTBEGIN#### |
dnl ---------------------------------------------------------------------------- |
dnl Copyright (C) 2002 Bart Veer |
dnl |
dnl This file is part of the eCos host tools. |
dnl |
dnl This program is free software; you can redistribute it and/or modify it |
dnl under the terms of the GNU General Public License as published by the Free |
dnl Software Foundation; either version 2 of the License, or (at your option) |
dnl any later version. |
dnl |
dnl This program is distributed in the hope that it will be useful, but WITHOUT |
dnl ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
dnl FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
dnl more details. |
dnl |
dnl You should have received a copy of the GNU General Public License along with |
dnl this program; if not, write to the Free Software Foundation, Inc., |
dnl 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
dnl |
dnl ---------------------------------------------------------------------------- |
dnl ####ECOSHOSTGPLCOPYRIGHTEND#### |
dnl ==================================================================== |
dnl#####DESCRIPTIONBEGIN#### |
dnl |
dnl Author(s): bartv |
dnl Contact(s): bartv |
dnl Date: 2002/08/03 |
dnl Version: 0.01 |
dnl |
dnl####DESCRIPTIONEND#### |
dnl ==================================================================== |
|
dnl Access shared macros. |
dnl AM_CONDITIONAL needs to be mentioned here or else aclocal does not |
dnl incorporate the macro into aclocal.m4 |
sinclude(acsupport/acinclude.m4) |
|
# Define a conditional. |
|
AC_DEFUN([AM_CONDITIONAL], |
[AC_SUBST($1_TRUE) |
AC_SUBST($1_FALSE) |
if $2; then |
$1_TRUE= |
$1_FALSE='#' |
else |
$1_TRUE='#' |
$1_FALSE= |
fi]) |
|
# Do all the work for Automake. This macro actually does too much -- |
# some checks are only needed if your package does certain things. |
# But this isn't really a big deal. |
|
# serial 1 |
|
dnl Usage: |
dnl AM_INIT_AUTOMAKE(package,version, [no-define]) |
|
AC_DEFUN([AM_INIT_AUTOMAKE], |
[AC_REQUIRE([AC_PROG_INSTALL]) |
PACKAGE=[$1] |
AC_SUBST(PACKAGE) |
VERSION=[$2] |
AC_SUBST(VERSION) |
dnl test to see if srcdir already configured |
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then |
AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) |
fi |
ifelse([$3],, |
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) |
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) |
AC_REQUIRE([AM_SANITY_CHECK]) |
AC_REQUIRE([AC_ARG_PROGRAM]) |
dnl FIXME This is truly gross. |
missing_dir=`cd $ac_aux_dir && pwd` |
AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) |
AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) |
AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) |
AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) |
AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) |
AC_REQUIRE([AC_PROG_MAKE_SET])]) |
|
# |
# Check to make sure that the build environment is sane. |
# |
|
AC_DEFUN([AM_SANITY_CHECK], |
[AC_MSG_CHECKING([whether build environment is sane]) |
# Just in case |
sleep 1 |
echo timestamp > conftestfile |
# Do `set' in a subshell so we don't clobber the current shell's |
# arguments. Must try -L first in case configure is actually a |
# symlink; some systems play weird games with the mod time of symlinks |
# (eg FreeBSD returns the mod time of the symlink's containing |
# directory). |
if ( |
set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` |
if test "[$]*" = "X"; then |
# -L didn't work. |
set X `ls -t $srcdir/configure conftestfile` |
fi |
if test "[$]*" != "X $srcdir/configure conftestfile" \ |
&& test "[$]*" != "X conftestfile $srcdir/configure"; then |
|
# If neither matched, then we have a broken ls. This can happen |
# if, for instance, CONFIG_SHELL is bash and it inherits a |
# broken ls alias from the environment. This has actually |
# happened. Such a system could not be considered "sane". |
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken |
alias in your environment]) |
fi |
|
test "[$]2" = conftestfile |
) |
then |
# Ok. |
: |
else |
AC_MSG_ERROR([newly created file is older than distributed files! |
Check your system clock]) |
fi |
rm -f conftest* |
AC_MSG_RESULT(yes)]) |
|
dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) |
dnl The program must properly implement --version. |
AC_DEFUN([AM_MISSING_PROG], |
[AC_MSG_CHECKING(for working $2) |
# Run test in a subshell; some versions of sh will print an error if |
# an executable is not found, even if stderr is redirected. |
# Redirect stdin to placate older versions of autoconf. Sigh. |
if ($2 --version) < /dev/null > /dev/null 2>&1; then |
$1=$2 |
AC_MSG_RESULT(found) |
else |
$1="$3/missing $2" |
AC_MSG_RESULT(missing) |
fi |
AC_SUBST($1)]) |
|
# Add --enable-maintainer-mode option to configure. |
# From Jim Meyering |
|
# serial 1 |
|
AC_DEFUN([AM_MAINTAINER_MODE], |
[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) |
dnl maintainer-mode is disabled by default |
AC_ARG_ENABLE(maintainer-mode, |
[ --enable-maintainer-mode enable make rules and dependencies not useful |
(and sometimes confusing) to the casual installer], |
USE_MAINTAINER_MODE=$enableval, |
USE_MAINTAINER_MODE=no) |
AC_MSG_RESULT($USE_MAINTAINER_MODE) |
AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) |
MAINT=$MAINTAINER_MODE_TRUE |
AC_SUBST(MAINT)dnl |
] |
) |
|