I'd like people to contribute to this thread, telling us what their machine's specs are and how long it takes to build Cuberite on that machine (from scratch), plus what compiler they use. In the end, it might be a good benchmark for deciding what kind of hardware to get for upgrades (there are not too many compilation-related benchmarks in the real world).
The results
are in this Google Sheets document: https://docs.google.com/spreadsheets/d/1...sp=sharing
On Windows, use this script to measure the time (attached as timed_run.zip):
On Linux, try this script (courtesy of @paradise from Discord and @Mathias; attached as measure_time.zip):
The results
are in this Google Sheets document: https://docs.google.com/spreadsheets/d/1...sp=sharing
On Windows, use this script to measure the time (attached as timed_run.zip):
@echo off echo Started: %time% > time.log echo Cloning from git... mkdir Cuberite cd Cuberite git clone --recurse-submodules https://github.com/cuberite/cuberite . if errorlevel 1 goto Error echo Cloned: %time% >> ..\time.log echo Running CMake... mkdir VS cd VS cmake -DBUILD_TOOLS=1 -DSELF_TEST=1 .. if errorlevel 1 goto Error echo CMaked: %time% >> ..\..\time.log echo Building... cmake --build . if errorlevel 1 goto Error cd ..\.. echo Built: %time% >> time.log echo All done successfully goto Finished :Error echo An error occurred, timings are invalid :Finished
On Linux, try this script (courtesy of @paradise from Discord and @Mathias; attached as measure_time.zip):
#!/usr/bin/env bash echo "Started: `date +%H:%M:%S`" > time.log echo "Cloning from git..." mkdir Cuberite cd Cuberite git clone --recurse-submodules https://github.com/cuberite/cuberite . || (echo 'An error occurred, timings are invalid' && exit 1) echo "Cloned: `date +%H:%M:%S`" >> ../time.log echo "Running CMake..." mkdir VS cd VS cmake -DBUILD_TOOLS=1 -DSELF_TEST=1 .. || (echo 'An error occurred, timings are invalid' && exit 1) echo "CMaked: `date +%H:%M:%S`" >> ../../time.log echo "Building..." MAKEFLAGS="" cmake --build . -j $(nproc) || (echo 'An error occurred, timings are invalid' && exit 1) cd ../.. echo "Built: `date +%H:%M:%S`" >> time.log echo "All done successfully"