explodethosebits 0.3.0__cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. etb/__init__.py +351 -0
  2. etb/__init__.pyi +976 -0
  3. etb/_etb.cpython-39-x86_64-linux-gnu.so +0 -0
  4. etb/_version.py +34 -0
  5. etb/py.typed +2 -0
  6. explodethosebits-0.3.0.dist-info/METADATA +405 -0
  7. explodethosebits-0.3.0.dist-info/RECORD +88 -0
  8. explodethosebits-0.3.0.dist-info/WHEEL +6 -0
  9. explodethosebits-0.3.0.dist-info/licenses/LICENSE +21 -0
  10. explodethosebits-0.3.0.dist-info/sboms/auditwheel.cdx.json +1 -0
  11. explodethosebits.libs/libcudart-c3a75b33.so.12.8.90 +0 -0
  12. include/etb/bit_coordinate.hpp +45 -0
  13. include/etb/bit_extraction.hpp +79 -0
  14. include/etb/bit_pruning.hpp +122 -0
  15. include/etb/config.hpp +284 -0
  16. include/etb/cuda/arch_optimizations.cuh +358 -0
  17. include/etb/cuda/blackwell_optimizations.cuh +300 -0
  18. include/etb/cuda/cuda_common.cuh +265 -0
  19. include/etb/cuda/etb_cuda.cuh +200 -0
  20. include/etb/cuda/gpu_memory.cuh +406 -0
  21. include/etb/cuda/heuristics_kernel.cuh +315 -0
  22. include/etb/cuda/path_generator_kernel.cuh +272 -0
  23. include/etb/cuda/prefix_pruner_kernel.cuh +370 -0
  24. include/etb/cuda/signature_kernel.cuh +328 -0
  25. include/etb/early_stopping.hpp +246 -0
  26. include/etb/etb.hpp +20 -0
  27. include/etb/heuristics.hpp +165 -0
  28. include/etb/memoization.hpp +285 -0
  29. include/etb/path.hpp +86 -0
  30. include/etb/path_count.hpp +87 -0
  31. include/etb/path_generator.hpp +175 -0
  32. include/etb/prefix_trie.hpp +339 -0
  33. include/etb/reporting.hpp +437 -0
  34. include/etb/scoring.hpp +269 -0
  35. include/etb/signature.hpp +190 -0
  36. include/gmock/gmock-actions.h +2297 -0
  37. include/gmock/gmock-cardinalities.h +159 -0
  38. include/gmock/gmock-function-mocker.h +518 -0
  39. include/gmock/gmock-matchers.h +5623 -0
  40. include/gmock/gmock-more-actions.h +658 -0
  41. include/gmock/gmock-more-matchers.h +120 -0
  42. include/gmock/gmock-nice-strict.h +277 -0
  43. include/gmock/gmock-spec-builders.h +2148 -0
  44. include/gmock/gmock.h +96 -0
  45. include/gmock/internal/custom/README.md +18 -0
  46. include/gmock/internal/custom/gmock-generated-actions.h +7 -0
  47. include/gmock/internal/custom/gmock-matchers.h +37 -0
  48. include/gmock/internal/custom/gmock-port.h +40 -0
  49. include/gmock/internal/gmock-internal-utils.h +487 -0
  50. include/gmock/internal/gmock-port.h +139 -0
  51. include/gmock/internal/gmock-pp.h +279 -0
  52. include/gtest/gtest-assertion-result.h +237 -0
  53. include/gtest/gtest-death-test.h +345 -0
  54. include/gtest/gtest-matchers.h +923 -0
  55. include/gtest/gtest-message.h +252 -0
  56. include/gtest/gtest-param-test.h +546 -0
  57. include/gtest/gtest-printers.h +1161 -0
  58. include/gtest/gtest-spi.h +250 -0
  59. include/gtest/gtest-test-part.h +192 -0
  60. include/gtest/gtest-typed-test.h +331 -0
  61. include/gtest/gtest.h +2321 -0
  62. include/gtest/gtest_pred_impl.h +279 -0
  63. include/gtest/gtest_prod.h +60 -0
  64. include/gtest/internal/custom/README.md +44 -0
  65. include/gtest/internal/custom/gtest-port.h +37 -0
  66. include/gtest/internal/custom/gtest-printers.h +42 -0
  67. include/gtest/internal/custom/gtest.h +37 -0
  68. include/gtest/internal/gtest-death-test-internal.h +307 -0
  69. include/gtest/internal/gtest-filepath.h +227 -0
  70. include/gtest/internal/gtest-internal.h +1560 -0
  71. include/gtest/internal/gtest-param-util.h +1026 -0
  72. include/gtest/internal/gtest-port-arch.h +122 -0
  73. include/gtest/internal/gtest-port.h +2481 -0
  74. include/gtest/internal/gtest-string.h +178 -0
  75. include/gtest/internal/gtest-type-util.h +220 -0
  76. lib/libetb_core.a +0 -0
  77. lib64/cmake/GTest/GTestConfig.cmake +33 -0
  78. lib64/cmake/GTest/GTestConfigVersion.cmake +43 -0
  79. lib64/cmake/GTest/GTestTargets-release.cmake +49 -0
  80. lib64/cmake/GTest/GTestTargets.cmake +139 -0
  81. lib64/libgmock.a +0 -0
  82. lib64/libgmock_main.a +0 -0
  83. lib64/libgtest.a +0 -0
  84. lib64/libgtest_main.a +0 -0
  85. lib64/pkgconfig/gmock.pc +10 -0
  86. lib64/pkgconfig/gmock_main.pc +10 -0
  87. lib64/pkgconfig/gtest.pc +9 -0
  88. lib64/pkgconfig/gtest_main.pc +10 -0
