pw_tokenizer: Do not require input databases
Do not require inputs in database.py or the pw_tokenizer_database GN
template. This is helpful when building binaries with unsupported
executable formats (PE and Macho-O). This also supports explicitly
creating an empty binary format database.
Change-Id: I18284b0e3d5db2428f61655e717a70010e5eddf4
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/22902
Commit-Queue: Anthony DiGirolamo <tonymd@google.com>
Reviewed-by: Anthony DiGirolamo <tonymd@google.com>
diff --git a/pw_tokenizer/database.gni b/pw_tokenizer/database.gni
index 6e03597..a6cbf7e 100644
--- a/pw_tokenizer/database.gni
+++ b/pw_tokenizer/database.gni
@@ -76,12 +76,6 @@
_input_databases = []
}
- assert(
- _targets != [] || _optional_targets != [] || _input_databases != [],
- "No 'targets', 'optional_targets', or 'input_databases' were set for " +
- "pw_tokenizer_database! At least one target or database must be " +
- "provided as an input.")
-
if (defined(invoker.domain)) {
_domain = "#" + invoker.domain
} else {
diff --git a/pw_tokenizer/py/pw_tokenizer/database.py b/pw_tokenizer/py/pw_tokenizer/database.py
index 5e23b6c..3bc3310 100755
--- a/pw_tokenizer/py/pw_tokenizer/database.py
+++ b/pw_tokenizer/py/pw_tokenizer/database.py
@@ -393,7 +393,7 @@
parser.add_argument(
'databases',
metavar='elf_or_token_database',
- nargs='+',
+ nargs='*',
action=LoadTokenDatabases,
help=('ELF or token database files from which to read strings and '
'tokens. For ELF files, the tokenization domain to read from '