Files
isspam/Makefile
T
BordedDev 1dfc4a495d feat: add build target for borded_cpp and lower cmake minimum version to 3.25
Add a new `build_borded_cpp` make target that compiles the borded_cpp
version of isspam using C++23 with `-Ofast` optimization. Also reduce
the CMake minimum required version from 3.30 to 3.25 in the borded_cpp
CMakeLists.txt to improve compatibility with older CMake installations.
2025-03-20 22:21:33 +00:00

60 lines
1.3 KiB
Makefile

CC = gcc
CFLAGS = -Ofast
all: build run valgrind build_risspam run_risspam build_cpp
build:
@echo "Compiling retoor_c project.".
@$(CC) $(CFLAGS) retoor_c/isspam.c -o isspam
build_cpp:
@echo "Compiling C++ version of isspam."
@g++ -Ofast retoor_c/isspam.cpp -o isspam_cpp
build_borded_cpp:
@echo "Compiling Borded C++ version of isspam."
@g++ -std=c++23 -Ofast borded_cpp/src/main.cpp -o borded_cpp_exec
build_risspam:
@echo "Compiling 12bitfloat_risspam project."
cd 12bitfloat_rust/risspam && cargo run --release && cp target/release/risspam ../../
run: run_spam wl run_not_spam
run_risspam: run_spam_risspam run_not_spam_risspam
format:
clang-format *.c *.h -i
wl:
@echo ""
run_spam:
@./isspam ./spam/*.txt
run_not_spam:
@./isspam ./not_spam/*.txt
run_spam_risspam:
@./risspam ./spam/*.txt
run_not_spam_risspam:
@./risspam ./not_spam/*.txt
valgrind: build
valgrind ./isspam ./spam/*.txt
publish:
@wget https://retoor.molodetz.nl/api/packages/retoor/generic/env.py/1.0.0/env.py --quiet
@wget https://retoor.molodetz.nl/api/packages/retoor/generic/publish/1.0.0/publish --quiet
@chmod +x publish
@./publish isspam
@./publish risspam
@rm publish
@rm env.py
benchmark:
-@rm -rf books
@echo "Extracting books."
@tar -xzf books.tar.gz books/
@echo "Extracted books."
@python bench.py