wrenpp/meson.build
King_DuckZ 2755371792 Refactoring.
VM now aims to only wrap Wren's c functions as closely as
possible. All the fun stuff should be put into vm_fun.hpp.
2020-04-30 19:54:51 +02:00

51 lines
1 KiB
Meson

project('wrentest', 'cpp',
version: '1.0.0',
meson_version: '>=0.49.2',
default_options: ['debug=true', 'cpp_std=c++17', 'b_ndebug=if-release'],
)
wren_dep = dependency('wren', version: '>=0.2.0', fallback: ['wren', 'wren_dep'])
os = host_machine.system()
if os == 'gnu'
os = 'hurd'
elif os == 'linux'
os = 'gnu'
endif
arch = host_machine.cpu_family()
if arch == 'x86_64'
arch = 'amd64'
endif
ptr_size = 0
func_ptr_size = 0
conf = configuration_data()
if os == 'gnu' and arch == 'amd64'
ptr_size = 8
func_ptr_size = 8
endif
conf.set('POINTER_SIZE', ptr_size)
conf.set('FUNC_POINTER_SIZE', func_ptr_size)
project_config_file = configure_file(
input: 'src/config.h.in',
output: 'config.h',
configuration: conf
)
executable(meson.project_name(),
project_config_file,
'src/main.cpp',
'src/wren/vm.cpp',
'src/wren/configuration.cpp',
'src/wren/def_configuration.cpp',
'src/wren/dynafunc_maker.cpp',
'src/dynafunc_' + arch + '_' + os + '.S',
'src/wren/handle.cpp',
'src/wren/vm_fun.cpp',
dependencies: [wren_dep],
install: true,
)