xref: /petsc/config/BuildSystem/config/packages/GSL.py (revision 07c2e4feb6773e78bda63e3a89d5b841667f9670)
1import config.package
2import os
3
4class Configure(config.package.GNUPackage):
5  def __init__(self, framework):
6    config.package.GNUPackage.__init__(self, framework)
7    self.version           = '2.8'
8    self.versionname       = "GSL_MAJOR_VERSION.GSL_MINOR_VERSION"
9    self.download          = ['https://ftp.gnu.org/gnu/gsl/gsl-'+self.version+'.tar.gz',
10                              'https://mirrors.kernel.org/gnu/gsl/gsl-'+self.version+'.tar.gz']
11    self.functions         = ['gsl_sf_hermite_zero']
12    self.includes          = ['gsl/gsl_version.h']
13    self.liblist           = [['libgsl.a','libgslcblas.a']]
14    self.downloadonWindows = 1
15    return
16
17  def setupDependencies(self, framework):
18    config.package.Package.setupDependencies(self, framework)
19    self.mathlib         = framework.require('config.packages.mathlib',self)
20    self.deps            = [self.mathlib]
21    return
22
23  def Install(self):
24    macos_deployment = ''
25    if 'MACOSX_DEPLOYMENT_TARGET' in os.environ:
26      macos_deployment = os.environ['MACOSX_DEPLOYMENT_TARGET']
27      msg = 'WARNING! Found environment variable: %s=%s\n' % ('MACOSX_DEPLOYMENT_TARGET', os.environ['MACOSX_DEPLOYMENT_TARGET'])
28      self.logPrintBox(msg+'Removing it for GSL build, since it breaks the GSL build')
29      del os.environ['MACOSX_DEPLOYMENT_TARGET']
30    installDir = config.package.GNUPackage.Install(self)
31    if macos_deployment:
32      os.environ['MACOSX_DEPLOYMENT_TARGET'] = macos_deployment
33    return installDir
34