Annotation of embedaddon/rsync/popt/system.h, revision 1.1

1.1     ! misho       1: #ifdef HAVE_CONFIG_H
        !             2: #include "config.h"
        !             3: #endif
        !             4: 
        !             5: #if defined (__GLIBC__) && defined(__LCLINT__)
        !             6: /*@-declundef@*/
        !             7: /*@unchecked@*/
        !             8: extern __const __int32_t *__ctype_tolower;
        !             9: /*@unchecked@*/
        !            10: extern __const __int32_t *__ctype_toupper;
        !            11: /*@=declundef@*/
        !            12: #endif
        !            13: 
        !            14: #include <ctype.h>
        !            15: 
        !            16: #include <errno.h>
        !            17: #include <fcntl.h>
        !            18: #include <limits.h>
        !            19: 
        !            20: #if HAVE_MCHECK_H 
        !            21: #include <mcheck.h>
        !            22: #endif
        !            23: 
        !            24: #include <stdio.h>
        !            25: #ifdef HAVE_SYS_TYPES_H
        !            26: # include <sys/types.h>
        !            27: #endif
        !            28: #ifdef STDC_HEADERS
        !            29: # include <stdlib.h>
        !            30: # include <stddef.h>
        !            31: #else
        !            32: # ifdef HAVE_STDLIB_H
        !            33: #  include <stdlib.h>
        !            34: # endif
        !            35: #endif
        !            36: #ifdef HAVE_STRING_H
        !            37: # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
        !            38: #  include <memory.h>
        !            39: # endif
        !            40: # include <string.h>
        !            41: #endif
        !            42: #ifdef HAVE_STRINGS_H
        !            43: # include <strings.h>
        !            44: #endif
        !            45: #ifdef HAVE_UNISTD_H
        !            46: # include <unistd.h>
        !            47: #endif
        !            48: 
        !            49: #ifndef __GNUC__
        !            50: #define __attribute__(x) 
        !            51: #endif
        !            52: 
        !            53: #ifdef __NeXT
        !            54: /* access macros are not declared in non posix mode in unistd.h -
        !            55:  don't try to use posix on NeXTstep 3.3 ! */
        !            56: #include <libc.h>
        !            57: #endif
        !            58: 
        !            59: #if defined(__LCLINT__)
        !            60: /*@-declundef -incondefs @*/ /* LCL: missing annotation */
        !            61: /*@only@*/ /*@out@*/
        !            62: void * alloca (size_t __size)
        !            63:        /*@ensures MaxSet(result) == (__size - 1) @*/
        !            64:        /*@*/;
        !            65: /*@=declundef =incondefs @*/
        !            66: #endif
        !            67: 
        !            68: /* AIX requires this to be the first thing in the file.  */ 
        !            69: #ifndef __GNUC__
        !            70: # if HAVE_ALLOCA_H
        !            71: #  include <alloca.h>
        !            72: # else
        !            73: #  ifdef _AIX
        !            74: #pragma alloca
        !            75: #  else
        !            76: #   ifdef HAVE_ALLOCA
        !            77: #    ifndef alloca /* predefined by HP cc +Olibcalls */
        !            78: char *alloca(size_t size);
        !            79: #    endif
        !            80: #   else
        !            81: #    ifdef alloca
        !            82: #     undef alloca
        !            83: #    endif
        !            84: #    define alloca(sz) malloc(sz) /* Kludge this for now */
        !            85: #   endif
        !            86: #  endif
        !            87: # endif
        !            88: #elif !defined(alloca)
        !            89: #define alloca __builtin_alloca
        !            90: #endif
        !            91: 
        !            92: #ifndef HAVE_STRLCPY
        !            93: size_t strlcpy(char *d, const char *s, size_t bufsize);
        !            94: #endif
        !            95: 
        !            96: #ifndef HAVE_STRLCAT
        !            97: size_t strlcat(char *d, const char *s, size_t bufsize);
        !            98: #endif
        !            99: 
        !           100: #if HAVE_MCHECK_H && defined(__GNUC__)
        !           101: static inline char *
        !           102: xstrdup(const char *s)
        !           103: {
        !           104:     size_t memsize = strlen(s) + 1;
        !           105:     char *ptr = malloc(memsize);
        !           106:     if (!ptr) {
        !           107:        fprintf(stderr, "virtual memory exhausted.\n");
        !           108:        exit(EXIT_FAILURE);
        !           109:     }
        !           110:     strlcpy(ptr, s, memsize);
        !           111:     return ptr;
        !           112: }
        !           113: #else
        !           114: #define        xstrdup(_str)   strdup(_str)
        !           115: #endif  /* HAVE_MCHECK_H && defined(__GNUC__) */
        !           116: 
        !           117: #if HAVE___SECURE_GETENV && !defined(__LCLINT__)
        !           118: #define        getenv(_s)      __secure_getenv(_s)
        !           119: #endif
        !           120: 
        !           121: #if !defined HAVE_SNPRINTF || !defined HAVE_C99_VSNPRINTF
        !           122: #define snprintf rsync_snprintf
        !           123: int snprintf(char *str,size_t count,const char *fmt,...);
        !           124: #endif
        !           125: 
        !           126: #define UNUSED(x) x __attribute__((__unused__))
        !           127: 
        !           128: #define PACKAGE "rsync"
        !           129: 
        !           130: #include "popt.h"

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>