aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xinterpreter.py9
-rw-r--r--test cases/common/30 pipeline/prog.c2
2 files changed, 6 insertions, 5 deletions
diff --git a/interpreter.py b/interpreter.py
index 878b460..ff1de6d 100755
--- a/interpreter.py
+++ b/interpreter.py
@@ -119,15 +119,16 @@ class Generator(InterpreterObject):
rule = kwargs['output_name']
if not isinstance(rule, str):
raise InvalidArguments('"output_name" keyword argument must be a string.')
- if not '@BASENAME@' in rule:
- raise InvalidArguments('"output_name" must contain @BASENAME@.')
+ if not '@BASENAME@' in rule and not '@PLAINNAME@' in rule:
+ raise InvalidArguments('"output_name" must contain @BASENAME@ or @PLAINNAME@.')
if '/' in rule:
raise InvalidArguments('"output_name" must not contain a slash.')
self.name_rule = rule
def get_base_outname(self, inname):
- base = os.path.split(inname)[1]
- return self.name_rule.replace('@BASENAME@', base)
+ plainname = os.path.split(inname)[1]
+ basename = plainname.split('.')[0]
+ return self.name_rule.replace('@BASENAME@', basename).replace('@PLAINNAME@', plainname)
def process_method(self, args, kwargs):
if len(kwargs) > 0:
diff --git a/test cases/common/30 pipeline/prog.c b/test cases/common/30 pipeline/prog.c
index 3429481..29396b9 100644
--- a/test cases/common/30 pipeline/prog.c
+++ b/test cases/common/30 pipeline/prog.c
@@ -1,4 +1,4 @@
-#include"input_src.dat.h"
+#include"input_src.h"
int main(int argc, char **argv) {
void *foo = printf;