Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mesa
Path: blob/21.2-virgl/src/util/detect_os.h
4550 views
1
/* SPDX-License-Identifier: MIT */
2
/* Copyright 2008 VMware, Inc. */
3
4
/**
5
* Auto-detect the operating system family.
6
*
7
* See also:
8
* - http://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
9
* - echo | gcc -dM -E - | sort
10
* - http://msdn.microsoft.com/en-us/library/b0084kay.aspx
11
*
12
* @author José Fonseca <[email protected]>
13
*/
14
15
#ifndef DETECT_OS_H
16
#define DETECT_OS_H
17
18
#if defined(__linux__)
19
#define DETECT_OS_LINUX 1
20
#define DETECT_OS_UNIX 1
21
#endif
22
23
/*
24
* Android defines __linux__, so DETECT_OS_LINUX and DETECT_OS_UNIX will
25
* also be defined.
26
*/
27
#if defined(ANDROID)
28
#define DETECT_OS_ANDROID 1
29
#endif
30
31
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
32
#define DETECT_OS_FREEBSD 1
33
#define DETECT_OS_BSD 1
34
#define DETECT_OS_UNIX 1
35
#endif
36
37
#if defined(__OpenBSD__)
38
#define DETECT_OS_OPENBSD 1
39
#define DETECT_OS_BSD 1
40
#define DETECT_OS_UNIX 1
41
#endif
42
43
#if defined(__NetBSD__)
44
#define DETECT_OS_NETBSD 1
45
#define DETECT_OS_BSD 1
46
#define DETECT_OS_UNIX 1
47
#endif
48
49
#if defined(__DragonFly__)
50
#define DETECT_OS_DRAGONFLY 1
51
#define DETECT_OS_BSD 1
52
#define DETECT_OS_UNIX 1
53
#endif
54
55
#if defined(__GNU__)
56
#define DETECT_OS_HURD 1
57
#define DETECT_OS_UNIX 1
58
#endif
59
60
#if defined(__sun)
61
#define DETECT_OS_SOLARIS 1
62
#define DETECT_OS_UNIX 1
63
#endif
64
65
#if defined(__APPLE__)
66
#define DETECT_OS_APPLE 1
67
#define DETECT_OS_UNIX 1
68
#endif
69
70
#if defined(_WIN32) || defined(WIN32)
71
#define DETECT_OS_WINDOWS 1
72
#endif
73
74
#if defined(__HAIKU__)
75
#define DETECT_OS_HAIKU 1
76
#define DETECT_OS_UNIX 1
77
#endif
78
79
#if defined(__CYGWIN__)
80
#define DETECT_OS_CYGWIN 1
81
#define DETECT_OS_UNIX 1
82
#endif
83
84
85
/*
86
* Make sure DETECT_OS_* are always defined, so that they can be used with #if
87
*/
88
#ifndef DETECT_OS_ANDROID
89
#define DETECT_OS_ANDROID 0
90
#endif
91
#ifndef DETECT_OS_APPLE
92
#define DETECT_OS_APPLE 0
93
#endif
94
#ifndef DETECT_OS_BSD
95
#define DETECT_OS_BSD 0
96
#endif
97
#ifndef DETECT_OS_CYGWIN
98
#define DETECT_OS_CYGWIN 0
99
#endif
100
#ifndef DETECT_OS_DRAGONFLY
101
#define DETECT_OS_DRAGONFLY 0
102
#endif
103
#ifndef DETECT_OS_FREEBSD
104
#define DETECT_OS_FREEBSD 0
105
#endif
106
#ifndef DETECT_OS_HAIKU
107
#define DETECT_OS_HAIKU 0
108
#endif
109
#ifndef DETECT_OS_HURD
110
#define DETECT_OS_HURD 0
111
#endif
112
#ifndef DETECT_OS_LINUX
113
#define DETECT_OS_LINUX 0
114
#endif
115
#ifndef DETECT_OS_NETBSD
116
#define DETECT_OS_NETBSD 0
117
#endif
118
#ifndef DETECT_OS_OPENBSD
119
#define DETECT_OS_OPENBSD 0
120
#endif
121
#ifndef DETECT_OS_SOLARIS
122
#define DETECT_OS_SOLARIS 0
123
#endif
124
#ifndef DETECT_OS_UNIX
125
#define DETECT_OS_UNIX 0
126
#endif
127
#ifndef DETECT_OS_WINDOWS
128
#define DETECT_OS_WINDOWS 0
129
#endif
130
131
#endif /* DETECT_OS_H */
132
133