@@ -30,44 +30,22 @@ INCLUDE(FindGit)
3030IF (NOT GIT_EXECUTABLE)
3131 MESSAGE (STATUS "Git has nobeen found" )
3232ENDIF ()
33- IF (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR} /cppmini/CMakeLists.txt AND GIT_EXECUTABLE)
33+ IF (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR} /cppmini/class AND GIT_EXECUTABLE)
3434 MESSAGE (STATUS "C/C++ files are not found - updating submodules" )
3535 EXECUTE_PROCESS (COMMAND "${GIT_EXECUTABLE} " submodule init
36- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} " )
36+ WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} " )
3737 EXECUTE_PROCESS (COMMAND "${GIT_EXECUTABLE} " submodule update
38- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} " )
38+ WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} " )
3939ENDIF ()
40- IF (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR} /cppmini/CMakeLists.txt )
40+ IF (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR} /cppmini/class )
4141 MESSAGE (FATAL_ERROR "No MariaDB Connector/C++ mini branch! Run
4242 git submodule init
4343 git submodule update
4444 Then restart the build.
4545" )
4646ENDIF ()
4747
48-
49- SET (MARIADB_ODBC_SOURCES odbc_3_api.cpp
50- ma_api_internal.cpp
51- ma_error.cpp
52- ma_connection.cpp
53- ma_helper.cpp
54- ma_debug.cpp
55- ma_dsn.c
56- ma_driver.cpp
57- ma_info.cpp
58- ma_environment.cpp
59- ma_parse.cpp
60- ma_catalog.cpp
61- ma_statement.cpp
62- ma_desc.cpp
63- ma_string.cpp
64- ma_result.cpp
65- ma_common.c
66- ma_server.cpp
67- ma_legacy_helpers.cpp
68- ma_typeconv.cpp
69- ma_bulk.cpp
70- ma_codec.cpp
48+ SET (MARIADB_CPPMINI_FILES
7149 cppmini/class/Results.cpp
7250 cppmini/class/TextRow.cpp
7351 cppmini/class/BinRow.cpp
@@ -92,7 +70,66 @@ SET (MARIADB_ODBC_SOURCES odbc_3_api.cpp
9270 cppmini/interface/Exception.cpp
9371 cppmini/template/CArray.cpp
9472 )
73+ # Propogating it to the parent level as it needed for source package generation. If we wet it for parent_scope in first place,
74+ # it won't be visible in this scope
75+ SET (MARIADB_CPPMINI_FILES ${MARIADB_CPPMINI_FILES} PARENT_SCOPE )
76+
77+ SET (MARIADB_CPPMINI_HEADERS
78+ cppmini/class/SQLString.h
79+ cppmini/class/Results.h
80+ cppmini/class/TextRow.h
81+ cppmini/class/BinRow.h
82+ cppmini/class/ClientSidePreparedStatement.h
83+ cppmini/class/ServerSidePreparedStatement.h
84+ cppmini/class/SSPSDirectExec.h
85+ cppmini/class/ClientPrepareResult.h
86+ cppmini/class/ServerPrepareResult.h
87+ cppmini/class/CmdInformationSingle.h
88+ cppmini/class/CmdInformationMultiple.h
89+ cppmini/class/CmdInformationBatch.h
90+ cppmini/class/ColumnDefinition.h
91+ cppmini/class/ResultSetText.h
92+ cppmini/class/ResultSetBin.h
93+ cppmini/class/ResultSetMetaData.h
94+ cppmini/class/Parameter.h
95+ cppmini/class/pimpls.h
96+ cppmini/class/Protocol.h
97+ cppmini/class/lru/lrucache.h
98+ cppmini/class/lru/pscache.h
99+ cppmini/interface/PreparedStatement.h
100+ cppmini/interface/PrepareResult.h
101+ cppmini/interface/Row.h
102+ cppmini/interface/ResultSet.h
103+ cppmini/interface/CmdInformation.h
104+ cppmini/interface/Exception.h
105+ cppmini/template/CArray.h
106+ )
107+ SET (MARIADB_CPPMINI_HEADERS ${MARIADB_CPPMINI_HEADERS} PARENT_SCOPE )
95108
109+ SET (MARIADB_ODBC_SOURCES odbc_3_api.cpp
110+ ma_api_internal.cpp
111+ ma_error.cpp
112+ ma_connection.cpp
113+ ma_helper.cpp
114+ ma_debug.cpp
115+ ma_dsn.c
116+ ma_driver.cpp
117+ ma_info.cpp
118+ ma_environment.cpp
119+ ma_parse.cpp
120+ ma_catalog.cpp
121+ ma_statement.cpp
122+ ma_desc.cpp
123+ ma_string.cpp
124+ ma_result.cpp
125+ ma_common.c
126+ ma_server.cpp
127+ ma_legacy_helpers.cpp
128+ ma_typeconv.cpp
129+ ma_bulk.cpp
130+ ma_codec.cpp
131+ ${MARIADB_CPPMINI_FILES}
132+ )
96133IF (WIN32 )
97134 SET (ODBC_LIBS odbc32)
98135 SET (ODBC_INSTLIBS odbccp32)
@@ -122,31 +159,7 @@ IF(WIN32)
122159 ma_bulk.h
123160 ma_codec.h
124161 ma_c_stuff.h
125- cppmini/class/SQLString.h
126- cppmini/class/Results.h
127- cppmini/class/TextRow.h
128- cppmini/class/BinRow.h
129- cppmini/class/ClientSidePreparedStatement.h
130- cppmini/class/ServerSidePreparedStatement.h
131- cppmini/class/SSPSDirectExec.h
132- cppmini/class/ClientPrepareResult.h
133- cppmini/class/ServerPrepareResult.h
134- cppmini/class/CmdInformationSingle.h
135- cppmini/class/CmdInformationMultiple.h
136- cppmini/class/CmdInformationBatch.h
137- cppmini/class/ColumnDefinition.h
138- cppmini/class/ResultSetText.h
139- cppmini/class/ResultSetBin.h
140- cppmini/class/ResultSetMetaData.h
141- cppmini/class/Parameter.h
142- cppmini/class/Protocol.h
143- cppmini/interface/PreparedStatement.h
144- cppmini/interface/PrepareResult.h
145- cppmini/interface/Row.h
146- cppmini/interface/ResultSet.h
147- cppmini/interface/CmdInformation.h
148- cppmini/interface/Exception.h
149- cppmini/template/CArray.h
162+ ${MARIADB_CPPMINI_HEADERS}
150163 )
151164
152165 SOURCE_GROUP (Classes REGULAR_EXPRESSION "class/" )
@@ -230,9 +243,9 @@ ELSE()
230243ENDIF ()
231244
232245SET_TARGET_PROPERTIES (${LIBRARY_NAME} PROPERTIES
233- RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR} "
246+ RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR} "
234247 # Specifically on Windows, to have implib in the same place as the dll
235- ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR} "
248+ ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR} "
236249 LANGUAGE CXX )
237250MESSAGE (STATUS "All linked targets/external dependencies: ${MARIADB_CLIENT_TARGET_NAME} ${ODBC_INSTLIBS} ${PLATFORM_DEPENDENCIES} " )
238251TARGET_LINK_LIBRARIES (${LIBRARY_NAME} ${MARIADB_CLIENT_TARGET_NAME} ${ODBC_INSTLIBS} ${PLATFORM_DEPENDENCIES} )
0 commit comments