Commit 1f9611242bdbb1b7c5c73a471bada2c26f8bdba1
1 parent
9cd38c23
target-alpha: add proper fcntl definitions
On Alpha the target to native fcntl definitions were missing. Because of this, programs trying to open files with the O_CREAT option were getting O_APPEND instead, etc. This was keeping gcc from the spec benchmarks from running, among other things. (Vince Weaver) git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5672 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
19 additions
and
0 deletions
linux-user/syscall_defs.h
... | ... | @@ -1749,6 +1749,25 @@ struct target_statfs64 { |
1749 | 1749 | #define TARGET_O_NOFOLLOW 0x20000 /* don't follow links */ |
1750 | 1750 | #define TARGET_O_NOATIME 0x40000 |
1751 | 1751 | #define TARGET_O_NDELAY TARGET_O_NONBLOCK |
1752 | +#elif defined(TARGET_ALPHA) | |
1753 | +#define TARGET_O_ACCMODE 0x0003 | |
1754 | +#define TARGET_O_RDONLY 0x0000 | |
1755 | +#define TARGET_O_WRONLY 0x0001 | |
1756 | +#define TARGET_O_RDWR 0x0002 | |
1757 | +#define TARGET_O_APPEND 0x0008 | |
1758 | +#define TARGET_O_SYNC 0x4000 | |
1759 | +#define TARGET_O_NONBLOCK 0x0004 | |
1760 | +#define TARGET_O_CREAT 0x0200 /* not fcntl */ | |
1761 | +#define TARGET_O_TRUNC 0x0400 /* not fcntl */ | |
1762 | +#define TARGET_O_EXCL 0x0800 /* not fcntl */ | |
1763 | +#define TARGET_O_NOCTTY 0x1000 /* not fcntl */ | |
1764 | +#define TARGET_FASYNC 0x2000 /* fcntl, for BSD compatibility */ | |
1765 | +#define TARGET_O_LARGEFILE 0x0000 /* not necessary, always 64-bit */ | |
1766 | +#define TARGET_O_DIRECT 0x80000 /* direct disk access hint */ | |
1767 | +#define TARGET_O_DIRECTORY 0x8000 /* must be a directory */ | |
1768 | +#define TARGET_O_NOFOLLOW 0x10000 /* don't follow links */ | |
1769 | +#define TARGET_O_NOATIME 0x100000 | |
1770 | +#define TARGET_O_NDELAY TARGET_O_NONBLOCK | |
1752 | 1771 | #else |
1753 | 1772 | #define TARGET_O_ACCMODE 0003 |
1754 | 1773 | #define TARGET_O_RDONLY 00 | ... | ... |