Comments (6)
FWIW I have a port for Windows based on the pthread library at http://locklessinc.com/downloads/ (BSD 3-clause). Not quite ready for a pull request, but getting there.
from benchmark.
#64 has landed which gives us a working mingw port. does that help?
from benchmark.
@dominichamon, I tried having a go at getting VS2013 up and going but there are a few things missing with the C++11 support. I'll just brain dump here in case anyone can pick it up:
- gettimeofday needs to be polyfilled in
walltime.cc
(gm|local)time_r
needs to be changed for(gm|local)time_s
. arguments to swap over.constexpr
support is sketchy so things don't compilenoexcept
wasn't supportedCMakeList.txt
needsif (MSVC)
to avoid all the GCC/Clang flag checks (not an issue as they fail gracefully, just looks weird)- By default
cmake
adds/Wall
which turns on warnings that even the STL that is shipped with Visual Studio doesn't compile with. I'd suggest starting with/W0
and slowly cranking that up to/W4
putting the necessary/wdXXXX
in theCMakeList.txt
or thepragma warning()
around the offending areas. It would be great to have a clean MSVC build at high warning levels as it might catch things that GCC/Clang might miss
It's almost there, just needs a bit of love. cmake -G "Visual Studio 12 2013"
gets things going.
Once the Visual Studio build is going the appveyor support to continuously check for MSVC support can be added by implementing msbuild
like cppformat
does here. Will just have to add the necessary lines to appveyor.yml
when if "%compiler_name%"=="msvc"
.
from benchmark.
Relate to PR #175
from benchmark.
Closing since the Windows build seems to be working and Appveyor is testing it on every commit.
from benchmark.
Super cool! Thank you!
from benchmark.
Related Issues (20)
- [BUG] Result of run with --benchmark_list_tests=true may not show on console
- [FR] JSON AoS<->SoA redesign HOT 6
- Migrate to bzlmod HOT 9
- [BUG] 1.8.3: build fails with gcc 14.x HOT 4
- [FR] Add `CMake` option to disable `benchmark_main` target HOT 2
- [BUG] Weird behavior of bytes_per_second and items_per_second HOT 8
- [FR] cp312 release on pypi
- [BUG] Reported iterations per run when using repetitions always the same value? HOT 3
- [BUG] With NDEBUG, early-returning without SkipWithError leads to indefinite retries HOT 5
- Complexity calculation does not work for manual timing
- [FR] Reuse benchmark functions with arbitrary fixture templates
- [FR] BENCHMARK_VERSION is not set by default HOT 4
- [BUG] Iteration count in Report looks suspicious HOT 5
- [Q] Need help with understanding the results HOT 1
- [BUG] benchmark::DoNotOptimize does not prevent a reference from being optimized away. HOT 4
- [FR]disable threads for wasm? HOT 9
- [FR] Remove COMPILER_IBMXL macro for z/OS HOT 4
- [BUG] Fixture test with StrictMock crashed HOT 2
- [BUG] HOT 2
- [FR] possible to stop benchmark loop from doing a memory allocation at the end? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from benchmark.