quasardb 3.14.2.dev0__cp311-cp311-macosx_11_0_arm64.whl → 3.14.2.dev4__cp311-cp311-macosx_11_0_arm64.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.

Potentially problematic release.


This version of quasardb might be problematic. Click here for more details.

Files changed (95) hide show
  1. quasardb/CMakeFiles/CMakeDirectoryInformation.cmake +1 -1
  2. quasardb/Makefile +20 -20
  3. quasardb/__init__.py +33 -4
  4. quasardb/cmake_install.cmake +7 -1
  5. quasardb/date/CMakeFiles/CMakeDirectoryInformation.cmake +1 -1
  6. quasardb/date/CMakeFiles/Export/a52b05f964b070ee926bcad51d3288af/dateTargets.cmake +13 -13
  7. quasardb/date/Makefile +20 -20
  8. quasardb/date/cmake_install.cmake +7 -1
  9. quasardb/date/dateConfigVersion.cmake +9 -2
  10. quasardb/date/dateTargets.cmake +4 -8
  11. quasardb/libqdb_api.dylib +0 -0
  12. quasardb/numpy/__init__.py +58 -10
  13. quasardb/pandas/__init__.py +58 -102
  14. quasardb/pybind11/CMakeFiles/CMakeDirectoryInformation.cmake +1 -1
  15. quasardb/pybind11/Makefile +20 -20
  16. quasardb/pybind11/cmake_install.cmake +7 -1
  17. quasardb/quasardb.cpython-311-darwin.so +0 -0
  18. quasardb/range-v3/CMakeFiles/CMakeDirectoryInformation.cmake +1 -1
  19. quasardb/range-v3/CMakeFiles/Export/d94ef200eca10a819b5858b33e808f5b/range-v3-targets.cmake +13 -13
  20. quasardb/range-v3/CMakeFiles/range.v3.headers.dir/DependInfo.cmake +6 -2
  21. quasardb/range-v3/CMakeFiles/range.v3.headers.dir/build.make +7 -4
  22. quasardb/range-v3/Makefile +20 -20
  23. quasardb/range-v3/cmake_install.cmake +19 -1
  24. quasardb/range-v3/range-v3-config-version.cmake +9 -2
  25. quasardb/range-v3/range-v3-config.cmake +4 -8
  26. {quasardb-3.14.2.dev0.dist-info → quasardb-3.14.2.dev4.dist-info}/METADATA +15 -10
  27. quasardb-3.14.2.dev4.dist-info/RECORD +45 -0
  28. {quasardb-3.14.2.dev0.dist-info → quasardb-3.14.2.dev4.dist-info}/WHEEL +1 -1
  29. quasardb/CMakeLists.txt +0 -500
  30. quasardb/batch_column.hpp +0 -80
  31. quasardb/batch_inserter.hpp +0 -248
  32. quasardb/blob.hpp +0 -150
  33. quasardb/cluster.cpp +0 -89
  34. quasardb/cluster.hpp +0 -551
  35. quasardb/concepts.hpp +0 -278
  36. quasardb/continuous.cpp +0 -149
  37. quasardb/continuous.hpp +0 -106
  38. quasardb/convert/array.hpp +0 -282
  39. quasardb/convert/point.hpp +0 -330
  40. quasardb/convert/range.hpp +0 -282
  41. quasardb/convert/unicode.hpp +0 -598
  42. quasardb/convert/util.hpp +0 -22
  43. quasardb/convert/value.hpp +0 -711
  44. quasardb/convert.hpp +0 -38
  45. quasardb/detail/qdb_resource.hpp +0 -129
  46. quasardb/detail/ts_column.hpp +0 -224
  47. quasardb/direct_blob.hpp +0 -108
  48. quasardb/direct_handle.hpp +0 -83
  49. quasardb/direct_integer.hpp +0 -94
  50. quasardb/dispatch.hpp +0 -157
  51. quasardb/double.hpp +0 -87
  52. quasardb/entry.hpp +0 -273
  53. quasardb/error.hpp +0 -318
  54. quasardb/handle.cpp +0 -29
  55. quasardb/handle.hpp +0 -98
  56. quasardb/integer.hpp +0 -88
  57. quasardb/logger.cpp +0 -106
  58. quasardb/logger.hpp +0 -228
  59. quasardb/masked_array.hpp +0 -651
  60. quasardb/metrics.cpp +0 -103
  61. quasardb/metrics.hpp +0 -112
  62. quasardb/module.cpp +0 -76
  63. quasardb/module.hpp +0 -24
  64. quasardb/node.hpp +0 -123
  65. quasardb/numpy.cpp +0 -6
  66. quasardb/numpy.hpp +0 -489
  67. quasardb/object_tracker.hpp +0 -283
  68. quasardb/options.hpp +0 -244
  69. quasardb/perf.hpp +0 -336
  70. quasardb/pytypes.hpp +0 -221
  71. quasardb/query.cpp +0 -420
  72. quasardb/query.hpp +0 -92
  73. quasardb/reader/ts_row.hpp +0 -281
  74. quasardb/reader/ts_value.hpp +0 -245
  75. quasardb/remove_cvref.hpp +0 -31
  76. quasardb/string.hpp +0 -160
  77. quasardb/table.cpp +0 -289
  78. quasardb/table.hpp +0 -325
  79. quasardb/table_reader.hpp +0 -220
  80. quasardb/tag.hpp +0 -77
  81. quasardb/timestamp.hpp +0 -97
  82. quasardb/traits.hpp +0 -619
  83. quasardb/ts_iterator.hpp +0 -193
  84. quasardb/utils/blob_deque.hpp +0 -96
  85. quasardb/utils/ostream.hpp +0 -17
  86. quasardb/utils/permutation.hpp +0 -50
  87. quasardb/utils/stable_sort.hpp +0 -25
  88. quasardb/utils/unzip_view.hpp +0 -89
  89. quasardb/utils.cpp +0 -28
  90. quasardb/utils.hpp +0 -174
  91. quasardb/writer.cpp +0 -534
  92. quasardb/writer.hpp +0 -396
  93. quasardb-3.14.2.dev0.dist-info/RECORD +0 -109
  94. {quasardb-3.14.2.dev0.dist-info → quasardb-3.14.2.dev4.dist-info}/LICENSE.md +0 -0
  95. {quasardb-3.14.2.dev0.dist-info → quasardb-3.14.2.dev4.dist-info}/top_level.txt +0 -0
