xgboost
windefs.h
Go to the documentation of this file.
1 
6 #pragma once
7 
8 #if !defined(xgboost_IS_WIN)
9 
10 #if defined(_MSC_VER) || defined(__MINGW32__)
11 #define xgboost_IS_WIN 1
12 #endif // defined(_MSC_VER) || defined(__MINGW32__)
13 
14 #endif // !defined(xgboost_IS_WIN)
15 
16 #if defined(xgboost_IS_WIN)
17 
18 #if !defined(NOMINMAX)
19 #define NOMINMAX
20 #endif // !defined(NOMINMAX)
21 
22 // A macro used inside `windows.h` to avoid conflicts with `winsock2.h`
23 #if !defined(WIN32_LEAN_AND_MEAN)
24 #define WIN32_LEAN_AND_MEAN
25 #endif // !defined(WIN32_LEAN_AND_MEAN)
26 
27 // Stop windows.h from including winsock.h
28 // mingw uses _WINSOCKAPI_ to check whether windows.h is included, don't mess with it.
29 #if !defined(_WINSOCKAPI_) && !defined(__MINGW32__)
30 #define _WINSOCKAPI_
31 #endif // !defined(_WINSOCKAPI_)
32 
33 #if !defined(xgboost_IS_MINGW)
34 
35 #if defined(__MINGW32__)
36 #define xgboost_IS_MINGW 1
37 #endif // defined(__MINGW32__)
38 
39 #endif // xgboost_IS_MINGW
40 
41 #endif // !defined(xgboost_IS_WIN)