summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBoris Nagaev <bnagaev@gmail.com>2017-09-24 16:22:36 (GMT)
committerBoris Nagaev <bnagaev@gmail.com>2017-09-24 16:22:36 (GMT)
commit9c20c227f2ee78a29f3dbb14023726e229494664 (patch)
tree2905f27256e3baab33407d04ea388c02b33beea9
parent9971cb923a799a68635661ff1308fb8098c88ba1 (diff)
downloadmxe-9c20c227f2ee78a29f3dbb14023726e229494664.zip
mxe-9c20c227f2ee78a29f3dbb14023726e229494664.tar.gz
mxe-9c20c227f2ee78a29f3dbb14023726e229494664.tar.bz2
build-pkg, Debian: set Installed-Size field
See https://github.com/mxe/mxe/issues/1886#issuecomment-325927828
-rwxr-xr-xtools/build-pkg.lua17
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/build-pkg.lua b/tools/build-pkg.lua
index 6b4058e..77b4161 100755
--- a/tools/build-pkg.lua
+++ b/tools/build-pkg.lua
@@ -196,6 +196,13 @@ local function fileExists(name)
end
end
+local function fileSize(name)
+ local f = io.open(name, "r")
+ local size = f:seek("end")
+ io.close(f)
+ return size
+end
+
local function isSymlink(name)
return shell(("ls -l %q"):format(name)):sub(1, 1) == "l"
end
@@ -727,6 +734,7 @@ Version: %s
Section: devel
Priority: optional
Architecture: %s%s
+Installed-Size: %d
Maintainer: Boris Nagaev <bnagaev@gmail.com>
Homepage: http://mxe.cc
Description: %s
@@ -755,12 +763,20 @@ local function debianControl(options)
version,
options.arch,
deb_deps_str,
+ math.ceil(options.size_bytes / 1024),
options.description1,
options.description2
)
end
local function makePackage(name, files, deps, ver, d1, d2, dst, recommends)
+ -- calculate size_bytes
+ local size_bytes = 0
+ for _, f in ipairs(files) do
+ local size = math.ceil(fileSize(f) / 4096) * 4096
+ size_bytes = size_bytes + size
+ end
+ -- dirname
dst = dst or '.'
local dirname = ('%s/%s_%s'):format(dst, name,
protectVersion(ver))
@@ -785,6 +801,7 @@ local function makePackage(name, files, deps, ver, d1, d2, dst, recommends)
arch = ARCH,
deps = deps,
recommends = recommends,
+ size_bytes = size_bytes,
description1 = d1,
description2 = d2,
}