Annotation of dietlibc/dietfeatures.h, revision 1.47

1.4       fefe        1: #ifndef _DIETFEATURES_H
                      2: #define _DIETFEATURES_H
1.1       cvs         3: 
                      4: /* feel free to comment some of these out to reduce code size */
                      5: 
1.13      fefe        6: #define WANT_FLOATING_POINT_IN_PRINTF
                      7: #define WANT_FLOATING_POINT_IN_SCANF
1.12      fefe        8: #define WANT_CHARACTER_CLASSES_IN_SCANF
1.1       cvs         9: #define WANT_NULL_PRINTF
1.24      fefe       10: #define WANT_LONGLONG_PRINTF
1.42      olaf       11: #define WANT_LONGLONG_SCANF
1.1       cvs        12: 
1.20      fefe       13: /* 128 or 2048 bytes buffer size? */
                     14: /* #define WANT_SMALL_STDIO_BUFS */
                     15: 
1.40      fefe       16: /* want fread to read() directly if size of data is larger than buffer?
                     17:  * This costs a few bytes but is worth it if the application is already
                     18:  * buffering. */
                     19: #define WANT_FREAD_OPTIMIZATION
                     20: 
1.34      fefe       21: /* this is only for meaningful for ttyname and sysconf_cpus so far */
1.40      fefe       22: #define SLASH_PROC_OK
1.1       cvs        23: 
                     24: /* use errno_location instead of errno */
1.20      fefe       25: #define WANT_THREAD_SAFE
1.1       cvs        26: 
1.35      olaf       27: /* make the startcode, etc. dynamic aware ({con,de}structors) */
1.38      olaf       28: /* #define WANT_DYNAMIC */
1.1       cvs        29: 
                     30: /* do you want smaller or faster string routines? */
1.2       fefe       31: /* #define WANT_FASTER_STRING_ROUTINES */
1.1       cvs        32: 
1.43      fefe       33: /* define this to have strncpy zero-fill and not just zero-terminate the
                     34:  * string */
                     35: /* #define WANT_FULL_POSIX_COMPAT */
                     36: 
1.16      fefe       37: /* read the comment in lib/strncat.c for an explanation */
1.17      fefe       38: /* #define WANT_NON_COMPLIANT_STRNCAT */
1.16      fefe       39: 
1.47    ! leitner    40: /* on i386, Linux has an alternate syscall method since 2002/12/16 */
        !            41: /* on my Athlon XP, it is twice as fast, but it's only in kernel 2.5 */
        !            42: /* #define WANT_SYSENTER */
        !            43: 
1.4       fefe       44: #define WANT_LINKER_WARNINGS
                     45: 
1.7       fefe       46: /* you need to define this if you want to run your programs with large
1.31      fefe       47:  * file support on kernel 2.2 or 2.0 */
1.7       fefe       48: #define WANT_LARGEFILE_BACKCOMPAT
                     49: 
1.8       fefe       50: /* do you want localtime(3) to read /etc/localtime?
                     51:  * Needed for daylight saving time etc. */
                     52: #define WANT_TZFILE_PARSER
1.1       cvs        53: 
1.21      fefe       54: /* do you want the DNS routines to parse and use "domain" and "search"
                     55:  * lines from /etc/resolv.conf?  Normally not used on boot floppies and
                     56:  * embedded environments. */
                     57: #define WANT_FULL_RESOLV_CONF
                     58: 
1.45      fefe       59: /* do you want IPv6 transport support in the DNS resolver? */
                     60: #define WANT_IPV6_DNS
                     61: 
1.27      fefe       62: /* do you want gethostbyname and friends to consult /etc/hosts? */
                     63: #define WANT_ETC_HOSTS
                     64: 
1.46      fefe       65: /* do you want gethostbyname to understand dotted decimal IP numbers
                     66:  * directly and not try to resolve them? */
                     67: #define WANT_INET_ADDR_DNS
                     68: 
1.29      fefe       69: /* do you want math functions high precision rather than fast/small? */
                     70: #define WANT_HIGH_PRECISION_MATH
                     71: 
                     72: /* do you want support for matherr? */
                     73: #define WANT_MATHERR
                     74: 
1.30      fefe       75: /* do you want crypt(3) to use MD5 if the salt starts with "$1$"? */
                     76: #define WANT_CRYPT_MD5
                     77: 
1.32      fefe       78: /* do you want diet to include a safeguard dependency to make linking
1.45      fefe       79:  * against glibc fail?  This may fail with older binutils. */
1.32      fefe       80: #define WANT_SAFEGUARD
1.38      olaf       81: 
                     82: /* dy you want that malloc(0) return a pointer to a "zero-length" object
                     83:  * that is realloc-able; means realloc(..,size) gives a NEW object (like a
                     84:  * call to malloc(size)).
                     85:  * WARNING: this violates C99 */
                     86: /* #define WANT_MALLOC_ZERO */
                     87: 
1.32      fefe       88: 
1.1       cvs        89: /* stop uncommenting here ;-) */
                     90: #ifndef WANT_FASTER_STRING_ROUTINES
                     91: #define WANT_SMALL_STRING_ROUTINES
1.4       fefe       92: #endif
                     93: 
1.22      fefe       94: #ifdef WANT_THREAD_SAFE
1.44      fefe       95: #ifndef __ASSEMBLER__
1.22      fefe       96: #define errno (*__errno_location())
1.23      fefe       97: #define _REENTRANT
1.44      fefe       98: #endif
1.22      fefe       99: #endif
                    100: 
1.33      olaf      101: #ifdef __DYN_LIB
1.39      olaf      102: /* with shared libraries you MUST have a dynamic aware startcode */
1.33      olaf      103: #ifndef WANT_DYNAMIC
                    104: #define WANT_DYNAMIC
1.35      olaf      105: #endif
                    106: /* saveguard crashes with shared objects ... */
                    107: #ifdef WANT_SAFEGUARD
                    108: #undef WANT_SAFEGUARD
1.33      olaf      109: #endif
                    110: #endif
                    111: 
1.1       cvs       112: #endif

LinuxTV legacy CVS <linuxtv.org/cvs>