diff options
| author | Dylan Baker <dylan@pnwbakers.com> | 2025-05-29 12:58:15 -0700 |
|---|---|---|
| committer | Dylan Baker <dylan@pnwbakers.com> | 2025-10-24 22:20:49 -0700 |
| commit | 860c2bfad35d35dbef056f5775ead376868373d6 (patch) | |
| tree | 470f3d55bb5106698bd366cbd56007759f74c14f /test cases | |
| parent | 6aefc92c33f7bef17c338aa3e456dc45ca41058a (diff) | |
| download | meson-860c2bfad35d35dbef056f5775ead376868373d6.tar.gz | |
modules/codegen: Add support for bison/byacc/yacc
This adds a similar wrapper to the Lex wrapper for yacc/bison/byacc. The
interface is equivalent.
Diffstat (limited to 'test cases')
| -rw-r--r-- | test cases/frameworks/8 flex/meson.build | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/test cases/frameworks/8 flex/meson.build b/test cases/frameworks/8 flex/meson.build index 070036072..32eb89de9 100644 --- a/test cases/frameworks/8 flex/meson.build +++ b/test cases/frameworks/8 flex/meson.build @@ -10,7 +10,7 @@ project('flex and bison', 'c') # TODO: handle win_flex/win_bison flex = find_program('reflex', 'flex', 'lex', required: false) -bison = find_program('bison', required: false) +bison = find_program('bison', 'byacc', 'yacc', required: false) if not flex.found() error('MESON_SKIP_TEST flex not found.') @@ -24,11 +24,8 @@ codegen = import('unstable-codegen') lex = codegen.lex(implementations : ['flex', 'reflex', 'lex']) lfiles = lex.generate('lexer.l') -pgen = generator(bison, -output : ['@BASENAME@.tab.c', '@BASENAME@.tab.h'], -arguments : ['@INPUT@', '--defines=@OUTPUT1@', '--output=@OUTPUT0@']) - -pfiles = pgen.process('parser.y') +yacc = codegen.yacc(implementations : ['byacc', 'bison', 'yacc']) +pfiles = yacc.generate('parser.y', header : '@BASENAME@.tab.h') e = executable( 'pgen', |
