feat(build-check): added setup checks for stl compatibility
build-check checks for print and format headers from stl
This commit is contained in:
22
build-check/CPPC/meson.build
Normal file
22
build-check/CPPC/meson.build
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
cppc = meson.get_compiler('cpp')
|
||||||
|
|
||||||
|
if cppc.get_id() == 'clang'
|
||||||
|
message('disabling bitwise-instead-of-logical warnings for clang')
|
||||||
|
add_project_arguments('-Wno-bitwise-instead-of-logical', language: 'cpp')
|
||||||
|
endif
|
||||||
|
|
||||||
|
if cppc.get_id() == 'gcc'
|
||||||
|
message('disabling psabi warnings for gcc')
|
||||||
|
add_project_arguments('-Wno-psabi', language: 'cpp')
|
||||||
|
|
||||||
|
if (cppc.version().version_compare('<14.0'))
|
||||||
|
error('g++ version must be at least 14.0, found ' + cppc.version())
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
if not cppc.has_header('print')
|
||||||
|
error('C++ standard library header <print> not found. Please ensure your compiler and standard library supports C++23. We have already validated your compiler version so this is likely an issue with your standard library installation.')
|
||||||
|
endif
|
||||||
|
if not cppc.has_header('format')
|
||||||
|
error('C++ standard library header <format> not found. Please ensure your compiler and standard library supports C++23. We have already validated your compiler version so this is likely an issue with your standard library installation.')
|
||||||
|
endif
|
||||||
14
build-check/meson.build
Normal file
14
build-check/meson.build
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
message('Found CXX compiler: ' + meson.get_compiler('cpp').get_id())
|
||||||
|
message('C++ standard set to: ' + get_option('cpp_std'))
|
||||||
|
|
||||||
|
cc = meson.get_compiler('c')
|
||||||
|
|
||||||
|
ignore_unused_args = '-Wno-unused-command-line-argument'
|
||||||
|
|
||||||
|
add_global_arguments(ignore_unused_args, language: 'cpp')
|
||||||
|
add_global_arguments(ignore_unused_args, language: 'c')
|
||||||
|
|
||||||
|
|
||||||
|
subdir('CPPC')
|
||||||
|
|
||||||
|
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
project('stroid', 'cpp', meson_version : '>= 1.3.0', version : 'v0.1.0', default_options : ['cpp_std=c++23'])
|
project('stroid', 'cpp', meson_version : '>= 1.3.0', version : 'v0.1.0', default_options : ['cpp_std=c++23'])
|
||||||
|
|
||||||
|
subdir('build-check')
|
||||||
|
|
||||||
subdir('build-config')
|
subdir('build-config')
|
||||||
subdir('src')
|
subdir('src')
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user