Commit 1f9611242bdbb1b7c5c73a471bada2c26f8bdba1

Authored by aurel32
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
... ...