Skip to content

Commit f83f870

Browse files
committed
testing
1 parent f5020c2 commit f83f870

3 files changed

Lines changed: 27 additions & 22 deletions

File tree

cpp/src/arrow/flight/sql/odbc/CMakeLists.txt

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -67,16 +67,27 @@ set(ARROW_FLIGHT_SQL_ODBC_SHARED_INSTALL_INTERFACE_LIBS "")
6767
set(ARROW_FLIGHT_SQL_ODBC_STATIC_INSTALL_INTERFACE_LIBS "")
6868
set(ARROW_FLIGHT_SQL_ODBC_SHARED_PRIVATE_LINK_LIBS "")
6969

70-
if(WIN32 AND ARROW_BUILD_STATIC)
71-
# Static Arrow deps on Windows — self-contained ODBC DLL
72-
set(ARROW_FLIGHT_SQL_ODBC_SHARED_LINK_LIBS arrow_flight_sql_static arrow_odbc_spi_impl)
73-
set(ARROW_FLIGHT_SQL_ODBC_STATIC_LINK_LIBS arrow_flight_sql_static)
74-
list(APPEND ARROW_FLIGHT_SQL_ODBC_SHARED_INSTALL_INTERFACE_LIBS
75-
ArrowFlight::arrow_flight_sql_static)
76-
list(APPEND ARROW_FLIGHT_SQL_ODBC_STATIC_INSTALL_INTERFACE_LIBS
77-
ArrowFlight::arrow_flight_sql_static)
70+
if(WIN32)
71+
if(ARROW_BUILD_STATIC)
72+
# Static Arrow deps on Windows — self-contained ODBC DLL
73+
set(ARROW_FLIGHT_SQL_ODBC_SHARED_LINK_LIBS arrow_flight_sql_static arrow_odbc_spi_impl)
74+
set(ARROW_FLIGHT_SQL_ODBC_STATIC_LINK_LIBS arrow_flight_sql_static)
75+
list(APPEND ARROW_FLIGHT_SQL_ODBC_SHARED_INSTALL_INTERFACE_LIBS
76+
ArrowFlight::arrow_flight_sql_static)
77+
list(APPEND ARROW_FLIGHT_SQL_ODBC_STATIC_INSTALL_INTERFACE_LIBS
78+
ArrowFlight::arrow_flight_sql_static)
79+
else()
80+
set(ARROW_FLIGHT_SQL_ODBC_SHARED_LINK_LIBS arrow_flight_sql_shared arrow_odbc_spi_impl)
81+
set(ARROW_FLIGHT_SQL_ODBC_STATIC_LINK_LIBS arrow_flight_sql_static)
82+
list(APPEND ARROW_FLIGHT_SQL_ODBC_SHARED_INSTALL_INTERFACE_LIBS
83+
ArrowFlight::arrow_flight_sql_shared)
84+
list(APPEND ARROW_FLIGHT_SQL_ODBC_STATIC_INSTALL_INTERFACE_LIBS
85+
ArrowFlight::arrow_flight_sql_static)
86+
endif()
7887
list(APPEND ARROW_FLIGHT_SQL_ODBC_SHARED_PRIVATE_LINK_LIBS ODBC::ODBC ${ODBCINST})
7988
else()
89+
# Unix/macOS: driver dynamically links arrow_flight_sql so the driver and test
90+
# binary share the same grpc/arrow_flight runtime.
8091
set(ARROW_FLIGHT_SQL_ODBC_SHARED_LINK_LIBS arrow_odbc_spi_impl)
8192
set(ARROW_FLIGHT_SQL_ODBC_STATIC_LINK_LIBS ODBC::ODBC ${ODBCINST})
8293
endif()

cpp/src/arrow/flight/sql/odbc/odbc_impl/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,6 @@ else()
150150
arrow_compute_static
151151
Boost::locale
152152
Boost::headers
153-
Boost::variant
154153
RapidJSON)
155154

156155
if(NOT APPLE)

cpp/src/arrow/flight/sql/odbc/tests/CMakeLists.txt

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ set(ARROW_FLIGHT_SQL_ODBC_TEST_SRCS
4242
# GH-46889: move protobuf_test_util to a more common location
4343
../../../../engine/substrait/protobuf_test_util.cc)
4444

45-
if(ARROW_FLIGHT_TEST_LINKAGE STREQUAL "static")
45+
if(ARROW_TEST_LINKAGE STREQUAL "static")
4646
set(ARROW_FLIGHT_SQL_ODBC_TEST_LINK_LIBS arrow_flight_sql_odbc_static
4747
${ARROW_TEST_STATIC_LINK_LIBS})
4848
else()
@@ -54,32 +54,27 @@ endif()
5454
set(ARROW_FLIGHT_SQL_ODBC_TEST_LIBS ${ODBCINST} ${ODBC_LIBRARIES} ${SQLite3_LIBRARIES})
5555

5656
# On Windows, dynamic linking ODBC is supported, tests link libraries dynamically.
57-
# On unix systems, static linking ODBC is supported, thus tests link libraries statically.
57+
# On Windows with static Arrow, use STATIC_LINK_LIBS to avoid mixing static/shared.
58+
# On Unix/macOS, tests link libraries statically.
5859
set(ARROW_FLIGHT_SQL_ODBC_TEST_EXTRA_LINK_LIBS "")
5960
set(ARROW_FLIGHT_SQL_ODBC_TEST_STATIC_LINK_LIBS "")
6061
if(WIN32 AND ARROW_FLIGHT_TEST_LINKAGE STREQUAL "static")
6162
# Static Windows tests
62-
list(APPEND
63-
ARROW_FLIGHT_SQL_ODBC_TEST_STATIC_LINK_LIBS
63+
list(APPEND ARROW_FLIGHT_SQL_ODBC_TEST_STATIC_LINK_LIBS
6464
arrow_odbc_spi_impl
6565
${ARROW_FLIGHT_SQL_ODBC_TEST_LIBS}
66-
${ARROW_FLIGHT_SQL_ODBC_TEST_LINK_LIBS})
66+
${ARROW_FLIGHT_SQL_ODBC_TEST_LINK_LIBS}
67+
${ARROW_TEST_STATIC_LINK_LIBS})
6768
elseif(WIN32)
68-
# Dynamic Windows tests (current behavior)
69+
# Dynamic Windows tests
6970
list(APPEND ARROW_FLIGHT_SQL_ODBC_TEST_EXTRA_LINK_LIBS arrow_odbc_spi_impl
7071
${ARROW_FLIGHT_SQL_ODBC_TEST_LIBS})
7172
else()
72-
# Unix
73+
# Unix/macOS
7374
list(APPEND ARROW_FLIGHT_SQL_ODBC_TEST_STATIC_LINK_LIBS
7475
${ARROW_FLIGHT_SQL_ODBC_TEST_LIBS} ${ARROW_FLIGHT_SQL_ODBC_TEST_LINK_LIBS})
7576
endif()
7677

77-
# When Flight tests require static linkage, we must also add Arrow test libs to STATIC_LINK_LIBS
78-
# to avoid add_arrow_test from adding shared Arrow test libs
79-
if(ARROW_FLIGHT_TEST_LINKAGE STREQUAL "static")
80-
list(APPEND ARROW_FLIGHT_SQL_ODBC_TEST_STATIC_LINK_LIBS ${ARROW_TEST_STATIC_LINK_LIBS})
81-
endif()
82-
8378
add_arrow_test(flight_sql_odbc_test
8479
SOURCES
8580
${ARROW_FLIGHT_SQL_ODBC_TEST_SRCS}

0 commit comments

Comments
 (0)