Calibration_Stand/Makefile

46 lines
1.2 KiB
Makefile

# Переменные
CC = gcc
CFLAGS = -Wall -g `pkg-config --cflags gtk+-3.0`
LDFLAGS = -lwiringPi -lcurl `pkg-config --libs gtk+-3.0`
TARGET = program
BACKEND_PATH = backend/
UI_PATH = ui/
CONTROLLERS_PATH = controllers/
SRCS = \
main.c \
$(BACKEND_PATH)Src/stend_logic.c \
$(BACKEND_PATH)Src/utils.c \
$(BACKEND_PATH)Libs/sx1278/Src/sx1278.c \
$(BACKEND_PATH)Libs/Godex500/Src/Godex500.c \
$(BACKEND_PATH)Libs/CURL/Src/curl2.c \
$(BACKEND_PATH)Libs/cJSON/Src/cJSON.c \
$(BACKEND_PATH)Libs/Logger/Src/logger.c \
$(UI_PATH)Src/MainForm.c\
$(UI_PATH)Src/ui.c\
$(UI_PATH)Src/button_handlers.c\
$(UI_PATH)Src/button_styles.c\
$(UI_PATH)Src/error.c\
$(CONTROLLERS_PATH)Src/ui_controller.c\
$(CONTROLLERS_PATH)Src/stend_controller.c
OBJS = $(SRCS:.c=.o)
# Цель по умолчанию
all: $(TARGET) clean launch
# Правило для создания исполняемого файла
$(TARGET): $(OBJS)
$(CC) $(CFLAGS) -o $(TARGET) $(OBJS) $(LDFLAGS)
# Правило для компиляции .c файлов в .o файлы
%.o: %.c
$(CC) $(CFLAGS) -c $< -o $@
# Чистка проекта от скомпилированных файлов
clean:
rm -f $(OBJS)
launch:
./$(TARGET)