-
Notifications
You must be signed in to change notification settings - Fork 1
Conversation
4933541
to
36826fd
Compare
Required by and used in measurement-kit/libndt#108
Required by and used in measurement-kit/libndt#108
Required by and used in measurement-kit/libndt#108
Required by and used in measurement-kit/libndt#108
This diff converts libndt to use mkbuild as opposed to deprecated subrepositories that we would like to decommission. It includes uncommitted changes to mkbuild required to make this conversion actually possible, see measurement-kit/mkbuild#6. It also removes conditional support for OpenSSL and cURL mainly because that simplifies the migration, _and_ because having such support as optional was optional complexity. This diff additionally changes the testing strategy in Travis to only cover the legacy code path. It appears that there have been changes again and now running several NDT tests from the same invocation of Travis has become problematic. This is reasonably okay because at this stage we're going to use libndt only as an implementation of the legacy protocol. Closes #91. Closes #92.
8d739d1
to
7a12dc8
Compare
A blocker to moving forward this PR is a new failure more for Travis builds:
The |
It seems the afore mentioned blocker is not a real blocker, rather a transient failure of travis that did not appear again when re-running integration tests after some time. |
TODO list for merging this PR
|
Codecov Report
@@ Coverage Diff @@
## master #108 +/- ##
=========================================
- Coverage 86.01% 76.1% -9.92%
=========================================
Files 5 5
Lines 2868 2871 +3
=========================================
- Hits 2467 2185 -282
- Misses 401 686 +285
Continue to review full report at Codecov.
|
* Implement check_{function,symbol}_exists Required by and used in measurement-kit/libndt#108 * macOS: force OpenSSL >= 1.1.1 Required by and used in measurement-kit/libndt#108 * docker/docker.go: go fmt * cmake: add OpenSSL prebuilt for Windows We'll be using a version of LibreSSL that we previously built to have a working, albeit old, "OpenSSL" for Windows. This is fine because we only use this prebuilt library for running continuous integration tests. Because LibreSSL/OpenSSL consists of multiple libraries, it was necessary here to rework how prebuilt libs work.
Not enough bandwidth to do that now. Created new issue: measurement-kit/mkbuild#7. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add some comments supposed to guide review
- cmd: .\.ci\common\script\appveyor.bat | ||
- cmd: cmake -G "%CMAKE_GENERATOR%" . | ||
- cmd: cmake --build . -- /nologo /property:Configuration=Release | ||
- cmd: ctest --output-on-failure -C Release -a |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is exactly how we do it for github.com/measurement-kit/mkcurl
/x64/ | ||
/ZERO_CHECK.vcxproj | ||
/ZERO_CHECK.vcxproj.filters | ||
/build |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Simplified like we go in github.com/measurement-kit/mkcurl
@@ -1,6 +0,0 @@ | |||
[submodule ".ci/common"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Submodules got removed
@@ -10,4 +10,4 @@ matrix: | |||
- env: BUILD_TYPE="ubsan" | |||
- env: BUILD_TYPE="vanilla" | |||
script: | |||
- ./.ci/common/script/travis $BUILD_TYPE | |||
- ./docker.sh $BUILD_TYPE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now using the script generated by mkbuild
@@ -1,46 +1,52 @@ | |||
cmake_minimum_required(VERSION 3.1.0) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This contains a great deal of mechanical changes
This PR aims to release v0.27.0 of libndt where the legacy protocol (which has 100% coverage and has received the most auditing) is ready to be included by MK. After measurement-kit/measurement-kit#1880 and trying to add hacks to make it work, I really started wishing we had replaced MK's NDT code with this code. This is tracked by measurement-kit/measurement-kit#1881.