You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by xu...@apache.org on 2025/03/24 01:36:45 UTC

(iceberg-cpp) branch main updated: fix: do not write ICEBERG_INCLUDES everywhere (#49)

This is an automated email from the ASF dual-hosted git repository.

xuanwo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg-cpp.git


The following commit(s) were added to refs/heads/main by this push:
     new dde3efa  fix: do not write ICEBERG_INCLUDES everywhere (#49)
dde3efa is described below

commit dde3efaa41c6c45a98c36b62b76e222a474e2bbb
Author: Gang Wu <us...@gmail.com>
AuthorDate: Mon Mar 24 09:36:41 2025 +0800

    fix: do not write ICEBERG_INCLUDES everywhere (#49)
---
 .github/workflows/cpp-linter.yml  | 1 +
 CMakeLists.txt                    | 1 -
 src/iceberg/CMakeLists.txt        | 4 +++-
 src/iceberg/arrow/CMakeLists.txt  | 3 ---
 src/iceberg/avro/CMakeLists.txt   | 3 ---
 src/iceberg/puffin/CMakeLists.txt | 3 ---
 test/arrow/CMakeLists.txt         | 1 -
 test/avro/CMakeLists.txt          | 1 -
 test/core/CMakeLists.txt          | 2 --
 9 files changed, 4 insertions(+), 15 deletions(-)

diff --git a/.github/workflows/cpp-linter.yml b/.github/workflows/cpp-linter.yml
index b31e625..adad283 100644
--- a/.github/workflows/cpp-linter.yml
+++ b/.github/workflows/cpp-linter.yml
@@ -53,6 +53,7 @@ jobs:
           thread-comments: true
           ignore: 'build|cmake_modules|ci'
           database: build
+          extra-args: '-I$PWD/src -I$PWD/build/src'
       - name: Fail fast?!
         if: steps.linter.outputs.checks-failed != 0
         run: |
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9b52e30..dd983a8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -47,7 +47,6 @@ set(ICEBERG_INSTALL_BINDIR "${CMAKE_INSTALL_BINDIR}")
 set(ICEBERG_INSTALL_INCLUDEDIR "${CMAKE_INSTALL_INCLUDEDIR}")
 set(ICEBERG_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake")
 set(ICEBERG_INSTALL_DOCDIR "share/doc/${PROJECT_NAME}")
-set(ICEBERG_INCLUDES "${PROJECT_BINARY_DIR}/src" "${PROJECT_SOURCE_DIR}/src")
 
 if(WIN32 AND NOT MINGW)
   set(MSVC_TOOLCHAIN TRUE)
diff --git a/src/iceberg/CMakeLists.txt b/src/iceberg/CMakeLists.txt
index 0c1475b..6ecea21 100644
--- a/src/iceberg/CMakeLists.txt
+++ b/src/iceberg/CMakeLists.txt
@@ -15,6 +15,8 @@
 # specific language governing permissions and limitations
 # under the License.
 
+set(ICEBERG_INCLUDES "$<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/src>"
+                     "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src>")
 set(ICEBERG_SOURCES
     arrow_c_data_internal.cc
     demo_table.cc
@@ -35,7 +37,7 @@ list(APPEND ICEBERG_SHARED_INSTALL_INTERFACE_LIBS "Iceberg::nanoarrow")
 add_iceberg_lib(iceberg
                 SOURCES
                 ${ICEBERG_SOURCES}
-                PRIVATE_INCLUDES
+                EXTRA_INCLUDES
                 ${ICEBERG_INCLUDES}
                 SHARED_LINK_LIBS
                 ${ICEBERG_SHARED_BUILD_INTERFACE_LIBS}
diff --git a/src/iceberg/arrow/CMakeLists.txt b/src/iceberg/arrow/CMakeLists.txt
index 792631d..51d1811 100644
--- a/src/iceberg/arrow/CMakeLists.txt
+++ b/src/iceberg/arrow/CMakeLists.txt
@@ -20,7 +20,6 @@ if(NOT ICEBERG_ARROW)
 endif()
 
 set(ICEBERG_ARROW_SOURCES demo_arrow.cc)
-set(ICEBERG_ARROW_INCLUDES "${ICEBERG_INCLUDES}")
 
 # Libraries to link with exported libiceberg_arrow.{so,a}.
 set(ICEBERG_ARROW_STATIC_BUILD_INTERFACE_LIBS)
@@ -61,8 +60,6 @@ list(APPEND
 add_iceberg_lib(iceberg_arrow
                 SOURCES
                 ${ICEBERG_ARROW_SOURCES}
-                PRIVATE_INCLUDES
-                ${ICEBERG_ARROW_INCLUDES}
                 SHARED_LINK_LIBS
                 ${ICEBERG_ARROW_SHARED_BUILD_INTERFACE_LIBS}
                 STATIC_LINK_LIBS
diff --git a/src/iceberg/avro/CMakeLists.txt b/src/iceberg/avro/CMakeLists.txt
index 6a17eb5..315d39c 100644
--- a/src/iceberg/avro/CMakeLists.txt
+++ b/src/iceberg/avro/CMakeLists.txt
@@ -20,7 +20,6 @@ if(NOT ICEBERG_AVRO)
 endif()
 
 set(ICEBERG_AVRO_SOURCES demo_avro.cc)
-set(ICEBERG_AVRO_INCLUDES "${ICEBERG_INCLUDES}")
 
 # Libraries to link with exported libiceberg_avro.{so,a}.
 set(ICEBERG_AVRO_STATIC_BUILD_INTERFACE_LIBS)
@@ -65,8 +64,6 @@ list(APPEND
 add_iceberg_lib(iceberg_avro
                 SOURCES
                 ${ICEBERG_AVRO_SOURCES}
-                PRIVATE_INCLUDES
-                ${ICEBERG_AVRO_INCLUDES}
                 SHARED_LINK_LIBS
                 ${ICEBERG_AVRO_SHARED_BUILD_INTERFACE_LIBS}
                 STATIC_LINK_LIBS
diff --git a/src/iceberg/puffin/CMakeLists.txt b/src/iceberg/puffin/CMakeLists.txt
index 5acd6be..440ff84 100644
--- a/src/iceberg/puffin/CMakeLists.txt
+++ b/src/iceberg/puffin/CMakeLists.txt
@@ -16,7 +16,6 @@
 # under the License.
 
 set(ICEBERG_PUFFIN_SOURCES demo_puffin.cc)
-set(ICEBERG_PUFFIN_INCLUDES "${ICEBERG_INCLUDES}")
 
 set(ICEBERG_PUFFIN_STATIC_BUILD_INTERFACE_LIBS)
 set(ICEBERG_PUFFIN_SHARED_BUILD_INTERFACE_LIBS)
@@ -39,8 +38,6 @@ list(APPEND
 add_iceberg_lib(iceberg_puffin
                 SOURCES
                 ${ICEBERG_PUFFIN_SOURCES}
-                PRIVATE_INCLUDES
-                ${ICEBERG_PUFFIN_INCLUDES}
                 SHARED_LINK_LIBS
                 ${ICEBERG_PUFFIN_SHARED_BUILD_INTERFACE_LIBS}
                 STATIC_LINK_LIBS
diff --git a/test/arrow/CMakeLists.txt b/test/arrow/CMakeLists.txt
index 0ef6586..043ecf4 100644
--- a/test/arrow/CMakeLists.txt
+++ b/test/arrow/CMakeLists.txt
@@ -20,6 +20,5 @@ if(ICEBERG_ARROW)
   target_sources(arrow_unittest PRIVATE arrow_test.cc)
   target_link_libraries(arrow_unittest PRIVATE iceberg_arrow_static Arrow::arrow_static
                                                GTest::gtest_main)
-  target_include_directories(arrow_unittest PRIVATE "${ICEBERG_INCLUDES}")
   add_test(NAME arrow_unittest COMMAND arrow_unittest)
 endif()
diff --git a/test/avro/CMakeLists.txt b/test/avro/CMakeLists.txt
index 9cd1c0b..c32fbf8 100644
--- a/test/avro/CMakeLists.txt
+++ b/test/avro/CMakeLists.txt
@@ -19,6 +19,5 @@ if(ICEBERG_AVRO)
   add_executable(avro_unittest)
   target_sources(avro_unittest PRIVATE avro_test.cc)
   target_link_libraries(avro_unittest PRIVATE iceberg_avro_static GTest::gtest_main)
-  target_include_directories(avro_unittest PRIVATE "${ICEBERG_INCLUDES}")
   add_test(NAME avro_unittest COMMAND avro_unittest)
 endif()
diff --git a/test/core/CMakeLists.txt b/test/core/CMakeLists.txt
index 6e82b9b..3bed59b 100644
--- a/test/core/CMakeLists.txt
+++ b/test/core/CMakeLists.txt
@@ -19,11 +19,9 @@ add_executable(core_unittest)
 target_sources(core_unittest PRIVATE core_unittest.cc schema_test.cc schema_field_test.cc
                                      type_test.cc)
 target_link_libraries(core_unittest PRIVATE iceberg_static GTest::gtest_main GTest::gmock)
-target_include_directories(core_unittest PRIVATE "${ICEBERG_INCLUDES}")
 add_test(NAME core_unittest COMMAND core_unittest)
 
 add_executable(expected_test)
 target_sources(expected_test PRIVATE expected_test.cc)
 target_link_libraries(expected_test PRIVATE iceberg_static GTest::gtest_main)
-target_include_directories(expected_test PRIVATE "${ICEBERG_INCLUDES}")
 add_test(NAME expected_test COMMAND expected_test)