diff options
author | Henrik Edin <henrik.edin@mongodb.com> | 2018-08-21 16:01:09 -0400 |
---|---|---|
committer | Henrik Edin <henrik.edin@mongodb.com> | 2018-09-20 11:13:32 -0400 |
commit | d0bf695939de0ec62dd95649cc9c992216b85ab9 (patch) | |
tree | e4c3919d802f6f6d930ecf51d840561ab1afad74 | |
parent | dc4fd67df2cbfdd4977007463cce8bbb25ffdd4d (diff) | |
download | mongo-d0bf695939de0ec62dd95649cc9c992216b85ab9.tar.gz |
SERVER-36703 Possibility to link mongoc as darwin framework.
Changed the Embedded SDK builders to build and use mongoc as darwin framework where possible.
-rw-r--r-- | SConstruct | 50 | ||||
-rw-r--r-- | etc/evergreen.yml | 120 | ||||
-rw-r--r-- | src/mongo/embedded/SConscript | 19 | ||||
-rw-r--r-- | src/mongo/embedded/functions_for_test.cpp | 1 | ||||
-rw-r--r-- | src/mongo/embedded/functions_for_test.h | 5 | ||||
-rw-r--r-- | src/mongo/embedded/mongo_embedded_mongoc_client_test.cpp | 2 | ||||
-rw-r--r-- | src/mongo/embedded/mongoc_client.h | 5 | ||||
-rw-r--r-- | src/third_party/scons-2.5.0/scons-local-2.5.0/SCons/Tool/applelink.py | 2 |
8 files changed, 103 insertions, 101 deletions
diff --git a/SConstruct b/SConstruct index bc0da2a39ec..62ab953f16e 100644 --- a/SConstruct +++ b/SConstruct @@ -689,6 +689,14 @@ env_vars.Add('CXXFLAGS', env_vars.Add('ENV', help='Sets the environment for subprocesses') +env_vars.Add('FRAMEWORKPATH', + help='Adds paths to the linker search path for darwin frameworks', + converter=variable_shlex_converter) + +env_vars.Add('FRAMEWORKS', + help='Adds extra darwin frameworks to link against', + converter=variable_shlex_converter) + env_vars.Add('HOST_ARCH', help='Sets the native architecture of the compiler', converter=variable_arch_converter, @@ -3363,33 +3371,58 @@ def doConfigure(myenv): def CheckMongoCMinVersion(context): compile_test_body = textwrap.dedent(""" - #include <mongoc.h> + #include <mongoc/mongoc.h> - #if !MONGOC_CHECK_VERSION(1,10,0) + #if !MONGOC_CHECK_VERSION(1,13,0) #error #endif """) - context.Message("Checking if mongoc version is 1.10.0 or newer...") + context.Message("Checking if mongoc version is 1.13.0 or newer...") result = context.TryCompile(compile_test_body, ".cpp") context.Result(result) return result conf.AddTest('CheckMongoCMinVersion', CheckMongoCMinVersion) + + if env.TargetOSIs('darwin'): + def CheckMongoCFramework(context): + context.Message("Checking for mongoc_get_major_version() in darwin framework mongoc...") + test_body = """ + #include <mongoc/mongoc.h> + + int main() { + mongoc_get_major_version(); + + return EXIT_SUCCESS; + } + """ + + lastFRAMEWORKS = context.env['FRAMEWORKS'] + context.env.Append(FRAMEWORKS=['mongoc']) + result = context.TryLink(textwrap.dedent(test_body), ".c") + context.Result(result) + context.env['FRAMEWORKS'] = lastFRAMEWORKS + return result + + conf.AddTest('CheckMongoCFramework', CheckMongoCFramework) mongoc_mode = get_option('use-system-mongo-c') conf.env['MONGO_HAVE_LIBMONGOC'] = False if mongoc_mode != 'off': - conf.env['MONGO_HAVE_LIBMONGOC'] = conf.CheckLibWithHeader( + if conf.CheckLibWithHeader( ["mongoc-1.0"], - ["mongoc.h"], + ["mongoc/mongoc.h"], "C", "mongoc_get_major_version();", - autoadd=False ) + autoadd=False ): + conf.env['MONGO_HAVE_LIBMONGOC'] = "library" + if not conf.env['MONGO_HAVE_LIBMONGOC'] and env.TargetOSIs('darwin') and conf.CheckMongoCFramework(): + conf.env['MONGO_HAVE_LIBMONGOC'] = "framework" if not conf.env['MONGO_HAVE_LIBMONGOC'] and mongoc_mode == 'on': myenv.ConfError("Failed to find the required C driver headers") if conf.env['MONGO_HAVE_LIBMONGOC'] and not conf.CheckMongoCMinVersion(): - myenv.ConfError("Version of mongoc is too old. Version 1.10+ required") + myenv.ConfError("Version of mongoc is too old. Version 1.13+ required") # ask each module to configure itself and the build environment. moduleconfig.configure_modules(mongo_modules, conf) @@ -3479,7 +3512,8 @@ if get_option('install-mode') == 'hygienic': elif env['PLATFORM'] == 'darwin': env.AppendUnique( LINKFLAGS=[ - '-Wl,-rpath,@loader_path/../lib' + '-Wl,-rpath,@loader_path/../lib', + '-Wl,-rpath,@loader_path/../Frameworks' ], SHLINKFLAGS=[ "-Wl,-install_name,@rpath/${TARGET.file}", diff --git a/etc/evergreen.yml b/etc/evergreen.yml index 101b26d5d4a..7fdcafd8ce3 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -3617,12 +3617,9 @@ tasks: VERSION=${version} WORKDIR=${workdir} - CDRIVER_VERSION=1.12.0 - rm -rf mongo-c-driver-$CDRIVER_VERSION rm -rf mongo-c-driver - curl -LO https://github.com/mongodb/mongo-c-driver/releases/download/$CDRIVER_VERSION/mongo-c-driver-$CDRIVER_VERSION.tar.gz - tar xzf mongo-c-driver-$CDRIVER_VERSION.tar.gz - mv mongo-c-driver-$CDRIVER_VERSION mongo-c-driver + + git clone --branch r1.13 --depth 1 https://github.com/mongodb/mongo-c-driver.git cd mongo-c-driver trap "cat CMakeFiles/CMakeOutput.log" EXIT @@ -3721,6 +3718,7 @@ tasks: if [ ${enable_embedded_tests|false} = "ios_tvos_simulator" -a $(command -v xcrun) ]; then find ./lib -type f -name "*.dylib" -print0 | xargs -0 -L 1 xcrun codesign -s - + find ./Frameworks -type f -name "*" '!' -name "*.*" -print0 | xargs -0 -L 1 xcrun codesign -s - fi - command: shell.exec @@ -10268,21 +10266,17 @@ buildvariants: compile_flags: >- -j$(sysctl -n hw.logicalcpu) --variables-files=etc/scons/xcode_macosx.vars - LIBPATH="\$BUILD_ROOT/mongo-embedded-sdk-\$MONGO_VERSION/lib" + FRAMEWORKPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/Frameworks' --lto cdriver_cmake_flags: >- -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHREADS_PTHREAD_ARG=2 - -DCMAKE_SYSTEM_NAME=Darwin + -DCMAKE_OSX_SYSROOT="$(xcrun --sdk macosx --show-sdk-path)" + -DENABLE_APPLE_FRAMEWORK=ON + -DCMAKE_INSTALL_BINDIR=Frameworks -DCMAKE_SYSTEM_PROCESSOR=x86_64 - -DCMAKE_FIND_ROOT_PATH="$(xcrun --sdk macosx --show-sdk-path);$WORKDIR/src/build/mongo-embedded-sdk-$VERSION-tmp" - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY - -DCMAKE_C_FLAGS="-arch x86_64 -isysroot $(xcrun --sdk macosx --show-sdk-path) -mmacosx-version-min=10.10 -flto" - -DCMAKE_SHARED_LINKER_FLAGS="-arch x86_64 -isysroot $(xcrun --sdk macosx --show-sdk-path) -mmacosx-version-min=10.10 -flto" - -DCMAKE_INSTALL_NAME_DIR=@rpath + -DCMAKE_C_FLAGS="-arch x86_64 -mmacosx-version-min=10.10 -flto" + -DCMAKE_SHARED_LINKER_FLAGS="-arch x86_64 -mmacosx-version-min=10.10 -flto" disable_unit_tests: true enable_embedded_tests: native dump_scons_config_on_failure: true @@ -10301,20 +10295,16 @@ buildvariants: compile_flags: >- -j$(sysctl -n hw.logicalcpu) --variables-files=etc/scons/xcode_ios.vars - LIBPATH="\$BUILD_ROOT/mongo-embedded-sdk-\$MONGO_VERSION/lib" + FRAMEWORKPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/Frameworks' --lto cdriver_cmake_flags: >- -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHREADS_PTHREAD_ARG=2 - -DCMAKE_SYSTEM_NAME=Darwin - -DCMAKE_FIND_ROOT_PATH="$(xcrun --sdk iphoneos --show-sdk-path);$WORKDIR/src/build/mongo-embedded-sdk-$VERSION-tmp" - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY - -DCMAKE_C_FLAGS="-arch arm64 -fembed-bitcode -isysroot $(xcrun --sdk iphoneos --show-sdk-path) -miphoneos-version-min=10.2 -flto" - -DCMAKE_SHARED_LINKER_FLAGS="-arch arm64 -fembed-bitcode -isysroot $(xcrun --sdk iphoneos --show-sdk-path) -miphoneos-version-min=10.2 -flto" - -DCMAKE_INSTALL_NAME_DIR=@rpath + -DCMAKE_OSX_SYSROOT="$(xcrun --sdk iphoneos --show-sdk-path)" + -DENABLE_APPLE_FRAMEWORK=ON + -DCMAKE_INSTALL_BINDIR=Frameworks + -DCMAKE_C_FLAGS="-arch arm64 -fembed-bitcode -miphoneos-version-min=10.2 -flto" + -DCMAKE_SHARED_LINKER_FLAGS="-arch arm64 -fembed-bitcode -miphoneos-version-min=10.2 -flto" disable_unit_tests: true dump_scons_config_on_failure: true tasks: @@ -10332,20 +10322,16 @@ buildvariants: compile_flags: >- -j$(sysctl -n hw.logicalcpu) --variables-files=etc/scons/xcode_ios_sim.vars - LIBPATH="\$BUILD_ROOT/mongo-embedded-sdk-\$MONGO_VERSION/lib" + FRAMEWORKPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/Frameworks' --lto cdriver_cmake_flags: >- -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHREADS_PTHREAD_ARG=2 - -DCMAKE_SYSTEM_NAME=Darwin - -DCMAKE_FIND_ROOT_PATH="$(xcrun --sdk iphonesimulator --show-sdk-path);$WORKDIR/src/build/mongo-embedded-sdk-$VERSION-tmp" - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY - -DCMAKE_C_FLAGS="-arch x86_64 -fembed-bitcode -isysroot $(xcrun --sdk iphonesimulator --show-sdk-path) -miphoneos-version-min=10.2 -flto" - -DCMAKE_SHARED_LINKER_FLAGS="-arch x86_64 -fembed-bitcode -isysroot $(xcrun --sdk iphonesimulator --show-sdk-path) -miphoneos-version-min=10.2 -flto" - -DCMAKE_INSTALL_NAME_DIR=@rpath + -DCMAKE_OSX_SYSROOT="$(xcrun --sdk iphonesimulator --show-sdk-path)" + -DENABLE_APPLE_FRAMEWORK=ON + -DCMAKE_INSTALL_BINDIR=Frameworks + -DCMAKE_C_FLAGS="-arch x86_64 -fembed-bitcode -miphoneos-version-min=10.2 -flto" + -DCMAKE_SHARED_LINKER_FLAGS="-arch x86_64 -fembed-bitcode -miphoneos-version-min=10.2 -flto" disable_unit_tests: true enable_embedded_tests: ios_tvos_simulator ios_sim_device: iPhone-7 @@ -10366,20 +10352,16 @@ buildvariants: compile_flags: >- -j$(sysctl -n hw.logicalcpu) --variables-files=etc/scons/xcode_tvos.vars - LIBPATH="\$BUILD_ROOT/mongo-embedded-sdk-\$MONGO_VERSION/lib" + FRAMEWORKPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/Frameworks' --lto cdriver_cmake_flags: >- -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHREADS_PTHREAD_ARG=2 - -DCMAKE_SYSTEM_NAME=Darwin - -DCMAKE_FIND_ROOT_PATH="$(xcrun --sdk appletvos --show-sdk-path);$WORKDIR/src/build/mongo-embedded-sdk-$VERSION-tmp" - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY - -DCMAKE_C_FLAGS="-arch arm64 -fembed-bitcode -isysroot $(xcrun --sdk appletvos --show-sdk-path) -mtvos-version-min=10.2 -flto" - -DCMAKE_SHARED_LINKER_FLAGS="-arch arm64 -fembed-bitcode -isysroot $(xcrun --sdk appletvos --show-sdk-path) -mtvos-version-min=10.2 -flto" - -DCMAKE_INSTALL_NAME_DIR=@rpath + -DCMAKE_OSX_SYSROOT="$(xcrun --sdk appletvos --show-sdk-path)" + -DENABLE_APPLE_FRAMEWORK=ON + -DCMAKE_INSTALL_BINDIR=Frameworks + -DCMAKE_C_FLAGS="-arch arm64 -fembed-bitcode -mtvos-version-min=10.2 -flto" + -DCMAKE_SHARED_LINKER_FLAGS="-arch arm64 -fembed-bitcode -mtvos-version-min=10.2 -flto" disable_unit_tests: true dump_scons_config_on_failure: true tasks: @@ -10397,20 +10379,16 @@ buildvariants: compile_flags: >- -j$(sysctl -n hw.logicalcpu) --variables-files=etc/scons/xcode_tvos_sim.vars - LIBPATH="\$BUILD_ROOT/mongo-embedded-sdk-\$MONGO_VERSION/lib" + FRAMEWORKPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/Frameworks' --lto cdriver_cmake_flags: >- -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHREADS_PTHREAD_ARG=2 - -DCMAKE_SYSTEM_NAME=Darwin - -DCMAKE_FIND_ROOT_PATH="$(xcrun --sdk appletvsimulator --show-sdk-path);$WORKDIR/src/build/mongo-embedded-sdk-$VERSION-tmp" - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY - -DCMAKE_C_FLAGS="-arch x86_64 -fembed-bitcode -isysroot $(xcrun --sdk appletvsimulator --show-sdk-path) -mtvos-version-min=10.2 -flto" - -DCMAKE_SHARED_LINKER_FLAGS="-arch x86_64 -fembed-bitcode -isysroot $(xcrun --sdk appletvsimulator --show-sdk-path) -mtvos-version-min=10.2 -flto" - -DCMAKE_INSTALL_NAME_DIR=@rpath + -DCMAKE_OSX_SYSROOT="$(xcrun --sdk appletvsimulator --show-sdk-path)" + -DENABLE_APPLE_FRAMEWORK=ON + -DCMAKE_INSTALL_BINDIR=Frameworks + -DCMAKE_C_FLAGS="-arch x86_64 -fembed-bitcode -mtvos-version-min=10.2 -flto" + -DCMAKE_SHARED_LINKER_FLAGS="-arch x86_64 -fembed-bitcode -mtvos-version-min=10.2 -flto" disable_unit_tests: true enable_embedded_tests: ios_tvos_simulator ios_sim_device: Apple-TV-1080p @@ -10431,20 +10409,16 @@ buildvariants: compile_flags: >- -j$(sysctl -n hw.logicalcpu) --variables-files=etc/scons/xcode_watchos.vars - LIBPATH="\$BUILD_ROOT/mongo-embedded-sdk-\$MONGO_VERSION/lib" + FRAMEWORKPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/Frameworks' --lto cdriver_cmake_flags: >- -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHREADS_PTHREAD_ARG=2 - -DCMAKE_SYSTEM_NAME=Darwin - -DCMAKE_FIND_ROOT_PATH="$(xcrun --sdk watchos --show-sdk-path);$WORKDIR/src/build/mongo-embedded-sdk-$VERSION-tmp" - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY - -DCMAKE_C_FLAGS="-arch armv7k -fembed-bitcode -isysroot $(xcrun --sdk watchos --show-sdk-path) -mwatchos-version-min=4.2 -flto" - -DCMAKE_SHARED_LINKER_FLAGS="-arch armv7k -fembed-bitcode -isysroot $(xcrun --sdk watchos --show-sdk-path) -mwatchos-version-min=4.2 -flto" - -DCMAKE_INSTALL_NAME_DIR=@rpath + -DCMAKE_OSX_SYSROOT="$(xcrun --sdk watchos --show-sdk-path)" + -DENABLE_APPLE_FRAMEWORK=ON + -DCMAKE_INSTALL_BINDIR=Frameworks + -DCMAKE_C_FLAGS="-arch armv7k -fembed-bitcode -mwatchos-version-min=4.2 -flto" + -DCMAKE_SHARED_LINKER_FLAGS="-arch armv7k -fembed-bitcode -mwatchos-version-min=4.2 -flto" disable_unit_tests: true dump_scons_config_on_failure: true tasks: @@ -10462,20 +10436,16 @@ buildvariants: compile_flags: >- -j$(sysctl -n hw.logicalcpu) --variables-files=etc/scons/xcode_watchos_sim.vars - LIBPATH="\$BUILD_ROOT/mongo-embedded-sdk-\$MONGO_VERSION/lib" + FRAMEWORKPATH='$BUILD_ROOT/mongo-embedded-sdk-$MONGO_VERSION/Frameworks' --lto cdriver_cmake_flags: >- -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHREADS_PTHREAD_ARG=2 - -DCMAKE_SYSTEM_NAME=Darwin - -DCMAKE_FIND_ROOT_PATH="$(xcrun --sdk watchsimulator --show-sdk-path);$WORKDIR/src/build/mongo-embedded-sdk-$VERSION-tmp" - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY - -DCMAKE_C_FLAGS="-arch i386 -fembed-bitcode -isysroot $(xcrun --sdk watchsimulator --show-sdk-path) -mwatchos-version-min=4.2 -flto" - -DCMAKE_SHARED_LINKER_FLAGS="-arch i386 -fembed-bitcode -isysroot $(xcrun --sdk watchsimulator --show-sdk-path) -mwatchos-version-min=4.2 -flto" - -DCMAKE_INSTALL_NAME_DIR=@rpath + -DCMAKE_OSX_SYSROOT="$(xcrun --sdk watchsimulator --show-sdk-path)" + -DENABLE_APPLE_FRAMEWORK=ON + -DCMAKE_INSTALL_BINDIR=Frameworks + -DCMAKE_C_FLAGS="-arch i386 -fembed-bitcode -mwatchos-version-min=4.2 -flto" + -DCMAKE_SHARED_LINKER_FLAGS="-arch i386 -fembed-bitcode -mwatchos-version-min=4.2 -flto" disable_unit_tests: true enable_embedded_tests: ios_tvos_simulator ios_sim_device: Apple-Watch-Series-3-42mm diff --git a/src/mongo/embedded/SConscript b/src/mongo/embedded/SConscript index 93265a976cd..45f8e5e7827 100644 --- a/src/mongo/embedded/SConscript +++ b/src/mongo/embedded/SConscript @@ -204,7 +204,16 @@ if get_option('link-model') != 'dynamic-sdk': if not env['MONGO_HAVE_LIBMONGOC']: Return() -mongocClientEnv = env.Clone() +def create_mongoc_env(env): + mongocEnv = env.Clone() + if mongocEnv['MONGO_HAVE_LIBMONGOC'] == "framework": + mongocEnv.AppendUnique(FRAMEWORKS=['bson', 'mongoc']) + else: + mongocEnv.AppendUnique(LIBS=['bson-1.0', 'mongoc-1.0']) + return mongocEnv + +mongocClientEnv = create_mongoc_env(env) + mongocClientEnv.AppendUnique( CPPDEFINES=[ 'MONGO_EMBEDDED_MONGOC_CLIENT_COMPILING', @@ -231,11 +240,6 @@ mongocClientEnv.Library( # No LIBDEPS or LIBDEPS_PRIVATE to mongo libraries are allowed in this library. They would get duplicated in mongo_embedded_capi. 'mongo_embedded_capi', ], - SYSLIBDEPS=[ - # No other SYSLIBDEPS than mongoc and bson are allowed in this library. - 'mongoc-1.0', - 'bson-1.0', - ], INSTALL_ALIAS=[ 'embedded-dev', ], @@ -251,7 +255,8 @@ if get_option('install-mode') == 'hygienic': ) if get_option('link-model') != 'dynamic-sdk': - clientTest = yamlEnv.Program( + mongocClientTestEnv = create_mongoc_env(yamlEnv) + clientTest = mongocClientTestEnv.Program( target='mongo_embedded_mongoc_client_test', source=[ 'mongo_embedded_mongoc_client_test.cpp', diff --git a/src/mongo/embedded/functions_for_test.cpp b/src/mongo/embedded/functions_for_test.cpp index d0e5d78cc0c..a523e5bf51b 100644 --- a/src/mongo/embedded/functions_for_test.cpp +++ b/src/mongo/embedded/functions_for_test.cpp @@ -30,7 +30,6 @@ #include "mongo/embedded/functions_for_test.h" -#include <mongoc.h> #include <stdio.h> #include "mongo/embedded/mongoc_client.h" diff --git a/src/mongo/embedded/functions_for_test.h b/src/mongo/embedded/functions_for_test.h index 529ecfacc46..b975ca4558a 100644 --- a/src/mongo/embedded/functions_for_test.h +++ b/src/mongo/embedded/functions_for_test.h @@ -28,10 +28,7 @@ #pragma once -// <inttypes.h> is needed to avoid macro redefinition error when compiling on Windows. -// Should be fixed inside mongoc.h -#include <inttypes.h> -#include <mongoc.h> +#include <mongoc/mongoc.h> namespace mongo { diff --git a/src/mongo/embedded/mongo_embedded_mongoc_client_test.cpp b/src/mongo/embedded/mongo_embedded_mongoc_client_test.cpp index 6074629476b..0a94890b1d6 100644 --- a/src/mongo/embedded/mongo_embedded_mongoc_client_test.cpp +++ b/src/mongo/embedded/mongo_embedded_mongoc_client_test.cpp @@ -30,7 +30,7 @@ #include "mongo/embedded/mongoc_client.h" -#include <mongoc.h> +#include <mongoc/mongoc.h> #include <set> #include <yaml-cpp/yaml.h> diff --git a/src/mongo/embedded/mongoc_client.h b/src/mongo/embedded/mongoc_client.h index 2db787b10c1..ca21c1f1fe0 100644 --- a/src/mongo/embedded/mongoc_client.h +++ b/src/mongo/embedded/mongoc_client.h @@ -28,11 +28,8 @@ #ifndef HEADERUUID_8CAAB40D_AC65_46CF_9FA9_B48825C825DC_DEFINED #define HEADERUUID_8CAAB40D_AC65_46CF_9FA9_B48825C825DC_DEFINED -// <inttypes.h> is needed to avoid macro redefinition error when compiling on Windows. -// Should be fixed inside mongoc.h -#include <inttypes.h> #include <mongo/embedded/capi.h> -#include <mongoc.h> +#include <mongoc/mongoc.h> #pragma push_macro("MONGO_API_CALL") #undef MONGO_API_CALL diff --git a/src/third_party/scons-2.5.0/scons-local-2.5.0/SCons/Tool/applelink.py b/src/third_party/scons-2.5.0/scons-local-2.5.0/SCons/Tool/applelink.py index 4e7a679d2f7..5760ac81945 100644 --- a/src/third_party/scons-2.5.0/scons-local-2.5.0/SCons/Tool/applelink.py +++ b/src/third_party/scons-2.5.0/scons-local-2.5.0/SCons/Tool/applelink.py @@ -45,7 +45,7 @@ def generate(env): link.generate(env) env['FRAMEWORKPATHPREFIX'] = '-F' - env['_FRAMEWORKPATH'] = '${_concat(FRAMEWORKPATHPREFIX, FRAMEWORKPATH, "", __env__)}' + env['_FRAMEWORKPATH'] = '${_concat(FRAMEWORKPATHPREFIX, FRAMEWORKPATH, "", __env__, RDirs)}' env['_FRAMEWORKS'] = '${_concat("-framework ", FRAMEWORKS, "", __env__)}' env['LINKCOM'] = env['LINKCOM'] + ' $_FRAMEWORKPATH $_FRAMEWORKS $FRAMEWORKSFLAGS' env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS -dynamiclib') |