]> git.ipfire.org Git - thirdparty/squid.git/blame - compat/osdetect.h
SourceFormat Enforcement
[thirdparty/squid.git] / compat / osdetect.h
CommitLineData
f04e1182
AJ
1#ifndef SQUID_COMPAT_OSDETECT_H
2#define SQUID_COMPAT_OSDETECT_H
3
f04e1182
AJ
4/****************************************************************************
5 *--------------------------------------------------------------------------*
6 * DO *NOT* MAKE ANY CHANGES below here unless you know what you're doing...*
7 *--------------------------------------------------------------------------*
8 ****************************************************************************/
9
10/*
11 * Define the _SQUID_TYPE_ based on a guess of the OS.
12 *
13 * NP: This MUST come first in compat.h with no OS-specific includes
14 * or other definitions within this if-else structure.
15 */
16
00177188
FC
17/* SUN SOLARIS / OPENSOLARIS */
18#if defined(__sun__) || defined(__sun) || defined(__SUNPRO_CC) || defined(__SunOS_OSversion)
dc7b4068
FC
19#define _SQUID_SUN_ 1 /* SunOS */
20
21#if defined(__SVR4) /* Solaris */
00177188 22#define _SQUID_SOLARIS_ 1
dc7b4068
FC
23#else /* SunOS */
24#define _SQUID_SUNOS_ 1
25#endif /* __SVR4 */
f04e1182
AJ
26
27#elif defined(__hpux) /* HP-UX - SysV-like? */
00177188
FC
28#define _SQUID_HPUX_ 1
29#define _SQUID_SYSV_ 1
f04e1182
AJ
30
31#elif defined(__osf__) /* OSF/1 */
00177188 32#define _SQUID_OSF_ 1
f04e1182
AJ
33
34#elif defined(__ultrix) /* Ultrix */
00177188 35#define _SQUID_ULTRIX_ 1
f04e1182
AJ
36
37#elif defined(_AIX) /* AIX */
00177188 38#define _SQUID_AIX_ 1
f04e1182 39
00177188
FC
40#elif defined(__linux__) /* Linux. WARNING: solaris-x86 also sets this */
41#define _SQUID_LINUX_ 1
f04e1182
AJ
42
43#elif defined(__FreeBSD__) /* FreeBSD */
00177188 44#define _SQUID_FREEBSD_ 1
83cd15d9
AJ
45
46#elif defined(__FreeBSD_kernel__) /* GNU/kFreeBSD */
00177188 47#define _SQUID_KFREEBSD_ 1
f04e1182
AJ
48
49#elif defined(__sgi__) || defined(sgi) || defined(__sgi) /* SGI */
00177188 50#define _SQUID_SGI_ 1
f04e1182
AJ
51
52#elif defined(__NeXT__)
00177188 53#define _SQUID_NEXT_ 1
f04e1182 54
00177188
FC
55#elif defined(__bsdi__) /* BSD/OS */
56#define _SQUID_BSDI_ 1
f04e1182
AJ
57
58#elif defined(__NetBSD__)
00177188 59#define _SQUID_NETBSD_ 1
f04e1182
AJ
60
61#elif defined(__OpenBSD__)
00177188 62#define _SQUID_OPENBSD_ 1
f04e1182
AJ
63
64#elif defined(__DragonFly__)
00177188 65#define _SQUID_DRAGONFLY_ 1
f04e1182 66
4d63494d 67#elif defined(__CYGWIN32__) || defined(__CYGWIN__)
00177188 68#define _SQUID_CYGWIN_ 1
be266cb2 69#define _SQUID_WINDOWS_ 1
f04e1182 70
4d63494d
AJ
71#elif defined(__MINGW32__) || defined(__MINGW__)
72#define _SQUID_MINGW_ 1
73#define _SQUID_WINDOWS_ 1
74
f04e1182 75#elif defined(WIN32) || defined(WINNT) || defined(__WIN32__) || defined(__WIN32)
f3f3e961
GS
76/* We are using _SQUID_MSWIN_ define in cf.data.pre, so
77 it must be defined to 1 to avoid the build failure of cfgen.
78 */
79#define _SQUID_MSWIN_ 1
be266cb2 80#define _SQUID_WINDOWS_ 1
f04e1182
AJ
81
82#elif defined(__APPLE__)
00177188 83#define _SQUID_APPLE_ 1
f04e1182
AJ
84
85#elif defined(sony_news) && defined(__svr4)
00177188 86#define _SQUID_NEWSOS6_ 1
f04e1182
AJ
87
88#elif defined(__QNX__)
00177188 89#define _SQUID_QNX_ 1
f04e1182
AJ
90
91#elif defined(__EMX__) || defined(OS2) || defined(__OS2__)
00177188 92#define _SQUID_OS2_ 1
f04e1182
AJ
93
94#endif /* OS automatic detection */
95
f04e1182 96#endif /* SQUID_COMPAT_OSDETECT_H */