From d093ce89029b8488b2a9ce20644991e647b1b2b7 Mon Sep 17 00:00:00 2001 From: Joseph Cloutier Date: Wed, 17 Jun 2026 20:59:08 -0400 Subject: [PATCH] Add `` and `` tags. --- src/lime/tools/HXProject.hx | 8 ++++++++ src/lime/tools/PlatformTarget.hx | 4 ++++ src/lime/tools/ProjectXMLParser.hx | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/src/lime/tools/HXProject.hx b/src/lime/tools/HXProject.hx index 164a3e0fee..180562d959 100644 --- a/src/lime/tools/HXProject.hx +++ b/src/lime/tools/HXProject.hx @@ -49,7 +49,9 @@ class HXProject extends Script public var ndlls:Array; public var platformType:PlatformType; public var postBuildCallbacks:Array; + public var postUpdateCallbacks:Array; public var preBuildCallbacks:Array; + public var preUpdateCallbacks:Array; public var samplePaths:Array; public var sources:Array; public var splashScreens:Array; @@ -206,7 +208,9 @@ class HXProject extends Script modules = new Map(); ndlls = new Array(); postBuildCallbacks = new Array(); + postUpdateCallbacks = new Array(); preBuildCallbacks = new Array(); + preUpdateCallbacks = new Array(); sources = new Array(); samplePaths = new Array(); splashScreens = new Array(); @@ -309,7 +313,9 @@ class HXProject extends Script project.platformType = platformType; project.postBuildCallbacks = postBuildCallbacks.copy(); + project.postUpdateCallbacks = postUpdateCallbacks.copy(); project.preBuildCallbacks = preBuildCallbacks.copy(); + project.preUpdateCallbacks = preUpdateCallbacks.copy(); project.samplePaths = samplePaths.copy(); project.sources = sources.copy(); @@ -954,7 +960,9 @@ class HXProject extends Script ndlls = ArrayTools.concatUnique(ndlls, project.ndlls); postBuildCallbacks = postBuildCallbacks.concat(project.postBuildCallbacks); + postUpdateCallbacks = postUpdateCallbacks.concat(project.postUpdateCallbacks); preBuildCallbacks = preBuildCallbacks.concat(project.preBuildCallbacks); + preUpdateCallbacks = preUpdateCallbacks.concat(project.preUpdateCallbacks); samplePaths = ArrayTools.concatUnique(samplePaths, project.samplePaths, true); sources = ArrayTools.concatUnique(sources, project.sources, true); splashScreens = ArrayTools.concatUnique(splashScreens, project.splashScreens); diff --git a/src/lime/tools/PlatformTarget.hx b/src/lime/tools/PlatformTarget.hx index fc5dc2a20f..ab6639fdd3 100644 --- a/src/lime/tools/PlatformTarget.hx +++ b/src/lime/tools/PlatformTarget.hx @@ -102,11 +102,15 @@ class PlatformTarget { logCommand("update"); + CommandHelper.executeCommands(project.preUpdateCallbacks); + _touchedFiles = []; update(); deleteStaleFiles(_touchedFiles); _touchedFiles = null; + + CommandHelper.executeCommands(project.postUpdateCallbacks); } if (command == "build" || command == "test") diff --git a/src/lime/tools/ProjectXMLParser.hx b/src/lime/tools/ProjectXMLParser.hx index e535b37f5e..d4beac1ee6 100644 --- a/src/lime/tools/ProjectXMLParser.hx +++ b/src/lime/tools/ProjectXMLParser.hx @@ -1895,6 +1895,12 @@ class ProjectXMLParser extends HXProject case "postbuild": parseCommandElement(element, postBuildCallbacks); + case "preupdate": + parseCommandElement(element, preUpdateCallbacks); + + case "postupdate": + parseCommandElement(element, postUpdateCallbacks); + default: if (StringTools.startsWith(element.name, "config:")) {