ROOT_DIR := $(abspath ..)

CC := gcc

CXXFLAGS := -std=c++17 \
            -Wall \
            -Wextra \
            -Werror \
            -fPIC \
            -I$(ROOT_DIR)/core/include \
            -Iinclude

LDFLAGS := -lstdc++

BUILD_DIR := $(ROOT_DIR)/build

TARGET := $(BUILD_DIR)/liblogger.so

SRC := src/logger.cpp


.PHONY: all clean


all: $(TARGET)


$(TARGET): $(SRC)
	@mkdir -p $(BUILD_DIR)

	$(CC) \
		$(CXXFLAGS) \
		-shared \
		$< \
		-o $@ \
		$(LDFLAGS)


clean:
	rm -f $(TARGET)
