diff options
author | Dan McGee <dan@archlinux.org> | 2007-10-29 04:24:11 +0100 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2007-10-29 04:24:11 +0100 |
commit | 671224b64c9478644125deec1496a27e8f579da9 (patch) | |
tree | 57f13df2f26fb869a7f3f14cf0a180fec4c49516 /pactest | |
parent | 0dc34f496dca3d916eae85a0357049b8b9d711bb (diff) | |
download | pacman-671224b64c9478644125deec1496a27e8f579da9.tar.gz pacman-671224b64c9478644125deec1496a27e8f579da9.tar.xz |
pactest: generate the filelist the correct way
Actually use python commands to generate the filelist instead of os.system
calls that don't necessarily work everywhere. Noticed when running "make
check" on FreeBSD where the tar program is actually bsdtar.
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'pactest')
-rwxr-xr-x | pactest/pmpkg.py | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/pactest/pmpkg.py b/pactest/pmpkg.py index c302d2ae..c6859e8f 100755 --- a/pactest/pmpkg.py +++ b/pactest/pmpkg.py @@ -165,13 +165,23 @@ class pmpkg: # .FILELIST if self.files: - os.system("tar cvf /dev/null * | sort >.FILELIST") + # generate a filelist + filelist = [] + current = "" + for path, dirs, files in os.walk("."): + # we have to strip the './' portion from the path + # and add a newline to each entry. + current = os.path.join(path, "")[2:] + if len(current) != 0: + filelist.append(current + "\n") + for file in files: + # skip .PKGINFO, etc. + if(not file.startswith(".")): + filelist.append(os.path.join(path, file)[2:] + "\n") + f = open('.FILELIST', 'w') + f.writelines(filelist) + f.close() targets += " .FILELIST *" - else: - #prevent some pacman warnings... I expect a real package would - #always have at least one file... - os.system("touch .FILELIST") - targets += " .FILELIST" #safely create the dir mkdir(os.path.dirname(self.path)) |