Annotation of win32/apache22/srclib/apr/include/apr_want.h, revision 1.1
1.1 ! moko 1: /* Licensed to the Apache Software Foundation (ASF) under one or more
! 2: * contributor license agreements. See the NOTICE file distributed with
! 3: * this work for additional information regarding copyright ownership.
! 4: * The ASF licenses this file to You under the Apache License, Version 2.0
! 5: * (the "License"); you may not use this file except in compliance with
! 6: * the License. You may obtain a copy of the License at
! 7: *
! 8: * http://www.apache.org/licenses/LICENSE-2.0
! 9: *
! 10: * Unless required by applicable law or agreed to in writing, software
! 11: * distributed under the License is distributed on an "AS IS" BASIS,
! 12: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
! 13: * See the License for the specific language governing permissions and
! 14: * limitations under the License.
! 15: */
! 16:
! 17: #include "apr.h" /* configuration data */
! 18: /**
! 19: * @file apr_want.h
! 20: * @brief APR Standard Headers Support
! 21: *
! 22: * <PRE>
! 23: * Features:
! 24: *
! 25: * APR_WANT_STRFUNC: strcmp, strcat, strcpy, etc
! 26: * APR_WANT_MEMFUNC: memcmp, memcpy, etc
! 27: * APR_WANT_STDIO: <stdio.h> and related bits
! 28: * APR_WANT_IOVEC: struct iovec
! 29: * APR_WANT_BYTEFUNC: htons, htonl, ntohl, ntohs
! 30: *
! 31: * Typical usage:
! 32: *
! 33: * \#define APR_WANT_STRFUNC
! 34: * \#define APR_WANT_MEMFUNC
! 35: * \#include "apr_want.h"
! 36: *
! 37: * The appropriate headers will be included.
! 38: *
! 39: * Note: it is safe to use this in a header (it won't interfere with other
! 40: * headers' or source files' use of apr_want.h)
! 41: * </PRE>
! 42: */
! 43:
! 44: /* --------------------------------------------------------------------- */
! 45:
! 46: #ifdef APR_WANT_STRFUNC
! 47:
! 48: #if APR_HAVE_STRING_H
! 49: #include <string.h>
! 50: #endif
! 51: #if APR_HAVE_STRINGS_H
! 52: #include <strings.h>
! 53: #endif
! 54:
! 55: #undef APR_WANT_STRFUNC
! 56: #endif
! 57:
! 58: /* --------------------------------------------------------------------- */
! 59:
! 60: #ifdef APR_WANT_MEMFUNC
! 61:
! 62: #if APR_HAVE_STRING_H
! 63: #include <string.h>
! 64: #endif
! 65:
! 66: #undef APR_WANT_MEMFUNC
! 67: #endif
! 68:
! 69: /* --------------------------------------------------------------------- */
! 70:
! 71: #ifdef APR_WANT_STDIO
! 72:
! 73: #if APR_HAVE_STDIO_H
! 74: #include <stdio.h>
! 75: #endif
! 76:
! 77: #undef APR_WANT_STDIO
! 78: #endif
! 79:
! 80: /* --------------------------------------------------------------------- */
! 81:
! 82: #ifdef APR_WANT_IOVEC
! 83:
! 84: #if APR_HAVE_IOVEC
! 85:
! 86: #if APR_HAVE_SYS_UIO_H
! 87: #include <sys/uio.h>
! 88: #endif
! 89:
! 90: #else
! 91:
! 92: #ifndef APR_IOVEC_DEFINED
! 93: #define APR_IOVEC_DEFINED
! 94: struct iovec
! 95: {
! 96: void *iov_base;
! 97: size_t iov_len;
! 98: };
! 99: #endif /* !APR_IOVEC_DEFINED */
! 100:
! 101: #endif /* APR_HAVE_IOVEC */
! 102:
! 103: #undef APR_WANT_IOVEC
! 104: #endif
! 105:
! 106: /* --------------------------------------------------------------------- */
! 107:
! 108: #ifdef APR_WANT_BYTEFUNC
! 109:
! 110: /* Single Unix says they are in arpa/inet.h. Linux has them in
! 111: * netinet/in.h. FreeBSD has them in arpa/inet.h but requires that
! 112: * netinet/in.h be included first.
! 113: */
! 114: #if APR_HAVE_NETINET_IN_H
! 115: #include <netinet/in.h>
! 116: #endif
! 117: #if APR_HAVE_ARPA_INET_H
! 118: #include <arpa/inet.h>
! 119: #endif
! 120:
! 121: #undef APR_WANT_BYTEFUNC
! 122: #endif
! 123:
! 124: /* --------------------------------------------------------------------- */
E-mail: