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

213 Коммитов

Автор SHA1 Сообщение Дата
Nick Banks ba1eb97507
Add Pool Tags (#660) 2020-07-30 15:53:07 -07:00
Thad House c869617eb6
Skip calling CLOG if logging is disabled (#652)
* Skip calling CLOG if logging is disabled

Adds an unnecessary dependency if logging is disabled anyway

* Fiox dist

* Remove ifdef

* Rename and merge function

* Fix build, move clog targets into folder

* Skip folder when not actually using clog

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2020-07-30 09:00:32 -07:00
Thad House 2316ab65bf
Remove incremental from link arguments, removing warning (#657) 2020-07-30 08:51:54 -07:00
Thad House 32aac22ad0
Enable SourceLink in release mode CMake build (#656) 2020-07-30 07:33:26 -07:00
Thad House 5bf71fb42d
Fix cmake installs since we added clog. (#636) 2020-07-30 07:33:11 -07:00
Thad House 091633d726
Create new Performance Execution Driver (#626)
New performance driver is custom built specifically for performance, rather then using quicping.

Also will be compatible with server mode, and baseline support is part of this commit.
2020-07-29 16:31:27 -07:00
Thad House 509e104f92
Refactor build system to use more modern cmake techniques (#589)
The CMake build currently is using old ways of setting build properties, such as globally setting flags and include directories

Doing this causes build maintenance issues, along with making supporting alternate setups more difficult.

By using standard methods where items are handled directly through targets, flow becomes much easier to follow.
2020-07-28 14:06:34 -07:00
Thad House 4b9f0ad9cd
Switch CI flag to be explicit skip flags for debugging helper flags (#631)
* Switch CI flag to be explicit skip flags for debugging helper flags

Will help to default local builds to be identical to CI. However, some of these flags can affect debugging in certain cases, so a flag is needed to disable them.

* Remove CI flag
2020-07-23 10:43:22 -07:00
Anthony Rossi e6cd704a90
Add Code coverage to Azure Pipelines BVTs (#607)
Collects code coverage on the BVTs and SpinQuic.

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2020-07-22 22:39:05 -07:00
Thad House 2bfcb793e2
Change clog to use a published nuget package (#612)
* Change clog to use a published nuget package

Much cleaner and easier to update. The executable now contains all the clog dependencies, and extracts them when we run --installDependencies
2020-07-21 12:30:43 -07:00
Thad House 3d0bfc60cf
Add support for SourceLink for msquic (#591) 2020-07-17 15:20:22 -07:00
Nick Banks 6000e137d9
Public IP Lookup Protocol/Tool (#601) 2020-07-17 07:09:47 -07:00
Thad House aaeb595697
Update CLOG dependency to use updated target generation (#581)
* Update CLOG dependency to use updated target generation

* Fix clog copy
2020-07-09 08:30:41 -07:00
chgray af64e17763
Integrate clog in a no-op way, in order to prepare for taking the tool in the near future (#569) 2020-07-01 12:56:42 -07:00
Thad House 9a5ccc510f
Fix accidentally added no-inline and no-omit-frame-pointer flags on linux (#554) 2020-06-25 14:42:12 -07:00
Max 08c9bf7294
Add cmake changes necessary for Darwin builds (#552) 2020-06-25 13:35:59 -07:00
Thad House 8566a867f2
Enable building on Azure for Raspberry Pi with a cross compiler (#524)
* Allow building with Raspberry Pi Cross Compilers
2020-06-19 12:46:38 -07:00
Thad House 5130bceeb9
Force disable logging for CMake versions older then 3.6 (#529)
* Force disable logging for CMake versions older then 3.6

FindLTTngUST doesn't exist before 3.6.

I don't want to completely remove support for Ubuntu 16.04, so this will make it so that a build will work, just that logging will not.
2020-06-19 09:07:41 -07:00
Thad House e3e3db14b9
Fix cmake dependencies for ETW generation (#504)
Makes it so a clean build does not need to occur if ETW methods change
2020-06-12 14:29:53 -07:00
Nick Banks b928444160
Fixes and Documentation for PGO (#480) 2020-06-12 08:24:32 -07:00
Thad House 5e76fa229b
Add support for cmake installs (#475)
* Add support for CMake install

Requires defining WIN32_LEAN_AND_MEAN in msquic.h, which is required anyway because of the include order. Also uses `__linux__` rather then an explicit QUIC_PLATFORM so no extra definitions are required to use the header file.
2020-06-08 13:21:48 -07:00
Thad House acb34ae980
Add folder support to CMake (#471)
When the solution is opened in VS or another IDE that supports folders, the projects are grouped accordingly. This makes it much easier to find the specific project you're looking for
2020-06-05 08:11:55 -07:00
Thad House 45ecc633d8
Add support for building in UWP mode (#454) 2020-06-04 08:25:31 -07:00
Thad House 8e2fd72750
Make CMake build compatible with more platforms (#433) 2020-05-30 16:13:52 -07:00
Thad House 119934e961
Disallow in-source builds (#431) 2020-05-29 10:54:52 -07:00
Thad House f7c3e1057a
Use CMAKE_STATIC_LIBRARY_SUFFIX for openssl (#430) 2020-05-29 10:25:13 -07:00
Thad House 5eb69e2365
Fix cmake builds in Ninja (#424) 2020-05-28 13:27:12 -07:00
Nick Banks f995ec193b
Add Initial PGO File (#409) 2020-05-26 12:49:59 -07:00
Nick Banks 7a6a7e72ca
Add Build Support for PGO (#406) 2020-05-26 12:28:32 -07:00
Nick Banks 80fa7359ae
Small Refactor of Build Files (#407) 2020-05-26 10:18:33 -07:00
Nick Banks 216f0a5970
Normalize Line Endings (#384) 2020-05-12 19:08:05 -07:00
Nick Banks bdeb94d78c
Unreliable Datagram Support (#329) 2020-05-08 15:11:39 -07:00
Anthony Rossi 601000bc9b
Use project-tree specific CMake variables for paths. (#362) 2020-05-05 19:12:55 -07:00
Anthony Rossi df5b9f6b7d
Add basic upload support to interop server (#326)
Co-authored-by: Nick Banks <nibanks@microsoft.com>
2020-04-21 19:39:52 -07:00
Max 9788c90571
Enable static linkage on Linux with OpenSSL (#264) 2020-03-25 08:01:28 -07:00
Nick Banks 2e292f9f64
Fix Windows User Mode ARM Builds (#220) 2020-03-05 11:40:15 -08:00
Nick Banks 8b7fe3c3b9
Generate PDBs for EXEs on Windows (#214) 2020-03-03 19:38:07 -08:00
Nick Banks e9fe7cf04c
Add Interop Server Code (#203) 2020-03-02 14:53:34 -08:00
Nick Banks 761d7498da
Disable 0-RTT Tests for Kernel Mode (#205) 2020-03-02 14:42:44 -08:00
Nick Banks d5a4ecfc15
Fix CMake Policy 0091 (#209) 2020-03-02 13:45:22 -08:00
Anthony Rossi 85aaf030b2
Statically link the C runtime on Windows. (#201) 2020-02-29 10:15:56 -08:00
Anthony Rossi 78c94a65e7
Re-enable Visual Studio to run tests. (#183) 2020-02-25 10:31:45 -08:00
Anthony Rossi e2e2a902f4
Add platform unit tests (#162)
Adds testing of the platform layers, and fixes an issue in the OpenSSL hash calculation discovered by these tests.
Fixes #93

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2020-02-24 14:06:36 -08:00
Anthony Rossi 02f0b265df
Onboard core unit tests to gtest (#136)
Co-authored-by: Nick Banks <nibanks@microsoft.com>
2020-02-18 18:27:50 -08:00
Anthony Rossi 882a941fa9
Clean up build warnings and errors (#91)
Stop suppressing some warnings and fix the product code.
2020-02-11 18:02:19 -08:00
Nick Banks ece19f930c
Staged Azure Pipelines Build & Test (#118)
Completely refactors the Azure Pipelines CI to have separate build and test stages. This decouples the building from the testing. We can now easily build all architectures and TLS configurations we want, but only test those that are necessary.
2020-02-11 12:51:18 -08:00
Justin Kotalik 154ee7e4eb
Statically link the C runtime on Windows (#106) 2020-02-05 11:37:15 -08:00
Nick Banks 798fe56669
Moves Source Code into 'src' Directory (#86) 2020-02-03 12:57:04 -08:00
Nick Banks 187ebd7f16
Move void and reach to GitHub (#84) 2020-02-03 11:34:17 -08:00
Nick Banks 8acb70d484
Add etwlib to GitHub (#61)
This PR moves the etwlib to GitHub. Tristan is doing some WPA prototyping with our LTTng events and needs a externally built version of the lib to test it out.
2020-01-24 12:47:01 -08:00
Nick Banks 1be04fe29f
Cross Platform PowerShell Helper Scripts (#52)
This PR adds cross platform PowerShell (6 or 7) scripts for building, testing and logging. There is still a little left to do before it can be integrated into the Azure Pipeline, but that is the ultimate goal.

One big improvement of the test.ps1 script over calling the test program directly is that it will allow for collecting logs for each individual test case separately. The down side is that it significantly increases the execution time of the tests. I'm still hoping the time can be cut down some how.
2020-01-22 12:10:33 -08:00
Nick Banks 53198319bd
Tracing Refactoring (#30)
This PR syncs the latest tracing refactoring work to hook up LTTng.
2019-12-21 10:21:23 -08:00
Nick Banks 671e49ce44
Sync Latest - 12/10/19 (#28)
Cleans up and onboards spinquic to CI.
Disabled v4 unreachable test on Windows.
Adds resumption test cases.
Adds resumption support for schannel.
Fixes some OACR warnings.
2019-12-12 07:44:53 -08:00
Nick Banks 02907e0b76
Sync Latest - 12/6/19 (#27)
- miTLS support (Windows)
- Tools fixes
- Tests fixes
2019-12-06 18:01:48 -08:00
Nick Banks c1982d2840
Improve CI (#26)
This PR fixes various test and CI issues, mostly on Linux
2019-12-05 14:26:22 -08:00
Nick Banks 3acbbe393e
Sync Latest - 12/3/19 (#17)
Syncs a lot of Linux code refactoring and fixes.
2019-12-03 14:20:45 -08:00
Nick Banks 69a2cf9d7c
Sync Latest - 11/22/2019 (#13) 2019-11-22 12:03:28 -08:00
Nick Banks 1cba2c38fa
Sync Latest - 11/20/2019 (#12)
Merges the latest copy of the internal MsQuic code.
2019-11-21 12:42:40 -08:00
Nick Banks 0477a44a64
OpenSSL Support (Linux) (#11)
This PR updates tls_openssl.c to the newest OpenSSL APIs for QUIC. It also gets OpenSSL building with cmake.

Also contains a push of the latest internal code changes.
2019-11-15 16:13:46 -08:00
Nick Banks 362895496d
Sync Latest (QuicInterop, QuicEtw and SpinQuic) (#9)
- Adds QuicInterop tool.
- Adds SpinQuic tool.
- Some improvements to QuicEtw
2019-11-14 12:22:10 -08:00
Nick Banks b8475a1219
Add Azure Pipeline Test Support (#8)
This PR integrates test support to Azure Pipeline builds, currently using stub TLS. Other TLS implementations will have tests come online in the future.
2019-11-12 12:26:18 -08:00
Nick Banks 17b66632c9
Improve Linux SysLog Support (#3)
Updates the Linux logging story so that it can collect all the same logs as Windows (now including the ETW events). Also adds some info as to how to collect logs for a repro.
2019-11-05 14:55:17 -08:00
Nick Banks 5eb2690b0b
CMake Build Support (#2)
Updates the build files to CMake (instead of VS project files and Linux makefiles). Also adds googletest submodule for test dependency.

Corresponding internal PR: 3965727
2019-11-04 12:19:35 -08:00