blob: f9535b37682fd3760bd930d4473ddbdded8fd7d6 [file] [log] [blame]
Peter Tyserb06976d2009-03-13 18:54:51 -05001/*
2 * Copyright 2008 Extreme Engineering Solutions, Inc.
3 *
Wolfgang Denkf3d4e692013-07-08 11:58:49 +02004 * SPDX-License-Identifier: LGPL-2.0+
Peter Tyserb06976d2009-03-13 18:54:51 -05005 */
6
7#ifndef __MINGW_SUPPORT_H_
8#define __WINGW_SUPPORT_H_ 1
9
10/* Defining __INSIDE_MSYS__ helps to prevent u-boot/mingw overlap */
11#define __INSIDE_MSYS__ 1
12
13#include <windows.h>
14
15/* mmap protections */
16#define PROT_READ 0x1 /* Page can be read */
17#define PROT_WRITE 0x2 /* Page can be written */
18#define PROT_EXEC 0x4 /* Page can be executed */
19#define PROT_NONE 0x0 /* Page can not be accessed */
20
21/* Sharing types (must choose one and only one of these) */
22#define MAP_SHARED 0x01 /* Share changes */
23#define MAP_PRIVATE 0x02 /* Changes are private */
24
Mike Frysinger92e144f2012-07-18 16:59:45 +000025/* File perms */
26#ifndef S_IRGRP
27# define S_IRGRP 0
28#endif
29#ifndef S_IWGRP
30# define S_IWGRP 0
31#endif
32
Peter Tyserb06976d2009-03-13 18:54:51 -050033/* Windows 64-bit access macros */
34#define LODWORD(x) ((DWORD)((DWORDLONG)(x)))
35#define HIDWORD(x) ((DWORD)(((DWORDLONG)(x) >> 32) & 0xffffffff))
36
37typedef UINT uint;
38typedef ULONG ulong;
39
40int fsync(int fd);
41void *mmap(void *, size_t, int, int, int, int);
42int munmap(void *, size_t);
Remy Bohmer274888a2009-10-28 22:13:36 +010043char *strtok_r(char *s, const char *delim, char **save_ptr);
Mike Frysinger0184f1e2010-01-08 02:48:03 -050044#include "getline.h"
Peter Tyserb06976d2009-03-13 18:54:51 -050045
46#endif /* __MINGW_SUPPORT_H_ */