From 10bd6e618884842069c8f36295111fa590577ed5 Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Fri, 6 Sep 2024 15:47:16 -0500 Subject: [PATCH 1/2] define c standard earlier --- CMakeLists.txt | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f880d9967..84d37a7d6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,11 +18,6 @@ message(STATUS "Building using CMake version: ${CMAKE_VERSION}") cmake_minimum_required(VERSION 3.14) -if(NOT DEFINED CMAKE_C_STANDARD) - set(CMAKE_C_STANDARD 99) - set(CMAKE_C_STANDARD_REQUIRED ON) -endif() - set(NANOARROW_VERSION "0.6.0-SNAPSHOT") string(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" NANOARROW_BASE_VERSION "${NANOARROW_VERSION}") @@ -59,6 +54,15 @@ option(NANOARROW_CODE_COVERAGE "Enable coverage reporting" OFF) option(NANOARROW_ARROW_STATIC "Use a statically-linked Arrow C++ build when linking tests" OFF) +if(NOT DEFINED CMAKE_C_STANDARD) + if(NANOARROW_IPC) + set(CMAKE_C_STANDARD 11) + else() + set(CMAKE_C_STANDARD 99) + endif() + set(CMAKE_C_STANDARD_REQUIRED ON) +endif() + if(NANOARROW_NAMESPACE) set(NANOARROW_NAMESPACE_DEFINE "#define NANOARROW_NAMESPACE ${NANOARROW_NAMESPACE}") else() @@ -150,14 +154,6 @@ target_include_directories(nanoarrow install(FILES ${NANOARROW_INSTALL_HEADERS} DESTINATION include/nanoarrow) if(NANOARROW_IPC) - # flatcc requires C11 for alignas() and static_assert() in flatcc_generated.h - # It may be possible to use C99 mode to build the runtime and/or generated header - # should this cause problems for users. - if(NOT DEFINED CMAKE_C_STANDARD) - set(CMAKE_C_STANDARD 11) - set(CMAKE_C_STANDARD_REQUIRED ON) - endif() - # Add the flatcc (runtime) dependency set(FLATCC_RTONLY ON From d3ab2f10cf6fde246f2da426bd5aacbe51e3cd9d Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Fri, 6 Sep 2024 15:52:30 -0500 Subject: [PATCH 2/2] keep comment about C11 --- CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 84d37a7d6..e4f677acb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -56,6 +56,9 @@ option(NANOARROW_ARROW_STATIC if(NOT DEFINED CMAKE_C_STANDARD) if(NANOARROW_IPC) + # flatcc requires C11 for alignas() and static_assert() in flatcc_generated.h + # It may be possible to use C99 mode to build the runtime and/or generated header + # should this cause problems for users. set(CMAKE_C_STANDARD 11) else() set(CMAKE_C_STANDARD 99)