36 lines
510 B
Makefile
36 lines
510 B
Makefile
CC := gcc
|
|
CFLAGS := -Wall
|
|
LDFLAGS :=
|
|
INCLUDE := -I include
|
|
|
|
EXENAME := nrr
|
|
|
|
OBJ := obj
|
|
BIN := bin
|
|
|
|
SOURCES := main.c
|
|
OBJECTS := $(addprefix $(OBJ)/, $(SOURCES:.c=.o))
|
|
TARGET := $(BIN)/$(EXENAME)
|
|
|
|
all: $(TARGET)
|
|
|
|
run: $(TARGET)
|
|
@./$(TARGET)
|
|
|
|
$(TARGET): $(OBJECTS) | $(BIN)
|
|
$(CC) $(CFLAGS) $(INCLUDE) $(OBJECTS) -o $(TARGET) $(LDFLAGS)
|
|
|
|
$(OBJ)/%.o: %.c | $(OBJ)
|
|
$(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@
|
|
|
|
$(BIN):
|
|
@mkdir -p $(BIN)
|
|
|
|
$(OBJ):
|
|
@mkdir -p $(OBJ)
|
|
|
|
clean:
|
|
@rm -rf $(BIN) $(OBJ)
|
|
|
|
.PHONY: all clean run
|