Added make file for project and fixed .gitignore
This commit is contained in:
parent
d37605fc6b
commit
c39a70ff88
5
.gitignore
vendored
5
.gitignore
vendored
@ -1,5 +1,10 @@
|
|||||||
|
# exclude project binary
|
||||||
|
f8prog
|
||||||
|
|
||||||
|
# exclude project dirs
|
||||||
build/
|
build/
|
||||||
firmware/
|
firmware/
|
||||||
|
.ccls-cache/
|
||||||
|
|
||||||
# ---> C
|
# ---> C
|
||||||
# Prerequisites
|
# Prerequisites
|
||||||
|
37
Makefile
Normal file
37
Makefile
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
## Compiler settings
|
||||||
|
CC = cc
|
||||||
|
CFLAGS = -Wall
|
||||||
|
LDFLAGS =
|
||||||
|
|
||||||
|
## Project settings
|
||||||
|
TARGET = f8prog ## name of the application
|
||||||
|
|
||||||
|
## Paths
|
||||||
|
SRC = $(wildcard src/*.c)
|
||||||
|
OFILES = $(patsubst src%, build%, $(patsubst src/%.c, build/%.o, $(SRC)))
|
||||||
|
|
||||||
|
|
||||||
|
$(TARGET): ./build $(OFILES)
|
||||||
|
$(CC) $(CFLAGS) $(OFILES) -o $(TARGET) $(LDFLAGS)
|
||||||
|
|
||||||
|
%.o: ../src/%.c
|
||||||
|
$(CC) $(CFLAGS) -c $^ -o $@
|
||||||
|
|
||||||
|
./build:
|
||||||
|
mkdir -p $@
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf $(OFILES)
|
||||||
|
rm -f $(TARGET)
|
||||||
|
rm -rf ./build
|
||||||
|
|
||||||
|
test: $(TARGET)
|
||||||
|
./$(TARGET)
|
||||||
|
|
||||||
|
options:
|
||||||
|
@echo $(TARGET) build options:
|
||||||
|
@echo "CFLAGS = ${CFLAGS}"
|
||||||
|
@echo "LDFLAGS = ${LDFLAGS}"
|
||||||
|
@echo "CC = ${CC}"
|
||||||
|
|
||||||
|
.PHONY: options clean test
|
Loading…
Reference in New Issue
Block a user