From b24be373bcc13d3c94f5f6d98eec7219d63a901b Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Sun, 1 Nov 2020 17:55:38 +0200 Subject: Fix multiple inputs error --- meson.build | 17 ++++++++++++++--- rcc | 6 +++--- rcc_format/__init__.py | 4 ++-- 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/meson.build b/meson.build index a4b0c6e..42f0a8b 100644 --- a/meson.build +++ b/meson.build @@ -1,13 +1,24 @@ project('rcc', [], - version: '0.1.0', + version: '0.1.1', license: 'BSD-2-Clause', ) prog_python = import('python').find_installation('python3') -rcc = generator(prog_python, +rcc_generator = generator(prog_python, output: '@BASENAME@.h', arguments: [ meson.current_source_dir()/'rcc', '--output=@OUTPUT@', '@EXTRA_ARGS@', '@INPUT@' ] ) +rcc_exe = files('rcc') + # example usage: -#rcc.process(files('res/a.svg'), extra_args: [ '--namespace=svg', 'dump' ]) + +# Dump multiple files into their own header +#rcc_generator.process(files('a.svg', 'b.svg', 'c.svg'), extra_args: ['dump', '-ns=svg']) + +# Dump all the files into a single header +#dump_h = custom_target('dump_h', +# input: files('a.svg', 'b.svg', 'c.svg'), +# output: 'dump.h', +# command: [ python3, rcc_exe, '-o=@OUTPUT@', 'dump', '-ns=dump', '@INPUT@' ] +#) diff --git a/rcc b/rcc index 3099ca6..1b355f9 100755 --- a/rcc +++ b/rcc @@ -20,12 +20,12 @@ if __name__ == "__main__": All of these are constexpr.''', ) dump_mode.set_defaults(func=rcc_format.dump) + dump_mode.add_argument('-ns', '--namespace', type=str, default='resources', help='namespace (default: resources)') + dump_mode.add_argument('input', type=argparse.FileType('rb'), nargs='+', help='input file(s)') parser.add_argument('-o', '--output', type=argparse.FileType('wt'), default=sys.stdout, help='output header file (default: stdout)') - parser.add_argument('-n', '--namespace', type=str, default='resources', help='namespace (default: resources)') - parser.add_argument('input', type=argparse.FileType('rb'), nargs='+', help='input file(s)') args=parser.parse_args() - args.func(args.input, args) + args.func(args) diff --git a/rcc_format/__init__.py b/rcc_format/__init__.py index 629bc54..af32432 100644 --- a/rcc_format/__init__.py +++ b/rcc_format/__init__.py @@ -1,11 +1,11 @@ from rcc_format.util import * from os.path import basename -def dump(filelist, args): +def dump(args): write_header(args.output, args.namespace) items = [] - for f in filelist: + for f in args.input: x = resource(basename(f.name), to_variable_name(f.name), f.name) items.append(x) write_item(args.output, x.variable, f.read()) -- cgit v1.2.1