diff --git a/xmake/target.lua b/xmake/target.lua index 0e9d132..f5d56a4 100644 --- a/xmake/target.lua +++ b/xmake/target.lua @@ -41,8 +41,9 @@ target(PROJECT_NAME) on_run( (function(godot_project_folder) return function(target) - os.execv("echo", {"godot --path", godot_project_folder}) - os.exec("godot --path " .. godot_project_folder) + local cmd = format("godot --path %s", godot_project_folder) + os.execv("echo", {cmd}) + os.exec(cmd) end end)(GODOT_PROJECT_FOLDER) ) diff --git a/xmake/tasks.lua b/xmake/tasks.lua index b937bd5..fbaeebd 100644 --- a/xmake/tasks.lua +++ b/xmake/tasks.lua @@ -6,7 +6,7 @@ -- target_platform: the target platform, like "Windows Desktop" -- name: the export execute name, it will be endswith ".exe" on windows task("export") - on_run((function(godot_project_folder, publish_folder) + on_run((function(godot_project_folder, publish_folder, project_name) return function(target_platform) local name = godot_project_folder @@ -35,13 +35,15 @@ task("export") local godot_project_file = path.join(godot_project_folder, "project.godot") - local export_path = path.absolute(path.join(publish_folder, name)) + local export_path = path.absolute(path.join(publish_folder, project_name)) - os.execv("echo", {"godot", godot_project_file, export_mode, target_platform, export_path}) - os.exec("godot %s --headless --%s %s %s", godot_project_file, export_mode, "\"" .. target_platform .. "\"", export_path) + local cmd = format("godot %s --headless --%s %s %s", godot_project_file, export_mode, "\"" .. target_platform .. "\"", export_path) + + os.execv("echo", {cmd}) + os.exec(cmd) end - end)(GODOT_PROJECT_FOLDER, PUBLISH_FOLDER)) + end)(GODOT_PROJECT_FOLDER, PUBLISH_FOLDER, PROJECT_NAME)) task_end() @@ -202,3 +204,22 @@ android.release.arm64 = "res://lib/libProjectName.android_release_arm64.so" description = "Generate gdextension file", } task_end() + + +task("import-assets") + on_run((function(godot_project_folder, project_name) + return function () + local godot_project_file = path.join(godot_project_folder, "project.godot") + + local cmd = format("godot --headless --import %s", godot_project_file) + os.execv("echo", {cmd}) + os.exec(cmd) + end + end)(GODOT_PROJECT_FOLDER, PROJECT_NAME)) + + set_menu { + usage = "xmake import-assets", + + description = "Import project assets", + } +task_end() \ No newline at end of file