Annotation of embedaddon/libiconv/srclib/pathmax.h, revision 1.1.1.2
1.1 misho 1: /* Define PATH_MAX somehow. Requires sys/types.h.
1.1.1.2 ! misho 2: Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2011 Free Software
! 3: Foundation, Inc.
1.1 misho 4:
5: This program is free software; you can redistribute it and/or modify
6: it under the terms of the GNU General Public License as published by
7: the Free Software Foundation; either version 3, or (at your option)
8: any later version.
9:
10: This program is distributed in the hope that it will be useful,
11: but WITHOUT ANY WARRANTY; without even the implied warranty of
12: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13: GNU General Public License for more details.
14:
15: You should have received a copy of the GNU General Public License
16: along with this program; if not, write to the Free Software Foundation,
17: Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
18:
19: #ifndef _PATHMAX_H
20: # define _PATHMAX_H
21:
1.1.1.2 ! misho 22: /* POSIX:2008 defines PATH_MAX to be the maximum number of bytes in a filename,
! 23: including the terminating NUL byte.
! 24: <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html>
! 25: PATH_MAX is not defined on systems which have no limit on filename length,
! 26: such as GNU/Hurd.
! 27:
! 28: This file does *not* define PATH_MAX always. Programs that use this file
! 29: can handle the GNU/Hurd case in several ways:
! 30: - Either with a package-wide handling, or with a per-file handling,
! 31: - Either through a
! 32: #ifdef PATH_MAX
! 33: or through a fallback like
! 34: #ifndef PATH_MAX
! 35: # define PATH_MAX 8192
! 36: #endif
! 37: or through a fallback like
! 38: #ifndef PATH_MAX
! 39: # define PATH_MAX pathconf ("/", _PC_PATH_MAX)
! 40: #endif
! 41: */
! 42:
1.1 misho 43: # include <unistd.h>
44:
45: # include <limits.h>
46:
47: # ifndef _POSIX_PATH_MAX
48: # define _POSIX_PATH_MAX 256
49: # endif
50:
51: /* Don't include sys/param.h if it already has been. */
52: # if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN
53: # include <sys/param.h>
54: # endif
55:
56: # if !defined PATH_MAX && defined MAXPATHLEN
57: # define PATH_MAX MAXPATHLEN
58: # endif
59:
1.1.1.2 ! misho 60: # ifdef __hpux
! 61: /* On HP-UX, PATH_MAX designates the maximum number of bytes in a filename,
! 62: *not* including the terminating NUL byte, and is set to 1023.
! 63: Additionally, when _XOPEN_SOURCE is defined to 500 or more, PATH_MAX is
! 64: not defined at all any more. */
! 65: # undef PATH_MAX
! 66: # define PATH_MAX 1024
1.1 misho 67: # endif
68:
69: #endif /* _PATHMAX_H */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>