@@ -1,13 +1,13 @@
1
1
  # Generated by CMake
2
2
 
3
3
  if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
4
- message(FATAL_ERROR "CMake >= 2.8.0 required")
4
+ message(FATAL_ERROR "CMake >= 3.0.0 required")
5
5
  endif()
6
- if(CMAKE_VERSION VERSION_LESS "2.8.3")
7
- message(FATAL_ERROR "CMake >= 2.8.3 required")
6
+ if(CMAKE_VERSION VERSION_LESS "3.0.0")
7
+ message(FATAL_ERROR "CMake >= 3.0.0 required")
8
8
  endif()
9
9
  cmake_policy(PUSH)
10
- cmake_policy(VERSION 2.8.3...3.22)
10
+ cmake_policy(VERSION 3.0.0...3.29)
11
11
  #----------------------------------------------------------------
12
12
  # Generated CMake target import file.
13
13
  #----------------------------------------------------------------
@@ -15,10 +15,6 @@ cmake_policy(VERSION 2.8.3...3.22)
15
15
  # Commands may need to know the format version.
16
16
  set(CMAKE_IMPORT_FILE_VERSION 1)
17
17
 
18
- if(CMAKE_VERSION VERSION_LESS 3.0.0)
19
- message(FATAL_ERROR "This file relies on consumers using CMake 3.0.0 or greater.")
20
- endif()
21
-
22
18
  # Protect against multiple inclusion, which would fail when already imported targets are added once more.
23
19
  set(_cmake_targets_defined "")
24
20
  set(_cmake_targets_not_defined "")
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: quasardb
3
- Version: 3.14.2.dev0
3
+ Version: 3.14.2.dev4
4
4
  Summary: Python API for quasardb
5
5
  Home-page: https://www.quasardb.net/
6
6
  Author: quasardb SAS
@@ -14,22 +14,27 @@ Classifier: Intended Audience :: Information Technology
14
14
  Classifier: Intended Audience :: Other Audience
15
15
  Classifier: Intended Audience :: System Administrators
16
16
  Classifier: Intended Audience :: Telecommunications Industry
17
- Classifier: Programming Language :: Python :: 3.6
18
17
  Classifier: Programming Language :: Python :: 3.7
19
18
  Classifier: Programming Language :: Python :: 3.8
20
19
  Classifier: Programming Language :: Python :: 3.9
21
20
  Classifier: Programming Language :: Python :: 3.10
22
21
  Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
23
  Classifier: Topic :: Database
24
24
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
25
25
  Classifier: License :: OSI Approved :: BSD License
26
26
  License-File: LICENSE.md
27
27
  Requires-Dist: numpy
28
28
  Provides-Extra: pandas
