diff --git a/README.md b/README.md index e8b968e6..8420da48 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Aria C++ V2 SDK +# Aria C++ V3 / 1DS SDK ## SDK Information #### Contact: @@ -7,23 +7,16 @@ * ariaesdks (**ARIA SDK Team**) #### Branches: -* *Master* -
- Should be used only after the dev build passed and you want your change into master + +* *master* +
- Should be used only after the' onesdk' build passed and you want your change into master
- Pull Request is needed to push to Master, at least 1 person needs to be added for approval. Please add aria sdk team (**ariaesdks@microsoft.com**) -
- Any push will trigger a new [build](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_build/index?context=allDefinitions&path=%5CAriaSDK%5CC&definitionId=1755&_a=completed) -* *Dev* +
- Any push will trigger a new build + +* *onesdk*
- This should be clean green but if it's red, no problem just go ahead and fix it -
- Fell free to push to dev once your feature is done. We encourage you to use *build\\* branch first -
- Any push will trigger a new [build](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_build/index?context=allDefinitions&path=%5CAriaSDK%5CC&definitionId=1399&_a=completed) - -* *\\\* -
- Create a new branch for each feature you are working on or you just want to check some changes you made -
- Any new branch or change to this branch will not trigger any build - -* *build\\\* -
- Create a new branch under *build\\* folder if you want an automatic build to be triggered online. -
- This allows you to test local changes with no need of an environment setup -
- Any push will trigger a new [build]https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_build/index?context=allDefinitions&path=%5CAriaSDK%5CC&definitionId=1754&_a=completed) +
- Fell free to push to 'onesdk' once your feature is done +
- Any push will trigger a new build #### Best Practice: * User your own branch per feature. Once it can build locally, push it to dev so MSASG vso will build to all supported platforms @@ -33,35 +26,32 @@
- [Some Guildines](https://blogs.msdn.microsoft.com/brada/2005/01/26/internal-coding-guidelines/) #### Supported platforms: -* Windows +* Windows (vs2017) +* Windows (llvm-clang) +* Mac OS X (llvm-clang) +* Linux (gcc, various distros) #### Deps: -* [Visual Studio](https://www.visualstudio.com/vso/) 2015 or higher +* [Visual Studio](https://www.visualstudio.com/vso/) 2017 or higher * [Google Test Adapter](https://github.com/csoltenborn/GoogleTestAdapter) -## Building -#### On MSASG -* Pushing to **dev** will trigger all [C++ dev](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_build/index?context=allDefinitions&path=%5CAriaSDK%5CC&definitionId=1399&_a=completed) build -* Pushing to **master** will trigger only the [C++ master](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_build/index?context=allDefinitions&path=%5CAriaSDK%5CC&definitionId=1755&_a=completed) build -* Pushing to **build\\** will trigger only the [C++ features](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_build/index?context=allDefinitions&path=%5CAriaSDK%5CC&definitionId=1754&_a=completed) build - #### Locally * Install the **Deps** -* run: **AriaSDK.sln** solution and build & use Google Test Adapter to run the tests * run: **build-all.bat** from command line and it will build -* Note: On at least one instance, the location for the windows SDK headers had to be manually specified (e.g. C:\Program Files (x86)\Windows Kits\10\Include\10.x\shared) in the VC++ Include Directories ## Running tests + #### Dependency: * Google Test Adapter (Just to run/debug the tests inside Visual Studio) ## Run Tests: -* Run Tests from Visual Studio or from command line. See **build-win32Debug.bat** for more information + +* Run Tests from Visual Studio or from command line: + +build-Win32Debug.bat +build-Win32Release.bat +build-x64Debug.bat +build-x64Release.bat #### Test Result: * You will see them in Visual Studio - -## Useful Links: -* [Builds](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_build?path=%5CAriaSDK%5CC&_a=allDefinitionss) -* [Code](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs/_git/Aria.SDK.NewC) -* [Dashboard](https://msasg.visualstudio.com/Shared%20Data/Mobile%20Analytics%20-%20Mobile%20SDKs?activeDashboardId=f92e3841-f65a-4cf2-9743-84b55f5a869a) \ No newline at end of file diff --git a/lib/include/public/VariantType.hpp b/lib/include/public/VariantType.hpp index 9c2d1074..fefe508e 100644 --- a/lib/include/public/VariantType.hpp +++ b/lib/include/public/VariantType.hpp @@ -13,6 +13,16 @@ operator basetype() { return (basetype)field; }; \ Variant& operator=(basetype v) { field = v; type = typeenum; return *this; }; +// Avoid conflict with Mac platforms where #defines TYPE_BOOL. +// +// If some one needs the macro TYPE_BOOL in a file that includes this header, it's +// possible to bring it back using push/pop_macro as follows. +// +// #pragma push_macro("TYPE_BOOL") +// #include this header and/or all headers that need the macro to be undefined. +// #pragma pop_macro("TYPE_BOOL") +#undef TYPE_BOOL + /** * Variant type for containers */