From dc7406f717e1381c4ecaefb5277a79a3297eae28 Mon Sep 17 00:00:00 2001 From: Elouan Gros Date: Sat, 5 Sep 2026 09:39:49 +0200 Subject: split makefile -> BSDm / GNUm --- BSDmakefile | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 BSDmakefile (limited to 'BSDmakefile') diff --git a/BSDmakefile b/BSDmakefile new file mode 100644 index 0000000..70c5aa7 --- /dev/null +++ b/BSDmakefile @@ -0,0 +1,52 @@ +UNAME := $$( uname -s ) + +.if ${UNAME} == "Linux" +CC=clang --std=gnu11 +.else +CC=clang --std=c11 +.endif +AR=ar ruvcs + +CFLAGS=-Wall -Wextra -Werror -Weverything -pedantic +.ifdef RELEASE +CFLAGS+=-O2 +LFLAGS=-O2 +.else +CFLAGS+=-g +LFLAGS=-g +.endif +LIBS=-lncurses -lform -lm + +TARGET=lc +DEPS=main.c +HEAD= +OBJ=${DEPS:.c=.o} + +LIB=las.a +LDEPS=bullet_loan.c straight_line_loan.c mortgage_loan.c loans.c read_functions.c +LHEAD=contract.h loans.h +LOBJ=${LDEPS:.c=.o} + +.PHONY: all clean release lib $(TARGET) $(LIB) + +all: $(LIB) $(TARGET) + +$(OBJ): $(HEAD) +$(LOBJ): $(LHEAD) + +.c.o: + $(CC) -o $@ -c $< $(CFLAGS) + +$(TARGET): $(OBJ) $(LIB) + $(CC) -o $@ $(OBJ) $(LIB) $(LIBS) $(LFLAGS) + +$(LIB): $(LOBJ) + $(AR) $(LIB) $(LOBJ) + +lib: $(LIB) + +release: + @make -DRELEASE + +clean: + rm -f *.core $(OBJ) $(TARGET) $(LOBJ) $(LIB) -- cgit v1.2.3