Граф коммитов

54 Коммитов

Автор SHA1 Сообщение Дата
absaroj 1205d34206
Adding Swift build for global build scripts and cmake (#1169) 2023-06-14 11:40:07 -07:00
Lalit Kumar Bhasin 26eeb44139
Add bound check functions for strncpy and memcpy (#1117) 2023-03-27 18:46:33 -07:00
Leonardo Alves 8f6875c53f
Signals module (#1079)
* add signals

* fix cmakelists

* add reference for unit test file

* add java wrappers

* add functional tests

* update submodule reference

* add conditional reference on vcxproj

* add new line at end of file

* fix description of method

* reorganize methods place

* remove commented include

* fix copyright

* revert mstelemetry changes in sharedprojects

* rename module to signals

* refactor java files to rename signals module

* refactor removing additional lines

* refactor renaming signals module

* fix conditional import to signals module

* add conditional import in signals lib

---------

Co-authored-by: Lalit Kumar Bhasin <labhas@microsoft.com>
2023-02-24 13:40:34 -03:00
Swasti Gupta e8eb28fab9
ios simulator arm64 and arm64e support (#1086)
* Adding support for iphonesimulator arm64 architecture for m1 arm64 based simulator and optional parameter for deployment target
2023-01-27 23:43:03 -08:00
Shubham Jain 274c3452ed
Configuring option for force resetting the osx deployment target (#1016)
* Configuring option for force resetting the osx deployment target

Co-authored-by: Shubham Jain <shubhamjain@adminisatorsMBP.guest.corp.microsoft.com>
2022-05-26 08:17:14 +05:30
Lalit Kumar Bhasin 9adee14208
Use latest version of googletest (v.1.11.0) for testing across all platforms. (#997) 2022-03-09 23:00:41 -08:00
Yulin Li 16cf359759
Add an option to control dependency linking for static build (#952) 2021-11-11 20:08:24 +08:00
Sahil Ashar 0fa60bb679
fixing CFLAGS for AppleClang (#932) 2021-09-21 15:06:51 -05:00
eshany 7dd687c712
Adjust CMakeLists.txt to build for Windows with MSVC (#887)
* Adjust CMakeLists.txt to build for Windows with MSVC

* add /wx per CR comment
2021-06-14 23:38:11 +03:00
Matthew Koscumb 795e0f1dd3
Set the NOMINMAX Macro in the Build (#857)
* Set the NOMINMAX macro for msbuild targets

* Set the NOMINMAX macro for CMake based builds.

* Get rid of #ifdefs and #undefs for min and max

* Use <PreprocessorDefinitions> to add the NOMINMAX macro, rather than <AdditionalOptions>

* Missed one <AdditionalOptions> blob.

Co-authored-by: Max Golovanov <maxgolov@microsoft.com>
2021-05-19 15:02:18 -07:00
Matthew Koscumb 27d226c6f4
Enable Warning as Error on GCC and Clang builds for symmetry with MSVC. (#797)
* Enable Warning as Error on GCC and Clang builds for symmetry with Windows.

* Fix -Wreorder issues in HttpClient_Curl.hpp

* Default assign variables using in-class initializer per CppStandardGuidelines C.48

* Disable -Wtype-limits on clang in parity with MSVC

* Handle GCC separately from Clang for manipulating the warning state.

* Undo a clang-format change.

* Exec is used on non-Apple platforms, however this means that the method fires -Wunused-function on Apple platforms. Locally supress that warning.

* Suppress missing field initializer warning around tm, as I'm not 100% what the most correct fix is here.

* Avoid multi-line comment continuation in -Wcomment

* GCC throws -Wunknown-pragmas on #pragma clang, surround invocations with #ifdef __clang__

* Remove unused local variable, as it's not necessary for the test.

* Suppress -Wobjc-missing-super warnings in third_party code.

* Fix a -Wformat-security warning by treating the message string as an argument.

* Fix error: comparison between ‘const enum Microsoft::Applications::Events::EventProperty::<unnamed>’ and ‘const enum evt_prop_t’ [-Werror=enum-compare]

* Rather than %@, use %s for c-style strings.

* The two types here aren't safely default comparable, cast to underlying types.

* Rather than raising an exception directly, call ODWLogger raiseException

* Wrap #pragma warning with _MSC_VER ifdefs.

* No need for an NSString when NSException prefers a string literal.

* Fix -Wreorder issues in HttpResponseDecoderTests

* Fix error: 'ShadowBondSplicer::addRecord' hides overloaded virtual function [-Werror,-Woverloaded-virtual] by renaming the helper to addCsRecord

* Fix unused local variable warnings by removing the unused locals.

* Fix error: local variable 'output' will be copied despite being returned by name [-Werror,-Wreturn-std-move]. Note that this won't be necessary with guaranteed NVRO in C++17, yay!

* Remove unused locals in MetaStatsTests::GenerateStartEvent

* Fix -Wswitch error on non-Android.

* Fix error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] in OfflineStorageTests_Room.cpp

* More unsigned-signed comparison warning fixes.

* howMany is used in a lambda capture, but clang thinks it isn't used. Odd.

* The unused-lambda-capture warning appears to be a Clang9 bug, don't disable this warning for GCC

* More signed-unsigned comparison fixes.

* Fix signed-unsigned comparison warning in TransmissionPolicyManagerTests. Used long long since that's the return type of std::chrono::duration::milliseconds::count()

* Don't need the long long, default int is fine.

* Fix -wsign-compare in TransmitProfilesTests.cpp

* Missed assigning isAborted to false, std::atomic<T> will zero init its details, but not the T (until C++20).

* Fix -Wdeprecated-copy by defining the copy and move constructors for the Variant type.

* Add copy and move c'tors and assignment operators to the GUID_t type.

* Add copy and move constructors and assignment operators on time_ticks_t

* Fix -Wformat-truncation on GCC 9.3.0 in Pal.cpp by suppressing the warning on this line. This appears to be a false positive.

* INSTANTIATE_TEST_CASE_P is deprecated, using INSTANTIATE_TEST_SUITE_P

* Clang also defines __GNUC__, so since this warning is  a GCC only issue suppress the warning when !defined __clang__

* Missed closing #endif in PAL.cpp

* Some versions of GTest deprecate INSTANTIATE_TEST_CASE_P and others do not, the 1DS SDK should unify on a single version of GTest that's part of the repo, or via a package manager. That's not going to be part of this changelist, so simply suppress this warning.

Co-authored-by: Max Golovanov <maxgolov@microsoft.com>
2021-04-13 15:15:14 -07:00
Brendan Weibel 08700a9470 add to build LiveEventInspector 2021-02-24 23:19:18 -08:00
Eduardo Camacho Camacho 160dc2a9ff Add support for 1DSSDK iOS build script to generate binary for iOS arm simulator.
Context:
As part of Apple Silicon release, latest XCode version allows to run iOS arm64 simulators. This change allows build-ios.sh build script to generate 1DS SDK static library than can be used to link into products targeting iOS arm simulator.
2021-02-04 13:15:53 -08:00
Vitalii Herasimov 5421b25a6b
Add support MacOS arm64 (#763)
* test

* separate script for osx

* test

* test

* Fix with no tests for MACOS arm64

* fix with tests

* remove comments

* use 11.1 just for arm64
2021-01-15 22:03:39 -08:00
vong srey 446e096b48 Add Common Diagnostic Stack Factory interface and hook to implementation in CDS submodule 2020-10-30 15:46:16 -07:00
Sid Dahiya 680b23e23e Update CMakeLists to remove PrivacyGuard special case
Update module with corrected PG code.
2020-09-29 21:31:18 -07:00
Max Golovanov 4913f31dc8 Sid's feature does not compile on Linux with gcc-9. Turning it off. Also there were couple issues with case-sensitivity and including feature in tests even if it's turned off. 2020-09-24 14:34:42 -07:00
Sid Dahiya 2f5670a5b8 Add Top-Level build option for Privacy Guard 2020-09-22 12:31:55 -07:00
Alexandr Gavrishev d7b8b41499 Azure Monitor: Send flow 2020-08-26 16:46:48 +03:00
Eduardo Camacho Camacho d2208d579d Fix build error 2020-08-14 23:06:22 -07:00
Eduardo Camacho Camacho 8ff1b5ec28 Add support for Mac Silicon (arm64) build and Universal (FAT with both architectures) 2020-08-14 16:05:02 -07:00
Max Golovanov 2b25ee448b Update SDK version files to v3.4 2020-07-13 10:48:43 -07:00
kindbe e8e29f6aca Enable ARC for objective-c on Apple builds (#272)
* Enable ARC for Apple builds

Make sysinfo_utils_apple ARC-compliant and set the appropriate compiler flags in CMakeLists.txt when building Apple.

* Update sysinfo_utils_apple.mm
2020-02-11 13:51:42 -08:00
Trevor Lacey 9569405631 iOS architecture switch and min target (#268) 2020-02-04 14:27:51 -08:00
Max Golovanov e15781c55a Build infra clean-up to update the package version for POSIX (Linux, Mac, other clang) from v3.2 to v3.3 2020-01-17 12:48:55 -08:00
kindbe 89a1419bd4 Switch Mac to use the obj-c HttpClient implementation (#200)
* Change HttpClient_iOS to HttpClient_Apple and use on Mac

* Update modules

* Fix merge issue

* Seaparate iOS network information impl

* Properly scope Mac NetworkInformationImpl in CmakeLists.txt

* Create a BUILD_APPLE_HTTP build option

* Wrap BUILD_APPLE_HTTP option in a platform check
2019-12-11 09:43:05 -08:00
Eduardo Camacho Camacho b5e6dbf64c Address second iteration CR comments 2019-11-20 16:15:39 -08:00
Eduardo Camacho Camacho f7fdc110bc Add Objective-C Wrappers to SDK 2019-11-18 14:44:46 -08:00
David Brown 0fceafe896 Merge branch 'fix/http_client' into dabrow/httpclient-merge 2019-10-28 14:39:16 -07:00
Trevor Lacey 4ff7fdf83b IHttpClient: Request/Response ownership (#127) 2019-10-01 08:15:07 -07:00
Max Golovanov 7c005e6c1b Merge branch 'master' into maxgolov/rpi4_support 2019-09-21 12:22:01 -07:00
David Brown 0c7ccd4d1d Update CMakeLists.txt
Missed a CMAKE option needed for building iOS after the DeviceInfo_* change
2019-09-20 08:47:53 -07:00
kindbe 34eedfc645 Add helpers to populate missing DeviceInfo fields on iOS (#116) 2019-09-19 20:30:24 -07:00
Max Golovanov 269ca35e8f Support for Raspberry Pi 4 and gcc-8 2019-09-18 23:10:36 -07:00
David Brown 67485e3007 Remove personal debugging spew from CMakeLists.txt 2019-09-11 09:37:46 -07:00
David Brown 17130bd6a6 Initial build script and logic for iOS
Adds a build-ios.sh that is basically a watered down version of build.sh and threads iOS build logic through various CMakeLists.txt files.  Also includes a preliminary dummy HttpClient_iOS.mm.
2019-09-11 09:27:06 -07:00
Tim Nicholson 85893ec43f Fix win32 Debug builds 2019-07-19 17:05:19 -07:00
Max Golovanov 9973a218b6 Release builds fail on Mac OS X with clang due to unsupported flag passed 2019-07-09 21:46:31 -07:00
Max Golovanov 4158c67a74 Merged PR 1045143: Initial implementation of the build system that uses docker for various Linux distros
Initial implementation of the build system that uses docker for various Linux distros.
More distros can be added by implementing a corresponding docker file under /docker/ dir.
We can reuse this approach for "Windows Core" builds and qemu-arm(32|64) builds as well.
Going forward the same approach can be used for Android builds: no need to setup the tools
locally, container would deploy all the tools needed for a build script to run to completion.

Docker-based build script infra is going to be hosted on MS Azure VSO / OneBranch (CDPx).

Related work items: #1035556
2019-05-22 22:57:00 +00:00
Max Golovanov 50bc34f653 MAT 1DS C++ SDK v3.2.112.1 + build infra clean-up (no code functional changes) 2019-04-22 15:14:38 -07:00
Max Golovanov a906103e62 Remove "pedantic" as it causes 66000 warnings on Windows clang. Also temporarily remove -Wno-unused-parameter :
there are debug-only stubs and other NULL-object pattern implementations, where having a param name helps
to navigate thru code better. The parameter in this case is not unused or forgotten, but intentionally not used.
2019-04-16 15:50:11 -07:00
Max Golovanov 8dd55261f8 Fix clang on Windows build loop 2019-04-16 14:50:42 -07:00
Max Golovanov cb7d55fedb Remove two unnecessary changes 2019-04-15 13:59:17 -07:00
Miguel Casillas 0ae8aa30ed Clean-up build to use MAT SDK alias 2019-04-15 13:46:30 -07:00
Max Golovanov 3ef0bd8ca1 GitHub clean-up drafts 2019-03-28 16:40:31 -07:00
Max Golovanov bfc3bc45ec Merged PR 883086: Lightweight SDK for embedding in installer packages
Reducing / disabling non-essential features and setting various build flags to optimize for small size.
x5 times size reduction.

Functional changes to common core SDK:
* Had to rename IStorage to IDataStorage, as IStorage is a macro defined in Windows SDK.
* Had to refactor user analytics feature storage (SDK UUID / install id) to utilize plain text file rather than FIFO ..
FIFO storage is a legacy structure, bloatware, had to be deprecated and removed going forward anyways.
It wasn't even present in v1 Aria SDK, but somehow slipped thru into v3..

Features excluded from lightweight SDK:
* JSON
* ZLIB
* ECS client
* SQLite DB (only ram queue, no offline storage)
* Transmit Profiles

Related work items: #1550785
2019-03-08 05:24:15 +00:00
Miguel Angel Casillas Maldonado 07ef4d24eb Merged PR 904184: Start building functional and unit tests for clang on Windows and Mac
Start building functional and unit tests for clang on Windows and Mac

Related work items: #1548039, #1548040
2019-02-01 09:08:09 +00:00
Max Golovanov c6f5f47b5f Update SDK version to 3.1 for Mac and Linux 2019-01-11 23:01:54 -08:00
Max Golovanov d889b66080 Fix cpack path for tgz package 2018-12-18 14:57:17 -08:00
Max Golovanov fff773d6b1 Merged PR 817004: Mac OS X clang compiler support
What's done:
* Cleaned-up all clang compiler warnings during library build
* PAL Device ID GUID
* PAL appId

Further TODO:
* BVT for Mac
* Verify all header-only APIs for warnings
* Guidance on custom HTTP provider - Edge team should handle this
* Possibly use our own sqlite3 instead of OS, as very old OS X dyn sqlite3 might be too old

Related work items: #1470816
2018-11-07 06:39:27 +00:00