@@ -25,6 +25,27 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/ma_odbc_version.h.in
2525CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR} /maodbcu.rc.in
2626 ${CMAKE_CURRENT_BINARY_DIR} /maodbcu.rc )
2727
28+ # We need to update submodule if files are not present and still have the oportunity to build using arbitrary commit
29+ INCLUDE (FindGit )
30+ IF (NOT GIT_EXECUTABLE)
31+ MESSAGE (STATUS "Git has nobeen found" )
32+ ENDIF ()
33+ IF (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR} /cppmini/CMakeLists.txt AND GIT_EXECUTABLE)
34+ MESSAGE (STATUS "C/C++ files are not found - updating submodules" )
35+ EXECUTE_PROCESS (COMMAND "${GIT_EXECUTABLE} " submodule init
36+ WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} " )
37+ EXECUTE_PROCESS (COMMAND "${GIT_EXECUTABLE} " submodule update
38+ WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR} " )
39+ ENDIF ()
40+ IF (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR} /cppmini/CMakeLists.txt)
41+ MESSAGE (FATAL_ERROR "No MariaDB Connector/C++ mini branch! Run
42+ git submodule init
43+ git submodule update
44+ Then restart the build.
45+ " )
46+ ENDIF ()
47+
48+
2849SET (MARIADB_ODBC_SOURCES odbc_3_api.cpp
2950 ma_api_internal.cpp
3051 ma_error.cpp
@@ -47,30 +68,29 @@ SET (MARIADB_ODBC_SOURCES odbc_3_api.cpp
4768 ma_typeconv.cpp
4869 ma_bulk.cpp
4970 ma_codec.cpp
50- # class/SQLString.cpp
51- class/Results.cpp
52- class/TextRow.cpp
53- class/BinRow.cpp
54- class/ClientSidePreparedStatement.cpp
55- class/ServerSidePreparedStatement.cpp
56- class/SSPSDirectExec.cpp
57- class/ClientPrepareResult.cpp
58- class/ServerPrepareResult.cpp
59- class/CmdInformationSingle.cpp
60- class/CmdInformationMultiple.cpp
61- class/CmdInformationBatch.cpp
62- class/ColumnDefinition.cpp
63- class/ResultSetText.cpp
64- class/ResultSetBin.cpp
65- class/ResultSetMetaData.cpp
66- class/Parameter.cpp
67- class/Protocol.cpp
68- interface/PreparedStatement.cpp
69- interface/Row.cpp
70- interface/ResultSet.cpp
71- interface/PrepareResult.cpp
72- interface/Exception.cpp
73- template/CArray.cpp
71+ cppmini/class/Results.cpp
72+ cppmini/class/TextRow.cpp
73+ cppmini/class/BinRow.cpp
74+ cppmini/class/ClientSidePreparedStatement.cpp
75+ cppmini/class/ServerSidePreparedStatement.cpp
76+ cppmini/class/SSPSDirectExec.cpp
77+ cppmini/class/ClientPrepareResult.cpp
78+ cppmini/class/ServerPrepareResult.cpp
79+ cppmini/class/CmdInformationSingle.cpp
80+ cppmini/class/CmdInformationMultiple.cpp
81+ cppmini/class/CmdInformationBatch.cpp
82+ cppmini/class/ColumnDefinition.cpp
83+ cppmini/class/ResultSetText.cpp
84+ cppmini/class/ResultSetBin.cpp
85+ cppmini/class/ResultSetMetaData.cpp
86+ cppmini/class/Parameter.cpp
87+ cppmini/class/Protocol.cpp
88+ cppmini/interface/PreparedStatement.cpp
89+ cppmini/interface/Row.cpp
90+ cppmini/interface/ResultSet.cpp
91+ cppmini/interface/PrepareResult.cpp
92+ cppmini/interface/Exception.cpp
93+ cppmini/template/CArray.cpp
7494 )
7595
7696IF (WIN32 )
@@ -102,31 +122,31 @@ IF(WIN32)
102122 ma_bulk.h
103123 ma_codec.h
104124 ma_c_stuff.h
105- class/SQLString.h
106- class/Results.h
107- class/TextRow.h
108- class/BinRow.h
109- class/ClientSidePreparedStatement.h
110- class/ServerSidePreparedStatement.h
111- class/SSPSDirectExec.h
112- class/ClientPrepareResult.h
113- class/ServerPrepareResult.h
114- class/CmdInformationSingle.h
115- class/CmdInformationMultiple.h
116- class/CmdInformationBatch.h
117- class/ColumnDefinition.h
118- class/ResultSetText.h
119- class/ResultSetBin.h
120- class/ResultSetMetaData.h
121- class/Parameter.h
122- class/Protocol.h
123- interface/PreparedStatement.h
124- interface/PrepareResult.h
125- interface/Row.h
126- interface/ResultSet.h
127- interface/CmdInformation.h
128- interface/Exception.h
129- template/CArray.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
130150 )
131151
132152 SOURCE_GROUP (Classes REGULAR_EXPRESSION "class/" )
@@ -139,8 +159,7 @@ ELSE()
139159 ma_conv_charset.cpp)
140160ENDIF ()
141161
142- INCLUDE_DIRECTORIES ("${CMAKE_CURRENT_SOURCE_DIR} " "${CMAKE_CURRENT_SOURCE_DIR} /interface" "${CMAKE_CURRENT_SOURCE_DIR} /template" "${CMAKE_CURRENT_SOURCE_DIR} /class" "${CMAKE_CURRENT_BINARY_DIR} " )
143- INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR} /class )
162+ INCLUDE_DIRECTORIES ("${CMAKE_CURRENT_SOURCE_DIR} " "${CMAKE_CURRENT_SOURCE_DIR} /cppmini" "${CMAKE_CURRENT_SOURCE_DIR} /cppmini/interface" "${CMAKE_CURRENT_SOURCE_DIR} /cppmini/template" "${CMAKE_CURRENT_SOURCE_DIR} /cppmini/class" "${CMAKE_CURRENT_BINARY_DIR} " )
144163
145164CONFIGURE_FILE (${CMAKE_SOURCE_DIR} /driver/mariadb-odbc-driver.def.in
146165 ${CMAKE_BINARY_DIR} /driver/mariadb-odbc-driver-uni.def )
0 commit comments