summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/repoman5
-rw-r--r--pym/repoman/checks.py7
2 files changed, 10 insertions, 2 deletions
diff --git a/bin/repoman b/bin/repoman
index 14d442dc7..6124f0408 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -494,6 +494,9 @@ elif os.path.isdir(os.path.join(portdir_overlay, ".hg")):
# This is needed because we try to avoid merge collisions.
check_changelog = vcs in ('CVS', 'SVN')
+# Disable copyright/mtime check if vcs does not preserve mtime (bug #324075).
+check_copyright_mtime = vcs not in ('git',)
+
vcs_local_opts = repoman_settings.get("REPOMAN_VCS_LOCAL_OPTS", "").split()
vcs_global_opts = repoman_settings.get("REPOMAN_VCS_GLOBAL_OPTS")
if vcs_global_opts is None:
@@ -1769,6 +1772,8 @@ for x in scanlist:
# Syntax Checks
relative_path = os.path.join(x, y + ".ebuild")
full_path = os.path.join(repodir, relative_path)
+ if not check_copyright_mtime:
+ pkg.mtime = None
try:
# All ebuilds should have utf_8 encoding.
f = codecs.open(_unicode_encode(full_path,
diff --git a/pym/repoman/checks.py b/pym/repoman/checks.py
index 23f1267d9..4d12b07fd 100644
--- a/pym/repoman/checks.py
+++ b/pym/repoman/checks.py
@@ -67,14 +67,17 @@ class EbuildHeader(LineCheck):
repoman_check_name = 'ebuild.badheader'
- gentoo_copyright = r'^# Copyright ((1999|200\d)-)?%s Gentoo Foundation$'
+ gentoo_copyright = r'^# Copyright ((1999|2\d\d\d)-)?%s Gentoo Foundation$'
# Why a regex here, use a string match
# gentoo_license = re.compile(r'^# Distributed under the terms of the GNU General Public License v2$')
gentoo_license = r'# Distributed under the terms of the GNU General Public License v2'
cvs_header = re.compile(r'^#\s*\$Header.*\$$')
def new(self, pkg):
- self.modification_year = str(time.gmtime(pkg.mtime)[0])
+ if pkg.mtime is None:
+ self.modification_year = r'2\d\d\d'
+ else:
+ self.modification_year = str(time.gmtime(pkg.mtime)[0])
self.gentoo_copyright_re = re.compile(
self.gentoo_copyright % self.modification_year)