From a609dfb2d58dc04c8eaef50f5f2cf056c0cf9df2 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Sep 07 2019 00:41:10 +0000 Subject: Check NeedsCompilation for arch dependence if available. --- diff --git a/r2spec/rpackage.py b/r2spec/rpackage.py index 5114ea9..1e24ea1 100644 --- a/r2spec/rpackage.py +++ b/r2spec/rpackage.py @@ -92,11 +92,19 @@ class RPackage(object): def determine_arch(self): """ Determine if the package is arch or noarch by looking at the sources. - Set arch to True if the package is arch dependant. + Set arch to True if the package is arch dependent. Set arch to False if the package is noarch. Let arch to None if could not determine. """ - self.log.info('Determining if the package is arch dependant or not') + self.log.info('Determining if the package is arch dependent or not') + try: + self.arch = self.description['NeedsCompilation'].lower() != 'no' + except KeyError: + pass + else: + self.log.info('Package is %sarch dependent', + '' if self.arch else 'not ') + return extensions = ['c', 'C', 'cp', 'cpp', 'h', 'H',] if os.path.exists(self.name): for root, dirs, files in os.walk(self.name): @@ -107,10 +115,10 @@ class RPackage(object): or 'f' in extension \ or 'F' in extension: self.arch = True - self.log.info('Package is arch dependant') + self.log.info('Package is arch dependent') return self.arch = False - self.log.info('Package is not arch dependant') + self.log.info('Package is not arch dependent') return else: self.log.info(