-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathMakefile
More file actions
29 lines (20 loc) · 680 Bytes
/
Makefile
File metadata and controls
29 lines (20 loc) · 680 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
WO_CONCEPTS = eq functor constrained show show_unshowable default super
WITH_CONCEPTS = concept show_concept super_concept constrained_concept
NAMES = ${WO_CONCEPTS} ${WITH_CONCEPTS}
TC_HEADER = ../tc.hpp
FLAGS = -std=c++14
CXX = g++
CONCEPT_HEADER = ../tc_concept.hpp
CONCEPT_FLAGS = -std=c++20
CONCEPT_CXX = clang++
## by default we build only programs not using concepts
wo_concepts: ${WO_CONCEPTS}
## use make all to build all the programs
all: ${NAMES}
${WO_CONCEPTS}: %: %.cpp ${TC_HEADER}
${CXX} ${FLAGS} $@.cpp -o $@
${WITH_CONCEPTS}: %: %.cpp ${TC_HEADER} ${CONCEPT_HEADER}
${CONCEPT_CXX} ${CONCEPT_FLAGS} $@.cpp -o $@
clean:
rm -vf ${NAMES}
.PHONY: clean