Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/oneapi/tbb/version.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002     Copyright (c) 2005-2023 Intel Corporation
0003 
0004     Licensed under the Apache License, Version 2.0 (the "License");
0005     you may not use this file except in compliance with the License.
0006     You may obtain a copy of the License at
0007 
0008         http://www.apache.org/licenses/LICENSE-2.0
0009 
0010     Unless required by applicable law or agreed to in writing, software
0011     distributed under the License is distributed on an "AS IS" BASIS,
0012     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0013     See the License for the specific language governing permissions and
0014     limitations under the License.
0015 */
0016 
0017 #ifndef __TBB_version_H
0018 #define __TBB_version_H
0019 
0020 // Exclude all includes during .rc files compilation
0021 #ifndef RC_INVOKED
0022     #include "detail/_config.h"
0023     #include "detail/_namespace_injection.h"
0024 #else
0025     #define __TBB_STRING_AUX(x) #x
0026     #define __TBB_STRING(x) __TBB_STRING_AUX(x)
0027 #endif
0028 
0029 // Product version
0030 #define TBB_VERSION_MAJOR 2021
0031 // Update version
0032 #define TBB_VERSION_MINOR 12
0033 // "Patch" version for custom releases
0034 #define TBB_VERSION_PATCH 0
0035 // Suffix string
0036 #define __TBB_VERSION_SUFFIX ""
0037 // Full official version string
0038 #define TBB_VERSION_STRING              \
0039     __TBB_STRING(TBB_VERSION_MAJOR) "." \
0040     __TBB_STRING(TBB_VERSION_MINOR) "." \
0041     __TBB_STRING(TBB_VERSION_PATCH)     \
0042     __TBB_VERSION_SUFFIX
0043 
0044 // OneAPI oneTBB specification version
0045 #define ONETBB_SPEC_VERSION "1.0"
0046 // Full interface version
0047 #define TBB_INTERFACE_VERSION 12120
0048 // Major interface version
0049 #define TBB_INTERFACE_VERSION_MAJOR (TBB_INTERFACE_VERSION/1000)
0050 // Minor interface version
0051 #define TBB_INTERFACE_VERSION_MINOR (TBB_INTERFACE_VERSION%1000/10)
0052 
0053 // The binary compatibility version
0054 // To be used in SONAME, manifests, etc.
0055 #define __TBB_BINARY_VERSION 12
0056 
0057 //! TBB_VERSION support
0058 #ifndef TBB_ENDL
0059 #define TBB_ENDL "\n"
0060 #endif
0061 
0062 //TBB_REVAMP_TODO: consider enabling version_string.ver generation
0063 //TBB_REVAMP_TODO: #include "version_string.ver"
0064 
0065 #define __TBB_ONETBB_SPEC_VERSION(N) #N ": SPECIFICATION VERSION\t" ONETBB_SPEC_VERSION TBB_ENDL
0066 #define __TBB_VERSION_NUMBER(N) #N ": VERSION\t\t" TBB_VERSION_STRING TBB_ENDL
0067 #define __TBB_INTERFACE_VERSION_NUMBER(N) #N ": INTERFACE VERSION\t" __TBB_STRING(TBB_INTERFACE_VERSION) TBB_ENDL
0068 
0069 #ifndef TBB_USE_DEBUG
0070     #define __TBB_VERSION_USE_DEBUG(N) #N ": TBB_USE_DEBUG\tundefined" TBB_ENDL
0071 #elif TBB_USE_DEBUG==0
0072     #define __TBB_VERSION_USE_DEBUG(N) #N ": TBB_USE_DEBUG\t0" TBB_ENDL
0073 #elif TBB_USE_DEBUG==1
0074     #define __TBB_VERSION_USE_DEBUG(N) #N ": TBB_USE_DEBUG\t1" TBB_ENDL
0075 #elif TBB_USE_DEBUG==2
0076     #define __TBB_VERSION_USE_DEBUG(N) #N ": TBB_USE_DEBUG\t2" TBB_ENDL
0077 #else
0078     #error Unexpected value for TBB_USE_DEBUG
0079 #endif
0080 
0081 #ifndef TBB_USE_ASSERT
0082     #define __TBB_VERSION_USE_ASSERT(N) #N ": TBB_USE_ASSERT\tundefined" TBB_ENDL
0083 #elif TBB_USE_ASSERT==0
0084     #define __TBB_VERSION_USE_ASSERT(N) #N ": TBB_USE_ASSERT\t0" TBB_ENDL
0085 #elif TBB_USE_ASSERT==1
0086     #define __TBB_VERSION_USE_ASSERT(N) #N ": TBB_USE_ASSERT\t1" TBB_ENDL
0087 #elif TBB_USE_ASSERT==2
0088     #define __TBB_VERSION_USE_ASSERT(N) #N ": TBB_USE_ASSERT\t2" TBB_ENDL
0089 #else
0090     #error Unexpected value for TBB_USE_ASSERT
0091 #endif
0092 
0093 #define TBB_VERSION_STRINGS_P(N)                \
0094     __TBB_ONETBB_SPEC_VERSION(N)                \
0095     __TBB_VERSION_NUMBER(N)                     \
0096     __TBB_INTERFACE_VERSION_NUMBER(N)           \
0097     __TBB_VERSION_USE_DEBUG(N)                  \
0098     __TBB_VERSION_USE_ASSERT(N)
0099 
0100 #define TBB_VERSION_STRINGS TBB_VERSION_STRINGS_P(oneTBB)
0101 #define TBBMALLOC_VERSION_STRINGS TBB_VERSION_STRINGS_P(TBBmalloc)
0102 
0103 //! The function returns the version string for the Intel(R) oneAPI Threading Building Blocks (oneTBB)
0104 //! shared library being used.
0105 /**
0106  * The returned pointer is an address of a string in the shared library.
0107  * It can be different than the TBB_VERSION_STRING obtained at compile time.
0108  */
0109 extern "C" TBB_EXPORT const char* __TBB_EXPORTED_FUNC TBB_runtime_version();
0110 
0111 //! The function returns the interface version of the oneTBB shared library being used.
0112 /**
0113  * The returned version is determined at runtime, not at compile/link time.
0114  * It can be different than the value of TBB_INTERFACE_VERSION obtained at compile time.
0115  */
0116 extern "C" TBB_EXPORT int __TBB_EXPORTED_FUNC TBB_runtime_interface_version();
0117 
0118 #endif // __TBB_version_H