Receba Makefile #10
20
makefile
20
makefile
@ -12,11 +12,22 @@ warnings = -Wall -Wextra -Werror -Wformat=2 -Wno-maybe-uninitialized \
|
||||
sanitize = -fsanitize=address,undefined,pointer-compare,pointer-subtract
|
||||
debug_flags = -ggdb3 -Og -DDEBUG -Wformat-truncation=2 $(sanitize)
|
||||
|
||||
ifeq ($(OS),Windows_NT)
|
||||
CC := gcc
|
||||
CXX := g++
|
||||
else
|
||||
CC := /usr/bin/gcc
|
||||
CXX := /usr/bin/g++
|
||||
endif
|
||||
|
||||
builddir := build
|
||||
ifeq ($(OS),Windows_NT)
|
||||
objectname = sabp.exe
|
||||
makebuilddircmd = mkdir $(builddir)
|
||||
else
|
||||
objectname = sabp
|
||||
makebuilddircmd = mkdir -p $(builddir)
|
||||
endif
|
||||
objectdir = $(builddir)/$(objectname)
|
||||
|
||||
.PHONY: all debug
|
||||
@ -25,7 +36,7 @@ all:set_flags $(objectdir)
|
||||
|
||||
debug:set_debug_flags $(objectdir)
|
||||
|
||||
$(objectdir):$(builddir)/random.o $(builddir)/sa.o src/main.cpp
|
||||
$(objectdir):$(builddir) $(builddir)/random.o $(builddir)/sa.o src/main.cpp
|
||||
$(CXX) $(CPPFLAGS) $(builddir)/random.o $(builddir)/sa.o src/main.cpp -o $(objectdir)
|
||||
|
||||
$(builddir)/random.o:src/random.cpp
|
||||
@ -34,6 +45,9 @@ $(builddir)/random.o:src/random.cpp
|
||||
$(builddir)/sa.o:src/sa.cpp
|
||||
$(CXX) $(CPPFLAGS) src/sa.cpp -o $(builddir)/sa.o -c
|
||||
|
||||
$(builddir):
|
||||
$(makebuilddircmd)
|
||||
|
||||
set_flags:
|
||||
$(eval override CPPFLAGS += $(warnings) $(optimize_flags) $(standart))
|
||||
|
||||
@ -41,4 +55,8 @@ set_debug_flags:
|
||||
$(eval override CPPFLAGS += $(warnings) $(sanitize) $(debug_flags))
|
||||
|
||||
clean:
|
||||
ifeq ($(OS),Windows_NT)
|
||||
RMDIR "$(builddir)" /S /Q
|
||||
else
|
||||
rm -rf $(builddir)
|
||||
endif
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user