Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion ci/msvc-build.bat
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ conda create -n arrow -q -y python=%PYTHON% ^
six pytest setuptools numpy pandas cython
conda install -n arrow -q -y -c conda-forge ^
flatbuffers rapidjson ^
cmake git boost-cpp thrift-cpp snappy zlib brotli
cmake git boost-cpp thrift-cpp snappy zlib brotli gflags

call activate arrow

Expand Down
7 changes: 6 additions & 1 deletion cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -412,6 +412,7 @@ if (NOT "$ENV{ARROW_BUILD_TOOLCHAIN}" STREQUAL "")
set(FLATBUFFERS_HOME "$ENV{ARROW_BUILD_TOOLCHAIN}")
set(RAPIDJSON_HOME "$ENV{ARROW_BUILD_TOOLCHAIN}")
set(JEMALLOC_HOME "$ENV{ARROW_BUILD_TOOLCHAIN}")
set(GFLAGS_HOME "$ENV{ARROW_BUILD_TOOLCHAIN}")

if (NOT DEFINED ENV{BOOST_ROOT})
# Since we have to set this in the environment, we check whether
Expand All @@ -432,6 +433,10 @@ if (DEFINED ENV{JEMALLOC_HOME})
set(JEMALLOC_HOME "$ENV{JEMALLOC_HOME}")
endif()

if (DEFINED ENV{GFLAGS_HOME})
set(GFLAGS_HOME "$ENV{GFLAGS_HOME}")
endif()

# ----------------------------------------------------------------------
# Add Boost dependencies (code adapted from Apache Kudu (incubating))

Expand Down Expand Up @@ -560,7 +565,7 @@ if(ARROW_BUILD_TESTS OR ARROW_BUILD_BENCHMARKS)
endif()

# gflags (formerly Googleflags) command line parsing
if("$ENV{GFLAGS_HOME}" STREQUAL "")
if("${GFLAGS_HOME}" STREQUAL "")
set(GFLAGS_CMAKE_CXX_FLAGS ${EP_CXX_FLAGS})

set(GFLAGS_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/gflags_ep-prefix/src/gflags_ep")
Expand Down
12 changes: 8 additions & 4 deletions cpp/cmake_modules/FindGFlags.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,17 @@
# GFLAGS_STATIC_LIB, path to libgflags static library
# GFLAGS_FOUND, whether gflags has been found

if( NOT "$ENV{GFLAGS_HOME}" STREQUAL "")
file( TO_CMAKE_PATH "$ENV{GFLAGS_HOME}" _native_path )
if( NOT "${GFLAGS_HOME}" STREQUAL "")
file( TO_CMAKE_PATH "${GFLAGS_HOME}" _native_path )
list( APPEND _gflags_roots ${_native_path} )
elseif ( GFlags_HOME )
list( APPEND _gflags_roots ${GFlags_HOME} )
endif()

if (MSVC AND NOT GFLAGS_MSVC_STATIC_LIB_SUFFIX)
set(GFLAGS_MSVC_STATIC_LIB_SUFFIX "_static")
endif()

if ( _gflags_roots )
find_path(GFLAGS_INCLUDE_DIR NAMES gflags/gflags.h
PATHS ${_gflags_roots}
Expand All @@ -38,7 +42,7 @@ if ( _gflags_roots )
PATHS ${_gflags_roots}
NO_DEFAULT_PATH
PATH_SUFFIXES "lib" )
find_library(GFLAGS_SHARED_LIB NAMES libgflags.a
find_library(GFLAGS_STATIC_LIB NAMES ${CMAKE_STATIC_LIBRARY_PREFIX}gflags${GFLAGS_MSVC_STATIC_LIB_SUFFIX}
PATHS ${_gflags_roots}
NO_DEFAULT_PATH
PATH_SUFFIXES "lib" )
Expand All @@ -50,7 +54,7 @@ else()
find_library(GFLAGS_SHARED_LIB gflags
NO_CMAKE_SYSTEM_PATH
NO_SYSTEM_ENVIRONMENT_PATH)
find_library(GFLAGS_STATIC_LIB libgflags.a
find_library(GFLAGS_STATIC_LIB ${CMAKE_STATIC_LIBRARY_PREFIX}gflags${GFLAGS_MSVC_STATIC_LIB_SUFFIX}
NO_CMAKE_SYSTEM_PATH
NO_SYSTEM_ENVIRONMENT_PATH)
endif()
Expand Down
9 changes: 5 additions & 4 deletions cpp/cmake_modules/FindGTest.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ if ( _gtest_roots )
find_path( GTEST_INCLUDE_DIR NAMES gtest/gtest.h
PATHS ${_gtest_roots} NO_DEFAULT_PATH
PATH_SUFFIXES "include" )
find_library( GTEST_LIBRARIES NAMES gtest
find_library( GTEST_LIBRARIES NAMES gtest gtest_main
PATHS ${_gtest_roots} NO_DEFAULT_PATH
PATH_SUFFIXES "lib" )
else ()
Expand All @@ -55,9 +55,10 @@ endif ()
if (GTEST_INCLUDE_DIR AND GTEST_LIBRARIES)
set(GTEST_FOUND TRUE)
get_filename_component( GTEST_LIBS ${GTEST_LIBRARIES} PATH )
set(GTEST_LIB_NAME libgtest)
set(GTEST_STATIC_LIB ${GTEST_LIBS}/${GTEST_LIB_NAME}.a)
set(GTEST_SHARED_LIB ${GTEST_LIBS}/${GTEST_LIB_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX})
set(GTEST_LIB_NAME gtest)
set(GTEST_STATIC_LIB ${GTEST_LIBS}/${CMAKE_STATIC_LIBRARY_PREFIX}${GTEST_LIB_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX})
set(GTEST_MAIN_STATIC_LIB ${GTEST_LIBS}/${CMAKE_STATIC_LIBRARY_PREFIX}${GTEST_LIB_NAME}_main${CMAKE_STATIC_LIBRARY_SUFFIX})
set(GTEST_SHARED_LIB ${GTEST_LIBS}/${CMAKE_SHARED_LIBRARY_PREFIX}${GTEST_LIB_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX})
else ()
set(GTEST_FOUND FALSE)
endif ()
Expand Down