summaryrefslogtreecommitdiffstats
path: root/wscript
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-08-18 13:14:48 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-09-14 07:11:40 +0200
commitaa27a85a83a4f05e77ed06825e24755f23f90eff (patch)
treefcd021b33ab424f1caff94a9c024f22ada4f27b3 /wscript
parentbuild: Alternative build system based on waf (diff)
downloadrtems-aa27a85a83a4f05e77ed06825e24755f23f90eff.tar.bz2
build: Use Python tarfile instead of pax
This patch is for the new build system.
Diffstat (limited to 'wscript')
-rwxr-xr-xwscript27
1 files changed, 14 insertions, 13 deletions
diff --git a/wscript b/wscript
index 5463b1c788..2e42918ebb 100755
--- a/wscript
+++ b/wscript
@@ -405,22 +405,23 @@ class Item(object):
bld(rule="${XZ} < ${SRC} > ${TGT}", source=source, target=target)
return target
- def pax(self, bld, source, remove, target):
+ def tar(self, bld, source, remove, target):
def run(task):
+ import tarfile
+
+ tar = tarfile.TarFile(
+ task.outputs[0].abspath(), "w", format=tarfile.USTAR_FORMAT
+ )
srcpath = bld.path.abspath() + "/"
bldpath = bld.bldnode.abspath() + "/"
- cmd = [bld.env.PAX[0], "-w", "-f", task.outputs[0].abspath()]
- for r in remove:
- cmd.extend(
- [
- "-s",
- "," + srcpath + r + ",,",
- "-s",
- "," + bldpath + r + ",,",
- ]
- )
- cmd.extend([i.abspath() for i in task.inputs])
- return task.exec_command(cmd)
+ for src in task.inputs:
+ src = src.abspath()
+ dst = src
+ for r in remove:
+ dst = src.replace(srcpath + r, "").replace(bldpath + r, "")
+ tar.add(src, dst)
+ tar.close()
+ return 0
bld(rule=run, source=source, target=target)
return target