@@ -59,54 +59,47 @@ endif()
5959
6060# On Windows, dynmaic build for ODBC is supported.
6161# On unix systems, static build for ODBC is supported, all libraries are linked statically on unix.
62+ set (ARROW_FLIGHT_SQL_ODBC_SHARED_INSTALL_INTERFACE_LIBS "" )
63+ set (ARROW_FLIGHT_SQL_ODBC_STATIC_INSTALL_INTERFACE_LIBS "" )
64+ set (ARROW_FLIGHT_SQL_ODBC_SHARED_PRIVATE_LINK_LIBS "" )
6265if (WIN32 )
63- add_arrow_lib (arrow_flight_sql_odbc
64- CMAKE_PACKAGE_NAME
65- ArrowFlightSqlOdbc
66- PKG_CONFIG_NAME
67- arrow-flight-sql-odbc
68- OUTPUTS
69- ARROW_FLIGHT_SQL_ODBC_LIBRARIES
70- SOURCES
71- ${ARROW_FLIGHT_SQL_ODBC_SRCS}
72- DEFINITIONS
73- UNICODE
74- SHARED_LINK_FLAGS
75- ${ARROW_VERSION_SCRIPT_FLAGS} # Defined in cpp/arrow/CMakeLists.txt
76- SHARED_LINK_LIBS
77- arrow_flight_sql_shared
78- arrow_odbc_spi_impl
79- SHARED_INSTALL_INTERFACE_LIBS
80- ArrowFlight::arrow_flight_sql_shared
81- STATIC_LINK_LIBS
82- arrow_flight_sql_static
83- STATIC_INSTALL_INTERFACE_LIBS
84- ArrowFlight::arrow_flight_sql_static
85- SHARED_PRIVATE_LINK_LIBS
86- ODBC::ODBC
87- ${ODBCINST} )
66+ set (ARROW_FLIGHT_SQL_ODBC_SHARED_LINK_LIBS arrow_flight_sql_shared arrow_odbc_spi_impl)
67+ set (ARROW_FLIGHT_SQL_ODBC_STATIC_LINK_LIBS arrow_flight_sql_static)
68+ list (APPEND ARROW_FLIGHT_SQL_ODBC_SHARED_INSTALL_INTERFACE_LIBS
69+ ArrowFlight::arrow_flight_sql_shared)
70+ list (APPEND ARROW_FLIGHT_SQL_ODBC_STATIC_INSTALL_INTERFACE_LIBS
71+ ArrowFlight::arrow_flight_sql_static)
72+ list (APPEND ARROW_FLIGHT_SQL_ODBC_SHARED_PRIVATE_LINK_LIBS ODBC::ODBC ${ODBCINST} )
8873else ()
8974 # Unix
90- add_arrow_lib (arrow_flight_sql_odbc
91- CMAKE_PACKAGE_NAME
92- ArrowFlightSqlOdbc
93- PKG_CONFIG_NAME
94- arrow-flight-sql-odbc
95- OUTPUTS
96- ARROW_FLIGHT_SQL_ODBC_LIBRARIES
97- SOURCES
98- ${ARROW_FLIGHT_SQL_ODBC_SRCS}
99- DEFINITIONS
100- UNICODE
101- SHARED_LINK_FLAGS
102- ${ARROW_VERSION_SCRIPT_FLAGS} # Defined in cpp/arrow/CMakeLists.txt
103- STATIC_LINK_LIBS
104- ODBC::ODBC
105- ${ODBCINST}
106- SHARED_LINK_LIBS
107- arrow_odbc_spi_impl )
75+ set (ARROW_FLIGHT_SQL_ODBC_SHARED_LINK_LIBS arrow_odbc_spi_impl)
76+ set (ARROW_FLIGHT_SQL_ODBC_STATIC_LINK_LIBS ODBC::ODBC ${ODBCINST} )
10877endif ()
10978
79+ add_arrow_lib (arrow_flight_sql_odbc
80+ CMAKE_PACKAGE_NAME
81+ ArrowFlightSqlOdbc
82+ PKG_CONFIG_NAME
83+ arrow-flight-sql-odbc
84+ OUTPUTS
85+ ARROW_FLIGHT_SQL_ODBC_LIBRARIES
86+ SOURCES
87+ ${ARROW_FLIGHT_SQL_ODBC_SRCS}
88+ DEFINITIONS
89+ UNICODE
90+ SHARED_LINK_FLAGS
91+ ${ARROW_VERSION_SCRIPT_FLAGS} # Defined in cpp/arrow/CMakeLists.txt
92+ SHARED_LINK_LIBS
93+ ${ARROW_FLIGHT_SQL_ODBC_SHARED_LINK_LIBS}
94+ SHARED_INSTALL_INTERFACE_LIBS
95+ ${ARROW_FLIGHT_SQL_ODBC_SHARED_INSTALL_INTERFACE_LIBS}
96+ STATIC_LINK_LIBS
97+ ${ARROW_FLIGHT_SQL_ODBC_STATIC_LINK_LIBS}
98+ STATIC_INSTALL_INTERFACE_LIBS
99+ ${ARROW_FLIGHT_SQL_ODBC_STATIC_INSTALL_INTERFACE_LIBS}
100+ SHARED_PRIVATE_LINK_LIBS
101+ ${ARROW_FLIGHT_SQL_ODBC_SHARED_PRIVATE_LINK_LIBS} )
102+
110103foreach (LIB_TARGET ${ARROW_FLIGHT_SQL_ODBC_LIBRARIES} )
111104 target_compile_definitions (${LIB_TARGET} PRIVATE ARROW_FLIGHT_SQL_ODBC_EXPORTING )
112105endforeach ()
0 commit comments