Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Make (push) Successful in 9s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-CMake (push) Successful in 12s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Meson (push) Successful in 11s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Make-Without-sqlite3 (push) Successful in 9s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-CMake-Without-sqlite3 (push) Successful in 14s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Meson-Without-sqlite3 (push) Successful in 12s
41 lines
1.0 KiB
Makefile
41 lines
1.0 KiB
Makefile
CC = gcc
|
|
CFLAGS = -Wall -g -std=gnu2x -DMG_TLS=MG_TLS_OPENSSL -ffunction-sections -fdata-sections
|
|
LDFLAGS =
|
|
INCLUDES = -I./src/lib -I./src
|
|
SRCS = $(wildcard src/lib/*.c src/file_db/*.c src/*.c src/config/*.c src/database/*.c src/api/*.c src/security/*.c src/utils/*.c)
|
|
OBJS = $(SRCS:.c=.o)
|
|
TARGET = auth_service
|
|
BUILD_DIR=./build
|
|
CROSS_COMPILE =
|
|
LIBS = -lpthread -lcrypto -lssl
|
|
USE_SQLITE3 ?= 0
|
|
WERROR ?= 0
|
|
|
|
ifeq ($(shell uname), Linux)
|
|
LDFLAGS += -Wl,--gc-sections
|
|
endif
|
|
|
|
ifeq ($(USE_SQLITE3), 1)
|
|
CFLAGS += -DUSE_SQLITE3
|
|
LIBS += -lsqlite3
|
|
SRCS = $(wildcard src/lib/*.c src/sqlite_db/*.c src/file_db/*.c src/*.c src/config/*.c src/database/*.c src/api/*.c src/security/*.c src/utils/*.c)
|
|
endif
|
|
|
|
ifeq ($(WERROR), 1)
|
|
CFLAGS += -Werror
|
|
endif
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(OBJS)
|
|
$(CROSS_COMPILE)$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)
|
|
|
|
%.o: %.c
|
|
$(CROSS_COMPILE)$(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@
|
|
|
|
clean:
|
|
rm -f $(OBJS) $(TARGET) $(shell find . -type f -name '*.log') users.db users_db.json
|
|
|
|
test: $(TARGET)
|
|
bash ./tests.sh
|