update to allow mingw support#282
update to allow mingw support#282ryancinsight wants to merge 2 commits intomicrosoft:masterfrom ryancinsight:master
Conversation
Add <utility> for mingw support
|
@SchrodingerZhu this should correct snmalloc-rs build on mingw, I'll check if any of my cmake flags contribute and create a pull request if they do. |
Add string for mingw support
|
hi, I am very glad to see this. But MinGW seems to have other issues: it still does not destroy the static TLS correctly when I tried it out last week. Did you try to run the full set of test cases with MinGW (especially the func-malloc series) ? If they passed, could you provide the version info of your tool chain? |
(base) D:\fork\snmalloc-rs\snmalloc-sys\snmalloc-build>ctest 88% tests passed, 6 tests failed out of 51 Total Test time (real) = 70.91 sec The following tests FAILED: running allocation tests with cargo: running 3 tests test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests snmalloc-rs running 1 test test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.70s and I just updated to rust 1.50 using windows 10 and msys2/mingw, which technically cmake-rs will choose msys compiler toolchain |
|
sorry to see that. so the problem actually remains. did you check #217? it can actually be rebased onto current master directly. And it fixes one problem: ctllz. But yes, last time I tested it, the source need to add the additional cstring header. Perhaps this pr is duplicated with #217. Thanks for your trying out thou. |
|
well these are just dll errors, this should be an easy fix: Dump of file perf-contention-1.exe File Type: EXECUTABLE IMAGE Image has the following dependencies: Summary |
|
should only be first_func now, error is allocator in use: 1/51 Test #1: perf-contention-1 ................ Passed 0.86 sec 94% tests passed, 3 tests failed out of 51 Total Test time (real) = 9.69 sec The following tests FAILED: |
|
@SchrodingerZhu thanks for the heads up, Looks like you made more changes than needed but I'll close since final issue is same on only func-first_operations failing. |
mingw doesn't work well with gets so adding string for memset and utility for std::pair corrects build issues.