29
- Requires-Dist: pandas ; extra == 'pandas'
30
- Provides-Extra: tests
31
- Requires-Dist: pytest (>=6.2.5) ; extra == 'tests'
32
- Requires-Dist: pytest-runner (>=5.3.1) ; extra == 'tests'
33
- Requires-Dist: pytest-benchmark (==3.4.1) ; extra == 'tests'
34
- Requires-Dist: teamcity-messages (>=1.29) ; extra == 'tests'
35
-
29
+ Requires-Dist: pandas; extra == "pandas"
30
+ Provides-Extra: test
31
+ Requires-Dist: pytest; extra == "test"
32
+ Dynamic: author
33
+ Dynamic: author-email
34
+ Dynamic: classifier
35
+ Dynamic: home-page
36
+ Dynamic: keywords
37
+ Dynamic: license
38
+ Dynamic: provides-extra
39
+ Dynamic: requires-dist
40
+ Dynamic: summary
@@ -0,0 +1,45 @@
1
+ quasardb/Makefile,sha256=oP0j24MZzoGlPkFwkKmI4Om2aUEb7_kOPVFWYkTAFzQ,8317
2
+ quasardb/__init__.py,sha256=bUq3IUkC13rfB4SIGIScDevSJ1jwB3oJbuBZVPfKt1Q,4547
3
+ quasardb/cmake_install.cmake,sha256=1eQ_-X3IIcaewCISVEH2YoHt51NsGzuvC0enBpIEtaw,1999
4
+ quasardb/firehose.py,sha256=HO0GjCDg3x4cpzVSH3KZ1AJhV8lK2HJyXr9tpfnNSGI,3492
5
+ quasardb/libqdb_api.dylib,sha256=L0jBOELjHYuWSeM0Y_wT3NM14E2ATY1MYz1LEpZ445c,35708768
6
+ quasardb/pool.py,sha256=4IFwot-U8GEHo8h86264uVTWge44bOH_TUkoVy3Hjac,8449
7
+ quasardb/quasardb.cpython-311-darwin.so,sha256=BEBvMzJVGZ7yF09ZPRw0Gl7jTecqSiqoZ8AaKQ85u5o,917168
8
+ quasardb/stats.py,sha256=DKvurzur-4c5nVPjr29_Stu9mvwCynM5gGnw0gVQlt8,7387
9
+ quasardb/table_cache.py,sha256=RgLOYEcgmlc5fVeOBOyjZImtYKoM1UEdzyzPc8EriQI,1507
10
+ quasardb/CMakeFiles/CMakeDirectoryInformation.cmake,sha256=4uv-mw5JuGJlPRH640ZqzCL9U4MBJmXZMhGoYy8qm1M,732
11
+ quasardb/CMakeFiles/progress.marks,sha256=micfKpFrC27mzsskJvCzIG7wdFeL5V2byU9vP-Orhqo,2
12
+ quasardb/date/Makefile,sha256=NYzi9GFn4ODFzdC0VTHRQgl4ocIYGSAuwopLOdqoZoA,8342
13
+ quasardb/date/cmake_install.cmake,sha256=-QKKXA9_uXR7TdiFZRNF-E6xsz_FA_r1JDL0nF44zzE,3580
14
+ quasardb/date/dateConfigVersion.cmake,sha256=rL5Cp_r_23Yu8HmjowwKIH04sxxMwdBZ7no3tr4cx14,2762
15
+ quasardb/date/dateTargets.cmake,sha256=UTTH7zSPDb_tkscV25dahdEEX0Bw_t2SozDUBKy7mHI,2869
16
+ quasardb/date/CMakeFiles/CMakeDirectoryInformation.cmake,sha256=4uv-mw5JuGJlPRH640ZqzCL9U4MBJmXZMhGoYy8qm1M,732
17
+ quasardb/date/CMakeFiles/progress.marks,sha256=micfKpFrC27mzsskJvCzIG7wdFeL5V2byU9vP-Orhqo,2
18
+ quasardb/date/CMakeFiles/Export/a52b05f964b070ee926bcad51d3288af/dateTargets.cmake,sha256=rWNkRmrNRa8_x5hIZdFw8rJ_aLoigP5fUoRmXaKSyys,4211
19
+ quasardb/extensions/__init__.py,sha256=FUHR0i62qt5NkOXn7eiMZrzWXo9mQNr1xVz3VSCa9QU,112
20
+ quasardb/extensions/writer.py,sha256=ZH6ldQrbH-DimuQTyk3mXS1OyaJIhvCmZTzFtG4hRfY,5735
21
+ quasardb/numpy/__init__.py,sha256=F1gVvEH1ijnm-mG9nd1Co3bNwgO2Y_2RmsmWu3yCsYk,30050
22
+ quasardb/pandas/__init__.py,sha256=DkEPAgxIZNinOfFaQ2xMrLiAYdJn7I618HUUQUnvPYo,14884
23
+ quasardb/pybind11/Makefile,sha256=kVeN5ucCmHjKq6mouILX9Rg6zmt5YvMWTxikLah52vM,8362
24
+ quasardb/pybind11/cmake_install.cmake,sha256=fyUA5cx1zmNdhxXCZWvLNpu4LqNSmlXdC0R8BGk-HaU,1504
25
+ quasardb/pybind11/CMakeFiles/CMakeDirectoryInformation.cmake,sha256=4uv-mw5JuGJlPRH640ZqzCL9U4MBJmXZMhGoYy8qm1M,732
26
+ quasardb/pybind11/CMakeFiles/progress.marks,sha256=micfKpFrC27mzsskJvCzIG7wdFeL5V2byU9vP-Orhqo,2
27
+ quasardb/range-v3/Makefile,sha256=gmxOhtNgeZCsZwS0RMau1o2EieG7xE93A7bE_eUf4Ak,9731
28
+ quasardb/range-v3/cmake_install.cmake,sha256=jkf_Vb0LvJZ9ZH36VsbM4XXuqxRPyxK64e599WzaFII,4550
29
+ quasardb/range-v3/range-v3-config-version.cmake,sha256=xGi8nCg5dIl5VmCOtTEVVa-dwABxKxLEd1Mx-bUvLLM,3249
30
+ quasardb/range-v3/range-v3-config.cmake,sha256=iiZBJD9yisikJNYDR84f3siZY7xRddr6z48_0R5jj7c,3423
31
+ quasardb/range-v3/CMakeFiles/CMakeDirectoryInformation.cmake,sha256=4uv-mw5JuGJlPRH640ZqzCL9U4MBJmXZMhGoYy8qm1M,732
32
+ quasardb/range-v3/CMakeFiles/progress.marks,sha256=micfKpFrC27mzsskJvCzIG7wdFeL5V2byU9vP-Orhqo,2
33
+ quasardb/range-v3/CMakeFiles/Export/d94ef200eca10a819b5858b33e808f5b/range-v3-targets.cmake,sha256=V-vcw4htrvk0Sf8A5IKO2_meFGd26tUGbt-Y2R8kZk4,5265
34
+ quasardb/range-v3/CMakeFiles/range.v3.headers.dir/DependInfo.cmake,sha256=ssojOAtcndfwexIOMvsRoVek3vdNgBmUVZscjIj5L1U,585
35
+ quasardb/range-v3/CMakeFiles/range.v3.headers.dir/build.make,sha256=YtjtRK5LC7Vo7UX7STnb2CoKevHEteBS7vQMLolgDFE,4459
36
+ quasardb/range-v3/CMakeFiles/range.v3.headers.dir/cmake_clean.cmake,sha256=3b0pZoiofoRzAiY1l7OLw203ZXp-mm1FUlQHob6i7aU,160
37
+ quasardb/range-v3/CMakeFiles/range.v3.headers.dir/compiler_depend.make,sha256=Oge9eptzOB-hllw_Tye4o5wiXsIsdq1xm1GGCe0oGFM,126
38
+ quasardb/range-v3/CMakeFiles/range.v3.headers.dir/compiler_depend.ts,sha256=orKrKpvHulgFBjBgzdeRvCpv0fV7cTffTdaHNqijFJg,120
39
+ quasardb/range-v3/CMakeFiles/range.v3.headers.dir/progress.make,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
40
+ quasardb/range-v3/include/range/v3/version.hpp,sha256=d-ToEdR3GnC_p_0RAeS77xL-SVx6EKHgTlWJ9PUQlSQ,586
41
+ quasardb-3.14.2.dev4.dist-info/LICENSE.md,sha256=_drOadIrIX8mzUZcnTJBTpUQih5gwdRAGK8ZKanYD6k,1467
42
+ quasardb-3.14.2.dev4.dist-info/METADATA,sha256=MOul9ySjqlzlJStiyMrcGCemCXzKkhvA_k74bztHBQ8,1443
43
+ quasardb-3.14.2.dev4.dist-info/WHEEL,sha256=NW1RskY9zow1Y68W-gXg0oZyBRAugI1JHywIzAIai5o,109
44
+ quasardb-3.14.2.dev4.dist-info/top_level.txt,sha256=wlprix4hCywuF1PkgKWYdZeJKq_kgJOqkAvukm_sZQ8,9
45
+ quasardb-3.14.2.dev4.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.38.4)
2
+ Generator: setuptools (75.8.0)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp311-cp311-macosx_11_0_arm64
5
5
 
