2001-03-22 Philip Blundell <philb@gnu.org>
[binutils.git] / bfd / hosts / alphavms.h
blobeee391a97fbff046d2f986941baf592387cdf390
1 /* alphavms.h -- BFD definitions for an openVMS host
2 Copyright 1996 Free Software Foundation, Inc.
3 Written by Klaus Kämpf (kkaempf@progis.de)
4 of proGIS Softwareentwicklung, Aachen, Germany
6 This file is part of BFD, the Binary File Descriptor library.
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
22 #include <stddef.h>
23 #include <fcntl.h>
24 #include <errno.h>
25 #include <stdio.h>
26 #include <sys/types.h>
27 #include <sys/stat.h>
28 #include <ctype.h>
29 #include <string.h>
30 #include <sys/file.h>
31 #include <stdlib.h>
32 #include <unixlib.h>
33 #include <unixio.h>
34 #include <time.h>
36 #include "bfd.h"
38 #ifndef BFD_HOST_64_BIT
39 /* Make the basic types 64-bit quantities on the host.
40 Also provide the support macros BFD needs. */
41 # ifdef __GNUC__
42 # define BFD_HOST_64_BIT long long
43 # else
44 # define BFD_HOST_64_BIT long
45 # endif
46 typedef unsigned BFD_HOST_64_BIT uint64_type;
47 typedef BFD_HOST_64_BIT int64_type;
49 # define sprintf_vma(s,x) sprintf (s, "%016lx", x) /* BFD_HOST_64_BIT */
50 # define fprintf_vma(f,x) fprintf (f, "%016lx", x) /* BFD_HOST_64_BIT */
52 # define BYTES_IN_PRINTF_INT 4
54 /* These must have type unsigned long because they are used as
55 arguments in printf functions. */
56 # define uint64_typeLOW(x) ((unsigned long) (((x) & 0xffffffff))) /* BFD_HOST_64_BIT */
57 # define uint64_typeHIGH(x) ((unsigned long) (((x) >> 32) & 0xffffffff)) /* BFD_HOST_64_BIT */
59 #endif /* BFD_HOST_64_BIT */
61 #include "fopen-vms.h"
63 #define NO_FCNTL 1
65 #ifndef O_ACCMODE
66 #define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
67 #endif
69 extern int getpagesize PARAMS ((void));