aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/contrib/python/generate-manifest-3.5.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/contrib/python/generate-manifest-3.5.py')
-rwxr-xr-xscripts/contrib/python/generate-manifest-3.5.py56
1 files changed, 32 insertions, 24 deletions
diff --git a/scripts/contrib/python/generate-manifest-3.5.py b/scripts/contrib/python/generate-manifest-3.5.py
index 5b32386de52..419903517c8 100755
--- a/scripts/contrib/python/generate-manifest-3.5.py
+++ b/scripts/contrib/python/generate-manifest-3.5.py
@@ -77,6 +77,29 @@ class MakefileMaker:
else:
return os.path.join( dirname, basename, '__pycache__' )
+ def formatVar( self, varname, values, override=None, is_append=False, max_length=80):
+ out = varname
+ if override:
+ out += '_%s' % override
+ assigment = '='
+ if is_append:
+ assigment = '+='
+ if not values:
+ return out + ' %s ""' % assigment
+ else:
+ out += ' %s "\\\n' % assigment
+ indent = len(out) - 2
+ line = ' ' * indent
+ for value in values:
+ if len(line) > max_length:
+ out += line + '\\\n'
+ line = ' ' * indent
+ line += "%s " % value
+ out += line + '\\\n'
+ out += ' '*indent + '"'
+
+ return out
+
def doBody( self ):
"""generate body of Makefile"""
@@ -91,19 +114,14 @@ class MakefileMaker:
for name in ['${PN}-modules'] + sorted(self.packages):
pkglist.append('%s-native' % name.replace('${PN}', 'python3'))
- self.out('RPROVIDES += "%s"' % " ".join(pkglist))
+ self.out( self.formatVar('RPROVIDES', pkglist, is_append=True) )
return
#
# generate provides line
#
- provideLine = 'PROVIDES+="'
- for name in sorted(self.packages):
- provideLine += "%s " % name
- provideLine += '"'
-
- self.out( provideLine )
+ self.out( self.formatVar('PROVIDES', sorted(self.packages), is_append=True) )
self.out( "" )
#
@@ -133,9 +151,12 @@ class MakefileMaker:
# write out the description, revision and dependencies
#
self.out( 'SUMMARY_%s="%s"' % ( name, desc ) )
- self.out( 'RDEPENDS_%s="%s"' % ( name, deps ) )
+ self.out( self.formatVar('RDEPENDS', [deps], override=name) )
- line = 'FILES_%s="' % name
+ #
+ # write out the packages files
+ #
+ self.out( self.formatVar('FILES', files, override=name) )
#
# check which directories to make in the temporary directory
@@ -145,25 +166,12 @@ class MakefileMaker:
for target in files:
dirset[os.path.dirname( target )] = True
- #
- # generate which files to copy for the target (-dfR because whole directories are also allowed)
- #
-
- for target in files:
- line += "%s " % target
-
- line += '"'
- self.out( line )
self.out( "" )
self.out( 'SUMMARY_${PN}-modules="All Python modules"' )
- line = 'RDEPENDS_${PN}-modules="'
-
- for name, data in sorted(self.packages.items()):
- if name not in ['${PN}-dev', '${PN}-distutils-staticdev']:
- line += "%s " % name
+ pkgs = [name for name, _ in sorted(self.packages.items()) if name not in ['${PN}-dev', '${PN}-distutils-staticdev']]
+ self.out( self.formatVar('RDEPENDS', pkgs, override='{PN}-modules') )
- self.out( "%s \"" % line )
self.out( 'ALLOW_EMPTY_${PN}-modules = "1"' )
def doEpilog( self ):