run: build ./build/main build: mkdir objects gcc build/*.o -o build/main -O3 du -h build/main objects: mkdir cd build && gcc -c -I ../lib -Wall -Werror -fpic ../src/*.c -O3 du -h build/*.o asm: mkdir cd build && gcc -S -masm=intel -I ../lib -Wall -Werror -fpic ../src/*.c -O3 release: clean mkdir build && check-releases mkdir release -p strip build/main cd release && tar -czvf build.tar.gz ../build &> /dev/null cd release && 7za a -tzip build.zip ../build -mx=9 &> /dev/null sha256sum release/* > release/sha256sums.txt check-releases: sha256sum -c release/sha256sums.txt # Checking if sha256sums are valid tar -tf release/build.tar.gz &>/dev/null # Checking if tar is valid 7za t release/build.zip &>/dev/null # Checking if zip is valid mkdir: mkdir build -p clean: rm -rf release rm -rf build hex: build objdump -M intel -d build/main symbols: build nm build/main symbols2: build readelf -s build/main rodata: build objdump -s -j .rodata build/main fmt: fd -e c -e h -x clang-format --verbose -i {}