init
This commit is contained in:
27
home/Utils/C/Makefile
Normal file
27
home/Utils/C/Makefile
Normal file
@@ -0,0 +1,27 @@
|
||||
CC = gcc
|
||||
CFLAGS = -std=c11 -Wall -Wextra -Werror -Wconversion -Wshadow -Wpedantic
|
||||
CFLAGS += -Wstrict-prototypes -Wold-style-definition -Wmissing-prototypes
|
||||
CFLAGS += -Wmissing-declarations -Wfloat-equal -Wundef -Wpointer-arith
|
||||
CFLAGS += -Wcast-align -Wwrite-strings -Wredundant-decls -Wnested-externs
|
||||
CFLAGS += -Winline -O2 -g -fsanitize=address
|
||||
|
||||
SRCS = $(wildcard src/**/*.c) $(wildcard src/*.c)
|
||||
OBJS = $(patsubst src/%.c, build/%.o, $(SRCS))
|
||||
|
||||
all: a.out
|
||||
|
||||
run: a.out
|
||||
./a.out
|
||||
|
||||
a.out: $(OBJS)
|
||||
$(CC) $(CFLAGS) -o a.out $^
|
||||
|
||||
build/%.o: src/%.c
|
||||
@mkdir -p $(dir $@)
|
||||
$(CC) $(CFLAGS) -c -o $@ $<
|
||||
|
||||
clean:
|
||||
rm -rf build/ a.out
|
||||
|
||||
.PHONY: all clean
|
||||
|
||||
Reference in New Issue
Block a user