Files
sibsutis/1Y-2H/prog.old/makefile
T
2026-04-25 17:23:04 +07:00

41 lines
815 B
Makefile

CC = gcc
CFLAGS = -I./include -g
LDFLAGS = -lncursesw -lpanel -lmenu
TARGET = matrix
SRC_DIR = src
OBJ_DIR = .obj
SRC = $(wildcard $(SRC_DIR)/*.c)
OBJ = $(patsubst $(SRC_DIR)/%.c,$(OBJ_DIR)/%.o,$(SRC))
all: $(TARGET)
$(TARGET): $(OBJ)
$(CC) $(OBJ) -o $(TARGET) $(LDFLAGS)
# Компиляция .c -> .o в .obj/
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c | $(OBJ_DIR)
$(CC) $(CFLAGS) -c $< -o $@
# Создание папки для объектов
$(OBJ_DIR):
mkdir -p $(OBJ_DIR)
run:
./matrix < input > output
clean:
rm -rf $(OBJ_DIR) $(TARGET) output
.cc: $(OBJ)
mkdir -p $(OBJ_DIR)
@for src in $(SRC); do \
obj=$(OBJ_DIR)/$$(basename $$src .c).o; \
bear -- $(CC) $(CFLAGS) -c $$src -o $$obj; \
done
mv ./compile_commands.json .build/ || true