xref: /freebsd/contrib/llvm-project/openmp/runtime/src/kmp_version.h (revision bdd1243df58e60e85101c09001d9812a789b6bc4)
1 /*
2  * kmp_version.h -- version number for this release
3  */
4 
5 //===----------------------------------------------------------------------===//
6 //
7 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
8 // See https://llvm.org/LICENSE.txt for license information.
9 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
10 //
11 //===----------------------------------------------------------------------===//
12 
13 #ifndef KMP_VERSION_H
14 #define KMP_VERSION_H
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif // __cplusplus
19 
20 #ifndef KMP_VERSION_MAJOR
21 #error KMP_VERSION_MAJOR macro is not defined.
22 #endif
23 #define KMP_VERSION_MINOR 0
24 /* Using "magic" prefix in all the version strings is rather convenient to get
25    static version info from binaries by using standard utilities "strings" and
26    "grep", e. g.:
27         $ strings libomp.so | grep "@(#)"
28    gives clean list of all version strings in the library. Leading zero helps
29    to keep version string separate from printable characters which may occurs
30    just before version string. */
31 #define KMP_VERSION_MAGIC_STR "\x00@(#) "
32 #define KMP_VERSION_MAGIC_LEN 6 // Length of KMP_VERSION_MAGIC_STR.
33 #define KMP_VERSION_PREF_STR "LLVM OMP "
34 #define KMP_VERSION_PREFIX KMP_VERSION_MAGIC_STR KMP_VERSION_PREF_STR
35 
36 /* declare all the version string constants for KMP_VERSION env. variable */
37 extern int const __kmp_version_major;
38 extern int const __kmp_version_minor;
39 extern int const __kmp_version_build;
40 extern int const __kmp_openmp_version;
41 extern char const
42     __kmp_copyright[]; // Old variable, kept for compatibility with ITC and ITP.
43 extern char const __kmp_version_copyright[];
44 extern char const __kmp_version_lib_ver[];
45 extern char const __kmp_version_lib_type[];
46 extern char const __kmp_version_link_type[];
47 extern char const __kmp_version_build_time[];
48 extern char const __kmp_version_target_env[];
49 extern char const __kmp_version_build_compiler[];
50 extern char const __kmp_version_alt_comp[];
51 extern char const __kmp_version_omp_api[];
52 // ??? extern char const __kmp_version_debug[];
53 extern char const __kmp_version_lock[];
54 extern char const __kmp_version_nested_stats_reporting[];
55 extern char const __kmp_version_ftnstdcall[];
56 extern char const __kmp_version_ftncdecl[];
57 extern char const __kmp_version_ftnextra[];
58 
59 void __kmp_print_version_1(void);
60 void __kmp_print_version_2(void);
61 
62 #ifdef __cplusplus
63 } // extern "C"
64 #endif // __cplusplus
65 
66 #endif /* KMP_VERSION_H */
67