commit: 424f333b044a89f3a7a782ceef43480795696f3b
Author: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache <DOT> Org>
AuthorDate: Thu Nov 7 06:38:30 2019 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Fri Nov 8 04:31:42 2019 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=424f333b
repoman: ebuild.absdosym check: Detect absolute paths starting with ${D}, ${ED}
etc.
Bug: https://bugs.gentoo.org/699514
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache.Org>
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>
repoman/lib/repoman/modules/linechecks/do/dosym.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/repoman/lib/repoman/modules/linechecks/do/dosym.py
b/repoman/lib/repoman/modules/linechecks/do/dosym.py
index bab4dad03..c342d3595 100644
--- a/repoman/lib/repoman/modules/linechecks/do/dosym.py
+++ b/repoman/lib/repoman/modules/linechecks/do/dosym.py
@@ -7,8 +7,10 @@ from repoman.modules.linechecks.base import LineCheck
class EbuildNonRelativeDosym(LineCheck):
"""Check ebuild for dosym using absolute paths instead of relative."""
repoman_check_name = 'ebuild.absdosym'
+ variables = ('D', 'ED', 'ROOT', 'EROOT', 'BROOT')
regex = re.compile(
- r'^\s*dosym\s+["\']?(/(bin|etc|lib|opt|sbin|srv|usr|var)\S*)')
+
r'^\s*dosym\s+(["\']?((\$(%s)\W|\${(%s)(%%/)?})|/(bin|etc|lib|opt|sbin|srv|usr|var))\S*)'
%
+ ('|'.join(variables), '|'.join(variables)), re.ASCII)
def check(self, num, line):
match = self.regex.match(line)