@@ -468,6 +468,7 @@ endif ()
468
468
469
469
set (SOURCES ${SOURCES}
470
470
${PROJECT_SOURCE_DIR} /src/mongoc/mcd-azure.c
471
+ ${PROJECT_SOURCE_DIR} /src/mongoc/mcd-rpc.c
471
472
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-aggregate.c
472
473
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-apm.c
473
474
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-array.c
@@ -498,6 +499,7 @@ set (SOURCES ${SOURCES}
498
499
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-cursor-array.c
499
500
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-database.c
500
501
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-error.c
502
+ ${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-flags.c
501
503
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-find-and-modify.c
502
504
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-generation-map.c
503
505
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-init.c
@@ -521,6 +523,7 @@ set (SOURCES ${SOURCES}
521
523
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-matcher-op.c
522
524
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-memcmp.c
523
525
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-cmd.c
526
+ ${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-opcode.c
524
527
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-optional.c
525
528
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-opts-helpers.c
526
529
${PROJECT_SOURCE_DIR} /src/mongoc/mongoc-opts.c
@@ -731,6 +734,17 @@ if (MONGOC_ENABLE_MONGODB_AWS_AUTH)
731
734
endif ()
732
735
endif ()
733
736
737
+ if (MONGOC_ENABLE_STATIC_BUILD )
738
+ add_library (mcd_rpc STATIC EXCLUDE_FROM_ALL ${PROJECT_SOURCE_DIR} /src/mongoc/mcd-rpc.c )
739
+ target_include_directories (mcd_rpc PUBLIC ${PROJECT_SOURCE_DIR} /src )
740
+ target_link_libraries (mcd_rpc PUBLIC ${BSON_STATIC_LIBRARIES} )
741
+ if (NOT WIN32 AND ENABLE_PIC )
742
+ target_compile_options (mcd_rpc PUBLIC -fPIC )
743
+ endif ()
744
+ target_compile_definitions (mcd_rpc PUBLIC ${BSON_STATIC_PUBLIC_DEFINITIONS} )
745
+ set_target_properties (mcd_rpc PROPERTIES OUTPUT_NAME "mcd-rpc" )
746
+ endif ()
747
+
734
748
add_library (mongoc_shared SHARED ${SOURCES} ${HEADERS} ${HEADERS_FORWARDING} )
735
749
set_target_properties (mongoc_shared PROPERTIES CMAKE_CXX_VISIBILITY_PRESET hidden )
736
750
target_link_libraries (mongoc_shared PRIVATE ${LIBRARIES} PUBLIC ${BSON_LIBRARIES} )
@@ -963,6 +977,7 @@ set (test-libmongoc-sources
963
977
${PROJECT_SOURCE_DIR} /tests/test-mcd-azure-imds.c
964
978
${PROJECT_SOURCE_DIR} /tests/test-service-gcp.c
965
979
${PROJECT_SOURCE_DIR} /tests/test-mcd-integer.c
980
+ ${PROJECT_SOURCE_DIR} /tests/test-mcd-rpc.c
966
981
${PROJECT_SOURCE_DIR} /tests/TestSuite.c
967
982
${PROJECT_SOURCE_DIR} /tests/unified/operation.c
968
983
${PROJECT_SOURCE_DIR} /tests/unified/entity-map.c
@@ -1241,6 +1256,15 @@ export (EXPORT mongoc-targets
1241
1256
FILE "${CMAKE_CURRENT_BINARY_DIR} /mongoc/mongoc-targets.cmake"
1242
1257
)
1243
1258
1259
+ if (TARGET mcd_rpc )
1260
+ # Note: the (mongo::)bson_static target must be included separately via find_package or include.
1261
+ export (
1262
+ TARGETS mcd_rpc
1263
+ NAMESPACE mongo::
1264
+ FILE "${CMAKE_CURRENT_BINARY_DIR} /mongoc/mcd-rpc-targets.cmake"
1265
+ )
1266
+ endif ()
1267
+
1244
1268
configure_file (src/mongoc-config.cmake
1245
1269
"${CMAKE_CURRENT_BINARY_DIR} /mongoc/mongoc-${MONGOC_API_VERSION} -config.cmake"
1246
1270
@ONLY
0 commit comments