Tulip  5.7.4
Large graphs analysis and drawing
SystemDefinition.h
1 /*
2  *
3  * This file is part of Tulip (https://tulip.labri.fr)
4  *
5  * Authors: David Auber and the Tulip development Team
6  * from LaBRI, University of Bordeaux
7  *
8  * Tulip is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU Lesser General Public License
10  * as published by the Free Software Foundation, either version 3
11  * of the License, or (at your option) any later version.
12  *
13  * Tulip is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16  * See the GNU General Public License for more details.
17  *
18  */
19 ///@cond DOXYGEN_HIDDEN
20 
21 #ifndef SYSTEMDEFINITION_H
22 #define SYSTEMDEFINITION_H
23 
24 #if defined(_WIN32)
25 #define OS_PLATFORM "win"
26 #elif defined(__APPLE__)
27 #define OS_PLATFORM "mac"
28 #elif defined(__linux__)
29 #define OS_PLATFORM "linux"
30 #else
31 #define OS_PLATFORM "other"
32 #endif
33 
34 #if defined(__x86_64__) || defined(_M_X64)
35 #define OS_ARCHITECTURE "x86_64"
36 #elif defined(__i386__) || defined(_M_IX86)
37 #define OS_ARCHITECTURE "x86"
38 #elif defined(__arm64__)
39 #define OS_ARCHITECTURE "arm64"
40 #else
41 #define OS_ARCHITECTURE "other"
42 #endif
43 
44 #if defined(__clang__)
45 #define OS_COMPILER "Clang"
46 #elif defined(__GNUC__)
47 #define OS_COMPILER "gcc"
48 #elif defined(_MSC_VER)
49 #define OS_COMPILER "MSVC"
50 #endif
51 
52 #endif // SYSTEMDEFINITION_H
53 ///@endcond