summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNiklas Claesson <nicke.claesson@gmail.com>2017-09-20 19:24:26 +0200
committerNiklas Claesson <nicke.claesson@gmail.com>2017-09-20 19:24:26 +0200
commit63ada0ce26024f1f961497c4ae09796571d02114 (patch)
treedf05fb6d3b45e951604810824d95c2955c1a1af7
parent07dde545d93b16c6bb4db443ffb7fbd75b3414de (diff)
downloadmeson-63ada0ce26024f1f961497c4ae09796571d02114.tar.gz
Update according to input
-rw-r--r--test cases/common/98 gen extra/meson.build16
-rw-r--r--test cases/common/98 gen extra/srcgen2.py32
2 files changed, 39 insertions, 9 deletions
diff --git a/test cases/common/98 gen extra/meson.build b/test cases/common/98 gen extra/meson.build
index 897ef41c4..772f52e40 100644
--- a/test cases/common/98 gen extra/meson.build
+++ b/test cases/common/98 gen extra/meson.build
@@ -12,21 +12,19 @@ g2 = gen.process('name.dat', extra_args: '--upper')
test('basic', executable('basic', 'plain.c', g1))
test('upper', executable('upper', 'upper.c', g2))
-cp = find_program('cp')
-basename_gen = generator(cp,
- output : '@BASENAME@.c',
- arguments : ['@INPUT@', join_paths('@BUILD_DIR@', '@BASENAME@.c')])
+prog2 = find_program('srcgen2.py')
+basename_gen = generator(prog2,
+ output : ['@BASENAME@.tab.c', '@BASENAME@.tab.h'],
+ arguments : ['@BUILD_DIR@', '@BASENAME@', '@INPUT@'])
-# This test should produce a name.c
basename_src = basename_gen.process('name.l')
test('basename', executable('basename', basename_src))
-plainname_gen = generator(cp,
- output : '@PLAINNAME@.c',
- arguments : ['@INPUT@', join_paths('@BUILD_DIR@', '@PLAINNAME@.c')])
+plainname_gen = generator(prog2,
+ output : ['@PLAINNAME@.tab.c', '@PLAINNAME@.tab.h'],
+ arguments : ['@BUILD_DIR@', '@PLAINNAME@', '@INPUT@'])
-# This test should produce a name.l.c
plainname_src = plainname_gen.process('name.l')
test('plainname', executable('plainname', plainname_src))
diff --git a/test cases/common/98 gen extra/srcgen2.py b/test cases/common/98 gen extra/srcgen2.py
new file mode 100644
index 000000000..9cdf12d59
--- /dev/null
+++ b/test cases/common/98 gen extra/srcgen2.py
@@ -0,0 +1,32 @@
+#!/usr/bin/env python3
+
+import os
+import sys
+import argparse
+
+parser = argparse.ArgumentParser()
+parser.add_argument('target_dir',
+ help='the target dir')
+parser.add_argument('stem',
+ help='the stem')
+parser.add_argument('input',
+ help='the input file')
+
+options = parser.parse_args(sys.argv[1:])
+
+with open(options.input) as f:
+ content = f.read()
+
+
+output_c = os.path.join(options.target_dir, options.stem + ".tab.c")
+with open(output_c, 'w') as f:
+ f.write(content)
+
+
+output_h = os.path.join(options.target_dir, options.stem + ".tab.h")
+h_content = '''#pragma once
+
+int myfun(void);
+'''
+with open(output_h, 'w') as f:
+ f.write(h_content)