diff options
author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-06-11 09:48:15 +0200 |
---|---|---|
committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-06-11 09:48:15 +0200 |
commit | 4f2b735472eb921b5edd91c502e0a47d5e4d0cd2 (patch) | |
tree | 35aed5a8f6b650431071e7447565ab6795b790a6 /build/c/makefile.~1~ | |
parent | fix(cog.toml): Update to the newest state (diff) | |
download | flake-templates-4f2b735472eb921b5edd91c502e0a47d5e4d0cd2.tar.gz flake-templates-4f2b735472eb921b5edd91c502e0a47d5e4d0cd2.zip |
chore(build): Update
Diffstat (limited to '')
-rw-r--r-- | build/c/makefile.~1~ | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/build/c/makefile.~1~ b/build/c/makefile.~1~ new file mode 100644 index 0000000..9352bdb --- /dev/null +++ b/build/c/makefile.~1~ @@ -0,0 +1,66 @@ +PREFIX := /usr/local +BINPREFIX := $(DESTDIR)$(PREFIX)/bin +MANPREFIX := $(DESTDIR)$(PREFIX)/share/man/man1 + +BIN_NAME := screenr_spotify +# This version is set automatically on `cog bump --auto`; +BIN_VERSION := "v0.1.0" # GUIDING VERSION STRING + +# The trailing slash is important +BUILD_DIR := ./target/ +BIN_PATH := $(BUILD_DIR)$(BIN_NAME) + + +SRC := $(wildcard src/*.c) +OBJ := $(addprefix $(BUILD_DIR),$(notdir $(SRC:.c=.o))) +DEP := $(addprefix $(BUILD_DIR),$(notdir $(SRC:.c=.d))) + +LIBS := + +ALL_CFLAGS := -O3 -MMD -Wall -Wextra -Wno-unused-parameter $(CFLAGS) $(CPPFLAGS) +ALL_LDFLAGS := $(addprefix -l,$(LIBS)) -L $(LD_LIBRARY_PATH) $(LDFLAGS) + +default: all + +all: $(BIN_NAME) + +$(BIN_NAME): $(OBJ) + $(CC) $^ -o $(addprefix $(BUILD_DIR),$(notdir $(BIN_NAME))) $(ALL_CFLAGS) $(ALL_LDFLAGS) + +$(OBJ): $(SRC) + @mkdir --parents $(BUILD_DIR) + $(CC) -c -o $@ $(addprefix ./src/,$(patsubst %.o,%.c,$(notdir $@))) $(ALL_CFLAGS) + +manual: + mkdir --parents $(BUILD_DIR)docs + pandoc "./docs/$(BIN_NAME).1.md" -s -t man > $(BUILD_DIR)docs/$(BIN_NAME).1 + +.PHONY : clean options install memory_leak_test +options: + @echo "PREFIX = $(PREFIX)" + @echo "BINPREFIX = $(BINPREFIX)" + @echo "MANPREFIX = $(MANPREFIX)" + @echo "" + @echo "BIN_NAME = $(BIN_NAME)" + @echo "BUILD_DIR = $(BUILD_DIR)" + @echo "BIN_PATH = $(BIN_PATH)" + @echo "" + @echo "SRC = $(SRC)" + @echo "OBJ = $(OBJ)" + @echo "DEP = $(DEP)" + @echo "" + @echo "LIBS = $(LIBS)" + @echo "" + @echo "ALL_CFLAGS = $(ALL_CFLAGS)" + @echo "ALL_LDFLAGS = $(ALL_LDFLAGS)" + @echo "" + +clean : + rm --recursive $(BUILD_DIR) + +install: $(BIN_NAME) manual + install -D $(BUILD_DIR)docs/$(BIN_NAME).1 $(MANPREFIX)/$(BIN_NAME); + install -D $(BUILD_DIR)$(BIN_NAME) $(BINPREFIX)/$(BIN_NAME); + +memory_leak_test: + sh ./scripts/valgrind_test.sh $(BIN_NAME) |