[Reproducible-builds] [dh-python] 174/183: Remove empty directories when moving files
Jérémy Bobbio
lunar at moszumanska.debian.org
Fri Sep 19 15:30:35 UTC 2014
This is an automated email from the git hooks/post-receive script.
lunar pushed a commit to branch pu/reproducible_builds
in repository dh-python.
commit 01b39b13473633c14bb28df6d1c0b543aaaf7bb1
Author: Matthias Klose <doko at debian.org>
Date: Sun May 11 19:41:30 2014 +0200
Remove empty directories when moving files
---
debian/changelog | 4 ++++
dhpython/fs.py | 18 +++++++++++++-----
2 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 80547a0..98bc084 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,13 @@
dh-python (1.20140128-2) UNRELEASED; urgency=medium
+ [ Piotr Ożarowski ]
* pybuild: do not invoke clean commands for missing interpreters
(and thus do not require all interpreter versions to be installed while
building source package outside build environment, closes: 737091)
+ [ Matthias Klose ]
+ * Remove empty directories when moving files.
+
-- Piotr Ożarowski <piotr at debian.org> Thu, 30 Jan 2014 21:41:34 +0100
dh-python (1.20140128-1) unstable; urgency=low
diff --git a/dhpython/fs.py b/dhpython/fs.py
index 035804b..c10f2a0 100644
--- a/dhpython/fs.py
+++ b/dhpython/fs.py
@@ -22,7 +22,7 @@ import logging
import os
import re
from filecmp import cmp as cmpfile
-from os.path import exists, isdir, islink, join, split, splitext
+from os.path import exists, dirname, isdir, islink, join, split, splitext
from shutil import rmtree
from stat import ST_MODE, S_IXUSR, S_IXGRP, S_IXOTH
from dhpython import MULTIARCH_DIR_TPL
@@ -47,8 +47,12 @@ def fix_locations(package, interpreter, versions, options):
log.debug('moving files from %s to %s', srcdir, dstdir)
share_files(srcdir, dstdir, interpreter, options)
parent_dir = '/'.join(srcdir.split('/')[:-1])
- if exists(parent_dir) and not os.listdir(parent_dir):
- os.rmdir(parent_dir)
+ while parent_dir:
+ if exists(parent_dir):
+ if os.listdir(parent_dir):
+ break
+ os.rmdir(parent_dir)
+ parent_dir = dirname(parent_dir)
# do the same with debug locations
dstdir = interpreter.sitedir(package, gdb=True)
@@ -57,8 +61,12 @@ def fix_locations(package, interpreter, versions, options):
log.debug('moving files from %s to %s', srcdir, dstdir)
share_files(srcdir, dstdir, interpreter, options)
parent_dir = '/'.join(srcdir.split('/')[:-1])
- if exists(parent_dir) and not os.listdir(parent_dir):
- os.rmdir(parent_dir)
+ while parent_dir:
+ if exists(parent_dir):
+ if os.listdir(parent_dir):
+ break
+ os.rmdir(parent_dir)
+ parent_dir = dirname(parent_dir)
def share_files(srcdir, dstdir, interpreter, options):
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/dh-python.git
More information about the Reproducible-builds
mailing list