Allow license files to use different symbols for comments
This commit is contained in:
parent
b63d11d5b0
commit
6906911e85
@ -378,6 +378,9 @@ def __init__(self, spec):
|
||||
if not hasattr(self, 'license_required'):
|
||||
self.license_required = False
|
||||
|
||||
if not hasattr(self, 'license_comment'):
|
||||
self.license_comment = '#'
|
||||
|
||||
if not hasattr(self, 'license_files'):
|
||||
self.license_files = []
|
||||
|
||||
@ -1040,46 +1043,59 @@ def set_up_license(self):
|
||||
|
||||
|
||||
def write_license_file(self, license_path):
|
||||
# Use the first file listed in license_files
|
||||
"""Writes empty license file.
|
||||
|
||||
Comments give suggestions on alternative methods of installing
|
||||
a license."""
|
||||
|
||||
comment = self.license_comment
|
||||
license = open(license_path, 'w')
|
||||
|
||||
license.write("""\
|
||||
# A license is required to use %s.
|
||||
#
|
||||
# The recommended solution is to store your license key in this file.
|
||||
# By default, %s searches the following file(s) for a license key
|
||||
# (relative to the installation prefix):
|
||||
#
|
||||
#\t%s
|
||||
#
|
||||
""" % (self.name, self.name, '\n#\t'.join(self.license_files)))
|
||||
{0} A license is required to use {1}.
|
||||
{0}
|
||||
{0} The recommended solution is to store your license key in this file.
|
||||
{0} By default, {1} searches the following file(s) for a license key
|
||||
{0} (relative to the installation prefix):
|
||||
{0}
|
||||
""".format(comment, self.name))
|
||||
|
||||
for filename in self.license_files:
|
||||
license.write("{0}\t{1}\n".format(comment, filename))
|
||||
|
||||
license.write("{0}\n".format(comment))
|
||||
|
||||
if self.license_vars:
|
||||
license.write("""\
|
||||
# Alternatively, use one of the following environment variable(s):
|
||||
#
|
||||
#\t%s
|
||||
#
|
||||
# If you choose to store your license in a non-standard location, you may
|
||||
# set one of these variable(s) to the full pathname to the license file, or
|
||||
# port@host if you store your license keys on a dedicated license server.
|
||||
# You will likely want to set this variable in a module file so that it
|
||||
# gets loaded every time someone tries to use %s.
|
||||
#
|
||||
""" % ('\n#\t'.join(self.license_vars), self.name))
|
||||
{0} Alternatively, use one of the following environment variable(s):
|
||||
{0}
|
||||
""".format(comment))
|
||||
|
||||
for var in self.license_vars:
|
||||
license.write("{0}\t{1}\n".format(comment, var))
|
||||
|
||||
license.write("""\
|
||||
{0}
|
||||
{0} If you choose to store your license in a non-standard location, you may
|
||||
{0} set one of these variable(s) to the full pathname to the license file, or
|
||||
{0} port@host if you store your license keys on a dedicated license server.
|
||||
{0} You will likely want to set this variable in a module file so that it
|
||||
{0} gets loaded every time someone tries to use {1}.
|
||||
{0}
|
||||
""".format(comment, self.name))
|
||||
|
||||
if self.license_url:
|
||||
license.write("""\
|
||||
# For further information on how to acquire a license, please refer to:
|
||||
#
|
||||
#\t%s
|
||||
#
|
||||
""" % self.license_url)
|
||||
{0} For further information on how to acquire a license, please refer to:
|
||||
{0}
|
||||
{0}\t{1}
|
||||
{0}
|
||||
""".format(comment, self.license_url))
|
||||
|
||||
license.write("""\
|
||||
# You may enter your license below.
|
||||
{0} You may enter your license below.
|
||||
|
||||
""")
|
||||
""".format(comment))
|
||||
|
||||
license.close()
|
||||
|
||||
|
@ -5,17 +5,26 @@ class Nag(Package):
|
||||
"""The NAG Fortran Compiler."""
|
||||
homepage = "http://www.nag.com/nagware/np.asp"
|
||||
|
||||
version('6.1', '1e29d9d435b7ccc2842a320150b28ba4',
|
||||
url='http://www.nag.com/downloads/impl/npl6a61na_amd64.tgz')
|
||||
version('6.1', '1e29d9d435b7ccc2842a320150b28ba4')
|
||||
version('6.0', '3fa1e7f7b51ef8a23e6c687cdcad9f96')
|
||||
|
||||
# Licensing
|
||||
license_required = True
|
||||
license_comment = '!'
|
||||
license_files = ['lib/nag.key',
|
||||
'lib/nag.licence',
|
||||
'lib/nagware.licence']
|
||||
license_vars = ['NAG_KUSARI_FILE']
|
||||
license_url = 'http://www.nag.com/doc/inun/np61/lin-mac/klicence.txt'
|
||||
|
||||
|
||||
def url_for_version(self, version):
|
||||
# TODO: url and checksum are architecture dependent
|
||||
# TODO: We currently only support x86_64
|
||||
return 'http://www.nag.com/downloads/impl/npl6a%sna_amd64.tgz' % \
|
||||
str(version).replace('.', '')
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Set installation directories
|
||||
os.environ['INSTALL_TO_BINDIR'] = prefix.bin
|
||||
|
@ -27,6 +27,7 @@ class Pgi(Package):
|
||||
|
||||
# Licensing
|
||||
license_required = True
|
||||
license_comment = '#'
|
||||
license_files = ['license.dat']
|
||||
license_vars = ['PGROUPD_LICENSE_FILE', 'LM_LICENSE_FILE']
|
||||
license_url = 'http://www.pgroup.com/doc/pgiinstall.pdf'
|
||||
|
Loading…
Reference in New Issue
Block a user