merge from gcc
[binutils.git] / ld / sysdep.h
blobf164e74e1f0a7f580038c8530b037db057a89cbd
1 /* sysdep.h -- handle host dependencies for the GNU linker
2 Copyright 1995, 1996, 1997, 1999, 2002, 2003
3 Free Software Foundation, Inc.
5 This file is part of GLD, the Gnu Linker.
7 GLD is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
12 GLD is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GLD; see the file COPYING. If not, write to the Free
19 Software Foundation, 59 Temple Place - Suite 330, Boston, MA
20 02111-1307, USA. */
22 #ifndef LD_SYSDEP_H
23 #define LD_SYSDEP_H
25 #include "config.h"
27 #include <stdio.h>
28 #include <sys/types.h>
29 #include <sys/stat.h>
31 #ifdef HAVE_STRING_H
32 #include <string.h>
33 #else
34 #ifdef HAVE_STRINGS_H
35 #include <strings.h>
36 #else
37 extern char *strchr ();
38 extern char *strrchr ();
39 #endif
40 #endif
42 #ifdef HAVE_STDLIB_H
43 #include <stdlib.h>
44 #endif
46 #ifdef HAVE_UNISTD_H
47 #include <unistd.h>
48 #endif
50 /* for PATH_MAX */
51 #ifdef HAVE_LIMITS_H
52 #include <limits.h>
53 #endif
54 /* for MAXPATHLEN */
55 #ifdef HAVE_SYS_PARAM_H
56 #include <sys/param.h>
57 #endif
58 #ifdef PATH_MAX
59 # define LD_PATHMAX PATH_MAX
60 #else
61 # ifdef MAXPATHLEN
62 # define LD_PATHMAX MAXPATHLEN
63 # else
64 # define LD_PATHMAX 1024
65 # endif
66 #endif
68 #ifdef HAVE_REALPATH
69 # define REALPATH(a,b) realpath (a, b)
70 #else
71 # define REALPATH(a,b) NULL
72 #endif
74 #ifdef USE_BINARY_FOPEN
75 #include "fopen-bin.h"
76 #else
77 #include "fopen-same.h"
78 #endif
80 #ifdef NEED_DECLARATION_STRSTR
81 extern char *strstr ();
82 #endif
84 #ifdef NEED_DECLARATION_FREE
85 extern void free ();
86 #endif
88 #ifdef NEED_DECLARATION_GETENV
89 extern char *getenv ();
90 #endif
92 #ifdef NEED_DECLARATION_ENVIRON
93 extern char **environ;
94 #endif
96 #endif /* ! defined (LD_SYSDEP_H) */