30 lines
No EOL
566 B
Makefile
30 lines
No EOL
566 B
Makefile
PROGRAM = main
|
|
|
|
SOURCES = main.cpp mylib.cpp
|
|
OBJECTS = ${SOURCES:.cpp=.o}
|
|
|
|
CXX = g++
|
|
LINKER = g++
|
|
|
|
WARNINGS = -Wall -pedantic -Wextra -Weffc++ -Woverloaded-virtual -Wfloat-equal -Wshadow \
|
|
-Wredundant-decls -fmax-errors=1
|
|
|
|
CXXFLAGS = -g -flto -O3 -ffast-math -march=native ${WARNINGS}
|
|
LINKFLAGS = -g -flto -O3
|
|
|
|
|
|
all: ${PROGRAM}
|
|
|
|
%.o: %.cpp
|
|
${CXX} ${CXXFLAGS} -c $< -o $@
|
|
|
|
${PROGRAM}: ${OBJECTS}
|
|
$(LINKER) ${OBJECTS} ${LINKFLAGS} -o ${PROGRAM}
|
|
|
|
clean:
|
|
rm -f ${OBJECTS} ${PROGRAM} out_1.txt
|
|
|
|
|
|
run: ${PROGRAM}
|
|
# run: clean ${PROGRAM}
|
|
./${PROGRAM}
|