build scripts - grimoire - dark wiki & knowledge base
(HTM) git clone git@git.drkhsh.at/codex.git
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 572862ead991fb28e4729fff189f9292e392a5c4
(DIR) parent f5f4d33f3fbabe7c419e235f7e27796c45f087bc
(HTM) Author: drkhsh <me@drkhsh.at>
Date: Sat, 26 Jul 2025 01:08:44 +0200
build scripts
Diffstat:
M src/Makefile | 27 ++++++++++++++++++++++++---
M src/build.sh | 15 +++------------
2 files changed, 27 insertions(+), 15 deletions(-)
---
(DIR) diff --git a/src/Makefile b/src/Makefile
@@ -1,4 +1,25 @@
-all:
- gcc -Wall -pedantic -Os -o bin/oscean main.c
+.POSIX:
-.PHONY: all
+all: site
+system: bin/oscean site
+
+bin/oscean: main.c
+ mkdir -p bin
+ clang-format -i main.c
+ rm -f ./bin/oscean
+ clang -std=c89 -DDEBUG -Wall -Wno-unknown-pragmas -Wpedantic -Wshadow -Wuninitialized -Wextra -Werror=implicit-int -Werror=incompatible-pointer-types -Werror=int-conversion -Wvla -g -Og -fsanitize=address -fsanitize=undefined main.c -o bin/oscean
+
+site:
+ rm -rf ../site
+ mkdir ../site
+ ./bin/oscean
+
+clean:
+ rm -rf ../site
+ mkdir ../site
+ rm -f bin/oscean
+
+watch:
+ find . -name '*.ndtl' -o -name '*.tbtl' -o -name '*.txt' -o -name '*.html' | entr sh -c "make && pkill -SIGHUP surf"
+
+.PHONY: all system site clean watch
(DIR) diff --git a/src/build.sh b/src/build.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
# Setup
mkdir -p bin
@@ -7,21 +7,12 @@ mkdir -p bin
rm -rf ../site
mkdir ../site
-# Projects
-if [ "${1}" = '--projects' ];
-then
- clang-format -i projects/marbles/marbles.c
- rm -f ./bin/marbles
- cc projects/marbles/marbles.c -std=c89 -Os -DNDEBUG -g0 -s -Wall -Wno-unknown-pragmas -o bin/marbles
- ./bin/marbles inc/html/death.htm
-fi
-
# Linux
-if [ "${1}" = '--system' ];
+if [ "${1}" = '--system' ];
then
clang-format -i main.c
rm -f ./bin/oscean
- cc -std=c89 -DDEBUG -Wall -Wno-unknown-pragmas -Wpedantic -Wshadow -Wuninitialized -Wextra -Werror=implicit-int -Werror=incompatible-pointer-types -Werror=int-conversion -Wvla -g -Og -fsanitize=address -fsanitize=undefined main.c -o bin/oscean
+ clang -std=c89 -DDEBUG -Wall -Wno-unknown-pragmas -Wpedantic -Wshadow -Wuninitialized -Wextra -Werror=implicit-int -Werror=incompatible-pointer-types -Werror=int-conversion -Wvla -g -Og -fsanitize=address -fsanitize=undefined main.c -o bin/oscean
fi
# Run