From 390cbf31635951e46a49ed8657cd2a1635757f19 Mon Sep 17 00:00:00 2001 From: yuzu-eva Date: Sun, 8 Jun 2025 14:33:02 +0200 Subject: changed project structure, adjusted Makefile --- Makefile | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index aaf0f79..47d1b05 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,9 @@ SHELL = /bin/sh CC = gcc +SRC_DIR := src +BUILD_DIR := build + PREFIX = /usr/local BINDIR = /bin @@ -9,8 +12,8 @@ INSTALL_DATA = install -m 644 CFLAGS = -Wall -Wextra LIBS = -lsqlite3 -SRC = main.c dbhandling.c enum.c -OBJ = ${SRC:.c=.o} +SRC = ${wildcard ${SRC_DIR}/*.c} +OBJ = ${SRC:${SRC_DIR}/%.c=${BUILD_DIR}/%.o} BIN = libman all: options ${BIN} @@ -20,17 +23,20 @@ options: @echo "CFLAGS = ${CFLAGS}" @echo "CC = ${CC}" -.c.o: - ${CC} -c ${CFLAGS} ${SRC} +${BUILD_DIR}/%.o: ${SRC_DIR}/%.c | ${BUILD_DIR} + ${CC} ${CFLAGS} -c $< -o $@ + +libman: ${OBJ} | ${BUILD_DIR} + ${CC} ${CFLAGS} ${LIBS} ${OBJ} -o ${BUILD_DIR}/${BIN} -libman: .c.o - ${CC} ${CFLAGS} ${LIBS} ${OBJ} -o ${BIN} +${BUILD_DIR}: + mkdir -p $@ install: - ${INSTALL_PROGRAM} ${BIN} ${PREFIX}${BINDIR}/${BIN} + ${INSTALL_PROGRAM} ${BUILD_DIR}/${BIN} ${PREFIX}${BINDIR}/${BIN} clean: - ${RM} ${BIN} + ${RM} ${BUILD_DIR}/${BIN} ${RM} ${OBJ} uninstall: -- cgit v1.2.3