@@ -0,0 +1,178 @@
1
+ // Copyright 2005, Google Inc.
2
+ // All rights reserved.
3
+ //
4
+ // Redistribution and use in source and binary forms, with or without
5
+ // modification, are permitted provided that the following conditions are
6
+ // met:
7
+ //
8
+ // * Redistributions of source code must retain the above copyright
9
+ // notice, this list of conditions and the following disclaimer.
10
+ // * Redistributions in binary form must reproduce the above
11
+ // copyright notice, this list of conditions and the following disclaimer
12
+ // in the documentation and/or other materials provided with the
13
+ // distribution.
14
+ // * Neither the name of Google Inc. nor the names of its
15
+ // contributors may be used to endorse or promote products derived from
16
+ // this software without specific prior written permission.
17
+ //
18
+ // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
+ // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
+ // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
+ // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
+ // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
+ // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
+ // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
+ // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
+ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
+ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
+
30
+ // The Google C++ Testing and Mocking Framework (Google Test)
31
+ //
32
+ // This header file declares the String class and functions used internally by
33
+ // Google Test. They are subject to change without notice. They should not used
34
+ // by code external to Google Test.
35
+ //
36
+ // This header file is #included by gtest-internal.h.
37
+ // It should not be #included by other files.
38
+
39
+ // IWYU pragma: private, include "gtest/gtest.h"
40
+ // IWYU pragma: friend gtest/.*
41
+ // IWYU pragma: friend gmock/.*
42
+
43
+ #ifndef GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_STRING_H_
44
+ #define GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_STRING_H_
45
+
46
+ #ifdef __BORLANDC__
47
+ // string.h is not guaranteed to provide strcpy on C++ Builder.
48
+ #include <mem.h>
49
+ #endif
50
+
51
+ #include <string.h>
52
+
53
+ #include <cstdint>
54
+ #include <sstream>
55
+ #include <string>
56
+
57
+ #include "gtest/internal/gtest-port.h"
58
+
59
+ namespace testing {
60
+ namespace internal {
61
+
62
+ // String - an abstract class holding static string utilities.
63
+ class GTEST_API_ String {
64
+ public:
65
+ // Static utility methods
66
+
67
+ // Clones a 0-terminated C string, allocating memory using new. The
68
+ // caller is responsible for deleting the return value using
69
+ // delete[]. Returns the cloned string, or NULL if the input is
70
+ // NULL.
71
+ //
72
+ // This is different from strdup() in string.h, which allocates
73
+ // memory using malloc().
74
+ static const char* CloneCString(const char* c_str);
75
+
76
+ #ifdef GTEST_OS_WINDOWS_MOBILE
77
+ // Windows CE does not have the 'ANSI' versions of Win32 APIs. To be
78
+ // able to pass strings to Win32 APIs on CE we need to convert them
79
+ // to 'Unicode', UTF-16.
80
+
81
+ // Creates a UTF-16 wide string from the given ANSI string, allocating
82
+ // memory using new. The caller is responsible for deleting the return
83
+ // value using delete[]. Returns the wide string, or NULL if the
84
+ // input is NULL.
85
+ //
86
+ // The wide string is created using the ANSI codepage (CP_ACP) to
87
+ // match the behaviour of the ANSI versions of Win32 calls and the
88
+ // C runtime.
89
+ static LPCWSTR AnsiToUtf16(const char* c_str);
90
+
91
+ // Creates an ANSI string from the given wide string, allocating
92
+ // memory using new. The caller is responsible for deleting the return
93
+ // value using delete[]. Returns the ANSI string, or NULL if the
94
+ // input is NULL.
95
+ //
96
+ // The returned string is created using the ANSI codepage (CP_ACP) to
97
+ // match the behaviour of the ANSI versions of Win32 calls and the
98
+ // C runtime.
99
+ static const char* Utf16ToAnsi(LPCWSTR utf16_str);
100
+ #endif
101
+
102
+ // Compares two C strings. Returns true if and only if they have the same
103
+ // content.
104
+ //
105
+ // Unlike strcmp(), this function can handle NULL argument(s). A
106
+ // NULL C string is considered different to any non-NULL C string,
107
+ // including the empty string.
108
+ static bool CStringEquals(const char* lhs, const char* rhs);
109
+
110
+ // Converts a wide C string to a String using the UTF-8 encoding.
111
+ // NULL will be converted to "(null)". If an error occurred during
112
+ // the conversion, "(failed to convert from wide string)" is
113
+ // returned.
114
+ static std::string ShowWideCString(const wchar_t* wide_c_str);
115
+
116
+ // Compares two wide C strings. Returns true if and only if they have the
117
+ // same content.
118
+ //
119
+ // Unlike wcscmp(), this function can handle NULL argument(s). A
120
+ // NULL C string is considered different to any non-NULL C string,
121
+ // including the empty string.
122
+ static bool WideCStringEquals(const wchar_t* lhs, const wchar_t* rhs);
123
+
124
+ // Compares two C strings, ignoring case. Returns true if and only if
125
+ // they have the same content.
126
+ //
127
+ // Unlike strcasecmp(), this function can handle NULL argument(s).
128
+ // A NULL C string is considered different to any non-NULL C string,
129
+ // including the empty string.
130
+ static bool CaseInsensitiveCStringEquals(const char* lhs, const char* rhs);
131
+
132
+ // Compares two wide C strings, ignoring case. Returns true if and only if
133
+ // they have the same content.
134
+ //
135
+ // Unlike wcscasecmp(), this function can handle NULL argument(s).
136
+ // A NULL C string is considered different to any non-NULL wide C string,
137
+ // including the empty string.
138
+ // NB: The implementations on different platforms slightly differ.
139
+ // On windows, this method uses _wcsicmp which compares according to LC_CTYPE
140
+ // environment variable. On GNU platform this method uses wcscasecmp
141
+ // which compares according to LC_CTYPE category of the current locale.
142
+ // On MacOS X, it uses towlower, which also uses LC_CTYPE category of the
143
+ // current locale.
144
+ static bool CaseInsensitiveWideCStringEquals(const wchar_t* lhs,
145
+ const wchar_t* rhs);
146
+
147
+ // Returns true if and only if the given string ends with the given suffix,
148
+ // ignoring case. Any string is considered to end with an empty suffix.
149
+ static bool EndsWithCaseInsensitive(const std::string& str,
150
+ const std::string& suffix);
151
+
152
+ // Formats an int value as "%02d".
153
+ static std::string FormatIntWidth2(int value); // "%02d" for width == 2
154
+
155
+ // Formats an int value to given width with leading zeros.
156
+ static std::string FormatIntWidthN(int value, int width);
157
+
158
+ // Formats an int value as "%X".
159
+ static std::string FormatHexInt(int value);
160
+
161
+ // Formats an int value as "%X".
162
+ static std::string FormatHexUInt32(uint32_t value);
163
+
164
+ // Formats a byte as "%02X".
165
+ static std::string FormatByte(unsigned char value);
166
+
167
+ private:
168
+ String(); // Not meant to be instantiated.
169
+ }; // class String
170
+
171
+ // Gets the content of the stringstream's buffer as an std::string. Each '\0'
172
+ // character in the buffer is replaced with "\\0".
173
+ GTEST_API_ std::string StringStreamToString(::std::stringstream* stream);
174
+
175
+ } // namespace internal
176
+ } // namespace testing
177
+
178
+ #endif // GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_STRING_H_
@@ -0,0 +1,220 @@
1
+ // Copyright 2008 Google Inc.
2
+ // All Rights Reserved.
3
+ //
4
+ // Redistribution and use in source and binary forms, with or without
5
+ // modification, are permitted provided that the following conditions are
6
+ // met:
7
+ //
8
+ // * Redistributions of source code must retain the above copyright
9
+ // notice, this list of conditions and the following disclaimer.
10
+ // * Redistributions in binary form must reproduce the above
11
+ // copyright notice, this list of conditions and the following disclaimer
12
+ // in the documentation and/or other materials provided with the
13
+ // distribution.
14
+ // * Neither the name of Google Inc. nor the names of its
15
+ // contributors may be used to endorse or promote products derived from
16
+ // this software without specific prior written permission.
17
+ //
18
+ // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
+ // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
+ // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
+ // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
+ // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
+ // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
+ // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
+ // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
+ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
+ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
+
30
+ // Type utilities needed for implementing typed and type-parameterized
31
+ // tests.
32
+
33
+ // IWYU pragma: private, include "gtest/gtest.h"
34
+ // IWYU pragma: friend gtest/.*
35
+ // IWYU pragma: friend gmock/.*
36
+
37
+ #ifndef GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_TYPE_UTIL_H_
38
+ #define GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_TYPE_UTIL_H_
39
+
40
+ #include <string>
41
+ #include <type_traits>
42
+ #include <typeinfo>
43
+
44
+ #include "gtest/internal/gtest-port.h"
45
+
46
+ // #ifdef __GNUC__ is too general here. It is possible to use gcc without using
47
+ // libstdc++ (which is where cxxabi.h comes from).
48
+ #if GTEST_HAS_CXXABI_H_
49
+ #include <cxxabi.h>
50
+ #elif defined(__HP_aCC)
51
+ #include <acxx_demangle.h>
52
+ #endif // GTEST_HASH_CXXABI_H_
53
+
54
+ namespace testing {
55
+ namespace internal {
56
+
57
+ // Canonicalizes a given name with respect to the Standard C++ Library.
58
+ // This handles removing the inline namespace within `std` that is
59
+ // used by various standard libraries (e.g., `std::__1`). Names outside
60
+ // of namespace std are returned unmodified.
61
+ inline std::string CanonicalizeForStdLibVersioning(std::string s) {
62
+ static const char prefix[] = "std::__";
63
+ if (s.compare(0, strlen(prefix), prefix) == 0) {
64
+ std::string::size_type end = s.find("::", strlen(prefix));
65
+ if (end != s.npos) {
66
+ // Erase everything between the initial `std` and the second `::`.
67
+ s.erase(strlen("std"), end - strlen("std"));
68
+ }
69
+ }
70
+
71
+ // Strip redundant spaces in typename to match MSVC
72
+ // For example, std::pair<int, bool> -> std::pair<int,bool>
73
+ static const char to_search[] = ", ";
74
+ static const char replace_str[] = ",";
75
+ size_t pos = 0;
76
+ while (true) {
77
+ // Get the next occurrence from the current position
78
+ pos = s.find(to_search, pos);
79
+ if (pos == std::string::npos) {
80
+ break;
81
+ }
82
+ // Replace this occurrence of substring
83
+ s.replace(pos, strlen(to_search), replace_str);
84
+ pos += strlen(replace_str);
85
+ }
86
+ return s;
87
+ }
88
+
89
+ #if GTEST_HAS_RTTI
90
+ // GetTypeName(const std::type_info&) returns a human-readable name of type T.
91
+ inline std::string GetTypeName(const std::type_info& type) {
92
+ const char* const name = type.name();
93
+ #if GTEST_HAS_CXXABI_H_ || defined(__HP_aCC)
94
+ int status = 0;
95
+ // gcc's implementation of typeid(T).name() mangles the type name,
96
+ // so we have to demangle it.
97
+ #if GTEST_HAS_CXXABI_H_
98
+ using abi::__cxa_demangle;
99
+ #endif // GTEST_HAS_CXXABI_H_
100
+ char* const readable_name = __cxa_demangle(name, nullptr, nullptr, &status);
101
+ const std::string name_str(status == 0 ? readable_name : name);
102
+ free(readable_name);
103
+ return CanonicalizeForStdLibVersioning(name_str);
104
+ #elif defined(_MSC_VER)
105
+ // Strip struct and class due to differences between
106
+ // MSVC and other compilers. std::pair<int,bool> is printed as
107
+ // "struct std::pair<int,bool>" when using MSVC vs "std::pair<int, bool>" with
108
+ // other compilers.
109
+ std::string s = name;
110
+ // Only strip the leading "struct " and "class ", so uses rfind == 0 to
111
+ // ensure that
112
+ if (s.rfind("struct ", 0) == 0) {
113
+ s = s.substr(strlen("struct "));
114
+ } else if (s.rfind("class ", 0) == 0) {
115
+ s = s.substr(strlen("class "));
116
+ }
117
+ return s;
118
+ #else
119
+ return name;
120
+ #endif // GTEST_HAS_CXXABI_H_ || __HP_aCC
121
+ }
122
+ #endif // GTEST_HAS_RTTI
123
+
124
+ // GetTypeName<T>() returns a human-readable name of type T if and only if
125
+ // RTTI is enabled, otherwise it returns a dummy type name.
126
+ // NB: This function is also used in Google Mock, so don't move it inside of
127
+ // the typed-test-only section below.
128
+ template <typename T>
129
+ std::string GetTypeName() {
130
+ #if GTEST_HAS_RTTI
131
+ return GetTypeName(typeid(T));
132
+ #else
133
+ return "<type>";
134
+ #endif // GTEST_HAS_RTTI
135
+ }
136
+
137
+ // A unique type indicating an empty node
138
+ struct None {};
139
+
140
+ #define GTEST_TEMPLATE_ \
141
+ template <typename T> \
142
+ class
143
+
144
+ // The template "selector" struct TemplateSel<Tmpl> is used to
145
+ // represent Tmpl, which must be a class template with one type
146
+ // parameter, as a type. TemplateSel<Tmpl>::Bind<T>::type is defined
147
+ // as the type Tmpl<T>. This allows us to actually instantiate the
148
+ // template "selected" by TemplateSel<Tmpl>.
149
+ //
150
+ // This trick is necessary for simulating typedef for class templates,
151
+ // which C++ doesn't support directly.
152
+ template <GTEST_TEMPLATE_ Tmpl>
153
+ struct TemplateSel {
154
+ template <typename T>
155
+ struct Bind {
156
+ typedef Tmpl<T> type;
157
+ };
158
+ };
159
+
160
+ #define GTEST_BIND_(TmplSel, T) TmplSel::template Bind<T>::type
161
+
162
+ template <GTEST_TEMPLATE_ Head_, GTEST_TEMPLATE_... Tail_>
163
+ struct Templates {
164
+ using Head = TemplateSel<Head_>;
165
+ using Tail = Templates<Tail_...>;
166
+ };
167
+
168
+ template <GTEST_TEMPLATE_ Head_>
169
+ struct Templates<Head_> {
170
+ using Head = TemplateSel<Head_>;
171
+ using Tail = None;
172
+ };
173
+
174
+ // Tuple-like type lists
175
+ template <typename Head_, typename... Tail_>
176
+ struct Types {
177
+ using Head = Head_;
178
+ using Tail = Types<Tail_...>;
179
+ };
180
+
181
+ template <typename Head_>
182
+ struct Types<Head_> {
183
+ using Head = Head_;
184
+ using Tail = None;
185
+ };
186
+
187
+ // Helper metafunctions to tell apart a single type from types
188
+ // generated by ::testing::Types
189
+ template <typename... Ts>
190
+ struct ProxyTypeList {
191
+ using type = Types<Ts...>;
192
+ };
193
+
194
+ template <typename>
195
+ struct is_proxy_type_list : std::false_type {};
196
+
197
+ template <typename... Ts>
198
+ struct is_proxy_type_list<ProxyTypeList<Ts...>> : std::true_type {};
199
+
200
+ // Generator which conditionally creates type lists.
201
+ // It recognizes if a requested type list should be created
202
+ // and prevents creating a new type list nested within another one.
203
+ template <typename T>
204
+ struct GenerateTypeList {
205
+ private:
206
+ using proxy = typename std::conditional<is_proxy_type_list<T>::value, T,
207
+ ProxyTypeList<T>>::type;
208
+
209
+ public:
210
+ using type = typename proxy::type;
211
+ };
212
+
213
+ } // namespace internal
214
+
215
+ template <typename... Ts>
216
+ using Types = internal::ProxyTypeList<Ts...>;
217
+
218
+ } // namespace testing
219
+
220
+ #endif // GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_TYPE_UTIL_H_
lib/libetb_core.a ADDED
Binary file
@@ -0,0 +1,33 @@
1
+
2
+ ####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() #######
3
+ ####### Any changes to this file will be overwritten by the next CMake run ####
4
+ ####### The input file was Config.cmake.in ########
5
+
6
+ get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE)
7
+
8
+ macro(set_and_check _var _file)
9
+ set(${_var} "${_file}")
10
+ if(NOT EXISTS "${_file}")
11
+ message(FATAL_ERROR "File or directory ${_file} referenced by variable ${_var} does not exist !")
12
+ endif()
13
+ endmacro()
14
+
15
+ macro(check_required_components _NAME)
16
+ foreach(comp ${${_NAME}_FIND_COMPONENTS})
17
+ if(NOT ${_NAME}_${comp}_FOUND)
18
+ if(${_NAME}_FIND_REQUIRED_${comp})
19
+ set(${_NAME}_FOUND FALSE)
20
+ endif()
21
+ endif()
22
+ endforeach()
23
+ endmacro()
24
+
25
+ ####################################################################################
26
+ include(CMakeFindDependencyMacro)
27
+ if (ON)
28
+ set(THREADS_PREFER_PTHREAD_FLAG )
29
+ find_dependency(Threads)
30
+ endif()
31
+
32
+ include("${CMAKE_CURRENT_LIST_DIR}/GTestTargets.cmake")
33
+ check_required_components("")
@@ -0,0 +1,43 @@
1
+ # This is a basic version file for the Config-mode of find_package().
2
+ # It is used by write_basic_package_version_file() as input file for configure_file()
3
+ # to create a version-file which can be installed along a config.cmake file.
4
+ #
5
+ # The created file sets PACKAGE_VERSION_EXACT if the current version string and
6
+ # the requested version string are exactly the same and it sets
7
+ # PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version.
8
+ # The variable CVF_VERSION must be set before calling configure_file().
9
+
10
+ set(PACKAGE_VERSION "1.14.0")
11
+
12
+ if (PACKAGE_FIND_VERSION_RANGE)
13
+ # Package version must be in the requested version range
14
+ if ((PACKAGE_FIND_VERSION_RANGE_MIN STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION_MIN)
15
+ OR ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_GREATER PACKAGE_FIND_VERSION_MAX)
16
+ OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND PACKAGE_VERSION VERSION_GREATER_EQUAL PACKAGE_FIND_VERSION_MAX)))
17
+ set(PACKAGE_VERSION_COMPATIBLE FALSE)
18
+ else()
19
+ set(PACKAGE_VERSION_COMPATIBLE TRUE)
20
+ endif()
21
+ else()
22
+ if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
23
+ set(PACKAGE_VERSION_COMPATIBLE FALSE)
24
+ else()
25
+ set(PACKAGE_VERSION_COMPATIBLE TRUE)
26
+ if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)
27
+ set(PACKAGE_VERSION_EXACT TRUE)
28
+ endif()
29
+ endif()
30
+ endif()
31
+
32
+
33
+ # if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
34
+ if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "8" STREQUAL "")
35
+ return()
36
+ endif()
37
+
38
+ # check that the installed version has the same 32/64bit-ness as the one which is currently searching:
39
+ if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "8")
40
+ math(EXPR installedBits "8 * 8")
41
+ set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
42
+ set(PACKAGE_VERSION_UNSUITABLE TRUE)
43
+ endif()
@@ -0,0 +1,49 @@
1
+ #----------------------------------------------------------------
2
+ # Generated CMake target import file for configuration "Release".
3
+ #----------------------------------------------------------------
4
+
5
+ # Commands may need to know the format version.
6
+ set(CMAKE_IMPORT_FILE_VERSION 1)
7
+
8
+ # Import target "GTest::gtest" for configuration "Release"
9
+ set_property(TARGET GTest::gtest APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
10
+ set_target_properties(GTest::gtest PROPERTIES
11
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
12
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libgtest.a"
13
+ )
14
+
15
+ list(APPEND _cmake_import_check_targets GTest::gtest )
16
+ list(APPEND _cmake_import_check_files_for_GTest::gtest "${_IMPORT_PREFIX}/lib64/libgtest.a" )
17
+
18
+ # Import target "GTest::gtest_main" for configuration "Release"
19
+ set_property(TARGET GTest::gtest_main APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
20
+ set_target_properties(GTest::gtest_main PROPERTIES
21
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
22
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libgtest_main.a"
23
+ )
24
+
25
+ list(APPEND _cmake_import_check_targets GTest::gtest_main )
26
+ list(APPEND _cmake_import_check_files_for_GTest::gtest_main "${_IMPORT_PREFIX}/lib64/libgtest_main.a" )
27
+
28
+ # Import target "GTest::gmock" for configuration "Release"
29
+ set_property(TARGET GTest::gmock APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
30
+ set_target_properties(GTest::gmock PROPERTIES
31
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
32
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libgmock.a"
33
+ )
34
+
35
+ list(APPEND _cmake_import_check_targets GTest::gmock )
36
+ list(APPEND _cmake_import_check_files_for_GTest::gmock "${_IMPORT_PREFIX}/lib64/libgmock.a" )
37
+
38
+ # Import target "GTest::gmock_main" for configuration "Release"
39
+ set_property(TARGET GTest::gmock_main APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
40
+ set_target_properties(GTest::gmock_main PROPERTIES
41
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
42
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libgmock_main.a"
43
+ )
44
+
45
+ list(APPEND _cmake_import_check_targets GTest::gmock_main )
46
+ list(APPEND _cmake_import_check_files_for_GTest::gmock_main "${_IMPORT_PREFIX}/lib64/libgmock_main.a" )
47
+
48
+ # Commands beyond this point should not need to know the version.
49
+ set(CMAKE_IMPORT_FILE_VERSION)
@@ -0,0 +1,139 @@
1
+ # Generated by CMake
2
+
3
+ if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
4
+ message(FATAL_ERROR "CMake >= 2.8.12 required")
5
+ endif()
6
+ if(CMAKE_VERSION VERSION_LESS "2.8.12")
7
+ message(FATAL_ERROR "CMake >= 2.8.12 required")
8
+ endif()
9
+ cmake_policy(PUSH)
10
+ cmake_policy(VERSION 2.8.12...4.0)
11
+ #----------------------------------------------------------------
12
+ # Generated CMake target import file.
13
+ #----------------------------------------------------------------
14
+
15
+ # Commands may need to know the format version.
16
+ set(CMAKE_IMPORT_FILE_VERSION 1)
17
+
18
+ # Protect against multiple inclusion, which would fail when already imported targets are added once more.
19
+ set(_cmake_targets_defined "")
20
+ set(_cmake_targets_not_defined "")
21
+ set(_cmake_expected_targets "")
22
+ foreach(_cmake_expected_target IN ITEMS GTest::gtest GTest::gtest_main GTest::gmock GTest::gmock_main)
23
+ list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
24
+ if(TARGET "${_cmake_expected_target}")
25
+ list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
26
+ else()
27
+ list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
28
+ endif()
29
+ endforeach()
30
+ unset(_cmake_expected_target)
31
+ if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
32
+ unset(_cmake_targets_defined)
33
+ unset(_cmake_targets_not_defined)
34
+ unset(_cmake_expected_targets)
35
+ unset(CMAKE_IMPORT_FILE_VERSION)
36
+ cmake_policy(POP)
37
+ return()
38
+ endif()
39
+ if(NOT _cmake_targets_defined STREQUAL "")
40
+ string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
41
+ string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
42
+ message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
43
+ endif()
44
+ unset(_cmake_targets_defined)
45
+ unset(_cmake_targets_not_defined)
46
+ unset(_cmake_expected_targets)
47
+
48
+
49
+ # Compute the installation prefix relative to this file.
50
+ get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
51
+ get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
52
+ get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
53
+ get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
54
+ if(_IMPORT_PREFIX STREQUAL "/")
55
+ set(_IMPORT_PREFIX "")
56
+ endif()
57
+
58
+ # Create imported target GTest::gtest
59
+ add_library(GTest::gtest STATIC IMPORTED)
60
+
61
+ set_target_properties(GTest::gtest PROPERTIES
62
+ INTERFACE_COMPILE_FEATURES "cxx_std_14"
63
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
64
+ INTERFACE_LINK_LIBRARIES "Threads::Threads"
65
+ INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
66
+ )
67
+
68
+ # Create imported target GTest::gtest_main
69
+ add_library(GTest::gtest_main STATIC IMPORTED)
70
+
71
+ set_target_properties(GTest::gtest_main PROPERTIES
72
+ INTERFACE_COMPILE_FEATURES "cxx_std_14"
73
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
74
+ INTERFACE_LINK_LIBRARIES "Threads::Threads;GTest::gtest"
75
+ INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
76
+ )
77
+
78
+ # Create imported target GTest::gmock
79
+ add_library(GTest::gmock STATIC IMPORTED)
80
+
81
+ set_target_properties(GTest::gmock PROPERTIES
82
+ INTERFACE_COMPILE_FEATURES "cxx_std_14"
83
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
84
+ INTERFACE_LINK_LIBRARIES "Threads::Threads;GTest::gtest"
85
+ INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
86
+ )
87
+
88
+ # Create imported target GTest::gmock_main
89
+ add_library(GTest::gmock_main STATIC IMPORTED)
90
+
91
+ set_target_properties(GTest::gmock_main PROPERTIES
92
+ INTERFACE_COMPILE_FEATURES "cxx_std_14"
93
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
94
+ INTERFACE_LINK_LIBRARIES "Threads::Threads;GTest::gmock"
95
+ INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
96
+ )
97
+
98
+ # Load information for each installed configuration.
99
+ file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/GTestTargets-*.cmake")
100
+ foreach(_cmake_config_file IN LISTS _cmake_config_files)
101
+ include("${_cmake_config_file}")
102
+ endforeach()
103
+ unset(_cmake_config_file)
104
+ unset(_cmake_config_files)
105
+
106
+ # Cleanup temporary variables.
107
+ set(_IMPORT_PREFIX)
108
+
109
+ # Loop over all imported files and verify that they actually exist
110
+ foreach(_cmake_target IN LISTS _cmake_import_check_targets)
111
+ if(CMAKE_VERSION VERSION_LESS "3.28"
112
+ OR NOT DEFINED _cmake_import_check_xcframework_for_${_cmake_target}
113
+ OR NOT IS_DIRECTORY "${_cmake_import_check_xcframework_for_${_cmake_target}}")
114
+ foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
115
+ if(NOT EXISTS "${_cmake_file}")
116
+ message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
117
+ \"${_cmake_file}\"
118
+ but this file does not exist. Possible reasons include:
119
+ * The file was deleted, renamed, or moved to another location.
120
+ * An install or uninstall procedure did not complete successfully.
121
+ * The installation package was faulty and contained
122
+ \"${CMAKE_CURRENT_LIST_FILE}\"
123
+ but not all the files it references.
124
+ ")
125
+ endif()
126
+ endforeach()
127
+ endif()
128
+ unset(_cmake_file)
129
+ unset("_cmake_import_check_files_for_${_cmake_target}")
130
+ endforeach()
131
+ unset(_cmake_target)
132
+ unset(_cmake_import_check_targets)
133
+
134
+ # This file does not depend on other imported targets which have
135
+ # been exported from the same project but in a separate export set.
136
+
137
+ # Commands beyond this point should not need to know the version.
138
+ set(CMAKE_IMPORT_FILE_VERSION)
139
+ cmake_policy(POP)
lib64/libgmock.a ADDED
Binary file
lib64/libgmock_main.a ADDED
Binary file
lib64/libgtest.a ADDED
Binary file
lib64/libgtest_main.a ADDED
Binary file