project('shed-runtime', 'c', default_options : ['warning_level=1']) static_library( 'patio', 'src/patio/exceptions.c', ) static_library( 'patio_test', 'src/patio_test/patio_test.c', ) gc_source = 'src/shed/gc' / get_option('gc') / 'gc.c' static_library( 'shed', 'src/shed/effects.c', 'src/shed/gc.c', 'src/shed/ints.c', 'src/shed/memory.c', 'src/shed/primitives.c', 'src/shed/strings.c', 'src/shed/namespaces/Shed/Builtins.c', 'src/shed/namespaces/Std/Lists.c', 'src/shed/namespaces/Std/Process.c', gc_source, c_args: ['-DSHED_GC_COLLECT_INTERVAL=' + get_option('gc_collect_interval').to_string()], include_directories: include_directories('src') ) if meson.get_external_property('shed_runtime_is_wasm', false) static_library( 'walloc', 'deps/walloc/walloc.c', override_options : ['warning_level=0'], ) else executable('sizeof_jmp_buf', 'src/jmp_buf/sizeof_jmp_buf.c') endif