File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / TSRM / tsrm_config_common.h
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Sun Jun 15 20:04:03 2014 UTC (10 years ago) by misho
Branches: php, MAIN
CVS tags: v5_4_29, HEAD
php 5.4.29

    1: #ifndef TSRM_CONFIG_COMMON_H
    2: #define TSRM_CONFIG_COMMON_H
    3: 
    4: #ifndef __CYGWIN__
    5: # ifdef _WIN32
    6: #  define TSRM_WIN32
    7: # endif
    8: #endif
    9: 
   10: #ifdef TSRM_WIN32
   11: # include "tsrm_config.w32.h"
   12: #else
   13: # include <tsrm_config.h>
   14: # include <sys/param.h>
   15: #endif
   16: 
   17: #if HAVE_ALLOCA_H && !defined(_ALLOCA_H)
   18: #  include <alloca.h>
   19: #endif
   20: 
   21: /* AIX requires this to be the first thing in the file.  */
   22: #ifndef __GNUC__
   23: # ifndef HAVE_ALLOCA_H
   24: #  ifdef _AIX
   25: #pragma alloca
   26: #  else
   27: #   ifndef alloca /* predefined by HP cc +Olibcalls */
   28: #    ifndef NETWARE
   29: char *alloca ();
   30: #    endif
   31: #   endif
   32: #  endif
   33: # endif
   34: #endif
   35: 
   36: #if HAVE_UNISTD_H
   37: #include <unistd.h>
   38: #endif
   39: 
   40: #if HAVE_LIMITS_H
   41: #include <limits.h>
   42: #endif
   43: 
   44: #ifndef MAXPATHLEN
   45: # ifdef PATH_MAX
   46: #  define MAXPATHLEN PATH_MAX
   47: # elif defined(MAX_PATH)
   48: #  define MAXPATHLEN MAX_PATH
   49: # else
   50: #  define MAXPATHLEN 256
   51: # endif
   52: #endif
   53: 
   54: #if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2))
   55: # define TSRM_ALLOCA_MAX_SIZE 4096
   56: # define TSRM_ALLOCA_FLAG(name) \
   57: 	int name;
   58: # define tsrm_do_alloca_ex(size, limit, use_heap) \
   59: 	((use_heap = ((size) > (limit))) ? malloc(size) : alloca(size))
   60: # define tsrm_do_alloca(size, use_heap) \
   61: 	tsrm_do_alloca_ex(size, TSRM_ALLOCA_MAX_SIZE, use_heap)
   62: # define tsrm_free_alloca(p, use_heap) \
   63: 	do { if (use_heap) free(p); } while (0)
   64: #else
   65: # define TSRM_ALLOCA_FLAG(name)
   66: # define tsrm_do_alloca(p, use_heap)	malloc(p)
   67: # define tsrm_free_alloca(p, use_heap)	free(p)
   68: #endif
   69: 
   70: #endif /* TSRM_CONFIG_COMMON_H */

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