From 99a43457e893632d7e28b0923208c512a986beef Mon Sep 17 00:00:00 2001 From: Ray Date: Tue, 5 Aug 2025 12:38:11 +0200 Subject: [PATCH] REXM: ADDED: Command; `update` to validate+update required files --- tools/rexm/rexm.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/tools/rexm/rexm.c b/tools/rexm/rexm.c index e26f27269..c213ca1ec 100644 --- a/tools/rexm/rexm.c +++ b/tools/rexm/rexm.c @@ -8,6 +8,7 @@ * - rename * - remove * - validate +* - update * * Files involved in the processes: * - raylib/examples//_example_name.c @@ -81,12 +82,13 @@ typedef struct { // Example management operations typedef enum { - OP_NONE = 0, // No process to do - OP_CREATE = 1, // Create new example, using default template - OP_ADD = 2, // Add existing examples (hopefully following template) - OP_RENAME = 3, // Rename existing example - OP_REMOVE = 4, // Remove existing example - OP_VALIDATE = 5, // Validate examples, using [examples_list.txt] as main source by default + OP_NONE = 0, // No process to do + OP_CREATE = 1, // Create new example, using default template + OP_ADD = 2, // Add existing examples (hopefully following template) + OP_RENAME = 3, // Rename existing example + OP_REMOVE = 4, // Remove existing example + OP_VALIDATE = 5, // Validate examples, using [examples_list.txt] as main source by default + OP_UPDATE = 6, // Validate and update required examples (as far as possible) } rlExampleOperation; #define MAX_EXAMPLE_CATEGORIES 8 @@ -282,6 +284,13 @@ int main(int argc, char *argv[]) opCode = OP_VALIDATE; } + else if (strcmp(argv[1], "update") == 0) + { + // Validate and update examples in collection + // All examples in collection match all files requirements + + opCode = OP_UPDATE; + } } switch (opCode) @@ -694,6 +703,7 @@ int main(int argc, char *argv[]) } break; case OP_VALIDATE: // Validate: report and actions + case OP_UPDATE: { // TODO: Validate examples in collection list [examples_list.txt] -> Source of truth! // Validate: raylib/examples//_example_name.c -> File exists?