start configmaker
This commit is contained in:
40
configmaker/Makefile
Normal file
40
configmaker/Makefile
Normal file
@ -0,0 +1,40 @@
|
||||
BUILD_DIR = build
|
||||
|
||||
C_SOURCES = \
|
||||
configmaker.c
|
||||
|
||||
|
||||
C_INCLUDES = \
|
||||
-I. \
|
||||
-I../cube/User/Inc
|
||||
|
||||
VERSION := $(shell git rev-parse --short=8 HEAD)
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = $(C_INCLUDES) -Wall -Werror -std=c99 -DVERSION="\"$(VERSION)\""
|
||||
LDFLAGS = -lconfig
|
||||
TARGET = configmaker
|
||||
|
||||
UNAME_S := $(shell uname -s)
|
||||
ifeq ($(UNAME_S),OpenBSD)
|
||||
CFLAGS += -I/usr/local/include -DOpenBSD=1
|
||||
LDFLAGS += -L/usr/local/lib
|
||||
endif
|
||||
|
||||
all: $(BUILD_DIR)/$(TARGET)
|
||||
|
||||
OBJECTS = $(addprefix $(BUILD_DIR)/,$(notdir $(C_SOURCES:.c=.o)))
|
||||
vpath %.c $(sort $(dir $(C_SOURCES)))
|
||||
|
||||
$(BUILD_DIR)/%.o: %.c Makefile | $(BUILD_DIR)
|
||||
$(CC) -c $(CFLAGS) $< -o $@
|
||||
|
||||
$(BUILD_DIR)/$(TARGET): $(OBJECTS) Makefile
|
||||
$(CC) $(OBJECTS) $(LDFLAGS) -o $@
|
||||
|
||||
$(BUILD_DIR):
|
||||
mkdir $@
|
||||
|
||||
.phony: clean
|
||||
clean:
|
||||
-rm -rf $(BUILD_DIR)
|
Reference in New Issue
Block a user