From 886a92a79570d0495cd7e5ff7e26163b73ec765f Mon Sep 17 00:00:00 2001 From: Veloman Yunkan Date: Thu, 17 Nov 2022 16:45:19 +0400 Subject: [PATCH] Included i18n resources in compilation of static resources Did it by making the kiwix-compile-resources script take multiple arguments. --- scripts/kiwix-compile-resources | 12 +++++++----- scripts/kiwix-compile-resources.1 | 2 +- static/meson.build | 2 +- test/server.cpp | 3 +++ 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/scripts/kiwix-compile-resources b/scripts/kiwix-compile-resources index 7d308afc3..11391cce9 100755 --- a/scripts/kiwix-compile-resources +++ b/scripts/kiwix-compile-resources @@ -202,15 +202,17 @@ if __name__ == "__main__": parser.add_argument('--source_dir', help="Additional directory where to look for resources.", action='append') - parser.add_argument('resource_file', + parser.add_argument('resource_files', nargs='+', help='The list of resources to compile.') args = parser.parse_args() - base_dir = os.path.dirname(os.path.realpath(args.resource_file)) source_dir = args.source_dir or [] - with open(args.resource_file, 'r') as f: - resources = [Resource([base_dir]+source_dir, *line.strip().split()) - for line in f.readlines()] + resources = [] + for resfile in args.resource_files: + base_dir = os.path.dirname(os.path.realpath(resfile)) + with open(resfile, 'r') as f: + resources += [Resource([base_dir]+source_dir, *line.strip().split()) + for line in f.readlines()] h_identifier = to_identifier(os.path.basename(args.hfile)) with open(args.hfile, 'w') as f: diff --git a/scripts/kiwix-compile-resources.1 b/scripts/kiwix-compile-resources.1 index 1b6dec9b8..2290ceb1f 100644 --- a/scripts/kiwix-compile-resources.1 +++ b/scripts/kiwix-compile-resources.1 @@ -2,7 +2,7 @@ .SH NAME kiwix-compile-resources \- helper to compile and generate some Kiwix resources .SH SYNOPSIS -\fBkiwix\-compile\-resources\fR [\-h] [\-\-cxxfile CXXFILE] [\-\-hfile HFILE] resource_file\fR +\fBkiwix\-compile\-resources\fR [\-h] [\-\-cxxfile CXXFILE] [\-\-hfile HFILE] resource_file ...\fR .SH DESCRIPTION .TP resource_file diff --git a/static/meson.build b/static/meson.build index 123146cac..a9f9099be 100644 --- a/static/meson.build +++ b/static/meson.build @@ -15,7 +15,7 @@ preprocessed_resources = custom_target('preprocessed_resource_files', ) lib_resources = custom_target('resources', - input: preprocessed_resources, + input: [preprocessed_resources, 'i18n_resources_list.txt'], output: ['libkiwix-resources.cpp', 'libkiwix-resources.h'], command:[res_compiler, '--cxxfile', '@OUTPUT0@', diff --git a/test/server.cpp b/test/server.cpp index 1086dfe5b..7ddda5da1 100644 --- a/test/server.cpp +++ b/test/server.cpp @@ -135,6 +135,9 @@ const ResourceCollection resources200Uncompressible{ { STATIC_CONTENT, "/ROOT/skin/search-icon.svg?cacheid=b10ae7ed" }, { DYNAMIC_CONTENT, "/ROOT/skin/search_results.css" }, { STATIC_CONTENT, "/ROOT/skin/search_results.css?cacheid=76d39c84" }, + { DYNAMIC_CONTENT, "/ROOT/skin/i18n/test.json" }, + // TODO: implement cache management of i18n resources + //{ STATIC_CONTENT, "/ROOT/skin/i18n/test.json?cacheid=unknown" }, { ZIM_CONTENT, "/ROOT/raw/zimfile/meta/Title" }, { ZIM_CONTENT, "/ROOT/raw/zimfile/meta/Description" },