Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replicated copyright change to open embedded, and resolved multi-license ToDo #100

Merged
merged 12 commits into from
Dec 20, 2017
Merged
16 changes: 4 additions & 12 deletions superflore/generators/bitbake/yocto_recipe.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import hashlib
import os.path
import tarfile
from time import gmtime, strftime
from urllib.request import urlretrieve

from superflore.exceptions import NoPkgXml
Expand Down Expand Up @@ -114,7 +115,8 @@ def get_recipe_text(self, distributor, license_text, die_msg=None):
Generate the Yocto Recipe, given the distributor line
and the license text.
"""
ret = '# Copyright 2017 ' + distributor + '\n'
ret = "# Copyright " + strftime("%Y", gmtime()) + " "
ret += distributor + "\n"
ret += '# Distributed under the terms of the ' + license_text
ret += ' license\n\n'

Expand All @@ -134,18 +136,8 @@ def get_recipe_text(self, distributor, license_text, die_msg=None):
self.license = self.license.replace(' ', '-')
ret += 'LICENSE = "' + self.license + '"\n'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@shaneallcroft You might update this one as well.

Copy link
Contributor Author

@shaneallcroft shaneallcroft Dec 19, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh heck yeah! I'm on it 👍

elif isinstance(self.license, list):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I don't think you need to use a join when self.license is a string. I think this line could just be

ret += 'LICENSE = "%s"\n' % getlicense(self.license)

Copy link
Contributor Author

@shaneallcroft shaneallcroft Dec 20, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahhh, i didnt see that '[0]' on the end of line 136, thought it was just being made into a list there so i treated it the same, as when it was a list my b!

self.license = self.license[0].replace(' ', '-')
ret += 'LICENSE = "' + self.license + '"\n'
"""
TODO(allenh1): add this functionality
first = True
for lic in self.license:
if not first:
ret += ' '
first = False
ret += lic
ret += 'LICENSE = "' + ' & '.join(self.license)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is very close. Make sure to call the getlicense function on each entry of the list! Something like the following would probably do the trick.

' & '.join([getlicense(l) for l in self.license])

Copy link
Contributor Author

@shaneallcroft shaneallcroft Dec 19, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OH yeah, that makes sense, cause the hackyness is gone so every item needs to be taken into account 👍 im on it 👍

ret += '"\n'
"""
ret += 'LIC_FILES_CHKSUM = "file://package.xml;beginline='
ret += str(self.license_line)
ret += ';endline='
Expand Down