httpd/Makefile
2026-06-24 16:56:11 +02:00

57 lines
1.2 KiB
Makefile

CC = gcc
CFLAGS = -std=c99 -Werror -Wall -Wextra -Wvla -pedantic
LDFLAGS =
LDLIBS =
CFLAGS_DBG = -g
ASAN_DBG_FLAGS = -fsanitize=address
UTILS_SRCS = src/utils/string/string.c \
src/utils/time/fmt_time.c \
src/utils/parsing/words.c \
src/utils/parsing/blanks.c \
src/utils/files/files.c
MODULES_SRCS = src/config/config.c \
src/server/server.c \
src/http/http.c \
src/http/headers.c \
src/logger/logs.c \
src/logger/errors.c \
src/daemon/daemon.c
SRCS = $(UTILS_SRCS) \
$(MODULES_SRCS) \
src/main.c
UTILS_OBJS = ${UTILS_SRCS:.c=.o}
MODULES_OBJS = ${MODULES_SRCS:.c=.o}
OBJS = ${SRCS:.c=.o}
TARGET=httpd
$(TARGET): $(OBJS)
$(CC) -o $@ $(OBJS) $(LDFLAGS) $(LDLIBS)
check: $(TARGET)
cp $(TARGET) tests/$(TARGET)
cd tests
python3 -m venv env
env/bin/python -m pip install requests
env/bin/python -m pip install pytest
env/bin/python -m pip install pytest-timeout
- env/bin/pytest
debug: CFLAGS += $(CFLAGS_DBG)
debug: $(OBJS)
$(CC) -o $(TARGET) $(OBJS) $(LDFLAGS) $(LDLIBS)
asan: CFLAGS += $(CFLAGS_DBG)
asan: LDFLAGS += $(ASAN_DBG_FLAGS)
asan: $(OBJS)
$(CC) -o $(TARGET) $(OBJS) $(LDFLAGS) $(LDLIBS)
clean:
- pkill -9 $(TARGET)
$(RM) tests/$(TARGET) tests/out.log
$(RM) $(TARGET)
$(RM) $(OBJS)