BIN = luaload SRC = luaload.c CC = gcc CFLAGS = -Wall -std=gnu99 DBGFLAGS = -g -O0 ifdef DEBUG CFLAGS += $(DBGFLAGS) else CFLAGS += -O2 -march=native -mtune=native endif LDFLAGS = -lm -llua OBJ_DIR = obj OBJ_FILES = $(addprefix $(OBJ_DIR)/, $(addsuffix .o, $(subst .c,,$(SRC)))) $(BIN): $(OBJ_DIR) $(OBJ_FILES) $(CC) $(LDFLAGS) $(OBJ_FILES) -o $@ $(OBJ_DIR)/luaload.o: $(OBJ_DIR)/%.o: %.c $(CC) -c $(CFLAGS) $< -o $@ $(OBJ_DIR): mkdir -p $(OBJ_DIR) .PHONY: clean info clean: @rm -rf $(OBJ_DIR) @rm -f $(BIN) info: @echo $(OBJ_FILES)