alinaliBQ commented on code in PR #49220:
URL: https://github.com/apache/arrow/pull/49220#discussion_r2849354886
##########
cpp/src/arrow/flight/sql/odbc/CMakeLists.txt:
##########
@@ -61,33 +66,56 @@ if(WIN32)
list(APPEND ARROW_FLIGHT_SQL_ODBC_SRCS odbc.def install/versioninfo.rc)
endif()
-add_arrow_lib(arrow_flight_sql_odbc
- CMAKE_PACKAGE_NAME
- ArrowFlightSqlOdbc
- PKG_CONFIG_NAME
- arrow-flight-sql-odbc
- OUTPUTS
- ARROW_FLIGHT_SQL_ODBC_LIBRARIES
- SOURCES
- ${ARROW_FLIGHT_SQL_ODBC_SRCS}
- DEPENDENCIES
- arrow_flight_sql
- DEFINITIONS
- UNICODE
- SHARED_LINK_FLAGS
- ${ARROW_VERSION_SCRIPT_FLAGS} # Defined in
cpp/arrow/CMakeLists.txt
- SHARED_LINK_LIBS
- arrow_flight_sql_shared
- SHARED_INSTALL_INTERFACE_LIBS
- ArrowFlight::arrow_flight_sql_shared
- STATIC_LINK_LIBS
- arrow_flight_sql_static
- STATIC_INSTALL_INTERFACE_LIBS
- ArrowFlight::arrow_flight_sql_static
- SHARED_PRIVATE_LINK_LIBS
- ODBC::ODBC
- ${ODBCINST}
- arrow_odbc_spi_impl)
+# On Windows, dynmaic build for ODBC is supported.
+# On unix systems, static build for ODBC is supported, all libraries are
linked statically on unix.
+if(WIN32)
+ add_arrow_lib(arrow_flight_sql_odbc
+ CMAKE_PACKAGE_NAME
+ ArrowFlightSqlOdbc
+ PKG_CONFIG_NAME
+ arrow-flight-sql-odbc
+ OUTPUTS
+ ARROW_FLIGHT_SQL_ODBC_LIBRARIES
+ SOURCES
+ ${ARROW_FLIGHT_SQL_ODBC_SRCS}
+ DEFINITIONS
+ UNICODE
+ SHARED_LINK_FLAGS
+ ${ARROW_VERSION_SCRIPT_FLAGS} # Defined in
cpp/arrow/CMakeLists.txt
+ SHARED_LINK_LIBS
+ arrow_flight_sql_shared
+ arrow_odbc_spi_impl
+ SHARED_INSTALL_INTERFACE_LIBS
+ ArrowFlight::arrow_flight_sql_shared
+ STATIC_LINK_LIBS
+ arrow_flight_sql_static
+ STATIC_INSTALL_INTERFACE_LIBS
+ ArrowFlight::arrow_flight_sql_static
+ SHARED_PRIVATE_LINK_LIBS
+ ODBC::ODBC
+ ${ODBCINST})
+else()
+ # Unix
+ add_arrow_lib(arrow_flight_sql_odbc
+ CMAKE_PACKAGE_NAME
+ ArrowFlightSqlOdbc
+ PKG_CONFIG_NAME
+ arrow-flight-sql-odbc
+ OUTPUTS
+ ARROW_FLIGHT_SQL_ODBC_LIBRARIES
+ SOURCES
+ ${ARROW_FLIGHT_SQL_ODBC_SRCS}
+ DEFINITIONS
+ UNICODE
+ SHARED_LINK_FLAGS
+ ${ARROW_VERSION_SCRIPT_FLAGS} # Defined in
cpp/arrow/CMakeLists.txt
+ STATIC_LINK_LIBS
+ iodbc
+ ODBC::ODBC
+ ${ODBCINST}
+ SHARED_LINK_LIBS
+ arrow_odbc_spi_impl)
+endif()
Review Comment:
Sure, I have changed to use one `add_arrow_lib()` for easier maintenance
##########
cpp/cmake_modules/ThirdpartyToolchain.cmake:
##########
@@ -3023,8 +3039,8 @@ function(build_cares)
if(APPLE)
# libresolv must be linked from c-ares version 1.16.1
find_library(LIBRESOLV_LIBRARY NAMES resolv libresolv REQUIRED)
- set_target_properties(c-ares::cares PROPERTIES INTERFACE_LINK_LIBRARIES
- "${LIBRESOLV_LIBRARY}")
+ set_target_properties(c-ares PROPERTIES INTERFACE_LINK_LIBRARIES
+ "${LIBRESOLV_LIBRARY}")
Review Comment:
Yup, fixed
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]