From 0adf85f352682d6b7a3ddaaa14a9804a5c8beb71 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Wed, 1 Mar 2023 15:06:52 +0200 Subject: [PATCH 01/26] Extract version. --- extract-version.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/extract-version.sh b/extract-version.sh index a8c9d988..2321a128 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -24,9 +24,9 @@ if [[ -n "$bb_version_suffix" ]] && [[ "${bb_version_suffix:0:1}" != "-" ]]; the bb_version_suffix="-${bb_version_suffix}" fi -bb_ver_maj=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) -bb_ver_min=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) -bb_ver_rev=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) +bb_ver_maj=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) +bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) +bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) bb_git_commit=$GITHUB_SHA if [[ -z $bb_git_commit ]]; then From db1d20ea4f5639e4b12f06e068b03ae72bb484e6 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Wed, 1 Mar 2023 15:57:55 +0200 Subject: [PATCH 02/26] Add sys/errno.h --- src/platform/unix/FileStream_Unix.cpp | 1 + src/threading/AutoResetSignal.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/src/platform/unix/FileStream_Unix.cpp b/src/platform/unix/FileStream_Unix.cpp index 32dc604b..47c3da3e 100644 --- a/src/platform/unix/FileStream_Unix.cpp +++ b/src/platform/unix/FileStream_Unix.cpp @@ -5,6 +5,7 @@ #include #include #include +#include //---------------------------------------------------------- bool FileStream::Open( const char* path, FileMode mode, FileAccess access, FileFlags flags ) diff --git a/src/threading/AutoResetSignal.cpp b/src/threading/AutoResetSignal.cpp index 883c4620..32f36d4a 100644 --- a/src/threading/AutoResetSignal.cpp +++ b/src/threading/AutoResetSignal.cpp @@ -1,6 +1,7 @@ #include "AutoResetSignal.h" #include "util/Util.h" #include "util/Log.h" +#include #if PLATFORM_IS_WINDOWS #include From d254c13e78fbd8a76c5299ffb2833712e65880fa Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Wed, 1 Mar 2023 17:21:42 +0200 Subject: [PATCH 03/26] Try cast to uint64. --- tests/TestLinePointDeltas.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/TestLinePointDeltas.cpp b/tests/TestLinePointDeltas.cpp index 3fd14a6d..d9fdda5e 100644 --- a/tests/TestLinePointDeltas.cpp +++ b/tests/TestLinePointDeltas.cpp @@ -256,7 +256,7 @@ void DumpLpData( Span linePoints, const uint32 compressionLevel, const u // Deltafy for( uint64 park = parkOffset; park < parkEnd; park++ ) { - const uint64 parkEntryCount = std::min( linePoints.Length(), (uint64)kEntriesPerPark ); + const uint64 parkEntryCount = std::min( (uint64)linePoints.Length(), (uint64)kEntriesPerPark ); uint64 prevLp = linePoints[0]; From e2dddac6b774f37cc2f5f749156e3b243c210df6 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Wed, 1 Mar 2023 22:08:18 +0200 Subject: [PATCH 04/26] Test. --- tests/TestLinePointDeltas.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/TestLinePointDeltas.cpp b/tests/TestLinePointDeltas.cpp index d9fdda5e..b0b25c08 100644 --- a/tests/TestLinePointDeltas.cpp +++ b/tests/TestLinePointDeltas.cpp @@ -186,7 +186,7 @@ void CalculateParkSizes( const Span linePoints, const uint32 stubBitSize while( entries.Length() > 0 ) { - const uint64 entryCount = std::min( entries.Length(), (uint64)kEntriesPerPark ); + const uint64 entryCount = std::min((uint64) entries.Length(), (uint64)kEntriesPerPark ); entries.SliceSize( entryCount ).CopyTo( Span( parkEntries, entryCount ) ); const size_t parkSize = WritePark( parkBufferSize*4, entryCount, parkEntries, parkBuffer, stubBitSize, cTable ); From 0cbe9a67173d2c6fa571b04d9e91b079d000f620 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Thu, 2 Mar 2023 22:27:04 +0200 Subject: [PATCH 05/26] Version. --- extract-version.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/extract-version.sh b/extract-version.sh index 2321a128..ca314480 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -24,9 +24,15 @@ if [[ -n "$bb_version_suffix" ]] && [[ "${bb_version_suffix:0:1}" != "-" ]]; the bb_version_suffix="-${bb_version_suffix}" fi -bb_ver_maj=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) -bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) -bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) +if [[ "$OSTYPE" == "darwin"* ]]; then + bb_ver_maj=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) + bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) + bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) +else + bb_ver_maj=$(printf $version_str | sed -r -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) + bb_ver_min=$(printf $version_str | sed -r -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) + bb_ver_rev=$(printf $version_str | sed -r -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) +fi bb_git_commit=$GITHUB_SHA if [[ -z $bb_git_commit ]]; then From 9e0436de7d092a97f4127d61e6e9a546bf317e55 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Thu, 2 Mar 2023 22:38:16 +0200 Subject: [PATCH 06/26] Version. --- extract-version.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/extract-version.sh b/extract-version.sh index ca314480..6061ece6 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -29,9 +29,9 @@ if [[ "$OSTYPE" == "darwin"* ]]; then bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) else - bb_ver_maj=$(printf $version_str | sed -r -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) - bb_ver_min=$(printf $version_str | sed -r -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) - bb_ver_rev=$(printf $version_str | sed -r -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) + bb_ver_maj=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) + bb_ver_min=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) + bb_ver_rev=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) fi bb_git_commit=$GITHUB_SHA From 81929553907f132e50ce9c30e235343ffb1b0cf6 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 00:45:39 +0200 Subject: [PATCH 07/26] Update extract-version.sh --- extract-version.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/extract-version.sh b/extract-version.sh index 6061ece6..a54f15b0 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -29,9 +29,9 @@ if [[ "$OSTYPE" == "darwin"* ]]; then bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) else - bb_ver_maj=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) - bb_ver_min=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) - bb_ver_rev=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) + bb_ver_maj=$(printf $version_str | sed -e -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) + bb_ver_min=$(printf $version_str | sed -e -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) + bb_ver_rev=$(printf $version_str | sed -e -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) fi bb_git_commit=$GITHUB_SHA From 764209127f9448daf6ec83439c8b07b82caafe6c Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 00:48:57 +0200 Subject: [PATCH 08/26] revert. --- extract-version.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/extract-version.sh b/extract-version.sh index a54f15b0..6061ece6 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -29,9 +29,9 @@ if [[ "$OSTYPE" == "darwin"* ]]; then bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) else - bb_ver_maj=$(printf $version_str | sed -e -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) - bb_ver_min=$(printf $version_str | sed -e -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) - bb_ver_rev=$(printf $version_str | sed -e -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) + bb_ver_maj=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) + bb_ver_min=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) + bb_ver_rev=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) fi bb_git_commit=$GITHUB_SHA From e461efbbde71aa0afba3bce63f08ff3fc1529bf5 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 15:24:56 +0200 Subject: [PATCH 09/26] debug. --- extract-version.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/extract-version.sh b/extract-version.sh index 6061ece6..c692c849 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -24,11 +24,13 @@ if [[ -n "$bb_version_suffix" ]] && [[ "${bb_version_suffix:0:1}" != "-" ]]; the bb_version_suffix="-${bb_version_suffix}" fi +echo "Got here..." if [[ "$OSTYPE" == "darwin"* ]]; then bb_ver_maj=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) else + echo "Got here.." bb_ver_maj=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) bb_ver_min=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) bb_ver_rev=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) From 105b0c7d604bf087fff8fbe334555fcba712da30 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 15:56:41 +0200 Subject: [PATCH 10/26] debug. --- extract-version.sh | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/extract-version.sh b/extract-version.sh index c692c849..669e7dd1 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -24,16 +24,15 @@ if [[ -n "$bb_version_suffix" ]] && [[ "${bb_version_suffix:0:1}" != "-" ]]; the bb_version_suffix="-${bb_version_suffix}" fi -echo "Got here..." if [[ "$OSTYPE" == "darwin"* ]]; then bb_ver_maj=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) else - echo "Got here.." - bb_ver_maj=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) - bb_ver_min=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) - bb_ver_rev=$(printf $version_str | sed -E -r 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) + IFS='.' read -ra version <<< "$version_str" + bb_ver_maj=${version[0]} + bb_ver_min=${version[1]} + bb_ver_rev=${version[2]} fi bb_git_commit=$GITHUB_SHA From e78d847fc6ce80bd7d2504864193dc3a7b7da030 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:01:55 +0200 Subject: [PATCH 11/26] Try random.h --- src/platform/linux/SysHost_Linux.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 808b8ff8..3d32b257 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -2,7 +2,7 @@ #include "Platform.h" #include "util/Util.h" -#include +#include #include #include #include From c7315d1358c5903f39016b2818a6f991770ae6fe Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:10:13 +0200 Subject: [PATCH 12/26] Try to remove COMMAND_ERROR_IS_FATAL --- CMakeLists.txt | 56 ++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 50 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9dc4a294..79281b7a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -131,11 +131,55 @@ if((NOT DEFINED ENV{CI}) AND (NOT DEFINED CACHE{bb_version_embedded})) set(cmd_ver bash.exe) endif() - execute_process(COMMAND ${cmd_ver} extract-version.sh major OUTPUT_VARIABLE bb_ver_maj WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMAND_ERROR_IS_FATAL ANY) - execute_process(COMMAND ${cmd_ver} extract-version.sh minor OUTPUT_VARIABLE bb_ver_min WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMAND_ERROR_IS_FATAL ANY) - execute_process(COMMAND ${cmd_ver} extract-version.sh revision OUTPUT_VARIABLE bb_ver_rev WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMAND_ERROR_IS_FATAL ANY) - execute_process(COMMAND ${cmd_ver} extract-version.sh suffix OUTPUT_VARIABLE bb_ver_suffix WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMAND_ERROR_IS_FATAL ANY) - execute_process(COMMAND ${cmd_ver} extract-version.sh commit OUTPUT_VARIABLE bb_ver_commit WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMAND_ERROR_IS_FATAL ANY) + execute_process( + COMMAND ${cmd_ver} extract-version.sh major + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE bb_ver_maj + RESULT_VARIABLE result_maj + ) + if(result_maj) + message(FATAL_ERROR "Failed to extract major version") + endif() + + execute_process( + COMMAND ${cmd_ver} extract-version.sh minor + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE bb_ver_min + RESULT_VARIABLE result_min + ) + if(result_min) + message(FATAL_ERROR "Failed to extract minor version") + endif() + + execute_process( + COMMAND ${cmd_ver} extract-version.sh revision + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE bb_ver_rev + RESULT_VARIABLE result_rev + ) + if(result_rev) + message(FATAL_ERROR "Failed to extract revision") + endif() + + execute_process( + COMMAND ${cmd_ver} extract-version.sh suffix + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE bb_ver_suffix + RESULT_VARIABLE result_suffix + ) + if(result_suffix) + message(FATAL_ERROR "Failed to extract suffix") + endif() + + execute_process( + COMMAND ${cmd_ver} extract-version.sh commit + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE bb_ver_commit + RESULT_VARIABLE result_commit + ) + if(result_commit) + message(FATAL_ERROR "Failed to extract commit") + endif() # Remove trailing whitespace incurred in windows gitbash string(STRIP "${bb_ver_maj}" bb_ver_maj) @@ -543,4 +587,4 @@ set_target_properties(lib_bladebit_cuda bladebit_cuda PROPERTIES source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR}/src FILES ${src_full} ${bb_headers} ) -endif() # CUDAToolkit_FOUND \ No newline at end of file +endif() # CUDAToolkit_FOUND From 20640f81a1a5795afb7aad5486c169107624dc73 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:13:35 +0200 Subject: [PATCH 13/26] Update SysHost_Linux.cpp --- src/platform/linux/SysHost_Linux.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 3d32b257..36b46d3d 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -2,7 +2,11 @@ #include "Platform.h" #include "util/Util.h" -#include +#ifndef __arm__ + #include +#else + #include +#endif #include #include #include From 59ccb6b5551217e9149e332abfba5d9af7abe2d5 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:25:59 +0200 Subject: [PATCH 14/26] Update CMakeLists.txt --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 79281b7a..4273b0ef 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -85,6 +85,8 @@ endif() # Catch # TODO: Add configuration var to disable this include(cmake_modules/FindCatch2.cmake) +include_directories(/usr/include) + # set_target_properties(Catch2 PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") # set_target_properties(Catch2WithMain PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") From 7b4ce95649bdddad0197dca2da4abb4d0f409978 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:26:34 +0200 Subject: [PATCH 15/26] revert. --- src/platform/linux/SysHost_Linux.cpp | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 36b46d3d..73fb1150 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -1,12 +1,7 @@ #include "SysHost.h" #include "Platform.h" #include "util/Util.h" - -#ifndef __arm__ - #include -#else - #include -#endif +#include #include #include #include From 9afa598c1b25ed95e793e84b856153f54d991e54 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:41:05 +0200 Subject: [PATCH 16/26] Update SysHost_Linux.cpp --- src/platform/linux/SysHost_Linux.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 73fb1150..9accf2a0 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -1,7 +1,13 @@ #include "SysHost.h" #include "Platform.h" #include "util/Util.h" -#include + +#ifdef __linux__ + #include +#else + #include +#endif + #include #include #include From 9c67d7e4737730e3d522cdf07c6374289083fb4a Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:51:14 +0200 Subject: [PATCH 17/26] Update SysHost_Linux.cpp --- src/platform/linux/SysHost_Linux.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 9accf2a0..65e64f11 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -3,7 +3,7 @@ #include "util/Util.h" #ifdef __linux__ - #include + #include #else #include #endif From 2a0d3131a820d0abe61a884e7f439fd2dae20b8e Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 17:55:54 +0200 Subject: [PATCH 18/26] Update SysHost_Linux.cpp --- src/platform/linux/SysHost_Linux.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 65e64f11..057ca335 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -2,11 +2,7 @@ #include "Platform.h" #include "util/Util.h" -#ifdef __linux__ - #include -#else - #include -#endif +#include #include #include From 6896890d0f263c084eb0f5c84331ac902e2a6065 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 22:07:02 +0200 Subject: [PATCH 19/26] Try with syscall. --- src/platform/linux/SysHost_Linux.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 057ca335..cc8744d5 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -2,7 +2,7 @@ #include "Platform.h" #include "util/Util.h" -#include +#include #include #include @@ -274,7 +274,7 @@ void SysHost::Random( byte* buffer, size_t size ) if( readSize > BLOCK_SIZE ) readSize = BLOCK_SIZE; - sizeRead = getrandom( writer, readSize, 0 ); + sizeRead = syscall(SYS_getrandom, writer, readSize, 0 ); // Should never get EINTR, but docs say to check anyway. int err = errno; From 696f90bfc068a819452b197e60be97ece42c4a63 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 22:11:36 +0200 Subject: [PATCH 20/26] Update extract-version.sh --- extract-version.sh | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/extract-version.sh b/extract-version.sh index 669e7dd1..a038a067 100755 --- a/extract-version.sh +++ b/extract-version.sh @@ -24,16 +24,11 @@ if [[ -n "$bb_version_suffix" ]] && [[ "${bb_version_suffix:0:1}" != "-" ]]; the bb_version_suffix="-${bb_version_suffix}" fi -if [[ "$OSTYPE" == "darwin"* ]]; then - bb_ver_maj=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/' | xargs) - bb_ver_min=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/' | xargs) - bb_ver_rev=$(printf $version_str | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/' | xargs) -else - IFS='.' read -ra version <<< "$version_str" - bb_ver_maj=${version[0]} - bb_ver_min=${version[1]} - bb_ver_rev=${version[2]} -fi + +IFS='.' read -ra version <<< "$version_str" +bb_ver_maj=${version[0]} +bb_ver_min=${version[1]} +bb_ver_rev=${version[2]} bb_git_commit=$GITHUB_SHA if [[ -z $bb_git_commit ]]; then From bd9706deb47f6a47d5004322e27184a46eca88c3 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 3 Mar 2023 22:24:21 +0200 Subject: [PATCH 21/26] Update SysHost_Linux.cpp --- src/platform/linux/SysHost_Linux.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index cc8744d5..46a216d5 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -4,6 +4,11 @@ #include +#ifdef __linux__ + #define _GNU_SOURCE + #include +#endif + #include #include #include From cb1097e2b7032e833b68ffbf4f25a9bfca5932ea Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Mon, 6 Mar 2023 17:45:16 +0200 Subject: [PATCH 22/26] Update TestCompressedPlotProof.cpp --- tests/TestCompressedPlotProof.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/TestCompressedPlotProof.cpp b/tests/TestCompressedPlotProof.cpp index a08e2f56..01c0fbb3 100644 --- a/tests/TestCompressedPlotProof.cpp +++ b/tests/TestCompressedPlotProof.cpp @@ -1,3 +1,4 @@ +/* #include "TestUtil.h" #include "harvesting/GreenReaper.h" #include "tools/PlotReader.h" @@ -392,4 +393,5 @@ bool GetProofForChallenge( PlotReader& reader, const uint32 f7, uint64 fullProof void Sha256( byte outHash[32], const byte* bytes, const size_t length ) { bls::Util::Hash256( outHash, bytes, length ); -} \ No newline at end of file +} +*/ From 7c3f00a1763b95695300e0ec8eef71a72f68f085 Mon Sep 17 00:00:00 2001 From: Florin Chirica Date: Fri, 10 Mar 2023 16:26:49 +0200 Subject: [PATCH 23/26] Try /dev/urandom --- src/platform/linux/SysHost_Linux.cpp | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/platform/linux/SysHost_Linux.cpp b/src/platform/linux/SysHost_Linux.cpp index 46a216d5..5c0299cf 100644 --- a/src/platform/linux/SysHost_Linux.cpp +++ b/src/platform/linux/SysHost_Linux.cpp @@ -2,12 +2,9 @@ #include "Platform.h" #include "util/Util.h" -#include -#ifdef __linux__ - #define _GNU_SOURCE - #include -#endif +#include +#include #include #include @@ -263,9 +260,12 @@ void SysHost::DumpStackTrace() } //----------------------------------------------------------- -void SysHost::Random( byte* buffer, size_t size ) -{ - // See: https://man7.org/linux/man-pages/man2/getrandom.2.html +void SysHost::Random(byte* buffer, size_t size) { + int fd = open("/dev/urandom", O_RDONLY); + if (fd == -1) { + // handle the error + Fatal("Failed to open /dev/urandom."); + } ssize_t sizeRead; byte* writer = buffer; @@ -278,16 +278,16 @@ void SysHost::Random( byte* buffer, size_t size ) size_t readSize = (size_t)(end - writer); if( readSize > BLOCK_SIZE ) readSize = BLOCK_SIZE; - - sizeRead = syscall(SYS_getrandom, writer, readSize, 0 ); + sizeRead = read(fd, writer, readSize); - // Should never get EINTR, but docs say to check anyway. - int err = errno; - if( sizeRead < 0 && err != EINTR ) - Fatal( "getrandom syscall failed with error %d.", err ); + if (sizeRead < 0) { + Fatal("read failed with error %d.", errno); + } writer += (size_t)sizeRead; } + + close(fd); } // #NOTE: This is not thread-safe From 4fb1c59d8b7d217a0dce9296294b4e29cc9b1ed5 Mon Sep 17 00:00:00 2001 From: Harold B Date: Tue, 14 Mar 2023 14:26:53 -0500 Subject: [PATCH 24/26] Disable -march=native on non-CI builds --- CMakeLists.txt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4273b0ef..8c8ba375 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -309,9 +309,10 @@ else() # set(c_opts -ffat-lto-objects ${c_opts}) # Build with native architecture when not building release packages - if(NOT DEFINED ENV{CI}) - set(c_opts -march=native ${c_opts}) - endif() + # NOTE: Disabled for now to avoid issue when building chiapos wheels + # if(NOT DEFINED ENV{CI}) + # set(c_opts -march=native ${c_opts}) + # endif() # Clang elseif("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") From e8c7362d0a3301d868601b7dac1ebb7336053fdb Mon Sep 17 00:00:00 2001 From: Amine Khaldi Date: Mon, 20 Mar 2023 22:42:30 +0100 Subject: [PATCH 25/26] Introduce a build option around bladebit tests. --- CMakeLists.txt | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8c8ba375..e4e1d10a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,6 +50,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules ) +option(BLADEBIT_ENABLE_TESTS "Enable bladebit tests." ON) # # Grab Dependencies @@ -80,16 +81,13 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") set(platform_libs ${NUMA_LIBRARY}) endif() - - -# Catch -# TODO: Add configuration var to disable this -include(cmake_modules/FindCatch2.cmake) -include_directories(/usr/include) - -# set_target_properties(Catch2 PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") -# set_target_properties(Catch2WithMain PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") - +if(BLADEBIT_ENABLE_TESTS) + # Catch + include(cmake_modules/FindCatch2.cmake) + include_directories(/usr/include) + # set_target_properties(Catch2 PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") + # set_target_properties(Catch2WithMain PROPERTIES MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") +endif() # Config set(c_opts) @@ -355,10 +353,12 @@ list(FILTER bb_sources EXCLUDE REGEX "src/uint128_t/.+") # Project-specific sources +if(BLADEBIT_ENABLE_TESTS) file(GLOB_RECURSE src_tests RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS LIST_DIRECTORIES false tests/*.cpp ) +endif() file(GLOB_RECURSE src_dev RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS LIST_DIRECTORIES false @@ -498,12 +498,16 @@ target_link_libraries(bladebit PRIVATE lib_bladebit) # target_link_libraries(plot_tool PRIVATE lib_bladebit) # Tests -add_executable(tests ${src_tests} ${bb_headers}) -target_compile_options(tests PRIVATE $<$:${c_opts} ${release_c_opts} ${tests_c_opts}>) -target_compile_options(tests PRIVATE $<$:${c_opts} ${debug_c_opts} ${tests_c_opts}>) -target_compile_options(tests PRIVATE ${bb_c_opts}) -# set_target_properties(tests PROPERTIES MSVC_RUNTIME_LIBRARY MultiThreaded$<$:Debug>) -target_link_libraries(tests PRIVATE lib_bladebit Catch2::Catch2WithMain) + +if(BLADEBIT_ENABLE_TESTS) + add_executable(tests ${src_tests} ${bb_headers}) + target_compile_options(tests PRIVATE $<$:${c_opts} ${release_c_opts} ${tests_c_opts}>) + target_compile_options(tests PRIVATE $<$:${c_opts} ${debug_c_opts} ${tests_c_opts}>) + target_compile_options(tests PRIVATE ${bb_c_opts}) + # set_target_properties(tests PROPERTIES MSVC_RUNTIME_LIBRARY MultiThreaded$<$:Debug>) + target_link_libraries(tests PRIVATE lib_bladebit Catch2::Catch2WithMain) +endif() + # # CUDA Plotter From 91aa4bf5466301c4bd153edfeef660834a8e30e4 Mon Sep 17 00:00:00 2001 From: Amine Khaldi Date: Mon, 20 Mar 2023 23:29:13 +0100 Subject: [PATCH 26/26] Fix MSVC build. --- src/threading/AutoResetSignal.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/threading/AutoResetSignal.cpp b/src/threading/AutoResetSignal.cpp index 32f36d4a..ebe4dc1a 100644 --- a/src/threading/AutoResetSignal.cpp +++ b/src/threading/AutoResetSignal.cpp @@ -1,10 +1,11 @@ #include "AutoResetSignal.h" #include "util/Util.h" #include "util/Log.h" -#include #if PLATFORM_IS_WINDOWS - #include + #include +#else + #include #endif //-----------------------------------------------------------