From 89c186f2c43b1f3023a0a5af4471b0d7726f2d1c Mon Sep 17 00:00:00 2001 From: Robbert van der Helm Date: Fri, 5 Jun 2020 23:13:41 +0200 Subject: [PATCH] Target C++2a Now that Ubuntu 20.04 is out every currently supported distro that's not based on Ubuntu 18.04 is shipping GCC 10, so we can start using some C++20 features. Ubuntu 18.04 already needed a newer version of GCC installed through a PPA and a newer version of Boost to compile yabridge, so requiring GCC 10 shouldn't be an issue. --- meson.build | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build index 8a4e4720..67a2715d 100644 --- a/meson.build +++ b/meson.build @@ -2,7 +2,7 @@ project( 'yabridge', 'cpp', version : '1.2.0', - default_options : ['warning_level=3', 'cpp_std=c++17', 'build.cpp_std=c++17'] + default_options : ['warning_level=3', 'cpp_std=c++2a', 'build.cpp_std=c++2a'] ) # Meson does not let us set a default cross compiler, which makes sense, but it @@ -27,9 +27,12 @@ individual_host_name_32bit = 'yabridge-host-32' group_host_name_64bit = 'yabridge-group' group_host_name_32bit = 'yabridge-group-32' +# Disable the use of concepts in Boost.Asio until Boost 1.73 gets released +# https://github.com/boostorg/asio/issues/312 +compiler_options = ['-DBOOST_ASIO_DISABLE_CONCEPTS'] + # This provides an easy way to start the Wine VST host using winedbg since it # can be quite a pain to set up -compiler_options = [] if get_option('use-winedbg') compiler_options += '-DUSE_WINEDBG' endif