summaryrefslogtreecommitdiffhomepage
path: root/Makefile
diff options
context:
space:
mode:
authorRoland Reichwein <mail@reichwein.it>2021-02-13 12:47:39 +0100
committerRoland Reichwein <mail@reichwein.it>2021-02-13 12:47:39 +0100
commit07c77b45ba9f74cfe1bed547bea1eeb705f0582b (patch)
treedde45e92f704229c3ecc129aa2842686f052db6f /Makefile
parent24ec1d5ba85503599fd301aa8cd56ee65651ab0b (diff)
Support G++, support string type as template argument for convert()
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile14
1 files changed, 5 insertions, 9 deletions
diff --git a/Makefile b/Makefile
index 7ea075e..39dcafb 100644
--- a/Makefile
+++ b/Makefile
@@ -5,16 +5,15 @@ DISTROS=base debian10 ubuntu2004 ubuntu2010
ifeq ($(wildcard $(shell which clang++-11)),)
ifeq ($(wildcard $(shell which clang++)),)
-$(error No clang++-11 nor clang++ available!)
+CXX=g++-10
else
CXX=clang++
endif
else
CXX=clang++-11
-# GCC is buggy: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85282
-#CXX=g++-10
endif
+# boost is buggy for C++20: error: static_assert failed due to requirement 'detail::is_endian_reversible_inplace<char8_t>
STANDARD=c++17
#STANDARD=c++20
@@ -35,11 +34,6 @@ COMPILER_SUITE=clang
LIBS+=-fuse-ld=lld
endif
-ifeq ($(COMPILER_SUITE),clang)
-# libc++ is buggy for C++20: std::hash<char8_t> not implemented. Fixed in LLVM-12
-CXXFLAGS+=-stdlib=libc++
-endif
-
LDLIBS+=\
-lboost_context \
-lboost_filesystem \
@@ -47,6 +41,8 @@ LDLIBS+=\
-lboost_system \
ifeq ($(COMPILER_SUITE),clang)
+# libc++ is buggy for C++20: std::hash<char8_t> not implemented. Fixed in LLVM-12
+CXXFLAGS+=-stdlib=libc++
LIBS+= \
-lc++ \
-lc++abi
@@ -55,7 +51,7 @@ LIBS+= \
#-lstdc++fs
else
LIBS+= \
--lstdc++
+-lstdc++ \
-lstdc++fs
endif