aboutsummaryrefslogtreecommitdiff
path: root/xmake.lua
diff options
context:
space:
mode:
authorPer Larsson <[email protected]>2021-11-25 14:07:24 +0100
committerPer Larsson <[email protected]>2021-11-25 14:07:24 +0100
commit522fbd01d25856c921bb1400b07ae900a0054627 (patch)
treebf649ab7efe41c22661d77196fc52428911cdb57 /xmake.lua
parentrpc: tactical checkin (diff)
parentAdded support for loading Lua config file from CLI option and merged server/s... (diff)
downloadzen-522fbd01d25856c921bb1400b07ae900a0054627.tar.xz
zen-522fbd01d25856c921bb1400b07ae900a0054627.zip
Merged main.
Diffstat (limited to 'xmake.lua')
-rw-r--r--xmake.lua50
1 files changed, 50 insertions, 0 deletions
diff --git a/xmake.lua b/xmake.lua
index ced2b55ce..49989615c 100644
--- a/xmake.lua
+++ b/xmake.lua
@@ -73,3 +73,53 @@ includes("zenstore", "zenstore-test")
includes("zenutil")
includes("zenserver", "zenserver-test")
includes("zen")
+
+task("bundle")
+ on_run(function()
+ import("detect.tools.find_zip")
+ import("detect.tools.find_7z")
+
+ -- copy files
+ local dirs = {
+ binaries = "./build/windows/x64/release",
+ bundles = "./build/bundles",
+ bundle = "./build/bundles/zenzerver-win64"
+ }
+
+ local files = {
+ dirs.binaries .. "/zenserver.exe",
+ dirs.binaries .. "/zenserver.pdb",
+ "./vcpkg_installed/x64-windows-static/tools/sentry-native/crashpad_handler.exe"
+ }
+
+ os.mkdir(dirs.bundles)
+ os.mkdir(dirs.bundle)
+
+ for _,file in ipairs(files) do
+ printf("copy '%s' -> '%s'\n", file, dirs.bundle)
+ os.cp(file, dirs.bundle)
+ end
+
+ -- create archive
+ local bundle_name = "zenserver-win64.zip"
+
+ local zip_cmd = find_7z()
+ assert(zip_cmd)
+
+ local zip_args = {}
+ table.insert(zip_args, "a")
+ table.insert(zip_args, dirs.bundles .. "/" .. bundle_name)
+ table.insert(zip_args, dirs.bundle .. "/*.*")
+
+ printf("creating bundle '%s'...", dirs.bundles .. "/" .. bundle_name)
+ os.runv(zip_cmd, zip_args)
+ os.rm(dirs.bundle)
+
+ printf(" Ok!")
+ end)
+
+ set_menu {
+ usage = "xmake bundle",
+ description = "Create zip bundle from binaries",
+ options = {}
+ }