quasardb/CMakeLists.txt DELETED
@@ -1,500 +0,0 @@
1
- cmake_minimum_required(VERSION 3.9.4)
2
- project(quasardb)
3
- set(CMAKE_EXPORT_COMPILE_COMMANDS TRUE)
4
- set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
5
- set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0")
6
- set(CMAKE_VERBOSE_MAKEFILE FALSE)
7
-
8
- include(CheckIPOSupported)
9
-
10
- option(QDB_LINK_STATIC_LIB "Link qdb_api_static instead of dynamic qdb_api." OFF)
11
- option(QDB_TESTS_ENABLED "Build quasardb test suite?" OFF)
12
-
13
- set(PACKAGE_NAME quasardb)
14
-
15
- if("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "arm"
16
- OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "aarch64"
17
- OR "${CMAKE_SYSTEM_PROCESSOR}" MATCHES "cortex"
18
- OR CMAKE_GENERATOR MATCHES "ARM"
19
- OR CMAKE_GENERATOR_PLATFORM MATCHES "ARM")
20
- set(QDB_CPU_IS_ARM ON)
21
- elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86"
22
- OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64"
23
- OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "i686"
24
- OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "AMD64"
25
- OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "amd64")
26
- set(QDB_CPU_IS_X86 ON)
27
- else()
28
- message(FATAL_ERROR "Unknown CMAKE_SYSTEM_PROCESSOR = ${CMAKE_SYSTEM_PROCESSOR}")
29
- endif()
30
-
31
- ###
32
- #
33
- # Discover QuasarDB api location, set QDB_API_DIR accordingly.
34
- #
35
- ###
36
-
37
- set(QDB_API_NAME qdb_api)
38
-
39
- message(STATUS "[qdb-api-python] Using qdb api name ${QDB_API_NAME}")
40
-
41
- if(DEFINED ENV{QDB_API_PATH})
42
- message(STATUS "[qdb-api-python] Getting qdb API from environment variable QDB_API_PATH: $ENV{QDB_API_PATH}")
43
- set(QDB_API_DIR $ENV{QDB_API_PATH})
44
- else()
45
- set(QDB_API_DIR "${CMAKE_SOURCE_DIR}/../qdb")
46
- endif()
47
-
48
- find_library(
49
- QDB_API_LIB
50
- NAMES ${QDB_API_NAME}
51
- PATHS ${QDB_API_DIR}/lib
52
- NO_DEFAULT_PATH)
53
-
54
- if(QDB_API_LIB)
55
- if(NOT IS_DIRECTORY "${QDB_API_DIR}/include")
56
- message(FATAL_ERROR "[qdb-api-python] Please unzip qdb c-api into ${QDB_API_DIR}")
57
- endif()
58
- include_directories(SYSTEM ${QDB_API_DIR}/include)
59
- else()
60
- find_library(QDB_API_LIB NAMES ${QDB_API_NAME})
61
- endif()
62
-
63
- message(STATUS "[qdb-api-python] Resolved QDB API library location: ${QDB_API_LIB}")
64
-
65
- if(NOT QDB_API_LIB)
66
- message(
67
- FATAL_ERROR
68
- "\n\
69
- ************************************************************************** \n\
70
- \n\
71
- Unable to locate QuasarDB library: please install the QuasarDB API library. \n\
72
- \n\
73
- For more information, please consult the manual: \n\
74
- https://doc.quasardb.net/master/api/c.html. \n\
75
- \n\
76
- **************************************************************************"
77
- )
78
- endif()
79
-
80
-
81
-
82
-
83
-
84
- ###
85
- #
86
- # High-level compiler/OS-independent cmake options
87
- #
88
- ###
89
-
90
- set(CMAKE_CXX_STANDARD 20)
91
- set(CMAKE_CXX_STANDARD_REQUIRED ON)
92
-
93
-
94
- ###
95
- #
96
- # Probe compiler/OS
97
- #
98
- ###
99
-
100
- if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
101
- message(STATUS "[qdb-api-python] Detected: clang compiler")
102
- set(CLANG TRUE)
103
- elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
104
- message(STATUS "[qdb-api-python] Detected: gcc")
105
- set(GNU TRUE)
106
- elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
107
- message(STATUS "[qdb-api-python] Detected: msvc")
108
- set(MSVC TRUE)
109
- set(WINDOWS TRUE)
110
-
111
- if(CMAKE_SIZEOF_VOID_P EQUAL 8)
112
- message(STATUS "[qdb-api-python] Detected: win64")
113
- set(WIN64 TRUE)
114
- elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
115
- message(STATUS "[qdb-api-python] Detected: win32")
116
- set(WIN32 TRUE)
117
- endif()
118
- endif()
119
-
120
- if (CMAKE_HOST_APPLE)
121
- message(STATUS "[qdb-api-python] Detected: apple host")
122
- set(APPLE TRUE)
123
- elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
124
- message(STATUS "[qdb-api-python] Detected: freebsd")
125
- set(FREEEBSD TRUE)
126
- elseif(CMAKE_SYSTEM_NAME MATCHES "Linux")
127
- message(STATUS "[qdb-api-python] Detected: linux")
128
- set(LINUX TRUE)
129
- endif()
130
-
131
-
132
- ###
133
- #
134
- # Compile options based on compiler/OS
135
- #
136
- ###
137
-
138
- if(CLANG OR GNU)
139
- if(CLANG AND NOT APPLE)
140
- # Clang + Ninja eats colors
141
- add_compile_options(
142
- -fdiagnostics-color=always
143
- -ftemplate-backtrace-limit=0
144
- -fmacro-backtrace-limit=0)
145
- endif()
146
-
147
- if (LINUX)
148
- add_compile_options(
149
- -Wno-register
150
- -Wall
151
- -fconcepts-diagnostics-depth=3
152
-
153
- $<$<CONFIG:Debug>:-Og>
154
- $<$<CONFIG:Release>:-O3>
155
- )
156
-
157
- # Can we perhaps make different builds, one for core2 and another
158
- # for haswell?
159
-
160
- if(QDB_CPU_IS_X86)
161
- add_compile_options(-march=core2)
162
- endif()
163
- endif()
164
-
165
- if (CLANG)
166
- add_compile_options(
167
- -fcolor-diagnostics # force color output on ninja
168
- -fmacro-backtrace-limit=0
169
- $<$<CONFIG:Release>:-O3>
170
- $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:-g>
171
- $<$<CONFIG:Release>:-ftree-vectorize>)
172
- elseif (GNU)
173
- add_compile_options(
174
- -fdata-sections
175
- -ffunction-sections
176
- -fno-stack-protector
177
-
178
- -fnon-call-exceptions
179
- -ftrack-macro-expansion=0
180
- $<$<CONFIG:Release>:-O3>
181
- $<$<CONFIG:Debug>:-Og>
182
- $<$<CONFIG:Debug>:-fno-eliminate-unused-debug-types>
183
- $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:-ggdb>)
184
- endif()
185
-
186
-
187
- elseif (MSVC)
188
- message(STATUS "[qdb-api-python] Detected: msvc")
189
- add_definitions(/DSTATIC_LINKED)
190
- add_definitions(/D_CRT_SECURE_NO_WARNINGS=1)
191
-
192
- add_compile_options(
193
- /volatile:iso
194
- /Gy
195
- /Zc:wchar_t
196
- /wd5033
197
- /MT
198
- /EHa
199
- /GR
200
- /GF
201
-
202
- $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:/Zi> # Produces a program database (PDB) that contains type information and symbolic debugging information for use with the debugger
203
-
204
- # Debug: Turns off all optimizations in the program and speeds compilation.
205
- # Non-debug: Selects full optimization.
206
- $<IF:$<CONFIG:Debug>,/Od,/Ox>
207
- $<$<CONFIG:Debug>:/RTC1> # Enable the run-time error checks feature, in conjunction with the runtime_checks pragma.
208
-
209
- $<$<NOT:$<CONFIG:Debug>>:/Oi> # Replaces some function calls with intrinsic or otherwise special forms of the function that help your application run faster.
210
- $<$<NOT:$<CONFIG:Debug>>:/Ot> # Maximizes the speed of EXEs and DLLs by instructing the compiler to favor speed over size.
211
- $<$<NOT:$<CONFIG:Debug>>:/Oy> # Suppresses creation of frame pointers on the call stack.
212
- $<$<NOT:$<CONFIG:Debug>>:/GS-> # Suppresses Buffer Security Check
213
-
214
-
215
- )
216
- if(QDB_CPU_IS_X86)
217
- add_compile_options(
218
- # Enable AVX as we target Core2 and later
219
- /arch:AVX
220
- )
221
- endif()
222
- endif()
223
-
224
- ###
225
- #
226
- # Link options based on compiler/OS
227
- #
228
- ###
229
-
230
-
231
- if (CLANG)
232
- if(QDB_LINKER)
233
- if(QDB_LINKER STREQUAL "lld")
234
- if(APPLE)
235
- message(STATUS "[qdb-api-python] Detected: clang + lld + apple")
236
- add_link_options(--ld-path=ld64.lld)
237
- elseif(WIN32)
238
- message(STATUS "[qdb-api-python] Detected: clang + lld + win32")
239
- add_link_options(--ld-path=lld-link)
240
- else()
241
- message(STATUS "[qdb-api-python] Detected: clang + lld (other)")
242
- add_link_options(--ld-path=ld.lld)
243
- endif()
244
- else()
245
- message(STATUS "[qdb-api-python] Detected: clang + qdb_linker (other)")
246
- add_link_options(--ld-path=${QDB_LINKER})
247
- endif()
248
- endif()
249
-
250
- # clang + anything not apple
251
- if(NOT APPLE)
252
- message(STATUS "[qdb-api-python] Detected: clang + not apple")
253
- add_link_options(
254
- -Qunused-arguments
255
- -Wl,--gc-sections)
256
- endif()
257
- endif()
258
-
259
- ###
260
- #
261
- # Third-party libraries
262
- #
263
- ###
264
-
265
- message(STATUS "[qdb-api-python] Including thirdparty libraries with binary directory ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}")
266
- include_directories(SYSTEM ../thirdparty/date/include)
267
- include_directories(SYSTEM ../thirdparty/range-v3/include)
268
-
269
- add_subdirectory(../thirdparty/ ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
270
-
271
- include_directories(SYSTEM qdb/include)
272
- include_directories(${CMAKE_SOURCE_DIR})
273
- include_directories(../quasardb/)
274
-
275
-
276
- #
277
- # step 2: copy the libraries
278
- #
279
- # Based on the OS, we copy the relevant files into our output directory. This
280
- # matches the `extdir` as defined in setup.py's CMakeBuild.build_extension().
281
-
282
- # We need to detect the _actual_ location of the qdb api lib file, lest we
283
- # accidentally copy the symlink instead of the file.
284
- get_filename_component(QDB_API_LIB_REAL ${QDB_API_LIB} REALPATH)
285
- get_filename_component(QDB_API_LIB_REAL_NAME ${QDB_API_LIB_REAL} NAME)
286
-
287
- if(NOT QDB_LINK_STATIC_LIB)
288
- set(FILES_TO_COPY)
289
-
290
- if(WIN32)
291
- list(APPEND FILES_TO_COPY "${QDB_API_DIR}/bin/${QDB_API_NAME}.dll")
292
- elseif(APPLE)
293
- file(
294
- GLOB SO_LIBS
295
- LIST_DIRECTORIES false
296
- "${QDB_API_DIR}/lib/libc[x+][x+]*.dylib")
297
-
298
- list(APPEND FILES_TO_COPY "${QDB_API_LIB_REAL}" ${SO_LIBS})
299
- elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD")
300
- file(
301
- GLOB SO_LIBS
302
- LIST_DIRECTORIES false
303
- "${QDB_API_DIR}/lib/libc[x+][x+]*.so*")
304
-
305
- list(APPEND FILES_TO_COPY "${QDB_API_LIB_REAL}" ${SO_LIBS})
306
- else()
307
- list(APPEND FILES_TO_COPY "${QDB_API_LIB_REAL}")
308
- # Is there a case where the C API library is not called libqdb_api.so?
309
- # file(RENAME "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${QDB_API_LIB_REAL_NAME}"
310
- # "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libqdb_api.so")
311
- endif()
312
-
313
- message(STATUS "[qdb-api-python] Files to copy: ${FILES_TO_COPY}")
314
- file(COPY ${FILES_TO_COPY} DESTINATION "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}")
315
-
316
- # for Apple we need to change the id otherwise we won't be able to load the
317
- # extension
318
- if(APPLE)
319
- execute_process(COMMAND install_name_tool -id "@loader_path/lib${QDB_API_NAME}.dylib"
320
- ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${QDB_API_NAME}.dylib)
321
- endif()
322
- endif()
323
-
324
- set(QDB_FILES
325
- batch_inserter.hpp
326
- blob.hpp
327
- cluster.hpp
328
- cluster.cpp
329
- concepts.hpp
330
- continuous.cpp
331
- continuous.hpp
332
- convert.hpp
333
- double.hpp
334
- error.hpp
335
- entry.hpp
336
- handle.hpp
337
- handle.cpp
338
- logger.hpp
339
- logger.cpp
340
- masked_array.hpp
341
- metrics.hpp
342
- metrics.cpp
343
- module.hpp
344
- module.cpp
345
- node.hpp
346
- numpy.hpp
347
- numpy.cpp
348
- object_tracker.hpp
349
- options.hpp
350
- query.hpp
351
- query.cpp
352
- string.hpp
353
- table.cpp
354
- table.hpp
355
- table_reader.hpp
356
- tag.hpp
357
- timestamp.hpp
358
- traits.hpp
359
- utils.cpp
360
- utils.hpp
361
- writer.cpp
362
- writer.hpp
363
- detail/qdb_resource.hpp
364
- detail/ts_column.hpp
365
- reader/ts_row.hpp
366
- reader/ts_value.hpp
367
- utils/blob_deque.hpp
368
- utils/ostream.hpp
369
- utils/permutation.hpp
370
- utils/stable_sort.hpp
371
- )
372
-
373
- set(QDB_TEST_FILES "")
374
-
375
- if(QDB_TESTS_ENABLED)
376
- message(WARNING "\
377
- ------------------------------------------------------------------ \
378
- [qdb-api-python] Tests enabled -- do not enable for release builds \
379
- ------------------------------------------------------------------ \ ")
380
- set(QDB_TEST_FILES
381
-
382
- ../tests/conftest.cpp
383
- ../tests/conftest.hpp
384
- ../tests/test_convert.cpp)
385
- endif()
386
-
387
- # step 3: build
388
- pybind11_add_module(
389
- quasardb
390
-
391
- ${QDB_FILES}
392
- ${QDB_TEST_FILES})
393
-
394
- target_compile_definitions(quasardb PUBLIC QDB_PY_VERSION="${QDB_PY_VERSION}")
395
- if(QDB_LINK_STATIC_LIB)
396
- add_definitions(-DQDB_API_STATIC_LINK=1)
397
-
398
- set(LIB_DIR "${QDB_API_DIR}/lib_static")
399
- if(WIN32)
400
- set(LIB_PREFIX "")
401
- set(LIB_SUFFIX "$<$<CONFIG:Debug>:d>.lib")
402
- else()
403
- set(LIB_PREFIX "lib")
404
- set(LIB_SUFFIX "$<$<CONFIG:Debug>:d>.a")
405
- endif()
406
-
407
- target_link_libraries(quasardb
408
- PUBLIC
409
- "${LIB_DIR}/${LIB_PREFIX}qdb_api_static${LIB_SUFFIX}"
410
- "${LIB_DIR}/${LIB_PREFIX}qdb_query_client${LIB_SUFFIX}"
411
- "${LIB_DIR}/${LIB_PREFIX}qdb_client${LIB_SUFFIX}"
412
- "${LIB_DIR}/${LIB_PREFIX}qdb_aggregation${LIB_SUFFIX}"
413
- "${LIB_DIR}/${LIB_PREFIX}qdb_chord${LIB_SUFFIX}"
414
- "${LIB_DIR}/${LIB_PREFIX}qdb_network${LIB_SUFFIX}"
415
- "${LIB_DIR}/${LIB_PREFIX}qdb_protocol${LIB_SUFFIX}"
416
- "${LIB_DIR}/${LIB_PREFIX}qdb_perf${LIB_SUFFIX}"
417
- "${LIB_DIR}/${LIB_PREFIX}qdb_persistence${LIB_SUFFIX}"
418
- "${LIB_DIR}/${LIB_PREFIX}qdb_application${LIB_SUFFIX}"
419
- "${LIB_DIR}/${LIB_PREFIX}rocksdb${LIB_SUFFIX}"
420
- "${LIB_DIR}/${LIB_PREFIX}zlibstatic${LIB_SUFFIX}"
421
- "${LIB_DIR}/${LIB_PREFIX}qdb_query${LIB_SUFFIX}"
422
- "${LIB_DIR}/${LIB_PREFIX}geohash${LIB_SUFFIX}"
423
- "${LIB_DIR}/${LIB_PREFIX}qdb_timeseries${LIB_SUFFIX}"
424
- "${LIB_DIR}/${LIB_PREFIX}qdb_query_dsl${LIB_SUFFIX}"
425
- "${LIB_DIR}/${LIB_PREFIX}arrow${LIB_SUFFIX}"
426
- "${LIB_DIR}/${LIB_PREFIX}qdb_metadata${LIB_SUFFIX}"
427
- "${LIB_DIR}/${LIB_PREFIX}qdb_config${LIB_SUFFIX}"
428
- "${LIB_DIR}/${LIB_PREFIX}boost_program_options${LIB_SUFFIX}"
429
- "${LIB_DIR}/${LIB_PREFIX}qdb_serialization${LIB_SUFFIX}"
430
- "${LIB_DIR}/${LIB_PREFIX}qdb_compression${LIB_SUFFIX}"
431
- "${LIB_DIR}/${LIB_PREFIX}qdb_serialization${LIB_SUFFIX}"
432
- "${LIB_DIR}/${LIB_PREFIX}qdb_compression${LIB_SUFFIX}"
433
- "${LIB_DIR}/${LIB_PREFIX}qdb_auth${LIB_SUFFIX}"
434
- "${LIB_DIR}/${LIB_PREFIX}qdb_crypto${LIB_SUFFIX}"
435
- "${LIB_DIR}/${LIB_PREFIX}qdb_json${LIB_SUFFIX}"
436
- "${LIB_DIR}/${LIB_PREFIX}qdb_id${LIB_SUFFIX}"
437
- "${LIB_DIR}/${LIB_PREFIX}skein${LIB_SUFFIX}"
438
- "${LIB_DIR}/${LIB_PREFIX}qdb_network_resolver${LIB_SUFFIX}"
439
- "${LIB_DIR}/${LIB_PREFIX}libsodium${LIB_SUFFIX}"
440
- "${LIB_DIR}/${LIB_PREFIX}qdb_io${LIB_SUFFIX}"
441
- "${LIB_DIR}/${LIB_PREFIX}qdb_log${LIB_SUFFIX}"
442
- "${LIB_DIR}/${LIB_PREFIX}lz4${LIB_SUFFIX}"
443
- "${LIB_DIR}/${LIB_PREFIX}qdb_sys${LIB_SUFFIX}"
444
- "${LIB_DIR}/${LIB_PREFIX}qdb_time${LIB_SUFFIX}"
445
- "${LIB_DIR}/${LIB_PREFIX}brigand${LIB_SUFFIX}"
446
- "${LIB_DIR}/${LIB_PREFIX}qdb_util${LIB_SUFFIX}"
447
- "${LIB_DIR}/${LIB_PREFIX}boost_filesystem${LIB_SUFFIX}"
448
- "${LIB_DIR}/${LIB_PREFIX}fmt${LIB_SUFFIX}"
449
- "${LIB_DIR}/${LIB_PREFIX}robin_hood${LIB_SUFFIX}"
450
- "${LIB_DIR}/${LIB_PREFIX}asio${LIB_SUFFIX}"
451
- "${LIB_DIR}/${LIB_PREFIX}xxhash${LIB_SUFFIX}"
452
- "${LIB_DIR}/${LIB_PREFIX}qdb_memory${LIB_SUFFIX}"
453
- "${LIB_DIR}/${LIB_PREFIX}tbbmalloc${LIB_SUFFIX}"
454
- "${LIB_DIR}/${LIB_PREFIX}tbb${LIB_SUFFIX}"
455
- "${LIB_DIR}/${LIB_PREFIX}qdb_version${LIB_SUFFIX}"
456
- )
457
-
458
- if(WIN32)
459
- target_link_libraries(quasardb
460
- PUBLIC
461
- "${LIB_DIR}/${LIB_PREFIX}zstd_static${LIB_SUFFIX}"
462
- )
463
- else()
464
- target_link_libraries(quasardb
465
- PUBLIC
466
- "${LIB_DIR}/${LIB_PREFIX}boost_system${LIB_SUFFIX}"
467
- "${LIB_DIR}/${LIB_PREFIX}zstd${LIB_SUFFIX}"
468
- )
469
- endif()
470
- else()
471
- target_link_libraries(quasardb PUBLIC ${QDB_API_LIB})
472
- endif()
473
-
474
- if(CMAKE_COMPILER_IS_GNUCXX)
475
- target_link_options(
476
- quasardb
477
- PUBLIC
478
- -static-libgcc
479
- -static-libstdc++
480
- )
481
- endif()
482
-
483
- if(APPLE)
484
- set_target_properties(quasardb PROPERTIES INSTALL_RPATH "@loader_path")
485
- else()
486
- set_target_properties(quasardb PROPERTIES INSTALL_RPATH "$ORIGIN/")
487
- endif()
488
-
489
- if (CLANG OR GNU)
490
- if (NOT APPLE)
491
- check_ipo_supported(RESULT LTO_SUPPORTED OUTPUT error)
492
- if (LTO_SUPPORTED)
493
- message(STATUS "[qdb-api-python] Enabling LTO")
494
- set_target_properties(quasardb PROPERTIES INTERPROCEDURAL_OPTIMIZATION TRUE)
495
- else()
496
- message(STATUS "[qdb-api-python] Disabling LTO")
497
- set_target_properties(quasardb PROPERTIES INTERPROCEDURAL_OPTIMIZATION FALSE)
498
- endif()
499
- endif()
500
- endif()