aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAqua-sama <aqua@iserlohn-fortress.net>2020-11-01 17:55:38 +0200
committerAqua-sama <aqua@iserlohn-fortress.net>2020-11-01 17:56:10 +0200
commitb24be373bcc13d3c94f5f6d98eec7219d63a901b (patch)
treecb7d4f3706bc0c16178db65096b8340271ffb583
parentSimplify rcc (diff)
downloadrcc-b24be373bcc13d3c94f5f6d98eec7219d63a901b.tar.xz
Fix multiple inputs errorv0.1.1
-rw-r--r--meson.build17
-rwxr-xr-xrcc6
-rw-r--r--rcc_format/__init__.py4
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())