You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by ko...@apache.org on 2024/02/24 22:05:51 UTC
(arrow) branch main updated: GH-40221: [C++][CMake] Use arrow/util/config.h.cmake instead of add_definitions() (#40222)
This is an automated email from the ASF dual-hosted git repository.
kou pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/main by this push:
new b8fff043c6 GH-40221: [C++][CMake] Use arrow/util/config.h.cmake instead of add_definitions() (#40222)
b8fff043c6 is described below
commit b8fff043c6cb351b1fad87fa0eeaf8dbc550e37c
Author: Sutou Kouhei <ko...@clear-code.com>
AuthorDate: Sun Feb 25 07:05:45 2024 +0900
GH-40221: [C++][CMake] Use arrow/util/config.h.cmake instead of add_definitions() (#40222)
### Rationale for this change
It's easy to maintain.
### What changes are included in this PR?
Use `#cmakedefine` in `cpp/src/arrow/util/config.h.cmake` and `#include "arrow/util/config.h"` instead of `add_definition(...)`.
### Are these changes tested?
Yes.
### Are there any user-facing changes?
No.
* GitHub Issue: #40221
Authored-by: Sutou Kouhei <ko...@clear-code.com>
Signed-off-by: Sutou Kouhei <ko...@clear-code.com>
---
cpp/CMakeLists.txt | 2 --
cpp/cmake_modules/ThirdpartyToolchain.cmake | 2 --
cpp/src/arrow/CMakeLists.txt | 10 ---------
.../arrow/compute/kernels/scalar_string_ascii.cc | 9 ++++----
.../arrow/compute/kernels/scalar_string_test.cc | 9 ++++----
.../arrow/compute/kernels/scalar_string_utf8.cc | 7 ++++---
cpp/src/arrow/ipc/feather_test.cc | 1 +
cpp/src/arrow/util/compression.cc | 1 +
cpp/src/arrow/util/compression_benchmark.cc | 1 +
cpp/src/arrow/util/compression_test.cc | 3 ++-
cpp/src/arrow/util/config.h.cmake | 11 ++++++++++
cpp/src/arrow/util/logging.cc | 4 +++-
cpp/src/parquet/CMakeLists.txt | 24 ----------------------
cpp/src/parquet/column_io_benchmark.cc | 1 +
cpp/src/parquet/column_writer_test.cc | 1 +
cpp/src/parquet/file_deserialize_test.cc | 1 +
cpp/src/parquet/file_serialize_test.cc | 1 +
cpp/src/parquet/reader_test.cc | 1 +
18 files changed, 38 insertions(+), 51 deletions(-)
diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
index b045a1cc0c..164f4182d9 100644
--- a/cpp/CMakeLists.txt
+++ b/cpp/CMakeLists.txt
@@ -784,7 +784,6 @@ if(ARROW_USE_GLOG)
if(GLOG_SOURCE STREQUAL "SYSTEM")
list(APPEND ARROW_STATIC_INSTALL_INTERFACE_LIBS glog::glog)
endif()
- add_definitions("-DARROW_USE_GLOG")
endif()
if(ARROW_S3)
@@ -953,7 +952,6 @@ if(ARROW_JEMALLOC)
endif()
if(ARROW_MIMALLOC)
- add_definitions(-DARROW_MIMALLOC)
list(APPEND ARROW_SHARED_LINK_LIBS mimalloc::mimalloc)
list(APPEND ARROW_STATIC_LINK_LIBS mimalloc::mimalloc)
endif()
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index 3c56bc7f24..951028b699 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -2585,7 +2585,6 @@ if(ARROW_WITH_RE2)
TRUE
PC_PACKAGE_NAMES
re2)
- add_definitions(-DARROW_WITH_RE2)
endif()
macro(build_bzip2)
@@ -2693,7 +2692,6 @@ if(ARROW_WITH_UTF8PROC)
libutf8proc
REQUIRED_VERSION
"2.2.0")
- add_definitions(-DARROW_WITH_UTF8PROC)
endif()
macro(build_cares)
diff --git a/cpp/src/arrow/CMakeLists.txt b/cpp/src/arrow/CMakeLists.txt
index 2f0e4a3aa6..c160179cef 100644
--- a/cpp/src/arrow/CMakeLists.txt
+++ b/cpp/src/arrow/CMakeLists.txt
@@ -304,17 +304,14 @@ set_source_files_properties(vendored/datetime/tz.cpp
add_definitions(-DURI_STATIC_BUILD)
if(ARROW_WITH_BROTLI)
- add_definitions(-DARROW_WITH_BROTLI)
list(APPEND ARROW_SRCS util/compression_brotli.cc)
endif()
if(ARROW_WITH_BZ2)
- add_definitions(-DARROW_WITH_BZ2)
list(APPEND ARROW_SRCS util/compression_bz2.cc)
endif()
if(ARROW_WITH_LZ4)
- add_definitions(-DARROW_WITH_LZ4)
list(APPEND ARROW_SRCS util/compression_lz4.cc)
endif()
@@ -323,17 +320,14 @@ if(ARROW_WITH_OPENTELEMETRY)
endif()
if(ARROW_WITH_SNAPPY)
- add_definitions(-DARROW_WITH_SNAPPY)
list(APPEND ARROW_SRCS util/compression_snappy.cc)
endif()
if(ARROW_WITH_ZLIB)
- add_definitions(-DARROW_WITH_ZLIB)
list(APPEND ARROW_SRCS util/compression_zlib.cc)
endif()
if(ARROW_WITH_ZSTD)
- add_definitions(-DARROW_WITH_ZSTD)
list(APPEND ARROW_SRCS util/compression_zstd.cc)
endif()
@@ -493,10 +487,6 @@ if(ARROW_COMPUTE)
endif()
if(ARROW_FILESYSTEM)
- if(ARROW_HDFS)
- add_definitions(-DARROW_HDFS)
- endif()
-
list(APPEND
ARROW_SRCS
filesystem/filesystem.cc
diff --git a/cpp/src/arrow/compute/kernels/scalar_string_ascii.cc b/cpp/src/arrow/compute/kernels/scalar_string_ascii.cc
index 8fdc6172aa..038e623b43 100644
--- a/cpp/src/arrow/compute/kernels/scalar_string_ascii.cc
+++ b/cpp/src/arrow/compute/kernels/scalar_string_ascii.cc
@@ -21,17 +21,18 @@
#include <memory>
#include <string>
-#ifdef ARROW_WITH_RE2
-#include <re2/re2.h>
-#endif
-
#include "arrow/array/builder_nested.h"
#include "arrow/compute/kernels/scalar_string_internal.h"
#include "arrow/result.h"
+#include "arrow/util/config.h"
#include "arrow/util/macros.h"
#include "arrow/util/string.h"
#include "arrow/util/value_parsing.h"
+#ifdef ARROW_WITH_RE2
+#include <re2/re2.h>
+#endif
+
namespace arrow {
using internal::EndsWith;
diff --git a/cpp/src/arrow/compute/kernels/scalar_string_test.cc b/cpp/src/arrow/compute/kernels/scalar_string_test.cc
index d7e35d0733..26289a7f78 100644
--- a/cpp/src/arrow/compute/kernels/scalar_string_test.cc
+++ b/cpp/src/arrow/compute/kernels/scalar_string_test.cc
@@ -23,10 +23,6 @@
#include <gmock/gmock.h>
#include <gtest/gtest.h>
-#ifdef ARROW_WITH_UTF8PROC
-#include <utf8proc.h>
-#endif
-
#include "arrow/compute/api_scalar.h"
#include "arrow/compute/exec.h"
#include "arrow/compute/kernels/codegen_internal.h"
@@ -34,8 +30,13 @@
#include "arrow/testing/gtest_util.h"
#include "arrow/type.h"
#include "arrow/type_fwd.h"
+#include "arrow/util/config.h"
#include "arrow/util/value_parsing.h"
+#ifdef ARROW_WITH_UTF8PROC
+#include <utf8proc.h>
+#endif
+
namespace arrow::compute {
// interesting utf8 characters for testing (lower case / upper case):
diff --git a/cpp/src/arrow/compute/kernels/scalar_string_utf8.cc b/cpp/src/arrow/compute/kernels/scalar_string_utf8.cc
index cf8a697fea..d720d4eee8 100644
--- a/cpp/src/arrow/compute/kernels/scalar_string_utf8.cc
+++ b/cpp/src/arrow/compute/kernels/scalar_string_utf8.cc
@@ -19,13 +19,14 @@
#include <mutex>
#include <string>
+#include "arrow/compute/kernels/scalar_string_internal.h"
+#include "arrow/util/config.h"
+#include "arrow/util/utf8_internal.h"
+
#ifdef ARROW_WITH_UTF8PROC
#include <utf8proc.h>
#endif
-#include "arrow/compute/kernels/scalar_string_internal.h"
-#include "arrow/util/utf8_internal.h"
-
namespace arrow {
namespace compute {
namespace internal {
diff --git a/cpp/src/arrow/ipc/feather_test.cc b/cpp/src/arrow/ipc/feather_test.cc
index 80e441fe2b..ba3f4d828c 100644
--- a/cpp/src/arrow/ipc/feather_test.cc
+++ b/cpp/src/arrow/ipc/feather_test.cc
@@ -35,6 +35,7 @@
#include "arrow/type.h"
#include "arrow/util/checked_cast.h"
#include "arrow/util/compression.h"
+#include "arrow/util/config.h"
namespace arrow {
diff --git a/cpp/src/arrow/util/compression.cc b/cpp/src/arrow/util/compression.cc
index 5ad17e993f..b63aec0aae 100644
--- a/cpp/src/arrow/util/compression.cc
+++ b/cpp/src/arrow/util/compression.cc
@@ -24,6 +24,7 @@
#include "arrow/result.h"
#include "arrow/status.h"
#include "arrow/util/compression_internal.h"
+#include "arrow/util/config.h"
#include "arrow/util/logging.h"
namespace arrow {
diff --git a/cpp/src/arrow/util/compression_benchmark.cc b/cpp/src/arrow/util/compression_benchmark.cc
index cc04eb4634..0b9727cff9 100644
--- a/cpp/src/arrow/util/compression_benchmark.cc
+++ b/cpp/src/arrow/util/compression_benchmark.cc
@@ -27,6 +27,7 @@
#include "arrow/result.h"
#include "arrow/util/compression.h"
+#include "arrow/util/config.h"
#include "arrow/util/logging.h"
#include "arrow/util/macros.h"
diff --git a/cpp/src/arrow/util/compression_test.cc b/cpp/src/arrow/util/compression_test.cc
index eeeedce177..eb2da98d51 100644
--- a/cpp/src/arrow/util/compression_test.cc
+++ b/cpp/src/arrow/util/compression_test.cc
@@ -30,6 +30,7 @@
#include "arrow/testing/gtest_util.h"
#include "arrow/testing/util.h"
#include "arrow/util/compression.h"
+#include "arrow/util/config.h"
namespace arrow {
namespace util {
@@ -729,7 +730,7 @@ INSTANTIATE_TEST_SUITE_P(TestLZ4Frame, CodecTest,
INSTANTIATE_TEST_SUITE_P(TestBrotli, CodecTest, ::testing::Values(Compression::BROTLI));
#endif
-#if ARROW_WITH_BZ2
+#ifdef ARROW_WITH_BZ2
INSTANTIATE_TEST_SUITE_P(TestBZ2, CodecTest, ::testing::Values(Compression::BZ2));
#endif
diff --git a/cpp/src/arrow/util/config.h.cmake b/cpp/src/arrow/util/config.h.cmake
index 6c8c31ffb8..fb42a53139 100644
--- a/cpp/src/arrow/util/config.h.cmake
+++ b/cpp/src/arrow/util/config.h.cmake
@@ -47,15 +47,26 @@
#cmakedefine ARROW_JEMALLOC
#cmakedefine ARROW_JEMALLOC_VENDORED
#cmakedefine ARROW_JSON
+#cmakedefine ARROW_MIMALLOC
#cmakedefine ARROW_ORC
#cmakedefine ARROW_PARQUET
#cmakedefine ARROW_SUBSTRAIT
#cmakedefine ARROW_ENABLE_THREADING
#cmakedefine ARROW_GCS
+#cmakedefine ARROW_HDFS
#cmakedefine ARROW_S3
+#cmakedefine ARROW_USE_GLOG
#cmakedefine ARROW_USE_NATIVE_INT128
+#cmakedefine ARROW_WITH_BROTLI
+#cmakedefine ARROW_WITH_BZ2
+#cmakedefine ARROW_WITH_LZ4
#cmakedefine ARROW_WITH_MUSL
#cmakedefine ARROW_WITH_OPENTELEMETRY
+#cmakedefine ARROW_WITH_RE2
+#cmakedefine ARROW_WITH_SNAPPY
#cmakedefine ARROW_WITH_UCX
+#cmakedefine ARROW_WITH_UTF8PROC
+#cmakedefine ARROW_WITH_ZLIB
+#cmakedefine ARROW_WITH_ZSTD
#cmakedefine PARQUET_REQUIRE_ENCRYPTION
diff --git a/cpp/src/arrow/util/logging.cc b/cpp/src/arrow/util/logging.cc
index 9c68982a3d..d293113237 100644
--- a/cpp/src/arrow/util/logging.cc
+++ b/cpp/src/arrow/util/logging.cc
@@ -17,6 +17,8 @@
#include "arrow/util/logging.h"
+#include "arrow/util/config.h"
+
#ifdef ARROW_WITH_BACKTRACE
#include <execinfo.h>
#endif
@@ -28,7 +30,7 @@
#include <signal.h>
#include <vector>
-#include "glog/logging.h"
+#include <glog/logging.h>
// Restore our versions of DCHECK and friends, as GLog defines its own
#undef DCHECK
diff --git a/cpp/src/parquet/CMakeLists.txt b/cpp/src/parquet/CMakeLists.txt
index 04028431ba..9fed75704b 100644
--- a/cpp/src/parquet/CMakeLists.txt
+++ b/cpp/src/parquet/CMakeLists.txt
@@ -422,27 +422,3 @@ add_parquet_benchmark(level_conversion_benchmark)
add_parquet_benchmark(page_index_benchmark SOURCES page_index_benchmark.cc
benchmark_util.cc)
add_parquet_benchmark(arrow/reader_writer_benchmark PREFIX "parquet-arrow")
-
-if(ARROW_WITH_BROTLI)
- add_definitions(-DARROW_WITH_BROTLI)
-endif()
-
-if(ARROW_WITH_BZ2)
- add_definitions(-DARROW_WITH_BZ2)
-endif()
-
-if(ARROW_WITH_LZ4)
- add_definitions(-DARROW_WITH_LZ4)
-endif()
-
-if(ARROW_WITH_SNAPPY)
- add_definitions(-DARROW_WITH_SNAPPY)
-endif()
-
-if(ARROW_WITH_ZLIB)
- add_definitions(-DARROW_WITH_ZLIB)
-endif()
-
-if(ARROW_WITH_ZSTD)
- add_definitions(-DARROW_WITH_ZSTD)
-endif()
diff --git a/cpp/src/parquet/column_io_benchmark.cc b/cpp/src/parquet/column_io_benchmark.cc
index 48e434a342..593765dcd4 100644
--- a/cpp/src/parquet/column_io_benchmark.cc
+++ b/cpp/src/parquet/column_io_benchmark.cc
@@ -20,6 +20,7 @@
#include "arrow/array.h"
#include "arrow/io/memory.h"
#include "arrow/testing/random.h"
+#include "arrow/util/config.h"
#include "parquet/column_reader.h"
#include "parquet/column_writer.h"
diff --git a/cpp/src/parquet/column_writer_test.cc b/cpp/src/parquet/column_writer_test.cc
index 86fe0965a6..a8519a0f56 100644
--- a/cpp/src/parquet/column_writer_test.cc
+++ b/cpp/src/parquet/column_writer_test.cc
@@ -26,6 +26,7 @@
#include "arrow/testing/gtest_util.h"
#include "arrow/util/bit_util.h"
#include "arrow/util/bitmap_builders.h"
+#include "arrow/util/config.h"
#include "parquet/column_page.h"
#include "parquet/column_reader.h"
diff --git a/cpp/src/parquet/file_deserialize_test.cc b/cpp/src/parquet/file_deserialize_test.cc
index 6b3c7062fc..9f2857c819 100644
--- a/cpp/src/parquet/file_deserialize_test.cc
+++ b/cpp/src/parquet/file_deserialize_test.cc
@@ -37,6 +37,7 @@
#include "arrow/status.h"
#include "arrow/testing/gtest_util.h"
#include "arrow/util/compression.h"
+#include "arrow/util/config.h"
#include "arrow/util/crc32.h"
namespace parquet {
diff --git a/cpp/src/parquet/file_serialize_test.cc b/cpp/src/parquet/file_serialize_test.cc
index 62e1965418..fc356d5d24 100644
--- a/cpp/src/parquet/file_serialize_test.cc
+++ b/cpp/src/parquet/file_serialize_test.cc
@@ -19,6 +19,7 @@
#include <gtest/gtest.h>
#include "arrow/testing/gtest_compat.h"
+#include "arrow/util/config.h"
#include "parquet/column_reader.h"
#include "parquet/column_writer.h"
diff --git a/cpp/src/parquet/reader_test.cc b/cpp/src/parquet/reader_test.cc
index 551f62798e..f9c2e06873 100644
--- a/cpp/src/parquet/reader_test.cc
+++ b/cpp/src/parquet/reader_test.cc
@@ -32,6 +32,7 @@
#include "arrow/testing/gtest_util.h"
#include "arrow/testing/random.h"
#include "arrow/util/checked_cast.h"
+#include "arrow/util/config.h"
#include "parquet/column_reader.h"
#include "parquet/column_scanner.h"