From 02da6b01700d4fd6076feed13a0206752e4eb2c8 Mon Sep 17 00:00:00 2001 From: Francesco Cozzuto Date: Thu, 26 Feb 2026 00:42:14 +0100 Subject: [PATCH] Rewrite build scripts --- .gitignore | 14 ++++++----- build.bat | 48 +++++++------------------------------ build.sh | 52 +++++++---------------------------------- lib/http_server.c | 5 +++- src/invariant_checker.c | 4 ++++ 5 files changed, 32 insertions(+), 91 deletions(-) diff --git a/.gitignore b/.gitignore index c30a0a7..c42bbb2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,11 @@ -toastyfs -toastyfs_client -toastyfs_simulation -toastyfs_server -toastyfs_http_proxy -toastyfs_random_client +toasty_simulation +toasty_simulation.exe +toasty +toasty.exe +toasty_random_client +toasty_random_client.exe +toasty_proxy +toasty_proxy.exe *.gcno *.gcda *.gcov diff --git a/build.bat b/build.bat index 2cb122e..2c87c75 100644 --- a/build.bat +++ b/build.bat @@ -1,41 +1,9 @@ -@echo off -setlocal +set QKY_FILES=quakey/src/mockfs.c quakey/src/quakey.c +set LIB_FILES=lib/basic.c lib/byte_queue.c lib/file_system.c lib/http_parse.c lib/http_server.c lib/message.c lib/tcp.c lib/tls_openssl.c lib/tls_schannel.c +set SRC_FILES=src/chunk_store.c src/client.c src/client_table.c src/http_proxy.c src/invariant_checker.c src/log.c src/main.c src/metadata.c src/random_client.c src/server.c +set FLAGS=-Wall -Wextra -ggdb -O0 -Iquakey/include -Iinclude -I. -set INCLUDES=-Iquakey/include -Iinclude -I. -set CFLAGS=-Wall -Wextra -ggdb -O0 - -set LIB_CORE=lib/basic.c lib/byte_queue.c lib/tcp.c -set LIB_FULL=%LIB_CORE% lib/file_system.c lib/message.c -set LIB_TLS=%LIB_FULL% lib/tls_schannel.c -set LIB_HTTP=%LIB_TLS% lib/http_parse.c lib/http_server.c - -set SRC_SERVER=src/server.c src/log.c src/client_table.c src/chunk_store.c src/metadata.c - -set QUAKEY=quakey/src/mockfs.c quakey/src/quakey.c - -rem 1. Simulation -echo Building simulation... -gcc %LIB_FULL% %SRC_SERVER% src/client.c src/random_client.c src/main.c src/invariant_checker.c %QUAKEY% -o toastyfs_simulation.exe %INCLUDES% %CFLAGS% -DMAIN_SIMULATION -DFAULT_INJECTION -lws2_32 -if errorlevel 1 goto :error - -rem 2. Server -echo Building server... -gcc %LIB_TLS% %SRC_SERVER% src/main.c -o toastyfs_server.exe %INCLUDES% %CFLAGS% -DMAIN_SERVER -DTLS_ENABLED -DTLS_SCHANNEL -lws2_32 -lsecur32 -lcrypt32 -lncrypt -if errorlevel 1 goto :error - -rem 3. Random client -echo Building random client... -gcc %LIB_CORE% src/client.c src/random_client.c src/main.c -o toastyfs_random_client.exe %INCLUDES% %CFLAGS% -DMAIN_CLIENT -lws2_32 -if errorlevel 1 goto :error - -rem 4. HTTP proxy -echo Building http proxy... -gcc %LIB_HTTP% src/client.c src/http_proxy.c src/main.c -o toastyfs_http_proxy.exe %INCLUDES% %CFLAGS% -DMAIN_HTTP_PROXY -DTLS_ENABLED -DTLS_SCHANNEL -lws2_32 -lsecur32 -lcrypt32 -lncrypt -if errorlevel 1 goto :error - -echo Done. -goto :eof - -:error -echo Build failed. -exit /b 1 +gcc -o toasty_simulation %LIB_FILES% %SRC_FILES% %QKY_FILES% %FLAGS% -DMAIN_SIMULATION -DFAULT_INJECTION -lws2_32 +gcc -o toasty %LIB_FILES% %SRC_FILES% %FLAGS% -DMAIN_SERVER -lws2_32 +gcc -o toasty_random_client %LIB_FILES% %SRC_FILES% %FLAGS% -DMAIN_CLIENT -lws2_32 +gcc -o toasty_proxy %LIB_FILES% %SRC_FILES% %FLAGS% -DMAIN_HTTP_PROXY -DTLS_ENABLED -DTLS_SCHANNEL -lws2_32 -lsecur32 -lcrypt32 -lncrypt diff --git a/build.sh b/build.sh index 8dcef19..ec4e580 100644 --- a/build.sh +++ b/build.sh @@ -1,45 +1,9 @@ -#!/bin/bash -set -e +QKY_FILES="quakey/src/mockfs.c quakey/src/quakey.c" +LIB_FILES="lib/basic.c lib/byte_queue.c lib/file_system.c lib/http_parse.c lib/http_server.c lib/message.c lib/tcp.c lib/tls_openssl.c lib/tls_schannel.c" +SRC_FILES="src/chunk_store.c src/client.c src/client_table.c src/http_proxy.c src/invariant_checker.c src/log.c src/main.c src/metadata.c src/random_client.c src/server.c" +FLAGS="-Wall -Wextra -ggdb -O0 -Iquakey/include -Iinclude -I." -INCLUDES="-Iquakey/include -Iinclude -I." -CFLAGS="-Wall -Wextra -ggdb -O0" - -LIB_CORE="lib/basic.c lib/byte_queue.c lib/tcp.c" -LIB_FULL="$LIB_CORE lib/file_system.c lib/message.c" -LIB_TLS="$LIB_FULL lib/tls_openssl.c" -LIB_HTTP="$LIB_TLS lib/http_parse.c lib/http_server.c" - -SRC_SERVER="src/server.c src/log.c src/client_table.c src/chunk_store.c src/metadata.c" - -QUAKEY="quakey/src/mockfs.c quakey/src/quakey.c" - -# 1. Simulation -echo "Building simulation..." -gcc $LIB_FULL \ - $SRC_SERVER src/client.c src/random_client.c src/main.c src/invariant_checker.c \ - $QUAKEY \ - -o toastyfs_simulation \ - $INCLUDES $CFLAGS -DMAIN_SIMULATION -DFAULT_INJECTION - -# 2. Server -echo "Building server..." -gcc $LIB_TLS \ - $SRC_SERVER src/main.c \ - -o toastyfs_server \ - $INCLUDES $CFLAGS -DMAIN_SERVER -DTLS_ENABLED -DTLS_OPENSSL -lssl -lcrypto - -# 3. Random client -echo "Building random client..." -gcc $LIB_CORE lib/message.c \ - src/client.c src/random_client.c src/main.c \ - -o toastyfs_random_client \ - $INCLUDES $CFLAGS -DMAIN_CLIENT - -# 4. HTTP proxy -echo "Building http proxy..." -gcc $LIB_HTTP \ - src/client.c src/http_proxy.c src/main.c \ - -o toastyfs_http_proxy \ - $INCLUDES $CFLAGS -DMAIN_HTTP_PROXY -DTLS_ENABLED -DTLS_OPENSSL -lssl -lcrypto - -echo "Done." +gcc -o toasty_simulation $LIB_FILES $SRC_FILES $QKY_FILES $FLAGS -DMAIN_SIMULATION -DFAULT_INJECTION +gcc -o toasty $LIB_FILES $SRC_FILES $FLAGS -DMAIN_SERVER +gcc -o toasty_random_client $LIB_FILES $SRC_FILES $FLAGS -DMAIN_CLIENT +gcc -o toasty_proxy $LIB_FILES $SRC_FILES $FLAGS -DMAIN_HTTP_PROXY -DTLS_ENABLED -DTLS_OPENSSL -lssl -lcrypto diff --git a/lib/http_server.c b/lib/http_server.c index d9c520c..f87ff7e 100644 --- a/lib/http_server.c +++ b/lib/http_server.c @@ -118,7 +118,10 @@ int http_server_listen_tls(HTTP_Server *server, Address addr, return 0; #else - (void)server; (void)addr; (void)port; (void)cert_file; (void)key_file; + (void) server; + (void) addr; + (void) cert_file; + (void) key_file; return -1; #endif } diff --git a/src/invariant_checker.c b/src/invariant_checker.c index 7604ab8..d585004 100644 --- a/src/invariant_checker.c +++ b/src/invariant_checker.c @@ -1,3 +1,5 @@ +#ifdef MAIN_SIMULATION + // VSR invariant checker with external shadow log tracking. // // This file runs in the main simulation loop outside Quakey-scheduled @@ -450,3 +452,5 @@ void invariant_checker_run(InvariantChecker *ic, Server **nodes, int num_nodes, } } } + +#endif // MAIN_SIMULATION \ No newline at end of file