CC = gcc CFLAGS = -Wall -Wshadow -Werror LDFLAGS = -lc SRCS := $(wildcard src/modules/*.c) OBJS := $(patsubst src/modules/%.c,%,$(SRCS)) %: mkdir -p build/modules $(CC) $(CFLAGS) src/modules/$@.c -o build/modules/$@.so -shared -fPIC -rdynamic all: $(OBJS) gcc -std=c23 -g -o build/twm src/core/*.c $(CFLAGS) $(LDFLAGS) -ldl clean: rm -rf build/*