diff --git a/.evergreen/check-public-headers.sh b/.evergreen/check-public-headers.sh index 9bd35deae76a2fda9c3e33425da8b80fa9a90ecf..53806eb8fd60892aeb7e1c9610097155033611a7 100755 --- a/.evergreen/check-public-headers.sh +++ b/.evergreen/check-public-headers.sh @@ -2,16 +2,16 @@ set -o xtrace # print commands to stderr. # regex to match public headers. -pattern="\.\/src\/mongoc\/mongoc.*[^private]\.h$" +pattern="\.\/src\/libmongoc\/src\/mongoc\/mongoc.*[^private]\.h$" # public headers we expect not to have BSON_BEGIN_DECLS and BSON_END_DECLS. -exclude="\.\/src\/mongoc\/mongoc-macros.h|.\/src\/mongoc\/mongoc.h" +exclude="\.\/src\/libmongoc\/src\/mongoc\/mongoc-macros.h|.\/src\/libmongoc\/src\/mongoc\/mongoc.h" # get all public headers. -find ./src/mongoc -regex $pattern -regextype posix-extended -not -regex $exclude | sort > /tmp/public_headers.txt +find ./src/libmongoc/src/mongoc -regex $pattern -regextype posix-extended -not -regex $exclude | sort > /tmp/public_headers.txt # get all public headers with BSON_BEGIN_DECLS. -find ./src/mongoc -regextype posix-extended -regex $pattern -not -regex $exclude | xargs grep -l "BSON_BEGIN_DECLS" | sort > /tmp/public_headers_with_extern_c.txt +find ./src/libmongoc/src/mongoc -regextype posix-extended -regex $pattern -not -regex $exclude | xargs grep -l "BSON_BEGIN_DECLS" | sort > /tmp/public_headers_with_extern_c.txt echo "checking if any public headers are missing 'extern C' declaration" @@ -19,4 +19,4 @@ echo "checking if any public headers are missing 'extern C' declaration" diff -y /tmp/public_headers.txt /tmp/public_headers_with_extern_c.txt # use return status of diff -exit $? \ No newline at end of file +exit $? diff --git a/.evergreen/check-release-archive.sh b/.evergreen/check-release-archive.sh index ea378b2c49d0ddf4ecaeeaa479cd938a364fd7e5..a42d268c666bba3427af8baf0a389351c203ee69 100644 --- a/.evergreen/check-release-archive.sh +++ b/.evergreen/check-release-archive.sh @@ -51,8 +51,8 @@ fi echo "Checking that all C files are included in tarball" # Check that all C files were included. -TAR_CFILES=`tar --wildcards -tf mongo-c-driver-*.tar.gz 'mongo-c-driver-*/src/mongoc/*.c' | cut -d / -f 4 | sort` -SRC_CFILES=`echo src/mongoc/*.c | xargs -n 1 | cut -d / -f 3 | sort` +TAR_CFILES=`tar --wildcards -tf mongo-c-driver-*.tar.gz 'mongo-c-driver-*/src/libmongoc/src/mongoc/*.c' | cut -d / -f 4 | sort` +SRC_CFILES=`echo src/libmongoc/src/mongoc/*.c | xargs -n 1 | cut -d / -f 3 | sort` if [ "$TAR_CFILES" != "$SRC_CFILES" ]; then echo "Not all C files are in the release archive" echo $TAR_CFILES > tar_cfiles.txt diff --git a/.evergreen/compile-unix.sh b/.evergreen/compile-unix.sh index f4551fc0c9453ea2fb72291b8c85fb97ed376aca..ec1a610f2b4f3ae2a2f2646d3b3fde0e32ed1ff1 100755 --- a/.evergreen/compile-unix.sh +++ b/.evergreen/compile-unix.sh @@ -194,10 +194,10 @@ ulimit -c unlimited || true mkfifo pipe || true if [ -e pipe ]; then tee error.log < pipe & - ./test-libmongoc -d -F test-results.json 2>pipe + ./src/libmongoc/test-libmongoc -d -F test-results.json 2>pipe rm pipe else - ./test-libmongoc -d -F test-results.json + ./src/libmongoc/test-libmongoc -d -F test-results.json fi # Check if the error.log exists, and is more than 0 byte diff --git a/.evergreen/compile-windows-mingw.bat b/.evergreen/compile-windows-mingw.bat index 48603d656e5bf49196995dd23bf78e3b00aadf24..6e3da481045ff7db89880178b6acb7d275dae1ca 100644 --- a/.evergreen/compile-windows-mingw.bat +++ b/.evergreen/compile-windows-mingw.bat @@ -1,5 +1,5 @@ rem Ensure Cygwin executables like sh.exe are not in PATH -set PATH=C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson +set PATH=C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson;src\libmongoc echo CONFIGURE_FLAGS %CONFIGURE_FLAGS% @@ -12,4 +12,4 @@ set CC=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\gcc.exe %CMAKE_MAKE_PROGRAM% set MONGOC_TEST_SKIP_LIVE=on -test-libmongoc.exe --no-fork -d -F test-results.json +.\src\libmongoc\test-libmongoc.exe --no-fork -d -F test-results.json diff --git a/.evergreen/compile-windows.sh b/.evergreen/compile-windows.sh index f6b8dfc3f0a9ec35e6c4b9e8842b0571138d2d94..d2ad05597ad1604c67c5b9e3c05c186a4a16de23 100755 --- a/.evergreen/compile-windows.sh +++ b/.evergreen/compile-windows.sh @@ -114,13 +114,13 @@ esac if [ "$RELEASE" ]; then CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DCMAKE_BUILD_TYPE=Release" BUILD_FLAGS="$BUILD_FLAGS /p:Configuration=Release" - TEST_PATH="./Release/test-libmongoc.exe" - export PATH=$PATH:`pwd`/tests:`pwd`/Release:`pwd`/src/libbson/Release + TEST_PATH="./Release/src/libmongoc/test-libmongoc.exe" + export PATH=$PATH:`pwd`/tests:`pwd`/Release:`pwd`/src/libbson/Release:`pwd`/src/libmongoc/Release else CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DCMAKE_BUILD_TYPE=Debug" BUILD_FLAGS="$BUILD_FLAGS /p:Configuration=Debug" - TEST_PATH="./Debug/test-libmongoc.exe" - export PATH=$PATH:`pwd`/tests:`pwd`/Debug:`pwd`/src/libbson/Debug + TEST_PATH="./Debug/src/libmongoc/test-libmongoc.exe" + export PATH=$PATH:`pwd`/tests:`pwd`/Debug:`pwd`/src/libbson/Debug:`pwd`/src/libmongoc/Debug fi "$CMAKE" -G "$CC" "-DCMAKE_PREFIX_PATH=${INSTALL_DIR}/lib/cmake" $CONFIGURE_FLAGS diff --git a/.evergreen/debug-core-evergreen.sh b/.evergreen/debug-core-evergreen.sh index f1715bd0d35d8108471a04e93ca134e11a67205e..16d17738f56468b560791ac5f47afbefe23cf29d 100755 --- a/.evergreen/debug-core-evergreen.sh +++ b/.evergreen/debug-core-evergreen.sh @@ -5,5 +5,5 @@ echo "Debugging core files" shopt -s nullglob for i in *.core; do echo $i - echo "backtrace full" | gdb -q test-libmongoc $i + echo "backtrace full" | gdb -q ./src/libmongoc/test-libmongoc $i done diff --git a/.evergreen/link-sample-program-mingw-bson.cmd b/.evergreen/link-sample-program-mingw-bson.cmd index 86204cafc50fe43dee5aae96d25cdc962b3dbc4c..3cb15b73810d88f2d5a79c08c5c700b12e64326b 100644 --- a/.evergreen/link-sample-program-mingw-bson.cmd +++ b/.evergreen/link-sample-program-mingw-bson.cmd @@ -9,7 +9,7 @@ set CMAKE=C:\cmake\bin\cmake set CMAKE_MAKE_PROGRAM=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\mingw32-make.exe set CC=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\gcc.exe rem Ensure Cygwin executables like sh.exe are not in PATH -set PATH=C:\cygwin\bin;C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson +set PATH=C:\cygwin\bin;C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson;src\libmongoc set LINK_STATIC=1 set SRCROOT=%CD% diff --git a/.evergreen/link-sample-program-mingw.cmd b/.evergreen/link-sample-program-mingw.cmd index 6003ca242dd0b51090b568bc30e7b92a7514b445..b29c32dfba9cc25e0aaf359bb0b22af5a072c14a 100644 --- a/.evergreen/link-sample-program-mingw.cmd +++ b/.evergreen/link-sample-program-mingw.cmd @@ -10,7 +10,7 @@ set CMAKE=C:\cmake\bin\cmake set CMAKE_MAKE_PROGRAM=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\mingw32-make.exe set CC=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\gcc.exe rem Ensure Cygwin executables like sh.exe are not in PATH -set PATH=C:\cygwin\bin;C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson +set PATH=C:\cygwin\bin;C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson;src\libmongoc set SRCROOT=%CD% set BUILD_DIR=%CD%\build-dir diff --git a/.evergreen/run-auth-tests.sh b/.evergreen/run-auth-tests.sh index e4f2a0207d4fbf71763b98e8230c259304531bcb..168bf13c8217677cd7c7506cd43e907696c5cbc8 100644 --- a/.evergreen/run-auth-tests.sh +++ b/.evergreen/run-auth-tests.sh @@ -22,12 +22,12 @@ C_TIMEOUT="connectTimeoutMS=30000&serverSelectionTryOnce=false" OS=$(uname -s | tr '[:upper:]' '[:lower:]') -if grep -q "#define MONGOC_ENABLE_SASL 1" src/mongoc/mongoc-config.h; then +if grep -q "#define MONGOC_ENABLE_SASL 1" src/libmongoc/src/mongoc/mongoc-config.h; then SASL=1 else SASL=0 fi -if grep -q "#define MONGOC_ENABLE_SSL 1" src/mongoc/mongoc-config.h; then +if grep -q "#define MONGOC_ENABLE_SSL 1" src/libmongoc/src/mongoc/mongoc-config.h; then SSL=1 else SSL=0 @@ -38,20 +38,20 @@ DIR=$(dirname $0) case "$OS" in cygwin*) - PING="./Debug/mongoc-ping.exe" - TEST_GSSAPI="./Debug/test-mongoc-gssapi.exe" + PING="./Debug/src/libmongoc/mongoc-ping.exe" + TEST_GSSAPI="./Debug/src/libmongoc/test-mongoc-gssapi.exe" IP_ADDR=`getent hosts $AUTH_HOST | head -n 1 | awk '{print $1}'` ;; darwin) - PING="./mongoc-ping" - TEST_GSSAPI="./test-mongoc-gssapi" + PING="./src/libmongoc/mongoc-ping" + TEST_GSSAPI="./src/libmongoc/test-mongoc-gssapi" IP_ADDR=`dig $AUTH_HOST +short | tail -1` ;; *) - PING="./mongoc-ping" - TEST_GSSAPI="./test-mongoc-gssapi" + PING="./src/libmongoc/mongoc-ping" + TEST_GSSAPI="./src/libmongoc/test-mongoc-gssapi" IP_ADDR=`getent hosts $AUTH_HOST | head -n 1 | awk '{print $1}'` esac diff --git a/.evergreen/run-mock-server-tests.sh b/.evergreen/run-mock-server-tests.sh index 2761d25ac07f7e210ecbf2b5685c8a81add230c0..4a4cc2a095b5796511b2b4b55ac4965a106d9e7d 100755 --- a/.evergreen/run-mock-server-tests.sh +++ b/.evergreen/run-mock-server-tests.sh @@ -21,7 +21,7 @@ DIR=$(dirname $0) case "$OS" in cygwin*) - test-libmongoc.exe $TEST_ARGS + ./src/libmongoc/test-libmongoc.exe $TEST_ARGS ;; *) @@ -29,7 +29,7 @@ case "$OS" in if [ "$VALGRIND" = "on" ]; then . $DIR/valgrind.sh - run_valgrind ./test-libmongoc --no-fork $TEST_ARGS + run_valgrind ./src/libmongoc/test-libmongoc --no-fork $TEST_ARGS else ./test-libmongoc --no-fork $TEST_ARGS fi diff --git a/.evergreen/run-tests-bson.sh b/.evergreen/run-tests-bson.sh index 6dcaa2e48925f481feffb505bb9a6ecd416ccb9d..7083a26b63e4278c87c1d4eabeb677a7a2be2073 100755 --- a/.evergreen/run-tests-bson.sh +++ b/.evergreen/run-tests-bson.sh @@ -36,7 +36,7 @@ case "$OS" in if [ "$VALGRIND" = "on" ]; then DIR=$(dirname $0) . $DIR/valgrind.sh - run_valgrind ./test-libmongoc --no-fork $TEST_ARGS + run_valgrind ./src/libmongoc/test-libmongoc --no-fork $TEST_ARGS else ./.libs/test-libbson "--no-fork $TEST_ARGS" fi diff --git a/.evergreen/run-tests-mingw.bat b/.evergreen/run-tests-mingw.bat index 5ce2c66c3f9d69f4abe49be03d297f29e50850c4..8e100e944956ca0c23613b2bbc1b807ab9e76a03 100644 --- a/.evergreen/run-tests-mingw.bat +++ b/.evergreen/run-tests-mingw.bat @@ -14,5 +14,5 @@ md C:\mongo-c-driver\bin copy /Y libmongoc-1.0.dll C:\mongo-c-driver\bin copy /Y src\libbson\libbson-1.0.dll C:\mongo-c-driver\bin -test-libmongoc.exe --no-fork -d -F test-results.json +.\src\libmongoc\test-libmongoc.exe --no-fork -d -F test-results.json rmdir /Q /S C:\mongo-c-driver diff --git a/.evergreen/run-tests.sh b/.evergreen/run-tests.sh index a9f2c8476fb769acfe0e5eadd73de2b6cc25ce05..a8aaa00bf6c6bcccbf4bfd578a979351d4ce467c 100755 --- a/.evergreen/run-tests.sh +++ b/.evergreen/run-tests.sh @@ -58,7 +58,7 @@ if [ "$CC" = "mingw" ]; then echo "ERROR - DNS tests not implemented for MinGW yet" exit 1 fi - chmod +x test-libmongoc.exe + chmod +x ./src/libmongoc/test-libmongoc.exe cmd.exe /c .evergreen\\run-tests-mingw.bat exit 0 fi @@ -69,7 +69,7 @@ DIR=$(dirname $0) case "$OS" in cygwin*) - test-libmongoc.exe $TEST_ARGS + ./src/libmongoc/test-libmongoc.exe $TEST_ARGS ;; *) @@ -77,9 +77,9 @@ case "$OS" in if [ "$VALGRIND" = "on" ]; then . $DIR/valgrind.sh - run_valgrind ./test-libmongoc --no-fork $TEST_ARGS + run_valgrind ./src/libmongoc/test-libmongoc --no-fork $TEST_ARGS else - ./test-libmongoc --no-fork $TEST_ARGS + ./src/libmongoc/test-libmongoc --no-fork $TEST_ARGS fi ;; diff --git a/.evergreen/set-path.sh b/.evergreen/set-path.sh index a3785e554c4691665c7d3bcdbb1b1a099b68c7a6..9c550fc5cae62f106696f08c4c2626879e2b1157 100644 --- a/.evergreen/set-path.sh +++ b/.evergreen/set-path.sh @@ -12,11 +12,11 @@ set_path () ;; darwin) - export DYLD_LIBRARY_PATH=".:install-dir/lib:src/libbson:$EXTRA_LIB_PATH:$DYLD_LIBRARY_PATH" + export DYLD_LIBRARY_PATH=".:install-dir/lib:src/libbson:src/libmongoc:$EXTRA_LIB_PATH:$DYLD_LIBRARY_PATH" ;; *) - export LD_LIBRARY_PATH=".:install-dir/lib:src/libbson:$EXTRA_LIB_PATH:$LD_LIBRARY_PATH" + export LD_LIBRARY_PATH=".:install-dir/lib:src/libbson:src/libmongoc:$EXTRA_LIB_PATH:$LD_LIBRARY_PATH" ;; esac } diff --git a/CMakeLists.txt b/CMakeLists.txt index 32e74a49443938c1fe0aff21f88a1f7cc099c3f5..82ea07e5d0eb7bcb3d9ecd9ec8dd86186d3fa7e4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -33,7 +33,8 @@ option (ENABLE_CRYPTO_SYSTEM_PROFILE "Use system crypto profile (OpenSSL only)" option (ENABLE_TRACING "Turn on verbose debug output" OFF) option (ENABLE_COVERAGE "Turn on compile options for lcov" OFF) set (ENABLE_SHM_COUNTERS AUTO CACHE STRING "Enable memory performance counters that use shared memory on Linux. Set to ON/AUTO/OFF, default AUTO.") -set (ENABLE_BSON AUTO CACHE STRING "Where to find libbson. Set to BUNDLED/SYSTEM/AUTO/ONLY, default AUTO.") +set (ENABLE_MONGOC ON CACHE STRING "Whether to build libmongoc. Set to ON/OFF, default ON.") +set (ENABLE_BSON AUTO CACHE STRING "Whether to build libbson. Set to ON/AUTO/OFF, default AUTO.") set (ENABLE_SNAPPY AUTO CACHE STRING "Enable snappy support. Set to ON/AUTO/OFF, default AUTO.") set (ENABLE_ZLIB AUTO CACHE STRING "Enable zlib support") option (ENABLE_MAN_PAGES "Build MongoDB C Driver manual pages." OFF) @@ -48,7 +49,7 @@ option (ENABLE_RDTSCP OFF ) -project (libmongoc C) +project (mongo-c-driver C) set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} @@ -61,13 +62,8 @@ include (GNUInstallDirs) # Set MONGOC_MAJOR_VERSION, MONGOC_MINOR_VERSION, etc. include (LoadVersion) -LoadVersion (${PROJECT_SOURCE_DIR}/VERSION_CURRENT MONGOC) -LoadVersion (${PROJECT_SOURCE_DIR}/VERSION_RELEASED MONGOC_RELEASED) - -message ("libmongoc version (from VERSION_CURRENT file): ${MONGOC_VERSION}") -if (NOT ${MONGOC_VERSION} STREQUAL ${MONGOC_RELEASED_VERSION}) - message ("libmongoc previous release (from VERSION_RELEASED file): ${MONGOC_RELEASED_VERSION}") -endif () +LoadVersion (${PROJECT_SOURCE_DIR}/src/libmongoc/VERSION_CURRENT MONGOC) +LoadVersion (${PROJECT_SOURCE_DIR}/src/libmongoc/VERSION_RELEASED MONGOC_RELEASED) include (MaintainerFlags) @@ -87,8 +83,16 @@ else () set (MONGOC_ENABLE_RDTSCP 0) endif () -if (NOT ENABLE_BSON MATCHES "SYSTEM|AUTO|BUNDLED|ONLY") - message (FATAL_ERROR "ENABLE_BSON option must be SYSTEM, BUNDLED, or AUTO") +if (NOT ENABLE_MONGOC MATCHES "ON|OFF") + message (FATAL_ERROR "ENABLE_MONGOC option must be ON or OFF") +endif () + +if (NOT ENABLE_BSON MATCHES "ON|AUTO|OFF|SYSTEM|BUNDLED") + message (FATAL_ERROR "ENABLE_BSON option must be ON, AUTO, or OFF") +endif () + +if (ENABLE_MONGOC STREQUAL OFF AND ENABLE_BSON MATCHES "OFF|SYSTEM") + message (FATAL_ERROR "At least one of ENABLE_BSON and ENABLE_MONGOC must be ON") endif () if (NOT ENABLE_BSON STREQUAL BUNDLED) @@ -152,7 +156,7 @@ if (NOT BSON_LIBRARIES) endif () # This allows skipping all the non-bson components -if (ENABLE_BSON STREQUAL ONLY) +if (ENABLE_MONGOC STREQUAL OFF OR ENABLE_BSON STREQUAL ONLY) return () endif () @@ -165,285 +169,20 @@ if (NOT ENABLE_SSL MATCHES "DARWIN|WINDOWS|OPENSSL|LIBRESSL|AUTO|OFF") "ENABLE_SSL option must be DARWIN, WINDOWS, OPENSSL, LIBRESSL, AUTO, or OFF") endif () -if (NOT ENABLE_SSL STREQUAL OFF) - # Try OpenSSL automatically everywhere but Mac and Windows. - if (ENABLE_SSL STREQUAL "OPENSSL" - OR (NOT APPLE AND NOT WIN32 AND ENABLE_SSL STREQUAL "AUTO")) - # Sets OPENSSL_FOUND on success. - include (FindOpenSSL) - endif () - - if (ENABLE_SSL STREQUAL LIBRESSL) - include (FindPkgConfig) - message ("-- Searching for LibreSSL/libtls") - pkg_check_modules (LIBRESSL libtls) - if (LIBRESSL_FOUND) - message ("-- Found ${LIBRESSL_LIBRARIES}") - set (SSL_LIBRARIES ${LIBRESSL_LIBRARIES}) - include_directories ("${LIBRESSL_INCLUDE_DIRS}") - link_directories ("${LIBRESSL_LIBRARY_DIRS}") - set (LIBRESSL 1) - else () - message ("-- Not found") - endif () - endif () - - if (ENABLE_SSL STREQUAL DARWIN OR (APPLE AND ENABLE_SSL STREQUAL "AUTO")) - if (APPLE) - set (SECURE_TRANSPORT 1) - else () - message (FATAL_ERROR "ENABLE_SSL=DARWIN only supported on Mac OS X") - endif () - endif () - - if (ENABLE_SSL STREQUAL WINDOWS OR (WIN32 AND ENABLE_SSL STREQUAL "AUTO")) - if (WIN32) - set (SECURE_CHANNEL 1) - else () - message (FATAL_ERROR "ENABLE_SSL=WINDOWS only supported on Windows") - endif () - endif () - - if (NOT OPENSSL_FOUND AND NOT SECURE_TRANSPORT AND NOT SECURE_CHANNEL AND NOT LIBRESSL) - if (ENABLE_SSL STREQUAL AUTO) - set (ENABLE_SSL OFF) - else () - message (FATAL_ERROR "No SSL library found") - endif () - endif () -endif () - -# Defaults. -set (MONGOC_ENABLE_SSL 0) -set (MONGOC_ENABLE_SSL_OPENSSL 0) -set (MONGOC_HAVE_ASN1_STRING_GET0_DATA 0) -set (MONGOC_ENABLE_SSL_LIBRESSL 0) -set (MONGOC_ENABLE_SSL_SECURE_TRANSPORT 0) -set (MONGOC_ENABLE_SSL_SECURE_CHANNEL 0) - -set (MONGOC_ENABLE_CRYPTO 0) -set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 0) -set (MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO 0) -set (MONGOC_ENABLE_CRYPTO_CNG 0) - -set (MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE 0) - -set (MONGOC_ENABLE_COMPRESSION 0) -set (MONGOC_ENABLE_COMPRESSION_SNAPPY 0) -set (MONGOC_ENABLE_COMPRESSION_ZLIB 0) - -if (OPENSSL_FOUND) - if (WIN32 AND OPENSSL_VERSION GREATER 1.1 AND NOT - ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.7) - message (FATAL_ERROR "Building against OpenSSL 1.1.0 and later requires CMake 3.7 or later (hint:" - "You can also compile against Windows Secure Transport with -DENABLE_SSL=WINDOWS") - endif () - if (APPLE AND NOT OPENSSL_ROOT_DIR) - message (WARNING "Building with OpenSSL but OPENSSL_ROOT_DIR not defined. If build fails to link" - " to OpenSSL, define OPENSSL_ROOT_DIR as the path to the OpenSSL installation directory.") - endif () - include (CheckLibraryExists) - # Check for newer OpenSSL string function. - check_library_exists (ssl - ASN1_STRING_get0_data "openssl/asn1.h" HAVE_ASN1_STRING_GET0_DATA - ) - if (HAVE_ASN1_STRING_GET0_DATA) - set (MONGOC_HAVE_ASN1_STRING_GET0_DATA 1) - endif () - set (MONGOC_ENABLE_SSL 1) - set (MONGOC_ENABLE_SSL_OPENSSL 1) - set (MONGOC_ENABLE_CRYPTO 1) - set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 1) -elseif (SECURE_TRANSPORT) - set (MONGOC_ENABLE_SSL 1) - set (MONGOC_ENABLE_SSL_SECURE_TRANSPORT 1) - set (MONGOC_ENABLE_CRYPTO 1) - set (MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO 1) -elseif (SECURE_CHANNEL) - set (MONGOC_ENABLE_SSL 1) - set (MONGOC_ENABLE_SSL_SECURE_CHANNEL 1) - set (MONGOC_ENABLE_CRYPTO 1) - set (MONGOC_ENABLE_CRYPTO_CNG 1) -elseif (LIBRESSL) - set (MONGOC_ENABLE_SSL 1) - set (MONGOC_ENABLE_SSL_LIBRESSL 1) - set (MONGOC_ENABLE_CRYPTO 1) - set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 1) -endif () - -if (ENABLE_CRYPTO_SYSTEM_PROFILE) - if (OPENSSL_FOUND) - set (MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE 1) - else () - message (FATAL_ERROR "ENABLE_CRYPTO_SYSTEM_PROFILE only available with OpenSSL") - endif () -endif () - -if (NOT ENABLE_SASL MATCHES "CYRUS|GSSAPI|SSPI|AUTO|OFF") - message (FATAL_ERROR - "ENABLE_SASL option must be CYRUS, GSSAPI, SSPI, AUTO, or OFF") -endif () - -# Defaults. -set (MONGOC_ENABLE_SASL 0) -set (MONGOC_ENABLE_SASL_CYRUS 0) -set (MONGOC_ENABLE_SASL_GSSAPI 0) -set (MONGOC_ENABLE_SASL_SSPI 0) -set (MONGOC_HAVE_SASL_CLIENT_DONE 0) - -if (NOT ENABLE_SASL STREQUAL OFF) - if (ENABLE_SASL MATCHES "AUTO|CYRUS") - # Sets SASL_LIBRARIES. - include (FindSASL2) - endif () - - if (SASL_FOUND) - set (MONGOC_ENABLE_SASL 1) - set (MONGOC_ENABLE_SASL_CYRUS 1) - elseif ( (ENABLE_SASL MATCHES "SSPI|AUTO") AND WIN32) - set (MONGOC_ENABLE_SASL 1) - set (MONGOC_ENABLE_SASL_SSPI 1) - elseif ( (ENABLE_SASL MATCHES "GSSAPI|AUTO") AND DARWIN) - set (MONGOC_ENABLE_SASL 1) - set (MONGOC_ENABLE_SASL_GSSAPI 1) - endif () -else () - set (MONGOC_ENABLE_SASL 0) -endif () - - -if (ENABLE_AUTOMATIC_INIT_AND_CLEANUP) - set (MONGOC_NO_AUTOMATIC_GLOBALS 0) -else () - set (MONGOC_NO_AUTOMATIC_GLOBALS 1) -endif () - -include (CheckTypeSize) -if (WIN32) - SET (CMAKE_EXTRA_INCLUDE_FILES "ws2tcpip.h") -else () - SET (CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h") -endif () -CHECK_TYPE_SIZE (socklen_t HAVE_SOCKLEN) -SET (CMAKE_EXTRA_INCLUDE_FILES) - -if (HAVE_SOCKLEN) - set (MONGOC_HAVE_SOCKLEN 1) - set (MONGOC_SOCKET_ARG3 "socklen_t") -else () - set (MONGOC_HAVE_SOCKLEN 0) - set (MONGOC_SOCKET_ARG3 "int") -endif () - -include (FindResSearch) -include (CheckSchedGetCPU) - -function (mongoc_get_accept_args ARG2 ARG3) - SET (VAR 0) - foreach (ARG2_VAL "struct sockaddr" "void") - foreach (ARG3_VAL "socklen_t" "size_t" "int") - - MATH (EXPR VAR "${VAR}+1") - - FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c - "#include - #include - - int main () - { - int a = 0; - ${ARG2_VAL} *b = 0; - ${ARG3_VAL} *c = 0; - accept (a, b, c); - return 0; - } - ") - - TRY_COMPILE (RES ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c CMAKE_FLAGS - "-Werror -DCMAKE_CXX_LINK_EXECUTABLE='echo not linking now...'" OUTPUT_VARIABLE LOG2) - - if (RES) - message ( - STATUS - "Detected parameters: accept (int, ${ARG2_VAL} *, ${ARG3_VAL} *)") - - set (${ARG2} ${ARG2_VAL} PARENT_SCOPE) - set (${ARG3} ${ARG3_VAL} PARENT_SCOPE) - return () - endif () - - endforeach () - endforeach () - -endfunction () - -# Reasonable defaults. -set (MONGOC_SOCKET_ARG2 "struct sockaddr") -set (MONGOC_SOCKET_ARG3 "socklen_t") - -if (NOT WIN32) - mongoc_get_accept_args (MONGOC_SOCKET_ARG2 MONGOC_SOCKET_ARG3) -endif () - set (SOURCE_DIR "${PROJECT_SOURCE_DIR}/") -set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/build/cmake) - -set (SOURCE_DIR "${PROJECT_SOURCE_DIR}/") - -set (MONGOC_API_VERSION 1.0) +if (ENABLE_MONGOC STREQUAL ON) + add_subdirectory (src/libmongoc) +endif () set (CPACK_RESOURCE_FILE_LICENSE "${SOURCE_DIR}/COPYING") -set (CPACK_PACKAGE_VERSION_MAJOR ${MONGOC_MAJOR_VERSION}) -set (CPACK_PACKAGE_VERSION_MINOR ${MONGOC_MINOR_VERSION}) include (CPack) -set (MONGOC_CC ${CMAKE_C_COMPILER}) -set (MONGOC_USER_SET_CFLAGS ${CMAKE_C_FLAGS}) -set (MONGOC_USER_SET_LDFLAGS ${CMAKE_EXE_LINKER_FLAGS}) - -set (MONGOC_TRACE 0) - -if (ENABLE_TRACING) - set (MONGOC_TRACE 1) -endif () - if (ENABLE_COVERAGE) set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g --coverage") endif () -set (MONGOC_ENABLE_SHM_COUNTERS 0) - -if (NOT ENABLE_SHM_COUNTERS MATCHES "ON|OFF|AUTO") - message (FATAL_ERROR "ENABLE_SHM_COUNTERS option must be ON, OFF, or AUTO") -endif () - -if (ENABLE_SHM_COUNTERS STREQUAL "AUTO") - if (UNIX AND NOT APPLE) - set (ENABLE_SHM_COUNTERS ON) - endif () -endif () - -if (ENABLE_SHM_COUNTERS STREQUAL "ON") - if (APPLE OR NOT UNIX) - message ( - FATAL_ERROR - "Shared memory performance counters not supported on Mac or Windows") - endif () - set (MONGOC_ENABLE_SHM_COUNTERS 1) -endif () - -set (MONGOC_INTERNAL_INCLUDE_DIRS "") - -# Sets SNAPPY_LIBRARIES and SNAPPY_INCLUDE_DIRS. -include (FindSnappy) -if (SNAPPY_INCLUDE_DIRS) - set (MONGOC_ENABLE_COMPRESSION 1) - include_directories ("${SNAPPY_INCLUDE_DIRS}") -endif () - if (NOT ENABLE_ZLIB MATCHES "SYSTEM|AUTO|BUNDLED|OFF") message (FATAL_ERROR "ENABLE_ZLIB option must be SYSTEM, BUNDLED, AUTO, or OFF" @@ -493,7 +232,7 @@ if (ENABLE_ZLIB MATCHES "SYSTEM|AUTO") location by setting ZLIB_ROOT, or else set ENABLE_ZLIB=BUNDLED or \ set ENABLE_ZLIB=OFF." ) - endif() + endif () set (ZLIB_LIBRARIES "") endif () endif () @@ -522,20 +261,6 @@ else () message (STATUS "Disabling zlib compression") endif () -configure_file ( - "${SOURCE_DIR}/src/mongoc/mongoc-config.h.in" - "${PROJECT_BINARY_DIR}/src/mongoc/mongoc-config.h" -) - -configure_file ( - "${SOURCE_DIR}/src/mongoc/mongoc-version.h.in" - "${PROJECT_BINARY_DIR}/src/mongoc/mongoc-version.h" -) - -include_directories ("${PROJECT_BINARY_DIR}/src/mongoc") -include_directories ("${SOURCE_DIR}/src/mongoc") -include_directories ("${PROJECT_SOURCE_DIR}/src/common") - if (UNIX AND NOT APPLE AND NOT ANDROID) set (SHM_LIB -lrt) endif () @@ -572,532 +297,15 @@ if (APPLE) add_definitions (-Wno-deprecated-declarations) endif () -set (SOURCES ${SOURCES} - ${SOURCE_DIR}/src/mongoc/mongoc-apm.c - ${SOURCE_DIR}/src/mongoc/mongoc-array.c - ${SOURCE_DIR}/src/mongoc/mongoc-async.c - ${SOURCE_DIR}/src/mongoc/mongoc-async-cmd.c - ${SOURCE_DIR}/src/mongoc/mongoc-buffer.c - ${SOURCE_DIR}/src/mongoc/mongoc-bulk-operation.c - ${SOURCE_DIR}/src/mongoc/mongoc-change-stream.c - ${SOURCE_DIR}/src/mongoc/mongoc-client.c - ${SOURCE_DIR}/src/mongoc/mongoc-client-pool.c - ${SOURCE_DIR}/src/mongoc/mongoc-cluster.c - ${SOURCE_DIR}/src/mongoc/mongoc-collection.c - ${SOURCE_DIR}/src/mongoc/mongoc-compression.c - ${SOURCE_DIR}/src/mongoc/mongoc-counters.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-array.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-cmd.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-cmd-deprecated.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-find.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-find-cmd.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-find-opquery.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-legacy.c - ${SOURCE_DIR}/src/mongoc/mongoc-cursor-array.c - ${SOURCE_DIR}/src/mongoc/mongoc-database.c - ${SOURCE_DIR}/src/mongoc/mongoc-find-and-modify.c - ${SOURCE_DIR}/src/mongoc/mongoc-init.c - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs.c - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file.c - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.c - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-page.c - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.c - ${SOURCE_DIR}/src/mongoc/mongoc-handshake.c - ${SOURCE_DIR}/src/mongoc/mongoc-host-list.c - ${SOURCE_DIR}/src/mongoc/mongoc-index.c - ${SOURCE_DIR}/src/mongoc/mongoc-init.c - ${SOURCE_DIR}/src/mongoc/mongoc-list.c - ${SOURCE_DIR}/src/mongoc/mongoc-linux-distro-scanner.c - ${SOURCE_DIR}/src/mongoc/mongoc-log.c - ${SOURCE_DIR}/src/mongoc/mongoc-matcher.c - ${SOURCE_DIR}/src/mongoc/mongoc-matcher-op.c - ${SOURCE_DIR}/src/mongoc/mongoc-memcmp.c - ${SOURCE_DIR}/src/mongoc/mongoc-cmd.c - ${SOURCE_DIR}/src/mongoc/mongoc-opts.c - ${SOURCE_DIR}/src/mongoc/mongoc-opts-helpers.c - ${SOURCE_DIR}/src/mongoc/mongoc-queue.c - ${SOURCE_DIR}/src/mongoc/mongoc-read-concern.c - ${SOURCE_DIR}/src/mongoc/mongoc-read-prefs.c - ${SOURCE_DIR}/src/mongoc/mongoc-rpc.c - ${SOURCE_DIR}/src/mongoc/mongoc-server-description.c - ${SOURCE_DIR}/src/mongoc/mongoc-server-stream.c - ${SOURCE_DIR}/src/mongoc/mongoc-client-session.c - ${SOURCE_DIR}/src/mongoc/mongoc-set.c - ${SOURCE_DIR}/src/mongoc/mongoc-socket.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-file.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-gridfs.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-socket.c - ${SOURCE_DIR}/src/mongoc/mongoc-topology.c - ${SOURCE_DIR}/src/mongoc/mongoc-topology-description.c - ${SOURCE_DIR}/src/mongoc/mongoc-topology-description-apm.c - ${SOURCE_DIR}/src/mongoc/mongoc-topology-scanner.c - ${SOURCE_DIR}/src/mongoc/mongoc-uri.c - ${SOURCE_DIR}/src/mongoc/mongoc-util.c - ${SOURCE_DIR}/src/mongoc/mongoc-version-functions.c - ${SOURCE_DIR}/src/mongoc/mongoc-write-command.c - ${SOURCE_DIR}/src/mongoc/mongoc-write-command-legacy.c - ${SOURCE_DIR}/src/mongoc/mongoc-write-concern.c - ${PROJECT_SOURCE_DIR}/src/common/common-b64.c -) - -set (HEADERS - ${PROJECT_BINARY_DIR}/src/mongoc/mongoc-config.h - ${PROJECT_BINARY_DIR}/src/mongoc/mongoc-version.h - ${SOURCE_DIR}/src/mongoc/mongoc.h - ${SOURCE_DIR}/src/mongoc/mongoc-apm.h - ${SOURCE_DIR}/src/mongoc/mongoc-bulk-operation.h - ${SOURCE_DIR}/src/mongoc/mongoc-change-stream.h - ${SOURCE_DIR}/src/mongoc/mongoc-client.h - ${SOURCE_DIR}/src/mongoc/mongoc-client-pool.h - ${SOURCE_DIR}/src/mongoc/mongoc-collection.h - ${SOURCE_DIR}/src/mongoc/mongoc-cursor.h - ${SOURCE_DIR}/src/mongoc/mongoc-database.h - ${SOURCE_DIR}/src/mongoc/mongoc-error.h - ${SOURCE_DIR}/src/mongoc/mongoc-flags.h - ${SOURCE_DIR}/src/mongoc/mongoc-find-and-modify.h - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs.h - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file.h - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-page.h - ${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.h - ${SOURCE_DIR}/src/mongoc/mongoc-handshake.h - ${SOURCE_DIR}/src/mongoc/mongoc-host-list.h - ${SOURCE_DIR}/src/mongoc/mongoc-init.h - ${SOURCE_DIR}/src/mongoc/mongoc-index.h - ${SOURCE_DIR}/src/mongoc/mongoc-iovec.h - ${SOURCE_DIR}/src/mongoc/mongoc-log.h - ${SOURCE_DIR}/src/mongoc/mongoc-macros.h - ${SOURCE_DIR}/src/mongoc/mongoc-matcher.h - ${SOURCE_DIR}/src/mongoc/mongoc-opcode.h - ${SOURCE_DIR}/src/mongoc/mongoc-read-concern.h - ${SOURCE_DIR}/src/mongoc/mongoc-read-prefs.h - ${SOURCE_DIR}/src/mongoc/mongoc-server-description.h - ${SOURCE_DIR}/src/mongoc/mongoc-client-session.h - ${SOURCE_DIR}/src/mongoc/mongoc-socket.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-libressl.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream-file.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream-gridfs.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream-socket.h - ${SOURCE_DIR}/src/mongoc/mongoc-topology-description.h - ${SOURCE_DIR}/src/mongoc/mongoc-uri.h - ${SOURCE_DIR}/src/mongoc/mongoc-version-functions.h - ${SOURCE_DIR}/src/mongoc/mongoc-write-concern.h - ${SOURCE_DIR}/src/mongoc/mongoc-rand.h - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls.h - ${SOURCE_DIR}/src/mongoc/mongoc-ssl.h -) - -if (NOT ENABLE_SSL STREQUAL OFF) - set (SOURCES ${SOURCES} - ${SOURCE_DIR}/src/mongoc/mongoc-crypto.c - ${SOURCE_DIR}/src/mongoc/mongoc-scram.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls.c - ${SOURCE_DIR}/src/mongoc/mongoc-ssl.c - ) - - if (OPENSSL_FOUND) - message (STATUS "Compiling against OpenSSL") - set (SOURCES ${SOURCES} - ${SOURCE_DIR}/src/mongoc/mongoc-crypto-openssl.c - ${SOURCE_DIR}/src/mongoc/mongoc-rand-openssl.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl-bio.c - ${SOURCE_DIR}/src/mongoc/mongoc-openssl.c - ) - set (SSL_LIBRARIES ${OPENSSL_LIBRARIES}) - include_directories (${OPENSSL_INCLUDE_DIR}) - if (WIN32) - set (SSL_LIBRARIES ${SSL_LIBRARIES} crypt32.lib) - endif () - elseif (SECURE_TRANSPORT) - message (STATUS "Compiling against Secure Transport") - set (SOURCES ${SOURCES} - ${SOURCE_DIR}/src/mongoc/mongoc-crypto-common-crypto.c - ${SOURCE_DIR}/src/mongoc/mongoc-rand-common-crypto.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-secure-transport.c - ${SOURCE_DIR}/src/mongoc/mongoc-secure-transport.c - ) - set (SSL_LIBRARIES "-framework CoreFoundation -framework Security") - elseif (SECURE_CHANNEL) - message (STATUS "Compiling against Secure Channel") - set (SOURCES ${SOURCES} - ${SOURCE_DIR}/src/mongoc/mongoc-crypto-cng.c - ${SOURCE_DIR}/src/mongoc/mongoc-rand-cng.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-secure-channel.c - ${SOURCE_DIR}/src/mongoc/mongoc-secure-channel.c - ) - set (SSL_LIBRARIES secur32.lib crypt32.lib Bcrypt.lib) - elseif (LIBRESSL) - message (STATUS "Compiling against LibreSSL") - set (SOURCES ${SOURCES} - ${SOURCE_DIR}/src/mongoc/mongoc-crypto-openssl.c - ${SOURCE_DIR}/src/mongoc/mongoc-rand-openssl.c - ${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-libressl.c - ${SOURCE_DIR}/src/mongoc/mongoc-libressl.c - ) - set (SSL_LIBRARIES -ltls -lcrypto) - endif () -else () - message (STATUS "SSL disabled") -endif () # ENABLE_SSL - - -if (MONGOC_ENABLE_SASL) - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-sasl.c) - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-sasl.c) - if (MONGOC_ENABLE_SASL_CYRUS) - message (STATUS "Compiling against Cyrus SASL") - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-cyrus.c) - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cyrus.c) - include_directories (${SASL_INCLUDE_DIRS}) - elseif (MONGOC_ENABLE_SASL_SSPI) - message (STATUS "Compiling against Windows SSPI") - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-sspi.c) - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-sspi.c) - set (SASL_LIBRARIES secur32.lib crypt32.lib Shlwapi.lib) - elseif (MONGOC_ENABLE_SASL_GSSAPI) - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-gssapi.c) - set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-gssapi.c) - if (APPLE) - message (STATUS "Compiling against macOS GSS") - set (LIBRARIES ${LIBRARIES} -framework GSS) - else () - message (FATAL_ERROR "gssapi missing krb5-config support in cmake") - endif () - endif () -else () - message (STATUS "SASL disabled") -endif () - - -set (THREADS_PREFER_PTHREAD_FLAG 1) -find_package (Threads REQUIRED) -if (CMAKE_USE_PTHREADS_INIT) - set (THREAD_LIB ${CMAKE_THREAD_LIBS_INIT}) -endif () - -set (LIBRARIES - ${SASL_LIBRARIES} ${SSL_LIBRARIES} ${SHM_LIB} ${RESOLV_LIBRARIES} - ${SNAPPY_LIBRARIES} ${ZLIB_LIBRARIES} Threads::Threads -) - -if (WIN32) - set (LIBRARIES ${LIBRARIES} ws2_32) -endif () - -add_library (mongoc_shared SHARED ${SOURCES} ${HEADERS}) -set_target_properties (mongoc_shared PROPERTIES CMAKE_CXX_VISIBILITY_PRESET hidden) -target_link_libraries (mongoc_shared ${LIBRARIES} ${BSON_LIBRARIES}) -target_include_directories (mongoc_shared BEFORE PUBLIC ${BSON_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) -target_compile_definitions (mongoc_shared PUBLIC MONGOC_COMPILATION ${BSON_DEFINITIONS}) - -# CMake wants to make different symlinks than the Autotools, see -# https://cmake.org/pipermail/cmake/2007-September/016501.html -# This hack sets up standard symlink, libmongoc-1.0.so -> libmongoc-1.0.0.so -set_target_properties (mongoc_shared PROPERTIES VERSION 0 SOVERSION ${MONGOC_MAJOR_VERSION}) -set_target_properties (mongoc_shared PROPERTIES OUTPUT_NAME "mongoc-${MONGOC_API_VERSION}" PREFIX "lib") - -if (MONGOC_ENABLE_STATIC) - add_library (mongoc_static STATIC ${SOURCES} ${HEADERS}) - target_link_libraries (mongoc_static ${LIBRARIES} ${BSON_STATIC_LIBRARIES}) - target_include_directories (mongoc_static BEFORE PUBLIC ${BSON_STATIC_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) - target_compile_definitions (mongoc_static PUBLIC MONGOC_COMPILATION MONGOC_STATIC ${BSON_STATIC_DEFINITIONS}) - set_target_properties (mongoc_static PROPERTIES VERSION ${MONGOC_VERSION}) - set_target_properties (mongoc_static PROPERTIES OUTPUT_NAME "mongoc-static-${MONGOC_API_VERSION}") -endif () - -add_executable (mongoc-stat ${SOURCE_DIR}/src/tools/mongoc-stat.c) -target_link_libraries (mongoc-stat mongoc_shared) - -function (mongoc_add_test test use_shared) - if (ENABLE_TESTS) - add_executable (${test} ${ARGN}) - if (NOT MSVC) - # We've tests that test our deprecated api. MSVC 2013 will complain about invalid flag - set_source_files_properties (${ARGN} PROPERTIES COMPILE_FLAGS -Wno-deprecated-declarations) - endif () - target_include_directories (${test} PRIVATE ${SOURCE_DIR}/tests) - if (${use_shared}) - target_link_libraries (${test} mongoc_shared) - target_include_directories (${test} PRIVATE ${BSON_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) - else () - target_compile_definitions (${test} PUBLIC "MONGOC_COMPILATION") - target_link_libraries (${test} mongoc_static) - target_include_directories (${test} PRIVATE ${BSON_STATIC_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) - endif () - target_link_libraries (${test} ${RESOLV_LIBRARIES}) - if (WIN32) - target_link_libraries (${test} shlwapi) - else () - target_link_libraries (${test}) - endif () - endif () -endfunction () - -function (mongoc_add_example example use_shared) - if (ENABLE_EXAMPLES) - add_executable (${example} ${ARGN}) - if (${use_shared}) - target_link_libraries (${example} mongoc_shared) - else () - target_link_libraries (${example} mongoc_static) - endif () - if (WIN32) - target_link_libraries (${example} shlwapi) - endif () - set (EXAMPLES ${EXAMPLES} ${example}) - endif () -endfunction () - -set (test-libmongoc-sources - ${SOURCE_DIR}src/libbson/tests/corpus-test.c - ${SOURCE_DIR}src/libbson/tests/corpus-test.h - ${SOURCE_DIR}src/libbson/tests/test-atomic.c - ${SOURCE_DIR}src/libbson/tests/test-bson.c - ${SOURCE_DIR}src/libbson/tests/test-bson-corpus.c - ${SOURCE_DIR}src/libbson/tests/test-bson-error.c - ${SOURCE_DIR}src/libbson/tests/test-bson-version.c - ${SOURCE_DIR}src/libbson/tests/test-endian.c - ${SOURCE_DIR}src/libbson/tests/test-clock.c - ${SOURCE_DIR}src/libbson/tests/test-decimal128.c - ${SOURCE_DIR}src/libbson/tests/test-iso8601.c - ${SOURCE_DIR}src/libbson/tests/test-iter.c - ${SOURCE_DIR}src/libbson/tests/test-json.c - ${SOURCE_DIR}src/libbson/tests/test-oid.c - ${SOURCE_DIR}src/libbson/tests/test-reader.c - ${SOURCE_DIR}src/libbson/tests/test-string.c - ${SOURCE_DIR}src/libbson/tests/test-utf8.c - ${SOURCE_DIR}src/libbson/tests/test-value.c - ${SOURCE_DIR}src/libbson/tests/test-writer.c - ${SOURCE_DIR}src/libbson/tests/test-bcon-basic.c - ${SOURCE_DIR}src/libbson/tests/test-bcon-extract.c - ${SOURCE_DIR}/tests/debug-stream.c - ${SOURCE_DIR}/tests/json-test.c - ${SOURCE_DIR}/tests/json-test-monitoring.c - ${SOURCE_DIR}/tests/json-test-operations.c - ${SOURCE_DIR}/tests/mock_server/future.c - ${SOURCE_DIR}/tests/mock_server/future-functions.c - ${SOURCE_DIR}/tests/mock_server/future-value.c - ${SOURCE_DIR}/tests/mock_server/sync-queue.c - ${SOURCE_DIR}/tests/mock_server/mock-rs.c - ${SOURCE_DIR}/tests/mock_server/mock-server.c - ${SOURCE_DIR}/tests/mock_server/request.c - ${SOURCE_DIR}/tests/test-conveniences.c - ${SOURCE_DIR}/tests/test-libmongoc.c - ${SOURCE_DIR}/tests/test-happy-eyeballs.c - ${SOURCE_DIR}/tests/test-mongoc-array.c - ${SOURCE_DIR}/tests/test-mongoc-async.c - ${SOURCE_DIR}/tests/test-mongoc-buffer.c - ${SOURCE_DIR}/tests/test-mongoc-bulk.c - ${SOURCE_DIR}/tests/test-mongoc-change-stream.c - ${SOURCE_DIR}/tests/test-mongoc-client.c - ${SOURCE_DIR}/tests/test-mongoc-client-pool.c - ${SOURCE_DIR}/tests/test-mongoc-cluster.c - ${SOURCE_DIR}/tests/test-mongoc-collection.c - ${SOURCE_DIR}/tests/test-mongoc-collection-find.c - ${SOURCE_DIR}/tests/test-mongoc-collection-find-with-opts.c - ${SOURCE_DIR}/tests/test-mongoc-connection-uri.c - ${SOURCE_DIR}/tests/test-mongoc-command-monitoring.c - ${SOURCE_DIR}/tests/test-mongoc-counters.c - ${SOURCE_DIR}/tests/test-mongoc-cursor.c - ${SOURCE_DIR}/tests/test-mongoc-database.c - ${SOURCE_DIR}/tests/test-mongoc-error.c - ${SOURCE_DIR}/tests/test-mongoc-exhaust.c - ${SOURCE_DIR}/tests/test-mongoc-find-and-modify.c - ${SOURCE_DIR}/tests/test-mongoc-gridfs.c - ${SOURCE_DIR}/tests/test-mongoc-gridfs-file-page.c - ${SOURCE_DIR}/tests/test-mongoc-handshake.c - ${SOURCE_DIR}/tests/test-mongoc-linux-distro-scanner.c - ${SOURCE_DIR}/tests/test-mongoc-list.c - ${SOURCE_DIR}/tests/test-mongoc-log.c - ${SOURCE_DIR}/tests/test-mongoc-matcher.c - ${SOURCE_DIR}/tests/test-mongoc-max-staleness.c - ${SOURCE_DIR}/tests/test-mongoc-queue.c - ${SOURCE_DIR}/tests/test-mongoc-read-concern.c - ${SOURCE_DIR}/tests/test-mongoc-read-write-concern.c - ${SOURCE_DIR}/tests/test-mongoc-read-prefs.c - ${SOURCE_DIR}/tests/test-mongoc-retryable-writes.c - ${SOURCE_DIR}/tests/test-mongoc-rpc.c - ${SOURCE_DIR}/tests/test-mongoc-sample-commands.c - ${SOURCE_DIR}/tests/test-mongoc-scram.c - ${SOURCE_DIR}/tests/test-mongoc-sdam.c - ${SOURCE_DIR}/tests/test-mongoc-sdam-monitoring.c - ${SOURCE_DIR}/tests/test-mongoc-server-selection.c - ${SOURCE_DIR}/tests/test-mongoc-server-selection-errors.c - ${SOURCE_DIR}/tests/test-mongoc-client-session.c - ${SOURCE_DIR}/tests/test-mongoc-set.c - ${SOURCE_DIR}/tests/test-mongoc-socket.c - ${SOURCE_DIR}/tests/test-mongoc-dns.c - ${SOURCE_DIR}/tests/test-mongoc-stream.c - ${SOURCE_DIR}/tests/test-mongoc-thread.c - ${SOURCE_DIR}/tests/test-mongoc-topology.c - ${SOURCE_DIR}/tests/test-mongoc-topology-description.c - ${SOURCE_DIR}/tests/test-mongoc-topology-reconcile.c - ${SOURCE_DIR}/tests/test-mongoc-topology-scanner.c - ${SOURCE_DIR}/tests/test-mongoc-uri.c - ${SOURCE_DIR}/tests/test-mongoc-version.c - ${SOURCE_DIR}/tests/test-mongoc-usleep.c - ${SOURCE_DIR}/tests/test-mongoc-util.c - ${SOURCE_DIR}/tests/test-mongoc-write-commands.c - ${SOURCE_DIR}/tests/test-mongoc-write-concern.c - ${SOURCE_DIR}/tests/TestSuite.c -) - -if (MONGOC_ENABLE_SSL) - set (test-libmongoc-sources ${test-libmongoc-sources} - ${SOURCE_DIR}/tests/test-mongoc-x509.c - ${SOURCE_DIR}/tests/ssl-test.c - ${SOURCE_DIR}/tests/test-mongoc-stream-tls.c - ${SOURCE_DIR}/tests/test-mongoc-stream-tls-error.c) -endif () - -if (MONGOC_ENABLE_SASL_CYRUS) - set (test-libmongoc-sources ${test-libmongoc-sources} - ${SOURCE_DIR}/tests/test-mongoc-cyrus.c - ) -endif () - -mongoc_add_test (test-libmongoc FALSE ${test-libmongoc-sources}) -mongoc_add_test (test-mongoc-gssapi TRUE ${SOURCE_DIR}/tests/test-mongoc-gssapi.c) - -if (ENABLE_TESTS) - enable_testing () - add_test (NAME test-libmongoc - COMMAND test-libmongoc - WORKING_DIRECTORY ${SOURCE_DIR} - ) - - # "make test" doesn't compile tests, so we create "make check" which compiles - # and runs tests: https://gitlab.kitware.com/cmake/cmake/issues/8774 - add_custom_target (check COMMAND ${CMAKE_CTEST_COMMAND} -V - DEPENDS test-libmongoc - ) -endif () - -mongoc_add_example (example-gridfs TRUE ${SOURCE_DIR}/examples/example-gridfs.c) -mongoc_add_example ( - example-command-monitoring TRUE - ${SOURCE_DIR}/examples/example-command-monitoring.c) -mongoc_add_example ( - example-sdam-monitoring TRUE - ${SOURCE_DIR}/examples/example-sdam-monitoring.c) -mongoc_add_example (example-client TRUE ${SOURCE_DIR}/examples/example-client.c) -mongoc_add_example (example-command-with-opts TRUE ${SOURCE_DIR}/examples/example-command-with-opts.c) -mongoc_add_example (example-create-indexes TRUE ${SOURCE_DIR}/examples/example-create-indexes.c) -mongoc_add_example (example-scram TRUE ${SOURCE_DIR}/examples/example-scram.c) -mongoc_add_example (example-session TRUE ${SOURCE_DIR}/examples/example-session.c) -mongoc_add_example (mongoc-dump TRUE ${SOURCE_DIR}/examples/mongoc-dump.c) -mongoc_add_example (mongoc-ping TRUE ${SOURCE_DIR}/examples/mongoc-ping.c) -mongoc_add_example (mongoc-tail TRUE ${SOURCE_DIR}/examples/mongoc-tail.c) -mongoc_add_example (fam TRUE ${SOURCE_DIR}/examples/find_and_modify_with_opts/fam.c) -if (NOT WIN32 AND ENABLE_EXAMPLES) - mongoc_add_example (example-pool TRUE ${SOURCE_DIR}/examples/example-pool.c) - target_link_libraries (example-pool Threads::Threads) -endif () -mongoc_add_example (example-collection-watch TRUE ${SOURCE_DIR}/examples/example-collection-watch.c) -mongoc_add_example (example-update TRUE ${SOURCE_DIR}/examples/example-update.c) - -file (COPY ${SOURCE_DIR}/tests/binary DESTINATION ${PROJECT_BINARY_DIR}/tests) -file (COPY ${SOURCE_DIR}/tests/json DESTINATION ${PROJECT_BINARY_DIR}/tests) -file (COPY ${SOURCE_DIR}/tests/x509gen DESTINATION ${PROJECT_BINARY_DIR}/tests) -file (COPY ${SOURCE_DIR}/tests/release_files DESTINATION ${PROJECT_BINARY_DIR}/tests) - -install ( - TARGETS mongoc_shared ${EXAMPLES} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -) - -if (MONGOC_ENABLE_STATIC) - install ( - TARGETS mongoc_shared mongoc_static ${EXAMPLES} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - ) -endif () - -set (MONGOC_HEADER_INSTALL_DIR - "${CMAKE_INSTALL_INCLUDEDIR}/libmongoc-${MONGOC_API_VERSION}" -) - -install ( - FILES ${HEADERS} - DESTINATION "${MONGOC_HEADER_INSTALL_DIR}" -) - -# Define pkg-config files -set (VERSION "${MONGOC_VERSION}") -set (prefix "${CMAKE_INSTALL_PREFIX}") -set (libdir "\${prefix}/lib") - -foreach ( - FLAG - ${SASL_LIBRARIES} ${SSL_LIBRARIES} ${SHM_LIB} ${RESOLV_LIBRARIES} - ${THREAD_LIB} ${ZLIB_LIBRARIES} ${SNAPPY_LIBRARIES}) - - if (IS_ABSOLUTE "${FLAG}") - get_filename_component (FLAG_DIR "${FLAG}" DIRECTORY) - get_filename_component (FLAG_FILE "${FLAG}" NAME_WE) - STRING (REGEX REPLACE "^lib" "" FLAG_FILE "${FLAG_FILE}") - set (MONGOC_LIBRARIES "${MONGOC_LIBRARIES} -L${FLAG_DIR} -l${FLAG_FILE}") - elseif (FLAG MATCHES "^-.*") - # Flag starts with dash, add it as-is. - set (MONGOC_LIBRARIES "${MONGOC_LIBRARIES} ${FLAG}") - else () - # Flag doesn't start with dash, add it with a dash. - set (MONGOC_LIBRARIES "${MONGOC_LIBRARIES} -l${FLAG}") - endif () -endforeach () - -configure_file ( - ${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-1.0.pc.in - ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-1.0.pc -@ONLY) -install ( - FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-1.0.pc - DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig -) -if (MONGOC_ENABLE_STATIC) - configure_file ( - ${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-static-1.0.pc.in - ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-static-1.0.pc - @ONLY) - install ( - FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-static-1.0.pc - DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig - ) -endif () -# Deprecated alias for libmongoc-1.0.pc, see CDRIVER-2086. -if (MONGOC_ENABLE_SSL) - configure_file ( - ${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-ssl-1.0.pc.in - ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-ssl-1.0.pc - @ONLY) - install ( - FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-ssl-1.0.pc - DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig - ) -endif () - -include (build/cmake/MongoCPackage.cmake) if (ENABLE_MAN_PAGES STREQUAL ON OR ENABLE_HTML_DOCS STREQUAL ON) find_package (Sphinx REQUIRED) - add_subdirectory (doc) - add_custom_target (mongoc-doc + add_custom_target (doc ALL DEPENDS $<$:bson-doc> - $<$:mongoc-man> - $<$:mongoc-html> + $<$:bson-doc> + $<$:mongoc-doc> ) endif () @@ -1108,11 +316,10 @@ endif () add_subdirectory (build) # sub-directory 'doc' was already included above -add_subdirectory (examples) add_subdirectory (orchestration_configs) add_subdirectory (src) # 'src/libbson' was already included, so 'src' will not include it directly -add_subdirectory (tests) +# 'src/libmongoc' was already included, so 'src' will not include it directly set (PACKAGE_PREFIX "mongo-c-driver-${MONGOC_VERSION}") set (DIST_FILE "${PACKAGE_PREFIX}.tar.gz") @@ -1124,8 +331,6 @@ set (top_DIST_local NEWS README.rst THIRD_PARTY_NOTICES - VERSION_CURRENT - VERSION_RELEASED ) set_local_dist (top_DIST ${top_DIST_local}) @@ -1133,13 +338,10 @@ set_local_dist (top_DIST ${top_DIST_local}) set (ALL_DIST ${top_DIST} ${build_DIST} - ${doc_DIST} - ${examples_DIST} ${orchestration_configs_DIST} ${src_DIST} ${src_libbson_DIST} - ${tests_DIST} - ${src_common_DIST} + ${src_libmongoc_DIST} ) # Write a dist manifest @@ -1161,11 +363,11 @@ add_custom_command (OUTPUT ${DIST_FILE} ${ALL_DIST} ${dist_generated_depends} ) -if (ENABLE_BSON STREQUAL BUNDLED AND ENABLE_MAN_PAGES STREQUAL ON AND ENABLE_HTML_DOCS STREQUAL ON) +if (ENABLE_BSON MATCHES "ON|BUNDLED" AND ENABLE_MAN_PAGES STREQUAL ON AND ENABLE_HTML_DOCS STREQUAL ON) # Since our 'dist' implementation does not add top-level targets for every # file to be included, we declare a dependency on the 'mongo-doc' target so # that documentation is built before the distribution tarball is generated. - add_custom_target (dist DEPENDS mongoc-doc ${DIST_FILE}) + add_custom_target (dist DEPENDS doc ${DIST_FILE}) add_custom_target (distcheck DEPENDS dist COMMAND ${CMAKE_COMMAND} @@ -1178,7 +380,7 @@ if (ENABLE_BSON STREQUAL BUNDLED AND ENABLE_MAN_PAGES STREQUAL ON AND ENABLE_HTM ) else () string (CONCAT DISTERRMSG - "The dist and distcheck targets disabled. Set ENABLE_BSON=BUNDLED, " + "The dist and distcheck targets disabled. Set ENABLE_BSON=ON, " "ENABLE_MAN_PAGES=ON, and ENABLE_HTML_DOCS=ON to enable." ) diff --git a/README.rst b/README.rst index 96291a744973ab99d6a656a7442bf7a98c18367f..cefbc73dd18dd31953cf08b0bab91417efacbff9 100644 --- a/README.rst +++ b/README.rst @@ -5,10 +5,12 @@ mongo-c-driver About ===== -mongo-c-driver is a client library written in C for MongoDB. +mongo-c-driver is a project that includes two libraries: -mongo-c-driver depends on `Libbson `_. -Libbson will automatically be built if you do not have it installed on your system. +- libmongoc, a client library written in C for MongoDB. +- libbson, a library providing useful routines related to building, parsing, and iterating BSON documents. + +If libmongoc is not needed, it is possible to build and install only libbson. Documentation / Support / Feedback ================================== diff --git a/THIRD_PARTY_NOTICES b/THIRD_PARTY_NOTICES index 2df9d22667407288a3bfb1830b100b90664d8771..ef0b58cf59c2a9b5a07107d02462aac55015d702 100644 --- a/THIRD_PARTY_NOTICES +++ b/THIRD_PARTY_NOTICES @@ -1,36 +1,6 @@ The MongoDB C Driver uses third-party code distributed under different licenses. -License notice for mongoc-stream-tls-secure-channel.c -------------------------------------------------------------------------------- - -Curl License - -Significant portions of mongoc-stream-tls-secure-channel.c are from Curl. - -Copyright (C) 2012 - 2015, Marc Hoersken, -Copyright (C) 2012, Mark Salisbury, -Copyright (C) 2012 - 2015, Daniel Stenberg, , et al. - -All rights reserved. - -Permission to use, copy, modify, and distribute this software for any purpose -with or without fee is hereby granted, provided that the above copyright -notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN -NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE -OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall not -be used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization of the copyright holder. - - -License notice for common-b64.c +License notice for mongoc-b64.c ------------------------------------------------------------------------------- ISC License @@ -74,32 +44,6 @@ OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE, EVEN IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. -License notice for utlist.h -------------------------------------------------------------------------------- - -BSD 1-Clause License - -Copyright: 2007-2014, Troy D. Hanson http://troydhanson.github.com/uthash/ - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS -IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - License notice for taglist.py ------------------------------------------------------------------------------- diff --git a/build/cmake/CMakeLists.txt b/build/cmake/CMakeLists.txt index 647e6c8b7fc61e5ceb142f8002e0613d52710c37..56fa4fba4fddef560a53b398fd6e2e8e417e1463 100644 --- a/build/cmake/CMakeLists.txt +++ b/build/cmake/CMakeLists.txt @@ -12,17 +12,9 @@ set (build_cmake_MODULES SphinxBuild.cmake ) -set (build_cmake_PKGCONFIG - libmongoc-1.0-config-version.cmake.in - libmongoc-1.0-config.cmake.in - libmongoc-static-1.0-config-version.cmake.in - libmongoc-static-1.0-config.cmake.in -) - set_local_dist (build_cmake_DIST_local CMakeLists.txt ${build_cmake_MODULES} - ${build_cmake_PKGCONFIG} ) set (build_cmake_DIST diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt deleted file mode 100644 index 15684d72f92e003621d5c9b2db27934dd7cd0ced..0000000000000000000000000000000000000000 --- a/doc/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -include (SphinxBuild) - -if (ENABLE_HTML_DOCS) - sphinx_build_html (mongoc-html mongo-c-driver) -endif () - -if (ENABLE_MAN_PAGES) - sphinx_build_man (mongoc-man) -endif() - -add_subdirectory (html) -add_subdirectory (includes) -add_subdirectory (man) -add_subdirectory (static) - -file (GLOB doc_DIST_rsts RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.rst) - -extra_dist_generated (${doc_DIST_htmls} ${doc_DIST_mans}) - -set_local_dist (doc_DIST_local - CMakeLists.txt - ${doc_DIST_rsts} - conf.py - libbson-objects.inv -) - -set (doc_DIST - ${doc_DIST_local} - ${doc_html_DIST} - ${doc_includes_DIST} - ${doc_man_DIST} - ${doc_mongoc_DIST} - ${doc_mongoc-theme_DIST} - ${doc_static_DIST} - PARENT_SCOPE -) diff --git a/doc/includes/CMakeLists.txt b/doc/includes/CMakeLists.txt deleted file mode 100644 index 42972c915fc9f4fb525a55a1fbe9909365afdf1a..0000000000000000000000000000000000000000 --- a/doc/includes/CMakeLists.txt +++ /dev/null @@ -1,6 +0,0 @@ -file (GLOB doc_includes_DIST_txts RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.txt) - -set_dist_list (doc_includes_DIST - CMakeLists.txt - ${doc_includes_DIST_txts} -) diff --git a/doc/man/CMakeLists.txt b/doc/man/CMakeLists.txt deleted file mode 100644 index 8f68ce65f39a109efea6b78b16a003f94261803b..0000000000000000000000000000000000000000 --- a/doc/man/CMakeLists.txt +++ /dev/null @@ -1,6 +0,0 @@ -# The man distribution list was set by sphinx_build_man () -#extra_dist_generated (${doc_DIST_mans}) - -set_dist_list (doc_man_DIST - CMakeLists.txt -) diff --git a/doc/static/CMakeLists.txt b/doc/static/CMakeLists.txt deleted file mode 100644 index 1a46e8d3d6543aaf08dbcb7f345a9db6e2a09550..0000000000000000000000000000000000000000 --- a/doc/static/CMakeLists.txt +++ /dev/null @@ -1,6 +0,0 @@ -file (GLOB doc_static_DIST_pngs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.png) - -set_dist_list (doc_static_DIST - CMakeLists.txt - ${doc_static_DIST_pngs} -) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt deleted file mode 100644 index 65d13b3573aaa1784a11a149ef6e1a9550022703..0000000000000000000000000000000000000000 --- a/examples/CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ -file (GLOB_RECURSE examples_DIST_cs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.c) -file (GLOB_RECURSE examples_DIST_shs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.sh) - -set_dist_list (examples_DIST - CMakeLists.txt - cmake/find_package/CMakeLists.txt - cmake/find_package_static/CMakeLists.txt - ${examples_DIST_cs} - ${examples_DIST_shs} -) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 78fd5e03bed39dd5765c9a919d61e540ab8c2dea..60d45ef914a62147622b6050173bbfb578f8a8cd 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,6 +1,7 @@ # sub-directory 'libbson' was already included at the top-level #add_subdirectory (libbson) -add_subdirectory (mongoc) +# sub-directory 'libmongoc' was already included at the top-level +#add_subdirectory (libmongoc) add_subdirectory (tools) add_subdirectory (common) @@ -28,14 +29,10 @@ endforeach () set_local_dist (src_DIST_local CMakeLists.txt - libmongoc-1.0.pc.in - libmongoc-ssl-1.0.pc.in - libmongoc-static-1.0.pc.in ) set (src_DIST ${src_DIST_local} - ${src_mongoc_DIST} ${src_tools_DIST} ${src_zlib_DIST} ${src_common_DIST} diff --git a/src/libbson/CMakeLists.txt b/src/libbson/CMakeLists.txt index e1b729a5c0180c85685f632299df8007a8f48a06..bbdc818c15bbcd56029e5faa50a930aa1ed5dd3f 100644 --- a/src/libbson/CMakeLists.txt +++ b/src/libbson/CMakeLists.txt @@ -30,7 +30,6 @@ endif () set (BSON_API_VERSION 1.0) -set (CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/COPYING") set (CPACK_PACKAGE_VERSION_MAJOR ${BSON_MAJOR_VERSION}) set (CPACK_PACKAGE_VERSION_MINOR ${BSON_MINOR_VERSION}) @@ -370,9 +369,7 @@ add_subdirectory (tests) set_local_dist (src_libbson_DIST_local CMakeLists.txt - COPYING NEWS - README.rst THIRD_PARTY_NOTICES VERSION_CURRENT VERSION_RELEASED diff --git a/src/libbson/COPYING b/src/libbson/COPYING deleted file mode 100644 index d645695673349e3947e8e5ae42332d0ac3164cd7..0000000000000000000000000000000000000000 --- a/src/libbson/COPYING +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/src/libbson/README.rst b/src/libbson/README.rst deleted file mode 100644 index c5ce929b8490c517ac32a3c8131bece779097c66..0000000000000000000000000000000000000000 --- a/src/libbson/README.rst +++ /dev/null @@ -1,65 +0,0 @@ -======= -libbson -======= - -libbson is a library providing useful routines related to building, parsing, -and iterating BSON documents. - -Documentation / Support / Feedback -================================== - -The documentation is available at http://mongoc.org/. -For issues with, questions about, or feedback for libbson, please look into -our `support channels `_. Please -do not email any of the libbson developers directly with issues or -questions - you're more likely to get an answer on the `mongodb-user list`_ -on Google Groups. - -Bugs / Feature Requests -======================= - -Think you’ve found a bug? Want to see a new feature in libbson? Please open a -case in our issue management tool, JIRA: - -- `Create an account and login `_. -- Navigate to `the CDRIVER project `_. -- Click **Create Issue** - Please provide as much information as possible about the issue type and how to reproduce it. - -Bug reports in JIRA for all driver projects (i.e. CDRIVER, CSHARP, JAVA) and the -Core Server (i.e. SERVER) project are **public**. - -How To Ask For Help -------------------- - -If you are having difficulty building libbson after reading the below instructions, please email -the `mongodb-user list`_ to ask for help. Please include in your email all of the following -information: - -- The version of libbson you are trying to build (branch or tag). - - Examples: master branch, 1.2.1 tag -- Host OS, version, and architecture. - - Examples: Windows 8 64-bit x86, Ubuntu 12.04 32-bit x86, OS X Mavericks -- C Compiler and version. - - Examples: GCC 4.8.2, MSVC 2013 Express, clang 3.4, XCode 5 -- The output of ``./autogen.sh`` or ``./configure`` (depending on whether you are building from a - repository checkout or from a tarball). The output starting from "libbson was configured with - the following options" is sufficient. -- The text of the error you encountered. - -Failure to include the relevant information will result in additional round-trip -communications to ascertain the necessary details, delaying a useful response. - -.. _mongodb-user list: http://groups.google.com/group/mongodb-user - -Security Vulnerabilities ------------------------- - -If you’ve identified a security vulnerability libbson or any other -MongoDB project, please report it according to the `instructions here -`_. - -Installation -============ - -Detailed installation instructions are in the manual: -http://mongoc.org/libmongoc/current/installing.html diff --git a/src/libbson/doc/CMakeLists.txt b/src/libbson/doc/CMakeLists.txt index e5c929d593b4ebe6854b7262c820b39d937ac7f4..0d2729153f2ee5e7302acfe4cbc9c11432eb8cbb 100644 --- a/src/libbson/doc/CMakeLists.txt +++ b/src/libbson/doc/CMakeLists.txt @@ -8,7 +8,7 @@ endif () if (ENABLE_MAN_PAGES) sphinx_build_man (bson-man) set (src_libbson_doc_DIST_mans ${doc_DIST_mans}) -endif() +endif () add_subdirectory (html) add_subdirectory (man) diff --git a/src/libmongoc/CMakeLists.txt b/src/libmongoc/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..8045596e1e4232dc729cc9df0d4d7a6155a91c28 --- /dev/null +++ b/src/libmongoc/CMakeLists.txt @@ -0,0 +1,848 @@ +cmake_minimum_required (VERSION 3.1) + +project (libmongoc C) + +set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/../../build/cmake) + +include (InstallRequiredSystemLibraries) + +message ("libmongoc version (from VERSION_CURRENT file): ${MONGOC_VERSION}") +if (NOT ${MONGOC_VERSION} STREQUAL ${MONGOC_RELEASED_VERSION}) + message ("libmongoc previous release (from VERSION_RELEASED file): ${MONGOC_RELEASED_VERSION}") +endif () + +# Defaults. +set (MONGOC_ENABLE_SSL 0) +set (MONGOC_ENABLE_SSL_OPENSSL 0) +set (MONGOC_HAVE_ASN1_STRING_GET0_DATA 0) +set (MONGOC_ENABLE_SSL_LIBRESSL 0) +set (MONGOC_ENABLE_SSL_SECURE_TRANSPORT 0) +set (MONGOC_ENABLE_SSL_SECURE_CHANNEL 0) + +set (MONGOC_ENABLE_CRYPTO 0) +set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 0) +set (MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO 0) +set (MONGOC_ENABLE_CRYPTO_CNG 0) + +set (MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE 0) + +set (MONGOC_ENABLE_COMPRESSION 0) +set (MONGOC_ENABLE_COMPRESSION_SNAPPY 0) +set (MONGOC_ENABLE_COMPRESSION_ZLIB 0) + +if (NOT ENABLE_SSL STREQUAL OFF) + # Try OpenSSL automatically everywhere but Mac and Windows. + if (ENABLE_SSL STREQUAL "OPENSSL" + OR (NOT APPLE AND NOT WIN32 AND ENABLE_SSL STREQUAL "AUTO")) + # Sets OPENSSL_FOUND on success. + include (FindOpenSSL) + endif () + + if (ENABLE_SSL STREQUAL LIBRESSL) + include (FindPkgConfig) + message ("-- Searching for LibreSSL/libtls") + pkg_check_modules (LIBRESSL libtls) + if (LIBRESSL_FOUND) + message ("-- Found ${LIBRESSL_LIBRARIES}") + set (SSL_LIBRARIES ${LIBRESSL_LIBRARIES}) + include_directories ("${LIBRESSL_INCLUDE_DIRS}") + link_directories ("${LIBRESSL_LIBRARY_DIRS}") + set (LIBRESSL 1) + else () + message ("-- Not found") + endif () + endif () + + if (ENABLE_SSL STREQUAL DARWIN OR (APPLE AND ENABLE_SSL STREQUAL "AUTO")) + if (APPLE) + set (SECURE_TRANSPORT 1) + else () + message (FATAL_ERROR "ENABLE_SSL=DARWIN only supported on Mac OS X") + endif () + endif () + + if (ENABLE_SSL STREQUAL WINDOWS OR (WIN32 AND ENABLE_SSL STREQUAL "AUTO")) + if (WIN32) + set (SECURE_CHANNEL 1) + else () + message (FATAL_ERROR "ENABLE_SSL=WINDOWS only supported on Windows") + endif () + endif () + + if (NOT OPENSSL_FOUND AND NOT SECURE_TRANSPORT AND NOT SECURE_CHANNEL AND NOT LIBRESSL) + if (ENABLE_SSL STREQUAL AUTO) + set (ENABLE_SSL OFF) + else () + message (FATAL_ERROR "No SSL library found") + endif () + endif () +endif () + +if (OPENSSL_FOUND) + if (WIN32 AND OPENSSL_VERSION GREATER 1.1 AND NOT + ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.7) + message (FATAL_ERROR "Building against OpenSSL 1.1.0 and later requires CMake 3.7 or later (hint:" + "You can also compile against Windows Secure Transport with -DENABLE_SSL=WINDOWS") + endif () + if (APPLE AND NOT OPENSSL_ROOT_DIR) + message (WARNING "Building with OpenSSL but OPENSSL_ROOT_DIR not defined. If build fails to link" + " to OpenSSL, define OPENSSL_ROOT_DIR as the path to the OpenSSL installation directory.") + endif () + include (CheckLibraryExists) + # Check for newer OpenSSL string function. + check_library_exists (ssl + ASN1_STRING_get0_data "openssl/asn1.h" HAVE_ASN1_STRING_GET0_DATA + ) + if (HAVE_ASN1_STRING_GET0_DATA) + set (MONGOC_HAVE_ASN1_STRING_GET0_DATA 1) + endif () + set (MONGOC_ENABLE_SSL 1) + set (MONGOC_ENABLE_SSL_OPENSSL 1) + set (MONGOC_ENABLE_CRYPTO 1) + set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 1) +elseif (SECURE_TRANSPORT) + set (MONGOC_ENABLE_SSL 1) + set (MONGOC_ENABLE_SSL_SECURE_TRANSPORT 1) + set (MONGOC_ENABLE_CRYPTO 1) + set (MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO 1) +elseif (SECURE_CHANNEL) + set (MONGOC_ENABLE_SSL 1) + set (MONGOC_ENABLE_SSL_SECURE_CHANNEL 1) + set (MONGOC_ENABLE_CRYPTO 1) + set (MONGOC_ENABLE_CRYPTO_CNG 1) +elseif (LIBRESSL) + set (MONGOC_ENABLE_SSL 1) + set (MONGOC_ENABLE_SSL_LIBRESSL 1) + set (MONGOC_ENABLE_CRYPTO 1) + set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 1) +endif () + +if (ENABLE_CRYPTO_SYSTEM_PROFILE) + if (OPENSSL_FOUND) + set (MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE 1) + else () + message (FATAL_ERROR "ENABLE_CRYPTO_SYSTEM_PROFILE only available with OpenSSL") + endif () +endif () + +if (NOT ENABLE_SASL MATCHES "CYRUS|GSSAPI|SSPI|AUTO|OFF") + message (FATAL_ERROR + "ENABLE_SASL option must be CYRUS, GSSAPI, SSPI, AUTO, or OFF") +endif () + +# Defaults. +set (MONGOC_ENABLE_SASL 0) +set (MONGOC_ENABLE_SASL_CYRUS 0) +set (MONGOC_ENABLE_SASL_GSSAPI 0) +set (MONGOC_ENABLE_SASL_SSPI 0) +set (MONGOC_HAVE_SASL_CLIENT_DONE 0) + +if (NOT ENABLE_SASL STREQUAL OFF) + if (ENABLE_SASL MATCHES "AUTO|CYRUS") + # Sets SASL_LIBRARIES. + include (FindSASL2) + endif () + + if (SASL_FOUND) + set (MONGOC_ENABLE_SASL 1) + set (MONGOC_ENABLE_SASL_CYRUS 1) + elseif ( (ENABLE_SASL MATCHES "SSPI|AUTO") AND WIN32) + set (MONGOC_ENABLE_SASL 1) + set (MONGOC_ENABLE_SASL_SSPI 1) + elseif ( (ENABLE_SASL MATCHES "GSSAPI|AUTO") AND DARWIN) + set (MONGOC_ENABLE_SASL 1) + set (MONGOC_ENABLE_SASL_GSSAPI 1) + endif () +else () + set (MONGOC_ENABLE_SASL 0) +endif () + + +if (ENABLE_AUTOMATIC_INIT_AND_CLEANUP) + set (MONGOC_NO_AUTOMATIC_GLOBALS 0) +else () + set (MONGOC_NO_AUTOMATIC_GLOBALS 1) +endif () + +include (CheckTypeSize) +if (WIN32) + SET (CMAKE_EXTRA_INCLUDE_FILES "ws2tcpip.h") +else () + SET (CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h") +endif () +CHECK_TYPE_SIZE (socklen_t HAVE_SOCKLEN) +SET (CMAKE_EXTRA_INCLUDE_FILES) + +if (HAVE_SOCKLEN) + set (MONGOC_HAVE_SOCKLEN 1) + set (MONGOC_SOCKET_ARG3 "socklen_t") +else () + set (MONGOC_HAVE_SOCKLEN 0) + set (MONGOC_SOCKET_ARG3 "int") +endif () + +include (FindResSearch) +include (CheckSchedGetCPU) + +function (mongoc_get_accept_args ARG2 ARG3) + SET (VAR 0) + foreach (ARG2_VAL "struct sockaddr" "void") + foreach (ARG3_VAL "socklen_t" "size_t" "int") + + MATH (EXPR VAR "${VAR}+1") + + FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c + "#include + #include + + int main () + { + int a = 0; + ${ARG2_VAL} *b = 0; + ${ARG3_VAL} *c = 0; + accept (a, b, c); + return 0; + } + ") + + TRY_COMPILE (RES ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c CMAKE_FLAGS + "-Werror -DCMAKE_CXX_LINK_EXECUTABLE='echo not linking now...'" OUTPUT_VARIABLE LOG2) + + if (RES) + message ( + STATUS + "Detected parameters: accept (int, ${ARG2_VAL} *, ${ARG3_VAL} *)") + + set (${ARG2} ${ARG2_VAL} PARENT_SCOPE) + set (${ARG3} ${ARG3_VAL} PARENT_SCOPE) + return () + endif () + + endforeach () + endforeach () + +endfunction () + +# Reasonable defaults. +set (MONGOC_SOCKET_ARG2 "struct sockaddr") +set (MONGOC_SOCKET_ARG3 "socklen_t") + +if (NOT WIN32) + mongoc_get_accept_args (MONGOC_SOCKET_ARG2 MONGOC_SOCKET_ARG3) +endif () + +set (MONGOC_API_VERSION 1.0) + +set (CPACK_PACKAGE_VERSION_MAJOR ${MONGOC_MAJOR_VERSION}) +set (CPACK_PACKAGE_VERSION_MINOR ${MONGOC_MINOR_VERSION}) + +include (CPack) + +set (MONGOC_CC ${CMAKE_C_COMPILER}) +set (MONGOC_USER_SET_CFLAGS ${CMAKE_C_FLAGS}) +set (MONGOC_USER_SET_LDFLAGS ${CMAKE_EXE_LINKER_FLAGS}) + +set (MONGOC_TRACE 0) + +if (ENABLE_TRACING) + set (MONGOC_TRACE 1) +endif () + +# Sets SNAPPY_LIBRARIES and SNAPPY_INCLUDE_DIRS. +include (FindSnappy) +if (SNAPPY_INCLUDE_DIRS) + set (MONGOC_ENABLE_COMPRESSION 1) + include_directories ("${SNAPPY_INCLUDE_DIRS}") +endif () + +set (MONGOC_ENABLE_SHM_COUNTERS 0) + +if (NOT ENABLE_SHM_COUNTERS MATCHES "ON|OFF|AUTO") + message (FATAL_ERROR "ENABLE_SHM_COUNTERS option must be ON, OFF, or AUTO") +endif () + +if (ENABLE_SHM_COUNTERS STREQUAL "AUTO") + if (UNIX AND NOT APPLE) + set (ENABLE_SHM_COUNTERS ON) + endif () +endif () + +if (ENABLE_SHM_COUNTERS STREQUAL "ON") + if (APPLE OR NOT UNIX) + message ( + FATAL_ERROR + "Shared memory performance counters not supported on Mac or Windows") + endif () + set (MONGOC_ENABLE_SHM_COUNTERS 1) +endif () + +set (MONGOC_INTERNAL_INCLUDE_DIRS "") + +configure_file ( + "${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-config.h.in" + "${PROJECT_BINARY_DIR}/src/mongoc/mongoc-config.h" +) + +configure_file ( + "${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-version.h.in" + "${PROJECT_BINARY_DIR}/src/mongoc/mongoc-version.h" +) + +include_directories ("${PROJECT_BINARY_DIR}/src/mongoc") +include_directories ("${PROJECT_SOURCE_DIR}/src/mongoc") +include_directories ("${PROJECT_SOURCE_DIR}/../../src/common") + +set (SOURCES ${SOURCES} + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-apm.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-array.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-async.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-async-cmd.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-buffer.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-bulk-operation.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-change-stream.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-client.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-client-pool.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cluster.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-collection.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-compression.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-counters.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-array.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-cmd.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-cmd-deprecated.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-find.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-find-cmd.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-find-opquery.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-legacy.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor-array.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-database.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-find-and-modify.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-init.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs-file.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-page.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-handshake.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-host-list.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-index.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-init.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-list.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-linux-distro-scanner.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-log.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-matcher.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-matcher-op.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-memcmp.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cmd.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-opts.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-opts-helpers.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-queue.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-read-concern.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-read-prefs.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-rpc.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-server-description.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-server-stream.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-client-session.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-set.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-socket.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-file.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-gridfs.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-socket.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-topology.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-topology-description.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-topology-description-apm.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-topology-scanner.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-uri.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-util.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-version-functions.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-write-command.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-write-command-legacy.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-write-concern.c + ${PROJECT_SOURCE_DIR}/../../src/common/common-b64.c +) + +set (HEADERS + ${PROJECT_BINARY_DIR}/src/mongoc/mongoc-config.h + ${PROJECT_BINARY_DIR}/src/mongoc/mongoc-version.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-apm.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-bulk-operation.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-change-stream.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-client.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-client-pool.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-collection.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cursor.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-database.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-error.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-flags.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-find-and-modify.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs-file.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-page.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-handshake.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-host-list.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-init.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-index.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-iovec.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-log.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-macros.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-matcher.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-opcode.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-read-concern.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-read-prefs.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-server-description.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-client-session.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-socket.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls-libressl.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-file.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-gridfs.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-socket.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-topology-description.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-uri.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-version-functions.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-write-concern.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-rand.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls.h + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-ssl.h +) + +if (NOT ENABLE_SSL STREQUAL OFF) + set (SOURCES ${SOURCES} + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-crypto.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-scram.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-ssl.c + ) + + if (OPENSSL_FOUND) + message (STATUS "Compiling against OpenSSL") + set (SOURCES ${SOURCES} + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-crypto-openssl.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-rand-openssl.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl-bio.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-openssl.c + ) + set (SSL_LIBRARIES ${OPENSSL_LIBRARIES}) + include_directories (${OPENSSL_INCLUDE_DIR}) + if (WIN32) + set (SSL_LIBRARIES ${SSL_LIBRARIES} crypt32.lib) + endif () + elseif (SECURE_TRANSPORT) + message (STATUS "Compiling against Secure Transport") + set (SOURCES ${SOURCES} + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-crypto-common-crypto.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-rand-common-crypto.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls-secure-transport.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-secure-transport.c + ) + set (SSL_LIBRARIES "-framework CoreFoundation -framework Security") + elseif (SECURE_CHANNEL) + message (STATUS "Compiling against Secure Channel") + set (SOURCES ${SOURCES} + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-crypto-cng.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-rand-cng.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls-secure-channel.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-secure-channel.c + ) + set (SSL_LIBRARIES secur32.lib crypt32.lib Bcrypt.lib) + elseif (LIBRESSL) + message (STATUS "Compiling against LibreSSL") + set (SOURCES ${SOURCES} + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-crypto-openssl.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-rand-openssl.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-stream-tls-libressl.c + ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-libressl.c + ) + set (SSL_LIBRARIES -ltls -lcrypto) + endif () +else () + message (STATUS "SSL disabled") +endif () # ENABLE_SSL + + +if (MONGOC_ENABLE_SASL) + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cluster-sasl.c) + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-sasl.c) + if (MONGOC_ENABLE_SASL_CYRUS) + message (STATUS "Compiling against Cyrus SASL") + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cluster-cyrus.c) + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cyrus.c) + include_directories (${SASL_INCLUDE_DIRS}) + elseif (MONGOC_ENABLE_SASL_SSPI) + message (STATUS "Compiling against Windows SSPI") + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cluster-sspi.c) + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-sspi.c) + set (SASL_LIBRARIES secur32.lib crypt32.lib Shlwapi.lib) + elseif (MONGOC_ENABLE_SASL_GSSAPI) + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-cluster-gssapi.c) + set (SOURCES ${SOURCES} ${PROJECT_SOURCE_DIR}/src/mongoc/mongoc-gssapi.c) + if (APPLE) + message (STATUS "Compiling against macOS GSS") + set (LIBRARIES ${LIBRARIES} -framework GSS) + else () + message (FATAL_ERROR "gssapi missing krb5-config support in cmake") + endif () + endif () +else () + message (STATUS "SASL disabled") +endif () + + +set (THREADS_PREFER_PTHREAD_FLAG 1) +find_package (Threads REQUIRED) +if (CMAKE_USE_PTHREADS_INIT) + set (THREAD_LIB ${CMAKE_THREAD_LIBS_INIT}) +endif () + +set (LIBRARIES + ${SASL_LIBRARIES} ${SSL_LIBRARIES} ${SHM_LIB} ${RESOLV_LIBRARIES} + ${SNAPPY_LIBRARIES} ${ZLIB_LIBRARIES} Threads::Threads +) + +if (WIN32) + set (LIBRARIES ${LIBRARIES} ws2_32) +endif () + +add_library (mongoc_shared SHARED ${SOURCES} ${HEADERS}) +set_target_properties (mongoc_shared PROPERTIES CMAKE_CXX_VISIBILITY_PRESET hidden) +target_link_libraries (mongoc_shared ${LIBRARIES} ${BSON_LIBRARIES}) +target_include_directories (mongoc_shared BEFORE PUBLIC ${BSON_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) +target_compile_definitions (mongoc_shared PUBLIC MONGOC_COMPILATION ${BSON_DEFINITIONS}) + +# CMake wants to make different symlinks than the Autotools, see +# https://cmake.org/pipermail/cmake/2007-September/016501.html +# This hack sets up standard symlink, libmongoc-1.0.so -> libmongoc-1.0.0.so +set_target_properties (mongoc_shared PROPERTIES VERSION 0 SOVERSION ${MONGOC_MAJOR_VERSION}) +set_target_properties (mongoc_shared PROPERTIES OUTPUT_NAME "mongoc-${MONGOC_API_VERSION}" PREFIX "lib") + +if (MONGOC_ENABLE_STATIC) + add_library (mongoc_static STATIC ${SOURCES} ${HEADERS}) + target_link_libraries (mongoc_static ${LIBRARIES} ${BSON_STATIC_LIBRARIES}) + target_include_directories (mongoc_static BEFORE PUBLIC ${BSON_STATIC_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) + target_compile_definitions (mongoc_static PUBLIC MONGOC_COMPILATION MONGOC_STATIC ${BSON_STATIC_DEFINITIONS}) + set_target_properties (mongoc_static PROPERTIES VERSION ${MONGOC_VERSION}) + set_target_properties (mongoc_static PROPERTIES OUTPUT_NAME "mongoc-static-${MONGOC_API_VERSION}") +endif () + +add_executable (mongoc-stat ${PROJECT_SOURCE_DIR}/../../src/tools/mongoc-stat.c) +target_link_libraries (mongoc-stat mongoc_shared) + +function (mongoc_add_test test use_shared) + if (ENABLE_TESTS) + add_executable (${test} ${ARGN}) + if (NOT MSVC) + # We've tests that test our deprecated api. MSVC 2013 will complain about invalid flag + set_source_files_properties (${ARGN} PROPERTIES COMPILE_FLAGS -Wno-deprecated-declarations) + endif () + target_include_directories (${test} PRIVATE ${PROJECT_SOURCE_DIR}/tests) + if (${use_shared}) + target_link_libraries (${test} mongoc_shared) + target_include_directories (${test} PRIVATE ${BSON_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) + else () + target_compile_definitions (${test} PUBLIC "MONGOC_COMPILATION") + target_link_libraries (${test} mongoc_static) + target_include_directories (${test} PRIVATE ${BSON_STATIC_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS}) + endif () + target_link_libraries (${test} ${RESOLV_LIBRARIES}) + if (WIN32) + target_link_libraries (${test} shlwapi) + else () + target_link_libraries (${test}) + endif () + endif () +endfunction () + +function (mongoc_add_example example use_shared) + if (ENABLE_EXAMPLES) + add_executable (${example} ${ARGN}) + if (${use_shared}) + target_link_libraries (${example} mongoc_shared) + else () + target_link_libraries (${example} mongoc_static) + endif () + if (WIN32) + target_link_libraries (${example} shlwapi) + endif () + set (EXAMPLES ${EXAMPLES} ${example}) + endif () +endfunction () + +set (test-libmongoc-sources + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/corpus-test.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/corpus-test.h + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-atomic.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-bson.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-bson-corpus.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-bson-error.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-bson-version.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-endian.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-clock.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-decimal128.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-iso8601.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-iter.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-json.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-oid.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-reader.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-string.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-utf8.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-value.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-writer.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-bcon-basic.c + ${PROJECT_SOURCE_DIR}/../../src/libbson/tests/test-bcon-extract.c + ${PROJECT_SOURCE_DIR}/tests/debug-stream.c + ${PROJECT_SOURCE_DIR}/tests/json-test.c + ${PROJECT_SOURCE_DIR}/tests/json-test-monitoring.c + ${PROJECT_SOURCE_DIR}/tests/json-test-operations.c + ${PROJECT_SOURCE_DIR}/tests/mock_server/future.c + ${PROJECT_SOURCE_DIR}/tests/mock_server/future-functions.c + ${PROJECT_SOURCE_DIR}/tests/mock_server/future-value.c + ${PROJECT_SOURCE_DIR}/tests/mock_server/sync-queue.c + ${PROJECT_SOURCE_DIR}/tests/mock_server/mock-rs.c + ${PROJECT_SOURCE_DIR}/tests/mock_server/mock-server.c + ${PROJECT_SOURCE_DIR}/tests/mock_server/request.c + ${PROJECT_SOURCE_DIR}/tests/test-conveniences.c + ${PROJECT_SOURCE_DIR}/tests/test-libmongoc.c + ${PROJECT_SOURCE_DIR}/tests/test-happy-eyeballs.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-array.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-async.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-buffer.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-bulk.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-change-stream.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-client.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-client-pool.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-cluster.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-collection.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-collection-find.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-collection-find-with-opts.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-connection-uri.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-command-monitoring.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-counters.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-cursor.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-database.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-error.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-exhaust.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-find-and-modify.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-gridfs.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-gridfs-file-page.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-handshake.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-linux-distro-scanner.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-list.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-log.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-matcher.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-max-staleness.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-queue.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-read-concern.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-read-write-concern.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-read-prefs.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-retryable-writes.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-rpc.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-sample-commands.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-scram.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-sdam.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-sdam-monitoring.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-server-selection.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-server-selection-errors.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-client-session.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-set.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-socket.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-dns.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-stream.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-thread.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-topology.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-topology-description.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-topology-reconcile.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-topology-scanner.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-uri.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-version.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-usleep.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-util.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-write-commands.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-write-concern.c + ${PROJECT_SOURCE_DIR}/tests/TestSuite.c +) + +if (MONGOC_ENABLE_SSL) + set (test-libmongoc-sources ${test-libmongoc-sources} + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-x509.c + ${PROJECT_SOURCE_DIR}/tests/ssl-test.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-stream-tls.c + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-stream-tls-error.c + ) +endif () + +if (MONGOC_ENABLE_SASL_CYRUS) + set (test-libmongoc-sources ${test-libmongoc-sources} + ${PROJECT_SOURCE_DIR}/tests/test-mongoc-cyrus.c + ) +endif () + +mongoc_add_test (test-libmongoc FALSE ${test-libmongoc-sources}) +mongoc_add_test (test-mongoc-gssapi TRUE ${PROJECT_SOURCE_DIR}/tests/test-mongoc-gssapi.c) + +if (ENABLE_TESTS) + enable_testing () + add_test (NAME test-libmongoc + COMMAND test-libmongoc + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/../.. + ) + + # "make test" doesn't compile tests, so we create "make check" which compiles + # and runs tests: https://gitlab.kitware.com/cmake/cmake/issues/8774 + add_custom_target (check COMMAND ${CMAKE_CTEST_COMMAND} -V + DEPENDS test-libmongoc + ) +endif () + +mongoc_add_example (example-gridfs TRUE ${PROJECT_SOURCE_DIR}/examples/example-gridfs.c) +mongoc_add_example ( + example-command-monitoring TRUE + ${PROJECT_SOURCE_DIR}/examples/example-command-monitoring.c +) +mongoc_add_example ( + example-sdam-monitoring TRUE + ${PROJECT_SOURCE_DIR}/examples/example-sdam-monitoring.c +) +mongoc_add_example (example-client TRUE ${PROJECT_SOURCE_DIR}/examples/example-client.c) +mongoc_add_example (example-command-with-opts TRUE ${PROJECT_SOURCE_DIR}/examples/example-command-with-opts.c) +mongoc_add_example (example-create-indexes TRUE ${PROJECT_SOURCE_DIR}/examples/example-create-indexes.c) +mongoc_add_example (example-scram TRUE ${PROJECT_SOURCE_DIR}/examples/example-scram.c) +mongoc_add_example (example-session TRUE ${PROJECT_SOURCE_DIR}/examples/example-session.c) +mongoc_add_example (mongoc-dump TRUE ${PROJECT_SOURCE_DIR}/examples/mongoc-dump.c) +mongoc_add_example (mongoc-ping TRUE ${PROJECT_SOURCE_DIR}/examples/mongoc-ping.c) +mongoc_add_example (mongoc-tail TRUE ${PROJECT_SOURCE_DIR}/examples/mongoc-tail.c) +mongoc_add_example (fam TRUE ${PROJECT_SOURCE_DIR}/examples/find_and_modify_with_opts/fam.c) +if (NOT WIN32 AND ENABLE_EXAMPLES) + mongoc_add_example (example-pool TRUE ${PROJECT_SOURCE_DIR}/examples/example-pool.c) + target_link_libraries (example-pool Threads::Threads) +endif () +mongoc_add_example (example-collection-watch TRUE ${PROJECT_SOURCE_DIR}/examples/example-collection-watch.c) +mongoc_add_example (example-update TRUE ${PROJECT_SOURCE_DIR}/examples/example-update.c) + +file (COPY ${PROJECT_SOURCE_DIR}/tests/binary DESTINATION ${PROJECT_BINARY_DIR}/tests) +file (COPY ${PROJECT_SOURCE_DIR}/tests/json DESTINATION ${PROJECT_BINARY_DIR}/tests) +file (COPY ${PROJECT_SOURCE_DIR}/tests/x509gen DESTINATION ${PROJECT_BINARY_DIR}/tests) +file (COPY ${PROJECT_SOURCE_DIR}/tests/release_files DESTINATION ${PROJECT_BINARY_DIR}/tests) + +install ( + TARGETS mongoc_shared ${EXAMPLES} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +) + +if (MONGOC_ENABLE_STATIC) + install ( + TARGETS mongoc_shared mongoc_static ${EXAMPLES} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + ) +endif () + +set (MONGOC_HEADER_INSTALL_DIR + "${CMAKE_INSTALL_INCLUDEDIR}/libmongoc-${MONGOC_API_VERSION}" +) + +install ( + FILES ${HEADERS} + DESTINATION "${MONGOC_HEADER_INSTALL_DIR}" +) + +# Define pkg-config files +set (VERSION "${MONGOC_VERSION}") +set (prefix "${CMAKE_INSTALL_PREFIX}") +set (libdir "\${prefix}/lib") + +foreach ( + FLAG + ${SASL_LIBRARIES} ${SSL_LIBRARIES} ${SHM_LIB} ${RESOLV_LIBRARIES} + ${THREAD_LIB} ${ZLIB_LIBRARIES} ${SNAPPY_LIBRARIES}) + + if (IS_ABSOLUTE "${FLAG}") + get_filename_component (FLAG_DIR "${FLAG}" DIRECTORY) + get_filename_component (FLAG_FILE "${FLAG}" NAME_WE) + STRING (REGEX REPLACE "^lib" "" FLAG_FILE "${FLAG_FILE}") + set (MONGOC_LIBRARIES "${MONGOC_LIBRARIES} -L${FLAG_DIR} -l${FLAG_FILE}") + elseif (FLAG MATCHES "^-.*") + # Flag starts with dash, add it as-is. + set (MONGOC_LIBRARIES "${MONGOC_LIBRARIES} ${FLAG}") + else () + # Flag doesn't start with dash, add it with a dash. + set (MONGOC_LIBRARIES "${MONGOC_LIBRARIES} -l${FLAG}") + endif () +endforeach () + +configure_file ( + ${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-1.0.pc.in + ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-1.0.pc +@ONLY) +install ( + FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-1.0.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig +) +if (MONGOC_ENABLE_STATIC) + configure_file ( + ${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-static-1.0.pc.in + ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-static-1.0.pc + @ONLY) + install ( + FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-static-1.0.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig + ) +endif () +# Deprecated alias for libmongoc-1.0.pc, see CDRIVER-2086. +if (MONGOC_ENABLE_SSL) + configure_file ( + ${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-ssl-1.0.pc.in + ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-ssl-1.0.pc + @ONLY) + install ( + FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-ssl-1.0.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig + ) +endif () + +include (../../build/cmake/MongoCPackage.cmake) + +if (ENABLE_MAN_PAGES STREQUAL ON OR ENABLE_HTML_DOCS STREQUAL ON) + find_package (Sphinx REQUIRED) + add_subdirectory (doc) + add_custom_target (mongoc-doc + ALL + DEPENDS + $<$:mongoc-man> + $<$:mongoc-html> + ) +endif () + +add_subdirectory (build) +# sub-directory 'doc' was already included above +add_subdirectory (examples) +add_subdirectory (src) +add_subdirectory (tests) + +set_local_dist (src_libmongoc_DIST_local + CMakeLists.txt + THIRD_PARTY_NOTICES + VERSION_CURRENT + VERSION_RELEASED +) + +set (src_libmongoc_DIST + ${src_libmongoc_DIST_local} + ${src_libmongoc_build_DIST} + ${src_libmongoc_doc_DIST} + ${src_libmongoc_examples_DIST} + ${src_libmongoc_src_DIST} + ${src_libmongoc_tests_DIST} + PARENT_SCOPE +) diff --git a/src/libmongoc/THIRD_PARTY_NOTICES b/src/libmongoc/THIRD_PARTY_NOTICES new file mode 100644 index 0000000000000000000000000000000000000000..2bba00a5b0e8d9fc94757f711accff955220424e --- /dev/null +++ b/src/libmongoc/THIRD_PARTY_NOTICES @@ -0,0 +1,56 @@ +The MongoDB C Driver uses third-party code distributed under different licenses. + +License notice for mongoc-stream-tls-secure-channel.c +------------------------------------------------------------------------------- + +Curl License + +Significant portions of mongoc-stream-tls-secure-channel.c are from Curl. + +Copyright (C) 2012 - 2015, Marc Hoersken, +Copyright (C) 2012, Mark Salisbury, +Copyright (C) 2012 - 2015, Daniel Stenberg, , et al. + +All rights reserved. + +Permission to use, copy, modify, and distribute this software for any purpose +with or without fee is hereby granted, provided that the above copyright +notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall not +be used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization of the copyright holder. + + +License notice for utlist.h +------------------------------------------------------------------------------- + +BSD 1-Clause License + +Copyright: 2007-2014, Troy D. Hanson http://troydhanson.github.com/uthash/ + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/VERSION_CURRENT b/src/libmongoc/VERSION_CURRENT similarity index 100% rename from VERSION_CURRENT rename to src/libmongoc/VERSION_CURRENT diff --git a/VERSION_RELEASED b/src/libmongoc/VERSION_RELEASED similarity index 100% rename from VERSION_RELEASED rename to src/libmongoc/VERSION_RELEASED diff --git a/src/libmongoc/build/CMakeLists.txt b/src/libmongoc/build/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..be72c52c638119486498bb377a72d3fd3a0093f9 --- /dev/null +++ b/src/libmongoc/build/CMakeLists.txt @@ -0,0 +1,11 @@ +add_subdirectory (cmake) + +set_local_dist (src_libmongoc_build_DIST_local + CMakeLists.txt +) + +set (src_libmongoc_build_DIST + ${src_libmongoc_build_DIST_local} + ${src_libmongoc_build_cmake_DIST} + PARENT_SCOPE +) diff --git a/src/libmongoc/build/cmake/CMakeLists.txt b/src/libmongoc/build/cmake/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..80613477b28bd43c3fdd0036cac34e6b34352805 --- /dev/null +++ b/src/libmongoc/build/cmake/CMakeLists.txt @@ -0,0 +1,16 @@ +set (src_libmongoc_build_cmake_PKGCONFIG + libmongoc-1.0-config-version.cmake.in + libmongoc-1.0-config.cmake.in + libmongoc-static-1.0-config-version.cmake.in + libmongoc-static-1.0-config.cmake.in +) + +set_local_dist (src_libmongoc_build_cmake_DIST_local + CMakeLists.txt + ${src_libmongoc_build_cmake_PKGCONFIG} +) + +set (src_libmongoc_build_cmake_DIST + ${src_libmongoc_build_cmake_DIST_local} + PARENT_SCOPE +) diff --git a/build/cmake/libmongoc-1.0-config-version.cmake.in b/src/libmongoc/build/cmake/libmongoc-1.0-config-version.cmake.in similarity index 100% rename from build/cmake/libmongoc-1.0-config-version.cmake.in rename to src/libmongoc/build/cmake/libmongoc-1.0-config-version.cmake.in diff --git a/build/cmake/libmongoc-1.0-config.cmake.in b/src/libmongoc/build/cmake/libmongoc-1.0-config.cmake.in similarity index 100% rename from build/cmake/libmongoc-1.0-config.cmake.in rename to src/libmongoc/build/cmake/libmongoc-1.0-config.cmake.in diff --git a/build/cmake/libmongoc-static-1.0-config-version.cmake.in b/src/libmongoc/build/cmake/libmongoc-static-1.0-config-version.cmake.in similarity index 100% rename from build/cmake/libmongoc-static-1.0-config-version.cmake.in rename to src/libmongoc/build/cmake/libmongoc-static-1.0-config-version.cmake.in diff --git a/build/cmake/libmongoc-static-1.0-config.cmake.in b/src/libmongoc/build/cmake/libmongoc-static-1.0-config.cmake.in similarity index 100% rename from build/cmake/libmongoc-static-1.0-config.cmake.in rename to src/libmongoc/build/cmake/libmongoc-static-1.0-config.cmake.in diff --git a/doc/.gitignore b/src/libmongoc/doc/.gitignore similarity index 100% rename from doc/.gitignore rename to src/libmongoc/doc/.gitignore diff --git a/src/libmongoc/doc/CMakeLists.txt b/src/libmongoc/doc/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..25fa7f6824292e269e51e17d05d4bdaa33ecd7db --- /dev/null +++ b/src/libmongoc/doc/CMakeLists.txt @@ -0,0 +1,41 @@ +include (SphinxBuild) + +if (ENABLE_HTML_DOCS) + sphinx_build_html (mongoc-html mongo-c-driver) + set (src_libmongoc_doc_DIST_htmls ${doc_DIST_htmls}) +endif () + +if (ENABLE_MAN_PAGES) + sphinx_build_man (mongoc-man) + set (src_libmongoc_doc_DIST_mans ${doc_DIST_mans}) +endif () + +add_subdirectory (html) +add_subdirectory (includes) +add_subdirectory (man) +add_subdirectory (static) + +file (GLOB src_libmongoc_doc_DIST_rsts RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.rst) + +extra_dist_generated ( + ${src_libmongoc_doc_DIST_htmls} + ${src_libmongoc_doc_DIST_mans} +) + +set_local_dist (src_libmongoc_doc_DIST_local + CMakeLists.txt + ${src_libmongoc_doc_DIST_rsts} + conf.py + libbson-objects.inv +) + +set (src_libmongoc_doc_DIST + ${src_libmongoc_doc_DIST_local} + ${src_libmongoc_doc_html_DIST} + ${src_libmongoc_doc_includes_DIST} + ${src_libmongoc_doc_man_DIST} + ${src_libmongoc_doc_mongoc_DIST} + ${src_libmongoc_doc_mongoc-theme_DIST} + ${src_libmongoc_doc_static_DIST} + PARENT_SCOPE +) diff --git a/doc/advanced-connections.rst b/src/libmongoc/doc/advanced-connections.rst similarity index 100% rename from doc/advanced-connections.rst rename to src/libmongoc/doc/advanced-connections.rst diff --git a/doc/aggregate.rst b/src/libmongoc/doc/aggregate.rst similarity index 100% rename from doc/aggregate.rst rename to src/libmongoc/doc/aggregate.rst diff --git a/doc/api.rst b/src/libmongoc/doc/api.rst similarity index 100% rename from doc/api.rst rename to src/libmongoc/doc/api.rst diff --git a/doc/application-performance-monitoring.rst b/src/libmongoc/doc/application-performance-monitoring.rst similarity index 100% rename from doc/application-performance-monitoring.rst rename to src/libmongoc/doc/application-performance-monitoring.rst diff --git a/doc/authentication.rst b/src/libmongoc/doc/authentication.rst similarity index 100% rename from doc/authentication.rst rename to src/libmongoc/doc/authentication.rst diff --git a/doc/basic-troubleshooting.rst b/src/libmongoc/doc/basic-troubleshooting.rst similarity index 100% rename from doc/basic-troubleshooting.rst rename to src/libmongoc/doc/basic-troubleshooting.rst diff --git a/doc/bulk.rst b/src/libmongoc/doc/bulk.rst similarity index 100% rename from doc/bulk.rst rename to src/libmongoc/doc/bulk.rst diff --git a/doc/conf.py b/src/libmongoc/doc/conf.py similarity index 94% rename from doc/conf.py rename to src/libmongoc/doc/conf.py index 591042a3e08535adf047ea957853cb489729b7ab..084d6f425e7d0d7bf0191398b53cc52f03a2b932 100644 --- a/doc/conf.py +++ b/src/libmongoc/doc/conf.py @@ -5,7 +5,7 @@ import sys # Ensure we can import "mongoc" and "taglist" extension modules. this_path = os.path.dirname(__file__) sys.path.append(this_path) -sys.path.append(os.path.normpath(os.path.join(this_path, '../build/sphinx'))) +sys.path.append(os.path.normpath(os.path.join(this_path, '../../../build/sphinx'))) from mongoc_common import * @@ -52,7 +52,7 @@ intersphinx_mapping = { # -- Options for HTML output ---------------------------------------------- -html_theme_path = ['../build/sphinx'] +html_theme_path = ['../../../build/sphinx'] html_theme = 'mongoc-theme' html_title = html_shorttitle = 'MongoDB C Driver %s' % version # html_favicon = None diff --git a/doc/connection-pooling.rst b/src/libmongoc/doc/connection-pooling.rst similarity index 100% rename from doc/connection-pooling.rst rename to src/libmongoc/doc/connection-pooling.rst diff --git a/doc/create-indexes.rst b/src/libmongoc/doc/create-indexes.rst similarity index 100% rename from doc/create-indexes.rst rename to src/libmongoc/doc/create-indexes.rst diff --git a/doc/cursors.rst b/src/libmongoc/doc/cursors.rst similarity index 100% rename from doc/cursors.rst rename to src/libmongoc/doc/cursors.rst diff --git a/doc/debugging.rst b/src/libmongoc/doc/debugging.rst similarity index 100% rename from doc/debugging.rst rename to src/libmongoc/doc/debugging.rst diff --git a/doc/distinct-mapreduce.rst b/src/libmongoc/doc/distinct-mapreduce.rst similarity index 100% rename from doc/distinct-mapreduce.rst rename to src/libmongoc/doc/distinct-mapreduce.rst diff --git a/doc/errors.rst b/src/libmongoc/doc/errors.rst similarity index 100% rename from doc/errors.rst rename to src/libmongoc/doc/errors.rst diff --git a/doc/full_index.rst b/src/libmongoc/doc/full_index.rst similarity index 100% rename from doc/full_index.rst rename to src/libmongoc/doc/full_index.rst diff --git a/doc/guides.rst b/src/libmongoc/doc/guides.rst similarity index 100% rename from doc/guides.rst rename to src/libmongoc/doc/guides.rst diff --git a/doc/html/CMakeLists.txt b/src/libmongoc/doc/html/CMakeLists.txt similarity index 89% rename from doc/html/CMakeLists.txt rename to src/libmongoc/doc/html/CMakeLists.txt index a6ed521564fd18aeee9a33d0e4019a18e7eb743b..2f416b026b749a5d29440c80fb5eb1863a78f5db 100644 --- a/doc/html/CMakeLists.txt +++ b/src/libmongoc/doc/html/CMakeLists.txt @@ -1,5 +1,5 @@ # The html distribution list was set by sphinx_build_html () -#extra_dist_generated (${doc_DIST_htmls}) +#extra_dist_generated (${src_libmongoc_doc_DIST_htmls}) file (GLOB_RECURSE _images_pngs RELATIVE ${PROJECT_SOURCE_DIR}/doc/static @@ -37,6 +37,6 @@ extra_dist_generated ( searchindex.js ) -set_dist_list (doc_html_DIST +set_dist_list (src_libmongoc_doc_html_DIST CMakeLists.txt ) diff --git a/src/libmongoc/doc/includes/CMakeLists.txt b/src/libmongoc/doc/includes/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..e59474f7d6771a77f50e63df15b96634065b5bbf --- /dev/null +++ b/src/libmongoc/doc/includes/CMakeLists.txt @@ -0,0 +1,10 @@ +file (GLOB src_libmongoc_doc_includes_DIST_txts + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.txt +) + +set_dist_list (src_libmongoc_doc_includes_DIST + CMakeLists.txt + ${src_libmongoc_doc_includes_DIST_txts} +) diff --git a/doc/includes/bulk-insert-opts.txt b/src/libmongoc/doc/includes/bulk-insert-opts.txt similarity index 100% rename from doc/includes/bulk-insert-opts.txt rename to src/libmongoc/doc/includes/bulk-insert-opts.txt diff --git a/doc/includes/bulk-opts.txt b/src/libmongoc/doc/includes/bulk-opts.txt similarity index 100% rename from doc/includes/bulk-opts.txt rename to src/libmongoc/doc/includes/bulk-opts.txt diff --git a/doc/includes/bulk-remove-many-opts.txt b/src/libmongoc/doc/includes/bulk-remove-many-opts.txt similarity index 100% rename from doc/includes/bulk-remove-many-opts.txt rename to src/libmongoc/doc/includes/bulk-remove-many-opts.txt diff --git a/doc/includes/bulk-remove-one-opts.txt b/src/libmongoc/doc/includes/bulk-remove-one-opts.txt similarity index 100% rename from doc/includes/bulk-remove-one-opts.txt rename to src/libmongoc/doc/includes/bulk-remove-one-opts.txt diff --git a/doc/includes/bulk-remove-opts.txt b/src/libmongoc/doc/includes/bulk-remove-opts.txt similarity index 100% rename from doc/includes/bulk-remove-opts.txt rename to src/libmongoc/doc/includes/bulk-remove-opts.txt diff --git a/doc/includes/bulk-replace-one-opts.txt b/src/libmongoc/doc/includes/bulk-replace-one-opts.txt similarity index 100% rename from doc/includes/bulk-replace-one-opts.txt rename to src/libmongoc/doc/includes/bulk-replace-one-opts.txt diff --git a/doc/includes/bulk-update-many-opts.txt b/src/libmongoc/doc/includes/bulk-update-many-opts.txt similarity index 100% rename from doc/includes/bulk-update-many-opts.txt rename to src/libmongoc/doc/includes/bulk-update-many-opts.txt diff --git a/doc/includes/bulk-update-one-opts.txt b/src/libmongoc/doc/includes/bulk-update-one-opts.txt similarity index 100% rename from doc/includes/bulk-update-one-opts.txt rename to src/libmongoc/doc/includes/bulk-update-one-opts.txt diff --git a/doc/includes/create-index-opts.txt b/src/libmongoc/doc/includes/create-index-opts.txt similarity index 100% rename from doc/includes/create-index-opts.txt rename to src/libmongoc/doc/includes/create-index-opts.txt diff --git a/doc/includes/delete-many-opts.txt b/src/libmongoc/doc/includes/delete-many-opts.txt similarity index 100% rename from doc/includes/delete-many-opts.txt rename to src/libmongoc/doc/includes/delete-many-opts.txt diff --git a/doc/includes/delete-one-opts.txt b/src/libmongoc/doc/includes/delete-one-opts.txt similarity index 100% rename from doc/includes/delete-one-opts.txt rename to src/libmongoc/doc/includes/delete-one-opts.txt diff --git a/doc/includes/init_cleanup.txt b/src/libmongoc/doc/includes/init_cleanup.txt similarity index 100% rename from doc/includes/init_cleanup.txt rename to src/libmongoc/doc/includes/init_cleanup.txt diff --git a/doc/includes/insert-many-opts.txt b/src/libmongoc/doc/includes/insert-many-opts.txt similarity index 100% rename from doc/includes/insert-many-opts.txt rename to src/libmongoc/doc/includes/insert-many-opts.txt diff --git a/doc/includes/insert-one-opts.txt b/src/libmongoc/doc/includes/insert-one-opts.txt similarity index 100% rename from doc/includes/insert-one-opts.txt rename to src/libmongoc/doc/includes/insert-one-opts.txt diff --git a/doc/includes/ipv4-and-ipv6.txt b/src/libmongoc/doc/includes/ipv4-and-ipv6.txt similarity index 100% rename from doc/includes/ipv4-and-ipv6.txt rename to src/libmongoc/doc/includes/ipv4-and-ipv6.txt diff --git a/doc/includes/mongoc_client_pool_call_once.txt b/src/libmongoc/doc/includes/mongoc_client_pool_call_once.txt similarity index 100% rename from doc/includes/mongoc_client_pool_call_once.txt rename to src/libmongoc/doc/includes/mongoc_client_pool_call_once.txt diff --git a/doc/includes/mongoc_client_pool_thread_safe.txt b/src/libmongoc/doc/includes/mongoc_client_pool_thread_safe.txt similarity index 100% rename from doc/includes/mongoc_client_pool_thread_safe.txt rename to src/libmongoc/doc/includes/mongoc_client_pool_thread_safe.txt diff --git a/doc/includes/read-opts.txt b/src/libmongoc/doc/includes/read-opts.txt similarity index 100% rename from doc/includes/read-opts.txt rename to src/libmongoc/doc/includes/read-opts.txt diff --git a/doc/includes/read-write-opts.txt b/src/libmongoc/doc/includes/read-write-opts.txt similarity index 100% rename from doc/includes/read-write-opts.txt rename to src/libmongoc/doc/includes/read-write-opts.txt diff --git a/doc/includes/replace-one-opts.txt b/src/libmongoc/doc/includes/replace-one-opts.txt similarity index 100% rename from doc/includes/replace-one-opts.txt rename to src/libmongoc/doc/includes/replace-one-opts.txt diff --git a/doc/includes/session-lifecycle.txt b/src/libmongoc/doc/includes/session-lifecycle.txt similarity index 100% rename from doc/includes/session-lifecycle.txt rename to src/libmongoc/doc/includes/session-lifecycle.txt diff --git a/doc/includes/update-many-opts.txt b/src/libmongoc/doc/includes/update-many-opts.txt similarity index 100% rename from doc/includes/update-many-opts.txt rename to src/libmongoc/doc/includes/update-many-opts.txt diff --git a/doc/includes/update-one-opts.txt b/src/libmongoc/doc/includes/update-one-opts.txt similarity index 100% rename from doc/includes/update-one-opts.txt rename to src/libmongoc/doc/includes/update-one-opts.txt diff --git a/doc/includes/write-opts.txt b/src/libmongoc/doc/includes/write-opts.txt similarity index 100% rename from doc/includes/write-opts.txt rename to src/libmongoc/doc/includes/write-opts.txt diff --git a/doc/index.rst b/src/libmongoc/doc/index.rst similarity index 100% rename from doc/index.rst rename to src/libmongoc/doc/index.rst diff --git a/doc/init-cleanup.rst b/src/libmongoc/doc/init-cleanup.rst similarity index 100% rename from doc/init-cleanup.rst rename to src/libmongoc/doc/init-cleanup.rst diff --git a/doc/installing.rst b/src/libmongoc/doc/installing.rst similarity index 100% rename from doc/installing.rst rename to src/libmongoc/doc/installing.rst diff --git a/doc/libbson-objects.inv b/src/libmongoc/doc/libbson-objects.inv similarity index 100% rename from doc/libbson-objects.inv rename to src/libmongoc/doc/libbson-objects.inv diff --git a/doc/lifecycle.rst b/src/libmongoc/doc/lifecycle.rst similarity index 100% rename from doc/lifecycle.rst rename to src/libmongoc/doc/lifecycle.rst diff --git a/doc/logging.rst b/src/libmongoc/doc/logging.rst similarity index 100% rename from doc/logging.rst rename to src/libmongoc/doc/logging.rst diff --git a/src/libmongoc/doc/man/CMakeLists.txt b/src/libmongoc/doc/man/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f97cd86e550d1de3b38d1dc0744940062c38f40a --- /dev/null +++ b/src/libmongoc/doc/man/CMakeLists.txt @@ -0,0 +1,6 @@ +# The man distribution list was set by sphinx_build_man () +#extra_dist_generated (${src_libmongoc_doc_DIST_mans}) + +set_dist_list (src_libmongoc_doc_man_DIST + CMakeLists.txt +) diff --git a/doc/matcher.rst b/src/libmongoc/doc/matcher.rst similarity index 100% rename from doc/matcher.rst rename to src/libmongoc/doc/matcher.rst diff --git a/doc/mongoc-common-task-examples.rst b/src/libmongoc/doc/mongoc-common-task-examples.rst similarity index 100% rename from doc/mongoc-common-task-examples.rst rename to src/libmongoc/doc/mongoc-common-task-examples.rst diff --git a/doc/mongoc_apm_callbacks_destroy.rst b/src/libmongoc/doc/mongoc_apm_callbacks_destroy.rst similarity index 100% rename from doc/mongoc_apm_callbacks_destroy.rst rename to src/libmongoc/doc/mongoc_apm_callbacks_destroy.rst diff --git a/doc/mongoc_apm_callbacks_new.rst b/src/libmongoc/doc/mongoc_apm_callbacks_new.rst similarity index 100% rename from doc/mongoc_apm_callbacks_new.rst rename to src/libmongoc/doc/mongoc_apm_callbacks_new.rst diff --git a/doc/mongoc_apm_callbacks_t.rst b/src/libmongoc/doc/mongoc_apm_callbacks_t.rst similarity index 100% rename from doc/mongoc_apm_callbacks_t.rst rename to src/libmongoc/doc/mongoc_apm_callbacks_t.rst diff --git a/doc/mongoc_apm_command_failed_get_command_name.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_command_name.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_command_name.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_command_name.rst diff --git a/doc/mongoc_apm_command_failed_get_context.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_context.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_context.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_context.rst diff --git a/doc/mongoc_apm_command_failed_get_duration.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_duration.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_duration.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_duration.rst diff --git a/doc/mongoc_apm_command_failed_get_error.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_error.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_error.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_error.rst diff --git a/doc/mongoc_apm_command_failed_get_host.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_host.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_host.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_host.rst diff --git a/doc/mongoc_apm_command_failed_get_operation_id.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_operation_id.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_operation_id.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_operation_id.rst diff --git a/doc/mongoc_apm_command_failed_get_reply.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_reply.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_reply.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_reply.rst diff --git a/doc/mongoc_apm_command_failed_get_request_id.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_request_id.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_request_id.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_request_id.rst diff --git a/doc/mongoc_apm_command_failed_get_server_id.rst b/src/libmongoc/doc/mongoc_apm_command_failed_get_server_id.rst similarity index 100% rename from doc/mongoc_apm_command_failed_get_server_id.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_get_server_id.rst diff --git a/doc/mongoc_apm_command_failed_t.rst b/src/libmongoc/doc/mongoc_apm_command_failed_t.rst similarity index 100% rename from doc/mongoc_apm_command_failed_t.rst rename to src/libmongoc/doc/mongoc_apm_command_failed_t.rst diff --git a/doc/mongoc_apm_command_started_get_command.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_command.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_command.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_command.rst diff --git a/doc/mongoc_apm_command_started_get_command_name.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_command_name.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_command_name.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_command_name.rst diff --git a/doc/mongoc_apm_command_started_get_context.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_context.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_context.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_context.rst diff --git a/doc/mongoc_apm_command_started_get_database_name.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_database_name.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_database_name.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_database_name.rst diff --git a/doc/mongoc_apm_command_started_get_host.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_host.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_host.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_host.rst diff --git a/doc/mongoc_apm_command_started_get_operation_id.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_operation_id.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_operation_id.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_operation_id.rst diff --git a/doc/mongoc_apm_command_started_get_request_id.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_request_id.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_request_id.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_request_id.rst diff --git a/doc/mongoc_apm_command_started_get_server_id.rst b/src/libmongoc/doc/mongoc_apm_command_started_get_server_id.rst similarity index 100% rename from doc/mongoc_apm_command_started_get_server_id.rst rename to src/libmongoc/doc/mongoc_apm_command_started_get_server_id.rst diff --git a/doc/mongoc_apm_command_started_t.rst b/src/libmongoc/doc/mongoc_apm_command_started_t.rst similarity index 100% rename from doc/mongoc_apm_command_started_t.rst rename to src/libmongoc/doc/mongoc_apm_command_started_t.rst diff --git a/doc/mongoc_apm_command_succeeded_get_command_name.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_command_name.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_command_name.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_command_name.rst diff --git a/doc/mongoc_apm_command_succeeded_get_context.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_context.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_context.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_context.rst diff --git a/doc/mongoc_apm_command_succeeded_get_duration.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_duration.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_duration.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_duration.rst diff --git a/doc/mongoc_apm_command_succeeded_get_host.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_host.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_host.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_host.rst diff --git a/doc/mongoc_apm_command_succeeded_get_operation_id.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_operation_id.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_operation_id.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_operation_id.rst diff --git a/doc/mongoc_apm_command_succeeded_get_reply.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_reply.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_reply.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_reply.rst diff --git a/doc/mongoc_apm_command_succeeded_get_request_id.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_request_id.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_request_id.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_request_id.rst diff --git a/doc/mongoc_apm_command_succeeded_get_server_id.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_get_server_id.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_get_server_id.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_get_server_id.rst diff --git a/doc/mongoc_apm_command_succeeded_t.rst b/src/libmongoc/doc/mongoc_apm_command_succeeded_t.rst similarity index 100% rename from doc/mongoc_apm_command_succeeded_t.rst rename to src/libmongoc/doc/mongoc_apm_command_succeeded_t.rst diff --git a/doc/mongoc_apm_server_changed_get_context.rst b/src/libmongoc/doc/mongoc_apm_server_changed_get_context.rst similarity index 100% rename from doc/mongoc_apm_server_changed_get_context.rst rename to src/libmongoc/doc/mongoc_apm_server_changed_get_context.rst diff --git a/doc/mongoc_apm_server_changed_get_host.rst b/src/libmongoc/doc/mongoc_apm_server_changed_get_host.rst similarity index 100% rename from doc/mongoc_apm_server_changed_get_host.rst rename to src/libmongoc/doc/mongoc_apm_server_changed_get_host.rst diff --git a/doc/mongoc_apm_server_changed_get_new_description.rst b/src/libmongoc/doc/mongoc_apm_server_changed_get_new_description.rst similarity index 100% rename from doc/mongoc_apm_server_changed_get_new_description.rst rename to src/libmongoc/doc/mongoc_apm_server_changed_get_new_description.rst diff --git a/doc/mongoc_apm_server_changed_get_previous_description.rst b/src/libmongoc/doc/mongoc_apm_server_changed_get_previous_description.rst similarity index 100% rename from doc/mongoc_apm_server_changed_get_previous_description.rst rename to src/libmongoc/doc/mongoc_apm_server_changed_get_previous_description.rst diff --git a/doc/mongoc_apm_server_changed_get_topology_id.rst b/src/libmongoc/doc/mongoc_apm_server_changed_get_topology_id.rst similarity index 100% rename from doc/mongoc_apm_server_changed_get_topology_id.rst rename to src/libmongoc/doc/mongoc_apm_server_changed_get_topology_id.rst diff --git a/doc/mongoc_apm_server_changed_t.rst b/src/libmongoc/doc/mongoc_apm_server_changed_t.rst similarity index 100% rename from doc/mongoc_apm_server_changed_t.rst rename to src/libmongoc/doc/mongoc_apm_server_changed_t.rst diff --git a/doc/mongoc_apm_server_closed_get_context.rst b/src/libmongoc/doc/mongoc_apm_server_closed_get_context.rst similarity index 100% rename from doc/mongoc_apm_server_closed_get_context.rst rename to src/libmongoc/doc/mongoc_apm_server_closed_get_context.rst diff --git a/doc/mongoc_apm_server_closed_get_host.rst b/src/libmongoc/doc/mongoc_apm_server_closed_get_host.rst similarity index 100% rename from doc/mongoc_apm_server_closed_get_host.rst rename to src/libmongoc/doc/mongoc_apm_server_closed_get_host.rst diff --git a/doc/mongoc_apm_server_closed_get_topology_id.rst b/src/libmongoc/doc/mongoc_apm_server_closed_get_topology_id.rst similarity index 100% rename from doc/mongoc_apm_server_closed_get_topology_id.rst rename to src/libmongoc/doc/mongoc_apm_server_closed_get_topology_id.rst diff --git a/doc/mongoc_apm_server_closed_t.rst b/src/libmongoc/doc/mongoc_apm_server_closed_t.rst similarity index 100% rename from doc/mongoc_apm_server_closed_t.rst rename to src/libmongoc/doc/mongoc_apm_server_closed_t.rst diff --git a/doc/mongoc_apm_server_heartbeat_failed_get_context.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_context.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_failed_get_context.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_context.rst diff --git a/doc/mongoc_apm_server_heartbeat_failed_get_duration.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_duration.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_failed_get_duration.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_duration.rst diff --git a/doc/mongoc_apm_server_heartbeat_failed_get_error.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_error.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_failed_get_error.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_error.rst diff --git a/doc/mongoc_apm_server_heartbeat_failed_get_host.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_host.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_failed_get_host.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_get_host.rst diff --git a/doc/mongoc_apm_server_heartbeat_failed_t.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_t.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_failed_t.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_failed_t.rst diff --git a/doc/mongoc_apm_server_heartbeat_started_get_context.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_started_get_context.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_started_get_context.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_started_get_context.rst diff --git a/doc/mongoc_apm_server_heartbeat_started_get_host.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_started_get_host.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_started_get_host.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_started_get_host.rst diff --git a/doc/mongoc_apm_server_heartbeat_started_t.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_started_t.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_started_t.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_started_t.rst diff --git a/doc/mongoc_apm_server_heartbeat_succeeded_get_context.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_context.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_succeeded_get_context.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_context.rst diff --git a/doc/mongoc_apm_server_heartbeat_succeeded_get_duration.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_duration.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_succeeded_get_duration.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_duration.rst diff --git a/doc/mongoc_apm_server_heartbeat_succeeded_get_host.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_host.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_succeeded_get_host.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_host.rst diff --git a/doc/mongoc_apm_server_heartbeat_succeeded_get_reply.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_reply.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_succeeded_get_reply.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_get_reply.rst diff --git a/doc/mongoc_apm_server_heartbeat_succeeded_t.rst b/src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_t.rst similarity index 100% rename from doc/mongoc_apm_server_heartbeat_succeeded_t.rst rename to src/libmongoc/doc/mongoc_apm_server_heartbeat_succeeded_t.rst diff --git a/doc/mongoc_apm_server_opening_get_context.rst b/src/libmongoc/doc/mongoc_apm_server_opening_get_context.rst similarity index 100% rename from doc/mongoc_apm_server_opening_get_context.rst rename to src/libmongoc/doc/mongoc_apm_server_opening_get_context.rst diff --git a/doc/mongoc_apm_server_opening_get_host.rst b/src/libmongoc/doc/mongoc_apm_server_opening_get_host.rst similarity index 100% rename from doc/mongoc_apm_server_opening_get_host.rst rename to src/libmongoc/doc/mongoc_apm_server_opening_get_host.rst diff --git a/doc/mongoc_apm_server_opening_get_topology_id.rst b/src/libmongoc/doc/mongoc_apm_server_opening_get_topology_id.rst similarity index 100% rename from doc/mongoc_apm_server_opening_get_topology_id.rst rename to src/libmongoc/doc/mongoc_apm_server_opening_get_topology_id.rst diff --git a/doc/mongoc_apm_server_opening_t.rst b/src/libmongoc/doc/mongoc_apm_server_opening_t.rst similarity index 100% rename from doc/mongoc_apm_server_opening_t.rst rename to src/libmongoc/doc/mongoc_apm_server_opening_t.rst diff --git a/doc/mongoc_apm_set_command_failed_cb.rst b/src/libmongoc/doc/mongoc_apm_set_command_failed_cb.rst similarity index 100% rename from doc/mongoc_apm_set_command_failed_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_command_failed_cb.rst diff --git a/doc/mongoc_apm_set_command_started_cb.rst b/src/libmongoc/doc/mongoc_apm_set_command_started_cb.rst similarity index 100% rename from doc/mongoc_apm_set_command_started_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_command_started_cb.rst diff --git a/doc/mongoc_apm_set_command_succeeded_cb.rst b/src/libmongoc/doc/mongoc_apm_set_command_succeeded_cb.rst similarity index 100% rename from doc/mongoc_apm_set_command_succeeded_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_command_succeeded_cb.rst diff --git a/doc/mongoc_apm_set_server_changed_cb.rst b/src/libmongoc/doc/mongoc_apm_set_server_changed_cb.rst similarity index 100% rename from doc/mongoc_apm_set_server_changed_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_server_changed_cb.rst diff --git a/doc/mongoc_apm_set_server_closed_cb.rst b/src/libmongoc/doc/mongoc_apm_set_server_closed_cb.rst similarity index 100% rename from doc/mongoc_apm_set_server_closed_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_server_closed_cb.rst diff --git a/doc/mongoc_apm_set_server_heartbeat_failed_cb.rst b/src/libmongoc/doc/mongoc_apm_set_server_heartbeat_failed_cb.rst similarity index 100% rename from doc/mongoc_apm_set_server_heartbeat_failed_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_server_heartbeat_failed_cb.rst diff --git a/doc/mongoc_apm_set_server_heartbeat_started_cb.rst b/src/libmongoc/doc/mongoc_apm_set_server_heartbeat_started_cb.rst similarity index 100% rename from doc/mongoc_apm_set_server_heartbeat_started_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_server_heartbeat_started_cb.rst diff --git a/doc/mongoc_apm_set_server_heartbeat_succeeded_cb.rst b/src/libmongoc/doc/mongoc_apm_set_server_heartbeat_succeeded_cb.rst similarity index 100% rename from doc/mongoc_apm_set_server_heartbeat_succeeded_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_server_heartbeat_succeeded_cb.rst diff --git a/doc/mongoc_apm_set_server_opening_cb.rst b/src/libmongoc/doc/mongoc_apm_set_server_opening_cb.rst similarity index 100% rename from doc/mongoc_apm_set_server_opening_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_server_opening_cb.rst diff --git a/doc/mongoc_apm_set_topology_changed_cb.rst b/src/libmongoc/doc/mongoc_apm_set_topology_changed_cb.rst similarity index 100% rename from doc/mongoc_apm_set_topology_changed_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_topology_changed_cb.rst diff --git a/doc/mongoc_apm_set_topology_closed_cb.rst b/src/libmongoc/doc/mongoc_apm_set_topology_closed_cb.rst similarity index 100% rename from doc/mongoc_apm_set_topology_closed_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_topology_closed_cb.rst diff --git a/doc/mongoc_apm_set_topology_opening_cb.rst b/src/libmongoc/doc/mongoc_apm_set_topology_opening_cb.rst similarity index 100% rename from doc/mongoc_apm_set_topology_opening_cb.rst rename to src/libmongoc/doc/mongoc_apm_set_topology_opening_cb.rst diff --git a/doc/mongoc_apm_topology_changed_get_context.rst b/src/libmongoc/doc/mongoc_apm_topology_changed_get_context.rst similarity index 100% rename from doc/mongoc_apm_topology_changed_get_context.rst rename to src/libmongoc/doc/mongoc_apm_topology_changed_get_context.rst diff --git a/doc/mongoc_apm_topology_changed_get_new_description.rst b/src/libmongoc/doc/mongoc_apm_topology_changed_get_new_description.rst similarity index 100% rename from doc/mongoc_apm_topology_changed_get_new_description.rst rename to src/libmongoc/doc/mongoc_apm_topology_changed_get_new_description.rst diff --git a/doc/mongoc_apm_topology_changed_get_previous_description.rst b/src/libmongoc/doc/mongoc_apm_topology_changed_get_previous_description.rst similarity index 100% rename from doc/mongoc_apm_topology_changed_get_previous_description.rst rename to src/libmongoc/doc/mongoc_apm_topology_changed_get_previous_description.rst diff --git a/doc/mongoc_apm_topology_changed_get_topology_id.rst b/src/libmongoc/doc/mongoc_apm_topology_changed_get_topology_id.rst similarity index 100% rename from doc/mongoc_apm_topology_changed_get_topology_id.rst rename to src/libmongoc/doc/mongoc_apm_topology_changed_get_topology_id.rst diff --git a/doc/mongoc_apm_topology_changed_t.rst b/src/libmongoc/doc/mongoc_apm_topology_changed_t.rst similarity index 100% rename from doc/mongoc_apm_topology_changed_t.rst rename to src/libmongoc/doc/mongoc_apm_topology_changed_t.rst diff --git a/doc/mongoc_apm_topology_closed_get_context.rst b/src/libmongoc/doc/mongoc_apm_topology_closed_get_context.rst similarity index 100% rename from doc/mongoc_apm_topology_closed_get_context.rst rename to src/libmongoc/doc/mongoc_apm_topology_closed_get_context.rst diff --git a/doc/mongoc_apm_topology_closed_get_topology_id.rst b/src/libmongoc/doc/mongoc_apm_topology_closed_get_topology_id.rst similarity index 100% rename from doc/mongoc_apm_topology_closed_get_topology_id.rst rename to src/libmongoc/doc/mongoc_apm_topology_closed_get_topology_id.rst diff --git a/doc/mongoc_apm_topology_closed_t.rst b/src/libmongoc/doc/mongoc_apm_topology_closed_t.rst similarity index 100% rename from doc/mongoc_apm_topology_closed_t.rst rename to src/libmongoc/doc/mongoc_apm_topology_closed_t.rst diff --git a/doc/mongoc_apm_topology_opening_get_context.rst b/src/libmongoc/doc/mongoc_apm_topology_opening_get_context.rst similarity index 100% rename from doc/mongoc_apm_topology_opening_get_context.rst rename to src/libmongoc/doc/mongoc_apm_topology_opening_get_context.rst diff --git a/doc/mongoc_apm_topology_opening_get_topology_id.rst b/src/libmongoc/doc/mongoc_apm_topology_opening_get_topology_id.rst similarity index 100% rename from doc/mongoc_apm_topology_opening_get_topology_id.rst rename to src/libmongoc/doc/mongoc_apm_topology_opening_get_topology_id.rst diff --git a/doc/mongoc_apm_topology_opening_t.rst b/src/libmongoc/doc/mongoc_apm_topology_opening_t.rst similarity index 100% rename from doc/mongoc_apm_topology_opening_t.rst rename to src/libmongoc/doc/mongoc_apm_topology_opening_t.rst diff --git a/doc/mongoc_bulk_operation_delete.rst b/src/libmongoc/doc/mongoc_bulk_operation_delete.rst similarity index 100% rename from doc/mongoc_bulk_operation_delete.rst rename to src/libmongoc/doc/mongoc_bulk_operation_delete.rst diff --git a/doc/mongoc_bulk_operation_delete_one.rst b/src/libmongoc/doc/mongoc_bulk_operation_delete_one.rst similarity index 100% rename from doc/mongoc_bulk_operation_delete_one.rst rename to src/libmongoc/doc/mongoc_bulk_operation_delete_one.rst diff --git a/doc/mongoc_bulk_operation_destroy.rst b/src/libmongoc/doc/mongoc_bulk_operation_destroy.rst similarity index 100% rename from doc/mongoc_bulk_operation_destroy.rst rename to src/libmongoc/doc/mongoc_bulk_operation_destroy.rst diff --git a/doc/mongoc_bulk_operation_execute.rst b/src/libmongoc/doc/mongoc_bulk_operation_execute.rst similarity index 100% rename from doc/mongoc_bulk_operation_execute.rst rename to src/libmongoc/doc/mongoc_bulk_operation_execute.rst diff --git a/doc/mongoc_bulk_operation_get_hint.rst b/src/libmongoc/doc/mongoc_bulk_operation_get_hint.rst similarity index 100% rename from doc/mongoc_bulk_operation_get_hint.rst rename to src/libmongoc/doc/mongoc_bulk_operation_get_hint.rst diff --git a/doc/mongoc_bulk_operation_get_write_concern.rst b/src/libmongoc/doc/mongoc_bulk_operation_get_write_concern.rst similarity index 100% rename from doc/mongoc_bulk_operation_get_write_concern.rst rename to src/libmongoc/doc/mongoc_bulk_operation_get_write_concern.rst diff --git a/doc/mongoc_bulk_operation_insert.rst b/src/libmongoc/doc/mongoc_bulk_operation_insert.rst similarity index 100% rename from doc/mongoc_bulk_operation_insert.rst rename to src/libmongoc/doc/mongoc_bulk_operation_insert.rst diff --git a/doc/mongoc_bulk_operation_insert_with_opts.rst b/src/libmongoc/doc/mongoc_bulk_operation_insert_with_opts.rst similarity index 100% rename from doc/mongoc_bulk_operation_insert_with_opts.rst rename to src/libmongoc/doc/mongoc_bulk_operation_insert_with_opts.rst diff --git a/doc/mongoc_bulk_operation_remove.rst b/src/libmongoc/doc/mongoc_bulk_operation_remove.rst similarity index 100% rename from doc/mongoc_bulk_operation_remove.rst rename to src/libmongoc/doc/mongoc_bulk_operation_remove.rst diff --git a/doc/mongoc_bulk_operation_remove_many_with_opts.rst b/src/libmongoc/doc/mongoc_bulk_operation_remove_many_with_opts.rst similarity index 100% rename from doc/mongoc_bulk_operation_remove_many_with_opts.rst rename to src/libmongoc/doc/mongoc_bulk_operation_remove_many_with_opts.rst diff --git a/doc/mongoc_bulk_operation_remove_one.rst b/src/libmongoc/doc/mongoc_bulk_operation_remove_one.rst similarity index 100% rename from doc/mongoc_bulk_operation_remove_one.rst rename to src/libmongoc/doc/mongoc_bulk_operation_remove_one.rst diff --git a/doc/mongoc_bulk_operation_remove_one_with_opts.rst b/src/libmongoc/doc/mongoc_bulk_operation_remove_one_with_opts.rst similarity index 100% rename from doc/mongoc_bulk_operation_remove_one_with_opts.rst rename to src/libmongoc/doc/mongoc_bulk_operation_remove_one_with_opts.rst diff --git a/doc/mongoc_bulk_operation_replace_one.rst b/src/libmongoc/doc/mongoc_bulk_operation_replace_one.rst similarity index 100% rename from doc/mongoc_bulk_operation_replace_one.rst rename to src/libmongoc/doc/mongoc_bulk_operation_replace_one.rst diff --git a/doc/mongoc_bulk_operation_replace_one_with_opts.rst b/src/libmongoc/doc/mongoc_bulk_operation_replace_one_with_opts.rst similarity index 100% rename from doc/mongoc_bulk_operation_replace_one_with_opts.rst rename to src/libmongoc/doc/mongoc_bulk_operation_replace_one_with_opts.rst diff --git a/doc/mongoc_bulk_operation_set_bypass_document_validation.rst b/src/libmongoc/doc/mongoc_bulk_operation_set_bypass_document_validation.rst similarity index 100% rename from doc/mongoc_bulk_operation_set_bypass_document_validation.rst rename to src/libmongoc/doc/mongoc_bulk_operation_set_bypass_document_validation.rst diff --git a/doc/mongoc_bulk_operation_set_hint.rst b/src/libmongoc/doc/mongoc_bulk_operation_set_hint.rst similarity index 100% rename from doc/mongoc_bulk_operation_set_hint.rst rename to src/libmongoc/doc/mongoc_bulk_operation_set_hint.rst diff --git a/doc/mongoc_bulk_operation_t.rst b/src/libmongoc/doc/mongoc_bulk_operation_t.rst similarity index 100% rename from doc/mongoc_bulk_operation_t.rst rename to src/libmongoc/doc/mongoc_bulk_operation_t.rst diff --git a/doc/mongoc_bulk_operation_update.rst b/src/libmongoc/doc/mongoc_bulk_operation_update.rst similarity index 100% rename from doc/mongoc_bulk_operation_update.rst rename to src/libmongoc/doc/mongoc_bulk_operation_update.rst diff --git a/doc/mongoc_bulk_operation_update_many_with_opts.rst b/src/libmongoc/doc/mongoc_bulk_operation_update_many_with_opts.rst similarity index 100% rename from doc/mongoc_bulk_operation_update_many_with_opts.rst rename to src/libmongoc/doc/mongoc_bulk_operation_update_many_with_opts.rst diff --git a/doc/mongoc_bulk_operation_update_one.rst b/src/libmongoc/doc/mongoc_bulk_operation_update_one.rst similarity index 100% rename from doc/mongoc_bulk_operation_update_one.rst rename to src/libmongoc/doc/mongoc_bulk_operation_update_one.rst diff --git a/doc/mongoc_bulk_operation_update_one_with_opts.rst b/src/libmongoc/doc/mongoc_bulk_operation_update_one_with_opts.rst similarity index 100% rename from doc/mongoc_bulk_operation_update_one_with_opts.rst rename to src/libmongoc/doc/mongoc_bulk_operation_update_one_with_opts.rst diff --git a/doc/mongoc_change_stream_destroy.rst b/src/libmongoc/doc/mongoc_change_stream_destroy.rst similarity index 100% rename from doc/mongoc_change_stream_destroy.rst rename to src/libmongoc/doc/mongoc_change_stream_destroy.rst diff --git a/doc/mongoc_change_stream_error_document.rst b/src/libmongoc/doc/mongoc_change_stream_error_document.rst similarity index 100% rename from doc/mongoc_change_stream_error_document.rst rename to src/libmongoc/doc/mongoc_change_stream_error_document.rst diff --git a/doc/mongoc_change_stream_next.rst b/src/libmongoc/doc/mongoc_change_stream_next.rst similarity index 100% rename from doc/mongoc_change_stream_next.rst rename to src/libmongoc/doc/mongoc_change_stream_next.rst diff --git a/doc/mongoc_change_stream_t.rst b/src/libmongoc/doc/mongoc_change_stream_t.rst similarity index 100% rename from doc/mongoc_change_stream_t.rst rename to src/libmongoc/doc/mongoc_change_stream_t.rst diff --git a/doc/mongoc_check_version.rst b/src/libmongoc/doc/mongoc_check_version.rst similarity index 100% rename from doc/mongoc_check_version.rst rename to src/libmongoc/doc/mongoc_check_version.rst diff --git a/doc/mongoc_cleanup.rst b/src/libmongoc/doc/mongoc_cleanup.rst similarity index 100% rename from doc/mongoc_cleanup.rst rename to src/libmongoc/doc/mongoc_cleanup.rst diff --git a/doc/mongoc_client_command.rst b/src/libmongoc/doc/mongoc_client_command.rst similarity index 100% rename from doc/mongoc_client_command.rst rename to src/libmongoc/doc/mongoc_client_command.rst diff --git a/doc/mongoc_client_command_simple.rst b/src/libmongoc/doc/mongoc_client_command_simple.rst similarity index 100% rename from doc/mongoc_client_command_simple.rst rename to src/libmongoc/doc/mongoc_client_command_simple.rst diff --git a/doc/mongoc_client_command_simple_with_server_id.rst b/src/libmongoc/doc/mongoc_client_command_simple_with_server_id.rst similarity index 100% rename from doc/mongoc_client_command_simple_with_server_id.rst rename to src/libmongoc/doc/mongoc_client_command_simple_with_server_id.rst diff --git a/doc/mongoc_client_command_with_opts.rst b/src/libmongoc/doc/mongoc_client_command_with_opts.rst similarity index 100% rename from doc/mongoc_client_command_with_opts.rst rename to src/libmongoc/doc/mongoc_client_command_with_opts.rst diff --git a/doc/mongoc_client_destroy.rst b/src/libmongoc/doc/mongoc_client_destroy.rst similarity index 100% rename from doc/mongoc_client_destroy.rst rename to src/libmongoc/doc/mongoc_client_destroy.rst diff --git a/doc/mongoc_client_find_databases_with_opts.rst b/src/libmongoc/doc/mongoc_client_find_databases_with_opts.rst similarity index 100% rename from doc/mongoc_client_find_databases_with_opts.rst rename to src/libmongoc/doc/mongoc_client_find_databases_with_opts.rst diff --git a/doc/mongoc_client_get_collection.rst b/src/libmongoc/doc/mongoc_client_get_collection.rst similarity index 100% rename from doc/mongoc_client_get_collection.rst rename to src/libmongoc/doc/mongoc_client_get_collection.rst diff --git a/doc/mongoc_client_get_database.rst b/src/libmongoc/doc/mongoc_client_get_database.rst similarity index 100% rename from doc/mongoc_client_get_database.rst rename to src/libmongoc/doc/mongoc_client_get_database.rst diff --git a/doc/mongoc_client_get_database_names.rst b/src/libmongoc/doc/mongoc_client_get_database_names.rst similarity index 100% rename from doc/mongoc_client_get_database_names.rst rename to src/libmongoc/doc/mongoc_client_get_database_names.rst diff --git a/doc/mongoc_client_get_database_names_with_opts.rst b/src/libmongoc/doc/mongoc_client_get_database_names_with_opts.rst similarity index 100% rename from doc/mongoc_client_get_database_names_with_opts.rst rename to src/libmongoc/doc/mongoc_client_get_database_names_with_opts.rst diff --git a/doc/mongoc_client_get_default_database.rst b/src/libmongoc/doc/mongoc_client_get_default_database.rst similarity index 100% rename from doc/mongoc_client_get_default_database.rst rename to src/libmongoc/doc/mongoc_client_get_default_database.rst diff --git a/doc/mongoc_client_get_gridfs.rst b/src/libmongoc/doc/mongoc_client_get_gridfs.rst similarity index 100% rename from doc/mongoc_client_get_gridfs.rst rename to src/libmongoc/doc/mongoc_client_get_gridfs.rst diff --git a/doc/mongoc_client_get_max_bson_size.rst b/src/libmongoc/doc/mongoc_client_get_max_bson_size.rst similarity index 100% rename from doc/mongoc_client_get_max_bson_size.rst rename to src/libmongoc/doc/mongoc_client_get_max_bson_size.rst diff --git a/doc/mongoc_client_get_max_message_size.rst b/src/libmongoc/doc/mongoc_client_get_max_message_size.rst similarity index 100% rename from doc/mongoc_client_get_max_message_size.rst rename to src/libmongoc/doc/mongoc_client_get_max_message_size.rst diff --git a/doc/mongoc_client_get_read_concern.rst b/src/libmongoc/doc/mongoc_client_get_read_concern.rst similarity index 100% rename from doc/mongoc_client_get_read_concern.rst rename to src/libmongoc/doc/mongoc_client_get_read_concern.rst diff --git a/doc/mongoc_client_get_read_prefs.rst b/src/libmongoc/doc/mongoc_client_get_read_prefs.rst similarity index 100% rename from doc/mongoc_client_get_read_prefs.rst rename to src/libmongoc/doc/mongoc_client_get_read_prefs.rst diff --git a/doc/mongoc_client_get_server_description.rst b/src/libmongoc/doc/mongoc_client_get_server_description.rst similarity index 100% rename from doc/mongoc_client_get_server_description.rst rename to src/libmongoc/doc/mongoc_client_get_server_description.rst diff --git a/doc/mongoc_client_get_server_descriptions.rst b/src/libmongoc/doc/mongoc_client_get_server_descriptions.rst similarity index 100% rename from doc/mongoc_client_get_server_descriptions.rst rename to src/libmongoc/doc/mongoc_client_get_server_descriptions.rst diff --git a/doc/mongoc_client_get_server_status.rst b/src/libmongoc/doc/mongoc_client_get_server_status.rst similarity index 100% rename from doc/mongoc_client_get_server_status.rst rename to src/libmongoc/doc/mongoc_client_get_server_status.rst diff --git a/doc/mongoc_client_get_uri.rst b/src/libmongoc/doc/mongoc_client_get_uri.rst similarity index 100% rename from doc/mongoc_client_get_uri.rst rename to src/libmongoc/doc/mongoc_client_get_uri.rst diff --git a/doc/mongoc_client_get_write_concern.rst b/src/libmongoc/doc/mongoc_client_get_write_concern.rst similarity index 100% rename from doc/mongoc_client_get_write_concern.rst rename to src/libmongoc/doc/mongoc_client_get_write_concern.rst diff --git a/doc/mongoc_client_new.rst b/src/libmongoc/doc/mongoc_client_new.rst similarity index 100% rename from doc/mongoc_client_new.rst rename to src/libmongoc/doc/mongoc_client_new.rst diff --git a/doc/mongoc_client_new_from_uri.rst b/src/libmongoc/doc/mongoc_client_new_from_uri.rst similarity index 100% rename from doc/mongoc_client_new_from_uri.rst rename to src/libmongoc/doc/mongoc_client_new_from_uri.rst diff --git a/doc/mongoc_client_pool_destroy.rst b/src/libmongoc/doc/mongoc_client_pool_destroy.rst similarity index 100% rename from doc/mongoc_client_pool_destroy.rst rename to src/libmongoc/doc/mongoc_client_pool_destroy.rst diff --git a/doc/mongoc_client_pool_max_size.rst b/src/libmongoc/doc/mongoc_client_pool_max_size.rst similarity index 100% rename from doc/mongoc_client_pool_max_size.rst rename to src/libmongoc/doc/mongoc_client_pool_max_size.rst diff --git a/doc/mongoc_client_pool_min_size.rst b/src/libmongoc/doc/mongoc_client_pool_min_size.rst similarity index 100% rename from doc/mongoc_client_pool_min_size.rst rename to src/libmongoc/doc/mongoc_client_pool_min_size.rst diff --git a/doc/mongoc_client_pool_new.rst b/src/libmongoc/doc/mongoc_client_pool_new.rst similarity index 100% rename from doc/mongoc_client_pool_new.rst rename to src/libmongoc/doc/mongoc_client_pool_new.rst diff --git a/doc/mongoc_client_pool_pop.rst b/src/libmongoc/doc/mongoc_client_pool_pop.rst similarity index 100% rename from doc/mongoc_client_pool_pop.rst rename to src/libmongoc/doc/mongoc_client_pool_pop.rst diff --git a/doc/mongoc_client_pool_push.rst b/src/libmongoc/doc/mongoc_client_pool_push.rst similarity index 100% rename from doc/mongoc_client_pool_push.rst rename to src/libmongoc/doc/mongoc_client_pool_push.rst diff --git a/doc/mongoc_client_pool_set_apm_callbacks.rst b/src/libmongoc/doc/mongoc_client_pool_set_apm_callbacks.rst similarity index 100% rename from doc/mongoc_client_pool_set_apm_callbacks.rst rename to src/libmongoc/doc/mongoc_client_pool_set_apm_callbacks.rst diff --git a/doc/mongoc_client_pool_set_appname.rst b/src/libmongoc/doc/mongoc_client_pool_set_appname.rst similarity index 100% rename from doc/mongoc_client_pool_set_appname.rst rename to src/libmongoc/doc/mongoc_client_pool_set_appname.rst diff --git a/doc/mongoc_client_pool_set_error_api.rst b/src/libmongoc/doc/mongoc_client_pool_set_error_api.rst similarity index 100% rename from doc/mongoc_client_pool_set_error_api.rst rename to src/libmongoc/doc/mongoc_client_pool_set_error_api.rst diff --git a/doc/mongoc_client_pool_set_ssl_opts.rst b/src/libmongoc/doc/mongoc_client_pool_set_ssl_opts.rst similarity index 100% rename from doc/mongoc_client_pool_set_ssl_opts.rst rename to src/libmongoc/doc/mongoc_client_pool_set_ssl_opts.rst diff --git a/doc/mongoc_client_pool_t.rst b/src/libmongoc/doc/mongoc_client_pool_t.rst similarity index 100% rename from doc/mongoc_client_pool_t.rst rename to src/libmongoc/doc/mongoc_client_pool_t.rst diff --git a/doc/mongoc_client_pool_try_pop.rst b/src/libmongoc/doc/mongoc_client_pool_try_pop.rst similarity index 100% rename from doc/mongoc_client_pool_try_pop.rst rename to src/libmongoc/doc/mongoc_client_pool_try_pop.rst diff --git a/doc/mongoc_client_read_command_with_opts.rst b/src/libmongoc/doc/mongoc_client_read_command_with_opts.rst similarity index 100% rename from doc/mongoc_client_read_command_with_opts.rst rename to src/libmongoc/doc/mongoc_client_read_command_with_opts.rst diff --git a/doc/mongoc_client_read_write_command_with_opts.rst b/src/libmongoc/doc/mongoc_client_read_write_command_with_opts.rst similarity index 100% rename from doc/mongoc_client_read_write_command_with_opts.rst rename to src/libmongoc/doc/mongoc_client_read_write_command_with_opts.rst diff --git a/doc/mongoc_client_select_server.rst b/src/libmongoc/doc/mongoc_client_select_server.rst similarity index 100% rename from doc/mongoc_client_select_server.rst rename to src/libmongoc/doc/mongoc_client_select_server.rst diff --git a/doc/mongoc_client_session_advance_cluster_time.rst b/src/libmongoc/doc/mongoc_client_session_advance_cluster_time.rst similarity index 100% rename from doc/mongoc_client_session_advance_cluster_time.rst rename to src/libmongoc/doc/mongoc_client_session_advance_cluster_time.rst diff --git a/doc/mongoc_client_session_advance_operation_time.rst b/src/libmongoc/doc/mongoc_client_session_advance_operation_time.rst similarity index 100% rename from doc/mongoc_client_session_advance_operation_time.rst rename to src/libmongoc/doc/mongoc_client_session_advance_operation_time.rst diff --git a/doc/mongoc_client_session_append.rst b/src/libmongoc/doc/mongoc_client_session_append.rst similarity index 100% rename from doc/mongoc_client_session_append.rst rename to src/libmongoc/doc/mongoc_client_session_append.rst diff --git a/doc/mongoc_client_session_destroy.rst b/src/libmongoc/doc/mongoc_client_session_destroy.rst similarity index 100% rename from doc/mongoc_client_session_destroy.rst rename to src/libmongoc/doc/mongoc_client_session_destroy.rst diff --git a/doc/mongoc_client_session_get_client.rst b/src/libmongoc/doc/mongoc_client_session_get_client.rst similarity index 100% rename from doc/mongoc_client_session_get_client.rst rename to src/libmongoc/doc/mongoc_client_session_get_client.rst diff --git a/doc/mongoc_client_session_get_cluster_time.rst b/src/libmongoc/doc/mongoc_client_session_get_cluster_time.rst similarity index 100% rename from doc/mongoc_client_session_get_cluster_time.rst rename to src/libmongoc/doc/mongoc_client_session_get_cluster_time.rst diff --git a/doc/mongoc_client_session_get_lsid.rst b/src/libmongoc/doc/mongoc_client_session_get_lsid.rst similarity index 100% rename from doc/mongoc_client_session_get_lsid.rst rename to src/libmongoc/doc/mongoc_client_session_get_lsid.rst diff --git a/doc/mongoc_client_session_get_operation_time.rst b/src/libmongoc/doc/mongoc_client_session_get_operation_time.rst similarity index 100% rename from doc/mongoc_client_session_get_operation_time.rst rename to src/libmongoc/doc/mongoc_client_session_get_operation_time.rst diff --git a/doc/mongoc_client_session_get_opts.rst b/src/libmongoc/doc/mongoc_client_session_get_opts.rst similarity index 100% rename from doc/mongoc_client_session_get_opts.rst rename to src/libmongoc/doc/mongoc_client_session_get_opts.rst diff --git a/doc/mongoc_client_session_t.rst b/src/libmongoc/doc/mongoc_client_session_t.rst similarity index 100% rename from doc/mongoc_client_session_t.rst rename to src/libmongoc/doc/mongoc_client_session_t.rst diff --git a/doc/mongoc_client_set_apm_callbacks.rst b/src/libmongoc/doc/mongoc_client_set_apm_callbacks.rst similarity index 100% rename from doc/mongoc_client_set_apm_callbacks.rst rename to src/libmongoc/doc/mongoc_client_set_apm_callbacks.rst diff --git a/doc/mongoc_client_set_appname.rst b/src/libmongoc/doc/mongoc_client_set_appname.rst similarity index 100% rename from doc/mongoc_client_set_appname.rst rename to src/libmongoc/doc/mongoc_client_set_appname.rst diff --git a/doc/mongoc_client_set_error_api.rst b/src/libmongoc/doc/mongoc_client_set_error_api.rst similarity index 100% rename from doc/mongoc_client_set_error_api.rst rename to src/libmongoc/doc/mongoc_client_set_error_api.rst diff --git a/doc/mongoc_client_set_read_concern.rst b/src/libmongoc/doc/mongoc_client_set_read_concern.rst similarity index 100% rename from doc/mongoc_client_set_read_concern.rst rename to src/libmongoc/doc/mongoc_client_set_read_concern.rst diff --git a/doc/mongoc_client_set_read_prefs.rst b/src/libmongoc/doc/mongoc_client_set_read_prefs.rst similarity index 100% rename from doc/mongoc_client_set_read_prefs.rst rename to src/libmongoc/doc/mongoc_client_set_read_prefs.rst diff --git a/doc/mongoc_client_set_ssl_opts.rst b/src/libmongoc/doc/mongoc_client_set_ssl_opts.rst similarity index 100% rename from doc/mongoc_client_set_ssl_opts.rst rename to src/libmongoc/doc/mongoc_client_set_ssl_opts.rst diff --git a/doc/mongoc_client_set_stream_initiator.rst b/src/libmongoc/doc/mongoc_client_set_stream_initiator.rst similarity index 100% rename from doc/mongoc_client_set_stream_initiator.rst rename to src/libmongoc/doc/mongoc_client_set_stream_initiator.rst diff --git a/doc/mongoc_client_set_write_concern.rst b/src/libmongoc/doc/mongoc_client_set_write_concern.rst similarity index 100% rename from doc/mongoc_client_set_write_concern.rst rename to src/libmongoc/doc/mongoc_client_set_write_concern.rst diff --git a/doc/mongoc_client_start_session.rst b/src/libmongoc/doc/mongoc_client_start_session.rst similarity index 100% rename from doc/mongoc_client_start_session.rst rename to src/libmongoc/doc/mongoc_client_start_session.rst diff --git a/doc/mongoc_client_t.rst b/src/libmongoc/doc/mongoc_client_t.rst similarity index 100% rename from doc/mongoc_client_t.rst rename to src/libmongoc/doc/mongoc_client_t.rst diff --git a/doc/mongoc_client_write_command_with_opts.rst b/src/libmongoc/doc/mongoc_client_write_command_with_opts.rst similarity index 100% rename from doc/mongoc_client_write_command_with_opts.rst rename to src/libmongoc/doc/mongoc_client_write_command_with_opts.rst diff --git a/doc/mongoc_collection_aggregate.rst b/src/libmongoc/doc/mongoc_collection_aggregate.rst similarity index 100% rename from doc/mongoc_collection_aggregate.rst rename to src/libmongoc/doc/mongoc_collection_aggregate.rst diff --git a/doc/mongoc_collection_command.rst b/src/libmongoc/doc/mongoc_collection_command.rst similarity index 100% rename from doc/mongoc_collection_command.rst rename to src/libmongoc/doc/mongoc_collection_command.rst diff --git a/doc/mongoc_collection_command_simple.rst b/src/libmongoc/doc/mongoc_collection_command_simple.rst similarity index 100% rename from doc/mongoc_collection_command_simple.rst rename to src/libmongoc/doc/mongoc_collection_command_simple.rst diff --git a/doc/mongoc_collection_command_with_opts.rst b/src/libmongoc/doc/mongoc_collection_command_with_opts.rst similarity index 100% rename from doc/mongoc_collection_command_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_command_with_opts.rst diff --git a/doc/mongoc_collection_copy.rst b/src/libmongoc/doc/mongoc_collection_copy.rst similarity index 100% rename from doc/mongoc_collection_copy.rst rename to src/libmongoc/doc/mongoc_collection_copy.rst diff --git a/doc/mongoc_collection_count.rst b/src/libmongoc/doc/mongoc_collection_count.rst similarity index 100% rename from doc/mongoc_collection_count.rst rename to src/libmongoc/doc/mongoc_collection_count.rst diff --git a/doc/mongoc_collection_count_with_opts.rst b/src/libmongoc/doc/mongoc_collection_count_with_opts.rst similarity index 100% rename from doc/mongoc_collection_count_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_count_with_opts.rst diff --git a/doc/mongoc_collection_create_bulk_operation.rst b/src/libmongoc/doc/mongoc_collection_create_bulk_operation.rst similarity index 100% rename from doc/mongoc_collection_create_bulk_operation.rst rename to src/libmongoc/doc/mongoc_collection_create_bulk_operation.rst diff --git a/doc/mongoc_collection_create_bulk_operation_with_opts.rst b/src/libmongoc/doc/mongoc_collection_create_bulk_operation_with_opts.rst similarity index 100% rename from doc/mongoc_collection_create_bulk_operation_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_create_bulk_operation_with_opts.rst diff --git a/doc/mongoc_collection_create_index.rst b/src/libmongoc/doc/mongoc_collection_create_index.rst similarity index 100% rename from doc/mongoc_collection_create_index.rst rename to src/libmongoc/doc/mongoc_collection_create_index.rst diff --git a/doc/mongoc_collection_create_index_with_opts.rst b/src/libmongoc/doc/mongoc_collection_create_index_with_opts.rst similarity index 100% rename from doc/mongoc_collection_create_index_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_create_index_with_opts.rst diff --git a/doc/mongoc_collection_delete.rst b/src/libmongoc/doc/mongoc_collection_delete.rst similarity index 100% rename from doc/mongoc_collection_delete.rst rename to src/libmongoc/doc/mongoc_collection_delete.rst diff --git a/doc/mongoc_collection_delete_many.rst b/src/libmongoc/doc/mongoc_collection_delete_many.rst similarity index 100% rename from doc/mongoc_collection_delete_many.rst rename to src/libmongoc/doc/mongoc_collection_delete_many.rst diff --git a/doc/mongoc_collection_delete_one.rst b/src/libmongoc/doc/mongoc_collection_delete_one.rst similarity index 100% rename from doc/mongoc_collection_delete_one.rst rename to src/libmongoc/doc/mongoc_collection_delete_one.rst diff --git a/doc/mongoc_collection_destroy.rst b/src/libmongoc/doc/mongoc_collection_destroy.rst similarity index 100% rename from doc/mongoc_collection_destroy.rst rename to src/libmongoc/doc/mongoc_collection_destroy.rst diff --git a/doc/mongoc_collection_drop.rst b/src/libmongoc/doc/mongoc_collection_drop.rst similarity index 100% rename from doc/mongoc_collection_drop.rst rename to src/libmongoc/doc/mongoc_collection_drop.rst diff --git a/doc/mongoc_collection_drop_index.rst b/src/libmongoc/doc/mongoc_collection_drop_index.rst similarity index 100% rename from doc/mongoc_collection_drop_index.rst rename to src/libmongoc/doc/mongoc_collection_drop_index.rst diff --git a/doc/mongoc_collection_drop_index_with_opts.rst b/src/libmongoc/doc/mongoc_collection_drop_index_with_opts.rst similarity index 100% rename from doc/mongoc_collection_drop_index_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_drop_index_with_opts.rst diff --git a/doc/mongoc_collection_drop_with_opts.rst b/src/libmongoc/doc/mongoc_collection_drop_with_opts.rst similarity index 100% rename from doc/mongoc_collection_drop_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_drop_with_opts.rst diff --git a/doc/mongoc_collection_ensure_index.rst b/src/libmongoc/doc/mongoc_collection_ensure_index.rst similarity index 100% rename from doc/mongoc_collection_ensure_index.rst rename to src/libmongoc/doc/mongoc_collection_ensure_index.rst diff --git a/doc/mongoc_collection_find.rst b/src/libmongoc/doc/mongoc_collection_find.rst similarity index 100% rename from doc/mongoc_collection_find.rst rename to src/libmongoc/doc/mongoc_collection_find.rst diff --git a/doc/mongoc_collection_find_and_modify.rst b/src/libmongoc/doc/mongoc_collection_find_and_modify.rst similarity index 100% rename from doc/mongoc_collection_find_and_modify.rst rename to src/libmongoc/doc/mongoc_collection_find_and_modify.rst diff --git a/doc/mongoc_collection_find_and_modify_with_opts.rst b/src/libmongoc/doc/mongoc_collection_find_and_modify_with_opts.rst similarity index 100% rename from doc/mongoc_collection_find_and_modify_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_find_and_modify_with_opts.rst diff --git a/doc/mongoc_collection_find_indexes.rst b/src/libmongoc/doc/mongoc_collection_find_indexes.rst similarity index 100% rename from doc/mongoc_collection_find_indexes.rst rename to src/libmongoc/doc/mongoc_collection_find_indexes.rst diff --git a/doc/mongoc_collection_find_indexes_with_opts.rst b/src/libmongoc/doc/mongoc_collection_find_indexes_with_opts.rst similarity index 100% rename from doc/mongoc_collection_find_indexes_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_find_indexes_with_opts.rst diff --git a/doc/mongoc_collection_find_with_opts.rst b/src/libmongoc/doc/mongoc_collection_find_with_opts.rst similarity index 100% rename from doc/mongoc_collection_find_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_find_with_opts.rst diff --git a/doc/mongoc_collection_get_last_error.rst b/src/libmongoc/doc/mongoc_collection_get_last_error.rst similarity index 100% rename from doc/mongoc_collection_get_last_error.rst rename to src/libmongoc/doc/mongoc_collection_get_last_error.rst diff --git a/doc/mongoc_collection_get_name.rst b/src/libmongoc/doc/mongoc_collection_get_name.rst similarity index 100% rename from doc/mongoc_collection_get_name.rst rename to src/libmongoc/doc/mongoc_collection_get_name.rst diff --git a/doc/mongoc_collection_get_read_concern.rst b/src/libmongoc/doc/mongoc_collection_get_read_concern.rst similarity index 100% rename from doc/mongoc_collection_get_read_concern.rst rename to src/libmongoc/doc/mongoc_collection_get_read_concern.rst diff --git a/doc/mongoc_collection_get_read_prefs.rst b/src/libmongoc/doc/mongoc_collection_get_read_prefs.rst similarity index 100% rename from doc/mongoc_collection_get_read_prefs.rst rename to src/libmongoc/doc/mongoc_collection_get_read_prefs.rst diff --git a/doc/mongoc_collection_get_write_concern.rst b/src/libmongoc/doc/mongoc_collection_get_write_concern.rst similarity index 100% rename from doc/mongoc_collection_get_write_concern.rst rename to src/libmongoc/doc/mongoc_collection_get_write_concern.rst diff --git a/doc/mongoc_collection_insert.rst b/src/libmongoc/doc/mongoc_collection_insert.rst similarity index 100% rename from doc/mongoc_collection_insert.rst rename to src/libmongoc/doc/mongoc_collection_insert.rst diff --git a/doc/mongoc_collection_insert_bulk.rst b/src/libmongoc/doc/mongoc_collection_insert_bulk.rst similarity index 100% rename from doc/mongoc_collection_insert_bulk.rst rename to src/libmongoc/doc/mongoc_collection_insert_bulk.rst diff --git a/doc/mongoc_collection_insert_many.rst b/src/libmongoc/doc/mongoc_collection_insert_many.rst similarity index 100% rename from doc/mongoc_collection_insert_many.rst rename to src/libmongoc/doc/mongoc_collection_insert_many.rst diff --git a/doc/mongoc_collection_insert_one.rst b/src/libmongoc/doc/mongoc_collection_insert_one.rst similarity index 100% rename from doc/mongoc_collection_insert_one.rst rename to src/libmongoc/doc/mongoc_collection_insert_one.rst diff --git a/doc/mongoc_collection_keys_to_index_string.rst b/src/libmongoc/doc/mongoc_collection_keys_to_index_string.rst similarity index 100% rename from doc/mongoc_collection_keys_to_index_string.rst rename to src/libmongoc/doc/mongoc_collection_keys_to_index_string.rst diff --git a/doc/mongoc_collection_read_command_with_opts.rst b/src/libmongoc/doc/mongoc_collection_read_command_with_opts.rst similarity index 100% rename from doc/mongoc_collection_read_command_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_read_command_with_opts.rst diff --git a/doc/mongoc_collection_read_write_command_with_opts.rst b/src/libmongoc/doc/mongoc_collection_read_write_command_with_opts.rst similarity index 100% rename from doc/mongoc_collection_read_write_command_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_read_write_command_with_opts.rst diff --git a/doc/mongoc_collection_remove.rst b/src/libmongoc/doc/mongoc_collection_remove.rst similarity index 100% rename from doc/mongoc_collection_remove.rst rename to src/libmongoc/doc/mongoc_collection_remove.rst diff --git a/doc/mongoc_collection_rename.rst b/src/libmongoc/doc/mongoc_collection_rename.rst similarity index 100% rename from doc/mongoc_collection_rename.rst rename to src/libmongoc/doc/mongoc_collection_rename.rst diff --git a/doc/mongoc_collection_rename_with_opts.rst b/src/libmongoc/doc/mongoc_collection_rename_with_opts.rst similarity index 100% rename from doc/mongoc_collection_rename_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_rename_with_opts.rst diff --git a/doc/mongoc_collection_replace_one.rst b/src/libmongoc/doc/mongoc_collection_replace_one.rst similarity index 100% rename from doc/mongoc_collection_replace_one.rst rename to src/libmongoc/doc/mongoc_collection_replace_one.rst diff --git a/doc/mongoc_collection_save.rst b/src/libmongoc/doc/mongoc_collection_save.rst similarity index 100% rename from doc/mongoc_collection_save.rst rename to src/libmongoc/doc/mongoc_collection_save.rst diff --git a/doc/mongoc_collection_set_read_concern.rst b/src/libmongoc/doc/mongoc_collection_set_read_concern.rst similarity index 100% rename from doc/mongoc_collection_set_read_concern.rst rename to src/libmongoc/doc/mongoc_collection_set_read_concern.rst diff --git a/doc/mongoc_collection_set_read_prefs.rst b/src/libmongoc/doc/mongoc_collection_set_read_prefs.rst similarity index 100% rename from doc/mongoc_collection_set_read_prefs.rst rename to src/libmongoc/doc/mongoc_collection_set_read_prefs.rst diff --git a/doc/mongoc_collection_set_write_concern.rst b/src/libmongoc/doc/mongoc_collection_set_write_concern.rst similarity index 100% rename from doc/mongoc_collection_set_write_concern.rst rename to src/libmongoc/doc/mongoc_collection_set_write_concern.rst diff --git a/doc/mongoc_collection_stats.rst b/src/libmongoc/doc/mongoc_collection_stats.rst similarity index 100% rename from doc/mongoc_collection_stats.rst rename to src/libmongoc/doc/mongoc_collection_stats.rst diff --git a/doc/mongoc_collection_t.rst b/src/libmongoc/doc/mongoc_collection_t.rst similarity index 100% rename from doc/mongoc_collection_t.rst rename to src/libmongoc/doc/mongoc_collection_t.rst diff --git a/doc/mongoc_collection_update.rst b/src/libmongoc/doc/mongoc_collection_update.rst similarity index 100% rename from doc/mongoc_collection_update.rst rename to src/libmongoc/doc/mongoc_collection_update.rst diff --git a/doc/mongoc_collection_update_many.rst b/src/libmongoc/doc/mongoc_collection_update_many.rst similarity index 100% rename from doc/mongoc_collection_update_many.rst rename to src/libmongoc/doc/mongoc_collection_update_many.rst diff --git a/doc/mongoc_collection_update_one.rst b/src/libmongoc/doc/mongoc_collection_update_one.rst similarity index 100% rename from doc/mongoc_collection_update_one.rst rename to src/libmongoc/doc/mongoc_collection_update_one.rst diff --git a/doc/mongoc_collection_validate.rst b/src/libmongoc/doc/mongoc_collection_validate.rst similarity index 100% rename from doc/mongoc_collection_validate.rst rename to src/libmongoc/doc/mongoc_collection_validate.rst diff --git a/doc/mongoc_collection_watch.rst b/src/libmongoc/doc/mongoc_collection_watch.rst similarity index 100% rename from doc/mongoc_collection_watch.rst rename to src/libmongoc/doc/mongoc_collection_watch.rst diff --git a/doc/mongoc_collection_write_command_with_opts.rst b/src/libmongoc/doc/mongoc_collection_write_command_with_opts.rst similarity index 100% rename from doc/mongoc_collection_write_command_with_opts.rst rename to src/libmongoc/doc/mongoc_collection_write_command_with_opts.rst diff --git a/doc/mongoc_cursor_clone.rst b/src/libmongoc/doc/mongoc_cursor_clone.rst similarity index 100% rename from doc/mongoc_cursor_clone.rst rename to src/libmongoc/doc/mongoc_cursor_clone.rst diff --git a/doc/mongoc_cursor_current.rst b/src/libmongoc/doc/mongoc_cursor_current.rst similarity index 100% rename from doc/mongoc_cursor_current.rst rename to src/libmongoc/doc/mongoc_cursor_current.rst diff --git a/doc/mongoc_cursor_destroy.rst b/src/libmongoc/doc/mongoc_cursor_destroy.rst similarity index 100% rename from doc/mongoc_cursor_destroy.rst rename to src/libmongoc/doc/mongoc_cursor_destroy.rst diff --git a/doc/mongoc_cursor_error.rst b/src/libmongoc/doc/mongoc_cursor_error.rst similarity index 100% rename from doc/mongoc_cursor_error.rst rename to src/libmongoc/doc/mongoc_cursor_error.rst diff --git a/doc/mongoc_cursor_error_document.rst b/src/libmongoc/doc/mongoc_cursor_error_document.rst similarity index 100% rename from doc/mongoc_cursor_error_document.rst rename to src/libmongoc/doc/mongoc_cursor_error_document.rst diff --git a/doc/mongoc_cursor_get_batch_size.rst b/src/libmongoc/doc/mongoc_cursor_get_batch_size.rst similarity index 100% rename from doc/mongoc_cursor_get_batch_size.rst rename to src/libmongoc/doc/mongoc_cursor_get_batch_size.rst diff --git a/doc/mongoc_cursor_get_hint.rst b/src/libmongoc/doc/mongoc_cursor_get_hint.rst similarity index 100% rename from doc/mongoc_cursor_get_hint.rst rename to src/libmongoc/doc/mongoc_cursor_get_hint.rst diff --git a/doc/mongoc_cursor_get_host.rst b/src/libmongoc/doc/mongoc_cursor_get_host.rst similarity index 100% rename from doc/mongoc_cursor_get_host.rst rename to src/libmongoc/doc/mongoc_cursor_get_host.rst diff --git a/doc/mongoc_cursor_get_id.rst b/src/libmongoc/doc/mongoc_cursor_get_id.rst similarity index 100% rename from doc/mongoc_cursor_get_id.rst rename to src/libmongoc/doc/mongoc_cursor_get_id.rst diff --git a/doc/mongoc_cursor_get_limit.rst b/src/libmongoc/doc/mongoc_cursor_get_limit.rst similarity index 100% rename from doc/mongoc_cursor_get_limit.rst rename to src/libmongoc/doc/mongoc_cursor_get_limit.rst diff --git a/doc/mongoc_cursor_get_max_await_time_ms.rst b/src/libmongoc/doc/mongoc_cursor_get_max_await_time_ms.rst similarity index 100% rename from doc/mongoc_cursor_get_max_await_time_ms.rst rename to src/libmongoc/doc/mongoc_cursor_get_max_await_time_ms.rst diff --git a/doc/mongoc_cursor_is_alive.rst b/src/libmongoc/doc/mongoc_cursor_is_alive.rst similarity index 100% rename from doc/mongoc_cursor_is_alive.rst rename to src/libmongoc/doc/mongoc_cursor_is_alive.rst diff --git a/doc/mongoc_cursor_more.rst b/src/libmongoc/doc/mongoc_cursor_more.rst similarity index 100% rename from doc/mongoc_cursor_more.rst rename to src/libmongoc/doc/mongoc_cursor_more.rst diff --git a/doc/mongoc_cursor_new_from_command_reply.rst b/src/libmongoc/doc/mongoc_cursor_new_from_command_reply.rst similarity index 100% rename from doc/mongoc_cursor_new_from_command_reply.rst rename to src/libmongoc/doc/mongoc_cursor_new_from_command_reply.rst diff --git a/doc/mongoc_cursor_next.rst b/src/libmongoc/doc/mongoc_cursor_next.rst similarity index 100% rename from doc/mongoc_cursor_next.rst rename to src/libmongoc/doc/mongoc_cursor_next.rst diff --git a/doc/mongoc_cursor_set_batch_size.rst b/src/libmongoc/doc/mongoc_cursor_set_batch_size.rst similarity index 100% rename from doc/mongoc_cursor_set_batch_size.rst rename to src/libmongoc/doc/mongoc_cursor_set_batch_size.rst diff --git a/doc/mongoc_cursor_set_hint.rst b/src/libmongoc/doc/mongoc_cursor_set_hint.rst similarity index 100% rename from doc/mongoc_cursor_set_hint.rst rename to src/libmongoc/doc/mongoc_cursor_set_hint.rst diff --git a/doc/mongoc_cursor_set_limit.rst b/src/libmongoc/doc/mongoc_cursor_set_limit.rst similarity index 100% rename from doc/mongoc_cursor_set_limit.rst rename to src/libmongoc/doc/mongoc_cursor_set_limit.rst diff --git a/doc/mongoc_cursor_set_max_await_time_ms.rst b/src/libmongoc/doc/mongoc_cursor_set_max_await_time_ms.rst similarity index 100% rename from doc/mongoc_cursor_set_max_await_time_ms.rst rename to src/libmongoc/doc/mongoc_cursor_set_max_await_time_ms.rst diff --git a/doc/mongoc_cursor_t.rst b/src/libmongoc/doc/mongoc_cursor_t.rst similarity index 100% rename from doc/mongoc_cursor_t.rst rename to src/libmongoc/doc/mongoc_cursor_t.rst diff --git a/doc/mongoc_database_add_user.rst b/src/libmongoc/doc/mongoc_database_add_user.rst similarity index 100% rename from doc/mongoc_database_add_user.rst rename to src/libmongoc/doc/mongoc_database_add_user.rst diff --git a/doc/mongoc_database_command.rst b/src/libmongoc/doc/mongoc_database_command.rst similarity index 100% rename from doc/mongoc_database_command.rst rename to src/libmongoc/doc/mongoc_database_command.rst diff --git a/doc/mongoc_database_command_simple.rst b/src/libmongoc/doc/mongoc_database_command_simple.rst similarity index 100% rename from doc/mongoc_database_command_simple.rst rename to src/libmongoc/doc/mongoc_database_command_simple.rst diff --git a/doc/mongoc_database_command_with_opts.rst b/src/libmongoc/doc/mongoc_database_command_with_opts.rst similarity index 100% rename from doc/mongoc_database_command_with_opts.rst rename to src/libmongoc/doc/mongoc_database_command_with_opts.rst diff --git a/doc/mongoc_database_copy.rst b/src/libmongoc/doc/mongoc_database_copy.rst similarity index 100% rename from doc/mongoc_database_copy.rst rename to src/libmongoc/doc/mongoc_database_copy.rst diff --git a/doc/mongoc_database_create_collection.rst b/src/libmongoc/doc/mongoc_database_create_collection.rst similarity index 100% rename from doc/mongoc_database_create_collection.rst rename to src/libmongoc/doc/mongoc_database_create_collection.rst diff --git a/doc/mongoc_database_destroy.rst b/src/libmongoc/doc/mongoc_database_destroy.rst similarity index 100% rename from doc/mongoc_database_destroy.rst rename to src/libmongoc/doc/mongoc_database_destroy.rst diff --git a/doc/mongoc_database_drop.rst b/src/libmongoc/doc/mongoc_database_drop.rst similarity index 100% rename from doc/mongoc_database_drop.rst rename to src/libmongoc/doc/mongoc_database_drop.rst diff --git a/doc/mongoc_database_drop_with_opts.rst b/src/libmongoc/doc/mongoc_database_drop_with_opts.rst similarity index 100% rename from doc/mongoc_database_drop_with_opts.rst rename to src/libmongoc/doc/mongoc_database_drop_with_opts.rst diff --git a/doc/mongoc_database_find_collections.rst b/src/libmongoc/doc/mongoc_database_find_collections.rst similarity index 100% rename from doc/mongoc_database_find_collections.rst rename to src/libmongoc/doc/mongoc_database_find_collections.rst diff --git a/doc/mongoc_database_find_collections_with_opts.rst b/src/libmongoc/doc/mongoc_database_find_collections_with_opts.rst similarity index 100% rename from doc/mongoc_database_find_collections_with_opts.rst rename to src/libmongoc/doc/mongoc_database_find_collections_with_opts.rst diff --git a/doc/mongoc_database_get_collection.rst b/src/libmongoc/doc/mongoc_database_get_collection.rst similarity index 100% rename from doc/mongoc_database_get_collection.rst rename to src/libmongoc/doc/mongoc_database_get_collection.rst diff --git a/doc/mongoc_database_get_collection_names.rst b/src/libmongoc/doc/mongoc_database_get_collection_names.rst similarity index 100% rename from doc/mongoc_database_get_collection_names.rst rename to src/libmongoc/doc/mongoc_database_get_collection_names.rst diff --git a/doc/mongoc_database_get_collection_names_with_opts.rst b/src/libmongoc/doc/mongoc_database_get_collection_names_with_opts.rst similarity index 100% rename from doc/mongoc_database_get_collection_names_with_opts.rst rename to src/libmongoc/doc/mongoc_database_get_collection_names_with_opts.rst diff --git a/doc/mongoc_database_get_name.rst b/src/libmongoc/doc/mongoc_database_get_name.rst similarity index 100% rename from doc/mongoc_database_get_name.rst rename to src/libmongoc/doc/mongoc_database_get_name.rst diff --git a/doc/mongoc_database_get_read_concern.rst b/src/libmongoc/doc/mongoc_database_get_read_concern.rst similarity index 100% rename from doc/mongoc_database_get_read_concern.rst rename to src/libmongoc/doc/mongoc_database_get_read_concern.rst diff --git a/doc/mongoc_database_get_read_prefs.rst b/src/libmongoc/doc/mongoc_database_get_read_prefs.rst similarity index 100% rename from doc/mongoc_database_get_read_prefs.rst rename to src/libmongoc/doc/mongoc_database_get_read_prefs.rst diff --git a/doc/mongoc_database_get_write_concern.rst b/src/libmongoc/doc/mongoc_database_get_write_concern.rst similarity index 100% rename from doc/mongoc_database_get_write_concern.rst rename to src/libmongoc/doc/mongoc_database_get_write_concern.rst diff --git a/doc/mongoc_database_has_collection.rst b/src/libmongoc/doc/mongoc_database_has_collection.rst similarity index 100% rename from doc/mongoc_database_has_collection.rst rename to src/libmongoc/doc/mongoc_database_has_collection.rst diff --git a/doc/mongoc_database_read_command_with_opts.rst b/src/libmongoc/doc/mongoc_database_read_command_with_opts.rst similarity index 100% rename from doc/mongoc_database_read_command_with_opts.rst rename to src/libmongoc/doc/mongoc_database_read_command_with_opts.rst diff --git a/doc/mongoc_database_read_write_command_with_opts.rst b/src/libmongoc/doc/mongoc_database_read_write_command_with_opts.rst similarity index 100% rename from doc/mongoc_database_read_write_command_with_opts.rst rename to src/libmongoc/doc/mongoc_database_read_write_command_with_opts.rst diff --git a/doc/mongoc_database_remove_all_users.rst b/src/libmongoc/doc/mongoc_database_remove_all_users.rst similarity index 100% rename from doc/mongoc_database_remove_all_users.rst rename to src/libmongoc/doc/mongoc_database_remove_all_users.rst diff --git a/doc/mongoc_database_remove_user.rst b/src/libmongoc/doc/mongoc_database_remove_user.rst similarity index 100% rename from doc/mongoc_database_remove_user.rst rename to src/libmongoc/doc/mongoc_database_remove_user.rst diff --git a/doc/mongoc_database_set_read_concern.rst b/src/libmongoc/doc/mongoc_database_set_read_concern.rst similarity index 100% rename from doc/mongoc_database_set_read_concern.rst rename to src/libmongoc/doc/mongoc_database_set_read_concern.rst diff --git a/doc/mongoc_database_set_read_prefs.rst b/src/libmongoc/doc/mongoc_database_set_read_prefs.rst similarity index 100% rename from doc/mongoc_database_set_read_prefs.rst rename to src/libmongoc/doc/mongoc_database_set_read_prefs.rst diff --git a/doc/mongoc_database_set_write_concern.rst b/src/libmongoc/doc/mongoc_database_set_write_concern.rst similarity index 100% rename from doc/mongoc_database_set_write_concern.rst rename to src/libmongoc/doc/mongoc_database_set_write_concern.rst diff --git a/doc/mongoc_database_t.rst b/src/libmongoc/doc/mongoc_database_t.rst similarity index 100% rename from doc/mongoc_database_t.rst rename to src/libmongoc/doc/mongoc_database_t.rst diff --git a/doc/mongoc_database_write_command_with_opts.rst b/src/libmongoc/doc/mongoc_database_write_command_with_opts.rst similarity index 100% rename from doc/mongoc_database_write_command_with_opts.rst rename to src/libmongoc/doc/mongoc_database_write_command_with_opts.rst diff --git a/doc/mongoc_delete_flags_t.rst b/src/libmongoc/doc/mongoc_delete_flags_t.rst similarity index 100% rename from doc/mongoc_delete_flags_t.rst rename to src/libmongoc/doc/mongoc_delete_flags_t.rst diff --git a/doc/mongoc_find_and_modify_opts_append.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_append.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_append.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_append.rst diff --git a/doc/mongoc_find_and_modify_opts_destroy.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_destroy.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_destroy.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_destroy.rst diff --git a/doc/mongoc_find_and_modify_opts_get_bypass_document_validation.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_get_bypass_document_validation.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_get_bypass_document_validation.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_get_bypass_document_validation.rst diff --git a/doc/mongoc_find_and_modify_opts_get_fields.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_get_fields.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_get_fields.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_get_fields.rst diff --git a/doc/mongoc_find_and_modify_opts_get_flags.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_get_flags.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_get_flags.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_get_flags.rst diff --git a/doc/mongoc_find_and_modify_opts_get_max_time_ms.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_get_max_time_ms.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_get_max_time_ms.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_get_max_time_ms.rst diff --git a/doc/mongoc_find_and_modify_opts_get_sort.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_get_sort.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_get_sort.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_get_sort.rst diff --git a/doc/mongoc_find_and_modify_opts_get_update.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_get_update.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_get_update.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_get_update.rst diff --git a/doc/mongoc_find_and_modify_opts_new.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_new.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_new.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_new.rst diff --git a/doc/mongoc_find_and_modify_opts_set_bypass_document_validation.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_set_bypass_document_validation.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_set_bypass_document_validation.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_set_bypass_document_validation.rst diff --git a/doc/mongoc_find_and_modify_opts_set_fields.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_set_fields.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_set_fields.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_set_fields.rst diff --git a/doc/mongoc_find_and_modify_opts_set_flags.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_set_flags.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_set_flags.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_set_flags.rst diff --git a/doc/mongoc_find_and_modify_opts_set_max_time_ms.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_set_max_time_ms.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_set_max_time_ms.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_set_max_time_ms.rst diff --git a/doc/mongoc_find_and_modify_opts_set_sort.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_set_sort.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_set_sort.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_set_sort.rst diff --git a/doc/mongoc_find_and_modify_opts_set_update.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_set_update.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_set_update.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_set_update.rst diff --git a/doc/mongoc_find_and_modify_opts_t.rst b/src/libmongoc/doc/mongoc_find_and_modify_opts_t.rst similarity index 100% rename from doc/mongoc_find_and_modify_opts_t.rst rename to src/libmongoc/doc/mongoc_find_and_modify_opts_t.rst diff --git a/doc/mongoc_get_major_version.rst b/src/libmongoc/doc/mongoc_get_major_version.rst similarity index 100% rename from doc/mongoc_get_major_version.rst rename to src/libmongoc/doc/mongoc_get_major_version.rst diff --git a/doc/mongoc_get_micro_version.rst b/src/libmongoc/doc/mongoc_get_micro_version.rst similarity index 100% rename from doc/mongoc_get_micro_version.rst rename to src/libmongoc/doc/mongoc_get_micro_version.rst diff --git a/doc/mongoc_get_minor_version.rst b/src/libmongoc/doc/mongoc_get_minor_version.rst similarity index 100% rename from doc/mongoc_get_minor_version.rst rename to src/libmongoc/doc/mongoc_get_minor_version.rst diff --git a/doc/mongoc_get_version.rst b/src/libmongoc/doc/mongoc_get_version.rst similarity index 100% rename from doc/mongoc_get_version.rst rename to src/libmongoc/doc/mongoc_get_version.rst diff --git a/doc/mongoc_gridfs_create_file.rst b/src/libmongoc/doc/mongoc_gridfs_create_file.rst similarity index 100% rename from doc/mongoc_gridfs_create_file.rst rename to src/libmongoc/doc/mongoc_gridfs_create_file.rst diff --git a/doc/mongoc_gridfs_create_file_from_stream.rst b/src/libmongoc/doc/mongoc_gridfs_create_file_from_stream.rst similarity index 100% rename from doc/mongoc_gridfs_create_file_from_stream.rst rename to src/libmongoc/doc/mongoc_gridfs_create_file_from_stream.rst diff --git a/doc/mongoc_gridfs_destroy.rst b/src/libmongoc/doc/mongoc_gridfs_destroy.rst similarity index 100% rename from doc/mongoc_gridfs_destroy.rst rename to src/libmongoc/doc/mongoc_gridfs_destroy.rst diff --git a/doc/mongoc_gridfs_drop.rst b/src/libmongoc/doc/mongoc_gridfs_drop.rst similarity index 100% rename from doc/mongoc_gridfs_drop.rst rename to src/libmongoc/doc/mongoc_gridfs_drop.rst diff --git a/doc/mongoc_gridfs_file_destroy.rst b/src/libmongoc/doc/mongoc_gridfs_file_destroy.rst similarity index 100% rename from doc/mongoc_gridfs_file_destroy.rst rename to src/libmongoc/doc/mongoc_gridfs_file_destroy.rst diff --git a/doc/mongoc_gridfs_file_error.rst b/src/libmongoc/doc/mongoc_gridfs_file_error.rst similarity index 100% rename from doc/mongoc_gridfs_file_error.rst rename to src/libmongoc/doc/mongoc_gridfs_file_error.rst diff --git a/doc/mongoc_gridfs_file_get_aliases.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_aliases.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_aliases.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_aliases.rst diff --git a/doc/mongoc_gridfs_file_get_chunk_size.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_chunk_size.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_chunk_size.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_chunk_size.rst diff --git a/doc/mongoc_gridfs_file_get_content_type.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_content_type.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_content_type.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_content_type.rst diff --git a/doc/mongoc_gridfs_file_get_filename.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_filename.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_filename.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_filename.rst diff --git a/doc/mongoc_gridfs_file_get_id.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_id.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_id.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_id.rst diff --git a/doc/mongoc_gridfs_file_get_length.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_length.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_length.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_length.rst diff --git a/doc/mongoc_gridfs_file_get_md5.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_md5.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_md5.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_md5.rst diff --git a/doc/mongoc_gridfs_file_get_metadata.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_metadata.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_metadata.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_metadata.rst diff --git a/doc/mongoc_gridfs_file_get_upload_date.rst b/src/libmongoc/doc/mongoc_gridfs_file_get_upload_date.rst similarity index 100% rename from doc/mongoc_gridfs_file_get_upload_date.rst rename to src/libmongoc/doc/mongoc_gridfs_file_get_upload_date.rst diff --git a/doc/mongoc_gridfs_file_list_destroy.rst b/src/libmongoc/doc/mongoc_gridfs_file_list_destroy.rst similarity index 100% rename from doc/mongoc_gridfs_file_list_destroy.rst rename to src/libmongoc/doc/mongoc_gridfs_file_list_destroy.rst diff --git a/doc/mongoc_gridfs_file_list_error.rst b/src/libmongoc/doc/mongoc_gridfs_file_list_error.rst similarity index 100% rename from doc/mongoc_gridfs_file_list_error.rst rename to src/libmongoc/doc/mongoc_gridfs_file_list_error.rst diff --git a/doc/mongoc_gridfs_file_list_next.rst b/src/libmongoc/doc/mongoc_gridfs_file_list_next.rst similarity index 100% rename from doc/mongoc_gridfs_file_list_next.rst rename to src/libmongoc/doc/mongoc_gridfs_file_list_next.rst diff --git a/doc/mongoc_gridfs_file_list_t.rst b/src/libmongoc/doc/mongoc_gridfs_file_list_t.rst similarity index 100% rename from doc/mongoc_gridfs_file_list_t.rst rename to src/libmongoc/doc/mongoc_gridfs_file_list_t.rst diff --git a/doc/mongoc_gridfs_file_opt_t.rst b/src/libmongoc/doc/mongoc_gridfs_file_opt_t.rst similarity index 100% rename from doc/mongoc_gridfs_file_opt_t.rst rename to src/libmongoc/doc/mongoc_gridfs_file_opt_t.rst diff --git a/doc/mongoc_gridfs_file_readv.rst b/src/libmongoc/doc/mongoc_gridfs_file_readv.rst similarity index 100% rename from doc/mongoc_gridfs_file_readv.rst rename to src/libmongoc/doc/mongoc_gridfs_file_readv.rst diff --git a/doc/mongoc_gridfs_file_remove.rst b/src/libmongoc/doc/mongoc_gridfs_file_remove.rst similarity index 100% rename from doc/mongoc_gridfs_file_remove.rst rename to src/libmongoc/doc/mongoc_gridfs_file_remove.rst diff --git a/doc/mongoc_gridfs_file_save.rst b/src/libmongoc/doc/mongoc_gridfs_file_save.rst similarity index 100% rename from doc/mongoc_gridfs_file_save.rst rename to src/libmongoc/doc/mongoc_gridfs_file_save.rst diff --git a/doc/mongoc_gridfs_file_seek.rst b/src/libmongoc/doc/mongoc_gridfs_file_seek.rst similarity index 100% rename from doc/mongoc_gridfs_file_seek.rst rename to src/libmongoc/doc/mongoc_gridfs_file_seek.rst diff --git a/doc/mongoc_gridfs_file_set_aliases.rst b/src/libmongoc/doc/mongoc_gridfs_file_set_aliases.rst similarity index 100% rename from doc/mongoc_gridfs_file_set_aliases.rst rename to src/libmongoc/doc/mongoc_gridfs_file_set_aliases.rst diff --git a/doc/mongoc_gridfs_file_set_content_type.rst b/src/libmongoc/doc/mongoc_gridfs_file_set_content_type.rst similarity index 100% rename from doc/mongoc_gridfs_file_set_content_type.rst rename to src/libmongoc/doc/mongoc_gridfs_file_set_content_type.rst diff --git a/doc/mongoc_gridfs_file_set_filename.rst b/src/libmongoc/doc/mongoc_gridfs_file_set_filename.rst similarity index 100% rename from doc/mongoc_gridfs_file_set_filename.rst rename to src/libmongoc/doc/mongoc_gridfs_file_set_filename.rst diff --git a/doc/mongoc_gridfs_file_set_id.rst b/src/libmongoc/doc/mongoc_gridfs_file_set_id.rst similarity index 100% rename from doc/mongoc_gridfs_file_set_id.rst rename to src/libmongoc/doc/mongoc_gridfs_file_set_id.rst diff --git a/doc/mongoc_gridfs_file_set_md5.rst b/src/libmongoc/doc/mongoc_gridfs_file_set_md5.rst similarity index 100% rename from doc/mongoc_gridfs_file_set_md5.rst rename to src/libmongoc/doc/mongoc_gridfs_file_set_md5.rst diff --git a/doc/mongoc_gridfs_file_set_metadata.rst b/src/libmongoc/doc/mongoc_gridfs_file_set_metadata.rst similarity index 100% rename from doc/mongoc_gridfs_file_set_metadata.rst rename to src/libmongoc/doc/mongoc_gridfs_file_set_metadata.rst diff --git a/doc/mongoc_gridfs_file_t.rst b/src/libmongoc/doc/mongoc_gridfs_file_t.rst similarity index 100% rename from doc/mongoc_gridfs_file_t.rst rename to src/libmongoc/doc/mongoc_gridfs_file_t.rst diff --git a/doc/mongoc_gridfs_file_tell.rst b/src/libmongoc/doc/mongoc_gridfs_file_tell.rst similarity index 100% rename from doc/mongoc_gridfs_file_tell.rst rename to src/libmongoc/doc/mongoc_gridfs_file_tell.rst diff --git a/doc/mongoc_gridfs_file_writev.rst b/src/libmongoc/doc/mongoc_gridfs_file_writev.rst similarity index 100% rename from doc/mongoc_gridfs_file_writev.rst rename to src/libmongoc/doc/mongoc_gridfs_file_writev.rst diff --git a/doc/mongoc_gridfs_find.rst b/src/libmongoc/doc/mongoc_gridfs_find.rst similarity index 100% rename from doc/mongoc_gridfs_find.rst rename to src/libmongoc/doc/mongoc_gridfs_find.rst diff --git a/doc/mongoc_gridfs_find_one.rst b/src/libmongoc/doc/mongoc_gridfs_find_one.rst similarity index 100% rename from doc/mongoc_gridfs_find_one.rst rename to src/libmongoc/doc/mongoc_gridfs_find_one.rst diff --git a/doc/mongoc_gridfs_find_one_by_filename.rst b/src/libmongoc/doc/mongoc_gridfs_find_one_by_filename.rst similarity index 100% rename from doc/mongoc_gridfs_find_one_by_filename.rst rename to src/libmongoc/doc/mongoc_gridfs_find_one_by_filename.rst diff --git a/doc/mongoc_gridfs_find_one_with_opts.rst b/src/libmongoc/doc/mongoc_gridfs_find_one_with_opts.rst similarity index 100% rename from doc/mongoc_gridfs_find_one_with_opts.rst rename to src/libmongoc/doc/mongoc_gridfs_find_one_with_opts.rst diff --git a/doc/mongoc_gridfs_find_with_opts.rst b/src/libmongoc/doc/mongoc_gridfs_find_with_opts.rst similarity index 100% rename from doc/mongoc_gridfs_find_with_opts.rst rename to src/libmongoc/doc/mongoc_gridfs_find_with_opts.rst diff --git a/doc/mongoc_gridfs_get_chunks.rst b/src/libmongoc/doc/mongoc_gridfs_get_chunks.rst similarity index 100% rename from doc/mongoc_gridfs_get_chunks.rst rename to src/libmongoc/doc/mongoc_gridfs_get_chunks.rst diff --git a/doc/mongoc_gridfs_get_files.rst b/src/libmongoc/doc/mongoc_gridfs_get_files.rst similarity index 100% rename from doc/mongoc_gridfs_get_files.rst rename to src/libmongoc/doc/mongoc_gridfs_get_files.rst diff --git a/doc/mongoc_gridfs_remove_by_filename.rst b/src/libmongoc/doc/mongoc_gridfs_remove_by_filename.rst similarity index 100% rename from doc/mongoc_gridfs_remove_by_filename.rst rename to src/libmongoc/doc/mongoc_gridfs_remove_by_filename.rst diff --git a/doc/mongoc_gridfs_t.rst b/src/libmongoc/doc/mongoc_gridfs_t.rst similarity index 100% rename from doc/mongoc_gridfs_t.rst rename to src/libmongoc/doc/mongoc_gridfs_t.rst diff --git a/doc/mongoc_host_list_t.rst b/src/libmongoc/doc/mongoc_host_list_t.rst similarity index 100% rename from doc/mongoc_host_list_t.rst rename to src/libmongoc/doc/mongoc_host_list_t.rst diff --git a/doc/mongoc_index_opt_geo_get_default.rst b/src/libmongoc/doc/mongoc_index_opt_geo_get_default.rst similarity index 100% rename from doc/mongoc_index_opt_geo_get_default.rst rename to src/libmongoc/doc/mongoc_index_opt_geo_get_default.rst diff --git a/doc/mongoc_index_opt_geo_init.rst b/src/libmongoc/doc/mongoc_index_opt_geo_init.rst similarity index 100% rename from doc/mongoc_index_opt_geo_init.rst rename to src/libmongoc/doc/mongoc_index_opt_geo_init.rst diff --git a/doc/mongoc_index_opt_geo_t.rst b/src/libmongoc/doc/mongoc_index_opt_geo_t.rst similarity index 100% rename from doc/mongoc_index_opt_geo_t.rst rename to src/libmongoc/doc/mongoc_index_opt_geo_t.rst diff --git a/doc/mongoc_index_opt_get_default.rst b/src/libmongoc/doc/mongoc_index_opt_get_default.rst similarity index 100% rename from doc/mongoc_index_opt_get_default.rst rename to src/libmongoc/doc/mongoc_index_opt_get_default.rst diff --git a/doc/mongoc_index_opt_init.rst b/src/libmongoc/doc/mongoc_index_opt_init.rst similarity index 100% rename from doc/mongoc_index_opt_init.rst rename to src/libmongoc/doc/mongoc_index_opt_init.rst diff --git a/doc/mongoc_index_opt_t.rst b/src/libmongoc/doc/mongoc_index_opt_t.rst similarity index 100% rename from doc/mongoc_index_opt_t.rst rename to src/libmongoc/doc/mongoc_index_opt_t.rst diff --git a/doc/mongoc_index_opt_wt_get_default.rst b/src/libmongoc/doc/mongoc_index_opt_wt_get_default.rst similarity index 100% rename from doc/mongoc_index_opt_wt_get_default.rst rename to src/libmongoc/doc/mongoc_index_opt_wt_get_default.rst diff --git a/doc/mongoc_index_opt_wt_init.rst b/src/libmongoc/doc/mongoc_index_opt_wt_init.rst similarity index 100% rename from doc/mongoc_index_opt_wt_init.rst rename to src/libmongoc/doc/mongoc_index_opt_wt_init.rst diff --git a/doc/mongoc_index_opt_wt_t.rst b/src/libmongoc/doc/mongoc_index_opt_wt_t.rst similarity index 100% rename from doc/mongoc_index_opt_wt_t.rst rename to src/libmongoc/doc/mongoc_index_opt_wt_t.rst diff --git a/doc/mongoc_init.rst b/src/libmongoc/doc/mongoc_init.rst similarity index 100% rename from doc/mongoc_init.rst rename to src/libmongoc/doc/mongoc_init.rst diff --git a/doc/mongoc_insert_flags_t.rst b/src/libmongoc/doc/mongoc_insert_flags_t.rst similarity index 100% rename from doc/mongoc_insert_flags_t.rst rename to src/libmongoc/doc/mongoc_insert_flags_t.rst diff --git a/doc/mongoc_iovec_t.rst b/src/libmongoc/doc/mongoc_iovec_t.rst similarity index 100% rename from doc/mongoc_iovec_t.rst rename to src/libmongoc/doc/mongoc_iovec_t.rst diff --git a/doc/mongoc_matcher_destroy.rst b/src/libmongoc/doc/mongoc_matcher_destroy.rst similarity index 100% rename from doc/mongoc_matcher_destroy.rst rename to src/libmongoc/doc/mongoc_matcher_destroy.rst diff --git a/doc/mongoc_matcher_match.rst b/src/libmongoc/doc/mongoc_matcher_match.rst similarity index 100% rename from doc/mongoc_matcher_match.rst rename to src/libmongoc/doc/mongoc_matcher_match.rst diff --git a/doc/mongoc_matcher_new.rst b/src/libmongoc/doc/mongoc_matcher_new.rst similarity index 100% rename from doc/mongoc_matcher_new.rst rename to src/libmongoc/doc/mongoc_matcher_new.rst diff --git a/doc/mongoc_matcher_t.rst b/src/libmongoc/doc/mongoc_matcher_t.rst similarity index 100% rename from doc/mongoc_matcher_t.rst rename to src/libmongoc/doc/mongoc_matcher_t.rst diff --git a/doc/mongoc_query_flags_t.rst b/src/libmongoc/doc/mongoc_query_flags_t.rst similarity index 100% rename from doc/mongoc_query_flags_t.rst rename to src/libmongoc/doc/mongoc_query_flags_t.rst diff --git a/doc/mongoc_rand.rst b/src/libmongoc/doc/mongoc_rand.rst similarity index 100% rename from doc/mongoc_rand.rst rename to src/libmongoc/doc/mongoc_rand.rst diff --git a/doc/mongoc_rand_add.rst b/src/libmongoc/doc/mongoc_rand_add.rst similarity index 100% rename from doc/mongoc_rand_add.rst rename to src/libmongoc/doc/mongoc_rand_add.rst diff --git a/doc/mongoc_rand_seed.rst b/src/libmongoc/doc/mongoc_rand_seed.rst similarity index 100% rename from doc/mongoc_rand_seed.rst rename to src/libmongoc/doc/mongoc_rand_seed.rst diff --git a/doc/mongoc_rand_status.rst b/src/libmongoc/doc/mongoc_rand_status.rst similarity index 100% rename from doc/mongoc_rand_status.rst rename to src/libmongoc/doc/mongoc_rand_status.rst diff --git a/doc/mongoc_read_concern_append.rst b/src/libmongoc/doc/mongoc_read_concern_append.rst similarity index 100% rename from doc/mongoc_read_concern_append.rst rename to src/libmongoc/doc/mongoc_read_concern_append.rst diff --git a/doc/mongoc_read_concern_copy.rst b/src/libmongoc/doc/mongoc_read_concern_copy.rst similarity index 100% rename from doc/mongoc_read_concern_copy.rst rename to src/libmongoc/doc/mongoc_read_concern_copy.rst diff --git a/doc/mongoc_read_concern_destroy.rst b/src/libmongoc/doc/mongoc_read_concern_destroy.rst similarity index 100% rename from doc/mongoc_read_concern_destroy.rst rename to src/libmongoc/doc/mongoc_read_concern_destroy.rst diff --git a/doc/mongoc_read_concern_get_level.rst b/src/libmongoc/doc/mongoc_read_concern_get_level.rst similarity index 100% rename from doc/mongoc_read_concern_get_level.rst rename to src/libmongoc/doc/mongoc_read_concern_get_level.rst diff --git a/doc/mongoc_read_concern_is_default.rst b/src/libmongoc/doc/mongoc_read_concern_is_default.rst similarity index 100% rename from doc/mongoc_read_concern_is_default.rst rename to src/libmongoc/doc/mongoc_read_concern_is_default.rst diff --git a/doc/mongoc_read_concern_new.rst b/src/libmongoc/doc/mongoc_read_concern_new.rst similarity index 100% rename from doc/mongoc_read_concern_new.rst rename to src/libmongoc/doc/mongoc_read_concern_new.rst diff --git a/doc/mongoc_read_concern_set_level.rst b/src/libmongoc/doc/mongoc_read_concern_set_level.rst similarity index 100% rename from doc/mongoc_read_concern_set_level.rst rename to src/libmongoc/doc/mongoc_read_concern_set_level.rst diff --git a/doc/mongoc_read_concern_t.rst b/src/libmongoc/doc/mongoc_read_concern_t.rst similarity index 100% rename from doc/mongoc_read_concern_t.rst rename to src/libmongoc/doc/mongoc_read_concern_t.rst diff --git a/doc/mongoc_read_mode_t.rst b/src/libmongoc/doc/mongoc_read_mode_t.rst similarity index 100% rename from doc/mongoc_read_mode_t.rst rename to src/libmongoc/doc/mongoc_read_mode_t.rst diff --git a/doc/mongoc_read_prefs_add_tag.rst b/src/libmongoc/doc/mongoc_read_prefs_add_tag.rst similarity index 100% rename from doc/mongoc_read_prefs_add_tag.rst rename to src/libmongoc/doc/mongoc_read_prefs_add_tag.rst diff --git a/doc/mongoc_read_prefs_copy.rst b/src/libmongoc/doc/mongoc_read_prefs_copy.rst similarity index 100% rename from doc/mongoc_read_prefs_copy.rst rename to src/libmongoc/doc/mongoc_read_prefs_copy.rst diff --git a/doc/mongoc_read_prefs_destroy.rst b/src/libmongoc/doc/mongoc_read_prefs_destroy.rst similarity index 100% rename from doc/mongoc_read_prefs_destroy.rst rename to src/libmongoc/doc/mongoc_read_prefs_destroy.rst diff --git a/doc/mongoc_read_prefs_get_max_staleness_seconds.rst b/src/libmongoc/doc/mongoc_read_prefs_get_max_staleness_seconds.rst similarity index 100% rename from doc/mongoc_read_prefs_get_max_staleness_seconds.rst rename to src/libmongoc/doc/mongoc_read_prefs_get_max_staleness_seconds.rst diff --git a/doc/mongoc_read_prefs_get_mode.rst b/src/libmongoc/doc/mongoc_read_prefs_get_mode.rst similarity index 100% rename from doc/mongoc_read_prefs_get_mode.rst rename to src/libmongoc/doc/mongoc_read_prefs_get_mode.rst diff --git a/doc/mongoc_read_prefs_get_tags.rst b/src/libmongoc/doc/mongoc_read_prefs_get_tags.rst similarity index 100% rename from doc/mongoc_read_prefs_get_tags.rst rename to src/libmongoc/doc/mongoc_read_prefs_get_tags.rst diff --git a/doc/mongoc_read_prefs_is_valid.rst b/src/libmongoc/doc/mongoc_read_prefs_is_valid.rst similarity index 100% rename from doc/mongoc_read_prefs_is_valid.rst rename to src/libmongoc/doc/mongoc_read_prefs_is_valid.rst diff --git a/doc/mongoc_read_prefs_new.rst b/src/libmongoc/doc/mongoc_read_prefs_new.rst similarity index 100% rename from doc/mongoc_read_prefs_new.rst rename to src/libmongoc/doc/mongoc_read_prefs_new.rst diff --git a/doc/mongoc_read_prefs_set_max_staleness_seconds.rst b/src/libmongoc/doc/mongoc_read_prefs_set_max_staleness_seconds.rst similarity index 100% rename from doc/mongoc_read_prefs_set_max_staleness_seconds.rst rename to src/libmongoc/doc/mongoc_read_prefs_set_max_staleness_seconds.rst diff --git a/doc/mongoc_read_prefs_set_mode.rst b/src/libmongoc/doc/mongoc_read_prefs_set_mode.rst similarity index 100% rename from doc/mongoc_read_prefs_set_mode.rst rename to src/libmongoc/doc/mongoc_read_prefs_set_mode.rst diff --git a/doc/mongoc_read_prefs_set_tags.rst b/src/libmongoc/doc/mongoc_read_prefs_set_tags.rst similarity index 100% rename from doc/mongoc_read_prefs_set_tags.rst rename to src/libmongoc/doc/mongoc_read_prefs_set_tags.rst diff --git a/doc/mongoc_read_prefs_t.rst b/src/libmongoc/doc/mongoc_read_prefs_t.rst similarity index 100% rename from doc/mongoc_read_prefs_t.rst rename to src/libmongoc/doc/mongoc_read_prefs_t.rst diff --git a/doc/mongoc_remove_flags_t.rst b/src/libmongoc/doc/mongoc_remove_flags_t.rst similarity index 100% rename from doc/mongoc_remove_flags_t.rst rename to src/libmongoc/doc/mongoc_remove_flags_t.rst diff --git a/doc/mongoc_reply_flags_t.rst b/src/libmongoc/doc/mongoc_reply_flags_t.rst similarity index 100% rename from doc/mongoc_reply_flags_t.rst rename to src/libmongoc/doc/mongoc_reply_flags_t.rst diff --git a/doc/mongoc_server_description_destroy.rst b/src/libmongoc/doc/mongoc_server_description_destroy.rst similarity index 100% rename from doc/mongoc_server_description_destroy.rst rename to src/libmongoc/doc/mongoc_server_description_destroy.rst diff --git a/doc/mongoc_server_description_host.rst b/src/libmongoc/doc/mongoc_server_description_host.rst similarity index 100% rename from doc/mongoc_server_description_host.rst rename to src/libmongoc/doc/mongoc_server_description_host.rst diff --git a/doc/mongoc_server_description_id.rst b/src/libmongoc/doc/mongoc_server_description_id.rst similarity index 100% rename from doc/mongoc_server_description_id.rst rename to src/libmongoc/doc/mongoc_server_description_id.rst diff --git a/doc/mongoc_server_description_ismaster.rst b/src/libmongoc/doc/mongoc_server_description_ismaster.rst similarity index 100% rename from doc/mongoc_server_description_ismaster.rst rename to src/libmongoc/doc/mongoc_server_description_ismaster.rst diff --git a/doc/mongoc_server_description_new_copy.rst b/src/libmongoc/doc/mongoc_server_description_new_copy.rst similarity index 100% rename from doc/mongoc_server_description_new_copy.rst rename to src/libmongoc/doc/mongoc_server_description_new_copy.rst diff --git a/doc/mongoc_server_description_round_trip_time.rst b/src/libmongoc/doc/mongoc_server_description_round_trip_time.rst similarity index 100% rename from doc/mongoc_server_description_round_trip_time.rst rename to src/libmongoc/doc/mongoc_server_description_round_trip_time.rst diff --git a/doc/mongoc_server_description_t.rst b/src/libmongoc/doc/mongoc_server_description_t.rst similarity index 100% rename from doc/mongoc_server_description_t.rst rename to src/libmongoc/doc/mongoc_server_description_t.rst diff --git a/doc/mongoc_server_description_type.rst b/src/libmongoc/doc/mongoc_server_description_type.rst similarity index 100% rename from doc/mongoc_server_description_type.rst rename to src/libmongoc/doc/mongoc_server_description_type.rst diff --git a/doc/mongoc_server_descriptions_destroy_all.rst b/src/libmongoc/doc/mongoc_server_descriptions_destroy_all.rst similarity index 100% rename from doc/mongoc_server_descriptions_destroy_all.rst rename to src/libmongoc/doc/mongoc_server_descriptions_destroy_all.rst diff --git a/doc/mongoc_session_opt_t.rst b/src/libmongoc/doc/mongoc_session_opt_t.rst similarity index 100% rename from doc/mongoc_session_opt_t.rst rename to src/libmongoc/doc/mongoc_session_opt_t.rst diff --git a/doc/mongoc_session_opts_clone.rst b/src/libmongoc/doc/mongoc_session_opts_clone.rst similarity index 100% rename from doc/mongoc_session_opts_clone.rst rename to src/libmongoc/doc/mongoc_session_opts_clone.rst diff --git a/doc/mongoc_session_opts_destroy.rst b/src/libmongoc/doc/mongoc_session_opts_destroy.rst similarity index 100% rename from doc/mongoc_session_opts_destroy.rst rename to src/libmongoc/doc/mongoc_session_opts_destroy.rst diff --git a/doc/mongoc_session_opts_get_causal_consistency.rst b/src/libmongoc/doc/mongoc_session_opts_get_causal_consistency.rst similarity index 100% rename from doc/mongoc_session_opts_get_causal_consistency.rst rename to src/libmongoc/doc/mongoc_session_opts_get_causal_consistency.rst diff --git a/doc/mongoc_session_opts_new.rst b/src/libmongoc/doc/mongoc_session_opts_new.rst similarity index 100% rename from doc/mongoc_session_opts_new.rst rename to src/libmongoc/doc/mongoc_session_opts_new.rst diff --git a/doc/mongoc_session_opts_set_causal_consistency.rst b/src/libmongoc/doc/mongoc_session_opts_set_causal_consistency.rst similarity index 100% rename from doc/mongoc_session_opts_set_causal_consistency.rst rename to src/libmongoc/doc/mongoc_session_opts_set_causal_consistency.rst diff --git a/doc/mongoc_socket_accept.rst b/src/libmongoc/doc/mongoc_socket_accept.rst similarity index 100% rename from doc/mongoc_socket_accept.rst rename to src/libmongoc/doc/mongoc_socket_accept.rst diff --git a/doc/mongoc_socket_bind.rst b/src/libmongoc/doc/mongoc_socket_bind.rst similarity index 100% rename from doc/mongoc_socket_bind.rst rename to src/libmongoc/doc/mongoc_socket_bind.rst diff --git a/doc/mongoc_socket_close.rst b/src/libmongoc/doc/mongoc_socket_close.rst similarity index 100% rename from doc/mongoc_socket_close.rst rename to src/libmongoc/doc/mongoc_socket_close.rst diff --git a/doc/mongoc_socket_connect.rst b/src/libmongoc/doc/mongoc_socket_connect.rst similarity index 100% rename from doc/mongoc_socket_connect.rst rename to src/libmongoc/doc/mongoc_socket_connect.rst diff --git a/doc/mongoc_socket_destroy.rst b/src/libmongoc/doc/mongoc_socket_destroy.rst similarity index 100% rename from doc/mongoc_socket_destroy.rst rename to src/libmongoc/doc/mongoc_socket_destroy.rst diff --git a/doc/mongoc_socket_errno.rst b/src/libmongoc/doc/mongoc_socket_errno.rst similarity index 100% rename from doc/mongoc_socket_errno.rst rename to src/libmongoc/doc/mongoc_socket_errno.rst diff --git a/doc/mongoc_socket_getnameinfo.rst b/src/libmongoc/doc/mongoc_socket_getnameinfo.rst similarity index 100% rename from doc/mongoc_socket_getnameinfo.rst rename to src/libmongoc/doc/mongoc_socket_getnameinfo.rst diff --git a/doc/mongoc_socket_getsockname.rst b/src/libmongoc/doc/mongoc_socket_getsockname.rst similarity index 100% rename from doc/mongoc_socket_getsockname.rst rename to src/libmongoc/doc/mongoc_socket_getsockname.rst diff --git a/doc/mongoc_socket_listen.rst b/src/libmongoc/doc/mongoc_socket_listen.rst similarity index 100% rename from doc/mongoc_socket_listen.rst rename to src/libmongoc/doc/mongoc_socket_listen.rst diff --git a/doc/mongoc_socket_new.rst b/src/libmongoc/doc/mongoc_socket_new.rst similarity index 100% rename from doc/mongoc_socket_new.rst rename to src/libmongoc/doc/mongoc_socket_new.rst diff --git a/doc/mongoc_socket_recv.rst b/src/libmongoc/doc/mongoc_socket_recv.rst similarity index 100% rename from doc/mongoc_socket_recv.rst rename to src/libmongoc/doc/mongoc_socket_recv.rst diff --git a/doc/mongoc_socket_send.rst b/src/libmongoc/doc/mongoc_socket_send.rst similarity index 100% rename from doc/mongoc_socket_send.rst rename to src/libmongoc/doc/mongoc_socket_send.rst diff --git a/doc/mongoc_socket_sendv.rst b/src/libmongoc/doc/mongoc_socket_sendv.rst similarity index 100% rename from doc/mongoc_socket_sendv.rst rename to src/libmongoc/doc/mongoc_socket_sendv.rst diff --git a/doc/mongoc_socket_setsockopt.rst b/src/libmongoc/doc/mongoc_socket_setsockopt.rst similarity index 100% rename from doc/mongoc_socket_setsockopt.rst rename to src/libmongoc/doc/mongoc_socket_setsockopt.rst diff --git a/doc/mongoc_socket_t.rst b/src/libmongoc/doc/mongoc_socket_t.rst similarity index 100% rename from doc/mongoc_socket_t.rst rename to src/libmongoc/doc/mongoc_socket_t.rst diff --git a/doc/mongoc_ssl_opt_get_default.rst b/src/libmongoc/doc/mongoc_ssl_opt_get_default.rst similarity index 100% rename from doc/mongoc_ssl_opt_get_default.rst rename to src/libmongoc/doc/mongoc_ssl_opt_get_default.rst diff --git a/doc/mongoc_ssl_opt_t.rst b/src/libmongoc/doc/mongoc_ssl_opt_t.rst similarity index 100% rename from doc/mongoc_ssl_opt_t.rst rename to src/libmongoc/doc/mongoc_ssl_opt_t.rst diff --git a/doc/mongoc_stream_buffered_new.rst b/src/libmongoc/doc/mongoc_stream_buffered_new.rst similarity index 100% rename from doc/mongoc_stream_buffered_new.rst rename to src/libmongoc/doc/mongoc_stream_buffered_new.rst diff --git a/doc/mongoc_stream_buffered_t.rst b/src/libmongoc/doc/mongoc_stream_buffered_t.rst similarity index 100% rename from doc/mongoc_stream_buffered_t.rst rename to src/libmongoc/doc/mongoc_stream_buffered_t.rst diff --git a/doc/mongoc_stream_close.rst b/src/libmongoc/doc/mongoc_stream_close.rst similarity index 100% rename from doc/mongoc_stream_close.rst rename to src/libmongoc/doc/mongoc_stream_close.rst diff --git a/doc/mongoc_stream_cork.rst b/src/libmongoc/doc/mongoc_stream_cork.rst similarity index 100% rename from doc/mongoc_stream_cork.rst rename to src/libmongoc/doc/mongoc_stream_cork.rst diff --git a/doc/mongoc_stream_destroy.rst b/src/libmongoc/doc/mongoc_stream_destroy.rst similarity index 100% rename from doc/mongoc_stream_destroy.rst rename to src/libmongoc/doc/mongoc_stream_destroy.rst diff --git a/doc/mongoc_stream_file_get_fd.rst b/src/libmongoc/doc/mongoc_stream_file_get_fd.rst similarity index 100% rename from doc/mongoc_stream_file_get_fd.rst rename to src/libmongoc/doc/mongoc_stream_file_get_fd.rst diff --git a/doc/mongoc_stream_file_new.rst b/src/libmongoc/doc/mongoc_stream_file_new.rst similarity index 100% rename from doc/mongoc_stream_file_new.rst rename to src/libmongoc/doc/mongoc_stream_file_new.rst diff --git a/doc/mongoc_stream_file_new_for_path.rst b/src/libmongoc/doc/mongoc_stream_file_new_for_path.rst similarity index 100% rename from doc/mongoc_stream_file_new_for_path.rst rename to src/libmongoc/doc/mongoc_stream_file_new_for_path.rst diff --git a/doc/mongoc_stream_file_t.rst b/src/libmongoc/doc/mongoc_stream_file_t.rst similarity index 100% rename from doc/mongoc_stream_file_t.rst rename to src/libmongoc/doc/mongoc_stream_file_t.rst diff --git a/doc/mongoc_stream_flush.rst b/src/libmongoc/doc/mongoc_stream_flush.rst similarity index 100% rename from doc/mongoc_stream_flush.rst rename to src/libmongoc/doc/mongoc_stream_flush.rst diff --git a/doc/mongoc_stream_get_base_stream.rst b/src/libmongoc/doc/mongoc_stream_get_base_stream.rst similarity index 100% rename from doc/mongoc_stream_get_base_stream.rst rename to src/libmongoc/doc/mongoc_stream_get_base_stream.rst diff --git a/doc/mongoc_stream_gridfs_new.rst b/src/libmongoc/doc/mongoc_stream_gridfs_new.rst similarity index 100% rename from doc/mongoc_stream_gridfs_new.rst rename to src/libmongoc/doc/mongoc_stream_gridfs_new.rst diff --git a/doc/mongoc_stream_read.rst b/src/libmongoc/doc/mongoc_stream_read.rst similarity index 100% rename from doc/mongoc_stream_read.rst rename to src/libmongoc/doc/mongoc_stream_read.rst diff --git a/doc/mongoc_stream_readv.rst b/src/libmongoc/doc/mongoc_stream_readv.rst similarity index 100% rename from doc/mongoc_stream_readv.rst rename to src/libmongoc/doc/mongoc_stream_readv.rst diff --git a/doc/mongoc_stream_setsockopt.rst b/src/libmongoc/doc/mongoc_stream_setsockopt.rst similarity index 100% rename from doc/mongoc_stream_setsockopt.rst rename to src/libmongoc/doc/mongoc_stream_setsockopt.rst diff --git a/doc/mongoc_stream_socket_get_socket.rst b/src/libmongoc/doc/mongoc_stream_socket_get_socket.rst similarity index 100% rename from doc/mongoc_stream_socket_get_socket.rst rename to src/libmongoc/doc/mongoc_stream_socket_get_socket.rst diff --git a/doc/mongoc_stream_socket_new.rst b/src/libmongoc/doc/mongoc_stream_socket_new.rst similarity index 100% rename from doc/mongoc_stream_socket_new.rst rename to src/libmongoc/doc/mongoc_stream_socket_new.rst diff --git a/doc/mongoc_stream_socket_t.rst b/src/libmongoc/doc/mongoc_stream_socket_t.rst similarity index 100% rename from doc/mongoc_stream_socket_t.rst rename to src/libmongoc/doc/mongoc_stream_socket_t.rst diff --git a/doc/mongoc_stream_t.rst b/src/libmongoc/doc/mongoc_stream_t.rst similarity index 100% rename from doc/mongoc_stream_t.rst rename to src/libmongoc/doc/mongoc_stream_t.rst diff --git a/doc/mongoc_stream_timed_out.rst b/src/libmongoc/doc/mongoc_stream_timed_out.rst similarity index 100% rename from doc/mongoc_stream_timed_out.rst rename to src/libmongoc/doc/mongoc_stream_timed_out.rst diff --git a/doc/mongoc_stream_tls_t.rst b/src/libmongoc/doc/mongoc_stream_tls_t.rst similarity index 100% rename from doc/mongoc_stream_tls_t.rst rename to src/libmongoc/doc/mongoc_stream_tls_t.rst diff --git a/doc/mongoc_stream_uncork.rst b/src/libmongoc/doc/mongoc_stream_uncork.rst similarity index 100% rename from doc/mongoc_stream_uncork.rst rename to src/libmongoc/doc/mongoc_stream_uncork.rst diff --git a/doc/mongoc_stream_write.rst b/src/libmongoc/doc/mongoc_stream_write.rst similarity index 100% rename from doc/mongoc_stream_write.rst rename to src/libmongoc/doc/mongoc_stream_write.rst diff --git a/doc/mongoc_stream_writev.rst b/src/libmongoc/doc/mongoc_stream_writev.rst similarity index 100% rename from doc/mongoc_stream_writev.rst rename to src/libmongoc/doc/mongoc_stream_writev.rst diff --git a/doc/mongoc_topology_description_get_servers.rst b/src/libmongoc/doc/mongoc_topology_description_get_servers.rst similarity index 100% rename from doc/mongoc_topology_description_get_servers.rst rename to src/libmongoc/doc/mongoc_topology_description_get_servers.rst diff --git a/doc/mongoc_topology_description_has_readable_server.rst b/src/libmongoc/doc/mongoc_topology_description_has_readable_server.rst similarity index 100% rename from doc/mongoc_topology_description_has_readable_server.rst rename to src/libmongoc/doc/mongoc_topology_description_has_readable_server.rst diff --git a/doc/mongoc_topology_description_has_writable_server.rst b/src/libmongoc/doc/mongoc_topology_description_has_writable_server.rst similarity index 100% rename from doc/mongoc_topology_description_has_writable_server.rst rename to src/libmongoc/doc/mongoc_topology_description_has_writable_server.rst diff --git a/doc/mongoc_topology_description_t.rst b/src/libmongoc/doc/mongoc_topology_description_t.rst similarity index 100% rename from doc/mongoc_topology_description_t.rst rename to src/libmongoc/doc/mongoc_topology_description_t.rst diff --git a/doc/mongoc_topology_description_type.rst b/src/libmongoc/doc/mongoc_topology_description_type.rst similarity index 100% rename from doc/mongoc_topology_description_type.rst rename to src/libmongoc/doc/mongoc_topology_description_type.rst diff --git a/doc/mongoc_update_flags_t.rst b/src/libmongoc/doc/mongoc_update_flags_t.rst similarity index 100% rename from doc/mongoc_update_flags_t.rst rename to src/libmongoc/doc/mongoc_update_flags_t.rst diff --git a/doc/mongoc_uri_copy.rst b/src/libmongoc/doc/mongoc_uri_copy.rst similarity index 100% rename from doc/mongoc_uri_copy.rst rename to src/libmongoc/doc/mongoc_uri_copy.rst diff --git a/doc/mongoc_uri_destroy.rst b/src/libmongoc/doc/mongoc_uri_destroy.rst similarity index 100% rename from doc/mongoc_uri_destroy.rst rename to src/libmongoc/doc/mongoc_uri_destroy.rst diff --git a/doc/mongoc_uri_get_auth_mechanism.rst b/src/libmongoc/doc/mongoc_uri_get_auth_mechanism.rst similarity index 100% rename from doc/mongoc_uri_get_auth_mechanism.rst rename to src/libmongoc/doc/mongoc_uri_get_auth_mechanism.rst diff --git a/doc/mongoc_uri_get_auth_source.rst b/src/libmongoc/doc/mongoc_uri_get_auth_source.rst similarity index 100% rename from doc/mongoc_uri_get_auth_source.rst rename to src/libmongoc/doc/mongoc_uri_get_auth_source.rst diff --git a/doc/mongoc_uri_get_compressors.rst b/src/libmongoc/doc/mongoc_uri_get_compressors.rst similarity index 100% rename from doc/mongoc_uri_get_compressors.rst rename to src/libmongoc/doc/mongoc_uri_get_compressors.rst diff --git a/doc/mongoc_uri_get_database.rst b/src/libmongoc/doc/mongoc_uri_get_database.rst similarity index 100% rename from doc/mongoc_uri_get_database.rst rename to src/libmongoc/doc/mongoc_uri_get_database.rst diff --git a/doc/mongoc_uri_get_hosts.rst b/src/libmongoc/doc/mongoc_uri_get_hosts.rst similarity index 100% rename from doc/mongoc_uri_get_hosts.rst rename to src/libmongoc/doc/mongoc_uri_get_hosts.rst diff --git a/doc/mongoc_uri_get_mechanism_properties.rst b/src/libmongoc/doc/mongoc_uri_get_mechanism_properties.rst similarity index 100% rename from doc/mongoc_uri_get_mechanism_properties.rst rename to src/libmongoc/doc/mongoc_uri_get_mechanism_properties.rst diff --git a/doc/mongoc_uri_get_option_as_bool.rst b/src/libmongoc/doc/mongoc_uri_get_option_as_bool.rst similarity index 100% rename from doc/mongoc_uri_get_option_as_bool.rst rename to src/libmongoc/doc/mongoc_uri_get_option_as_bool.rst diff --git a/doc/mongoc_uri_get_option_as_int32.rst b/src/libmongoc/doc/mongoc_uri_get_option_as_int32.rst similarity index 100% rename from doc/mongoc_uri_get_option_as_int32.rst rename to src/libmongoc/doc/mongoc_uri_get_option_as_int32.rst diff --git a/doc/mongoc_uri_get_option_as_utf8.rst b/src/libmongoc/doc/mongoc_uri_get_option_as_utf8.rst similarity index 100% rename from doc/mongoc_uri_get_option_as_utf8.rst rename to src/libmongoc/doc/mongoc_uri_get_option_as_utf8.rst diff --git a/doc/mongoc_uri_get_options.rst b/src/libmongoc/doc/mongoc_uri_get_options.rst similarity index 100% rename from doc/mongoc_uri_get_options.rst rename to src/libmongoc/doc/mongoc_uri_get_options.rst diff --git a/doc/mongoc_uri_get_password.rst b/src/libmongoc/doc/mongoc_uri_get_password.rst similarity index 100% rename from doc/mongoc_uri_get_password.rst rename to src/libmongoc/doc/mongoc_uri_get_password.rst diff --git a/doc/mongoc_uri_get_read_concern.rst b/src/libmongoc/doc/mongoc_uri_get_read_concern.rst similarity index 100% rename from doc/mongoc_uri_get_read_concern.rst rename to src/libmongoc/doc/mongoc_uri_get_read_concern.rst diff --git a/doc/mongoc_uri_get_read_prefs.rst b/src/libmongoc/doc/mongoc_uri_get_read_prefs.rst similarity index 100% rename from doc/mongoc_uri_get_read_prefs.rst rename to src/libmongoc/doc/mongoc_uri_get_read_prefs.rst diff --git a/doc/mongoc_uri_get_read_prefs_t.rst b/src/libmongoc/doc/mongoc_uri_get_read_prefs_t.rst similarity index 100% rename from doc/mongoc_uri_get_read_prefs_t.rst rename to src/libmongoc/doc/mongoc_uri_get_read_prefs_t.rst diff --git a/doc/mongoc_uri_get_replica_set.rst b/src/libmongoc/doc/mongoc_uri_get_replica_set.rst similarity index 100% rename from doc/mongoc_uri_get_replica_set.rst rename to src/libmongoc/doc/mongoc_uri_get_replica_set.rst diff --git a/doc/mongoc_uri_get_service.rst b/src/libmongoc/doc/mongoc_uri_get_service.rst similarity index 100% rename from doc/mongoc_uri_get_service.rst rename to src/libmongoc/doc/mongoc_uri_get_service.rst diff --git a/doc/mongoc_uri_get_ssl.rst b/src/libmongoc/doc/mongoc_uri_get_ssl.rst similarity index 100% rename from doc/mongoc_uri_get_ssl.rst rename to src/libmongoc/doc/mongoc_uri_get_ssl.rst diff --git a/doc/mongoc_uri_get_string.rst b/src/libmongoc/doc/mongoc_uri_get_string.rst similarity index 100% rename from doc/mongoc_uri_get_string.rst rename to src/libmongoc/doc/mongoc_uri_get_string.rst diff --git a/doc/mongoc_uri_get_username.rst b/src/libmongoc/doc/mongoc_uri_get_username.rst similarity index 100% rename from doc/mongoc_uri_get_username.rst rename to src/libmongoc/doc/mongoc_uri_get_username.rst diff --git a/doc/mongoc_uri_get_write_concern.rst b/src/libmongoc/doc/mongoc_uri_get_write_concern.rst similarity index 100% rename from doc/mongoc_uri_get_write_concern.rst rename to src/libmongoc/doc/mongoc_uri_get_write_concern.rst diff --git a/doc/mongoc_uri_new.rst b/src/libmongoc/doc/mongoc_uri_new.rst similarity index 100% rename from doc/mongoc_uri_new.rst rename to src/libmongoc/doc/mongoc_uri_new.rst diff --git a/doc/mongoc_uri_new_for_host_port.rst b/src/libmongoc/doc/mongoc_uri_new_for_host_port.rst similarity index 100% rename from doc/mongoc_uri_new_for_host_port.rst rename to src/libmongoc/doc/mongoc_uri_new_for_host_port.rst diff --git a/doc/mongoc_uri_new_with_error.rst b/src/libmongoc/doc/mongoc_uri_new_with_error.rst similarity index 100% rename from doc/mongoc_uri_new_with_error.rst rename to src/libmongoc/doc/mongoc_uri_new_with_error.rst diff --git a/doc/mongoc_uri_option_is_bool.rst b/src/libmongoc/doc/mongoc_uri_option_is_bool.rst similarity index 100% rename from doc/mongoc_uri_option_is_bool.rst rename to src/libmongoc/doc/mongoc_uri_option_is_bool.rst diff --git a/doc/mongoc_uri_option_is_int32.rst b/src/libmongoc/doc/mongoc_uri_option_is_int32.rst similarity index 100% rename from doc/mongoc_uri_option_is_int32.rst rename to src/libmongoc/doc/mongoc_uri_option_is_int32.rst diff --git a/doc/mongoc_uri_option_is_utf8.rst b/src/libmongoc/doc/mongoc_uri_option_is_utf8.rst similarity index 100% rename from doc/mongoc_uri_option_is_utf8.rst rename to src/libmongoc/doc/mongoc_uri_option_is_utf8.rst diff --git a/doc/mongoc_uri_set_auth_mechanism.rst b/src/libmongoc/doc/mongoc_uri_set_auth_mechanism.rst similarity index 100% rename from doc/mongoc_uri_set_auth_mechanism.rst rename to src/libmongoc/doc/mongoc_uri_set_auth_mechanism.rst diff --git a/doc/mongoc_uri_set_auth_source.rst b/src/libmongoc/doc/mongoc_uri_set_auth_source.rst similarity index 100% rename from doc/mongoc_uri_set_auth_source.rst rename to src/libmongoc/doc/mongoc_uri_set_auth_source.rst diff --git a/doc/mongoc_uri_set_compressors.rst b/src/libmongoc/doc/mongoc_uri_set_compressors.rst similarity index 100% rename from doc/mongoc_uri_set_compressors.rst rename to src/libmongoc/doc/mongoc_uri_set_compressors.rst diff --git a/doc/mongoc_uri_set_database.rst b/src/libmongoc/doc/mongoc_uri_set_database.rst similarity index 100% rename from doc/mongoc_uri_set_database.rst rename to src/libmongoc/doc/mongoc_uri_set_database.rst diff --git a/doc/mongoc_uri_set_mechanism_properties.rst b/src/libmongoc/doc/mongoc_uri_set_mechanism_properties.rst similarity index 100% rename from doc/mongoc_uri_set_mechanism_properties.rst rename to src/libmongoc/doc/mongoc_uri_set_mechanism_properties.rst diff --git a/doc/mongoc_uri_set_option_as_bool.rst b/src/libmongoc/doc/mongoc_uri_set_option_as_bool.rst similarity index 100% rename from doc/mongoc_uri_set_option_as_bool.rst rename to src/libmongoc/doc/mongoc_uri_set_option_as_bool.rst diff --git a/doc/mongoc_uri_set_option_as_int32.rst b/src/libmongoc/doc/mongoc_uri_set_option_as_int32.rst similarity index 100% rename from doc/mongoc_uri_set_option_as_int32.rst rename to src/libmongoc/doc/mongoc_uri_set_option_as_int32.rst diff --git a/doc/mongoc_uri_set_option_as_utf8.rst b/src/libmongoc/doc/mongoc_uri_set_option_as_utf8.rst similarity index 100% rename from doc/mongoc_uri_set_option_as_utf8.rst rename to src/libmongoc/doc/mongoc_uri_set_option_as_utf8.rst diff --git a/doc/mongoc_uri_set_password.rst b/src/libmongoc/doc/mongoc_uri_set_password.rst similarity index 100% rename from doc/mongoc_uri_set_password.rst rename to src/libmongoc/doc/mongoc_uri_set_password.rst diff --git a/doc/mongoc_uri_set_read_concern.rst b/src/libmongoc/doc/mongoc_uri_set_read_concern.rst similarity index 100% rename from doc/mongoc_uri_set_read_concern.rst rename to src/libmongoc/doc/mongoc_uri_set_read_concern.rst diff --git a/doc/mongoc_uri_set_read_prefs_t.rst b/src/libmongoc/doc/mongoc_uri_set_read_prefs_t.rst similarity index 100% rename from doc/mongoc_uri_set_read_prefs_t.rst rename to src/libmongoc/doc/mongoc_uri_set_read_prefs_t.rst diff --git a/doc/mongoc_uri_set_username.rst b/src/libmongoc/doc/mongoc_uri_set_username.rst similarity index 100% rename from doc/mongoc_uri_set_username.rst rename to src/libmongoc/doc/mongoc_uri_set_username.rst diff --git a/doc/mongoc_uri_set_write_concern.rst b/src/libmongoc/doc/mongoc_uri_set_write_concern.rst similarity index 100% rename from doc/mongoc_uri_set_write_concern.rst rename to src/libmongoc/doc/mongoc_uri_set_write_concern.rst diff --git a/doc/mongoc_uri_t.rst b/src/libmongoc/doc/mongoc_uri_t.rst similarity index 100% rename from doc/mongoc_uri_t.rst rename to src/libmongoc/doc/mongoc_uri_t.rst diff --git a/doc/mongoc_uri_unescape.rst b/src/libmongoc/doc/mongoc_uri_unescape.rst similarity index 100% rename from doc/mongoc_uri_unescape.rst rename to src/libmongoc/doc/mongoc_uri_unescape.rst diff --git a/doc/mongoc_version.rst b/src/libmongoc/doc/mongoc_version.rst similarity index 100% rename from doc/mongoc_version.rst rename to src/libmongoc/doc/mongoc_version.rst diff --git a/doc/mongoc_write_concern_append.rst b/src/libmongoc/doc/mongoc_write_concern_append.rst similarity index 100% rename from doc/mongoc_write_concern_append.rst rename to src/libmongoc/doc/mongoc_write_concern_append.rst diff --git a/doc/mongoc_write_concern_copy.rst b/src/libmongoc/doc/mongoc_write_concern_copy.rst similarity index 100% rename from doc/mongoc_write_concern_copy.rst rename to src/libmongoc/doc/mongoc_write_concern_copy.rst diff --git a/doc/mongoc_write_concern_destroy.rst b/src/libmongoc/doc/mongoc_write_concern_destroy.rst similarity index 100% rename from doc/mongoc_write_concern_destroy.rst rename to src/libmongoc/doc/mongoc_write_concern_destroy.rst diff --git a/doc/mongoc_write_concern_get_fsync.rst b/src/libmongoc/doc/mongoc_write_concern_get_fsync.rst similarity index 100% rename from doc/mongoc_write_concern_get_fsync.rst rename to src/libmongoc/doc/mongoc_write_concern_get_fsync.rst diff --git a/doc/mongoc_write_concern_get_journal.rst b/src/libmongoc/doc/mongoc_write_concern_get_journal.rst similarity index 100% rename from doc/mongoc_write_concern_get_journal.rst rename to src/libmongoc/doc/mongoc_write_concern_get_journal.rst diff --git a/doc/mongoc_write_concern_get_w.rst b/src/libmongoc/doc/mongoc_write_concern_get_w.rst similarity index 100% rename from doc/mongoc_write_concern_get_w.rst rename to src/libmongoc/doc/mongoc_write_concern_get_w.rst diff --git a/doc/mongoc_write_concern_get_wmajority.rst b/src/libmongoc/doc/mongoc_write_concern_get_wmajority.rst similarity index 100% rename from doc/mongoc_write_concern_get_wmajority.rst rename to src/libmongoc/doc/mongoc_write_concern_get_wmajority.rst diff --git a/doc/mongoc_write_concern_get_wtag.rst b/src/libmongoc/doc/mongoc_write_concern_get_wtag.rst similarity index 100% rename from doc/mongoc_write_concern_get_wtag.rst rename to src/libmongoc/doc/mongoc_write_concern_get_wtag.rst diff --git a/doc/mongoc_write_concern_get_wtimeout.rst b/src/libmongoc/doc/mongoc_write_concern_get_wtimeout.rst similarity index 100% rename from doc/mongoc_write_concern_get_wtimeout.rst rename to src/libmongoc/doc/mongoc_write_concern_get_wtimeout.rst diff --git a/doc/mongoc_write_concern_is_acknowledged.rst b/src/libmongoc/doc/mongoc_write_concern_is_acknowledged.rst similarity index 100% rename from doc/mongoc_write_concern_is_acknowledged.rst rename to src/libmongoc/doc/mongoc_write_concern_is_acknowledged.rst diff --git a/doc/mongoc_write_concern_is_default.rst b/src/libmongoc/doc/mongoc_write_concern_is_default.rst similarity index 100% rename from doc/mongoc_write_concern_is_default.rst rename to src/libmongoc/doc/mongoc_write_concern_is_default.rst diff --git a/doc/mongoc_write_concern_is_valid.rst b/src/libmongoc/doc/mongoc_write_concern_is_valid.rst similarity index 100% rename from doc/mongoc_write_concern_is_valid.rst rename to src/libmongoc/doc/mongoc_write_concern_is_valid.rst diff --git a/doc/mongoc_write_concern_journal_is_set.rst b/src/libmongoc/doc/mongoc_write_concern_journal_is_set.rst similarity index 100% rename from doc/mongoc_write_concern_journal_is_set.rst rename to src/libmongoc/doc/mongoc_write_concern_journal_is_set.rst diff --git a/doc/mongoc_write_concern_new.rst b/src/libmongoc/doc/mongoc_write_concern_new.rst similarity index 100% rename from doc/mongoc_write_concern_new.rst rename to src/libmongoc/doc/mongoc_write_concern_new.rst diff --git a/doc/mongoc_write_concern_set_fsync.rst b/src/libmongoc/doc/mongoc_write_concern_set_fsync.rst similarity index 100% rename from doc/mongoc_write_concern_set_fsync.rst rename to src/libmongoc/doc/mongoc_write_concern_set_fsync.rst diff --git a/doc/mongoc_write_concern_set_journal.rst b/src/libmongoc/doc/mongoc_write_concern_set_journal.rst similarity index 100% rename from doc/mongoc_write_concern_set_journal.rst rename to src/libmongoc/doc/mongoc_write_concern_set_journal.rst diff --git a/doc/mongoc_write_concern_set_w.rst b/src/libmongoc/doc/mongoc_write_concern_set_w.rst similarity index 100% rename from doc/mongoc_write_concern_set_w.rst rename to src/libmongoc/doc/mongoc_write_concern_set_w.rst diff --git a/doc/mongoc_write_concern_set_wmajority.rst b/src/libmongoc/doc/mongoc_write_concern_set_wmajority.rst similarity index 100% rename from doc/mongoc_write_concern_set_wmajority.rst rename to src/libmongoc/doc/mongoc_write_concern_set_wmajority.rst diff --git a/doc/mongoc_write_concern_set_wtag.rst b/src/libmongoc/doc/mongoc_write_concern_set_wtag.rst similarity index 100% rename from doc/mongoc_write_concern_set_wtag.rst rename to src/libmongoc/doc/mongoc_write_concern_set_wtag.rst diff --git a/doc/mongoc_write_concern_set_wtimeout.rst b/src/libmongoc/doc/mongoc_write_concern_set_wtimeout.rst similarity index 100% rename from doc/mongoc_write_concern_set_wtimeout.rst rename to src/libmongoc/doc/mongoc_write_concern_set_wtimeout.rst diff --git a/doc/mongoc_write_concern_t.rst b/src/libmongoc/doc/mongoc_write_concern_t.rst similarity index 100% rename from doc/mongoc_write_concern_t.rst rename to src/libmongoc/doc/mongoc_write_concern_t.rst diff --git a/src/libmongoc/doc/static/CMakeLists.txt b/src/libmongoc/doc/static/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..c7f15a5119018e012adc6601c7bc382de720f7e8 --- /dev/null +++ b/src/libmongoc/doc/static/CMakeLists.txt @@ -0,0 +1,10 @@ +file (GLOB src_libmongoc_doc_static_DIST_pngs + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.png +) + +set_dist_list (src_libmongoc_doc_static_DIST + CMakeLists.txt + ${src_libmongoc_doc_static_DIST_pngs} +) diff --git a/doc/static/msvc-add-dependencies-static.png b/src/libmongoc/doc/static/msvc-add-dependencies-static.png similarity index 100% rename from doc/static/msvc-add-dependencies-static.png rename to src/libmongoc/doc/static/msvc-add-dependencies-static.png diff --git a/doc/static/msvc-add-dependencies.png b/src/libmongoc/doc/static/msvc-add-dependencies.png similarity index 100% rename from doc/static/msvc-add-dependencies.png rename to src/libmongoc/doc/static/msvc-add-dependencies.png diff --git a/doc/static/msvc-add-include-directories.png b/src/libmongoc/doc/static/msvc-add-include-directories.png similarity index 100% rename from doc/static/msvc-add-include-directories.png rename to src/libmongoc/doc/static/msvc-add-include-directories.png diff --git a/doc/static/msvc-create-project.png b/src/libmongoc/doc/static/msvc-create-project.png similarity index 100% rename from doc/static/msvc-create-project.png rename to src/libmongoc/doc/static/msvc-create-project.png diff --git a/doc/static/msvc-set-path.png b/src/libmongoc/doc/static/msvc-set-path.png similarity index 100% rename from doc/static/msvc-set-path.png rename to src/libmongoc/doc/static/msvc-set-path.png diff --git a/doc/static/msvc-switch-architecture.png b/src/libmongoc/doc/static/msvc-switch-architecture.png similarity index 100% rename from doc/static/msvc-switch-architecture.png rename to src/libmongoc/doc/static/msvc-switch-architecture.png diff --git a/doc/tutorial.rst b/src/libmongoc/doc/tutorial.rst similarity index 100% rename from doc/tutorial.rst rename to src/libmongoc/doc/tutorial.rst diff --git a/doc/visual-studio-guide.rst b/src/libmongoc/doc/visual-studio-guide.rst similarity index 100% rename from doc/visual-studio-guide.rst rename to src/libmongoc/doc/visual-studio-guide.rst diff --git a/examples/.gitignore b/src/libmongoc/examples/.gitignore similarity index 100% rename from examples/.gitignore rename to src/libmongoc/examples/.gitignore diff --git a/src/libmongoc/examples/CMakeLists.txt b/src/libmongoc/examples/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..02f9e7574103e99c04cc8f57b3d19d70d9815c6b --- /dev/null +++ b/src/libmongoc/examples/CMakeLists.txt @@ -0,0 +1,18 @@ +file (GLOB_RECURSE src_libmongoc_examples_DIST_cs + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.c +) +file (GLOB_RECURSE src_libmongoc_examples_DIST_shs + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.sh +) + +set_dist_list (src_libmongoc_examples_DIST + CMakeLists.txt + cmake/find_package/CMakeLists.txt + cmake/find_package_static/CMakeLists.txt + ${src_libmongoc_examples_DIST_cs} + ${src_libmongoc_examples_DIST_shs} +) diff --git a/examples/aggregation/aggregation1.c b/src/libmongoc/examples/aggregation/aggregation1.c similarity index 100% rename from examples/aggregation/aggregation1.c rename to src/libmongoc/examples/aggregation/aggregation1.c diff --git a/examples/basic_aggregation/basic-aggregation.c b/src/libmongoc/examples/basic_aggregation/basic-aggregation.c similarity index 100% rename from examples/basic_aggregation/basic-aggregation.c rename to src/libmongoc/examples/basic_aggregation/basic-aggregation.c diff --git a/examples/basic_aggregation/constants.c b/src/libmongoc/examples/basic_aggregation/constants.c similarity index 100% rename from examples/basic_aggregation/constants.c rename to src/libmongoc/examples/basic_aggregation/constants.c diff --git a/examples/basic_aggregation/distinct.c b/src/libmongoc/examples/basic_aggregation/distinct.c similarity index 100% rename from examples/basic_aggregation/distinct.c rename to src/libmongoc/examples/basic_aggregation/distinct.c diff --git a/examples/basic_aggregation/map-reduce-advanced.c b/src/libmongoc/examples/basic_aggregation/map-reduce-advanced.c similarity index 100% rename from examples/basic_aggregation/map-reduce-advanced.c rename to src/libmongoc/examples/basic_aggregation/map-reduce-advanced.c diff --git a/examples/basic_aggregation/map-reduce-basic.c b/src/libmongoc/examples/basic_aggregation/map-reduce-basic.c similarity index 100% rename from examples/basic_aggregation/map-reduce-basic.c rename to src/libmongoc/examples/basic_aggregation/map-reduce-basic.c diff --git a/examples/bulk/bulk-collation.c b/src/libmongoc/examples/bulk/bulk-collation.c similarity index 100% rename from examples/bulk/bulk-collation.c rename to src/libmongoc/examples/bulk/bulk-collation.c diff --git a/examples/bulk/bulk1.c b/src/libmongoc/examples/bulk/bulk1.c similarity index 100% rename from examples/bulk/bulk1.c rename to src/libmongoc/examples/bulk/bulk1.c diff --git a/examples/bulk/bulk2.c b/src/libmongoc/examples/bulk/bulk2.c similarity index 100% rename from examples/bulk/bulk2.c rename to src/libmongoc/examples/bulk/bulk2.c diff --git a/examples/bulk/bulk3.c b/src/libmongoc/examples/bulk/bulk3.c similarity index 100% rename from examples/bulk/bulk3.c rename to src/libmongoc/examples/bulk/bulk3.c diff --git a/examples/bulk/bulk4.c b/src/libmongoc/examples/bulk/bulk4.c similarity index 100% rename from examples/bulk/bulk4.c rename to src/libmongoc/examples/bulk/bulk4.c diff --git a/examples/bulk/bulk5.c b/src/libmongoc/examples/bulk/bulk5.c similarity index 100% rename from examples/bulk/bulk5.c rename to src/libmongoc/examples/bulk/bulk5.c diff --git a/examples/bulk/bulk6.c b/src/libmongoc/examples/bulk/bulk6.c similarity index 100% rename from examples/bulk/bulk6.c rename to src/libmongoc/examples/bulk/bulk6.c diff --git a/examples/cmake/find_package/CMakeLists.txt b/src/libmongoc/examples/cmake/find_package/CMakeLists.txt similarity index 100% rename from examples/cmake/find_package/CMakeLists.txt rename to src/libmongoc/examples/cmake/find_package/CMakeLists.txt diff --git a/examples/cmake/find_package_static/CMakeLists.txt b/src/libmongoc/examples/cmake/find_package_static/CMakeLists.txt similarity index 100% rename from examples/cmake/find_package_static/CMakeLists.txt rename to src/libmongoc/examples/cmake/find_package_static/CMakeLists.txt diff --git a/examples/common_operations/clone-collection.c b/src/libmongoc/examples/common_operations/clone-collection.c similarity index 100% rename from examples/common_operations/clone-collection.c rename to src/libmongoc/examples/common_operations/clone-collection.c diff --git a/examples/common_operations/common-operations.c b/src/libmongoc/examples/common_operations/common-operations.c similarity index 100% rename from examples/common_operations/common-operations.c rename to src/libmongoc/examples/common_operations/common-operations.c diff --git a/examples/common_operations/copydb.c b/src/libmongoc/examples/common_operations/copydb.c similarity index 100% rename from examples/common_operations/copydb.c rename to src/libmongoc/examples/common_operations/copydb.c diff --git a/examples/common_operations/explain.c b/src/libmongoc/examples/common_operations/explain.c similarity index 100% rename from examples/common_operations/explain.c rename to src/libmongoc/examples/common_operations/explain.c diff --git a/examples/compile-with-pkg-config-static.sh b/src/libmongoc/examples/compile-with-pkg-config-static.sh similarity index 100% rename from examples/compile-with-pkg-config-static.sh rename to src/libmongoc/examples/compile-with-pkg-config-static.sh diff --git a/examples/compile-with-pkg-config.sh b/src/libmongoc/examples/compile-with-pkg-config.sh similarity index 100% rename from examples/compile-with-pkg-config.sh rename to src/libmongoc/examples/compile-with-pkg-config.sh diff --git a/examples/doc-common-insert.c b/src/libmongoc/examples/doc-common-insert.c similarity index 100% rename from examples/doc-common-insert.c rename to src/libmongoc/examples/doc-common-insert.c diff --git a/examples/example-client.c b/src/libmongoc/examples/example-client.c similarity index 100% rename from examples/example-client.c rename to src/libmongoc/examples/example-client.c diff --git a/examples/example-collection-watch.c b/src/libmongoc/examples/example-collection-watch.c similarity index 100% rename from examples/example-collection-watch.c rename to src/libmongoc/examples/example-collection-watch.c diff --git a/examples/example-command-monitoring.c b/src/libmongoc/examples/example-command-monitoring.c similarity index 100% rename from examples/example-command-monitoring.c rename to src/libmongoc/examples/example-command-monitoring.c diff --git a/examples/example-command-with-opts.c b/src/libmongoc/examples/example-command-with-opts.c similarity index 100% rename from examples/example-command-with-opts.c rename to src/libmongoc/examples/example-command-with-opts.c diff --git a/examples/example-create-indexes.c b/src/libmongoc/examples/example-create-indexes.c similarity index 100% rename from examples/example-create-indexes.c rename to src/libmongoc/examples/example-create-indexes.c diff --git a/examples/example-gridfs.c b/src/libmongoc/examples/example-gridfs.c similarity index 100% rename from examples/example-gridfs.c rename to src/libmongoc/examples/example-gridfs.c diff --git a/examples/example-matcher.c b/src/libmongoc/examples/example-matcher.c similarity index 100% rename from examples/example-matcher.c rename to src/libmongoc/examples/example-matcher.c diff --git a/examples/example-pool.c b/src/libmongoc/examples/example-pool.c similarity index 100% rename from examples/example-pool.c rename to src/libmongoc/examples/example-pool.c diff --git a/examples/example-scram.c b/src/libmongoc/examples/example-scram.c similarity index 100% rename from examples/example-scram.c rename to src/libmongoc/examples/example-scram.c diff --git a/examples/example-sdam-monitoring.c b/src/libmongoc/examples/example-sdam-monitoring.c similarity index 100% rename from examples/example-sdam-monitoring.c rename to src/libmongoc/examples/example-sdam-monitoring.c diff --git a/examples/example-session.c b/src/libmongoc/examples/example-session.c similarity index 100% rename from examples/example-session.c rename to src/libmongoc/examples/example-session.c diff --git a/examples/example-update.c b/src/libmongoc/examples/example-update.c similarity index 100% rename from examples/example-update.c rename to src/libmongoc/examples/example-update.c diff --git a/examples/filter-bsondump.c b/src/libmongoc/examples/filter-bsondump.c similarity index 100% rename from examples/filter-bsondump.c rename to src/libmongoc/examples/filter-bsondump.c diff --git a/examples/find-and-modify.c b/src/libmongoc/examples/find-and-modify.c similarity index 100% rename from examples/find-and-modify.c rename to src/libmongoc/examples/find-and-modify.c diff --git a/examples/find_and_modify_with_opts/fam.c b/src/libmongoc/examples/find_and_modify_with_opts/fam.c similarity index 100% rename from examples/find_and_modify_with_opts/fam.c rename to src/libmongoc/examples/find_and_modify_with_opts/fam.c diff --git a/examples/hello_mongoc.c b/src/libmongoc/examples/hello_mongoc.c similarity index 100% rename from examples/hello_mongoc.c rename to src/libmongoc/examples/hello_mongoc.c diff --git a/examples/mongoc-dump.c b/src/libmongoc/examples/mongoc-dump.c similarity index 100% rename from examples/mongoc-dump.c rename to src/libmongoc/examples/mongoc-dump.c diff --git a/examples/mongoc-ping.c b/src/libmongoc/examples/mongoc-ping.c similarity index 100% rename from examples/mongoc-ping.c rename to src/libmongoc/examples/mongoc-ping.c diff --git a/examples/mongoc-tail.c b/src/libmongoc/examples/mongoc-tail.c similarity index 100% rename from examples/mongoc-tail.c rename to src/libmongoc/examples/mongoc-tail.c diff --git a/examples/parse_handshake_cfg.py b/src/libmongoc/examples/parse_handshake_cfg.py similarity index 100% rename from examples/parse_handshake_cfg.py rename to src/libmongoc/examples/parse_handshake_cfg.py diff --git a/src/libmongoc/src/CMakeLists.txt b/src/libmongoc/src/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f5ce8968375c1ead63e57bd85dde0b2202339b68 --- /dev/null +++ b/src/libmongoc/src/CMakeLists.txt @@ -0,0 +1,15 @@ +add_subdirectory (mongoc) + +set_local_dist (src_libmongoc_src_DIST_local + CMakeLists.txt + libmongoc-1.0.pc.in + libmongoc-ssl-1.0.pc.in + libmongoc-static-1.0.pc.in +) + +set (src_libmongoc_src_DIST + ${src_libmongoc_src_DIST_local} + ${src_libmongoc_src_mongoc_DIST} + PARENT_SCOPE +) + diff --git a/src/libmongoc-1.0.pc.in b/src/libmongoc/src/libmongoc-1.0.pc.in similarity index 100% rename from src/libmongoc-1.0.pc.in rename to src/libmongoc/src/libmongoc-1.0.pc.in diff --git a/src/libmongoc-ssl-1.0.pc.in b/src/libmongoc/src/libmongoc-ssl-1.0.pc.in similarity index 100% rename from src/libmongoc-ssl-1.0.pc.in rename to src/libmongoc/src/libmongoc-ssl-1.0.pc.in diff --git a/src/libmongoc-static-1.0.pc.in b/src/libmongoc/src/libmongoc-static-1.0.pc.in similarity index 100% rename from src/libmongoc-static-1.0.pc.in rename to src/libmongoc/src/libmongoc-static-1.0.pc.in diff --git a/src/mongoc/.gitignore b/src/libmongoc/src/mongoc/.gitignore similarity index 100% rename from src/mongoc/.gitignore rename to src/libmongoc/src/mongoc/.gitignore diff --git a/src/mongoc/CMakeLists.txt b/src/libmongoc/src/mongoc/CMakeLists.txt similarity index 94% rename from src/mongoc/CMakeLists.txt rename to src/libmongoc/src/mongoc/CMakeLists.txt index 1453395bc375dedff6ac7c71488cc87cebb1647b..5f1c70caebf706f57fc1770eb90c16b0ecde17ee 100644 --- a/src/mongoc/CMakeLists.txt +++ b/src/libmongoc/src/mongoc/CMakeLists.txt @@ -1,4 +1,4 @@ -set (src_mongoc_DIST_defs +set (src_libmongoc_src_mongoc_DIST_defs op-delete.def op-get-more.def op-header.def @@ -13,7 +13,7 @@ set (src_mongoc_DIST_defs mongoc-counters.defs ) -set (src_mongoc_DIST_hs +set (src_libmongoc_src_mongoc_DIST_hs mongoc-apm.h mongoc-bulk-operation.h mongoc-change-stream.h @@ -67,7 +67,7 @@ extra_dist_generated ( mongoc-version.h ) -set (src_mongoc_DIST_noinst_hs +set (src_libmongoc_src_mongoc_DIST_noinst_hs mongoc-apm-private.h mongoc-array-private.h mongoc-async-cmd-private.h @@ -151,7 +151,7 @@ set (src_mongoc_DIST_noinst_hs mongoc-write-concern-private.h ) -set (src_mongoc_DIST_cs +set (src_libmongoc_src_mongoc_DIST_cs mongoc-apm.c mongoc-array.c mongoc-async.c @@ -245,10 +245,10 @@ set (src_mongoc_DIST_cs mongoc-gssapi.c ) -set_dist_list (src_mongoc_DIST +set_dist_list (src_libmongoc_src_mongoc_DIST CMakeLists.txt - ${src_mongoc_DIST_cs} - ${src_mongoc_DIST_hs} - ${src_mongoc_DIST_noinst_hs} - ${src_mongoc_DIST_defs} + ${src_libmongoc_src_mongoc_DIST_cs} + ${src_libmongoc_src_mongoc_DIST_hs} + ${src_libmongoc_src_mongoc_DIST_noinst_hs} + ${src_libmongoc_src_mongoc_DIST_defs} ) diff --git a/src/mongoc/mongoc-apm-private.h b/src/libmongoc/src/mongoc/mongoc-apm-private.h similarity index 100% rename from src/mongoc/mongoc-apm-private.h rename to src/libmongoc/src/mongoc/mongoc-apm-private.h diff --git a/src/mongoc/mongoc-apm.c b/src/libmongoc/src/mongoc/mongoc-apm.c similarity index 100% rename from src/mongoc/mongoc-apm.c rename to src/libmongoc/src/mongoc/mongoc-apm.c diff --git a/src/mongoc/mongoc-apm.h b/src/libmongoc/src/mongoc/mongoc-apm.h similarity index 100% rename from src/mongoc/mongoc-apm.h rename to src/libmongoc/src/mongoc/mongoc-apm.h diff --git a/src/mongoc/mongoc-array-private.h b/src/libmongoc/src/mongoc/mongoc-array-private.h similarity index 100% rename from src/mongoc/mongoc-array-private.h rename to src/libmongoc/src/mongoc/mongoc-array-private.h diff --git a/src/mongoc/mongoc-array.c b/src/libmongoc/src/mongoc/mongoc-array.c similarity index 100% rename from src/mongoc/mongoc-array.c rename to src/libmongoc/src/mongoc/mongoc-array.c diff --git a/src/mongoc/mongoc-async-cmd-private.h b/src/libmongoc/src/mongoc/mongoc-async-cmd-private.h similarity index 100% rename from src/mongoc/mongoc-async-cmd-private.h rename to src/libmongoc/src/mongoc/mongoc-async-cmd-private.h diff --git a/src/mongoc/mongoc-async-cmd.c b/src/libmongoc/src/mongoc/mongoc-async-cmd.c similarity index 100% rename from src/mongoc/mongoc-async-cmd.c rename to src/libmongoc/src/mongoc/mongoc-async-cmd.c diff --git a/src/mongoc/mongoc-async-private.h b/src/libmongoc/src/mongoc/mongoc-async-private.h similarity index 100% rename from src/mongoc/mongoc-async-private.h rename to src/libmongoc/src/mongoc/mongoc-async-private.h diff --git a/src/mongoc/mongoc-async.c b/src/libmongoc/src/mongoc/mongoc-async.c similarity index 100% rename from src/mongoc/mongoc-async.c rename to src/libmongoc/src/mongoc/mongoc-async.c diff --git a/src/mongoc/mongoc-buffer-private.h b/src/libmongoc/src/mongoc/mongoc-buffer-private.h similarity index 100% rename from src/mongoc/mongoc-buffer-private.h rename to src/libmongoc/src/mongoc/mongoc-buffer-private.h diff --git a/src/mongoc/mongoc-buffer.c b/src/libmongoc/src/mongoc/mongoc-buffer.c similarity index 100% rename from src/mongoc/mongoc-buffer.c rename to src/libmongoc/src/mongoc/mongoc-buffer.c diff --git a/src/mongoc/mongoc-bulk-operation-private.h b/src/libmongoc/src/mongoc/mongoc-bulk-operation-private.h similarity index 100% rename from src/mongoc/mongoc-bulk-operation-private.h rename to src/libmongoc/src/mongoc/mongoc-bulk-operation-private.h diff --git a/src/mongoc/mongoc-bulk-operation.c b/src/libmongoc/src/mongoc/mongoc-bulk-operation.c similarity index 100% rename from src/mongoc/mongoc-bulk-operation.c rename to src/libmongoc/src/mongoc/mongoc-bulk-operation.c diff --git a/src/mongoc/mongoc-bulk-operation.h b/src/libmongoc/src/mongoc/mongoc-bulk-operation.h similarity index 100% rename from src/mongoc/mongoc-bulk-operation.h rename to src/libmongoc/src/mongoc/mongoc-bulk-operation.h diff --git a/src/mongoc/mongoc-change-stream-private.h b/src/libmongoc/src/mongoc/mongoc-change-stream-private.h similarity index 100% rename from src/mongoc/mongoc-change-stream-private.h rename to src/libmongoc/src/mongoc/mongoc-change-stream-private.h diff --git a/src/mongoc/mongoc-change-stream.c b/src/libmongoc/src/mongoc/mongoc-change-stream.c similarity index 100% rename from src/mongoc/mongoc-change-stream.c rename to src/libmongoc/src/mongoc/mongoc-change-stream.c diff --git a/src/mongoc/mongoc-change-stream.h b/src/libmongoc/src/mongoc/mongoc-change-stream.h similarity index 100% rename from src/mongoc/mongoc-change-stream.h rename to src/libmongoc/src/mongoc/mongoc-change-stream.h diff --git a/src/mongoc/mongoc-client-pool-private.h b/src/libmongoc/src/mongoc/mongoc-client-pool-private.h similarity index 100% rename from src/mongoc/mongoc-client-pool-private.h rename to src/libmongoc/src/mongoc/mongoc-client-pool-private.h diff --git a/src/mongoc/mongoc-client-pool.c b/src/libmongoc/src/mongoc/mongoc-client-pool.c similarity index 100% rename from src/mongoc/mongoc-client-pool.c rename to src/libmongoc/src/mongoc/mongoc-client-pool.c diff --git a/src/mongoc/mongoc-client-pool.h b/src/libmongoc/src/mongoc/mongoc-client-pool.h similarity index 100% rename from src/mongoc/mongoc-client-pool.h rename to src/libmongoc/src/mongoc/mongoc-client-pool.h diff --git a/src/mongoc/mongoc-client-private.h b/src/libmongoc/src/mongoc/mongoc-client-private.h similarity index 100% rename from src/mongoc/mongoc-client-private.h rename to src/libmongoc/src/mongoc/mongoc-client-private.h diff --git a/src/mongoc/mongoc-client-session-private.h b/src/libmongoc/src/mongoc/mongoc-client-session-private.h similarity index 100% rename from src/mongoc/mongoc-client-session-private.h rename to src/libmongoc/src/mongoc/mongoc-client-session-private.h diff --git a/src/mongoc/mongoc-client-session.c b/src/libmongoc/src/mongoc/mongoc-client-session.c similarity index 100% rename from src/mongoc/mongoc-client-session.c rename to src/libmongoc/src/mongoc/mongoc-client-session.c diff --git a/src/mongoc/mongoc-client-session.h b/src/libmongoc/src/mongoc/mongoc-client-session.h similarity index 100% rename from src/mongoc/mongoc-client-session.h rename to src/libmongoc/src/mongoc/mongoc-client-session.h diff --git a/src/mongoc/mongoc-client.c b/src/libmongoc/src/mongoc/mongoc-client.c similarity index 100% rename from src/mongoc/mongoc-client.c rename to src/libmongoc/src/mongoc/mongoc-client.c diff --git a/src/mongoc/mongoc-client.h b/src/libmongoc/src/mongoc/mongoc-client.h similarity index 100% rename from src/mongoc/mongoc-client.h rename to src/libmongoc/src/mongoc/mongoc-client.h diff --git a/src/mongoc/mongoc-cluster-cyrus-private.h b/src/libmongoc/src/mongoc/mongoc-cluster-cyrus-private.h similarity index 100% rename from src/mongoc/mongoc-cluster-cyrus-private.h rename to src/libmongoc/src/mongoc/mongoc-cluster-cyrus-private.h diff --git a/src/mongoc/mongoc-cluster-cyrus.c b/src/libmongoc/src/mongoc/mongoc-cluster-cyrus.c similarity index 100% rename from src/mongoc/mongoc-cluster-cyrus.c rename to src/libmongoc/src/mongoc/mongoc-cluster-cyrus.c diff --git a/src/mongoc/mongoc-cluster-gssapi-private.h b/src/libmongoc/src/mongoc/mongoc-cluster-gssapi-private.h similarity index 100% rename from src/mongoc/mongoc-cluster-gssapi-private.h rename to src/libmongoc/src/mongoc/mongoc-cluster-gssapi-private.h diff --git a/src/mongoc/mongoc-cluster-gssapi.c b/src/libmongoc/src/mongoc/mongoc-cluster-gssapi.c similarity index 100% rename from src/mongoc/mongoc-cluster-gssapi.c rename to src/libmongoc/src/mongoc/mongoc-cluster-gssapi.c diff --git a/src/mongoc/mongoc-cluster-private.h b/src/libmongoc/src/mongoc/mongoc-cluster-private.h similarity index 100% rename from src/mongoc/mongoc-cluster-private.h rename to src/libmongoc/src/mongoc/mongoc-cluster-private.h diff --git a/src/mongoc/mongoc-cluster-sasl-private.h b/src/libmongoc/src/mongoc/mongoc-cluster-sasl-private.h similarity index 100% rename from src/mongoc/mongoc-cluster-sasl-private.h rename to src/libmongoc/src/mongoc/mongoc-cluster-sasl-private.h diff --git a/src/mongoc/mongoc-cluster-sasl.c b/src/libmongoc/src/mongoc/mongoc-cluster-sasl.c similarity index 100% rename from src/mongoc/mongoc-cluster-sasl.c rename to src/libmongoc/src/mongoc/mongoc-cluster-sasl.c diff --git a/src/mongoc/mongoc-cluster-sspi-private.h b/src/libmongoc/src/mongoc/mongoc-cluster-sspi-private.h similarity index 100% rename from src/mongoc/mongoc-cluster-sspi-private.h rename to src/libmongoc/src/mongoc/mongoc-cluster-sspi-private.h diff --git a/src/mongoc/mongoc-cluster-sspi.c b/src/libmongoc/src/mongoc/mongoc-cluster-sspi.c similarity index 100% rename from src/mongoc/mongoc-cluster-sspi.c rename to src/libmongoc/src/mongoc/mongoc-cluster-sspi.c diff --git a/src/mongoc/mongoc-cluster.c b/src/libmongoc/src/mongoc/mongoc-cluster.c similarity index 100% rename from src/mongoc/mongoc-cluster.c rename to src/libmongoc/src/mongoc/mongoc-cluster.c diff --git a/src/mongoc/mongoc-cmd-private.h b/src/libmongoc/src/mongoc/mongoc-cmd-private.h similarity index 100% rename from src/mongoc/mongoc-cmd-private.h rename to src/libmongoc/src/mongoc/mongoc-cmd-private.h diff --git a/src/mongoc/mongoc-cmd.c b/src/libmongoc/src/mongoc/mongoc-cmd.c similarity index 100% rename from src/mongoc/mongoc-cmd.c rename to src/libmongoc/src/mongoc/mongoc-cmd.c diff --git a/src/mongoc/mongoc-collection-private.h b/src/libmongoc/src/mongoc/mongoc-collection-private.h similarity index 100% rename from src/mongoc/mongoc-collection-private.h rename to src/libmongoc/src/mongoc/mongoc-collection-private.h diff --git a/src/mongoc/mongoc-collection.c b/src/libmongoc/src/mongoc/mongoc-collection.c similarity index 100% rename from src/mongoc/mongoc-collection.c rename to src/libmongoc/src/mongoc/mongoc-collection.c diff --git a/src/mongoc/mongoc-collection.h b/src/libmongoc/src/mongoc/mongoc-collection.h similarity index 100% rename from src/mongoc/mongoc-collection.h rename to src/libmongoc/src/mongoc/mongoc-collection.h diff --git a/src/mongoc/mongoc-compression-private.h b/src/libmongoc/src/mongoc/mongoc-compression-private.h similarity index 100% rename from src/mongoc/mongoc-compression-private.h rename to src/libmongoc/src/mongoc/mongoc-compression-private.h diff --git a/src/mongoc/mongoc-compression.c b/src/libmongoc/src/mongoc/mongoc-compression.c similarity index 100% rename from src/mongoc/mongoc-compression.c rename to src/libmongoc/src/mongoc/mongoc-compression.c diff --git a/src/mongoc/mongoc-config.h.in b/src/libmongoc/src/mongoc/mongoc-config.h.in similarity index 100% rename from src/mongoc/mongoc-config.h.in rename to src/libmongoc/src/mongoc/mongoc-config.h.in diff --git a/src/mongoc/mongoc-counters-private.h b/src/libmongoc/src/mongoc/mongoc-counters-private.h similarity index 100% rename from src/mongoc/mongoc-counters-private.h rename to src/libmongoc/src/mongoc/mongoc-counters-private.h diff --git a/src/mongoc/mongoc-counters.c b/src/libmongoc/src/mongoc/mongoc-counters.c similarity index 100% rename from src/mongoc/mongoc-counters.c rename to src/libmongoc/src/mongoc/mongoc-counters.c diff --git a/src/mongoc/mongoc-counters.defs b/src/libmongoc/src/mongoc/mongoc-counters.defs similarity index 100% rename from src/mongoc/mongoc-counters.defs rename to src/libmongoc/src/mongoc/mongoc-counters.defs diff --git a/src/mongoc/mongoc-crypto-cng-private.h b/src/libmongoc/src/mongoc/mongoc-crypto-cng-private.h similarity index 100% rename from src/mongoc/mongoc-crypto-cng-private.h rename to src/libmongoc/src/mongoc/mongoc-crypto-cng-private.h diff --git a/src/mongoc/mongoc-crypto-cng.c b/src/libmongoc/src/mongoc/mongoc-crypto-cng.c similarity index 100% rename from src/mongoc/mongoc-crypto-cng.c rename to src/libmongoc/src/mongoc/mongoc-crypto-cng.c diff --git a/src/mongoc/mongoc-crypto-cng.h b/src/libmongoc/src/mongoc/mongoc-crypto-cng.h similarity index 100% rename from src/mongoc/mongoc-crypto-cng.h rename to src/libmongoc/src/mongoc/mongoc-crypto-cng.h diff --git a/src/mongoc/mongoc-crypto-common-crypto-private.h b/src/libmongoc/src/mongoc/mongoc-crypto-common-crypto-private.h similarity index 100% rename from src/mongoc/mongoc-crypto-common-crypto-private.h rename to src/libmongoc/src/mongoc/mongoc-crypto-common-crypto-private.h diff --git a/src/mongoc/mongoc-crypto-common-crypto.c b/src/libmongoc/src/mongoc/mongoc-crypto-common-crypto.c similarity index 100% rename from src/mongoc/mongoc-crypto-common-crypto.c rename to src/libmongoc/src/mongoc/mongoc-crypto-common-crypto.c diff --git a/src/mongoc/mongoc-crypto-openssl-private.h b/src/libmongoc/src/mongoc/mongoc-crypto-openssl-private.h similarity index 100% rename from src/mongoc/mongoc-crypto-openssl-private.h rename to src/libmongoc/src/mongoc/mongoc-crypto-openssl-private.h diff --git a/src/mongoc/mongoc-crypto-openssl.c b/src/libmongoc/src/mongoc/mongoc-crypto-openssl.c similarity index 100% rename from src/mongoc/mongoc-crypto-openssl.c rename to src/libmongoc/src/mongoc/mongoc-crypto-openssl.c diff --git a/src/mongoc/mongoc-crypto-private.h b/src/libmongoc/src/mongoc/mongoc-crypto-private.h similarity index 100% rename from src/mongoc/mongoc-crypto-private.h rename to src/libmongoc/src/mongoc/mongoc-crypto-private.h diff --git a/src/mongoc/mongoc-crypto.c b/src/libmongoc/src/mongoc/mongoc-crypto.c similarity index 100% rename from src/mongoc/mongoc-crypto.c rename to src/libmongoc/src/mongoc/mongoc-crypto.c diff --git a/src/mongoc/mongoc-cursor-array.c b/src/libmongoc/src/mongoc/mongoc-cursor-array.c similarity index 100% rename from src/mongoc/mongoc-cursor-array.c rename to src/libmongoc/src/mongoc/mongoc-cursor-array.c diff --git a/src/mongoc/mongoc-cursor-cmd-deprecated.c b/src/libmongoc/src/mongoc/mongoc-cursor-cmd-deprecated.c similarity index 100% rename from src/mongoc/mongoc-cursor-cmd-deprecated.c rename to src/libmongoc/src/mongoc/mongoc-cursor-cmd-deprecated.c diff --git a/src/mongoc/mongoc-cursor-cmd.c b/src/libmongoc/src/mongoc/mongoc-cursor-cmd.c similarity index 100% rename from src/mongoc/mongoc-cursor-cmd.c rename to src/libmongoc/src/mongoc/mongoc-cursor-cmd.c diff --git a/src/mongoc/mongoc-cursor-find-cmd.c b/src/libmongoc/src/mongoc/mongoc-cursor-find-cmd.c similarity index 100% rename from src/mongoc/mongoc-cursor-find-cmd.c rename to src/libmongoc/src/mongoc/mongoc-cursor-find-cmd.c diff --git a/src/mongoc/mongoc-cursor-find-opquery.c b/src/libmongoc/src/mongoc/mongoc-cursor-find-opquery.c similarity index 100% rename from src/mongoc/mongoc-cursor-find-opquery.c rename to src/libmongoc/src/mongoc/mongoc-cursor-find-opquery.c diff --git a/src/mongoc/mongoc-cursor-find.c b/src/libmongoc/src/mongoc/mongoc-cursor-find.c similarity index 100% rename from src/mongoc/mongoc-cursor-find.c rename to src/libmongoc/src/mongoc/mongoc-cursor-find.c diff --git a/src/mongoc/mongoc-cursor-legacy.c b/src/libmongoc/src/mongoc/mongoc-cursor-legacy.c similarity index 100% rename from src/mongoc/mongoc-cursor-legacy.c rename to src/libmongoc/src/mongoc/mongoc-cursor-legacy.c diff --git a/src/mongoc/mongoc-cursor-private.h b/src/libmongoc/src/mongoc/mongoc-cursor-private.h similarity index 100% rename from src/mongoc/mongoc-cursor-private.h rename to src/libmongoc/src/mongoc/mongoc-cursor-private.h diff --git a/src/mongoc/mongoc-cursor.c b/src/libmongoc/src/mongoc/mongoc-cursor.c similarity index 100% rename from src/mongoc/mongoc-cursor.c rename to src/libmongoc/src/mongoc/mongoc-cursor.c diff --git a/src/mongoc/mongoc-cursor.h b/src/libmongoc/src/mongoc/mongoc-cursor.h similarity index 100% rename from src/mongoc/mongoc-cursor.h rename to src/libmongoc/src/mongoc/mongoc-cursor.h diff --git a/src/mongoc/mongoc-cyrus-private.h b/src/libmongoc/src/mongoc/mongoc-cyrus-private.h similarity index 100% rename from src/mongoc/mongoc-cyrus-private.h rename to src/libmongoc/src/mongoc/mongoc-cyrus-private.h diff --git a/src/mongoc/mongoc-cyrus.c b/src/libmongoc/src/mongoc/mongoc-cyrus.c similarity index 100% rename from src/mongoc/mongoc-cyrus.c rename to src/libmongoc/src/mongoc/mongoc-cyrus.c diff --git a/src/mongoc/mongoc-database-private.h b/src/libmongoc/src/mongoc/mongoc-database-private.h similarity index 100% rename from src/mongoc/mongoc-database-private.h rename to src/libmongoc/src/mongoc/mongoc-database-private.h diff --git a/src/mongoc/mongoc-database.c b/src/libmongoc/src/mongoc/mongoc-database.c similarity index 100% rename from src/mongoc/mongoc-database.c rename to src/libmongoc/src/mongoc/mongoc-database.c diff --git a/src/mongoc/mongoc-database.h b/src/libmongoc/src/mongoc/mongoc-database.h similarity index 100% rename from src/mongoc/mongoc-database.h rename to src/libmongoc/src/mongoc/mongoc-database.h diff --git a/src/mongoc/mongoc-errno-private.h b/src/libmongoc/src/mongoc/mongoc-errno-private.h similarity index 100% rename from src/mongoc/mongoc-errno-private.h rename to src/libmongoc/src/mongoc/mongoc-errno-private.h diff --git a/src/mongoc/mongoc-error.h b/src/libmongoc/src/mongoc/mongoc-error.h similarity index 100% rename from src/mongoc/mongoc-error.h rename to src/libmongoc/src/mongoc/mongoc-error.h diff --git a/src/mongoc/mongoc-find-and-modify-private.h b/src/libmongoc/src/mongoc/mongoc-find-and-modify-private.h similarity index 100% rename from src/mongoc/mongoc-find-and-modify-private.h rename to src/libmongoc/src/mongoc/mongoc-find-and-modify-private.h diff --git a/src/mongoc/mongoc-find-and-modify.c b/src/libmongoc/src/mongoc/mongoc-find-and-modify.c similarity index 100% rename from src/mongoc/mongoc-find-and-modify.c rename to src/libmongoc/src/mongoc/mongoc-find-and-modify.c diff --git a/src/mongoc/mongoc-find-and-modify.h b/src/libmongoc/src/mongoc/mongoc-find-and-modify.h similarity index 100% rename from src/mongoc/mongoc-find-and-modify.h rename to src/libmongoc/src/mongoc/mongoc-find-and-modify.h diff --git a/src/mongoc/mongoc-flags.h b/src/libmongoc/src/mongoc/mongoc-flags.h similarity index 100% rename from src/mongoc/mongoc-flags.h rename to src/libmongoc/src/mongoc/mongoc-flags.h diff --git a/src/mongoc/mongoc-gridfs-file-list-private.h b/src/libmongoc/src/mongoc/mongoc-gridfs-file-list-private.h similarity index 100% rename from src/mongoc/mongoc-gridfs-file-list-private.h rename to src/libmongoc/src/mongoc/mongoc-gridfs-file-list-private.h diff --git a/src/mongoc/mongoc-gridfs-file-list.c b/src/libmongoc/src/mongoc/mongoc-gridfs-file-list.c similarity index 100% rename from src/mongoc/mongoc-gridfs-file-list.c rename to src/libmongoc/src/mongoc/mongoc-gridfs-file-list.c diff --git a/src/mongoc/mongoc-gridfs-file-list.h b/src/libmongoc/src/mongoc/mongoc-gridfs-file-list.h similarity index 100% rename from src/mongoc/mongoc-gridfs-file-list.h rename to src/libmongoc/src/mongoc/mongoc-gridfs-file-list.h diff --git a/src/mongoc/mongoc-gridfs-file-page-private.h b/src/libmongoc/src/mongoc/mongoc-gridfs-file-page-private.h similarity index 100% rename from src/mongoc/mongoc-gridfs-file-page-private.h rename to src/libmongoc/src/mongoc/mongoc-gridfs-file-page-private.h diff --git a/src/mongoc/mongoc-gridfs-file-page.c b/src/libmongoc/src/mongoc/mongoc-gridfs-file-page.c similarity index 100% rename from src/mongoc/mongoc-gridfs-file-page.c rename to src/libmongoc/src/mongoc/mongoc-gridfs-file-page.c diff --git a/src/mongoc/mongoc-gridfs-file-page.h b/src/libmongoc/src/mongoc/mongoc-gridfs-file-page.h similarity index 100% rename from src/mongoc/mongoc-gridfs-file-page.h rename to src/libmongoc/src/mongoc/mongoc-gridfs-file-page.h diff --git a/src/mongoc/mongoc-gridfs-file-private.h b/src/libmongoc/src/mongoc/mongoc-gridfs-file-private.h similarity index 100% rename from src/mongoc/mongoc-gridfs-file-private.h rename to src/libmongoc/src/mongoc/mongoc-gridfs-file-private.h diff --git a/src/mongoc/mongoc-gridfs-file.c b/src/libmongoc/src/mongoc/mongoc-gridfs-file.c similarity index 100% rename from src/mongoc/mongoc-gridfs-file.c rename to src/libmongoc/src/mongoc/mongoc-gridfs-file.c diff --git a/src/mongoc/mongoc-gridfs-file.h b/src/libmongoc/src/mongoc/mongoc-gridfs-file.h similarity index 100% rename from src/mongoc/mongoc-gridfs-file.h rename to src/libmongoc/src/mongoc/mongoc-gridfs-file.h diff --git a/src/mongoc/mongoc-gridfs-private.h b/src/libmongoc/src/mongoc/mongoc-gridfs-private.h similarity index 100% rename from src/mongoc/mongoc-gridfs-private.h rename to src/libmongoc/src/mongoc/mongoc-gridfs-private.h diff --git a/src/mongoc/mongoc-gridfs.c b/src/libmongoc/src/mongoc/mongoc-gridfs.c similarity index 100% rename from src/mongoc/mongoc-gridfs.c rename to src/libmongoc/src/mongoc/mongoc-gridfs.c diff --git a/src/mongoc/mongoc-gridfs.h b/src/libmongoc/src/mongoc/mongoc-gridfs.h similarity index 100% rename from src/mongoc/mongoc-gridfs.h rename to src/libmongoc/src/mongoc/mongoc-gridfs.h diff --git a/src/mongoc/mongoc-gssapi-private.h b/src/libmongoc/src/mongoc/mongoc-gssapi-private.h similarity index 100% rename from src/mongoc/mongoc-gssapi-private.h rename to src/libmongoc/src/mongoc/mongoc-gssapi-private.h diff --git a/src/mongoc/mongoc-gssapi.c b/src/libmongoc/src/mongoc/mongoc-gssapi.c similarity index 100% rename from src/mongoc/mongoc-gssapi.c rename to src/libmongoc/src/mongoc/mongoc-gssapi.c diff --git a/src/mongoc/mongoc-handshake-compiler-private.h b/src/libmongoc/src/mongoc/mongoc-handshake-compiler-private.h similarity index 100% rename from src/mongoc/mongoc-handshake-compiler-private.h rename to src/libmongoc/src/mongoc/mongoc-handshake-compiler-private.h diff --git a/src/mongoc/mongoc-handshake-os-private.h b/src/libmongoc/src/mongoc/mongoc-handshake-os-private.h similarity index 100% rename from src/mongoc/mongoc-handshake-os-private.h rename to src/libmongoc/src/mongoc/mongoc-handshake-os-private.h diff --git a/src/mongoc/mongoc-handshake-private.h b/src/libmongoc/src/mongoc/mongoc-handshake-private.h similarity index 100% rename from src/mongoc/mongoc-handshake-private.h rename to src/libmongoc/src/mongoc/mongoc-handshake-private.h diff --git a/src/mongoc/mongoc-handshake.c b/src/libmongoc/src/mongoc/mongoc-handshake.c similarity index 100% rename from src/mongoc/mongoc-handshake.c rename to src/libmongoc/src/mongoc/mongoc-handshake.c diff --git a/src/mongoc/mongoc-handshake.h b/src/libmongoc/src/mongoc/mongoc-handshake.h similarity index 100% rename from src/mongoc/mongoc-handshake.h rename to src/libmongoc/src/mongoc/mongoc-handshake.h diff --git a/src/mongoc/mongoc-host-list-private.h b/src/libmongoc/src/mongoc/mongoc-host-list-private.h similarity index 100% rename from src/mongoc/mongoc-host-list-private.h rename to src/libmongoc/src/mongoc/mongoc-host-list-private.h diff --git a/src/mongoc/mongoc-host-list.c b/src/libmongoc/src/mongoc/mongoc-host-list.c similarity index 100% rename from src/mongoc/mongoc-host-list.c rename to src/libmongoc/src/mongoc/mongoc-host-list.c diff --git a/src/mongoc/mongoc-host-list.h b/src/libmongoc/src/mongoc/mongoc-host-list.h similarity index 100% rename from src/mongoc/mongoc-host-list.h rename to src/libmongoc/src/mongoc/mongoc-host-list.h diff --git a/src/mongoc/mongoc-index.c b/src/libmongoc/src/mongoc/mongoc-index.c similarity index 100% rename from src/mongoc/mongoc-index.c rename to src/libmongoc/src/mongoc/mongoc-index.c diff --git a/src/mongoc/mongoc-index.h b/src/libmongoc/src/mongoc/mongoc-index.h similarity index 100% rename from src/mongoc/mongoc-index.h rename to src/libmongoc/src/mongoc/mongoc-index.h diff --git a/src/mongoc/mongoc-init.c b/src/libmongoc/src/mongoc/mongoc-init.c similarity index 100% rename from src/mongoc/mongoc-init.c rename to src/libmongoc/src/mongoc/mongoc-init.c diff --git a/src/mongoc/mongoc-init.h b/src/libmongoc/src/mongoc/mongoc-init.h similarity index 100% rename from src/mongoc/mongoc-init.h rename to src/libmongoc/src/mongoc/mongoc-init.h diff --git a/src/mongoc/mongoc-iovec.h b/src/libmongoc/src/mongoc/mongoc-iovec.h similarity index 100% rename from src/mongoc/mongoc-iovec.h rename to src/libmongoc/src/mongoc/mongoc-iovec.h diff --git a/src/mongoc/mongoc-libressl-private.h b/src/libmongoc/src/mongoc/mongoc-libressl-private.h similarity index 100% rename from src/mongoc/mongoc-libressl-private.h rename to src/libmongoc/src/mongoc/mongoc-libressl-private.h diff --git a/src/mongoc/mongoc-libressl.c b/src/libmongoc/src/mongoc/mongoc-libressl.c similarity index 100% rename from src/mongoc/mongoc-libressl.c rename to src/libmongoc/src/mongoc/mongoc-libressl.c diff --git a/src/mongoc/mongoc-linux-distro-scanner-private.h b/src/libmongoc/src/mongoc/mongoc-linux-distro-scanner-private.h similarity index 100% rename from src/mongoc/mongoc-linux-distro-scanner-private.h rename to src/libmongoc/src/mongoc/mongoc-linux-distro-scanner-private.h diff --git a/src/mongoc/mongoc-linux-distro-scanner.c b/src/libmongoc/src/mongoc/mongoc-linux-distro-scanner.c similarity index 100% rename from src/mongoc/mongoc-linux-distro-scanner.c rename to src/libmongoc/src/mongoc/mongoc-linux-distro-scanner.c diff --git a/src/mongoc/mongoc-list-private.h b/src/libmongoc/src/mongoc/mongoc-list-private.h similarity index 100% rename from src/mongoc/mongoc-list-private.h rename to src/libmongoc/src/mongoc/mongoc-list-private.h diff --git a/src/mongoc/mongoc-list.c b/src/libmongoc/src/mongoc/mongoc-list.c similarity index 100% rename from src/mongoc/mongoc-list.c rename to src/libmongoc/src/mongoc/mongoc-list.c diff --git a/src/mongoc/mongoc-log-private.h b/src/libmongoc/src/mongoc/mongoc-log-private.h similarity index 100% rename from src/mongoc/mongoc-log-private.h rename to src/libmongoc/src/mongoc/mongoc-log-private.h diff --git a/src/mongoc/mongoc-log.c b/src/libmongoc/src/mongoc/mongoc-log.c similarity index 100% rename from src/mongoc/mongoc-log.c rename to src/libmongoc/src/mongoc/mongoc-log.c diff --git a/src/mongoc/mongoc-log.h b/src/libmongoc/src/mongoc/mongoc-log.h similarity index 100% rename from src/mongoc/mongoc-log.h rename to src/libmongoc/src/mongoc/mongoc-log.h diff --git a/src/mongoc/mongoc-macros.h b/src/libmongoc/src/mongoc/mongoc-macros.h similarity index 100% rename from src/mongoc/mongoc-macros.h rename to src/libmongoc/src/mongoc/mongoc-macros.h diff --git a/src/mongoc/mongoc-matcher-op-private.h b/src/libmongoc/src/mongoc/mongoc-matcher-op-private.h similarity index 100% rename from src/mongoc/mongoc-matcher-op-private.h rename to src/libmongoc/src/mongoc/mongoc-matcher-op-private.h diff --git a/src/mongoc/mongoc-matcher-op.c b/src/libmongoc/src/mongoc/mongoc-matcher-op.c similarity index 100% rename from src/mongoc/mongoc-matcher-op.c rename to src/libmongoc/src/mongoc/mongoc-matcher-op.c diff --git a/src/mongoc/mongoc-matcher-private.h b/src/libmongoc/src/mongoc/mongoc-matcher-private.h similarity index 100% rename from src/mongoc/mongoc-matcher-private.h rename to src/libmongoc/src/mongoc/mongoc-matcher-private.h diff --git a/src/mongoc/mongoc-matcher.c b/src/libmongoc/src/mongoc/mongoc-matcher.c similarity index 100% rename from src/mongoc/mongoc-matcher.c rename to src/libmongoc/src/mongoc/mongoc-matcher.c diff --git a/src/mongoc/mongoc-matcher.h b/src/libmongoc/src/mongoc/mongoc-matcher.h similarity index 100% rename from src/mongoc/mongoc-matcher.h rename to src/libmongoc/src/mongoc/mongoc-matcher.h diff --git a/src/mongoc/mongoc-memcmp-private.h b/src/libmongoc/src/mongoc/mongoc-memcmp-private.h similarity index 100% rename from src/mongoc/mongoc-memcmp-private.h rename to src/libmongoc/src/mongoc/mongoc-memcmp-private.h diff --git a/src/mongoc/mongoc-memcmp.c b/src/libmongoc/src/mongoc/mongoc-memcmp.c similarity index 100% rename from src/mongoc/mongoc-memcmp.c rename to src/libmongoc/src/mongoc/mongoc-memcmp.c diff --git a/src/mongoc/mongoc-opcode.h b/src/libmongoc/src/mongoc/mongoc-opcode.h similarity index 100% rename from src/mongoc/mongoc-opcode.h rename to src/libmongoc/src/mongoc/mongoc-opcode.h diff --git a/src/mongoc/mongoc-openssl-private.h b/src/libmongoc/src/mongoc/mongoc-openssl-private.h similarity index 100% rename from src/mongoc/mongoc-openssl-private.h rename to src/libmongoc/src/mongoc/mongoc-openssl-private.h diff --git a/src/mongoc/mongoc-openssl.c b/src/libmongoc/src/mongoc/mongoc-openssl.c similarity index 100% rename from src/mongoc/mongoc-openssl.c rename to src/libmongoc/src/mongoc/mongoc-openssl.c diff --git a/src/mongoc/mongoc-opts-helpers-private.h b/src/libmongoc/src/mongoc/mongoc-opts-helpers-private.h similarity index 100% rename from src/mongoc/mongoc-opts-helpers-private.h rename to src/libmongoc/src/mongoc/mongoc-opts-helpers-private.h diff --git a/src/mongoc/mongoc-opts-helpers.c b/src/libmongoc/src/mongoc/mongoc-opts-helpers.c similarity index 100% rename from src/mongoc/mongoc-opts-helpers.c rename to src/libmongoc/src/mongoc/mongoc-opts-helpers.c diff --git a/src/mongoc/mongoc-opts-private.h b/src/libmongoc/src/mongoc/mongoc-opts-private.h similarity index 100% rename from src/mongoc/mongoc-opts-private.h rename to src/libmongoc/src/mongoc/mongoc-opts-private.h diff --git a/src/mongoc/mongoc-opts.c b/src/libmongoc/src/mongoc/mongoc-opts.c similarity index 100% rename from src/mongoc/mongoc-opts.c rename to src/libmongoc/src/mongoc/mongoc-opts.c diff --git a/src/mongoc/mongoc-queue-private.h b/src/libmongoc/src/mongoc/mongoc-queue-private.h similarity index 100% rename from src/mongoc/mongoc-queue-private.h rename to src/libmongoc/src/mongoc/mongoc-queue-private.h diff --git a/src/mongoc/mongoc-queue.c b/src/libmongoc/src/mongoc/mongoc-queue.c similarity index 100% rename from src/mongoc/mongoc-queue.c rename to src/libmongoc/src/mongoc/mongoc-queue.c diff --git a/src/mongoc/mongoc-rand-cng.c b/src/libmongoc/src/mongoc/mongoc-rand-cng.c similarity index 100% rename from src/mongoc/mongoc-rand-cng.c rename to src/libmongoc/src/mongoc/mongoc-rand-cng.c diff --git a/src/mongoc/mongoc-rand-common-crypto.c b/src/libmongoc/src/mongoc/mongoc-rand-common-crypto.c similarity index 100% rename from src/mongoc/mongoc-rand-common-crypto.c rename to src/libmongoc/src/mongoc/mongoc-rand-common-crypto.c diff --git a/src/mongoc/mongoc-rand-openssl.c b/src/libmongoc/src/mongoc/mongoc-rand-openssl.c similarity index 100% rename from src/mongoc/mongoc-rand-openssl.c rename to src/libmongoc/src/mongoc/mongoc-rand-openssl.c diff --git a/src/mongoc/mongoc-rand-private.h b/src/libmongoc/src/mongoc/mongoc-rand-private.h similarity index 100% rename from src/mongoc/mongoc-rand-private.h rename to src/libmongoc/src/mongoc/mongoc-rand-private.h diff --git a/src/mongoc/mongoc-rand.h b/src/libmongoc/src/mongoc/mongoc-rand.h similarity index 100% rename from src/mongoc/mongoc-rand.h rename to src/libmongoc/src/mongoc/mongoc-rand.h diff --git a/src/mongoc/mongoc-read-concern-private.h b/src/libmongoc/src/mongoc/mongoc-read-concern-private.h similarity index 100% rename from src/mongoc/mongoc-read-concern-private.h rename to src/libmongoc/src/mongoc/mongoc-read-concern-private.h diff --git a/src/mongoc/mongoc-read-concern.c b/src/libmongoc/src/mongoc/mongoc-read-concern.c similarity index 100% rename from src/mongoc/mongoc-read-concern.c rename to src/libmongoc/src/mongoc/mongoc-read-concern.c diff --git a/src/mongoc/mongoc-read-concern.h b/src/libmongoc/src/mongoc/mongoc-read-concern.h similarity index 100% rename from src/mongoc/mongoc-read-concern.h rename to src/libmongoc/src/mongoc/mongoc-read-concern.h diff --git a/src/mongoc/mongoc-read-prefs-private.h b/src/libmongoc/src/mongoc/mongoc-read-prefs-private.h similarity index 100% rename from src/mongoc/mongoc-read-prefs-private.h rename to src/libmongoc/src/mongoc/mongoc-read-prefs-private.h diff --git a/src/mongoc/mongoc-read-prefs.c b/src/libmongoc/src/mongoc/mongoc-read-prefs.c similarity index 100% rename from src/mongoc/mongoc-read-prefs.c rename to src/libmongoc/src/mongoc/mongoc-read-prefs.c diff --git a/src/mongoc/mongoc-read-prefs.h b/src/libmongoc/src/mongoc/mongoc-read-prefs.h similarity index 100% rename from src/mongoc/mongoc-read-prefs.h rename to src/libmongoc/src/mongoc/mongoc-read-prefs.h diff --git a/src/mongoc/mongoc-rpc-private.h b/src/libmongoc/src/mongoc/mongoc-rpc-private.h similarity index 100% rename from src/mongoc/mongoc-rpc-private.h rename to src/libmongoc/src/mongoc/mongoc-rpc-private.h diff --git a/src/mongoc/mongoc-rpc.c b/src/libmongoc/src/mongoc/mongoc-rpc.c similarity index 100% rename from src/mongoc/mongoc-rpc.c rename to src/libmongoc/src/mongoc/mongoc-rpc.c diff --git a/src/mongoc/mongoc-sasl-private.h b/src/libmongoc/src/mongoc/mongoc-sasl-private.h similarity index 100% rename from src/mongoc/mongoc-sasl-private.h rename to src/libmongoc/src/mongoc/mongoc-sasl-private.h diff --git a/src/mongoc/mongoc-sasl.c b/src/libmongoc/src/mongoc/mongoc-sasl.c similarity index 100% rename from src/mongoc/mongoc-sasl.c rename to src/libmongoc/src/mongoc/mongoc-sasl.c diff --git a/src/mongoc/mongoc-scram-private.h b/src/libmongoc/src/mongoc/mongoc-scram-private.h similarity index 100% rename from src/mongoc/mongoc-scram-private.h rename to src/libmongoc/src/mongoc/mongoc-scram-private.h diff --git a/src/mongoc/mongoc-scram.c b/src/libmongoc/src/mongoc/mongoc-scram.c similarity index 100% rename from src/mongoc/mongoc-scram.c rename to src/libmongoc/src/mongoc/mongoc-scram.c diff --git a/src/mongoc/mongoc-secure-channel-private.h b/src/libmongoc/src/mongoc/mongoc-secure-channel-private.h similarity index 100% rename from src/mongoc/mongoc-secure-channel-private.h rename to src/libmongoc/src/mongoc/mongoc-secure-channel-private.h diff --git a/src/mongoc/mongoc-secure-channel.c b/src/libmongoc/src/mongoc/mongoc-secure-channel.c similarity index 100% rename from src/mongoc/mongoc-secure-channel.c rename to src/libmongoc/src/mongoc/mongoc-secure-channel.c diff --git a/src/mongoc/mongoc-secure-transport-private.h b/src/libmongoc/src/mongoc/mongoc-secure-transport-private.h similarity index 100% rename from src/mongoc/mongoc-secure-transport-private.h rename to src/libmongoc/src/mongoc/mongoc-secure-transport-private.h diff --git a/src/mongoc/mongoc-secure-transport.c b/src/libmongoc/src/mongoc/mongoc-secure-transport.c similarity index 100% rename from src/mongoc/mongoc-secure-transport.c rename to src/libmongoc/src/mongoc/mongoc-secure-transport.c diff --git a/src/mongoc/mongoc-server-description-private.h b/src/libmongoc/src/mongoc/mongoc-server-description-private.h similarity index 100% rename from src/mongoc/mongoc-server-description-private.h rename to src/libmongoc/src/mongoc/mongoc-server-description-private.h diff --git a/src/mongoc/mongoc-server-description.c b/src/libmongoc/src/mongoc/mongoc-server-description.c similarity index 100% rename from src/mongoc/mongoc-server-description.c rename to src/libmongoc/src/mongoc/mongoc-server-description.c diff --git a/src/mongoc/mongoc-server-description.h b/src/libmongoc/src/mongoc/mongoc-server-description.h similarity index 100% rename from src/mongoc/mongoc-server-description.h rename to src/libmongoc/src/mongoc/mongoc-server-description.h diff --git a/src/mongoc/mongoc-server-stream-private.h b/src/libmongoc/src/mongoc/mongoc-server-stream-private.h similarity index 100% rename from src/mongoc/mongoc-server-stream-private.h rename to src/libmongoc/src/mongoc/mongoc-server-stream-private.h diff --git a/src/mongoc/mongoc-server-stream.c b/src/libmongoc/src/mongoc/mongoc-server-stream.c similarity index 100% rename from src/mongoc/mongoc-server-stream.c rename to src/libmongoc/src/mongoc/mongoc-server-stream.c diff --git a/src/mongoc/mongoc-set-private.h b/src/libmongoc/src/mongoc/mongoc-set-private.h similarity index 100% rename from src/mongoc/mongoc-set-private.h rename to src/libmongoc/src/mongoc/mongoc-set-private.h diff --git a/src/mongoc/mongoc-set.c b/src/libmongoc/src/mongoc/mongoc-set.c similarity index 100% rename from src/mongoc/mongoc-set.c rename to src/libmongoc/src/mongoc/mongoc-set.c diff --git a/src/mongoc/mongoc-socket-private.h b/src/libmongoc/src/mongoc/mongoc-socket-private.h similarity index 100% rename from src/mongoc/mongoc-socket-private.h rename to src/libmongoc/src/mongoc/mongoc-socket-private.h diff --git a/src/mongoc/mongoc-socket.c b/src/libmongoc/src/mongoc/mongoc-socket.c similarity index 100% rename from src/mongoc/mongoc-socket.c rename to src/libmongoc/src/mongoc/mongoc-socket.c diff --git a/src/mongoc/mongoc-socket.h b/src/libmongoc/src/mongoc/mongoc-socket.h similarity index 100% rename from src/mongoc/mongoc-socket.h rename to src/libmongoc/src/mongoc/mongoc-socket.h diff --git a/src/mongoc/mongoc-ssl-private.h b/src/libmongoc/src/mongoc/mongoc-ssl-private.h similarity index 100% rename from src/mongoc/mongoc-ssl-private.h rename to src/libmongoc/src/mongoc/mongoc-ssl-private.h diff --git a/src/mongoc/mongoc-ssl.c b/src/libmongoc/src/mongoc/mongoc-ssl.c similarity index 100% rename from src/mongoc/mongoc-ssl.c rename to src/libmongoc/src/mongoc/mongoc-ssl.c diff --git a/src/mongoc/mongoc-ssl.h b/src/libmongoc/src/mongoc/mongoc-ssl.h similarity index 100% rename from src/mongoc/mongoc-ssl.h rename to src/libmongoc/src/mongoc/mongoc-ssl.h diff --git a/src/mongoc/mongoc-sspi-private.h b/src/libmongoc/src/mongoc/mongoc-sspi-private.h similarity index 100% rename from src/mongoc/mongoc-sspi-private.h rename to src/libmongoc/src/mongoc/mongoc-sspi-private.h diff --git a/src/mongoc/mongoc-sspi.c b/src/libmongoc/src/mongoc/mongoc-sspi.c similarity index 100% rename from src/mongoc/mongoc-sspi.c rename to src/libmongoc/src/mongoc/mongoc-sspi.c diff --git a/src/mongoc/mongoc-stream-buffered.c b/src/libmongoc/src/mongoc/mongoc-stream-buffered.c similarity index 100% rename from src/mongoc/mongoc-stream-buffered.c rename to src/libmongoc/src/mongoc/mongoc-stream-buffered.c diff --git a/src/mongoc/mongoc-stream-buffered.h b/src/libmongoc/src/mongoc/mongoc-stream-buffered.h similarity index 100% rename from src/mongoc/mongoc-stream-buffered.h rename to src/libmongoc/src/mongoc/mongoc-stream-buffered.h diff --git a/src/mongoc/mongoc-stream-file.c b/src/libmongoc/src/mongoc/mongoc-stream-file.c similarity index 100% rename from src/mongoc/mongoc-stream-file.c rename to src/libmongoc/src/mongoc/mongoc-stream-file.c diff --git a/src/mongoc/mongoc-stream-file.h b/src/libmongoc/src/mongoc/mongoc-stream-file.h similarity index 100% rename from src/mongoc/mongoc-stream-file.h rename to src/libmongoc/src/mongoc/mongoc-stream-file.h diff --git a/src/mongoc/mongoc-stream-gridfs.c b/src/libmongoc/src/mongoc/mongoc-stream-gridfs.c similarity index 100% rename from src/mongoc/mongoc-stream-gridfs.c rename to src/libmongoc/src/mongoc/mongoc-stream-gridfs.c diff --git a/src/mongoc/mongoc-stream-gridfs.h b/src/libmongoc/src/mongoc/mongoc-stream-gridfs.h similarity index 100% rename from src/mongoc/mongoc-stream-gridfs.h rename to src/libmongoc/src/mongoc/mongoc-stream-gridfs.h diff --git a/src/mongoc/mongoc-stream-private.h b/src/libmongoc/src/mongoc/mongoc-stream-private.h similarity index 100% rename from src/mongoc/mongoc-stream-private.h rename to src/libmongoc/src/mongoc/mongoc-stream-private.h diff --git a/src/mongoc/mongoc-stream-socket.c b/src/libmongoc/src/mongoc/mongoc-stream-socket.c similarity index 100% rename from src/mongoc/mongoc-stream-socket.c rename to src/libmongoc/src/mongoc/mongoc-stream-socket.c diff --git a/src/mongoc/mongoc-stream-socket.h b/src/libmongoc/src/mongoc/mongoc-stream-socket.h similarity index 100% rename from src/mongoc/mongoc-stream-socket.h rename to src/libmongoc/src/mongoc/mongoc-stream-socket.h diff --git a/src/mongoc/mongoc-stream-tls-libressl-private.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-libressl-private.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-libressl-private.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-libressl-private.h diff --git a/src/mongoc/mongoc-stream-tls-libressl.c b/src/libmongoc/src/mongoc/mongoc-stream-tls-libressl.c similarity index 100% rename from src/mongoc/mongoc-stream-tls-libressl.c rename to src/libmongoc/src/mongoc/mongoc-stream-tls-libressl.c diff --git a/src/mongoc/mongoc-stream-tls-libressl.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-libressl.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-libressl.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-libressl.h diff --git a/src/mongoc/mongoc-stream-tls-openssl-bio-private.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-openssl-bio-private.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-openssl-bio-private.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-openssl-bio-private.h diff --git a/src/mongoc/mongoc-stream-tls-openssl-bio.c b/src/libmongoc/src/mongoc/mongoc-stream-tls-openssl-bio.c similarity index 100% rename from src/mongoc/mongoc-stream-tls-openssl-bio.c rename to src/libmongoc/src/mongoc/mongoc-stream-tls-openssl-bio.c diff --git a/src/mongoc/mongoc-stream-tls-openssl-private.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-openssl-private.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-openssl-private.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-openssl-private.h diff --git a/src/mongoc/mongoc-stream-tls-openssl.c b/src/libmongoc/src/mongoc/mongoc-stream-tls-openssl.c similarity index 100% rename from src/mongoc/mongoc-stream-tls-openssl.c rename to src/libmongoc/src/mongoc/mongoc-stream-tls-openssl.c diff --git a/src/mongoc/mongoc-stream-tls-openssl.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-openssl.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-openssl.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-openssl.h diff --git a/src/mongoc/mongoc-stream-tls-private.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-private.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-private.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-private.h diff --git a/src/mongoc/mongoc-stream-tls-secure-channel-private.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-secure-channel-private.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-secure-channel-private.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-secure-channel-private.h diff --git a/src/mongoc/mongoc-stream-tls-secure-channel.c b/src/libmongoc/src/mongoc/mongoc-stream-tls-secure-channel.c similarity index 100% rename from src/mongoc/mongoc-stream-tls-secure-channel.c rename to src/libmongoc/src/mongoc/mongoc-stream-tls-secure-channel.c diff --git a/src/mongoc/mongoc-stream-tls-secure-channel.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-secure-channel.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-secure-channel.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-secure-channel.h diff --git a/src/mongoc/mongoc-stream-tls-secure-transport-private.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport-private.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-secure-transport-private.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport-private.h diff --git a/src/mongoc/mongoc-stream-tls-secure-transport.c b/src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c similarity index 100% rename from src/mongoc/mongoc-stream-tls-secure-transport.c rename to src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c diff --git a/src/mongoc/mongoc-stream-tls-secure-transport.h b/src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.h similarity index 100% rename from src/mongoc/mongoc-stream-tls-secure-transport.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.h diff --git a/src/mongoc/mongoc-stream-tls.c b/src/libmongoc/src/mongoc/mongoc-stream-tls.c similarity index 100% rename from src/mongoc/mongoc-stream-tls.c rename to src/libmongoc/src/mongoc/mongoc-stream-tls.c diff --git a/src/mongoc/mongoc-stream-tls.h b/src/libmongoc/src/mongoc/mongoc-stream-tls.h similarity index 100% rename from src/mongoc/mongoc-stream-tls.h rename to src/libmongoc/src/mongoc/mongoc-stream-tls.h diff --git a/src/mongoc/mongoc-stream.c b/src/libmongoc/src/mongoc/mongoc-stream.c similarity index 100% rename from src/mongoc/mongoc-stream.c rename to src/libmongoc/src/mongoc/mongoc-stream.c diff --git a/src/mongoc/mongoc-stream.h b/src/libmongoc/src/mongoc/mongoc-stream.h similarity index 100% rename from src/mongoc/mongoc-stream.h rename to src/libmongoc/src/mongoc/mongoc-stream.h diff --git a/src/mongoc/mongoc-thread-private.h b/src/libmongoc/src/mongoc/mongoc-thread-private.h similarity index 100% rename from src/mongoc/mongoc-thread-private.h rename to src/libmongoc/src/mongoc/mongoc-thread-private.h diff --git a/src/mongoc/mongoc-topology-description-apm-private.h b/src/libmongoc/src/mongoc/mongoc-topology-description-apm-private.h similarity index 100% rename from src/mongoc/mongoc-topology-description-apm-private.h rename to src/libmongoc/src/mongoc/mongoc-topology-description-apm-private.h diff --git a/src/mongoc/mongoc-topology-description-apm.c b/src/libmongoc/src/mongoc/mongoc-topology-description-apm.c similarity index 100% rename from src/mongoc/mongoc-topology-description-apm.c rename to src/libmongoc/src/mongoc/mongoc-topology-description-apm.c diff --git a/src/mongoc/mongoc-topology-description-private.h b/src/libmongoc/src/mongoc/mongoc-topology-description-private.h similarity index 100% rename from src/mongoc/mongoc-topology-description-private.h rename to src/libmongoc/src/mongoc/mongoc-topology-description-private.h diff --git a/src/mongoc/mongoc-topology-description.c b/src/libmongoc/src/mongoc/mongoc-topology-description.c similarity index 100% rename from src/mongoc/mongoc-topology-description.c rename to src/libmongoc/src/mongoc/mongoc-topology-description.c diff --git a/src/mongoc/mongoc-topology-description.h b/src/libmongoc/src/mongoc/mongoc-topology-description.h similarity index 100% rename from src/mongoc/mongoc-topology-description.h rename to src/libmongoc/src/mongoc/mongoc-topology-description.h diff --git a/src/mongoc/mongoc-topology-private.h b/src/libmongoc/src/mongoc/mongoc-topology-private.h similarity index 100% rename from src/mongoc/mongoc-topology-private.h rename to src/libmongoc/src/mongoc/mongoc-topology-private.h diff --git a/src/mongoc/mongoc-topology-scanner-private.h b/src/libmongoc/src/mongoc/mongoc-topology-scanner-private.h similarity index 100% rename from src/mongoc/mongoc-topology-scanner-private.h rename to src/libmongoc/src/mongoc/mongoc-topology-scanner-private.h diff --git a/src/mongoc/mongoc-topology-scanner.c b/src/libmongoc/src/mongoc/mongoc-topology-scanner.c similarity index 100% rename from src/mongoc/mongoc-topology-scanner.c rename to src/libmongoc/src/mongoc/mongoc-topology-scanner.c diff --git a/src/mongoc/mongoc-topology.c b/src/libmongoc/src/mongoc/mongoc-topology.c similarity index 100% rename from src/mongoc/mongoc-topology.c rename to src/libmongoc/src/mongoc/mongoc-topology.c diff --git a/src/mongoc/mongoc-trace-private.h b/src/libmongoc/src/mongoc/mongoc-trace-private.h similarity index 100% rename from src/mongoc/mongoc-trace-private.h rename to src/libmongoc/src/mongoc/mongoc-trace-private.h diff --git a/src/mongoc/mongoc-uri-private.h b/src/libmongoc/src/mongoc/mongoc-uri-private.h similarity index 100% rename from src/mongoc/mongoc-uri-private.h rename to src/libmongoc/src/mongoc/mongoc-uri-private.h diff --git a/src/mongoc/mongoc-uri.c b/src/libmongoc/src/mongoc/mongoc-uri.c similarity index 100% rename from src/mongoc/mongoc-uri.c rename to src/libmongoc/src/mongoc/mongoc-uri.c diff --git a/src/mongoc/mongoc-uri.h b/src/libmongoc/src/mongoc/mongoc-uri.h similarity index 100% rename from src/mongoc/mongoc-uri.h rename to src/libmongoc/src/mongoc/mongoc-uri.h diff --git a/src/mongoc/mongoc-util-private.h b/src/libmongoc/src/mongoc/mongoc-util-private.h similarity index 100% rename from src/mongoc/mongoc-util-private.h rename to src/libmongoc/src/mongoc/mongoc-util-private.h diff --git a/src/mongoc/mongoc-util.c b/src/libmongoc/src/mongoc/mongoc-util.c similarity index 100% rename from src/mongoc/mongoc-util.c rename to src/libmongoc/src/mongoc/mongoc-util.c diff --git a/src/mongoc/mongoc-version-functions.c b/src/libmongoc/src/mongoc/mongoc-version-functions.c similarity index 100% rename from src/mongoc/mongoc-version-functions.c rename to src/libmongoc/src/mongoc/mongoc-version-functions.c diff --git a/src/mongoc/mongoc-version-functions.h b/src/libmongoc/src/mongoc/mongoc-version-functions.h similarity index 100% rename from src/mongoc/mongoc-version-functions.h rename to src/libmongoc/src/mongoc/mongoc-version-functions.h diff --git a/src/mongoc/mongoc-version.h.in b/src/libmongoc/src/mongoc/mongoc-version.h.in similarity index 100% rename from src/mongoc/mongoc-version.h.in rename to src/libmongoc/src/mongoc/mongoc-version.h.in diff --git a/src/mongoc/mongoc-write-command-legacy-private.h b/src/libmongoc/src/mongoc/mongoc-write-command-legacy-private.h similarity index 100% rename from src/mongoc/mongoc-write-command-legacy-private.h rename to src/libmongoc/src/mongoc/mongoc-write-command-legacy-private.h diff --git a/src/mongoc/mongoc-write-command-legacy.c b/src/libmongoc/src/mongoc/mongoc-write-command-legacy.c similarity index 100% rename from src/mongoc/mongoc-write-command-legacy.c rename to src/libmongoc/src/mongoc/mongoc-write-command-legacy.c diff --git a/src/mongoc/mongoc-write-command-private.h b/src/libmongoc/src/mongoc/mongoc-write-command-private.h similarity index 100% rename from src/mongoc/mongoc-write-command-private.h rename to src/libmongoc/src/mongoc/mongoc-write-command-private.h diff --git a/src/mongoc/mongoc-write-command.c b/src/libmongoc/src/mongoc/mongoc-write-command.c similarity index 100% rename from src/mongoc/mongoc-write-command.c rename to src/libmongoc/src/mongoc/mongoc-write-command.c diff --git a/src/mongoc/mongoc-write-concern-private.h b/src/libmongoc/src/mongoc/mongoc-write-concern-private.h similarity index 100% rename from src/mongoc/mongoc-write-concern-private.h rename to src/libmongoc/src/mongoc/mongoc-write-concern-private.h diff --git a/src/mongoc/mongoc-write-concern.c b/src/libmongoc/src/mongoc/mongoc-write-concern.c similarity index 100% rename from src/mongoc/mongoc-write-concern.c rename to src/libmongoc/src/mongoc/mongoc-write-concern.c diff --git a/src/mongoc/mongoc-write-concern.h b/src/libmongoc/src/mongoc/mongoc-write-concern.h similarity index 100% rename from src/mongoc/mongoc-write-concern.h rename to src/libmongoc/src/mongoc/mongoc-write-concern.h diff --git a/src/mongoc/mongoc.h b/src/libmongoc/src/mongoc/mongoc.h similarity index 100% rename from src/mongoc/mongoc.h rename to src/libmongoc/src/mongoc/mongoc.h diff --git a/src/mongoc/op-compressed.def b/src/libmongoc/src/mongoc/op-compressed.def similarity index 100% rename from src/mongoc/op-compressed.def rename to src/libmongoc/src/mongoc/op-compressed.def diff --git a/src/mongoc/op-delete.def b/src/libmongoc/src/mongoc/op-delete.def similarity index 100% rename from src/mongoc/op-delete.def rename to src/libmongoc/src/mongoc/op-delete.def diff --git a/src/mongoc/op-get-more.def b/src/libmongoc/src/mongoc/op-get-more.def similarity index 100% rename from src/mongoc/op-get-more.def rename to src/libmongoc/src/mongoc/op-get-more.def diff --git a/src/mongoc/op-header.def b/src/libmongoc/src/mongoc/op-header.def similarity index 100% rename from src/mongoc/op-header.def rename to src/libmongoc/src/mongoc/op-header.def diff --git a/src/mongoc/op-insert.def b/src/libmongoc/src/mongoc/op-insert.def similarity index 100% rename from src/mongoc/op-insert.def rename to src/libmongoc/src/mongoc/op-insert.def diff --git a/src/mongoc/op-kill-cursors.def b/src/libmongoc/src/mongoc/op-kill-cursors.def similarity index 100% rename from src/mongoc/op-kill-cursors.def rename to src/libmongoc/src/mongoc/op-kill-cursors.def diff --git a/src/mongoc/op-msg.def b/src/libmongoc/src/mongoc/op-msg.def similarity index 100% rename from src/mongoc/op-msg.def rename to src/libmongoc/src/mongoc/op-msg.def diff --git a/src/mongoc/op-query.def b/src/libmongoc/src/mongoc/op-query.def similarity index 100% rename from src/mongoc/op-query.def rename to src/libmongoc/src/mongoc/op-query.def diff --git a/src/mongoc/op-reply-header.def b/src/libmongoc/src/mongoc/op-reply-header.def similarity index 100% rename from src/mongoc/op-reply-header.def rename to src/libmongoc/src/mongoc/op-reply-header.def diff --git a/src/mongoc/op-reply.def b/src/libmongoc/src/mongoc/op-reply.def similarity index 100% rename from src/mongoc/op-reply.def rename to src/libmongoc/src/mongoc/op-reply.def diff --git a/src/mongoc/op-update.def b/src/libmongoc/src/mongoc/op-update.def similarity index 100% rename from src/mongoc/op-update.def rename to src/libmongoc/src/mongoc/op-update.def diff --git a/src/mongoc/utlist.h b/src/libmongoc/src/mongoc/utlist.h similarity index 100% rename from src/mongoc/utlist.h rename to src/libmongoc/src/mongoc/utlist.h diff --git a/tests/.gitignore b/src/libmongoc/tests/.gitignore similarity index 100% rename from tests/.gitignore rename to src/libmongoc/tests/.gitignore diff --git a/src/libmongoc/tests/CMakeLists.txt b/src/libmongoc/tests/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..bf2080d370a6f8fe365a68f3e6a12b5f5aa71f89 --- /dev/null +++ b/src/libmongoc/tests/CMakeLists.txt @@ -0,0 +1,45 @@ +file (GLOB_RECURSE src_libmongoc_tests_DIST_cs + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.c +) +file (GLOB_RECURSE src_libmongoc_tests_DIST_hs + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.h +) +file (GLOB_RECURSE src_libmongoc_tests_DIST_zeros + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + *.0 +) +file (GLOB_RECURSE src_libmongoc_tests_DIST_pems + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.pem +) +file (GLOB_RECURSE src_libmongoc_tests_DIST_dats + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.dat +) +file (GLOB_RECURSE src_libmongoc_tests_DIST_txts + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.txt +) +file (GLOB_RECURSE src_libmongoc_tests_DIST_jsons + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} + *.json +) + +set_dist_list (src_libmongoc_tests_DIST + CMakeLists.txt + ${src_libmongoc_tests_DIST_cs} + ${src_libmongoc_tests_DIST_hs} + ${src_libmongoc_tests_DIST_zeros} + ${src_libmongoc_tests_DIST_pems} + ${src_libmongoc_tests_DIST_dats} + ${src_libmongoc_tests_DIST_txts} + ${src_libmongoc_tests_DIST_jsons} +) diff --git a/tests/TestSuite.c b/src/libmongoc/tests/TestSuite.c similarity index 100% rename from tests/TestSuite.c rename to src/libmongoc/tests/TestSuite.c diff --git a/tests/TestSuite.h b/src/libmongoc/tests/TestSuite.h similarity index 99% rename from tests/TestSuite.h rename to src/libmongoc/tests/TestSuite.h index a04ce447e848d2b139a37d2772f7c74dbba90975..44b439fe88d21ac9582d51d2d63e9d361d83539e 100644 --- a/tests/TestSuite.h +++ b/src/libmongoc/tests/TestSuite.h @@ -30,12 +30,12 @@ extern "C" { #endif #ifndef OS_RELEASE_FILE_DIR -#define OS_RELEASE_FILE_DIR "tests/release_files" +#define OS_RELEASE_FILE_DIR "src/libmongoc/tests/release_files" #endif #ifndef BINARY_DIR -#define BINARY_DIR "tests/binary" +#define BINARY_DIR "src/libmongoc/tests/binary" #endif #ifndef BSON_BINARY_DIR @@ -43,7 +43,7 @@ extern "C" { #endif #ifndef JSON_DIR -#define JSON_DIR "tests/json" +#define JSON_DIR "src/libmongoc/tests/json" #endif #ifndef BSON_JSON_DIR @@ -51,7 +51,7 @@ extern "C" { #endif #ifndef CERT_TEST_DIR -#define CERT_TEST_DIR "tests/x509gen" +#define CERT_TEST_DIR "src/libmongoc/tests/x509gen" #endif diff --git a/tests/binary/delete1.dat b/src/libmongoc/tests/binary/delete1.dat similarity index 100% rename from tests/binary/delete1.dat rename to src/libmongoc/tests/binary/delete1.dat diff --git a/tests/binary/empty.dat b/src/libmongoc/tests/binary/empty.dat similarity index 100% rename from tests/binary/empty.dat rename to src/libmongoc/tests/binary/empty.dat diff --git a/tests/binary/get_more1.dat b/src/libmongoc/tests/binary/get_more1.dat similarity index 100% rename from tests/binary/get_more1.dat rename to src/libmongoc/tests/binary/get_more1.dat diff --git a/tests/binary/gridfs-large.dat b/src/libmongoc/tests/binary/gridfs-large.dat similarity index 100% rename from tests/binary/gridfs-large.dat rename to src/libmongoc/tests/binary/gridfs-large.dat diff --git a/tests/binary/gridfs.dat b/src/libmongoc/tests/binary/gridfs.dat similarity index 100% rename from tests/binary/gridfs.dat rename to src/libmongoc/tests/binary/gridfs.dat diff --git a/tests/binary/insert1.dat b/src/libmongoc/tests/binary/insert1.dat similarity index 100% rename from tests/binary/insert1.dat rename to src/libmongoc/tests/binary/insert1.dat diff --git a/tests/binary/kill_cursors1.dat b/src/libmongoc/tests/binary/kill_cursors1.dat similarity index 100% rename from tests/binary/kill_cursors1.dat rename to src/libmongoc/tests/binary/kill_cursors1.dat diff --git a/tests/binary/msg1.dat b/src/libmongoc/tests/binary/msg1.dat similarity index 100% rename from tests/binary/msg1.dat rename to src/libmongoc/tests/binary/msg1.dat diff --git a/tests/binary/query1.dat b/src/libmongoc/tests/binary/query1.dat similarity index 100% rename from tests/binary/query1.dat rename to src/libmongoc/tests/binary/query1.dat diff --git a/tests/binary/query2.dat b/src/libmongoc/tests/binary/query2.dat similarity index 100% rename from tests/binary/query2.dat rename to src/libmongoc/tests/binary/query2.dat diff --git a/tests/binary/reply1.dat b/src/libmongoc/tests/binary/reply1.dat similarity index 100% rename from tests/binary/reply1.dat rename to src/libmongoc/tests/binary/reply1.dat diff --git a/tests/binary/reply2.dat b/src/libmongoc/tests/binary/reply2.dat similarity index 100% rename from tests/binary/reply2.dat rename to src/libmongoc/tests/binary/reply2.dat diff --git a/tests/binary/update1.dat b/src/libmongoc/tests/binary/update1.dat similarity index 100% rename from tests/binary/update1.dat rename to src/libmongoc/tests/binary/update1.dat diff --git a/tests/debug-stream.c b/src/libmongoc/tests/debug-stream.c similarity index 100% rename from tests/debug-stream.c rename to src/libmongoc/tests/debug-stream.c diff --git a/tests/json-test-monitoring.c b/src/libmongoc/tests/json-test-monitoring.c similarity index 100% rename from tests/json-test-monitoring.c rename to src/libmongoc/tests/json-test-monitoring.c diff --git a/tests/json-test-monitoring.h b/src/libmongoc/tests/json-test-monitoring.h similarity index 100% rename from tests/json-test-monitoring.h rename to src/libmongoc/tests/json-test-monitoring.h diff --git a/tests/json-test-operations.c b/src/libmongoc/tests/json-test-operations.c similarity index 100% rename from tests/json-test-operations.c rename to src/libmongoc/tests/json-test-operations.c diff --git a/tests/json-test-operations.h b/src/libmongoc/tests/json-test-operations.h similarity index 100% rename from tests/json-test-operations.h rename to src/libmongoc/tests/json-test-operations.h diff --git a/tests/json-test.c b/src/libmongoc/tests/json-test.c similarity index 100% rename from tests/json-test.c rename to src/libmongoc/tests/json-test.c diff --git a/tests/json-test.h b/src/libmongoc/tests/json-test.h similarity index 100% rename from tests/json-test.h rename to src/libmongoc/tests/json-test.h diff --git a/tests/json/auth/connection-string.json b/src/libmongoc/tests/json/auth/connection-string.json similarity index 100% rename from tests/json/auth/connection-string.json rename to src/libmongoc/tests/json/auth/connection-string.json diff --git a/tests/json/command_monitoring/bulkWrite.json b/src/libmongoc/tests/json/command_monitoring/bulkWrite.json similarity index 100% rename from tests/json/command_monitoring/bulkWrite.json rename to src/libmongoc/tests/json/command_monitoring/bulkWrite.json diff --git a/tests/json/command_monitoring/command.json b/src/libmongoc/tests/json/command_monitoring/command.json similarity index 100% rename from tests/json/command_monitoring/command.json rename to src/libmongoc/tests/json/command_monitoring/command.json diff --git a/tests/json/command_monitoring/deleteMany.json b/src/libmongoc/tests/json/command_monitoring/deleteMany.json similarity index 100% rename from tests/json/command_monitoring/deleteMany.json rename to src/libmongoc/tests/json/command_monitoring/deleteMany.json diff --git a/tests/json/command_monitoring/deleteOne.json b/src/libmongoc/tests/json/command_monitoring/deleteOne.json similarity index 100% rename from tests/json/command_monitoring/deleteOne.json rename to src/libmongoc/tests/json/command_monitoring/deleteOne.json diff --git a/tests/json/command_monitoring/find.json b/src/libmongoc/tests/json/command_monitoring/find.json similarity index 100% rename from tests/json/command_monitoring/find.json rename to src/libmongoc/tests/json/command_monitoring/find.json diff --git a/tests/json/command_monitoring/insertMany.json b/src/libmongoc/tests/json/command_monitoring/insertMany.json similarity index 100% rename from tests/json/command_monitoring/insertMany.json rename to src/libmongoc/tests/json/command_monitoring/insertMany.json diff --git a/tests/json/command_monitoring/insertOne.json b/src/libmongoc/tests/json/command_monitoring/insertOne.json similarity index 100% rename from tests/json/command_monitoring/insertOne.json rename to src/libmongoc/tests/json/command_monitoring/insertOne.json diff --git a/tests/json/command_monitoring/unacknowledgedBulkWrite.json b/src/libmongoc/tests/json/command_monitoring/unacknowledgedBulkWrite.json similarity index 100% rename from tests/json/command_monitoring/unacknowledgedBulkWrite.json rename to src/libmongoc/tests/json/command_monitoring/unacknowledgedBulkWrite.json diff --git a/tests/json/command_monitoring/updateMany.json b/src/libmongoc/tests/json/command_monitoring/updateMany.json similarity index 100% rename from tests/json/command_monitoring/updateMany.json rename to src/libmongoc/tests/json/command_monitoring/updateMany.json diff --git a/tests/json/command_monitoring/updateOne.json b/src/libmongoc/tests/json/command_monitoring/updateOne.json similarity index 100% rename from tests/json/command_monitoring/updateOne.json rename to src/libmongoc/tests/json/command_monitoring/updateOne.json diff --git a/tests/json/connection_uri/README.rst b/src/libmongoc/tests/json/connection_uri/README.rst similarity index 100% rename from tests/json/connection_uri/README.rst rename to src/libmongoc/tests/json/connection_uri/README.rst diff --git a/tests/json/connection_uri/additional-nonspec-tests.json b/src/libmongoc/tests/json/connection_uri/additional-nonspec-tests.json similarity index 100% rename from tests/json/connection_uri/additional-nonspec-tests.json rename to src/libmongoc/tests/json/connection_uri/additional-nonspec-tests.json diff --git a/tests/json/connection_uri/invalid-uris.json b/src/libmongoc/tests/json/connection_uri/invalid-uris.json similarity index 100% rename from tests/json/connection_uri/invalid-uris.json rename to src/libmongoc/tests/json/connection_uri/invalid-uris.json diff --git a/tests/json/connection_uri/valid-auth.json b/src/libmongoc/tests/json/connection_uri/valid-auth.json similarity index 100% rename from tests/json/connection_uri/valid-auth.json rename to src/libmongoc/tests/json/connection_uri/valid-auth.json diff --git a/tests/json/connection_uri/valid-db-with-dotted-name.json b/src/libmongoc/tests/json/connection_uri/valid-db-with-dotted-name.json similarity index 100% rename from tests/json/connection_uri/valid-db-with-dotted-name.json rename to src/libmongoc/tests/json/connection_uri/valid-db-with-dotted-name.json diff --git a/tests/json/connection_uri/valid-host_identifiers.json b/src/libmongoc/tests/json/connection_uri/valid-host_identifiers.json similarity index 100% rename from tests/json/connection_uri/valid-host_identifiers.json rename to src/libmongoc/tests/json/connection_uri/valid-host_identifiers.json diff --git a/tests/json/connection_uri/valid-options.json b/src/libmongoc/tests/json/connection_uri/valid-options.json similarity index 100% rename from tests/json/connection_uri/valid-options.json rename to src/libmongoc/tests/json/connection_uri/valid-options.json diff --git a/tests/json/connection_uri/valid-unix_socket-absolute.json b/src/libmongoc/tests/json/connection_uri/valid-unix_socket-absolute.json similarity index 100% rename from tests/json/connection_uri/valid-unix_socket-absolute.json rename to src/libmongoc/tests/json/connection_uri/valid-unix_socket-absolute.json diff --git a/tests/json/connection_uri/valid-unix_socket-relative.json b/src/libmongoc/tests/json/connection_uri/valid-unix_socket-relative.json similarity index 100% rename from tests/json/connection_uri/valid-unix_socket-relative.json rename to src/libmongoc/tests/json/connection_uri/valid-unix_socket-relative.json diff --git a/tests/json/connection_uri/valid-warnings.json b/src/libmongoc/tests/json/connection_uri/valid-warnings.json similarity index 100% rename from tests/json/connection_uri/valid-warnings.json rename to src/libmongoc/tests/json/connection_uri/valid-warnings.json diff --git a/tests/json/initial_dns_auth/dns-auth.json b/src/libmongoc/tests/json/initial_dns_auth/dns-auth.json similarity index 100% rename from tests/json/initial_dns_auth/dns-auth.json rename to src/libmongoc/tests/json/initial_dns_auth/dns-auth.json diff --git a/tests/json/initial_dns_seedlist_discovery/longer-parent-in-return.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/longer-parent-in-return.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/longer-parent-in-return.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/longer-parent-in-return.json diff --git a/tests/json/initial_dns_seedlist_discovery/misformatted-option.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/misformatted-option.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/misformatted-option.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/misformatted-option.json diff --git a/tests/json/initial_dns_seedlist_discovery/no-results.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/no-results.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/no-results.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/no-results.json diff --git a/tests/json/initial_dns_seedlist_discovery/not-enough-parts.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/not-enough-parts.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/not-enough-parts.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/not-enough-parts.json diff --git a/tests/json/initial_dns_seedlist_discovery/one-result-default-port.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/one-result-default-port.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/one-result-default-port.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/one-result-default-port.json diff --git a/tests/json/initial_dns_seedlist_discovery/one-txt-record-multiple-strings.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/one-txt-record-multiple-strings.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/one-txt-record-multiple-strings.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/one-txt-record-multiple-strings.json diff --git a/tests/json/initial_dns_seedlist_discovery/one-txt-record.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/one-txt-record.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/one-txt-record.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/one-txt-record.json diff --git a/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch1.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch1.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/parent-part-mismatch1.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch1.json diff --git a/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch2.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch2.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/parent-part-mismatch2.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch2.json diff --git a/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch3.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch3.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/parent-part-mismatch3.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch3.json diff --git a/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch4.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch4.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/parent-part-mismatch4.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch4.json diff --git a/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch5.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch5.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/parent-part-mismatch5.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/parent-part-mismatch5.json diff --git a/tests/json/initial_dns_seedlist_discovery/returned-parent-too-short.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/returned-parent-too-short.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/returned-parent-too-short.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/returned-parent-too-short.json diff --git a/tests/json/initial_dns_seedlist_discovery/returned-parent-wrong.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/returned-parent-wrong.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/returned-parent-wrong.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/returned-parent-wrong.json diff --git a/tests/json/initial_dns_seedlist_discovery/two-results-default-port.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/two-results-default-port.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/two-results-default-port.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/two-results-default-port.json diff --git a/tests/json/initial_dns_seedlist_discovery/two-results-nonstandard-port.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/two-results-nonstandard-port.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/two-results-nonstandard-port.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/two-results-nonstandard-port.json diff --git a/tests/json/initial_dns_seedlist_discovery/two-txt-records.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/two-txt-records.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/two-txt-records.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/two-txt-records.json diff --git a/tests/json/initial_dns_seedlist_discovery/txt-record-not-allowed-option.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-not-allowed-option.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/txt-record-not-allowed-option.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-not-allowed-option.json diff --git a/tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-ssl-option.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-ssl-option.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-ssl-option.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-ssl-option.json diff --git a/tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-uri-option.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-uri-option.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-uri-option.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-with-overridden-uri-option.json diff --git a/tests/json/initial_dns_seedlist_discovery/txt-record-with-unallowed-option.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-with-unallowed-option.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/txt-record-with-unallowed-option.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/txt-record-with-unallowed-option.json diff --git a/tests/json/initial_dns_seedlist_discovery/uri-with-port.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/uri-with-port.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/uri-with-port.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/uri-with-port.json diff --git a/tests/json/initial_dns_seedlist_discovery/uri-with-two-hosts.json b/src/libmongoc/tests/json/initial_dns_seedlist_discovery/uri-with-two-hosts.json similarity index 100% rename from tests/json/initial_dns_seedlist_discovery/uri-with-two-hosts.json rename to src/libmongoc/tests/json/initial_dns_seedlist_discovery/uri-with-two-hosts.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/DefaultNoMaxStaleness.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/Incompatible.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Incompatible.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/Incompatible.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Incompatible.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/LastUpdateTime.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/Nearest.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Nearest.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/Nearest.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Nearest.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/Nearest2.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Nearest2.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/Nearest2.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Nearest2.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/NoKnownServers.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/NoKnownServers.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/NoKnownServers.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/NoKnownServers.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred_tags.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred_tags.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred_tags.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/PrimaryPreferred_tags.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/Secondary.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Secondary.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/Secondary.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/Secondary.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred_tags.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred_tags.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred_tags.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/SecondaryPreferred_tags.json diff --git a/tests/json/max_staleness/ReplicaSetNoPrimary/ZeroMaxStaleness.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/ZeroMaxStaleness.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetNoPrimary/ZeroMaxStaleness.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetNoPrimary/ZeroMaxStaleness.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/DefaultNoMaxStaleness.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/DefaultNoMaxStaleness.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/DefaultNoMaxStaleness.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/DefaultNoMaxStaleness.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/Incompatible.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Incompatible.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/Incompatible.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Incompatible.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/LastUpdateTime.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/LastUpdateTime.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/LastUpdateTime.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/LastUpdateTime.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat2.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat2.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat2.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/LongHeartbeat2.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessTooSmall.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessTooSmall.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessTooSmall.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessTooSmall.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessWithModePrimary.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessWithModePrimary.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessWithModePrimary.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/MaxStalenessWithModePrimary.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/Nearest.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest2.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest2.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/Nearest2.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest2.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest_tags.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest_tags.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/Nearest_tags.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Nearest_tags.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred_incompatible.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred_incompatible.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred_incompatible.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/PrimaryPreferred_incompatible.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags2.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags2.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags2.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/SecondaryPreferred_tags2.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags2.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags2.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags2.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/Secondary_tags2.json diff --git a/tests/json/max_staleness/ReplicaSetWithPrimary/ZeroMaxStaleness.json b/src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/ZeroMaxStaleness.json similarity index 100% rename from tests/json/max_staleness/ReplicaSetWithPrimary/ZeroMaxStaleness.json rename to src/libmongoc/tests/json/max_staleness/ReplicaSetWithPrimary/ZeroMaxStaleness.json diff --git a/tests/json/max_staleness/Sharded/Incompatible.json b/src/libmongoc/tests/json/max_staleness/Sharded/Incompatible.json similarity index 100% rename from tests/json/max_staleness/Sharded/Incompatible.json rename to src/libmongoc/tests/json/max_staleness/Sharded/Incompatible.json diff --git a/tests/json/max_staleness/Sharded/SmallMaxStaleness.json b/src/libmongoc/tests/json/max_staleness/Sharded/SmallMaxStaleness.json similarity index 100% rename from tests/json/max_staleness/Sharded/SmallMaxStaleness.json rename to src/libmongoc/tests/json/max_staleness/Sharded/SmallMaxStaleness.json diff --git a/tests/json/max_staleness/Single/Incompatible.json b/src/libmongoc/tests/json/max_staleness/Single/Incompatible.json similarity index 100% rename from tests/json/max_staleness/Single/Incompatible.json rename to src/libmongoc/tests/json/max_staleness/Single/Incompatible.json diff --git a/tests/json/max_staleness/Single/SmallMaxStaleness.json b/src/libmongoc/tests/json/max_staleness/Single/SmallMaxStaleness.json similarity index 100% rename from tests/json/max_staleness/Single/SmallMaxStaleness.json rename to src/libmongoc/tests/json/max_staleness/Single/SmallMaxStaleness.json diff --git a/tests/json/max_staleness/Unknown/SmallMaxStaleness.json b/src/libmongoc/tests/json/max_staleness/Unknown/SmallMaxStaleness.json similarity index 100% rename from tests/json/max_staleness/Unknown/SmallMaxStaleness.json rename to src/libmongoc/tests/json/max_staleness/Unknown/SmallMaxStaleness.json diff --git a/tests/json/max_staleness/supplemental/MissingLastWriteDate.json b/src/libmongoc/tests/json/max_staleness/supplemental/MissingLastWriteDate.json similarity index 100% rename from tests/json/max_staleness/supplemental/MissingLastWriteDate.json rename to src/libmongoc/tests/json/max_staleness/supplemental/MissingLastWriteDate.json diff --git a/tests/json/max_staleness/supplemental/MissingLastWriteDate.yml b/src/libmongoc/tests/json/max_staleness/supplemental/MissingLastWriteDate.yml similarity index 100% rename from tests/json/max_staleness/supplemental/MissingLastWriteDate.yml rename to src/libmongoc/tests/json/max_staleness/supplemental/MissingLastWriteDate.yml diff --git a/tests/json/read_write_concern/connection-string/read-concern.json b/src/libmongoc/tests/json/read_write_concern/connection-string/read-concern.json similarity index 100% rename from tests/json/read_write_concern/connection-string/read-concern.json rename to src/libmongoc/tests/json/read_write_concern/connection-string/read-concern.json diff --git a/tests/json/read_write_concern/connection-string/write-concern.json b/src/libmongoc/tests/json/read_write_concern/connection-string/write-concern.json similarity index 100% rename from tests/json/read_write_concern/connection-string/write-concern.json rename to src/libmongoc/tests/json/read_write_concern/connection-string/write-concern.json diff --git a/tests/json/read_write_concern/document/read-concern.json b/src/libmongoc/tests/json/read_write_concern/document/read-concern.json similarity index 100% rename from tests/json/read_write_concern/document/read-concern.json rename to src/libmongoc/tests/json/read_write_concern/document/read-concern.json diff --git a/tests/json/read_write_concern/document/write-concern.json b/src/libmongoc/tests/json/read_write_concern/document/write-concern.json similarity index 100% rename from tests/json/read_write_concern/document/write-concern.json rename to src/libmongoc/tests/json/read_write_concern/document/write-concern.json diff --git a/tests/json/retryable_writes/bulkWrite.json b/src/libmongoc/tests/json/retryable_writes/bulkWrite.json similarity index 100% rename from tests/json/retryable_writes/bulkWrite.json rename to src/libmongoc/tests/json/retryable_writes/bulkWrite.json diff --git a/tests/json/retryable_writes/deleteOne.json b/src/libmongoc/tests/json/retryable_writes/deleteOne.json similarity index 100% rename from tests/json/retryable_writes/deleteOne.json rename to src/libmongoc/tests/json/retryable_writes/deleteOne.json diff --git a/tests/json/retryable_writes/findOneAndDelete.json b/src/libmongoc/tests/json/retryable_writes/findOneAndDelete.json similarity index 100% rename from tests/json/retryable_writes/findOneAndDelete.json rename to src/libmongoc/tests/json/retryable_writes/findOneAndDelete.json diff --git a/tests/json/retryable_writes/findOneAndReplace.json b/src/libmongoc/tests/json/retryable_writes/findOneAndReplace.json similarity index 100% rename from tests/json/retryable_writes/findOneAndReplace.json rename to src/libmongoc/tests/json/retryable_writes/findOneAndReplace.json diff --git a/tests/json/retryable_writes/findOneAndUpdate.json b/src/libmongoc/tests/json/retryable_writes/findOneAndUpdate.json similarity index 100% rename from tests/json/retryable_writes/findOneAndUpdate.json rename to src/libmongoc/tests/json/retryable_writes/findOneAndUpdate.json diff --git a/tests/json/retryable_writes/insertMany.json b/src/libmongoc/tests/json/retryable_writes/insertMany.json similarity index 100% rename from tests/json/retryable_writes/insertMany.json rename to src/libmongoc/tests/json/retryable_writes/insertMany.json diff --git a/tests/json/retryable_writes/insertOne.json b/src/libmongoc/tests/json/retryable_writes/insertOne.json similarity index 100% rename from tests/json/retryable_writes/insertOne.json rename to src/libmongoc/tests/json/retryable_writes/insertOne.json diff --git a/tests/json/retryable_writes/replaceOne.json b/src/libmongoc/tests/json/retryable_writes/replaceOne.json similarity index 100% rename from tests/json/retryable_writes/replaceOne.json rename to src/libmongoc/tests/json/retryable_writes/replaceOne.json diff --git a/tests/json/retryable_writes/updateOne.json b/src/libmongoc/tests/json/retryable_writes/updateOne.json similarity index 100% rename from tests/json/retryable_writes/updateOne.json rename to src/libmongoc/tests/json/retryable_writes/updateOne.json diff --git a/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_no_primary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_no_primary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_no_primary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_no_primary.json diff --git a/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_primary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_primary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_primary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_primary.json diff --git a/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_removal.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_removal.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_removal.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/replica_set_with_removal.json diff --git a/tests/json/server_discovery_and_monitoring/monitoring/required_replica_set.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/required_replica_set.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/monitoring/required_replica_set.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/required_replica_set.json diff --git a/tests/json/server_discovery_and_monitoring/monitoring/standalone.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/standalone.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/monitoring/standalone.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/monitoring/standalone.json diff --git a/tests/json/server_discovery_and_monitoring/rs/compatible.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/compatible.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/compatible.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/compatible.json diff --git a/tests/json/server_discovery_and_monitoring/rs/discover_arbiters.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_arbiters.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/discover_arbiters.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_arbiters.json diff --git a/tests/json/server_discovery_and_monitoring/rs/discover_passives.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_passives.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/discover_passives.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_passives.json diff --git a/tests/json/server_discovery_and_monitoring/rs/discover_primary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_primary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/discover_primary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_primary.json diff --git a/tests/json/server_discovery_and_monitoring/rs/discover_secondary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_secondary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/discover_secondary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discover_secondary.json diff --git a/tests/json/server_discovery_and_monitoring/rs/discovery.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discovery.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/discovery.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/discovery.json diff --git a/tests/json/server_discovery_and_monitoring/rs/equal_electionids.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/equal_electionids.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/equal_electionids.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/equal_electionids.json diff --git a/tests/json/server_discovery_and_monitoring/rs/ghost_discovered.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/ghost_discovered.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/ghost_discovered.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/ghost_discovered.json diff --git a/tests/json/server_discovery_and_monitoring/rs/hosts_differ_from_seeds.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/hosts_differ_from_seeds.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/hosts_differ_from_seeds.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/hosts_differ_from_seeds.json diff --git a/tests/json/server_discovery_and_monitoring/rs/ls_timeout.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/ls_timeout.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/ls_timeout.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/ls_timeout.json diff --git a/tests/json/server_discovery_and_monitoring/rs/member_reconfig.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/member_reconfig.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/member_reconfig.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/member_reconfig.json diff --git a/tests/json/server_discovery_and_monitoring/rs/member_standalone.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/member_standalone.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/member_standalone.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/member_standalone.json diff --git a/tests/json/server_discovery_and_monitoring/rs/new_primary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/new_primary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary.json diff --git a/tests/json/server_discovery_and_monitoring/rs/new_primary_new_electionid.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary_new_electionid.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/new_primary_new_electionid.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary_new_electionid.json diff --git a/tests/json/server_discovery_and_monitoring/rs/new_primary_new_setversion.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary_new_setversion.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/new_primary_new_setversion.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary_new_setversion.json diff --git a/tests/json/server_discovery_and_monitoring/rs/new_primary_wrong_set_name.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary_wrong_set_name.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/new_primary_wrong_set_name.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/new_primary_wrong_set_name.json diff --git a/tests/json/server_discovery_and_monitoring/rs/non_rs_member.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/non_rs_member.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/non_rs_member.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/non_rs_member.json diff --git a/tests/json/server_discovery_and_monitoring/rs/normalize_case.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/normalize_case.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/normalize_case.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/normalize_case.json diff --git a/tests/json/server_discovery_and_monitoring/rs/null_election_id.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/null_election_id.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/null_election_id.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/null_election_id.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_becomes_standalone.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_becomes_standalone.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_becomes_standalone.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_becomes_standalone.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_changes_set_name.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_changes_set_name.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_changes_set_name.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_changes_set_name.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_disconnect.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_disconnect.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_disconnect.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_disconnect.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_disconnect_electionid.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_disconnect_electionid.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_disconnect_electionid.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_disconnect_electionid.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_disconnect_setversion.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_disconnect_setversion.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_disconnect_setversion.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_disconnect_setversion.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_hint_from_secondary_with_mismatched_me.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_hint_from_secondary_with_mismatched_me.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_hint_from_secondary_with_mismatched_me.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_hint_from_secondary_with_mismatched_me.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_mismatched_me.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_mismatched_me.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_mismatched_me.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_mismatched_me.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_reports_new_member.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_reports_new_member.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_reports_new_member.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_reports_new_member.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_to_no_primary_mismatched_me.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_to_no_primary_mismatched_me.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_to_no_primary_mismatched_me.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_to_no_primary_mismatched_me.json diff --git a/tests/json/server_discovery_and_monitoring/rs/primary_wrong_set_name.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_wrong_set_name.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/primary_wrong_set_name.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/primary_wrong_set_name.json diff --git a/tests/json/server_discovery_and_monitoring/rs/response_from_removed.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/response_from_removed.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/response_from_removed.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/response_from_removed.json diff --git a/tests/json/server_discovery_and_monitoring/rs/rsother_discovered.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/rsother_discovered.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/rsother_discovered.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/rsother_discovered.json diff --git a/tests/json/server_discovery_and_monitoring/rs/sec_not_auth.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/sec_not_auth.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/sec_not_auth.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/sec_not_auth.json diff --git a/tests/json/server_discovery_and_monitoring/rs/secondary_mismatched_me.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/secondary_mismatched_me.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/secondary_mismatched_me.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/secondary_mismatched_me.json diff --git a/tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name.json diff --git a/tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name_with_primary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name_with_primary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name_with_primary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/secondary_wrong_set_name_with_primary.json diff --git a/tests/json/server_discovery_and_monitoring/rs/setversion_without_electionid.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/setversion_without_electionid.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/setversion_without_electionid.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/setversion_without_electionid.json diff --git a/tests/json/server_discovery_and_monitoring/rs/stepdown_change_set_name.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/stepdown_change_set_name.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/stepdown_change_set_name.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/stepdown_change_set_name.json diff --git a/tests/json/server_discovery_and_monitoring/rs/too_new.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/too_new.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/too_new.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/too_new.json diff --git a/tests/json/server_discovery_and_monitoring/rs/too_old.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/too_old.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/too_old.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/too_old.json diff --git a/tests/json/server_discovery_and_monitoring/rs/unexpected_mongos.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/unexpected_mongos.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/unexpected_mongos.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/unexpected_mongos.json diff --git a/tests/json/server_discovery_and_monitoring/rs/use_setversion_without_electionid.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/use_setversion_without_electionid.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/use_setversion_without_electionid.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/use_setversion_without_electionid.json diff --git a/tests/json/server_discovery_and_monitoring/rs/wrong_set_name.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/rs/wrong_set_name.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/rs/wrong_set_name.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/rs/wrong_set_name.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/compatible.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/compatible.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/compatible.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/compatible.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/ls_timeout_mongos.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/ls_timeout_mongos.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/ls_timeout_mongos.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/ls_timeout_mongos.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/mongos_disconnect.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/mongos_disconnect.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/mongos_disconnect.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/mongos_disconnect.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/multiple_mongoses.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/multiple_mongoses.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/multiple_mongoses.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/multiple_mongoses.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/non_mongos_removed.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/non_mongos_removed.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/non_mongos_removed.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/non_mongos_removed.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/normalize_uri_case.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/normalize_uri_case.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/normalize_uri_case.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/normalize_uri_case.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/too_new.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/too_new.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/too_new.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/too_new.json diff --git a/tests/json/server_discovery_and_monitoring/sharded/too_old.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/too_old.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/sharded/too_old.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/sharded/too_old.json diff --git a/tests/json/server_discovery_and_monitoring/single/compatible.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/compatible.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/compatible.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/compatible.json diff --git a/tests/json/server_discovery_and_monitoring/single/direct_connection_external_ip.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_external_ip.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/direct_connection_external_ip.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_external_ip.json diff --git a/tests/json/server_discovery_and_monitoring/single/direct_connection_mongos.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_mongos.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/direct_connection_mongos.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_mongos.json diff --git a/tests/json/server_discovery_and_monitoring/single/direct_connection_rsarbiter.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_rsarbiter.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/direct_connection_rsarbiter.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_rsarbiter.json diff --git a/tests/json/server_discovery_and_monitoring/single/direct_connection_rsprimary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_rsprimary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/direct_connection_rsprimary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_rsprimary.json diff --git a/tests/json/server_discovery_and_monitoring/single/direct_connection_rssecondary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_rssecondary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/direct_connection_rssecondary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_rssecondary.json diff --git a/tests/json/server_discovery_and_monitoring/single/direct_connection_slave.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_slave.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/direct_connection_slave.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_slave.json diff --git a/tests/json/server_discovery_and_monitoring/single/direct_connection_standalone.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_standalone.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/direct_connection_standalone.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/direct_connection_standalone.json diff --git a/tests/json/server_discovery_and_monitoring/single/ls_timeout_standalone.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/ls_timeout_standalone.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/ls_timeout_standalone.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/ls_timeout_standalone.json diff --git a/tests/json/server_discovery_and_monitoring/single/not_ok_response.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/not_ok_response.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/not_ok_response.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/not_ok_response.json diff --git a/tests/json/server_discovery_and_monitoring/single/standalone_removed.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/standalone_removed.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/standalone_removed.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/standalone_removed.json diff --git a/tests/json/server_discovery_and_monitoring/single/too_new.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/too_new.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/too_new.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/too_new.json diff --git a/tests/json/server_discovery_and_monitoring/single/too_old.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/too_old.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/too_old.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/too_old.json diff --git a/tests/json/server_discovery_and_monitoring/single/unavailable_seed.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/single/unavailable_seed.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/single/unavailable_seed.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/single/unavailable_seed.json diff --git a/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.json diff --git a/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.yml b/src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.yml similarity index 100% rename from tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.yml rename to src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name.yml diff --git a/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.json diff --git a/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.yml b/src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.yml similarity index 100% rename from tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.yml rename to src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_primary.yml diff --git a/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.json b/src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.json similarity index 100% rename from tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.json rename to src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.json diff --git a/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.yml b/src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.yml similarity index 100% rename from tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.yml rename to src/libmongoc/tests/json/server_discovery_and_monitoring/supplemental/discover_rs_name_from_secondary.yml diff --git a/tests/json/server_selection/rtt/first_value.json b/src/libmongoc/tests/json/server_selection/rtt/first_value.json similarity index 100% rename from tests/json/server_selection/rtt/first_value.json rename to src/libmongoc/tests/json/server_selection/rtt/first_value.json diff --git a/tests/json/server_selection/rtt/first_value_zero.json b/src/libmongoc/tests/json/server_selection/rtt/first_value_zero.json similarity index 100% rename from tests/json/server_selection/rtt/first_value_zero.json rename to src/libmongoc/tests/json/server_selection/rtt/first_value_zero.json diff --git a/tests/json/server_selection/rtt/value_test_1.json b/src/libmongoc/tests/json/server_selection/rtt/value_test_1.json similarity index 100% rename from tests/json/server_selection/rtt/value_test_1.json rename to src/libmongoc/tests/json/server_selection/rtt/value_test_1.json diff --git a/tests/json/server_selection/rtt/value_test_2.json b/src/libmongoc/tests/json/server_selection/rtt/value_test_2.json similarity index 100% rename from tests/json/server_selection/rtt/value_test_2.json rename to src/libmongoc/tests/json/server_selection/rtt/value_test_2.json diff --git a/tests/json/server_selection/rtt/value_test_3.json b/src/libmongoc/tests/json/server_selection/rtt/value_test_3.json similarity index 100% rename from tests/json/server_selection/rtt/value_test_3.json rename to src/libmongoc/tests/json/server_selection/rtt/value_test_3.json diff --git a/tests/json/server_selection/rtt/value_test_4.json b/src/libmongoc/tests/json/server_selection/rtt/value_test_4.json similarity index 100% rename from tests/json/server_selection/rtt/value_test_4.json rename to src/libmongoc/tests/json/server_selection/rtt/value_test_4.json diff --git a/tests/json/server_selection/rtt/value_test_5.json b/src/libmongoc/tests/json/server_selection/rtt/value_test_5.json similarity index 100% rename from tests/json/server_selection/rtt/value_test_5.json rename to src/libmongoc/tests/json/server_selection/rtt/value_test_5.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_multiple.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_multiple.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_multiple.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_multiple.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Nearest_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimary.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimary.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimary.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimary.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimaryNearest.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimaryNearest.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimaryNearest.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PossiblePrimaryNearest.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Primary.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Primary.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Primary.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Primary.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/PrimaryPreferred_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/SecondaryPreferred_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.yml b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.yml similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.yml rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags.yml diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags2.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags2.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags2.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_multi_tags2.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/read/Secondary_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/write/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/write/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetNoPrimary/write/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetNoPrimary/write/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_multiple.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_multiple.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_multiple.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_multiple.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Nearest_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Primary.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Primary.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Primary.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Primary.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/PrimaryPreferred_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_tags.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_tags.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_tags.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/SecondaryPreferred_tags.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary_non_matching.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary_non_matching.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary_non_matching.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/read/Secondary_non_matching.json diff --git a/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/write/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/write/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/ReplicaSetWithPrimary/write/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/ReplicaSetWithPrimary/write/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Sharded/read/Nearest.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/Nearest.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/read/Nearest.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/Nearest.json diff --git a/tests/json/server_selection/server_selection/Sharded/read/Primary.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/Primary.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/read/Primary.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/Primary.json diff --git a/tests/json/server_selection/server_selection/Sharded/read/PrimaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/PrimaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/read/PrimaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/PrimaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Sharded/read/Secondary.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/Secondary.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/read/Secondary.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/Secondary.json diff --git a/tests/json/server_selection/server_selection/Sharded/read/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/read/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/read/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Sharded/write/Nearest.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/Nearest.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/write/Nearest.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/Nearest.json diff --git a/tests/json/server_selection/server_selection/Sharded/write/Primary.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/Primary.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/write/Primary.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/Primary.json diff --git a/tests/json/server_selection/server_selection/Sharded/write/PrimaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/PrimaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/write/PrimaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/PrimaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Sharded/write/Secondary.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/Secondary.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/write/Secondary.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/Secondary.json diff --git a/tests/json/server_selection/server_selection/Sharded/write/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Sharded/write/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Sharded/write/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Single/read/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Single/read/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Single/read/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Single/read/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Single/write/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Single/write/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Single/write/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Single/write/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Unknown/read/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Unknown/read/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Unknown/read/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Unknown/read/SecondaryPreferred.json diff --git a/tests/json/server_selection/server_selection/Unknown/write/SecondaryPreferred.json b/src/libmongoc/tests/json/server_selection/server_selection/Unknown/write/SecondaryPreferred.json similarity index 100% rename from tests/json/server_selection/server_selection/Unknown/write/SecondaryPreferred.json rename to src/libmongoc/tests/json/server_selection/server_selection/Unknown/write/SecondaryPreferred.json diff --git a/tests/mock_server/future-functions.c b/src/libmongoc/tests/mock_server/future-functions.c similarity index 100% rename from tests/mock_server/future-functions.c rename to src/libmongoc/tests/mock_server/future-functions.c diff --git a/tests/mock_server/future-functions.h b/src/libmongoc/tests/mock_server/future-functions.h similarity index 100% rename from tests/mock_server/future-functions.h rename to src/libmongoc/tests/mock_server/future-functions.h diff --git a/tests/mock_server/future-value.c b/src/libmongoc/tests/mock_server/future-value.c similarity index 100% rename from tests/mock_server/future-value.c rename to src/libmongoc/tests/mock_server/future-value.c diff --git a/tests/mock_server/future-value.h b/src/libmongoc/tests/mock_server/future-value.h similarity index 100% rename from tests/mock_server/future-value.h rename to src/libmongoc/tests/mock_server/future-value.h diff --git a/tests/mock_server/future.c b/src/libmongoc/tests/mock_server/future.c similarity index 100% rename from tests/mock_server/future.c rename to src/libmongoc/tests/mock_server/future.c diff --git a/tests/mock_server/future.h b/src/libmongoc/tests/mock_server/future.h similarity index 100% rename from tests/mock_server/future.h rename to src/libmongoc/tests/mock_server/future.h diff --git a/tests/mock_server/mock-rs.c b/src/libmongoc/tests/mock_server/mock-rs.c similarity index 100% rename from tests/mock_server/mock-rs.c rename to src/libmongoc/tests/mock_server/mock-rs.c diff --git a/tests/mock_server/mock-rs.h b/src/libmongoc/tests/mock_server/mock-rs.h similarity index 100% rename from tests/mock_server/mock-rs.h rename to src/libmongoc/tests/mock_server/mock-rs.h diff --git a/tests/mock_server/mock-server.c b/src/libmongoc/tests/mock_server/mock-server.c similarity index 100% rename from tests/mock_server/mock-server.c rename to src/libmongoc/tests/mock_server/mock-server.c diff --git a/tests/mock_server/mock-server.h b/src/libmongoc/tests/mock_server/mock-server.h similarity index 100% rename from tests/mock_server/mock-server.h rename to src/libmongoc/tests/mock_server/mock-server.h diff --git a/tests/mock_server/request.c b/src/libmongoc/tests/mock_server/request.c similarity index 100% rename from tests/mock_server/request.c rename to src/libmongoc/tests/mock_server/request.c diff --git a/tests/mock_server/request.h b/src/libmongoc/tests/mock_server/request.h similarity index 100% rename from tests/mock_server/request.h rename to src/libmongoc/tests/mock_server/request.h diff --git a/tests/mock_server/sync-queue.c b/src/libmongoc/tests/mock_server/sync-queue.c similarity index 100% rename from tests/mock_server/sync-queue.c rename to src/libmongoc/tests/mock_server/sync-queue.c diff --git a/tests/mock_server/sync-queue.h b/src/libmongoc/tests/mock_server/sync-queue.h similarity index 100% rename from tests/mock_server/sync-queue.h rename to src/libmongoc/tests/mock_server/sync-queue.h diff --git a/tests/release_files/empty-file.txt b/src/libmongoc/tests/release_files/empty-file.txt similarity index 100% rename from tests/release_files/empty-file.txt rename to src/libmongoc/tests/release_files/empty-file.txt diff --git a/tests/release_files/example-etc-fedora-release.txt b/src/libmongoc/tests/release_files/example-etc-fedora-release.txt similarity index 100% rename from tests/release_files/example-etc-fedora-release.txt rename to src/libmongoc/tests/release_files/example-etc-fedora-release.txt diff --git a/tests/release_files/example-etc-os-release-ubuntu1604.txt b/src/libmongoc/tests/release_files/example-etc-os-release-ubuntu1604.txt similarity index 100% rename from tests/release_files/example-etc-os-release-ubuntu1604.txt rename to src/libmongoc/tests/release_files/example-etc-os-release-ubuntu1604.txt diff --git a/tests/release_files/example-etc-os-release.txt b/src/libmongoc/tests/release_files/example-etc-os-release.txt similarity index 100% rename from tests/release_files/example-etc-os-release.txt rename to src/libmongoc/tests/release_files/example-etc-os-release.txt diff --git a/tests/release_files/example-etc-xyz-release-no-delimiter.txt b/src/libmongoc/tests/release_files/example-etc-xyz-release-no-delimiter.txt similarity index 100% rename from tests/release_files/example-etc-xyz-release-no-delimiter.txt rename to src/libmongoc/tests/release_files/example-etc-xyz-release-no-delimiter.txt diff --git a/tests/release_files/example-key-value-file.txt b/src/libmongoc/tests/release_files/example-key-value-file.txt similarity index 100% rename from tests/release_files/example-key-value-file.txt rename to src/libmongoc/tests/release_files/example-key-value-file.txt diff --git a/tests/release_files/example-lsb-file-with-super-long-line.txt b/src/libmongoc/tests/release_files/example-lsb-file-with-super-long-line.txt similarity index 100% rename from tests/release_files/example-lsb-file-with-super-long-line.txt rename to src/libmongoc/tests/release_files/example-lsb-file-with-super-long-line.txt diff --git a/tests/release_files/example-lsb-file.txt b/src/libmongoc/tests/release_files/example-lsb-file.txt similarity index 100% rename from tests/release_files/example-lsb-file.txt rename to src/libmongoc/tests/release_files/example-lsb-file.txt diff --git a/tests/ssl-test.c b/src/libmongoc/tests/ssl-test.c similarity index 100% rename from tests/ssl-test.c rename to src/libmongoc/tests/ssl-test.c diff --git a/tests/ssl-test.h b/src/libmongoc/tests/ssl-test.h similarity index 100% rename from tests/ssl-test.h rename to src/libmongoc/tests/ssl-test.h diff --git a/tests/test-conveniences.c b/src/libmongoc/tests/test-conveniences.c similarity index 100% rename from tests/test-conveniences.c rename to src/libmongoc/tests/test-conveniences.c diff --git a/tests/test-conveniences.h b/src/libmongoc/tests/test-conveniences.h similarity index 100% rename from tests/test-conveniences.h rename to src/libmongoc/tests/test-conveniences.h diff --git a/tests/test-happy-eyeballs.c b/src/libmongoc/tests/test-happy-eyeballs.c similarity index 100% rename from tests/test-happy-eyeballs.c rename to src/libmongoc/tests/test-happy-eyeballs.c diff --git a/tests/test-libmongoc.c b/src/libmongoc/tests/test-libmongoc.c similarity index 100% rename from tests/test-libmongoc.c rename to src/libmongoc/tests/test-libmongoc.c diff --git a/tests/test-libmongoc.h b/src/libmongoc/tests/test-libmongoc.h similarity index 100% rename from tests/test-libmongoc.h rename to src/libmongoc/tests/test-libmongoc.h diff --git a/tests/test-mongoc-array.c b/src/libmongoc/tests/test-mongoc-array.c similarity index 100% rename from tests/test-mongoc-array.c rename to src/libmongoc/tests/test-mongoc-array.c diff --git a/tests/test-mongoc-async.c b/src/libmongoc/tests/test-mongoc-async.c similarity index 100% rename from tests/test-mongoc-async.c rename to src/libmongoc/tests/test-mongoc-async.c diff --git a/tests/test-mongoc-buffer.c b/src/libmongoc/tests/test-mongoc-buffer.c similarity index 100% rename from tests/test-mongoc-buffer.c rename to src/libmongoc/tests/test-mongoc-buffer.c diff --git a/tests/test-mongoc-bulk.c b/src/libmongoc/tests/test-mongoc-bulk.c similarity index 100% rename from tests/test-mongoc-bulk.c rename to src/libmongoc/tests/test-mongoc-bulk.c diff --git a/tests/test-mongoc-change-stream.c b/src/libmongoc/tests/test-mongoc-change-stream.c similarity index 100% rename from tests/test-mongoc-change-stream.c rename to src/libmongoc/tests/test-mongoc-change-stream.c diff --git a/tests/test-mongoc-client-pool.c b/src/libmongoc/tests/test-mongoc-client-pool.c similarity index 100% rename from tests/test-mongoc-client-pool.c rename to src/libmongoc/tests/test-mongoc-client-pool.c diff --git a/tests/test-mongoc-client-session.c b/src/libmongoc/tests/test-mongoc-client-session.c similarity index 100% rename from tests/test-mongoc-client-session.c rename to src/libmongoc/tests/test-mongoc-client-session.c diff --git a/tests/test-mongoc-client.c b/src/libmongoc/tests/test-mongoc-client.c similarity index 100% rename from tests/test-mongoc-client.c rename to src/libmongoc/tests/test-mongoc-client.c diff --git a/tests/test-mongoc-cluster.c b/src/libmongoc/tests/test-mongoc-cluster.c similarity index 100% rename from tests/test-mongoc-cluster.c rename to src/libmongoc/tests/test-mongoc-cluster.c diff --git a/tests/test-mongoc-collection-find-with-opts.c b/src/libmongoc/tests/test-mongoc-collection-find-with-opts.c similarity index 100% rename from tests/test-mongoc-collection-find-with-opts.c rename to src/libmongoc/tests/test-mongoc-collection-find-with-opts.c diff --git a/tests/test-mongoc-collection-find.c b/src/libmongoc/tests/test-mongoc-collection-find.c similarity index 100% rename from tests/test-mongoc-collection-find.c rename to src/libmongoc/tests/test-mongoc-collection-find.c diff --git a/tests/test-mongoc-collection.c b/src/libmongoc/tests/test-mongoc-collection.c similarity index 100% rename from tests/test-mongoc-collection.c rename to src/libmongoc/tests/test-mongoc-collection.c diff --git a/tests/test-mongoc-command-monitoring.c b/src/libmongoc/tests/test-mongoc-command-monitoring.c similarity index 100% rename from tests/test-mongoc-command-monitoring.c rename to src/libmongoc/tests/test-mongoc-command-monitoring.c diff --git a/tests/test-mongoc-connection-uri.c b/src/libmongoc/tests/test-mongoc-connection-uri.c similarity index 100% rename from tests/test-mongoc-connection-uri.c rename to src/libmongoc/tests/test-mongoc-connection-uri.c diff --git a/tests/test-mongoc-counters.c b/src/libmongoc/tests/test-mongoc-counters.c similarity index 100% rename from tests/test-mongoc-counters.c rename to src/libmongoc/tests/test-mongoc-counters.c diff --git a/tests/test-mongoc-cursor.c b/src/libmongoc/tests/test-mongoc-cursor.c similarity index 100% rename from tests/test-mongoc-cursor.c rename to src/libmongoc/tests/test-mongoc-cursor.c diff --git a/tests/test-mongoc-cyrus.c b/src/libmongoc/tests/test-mongoc-cyrus.c similarity index 100% rename from tests/test-mongoc-cyrus.c rename to src/libmongoc/tests/test-mongoc-cyrus.c diff --git a/tests/test-mongoc-database.c b/src/libmongoc/tests/test-mongoc-database.c similarity index 100% rename from tests/test-mongoc-database.c rename to src/libmongoc/tests/test-mongoc-database.c diff --git a/tests/test-mongoc-dns.c b/src/libmongoc/tests/test-mongoc-dns.c similarity index 100% rename from tests/test-mongoc-dns.c rename to src/libmongoc/tests/test-mongoc-dns.c diff --git a/tests/test-mongoc-error.c b/src/libmongoc/tests/test-mongoc-error.c similarity index 100% rename from tests/test-mongoc-error.c rename to src/libmongoc/tests/test-mongoc-error.c diff --git a/tests/test-mongoc-exhaust.c b/src/libmongoc/tests/test-mongoc-exhaust.c similarity index 100% rename from tests/test-mongoc-exhaust.c rename to src/libmongoc/tests/test-mongoc-exhaust.c diff --git a/tests/test-mongoc-find-and-modify.c b/src/libmongoc/tests/test-mongoc-find-and-modify.c similarity index 100% rename from tests/test-mongoc-find-and-modify.c rename to src/libmongoc/tests/test-mongoc-find-and-modify.c diff --git a/tests/test-mongoc-gridfs-file-page.c b/src/libmongoc/tests/test-mongoc-gridfs-file-page.c similarity index 100% rename from tests/test-mongoc-gridfs-file-page.c rename to src/libmongoc/tests/test-mongoc-gridfs-file-page.c diff --git a/tests/test-mongoc-gridfs.c b/src/libmongoc/tests/test-mongoc-gridfs.c similarity index 100% rename from tests/test-mongoc-gridfs.c rename to src/libmongoc/tests/test-mongoc-gridfs.c diff --git a/tests/test-mongoc-gssapi.c b/src/libmongoc/tests/test-mongoc-gssapi.c similarity index 100% rename from tests/test-mongoc-gssapi.c rename to src/libmongoc/tests/test-mongoc-gssapi.c diff --git a/tests/test-mongoc-handshake.c b/src/libmongoc/tests/test-mongoc-handshake.c similarity index 100% rename from tests/test-mongoc-handshake.c rename to src/libmongoc/tests/test-mongoc-handshake.c diff --git a/tests/test-mongoc-linux-distro-scanner.c b/src/libmongoc/tests/test-mongoc-linux-distro-scanner.c similarity index 100% rename from tests/test-mongoc-linux-distro-scanner.c rename to src/libmongoc/tests/test-mongoc-linux-distro-scanner.c diff --git a/tests/test-mongoc-list.c b/src/libmongoc/tests/test-mongoc-list.c similarity index 100% rename from tests/test-mongoc-list.c rename to src/libmongoc/tests/test-mongoc-list.c diff --git a/tests/test-mongoc-log.c b/src/libmongoc/tests/test-mongoc-log.c similarity index 100% rename from tests/test-mongoc-log.c rename to src/libmongoc/tests/test-mongoc-log.c diff --git a/tests/test-mongoc-matcher.c b/src/libmongoc/tests/test-mongoc-matcher.c similarity index 100% rename from tests/test-mongoc-matcher.c rename to src/libmongoc/tests/test-mongoc-matcher.c diff --git a/tests/test-mongoc-max-staleness.c b/src/libmongoc/tests/test-mongoc-max-staleness.c similarity index 100% rename from tests/test-mongoc-max-staleness.c rename to src/libmongoc/tests/test-mongoc-max-staleness.c diff --git a/tests/test-mongoc-queue.c b/src/libmongoc/tests/test-mongoc-queue.c similarity index 100% rename from tests/test-mongoc-queue.c rename to src/libmongoc/tests/test-mongoc-queue.c diff --git a/tests/test-mongoc-read-concern.c b/src/libmongoc/tests/test-mongoc-read-concern.c similarity index 100% rename from tests/test-mongoc-read-concern.c rename to src/libmongoc/tests/test-mongoc-read-concern.c diff --git a/tests/test-mongoc-read-prefs.c b/src/libmongoc/tests/test-mongoc-read-prefs.c similarity index 100% rename from tests/test-mongoc-read-prefs.c rename to src/libmongoc/tests/test-mongoc-read-prefs.c diff --git a/tests/test-mongoc-read-write-concern.c b/src/libmongoc/tests/test-mongoc-read-write-concern.c similarity index 100% rename from tests/test-mongoc-read-write-concern.c rename to src/libmongoc/tests/test-mongoc-read-write-concern.c diff --git a/tests/test-mongoc-retryable-writes.c b/src/libmongoc/tests/test-mongoc-retryable-writes.c similarity index 100% rename from tests/test-mongoc-retryable-writes.c rename to src/libmongoc/tests/test-mongoc-retryable-writes.c diff --git a/tests/test-mongoc-rpc.c b/src/libmongoc/tests/test-mongoc-rpc.c similarity index 100% rename from tests/test-mongoc-rpc.c rename to src/libmongoc/tests/test-mongoc-rpc.c diff --git a/tests/test-mongoc-sample-commands.c b/src/libmongoc/tests/test-mongoc-sample-commands.c similarity index 100% rename from tests/test-mongoc-sample-commands.c rename to src/libmongoc/tests/test-mongoc-sample-commands.c diff --git a/tests/test-mongoc-scram.c b/src/libmongoc/tests/test-mongoc-scram.c similarity index 100% rename from tests/test-mongoc-scram.c rename to src/libmongoc/tests/test-mongoc-scram.c diff --git a/tests/test-mongoc-sdam-monitoring.c b/src/libmongoc/tests/test-mongoc-sdam-monitoring.c similarity index 100% rename from tests/test-mongoc-sdam-monitoring.c rename to src/libmongoc/tests/test-mongoc-sdam-monitoring.c diff --git a/tests/test-mongoc-sdam.c b/src/libmongoc/tests/test-mongoc-sdam.c similarity index 100% rename from tests/test-mongoc-sdam.c rename to src/libmongoc/tests/test-mongoc-sdam.c diff --git a/tests/test-mongoc-server-selection-errors.c b/src/libmongoc/tests/test-mongoc-server-selection-errors.c similarity index 100% rename from tests/test-mongoc-server-selection-errors.c rename to src/libmongoc/tests/test-mongoc-server-selection-errors.c diff --git a/tests/test-mongoc-server-selection.c b/src/libmongoc/tests/test-mongoc-server-selection.c similarity index 100% rename from tests/test-mongoc-server-selection.c rename to src/libmongoc/tests/test-mongoc-server-selection.c diff --git a/tests/test-mongoc-set.c b/src/libmongoc/tests/test-mongoc-set.c similarity index 100% rename from tests/test-mongoc-set.c rename to src/libmongoc/tests/test-mongoc-set.c diff --git a/tests/test-mongoc-socket.c b/src/libmongoc/tests/test-mongoc-socket.c similarity index 100% rename from tests/test-mongoc-socket.c rename to src/libmongoc/tests/test-mongoc-socket.c diff --git a/tests/test-mongoc-stream-tls-error.c b/src/libmongoc/tests/test-mongoc-stream-tls-error.c similarity index 100% rename from tests/test-mongoc-stream-tls-error.c rename to src/libmongoc/tests/test-mongoc-stream-tls-error.c diff --git a/tests/test-mongoc-stream-tls.c b/src/libmongoc/tests/test-mongoc-stream-tls.c similarity index 100% rename from tests/test-mongoc-stream-tls.c rename to src/libmongoc/tests/test-mongoc-stream-tls.c diff --git a/tests/test-mongoc-stream.c b/src/libmongoc/tests/test-mongoc-stream.c similarity index 100% rename from tests/test-mongoc-stream.c rename to src/libmongoc/tests/test-mongoc-stream.c diff --git a/tests/test-mongoc-thread.c b/src/libmongoc/tests/test-mongoc-thread.c similarity index 100% rename from tests/test-mongoc-thread.c rename to src/libmongoc/tests/test-mongoc-thread.c diff --git a/tests/test-mongoc-topology-description.c b/src/libmongoc/tests/test-mongoc-topology-description.c similarity index 100% rename from tests/test-mongoc-topology-description.c rename to src/libmongoc/tests/test-mongoc-topology-description.c diff --git a/tests/test-mongoc-topology-reconcile.c b/src/libmongoc/tests/test-mongoc-topology-reconcile.c similarity index 100% rename from tests/test-mongoc-topology-reconcile.c rename to src/libmongoc/tests/test-mongoc-topology-reconcile.c diff --git a/tests/test-mongoc-topology-scanner.c b/src/libmongoc/tests/test-mongoc-topology-scanner.c similarity index 100% rename from tests/test-mongoc-topology-scanner.c rename to src/libmongoc/tests/test-mongoc-topology-scanner.c diff --git a/tests/test-mongoc-topology.c b/src/libmongoc/tests/test-mongoc-topology.c similarity index 100% rename from tests/test-mongoc-topology.c rename to src/libmongoc/tests/test-mongoc-topology.c diff --git a/tests/test-mongoc-uri.c b/src/libmongoc/tests/test-mongoc-uri.c similarity index 100% rename from tests/test-mongoc-uri.c rename to src/libmongoc/tests/test-mongoc-uri.c diff --git a/tests/test-mongoc-usleep.c b/src/libmongoc/tests/test-mongoc-usleep.c similarity index 100% rename from tests/test-mongoc-usleep.c rename to src/libmongoc/tests/test-mongoc-usleep.c diff --git a/tests/test-mongoc-util.c b/src/libmongoc/tests/test-mongoc-util.c similarity index 100% rename from tests/test-mongoc-util.c rename to src/libmongoc/tests/test-mongoc-util.c diff --git a/tests/test-mongoc-version.c b/src/libmongoc/tests/test-mongoc-version.c similarity index 100% rename from tests/test-mongoc-version.c rename to src/libmongoc/tests/test-mongoc-version.c diff --git a/tests/test-mongoc-write-commands.c b/src/libmongoc/tests/test-mongoc-write-commands.c similarity index 100% rename from tests/test-mongoc-write-commands.c rename to src/libmongoc/tests/test-mongoc-write-commands.c diff --git a/tests/test-mongoc-write-concern.c b/src/libmongoc/tests/test-mongoc-write-concern.c similarity index 100% rename from tests/test-mongoc-write-concern.c rename to src/libmongoc/tests/test-mongoc-write-concern.c diff --git a/tests/test-mongoc-x509.c b/src/libmongoc/tests/test-mongoc-x509.c similarity index 100% rename from tests/test-mongoc-x509.c rename to src/libmongoc/tests/test-mongoc-x509.c diff --git a/tests/x509gen/7750279a.0 b/src/libmongoc/tests/x509gen/7750279a.0 similarity index 100% rename from tests/x509gen/7750279a.0 rename to src/libmongoc/tests/x509gen/7750279a.0 diff --git a/tests/x509gen/altname.pem b/src/libmongoc/tests/x509gen/altname.pem similarity index 100% rename from tests/x509gen/altname.pem rename to src/libmongoc/tests/x509gen/altname.pem diff --git a/tests/x509gen/ca.pem b/src/libmongoc/tests/x509gen/ca.pem similarity index 100% rename from tests/x509gen/ca.pem rename to src/libmongoc/tests/x509gen/ca.pem diff --git a/tests/x509gen/client.pem b/src/libmongoc/tests/x509gen/client.pem similarity index 100% rename from tests/x509gen/client.pem rename to src/libmongoc/tests/x509gen/client.pem diff --git a/tests/x509gen/commonName.pem b/src/libmongoc/tests/x509gen/commonName.pem similarity index 100% rename from tests/x509gen/commonName.pem rename to src/libmongoc/tests/x509gen/commonName.pem diff --git a/tests/x509gen/crl.pem b/src/libmongoc/tests/x509gen/crl.pem similarity index 100% rename from tests/x509gen/crl.pem rename to src/libmongoc/tests/x509gen/crl.pem diff --git a/tests/x509gen/expired.pem b/src/libmongoc/tests/x509gen/expired.pem similarity index 100% rename from tests/x509gen/expired.pem rename to src/libmongoc/tests/x509gen/expired.pem diff --git a/tests/x509gen/legacy-ca.crt b/src/libmongoc/tests/x509gen/legacy-ca.crt similarity index 100% rename from tests/x509gen/legacy-ca.crt rename to src/libmongoc/tests/x509gen/legacy-ca.crt diff --git a/tests/x509gen/legacy-x509.pem b/src/libmongoc/tests/x509gen/legacy-x509.pem similarity index 100% rename from tests/x509gen/legacy-x509.pem rename to src/libmongoc/tests/x509gen/legacy-x509.pem diff --git a/tests/x509gen/password_protected.pem b/src/libmongoc/tests/x509gen/password_protected.pem similarity index 100% rename from tests/x509gen/password_protected.pem rename to src/libmongoc/tests/x509gen/password_protected.pem diff --git a/tests/x509gen/server.pem b/src/libmongoc/tests/x509gen/server.pem similarity index 100% rename from tests/x509gen/server.pem rename to src/libmongoc/tests/x509gen/server.pem diff --git a/tests/x509gen/wild.pem b/src/libmongoc/tests/x509gen/wild.pem similarity index 100% rename from tests/x509gen/wild.pem rename to src/libmongoc/tests/x509gen/wild.pem diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt deleted file mode 100644 index 80b4634427e51d76edce223f362bd2f9bc3a32dd..0000000000000000000000000000000000000000 --- a/tests/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ -file (GLOB_RECURSE tests_DIST_cs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.c) -file (GLOB_RECURSE tests_DIST_hs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.h) -file (GLOB_RECURSE tests_DIST_zeros RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.0) -file (GLOB_RECURSE tests_DIST_pems RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.pem) -file (GLOB_RECURSE tests_DIST_dats RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.dat) -file (GLOB_RECURSE tests_DIST_txts RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.txt) -file (GLOB_RECURSE tests_DIST_jsons RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.json) - -set_dist_list (tests_DIST - CMakeLists.txt - ${tests_DIST_cs} - ${tests_DIST_hs} - ${tests_DIST_zeros} - ${tests_DIST_pems} - ${tests_DIST_dats} - ${tests_DIST_txts} - ${tests_DIST_jsons} -)