xref: /petsc/config/BuildSystem/config/packages/ColPack.py (revision 6a5217c03994f2d95bb2e6dbd8bed42381aeb015) !
1import config.package
2
3class Configure(config.package.CMakePackage):
4  def __init__(self, framework):
5    config.package.CMakePackage.__init__(self, framework)
6    self.gitcommit     = '043e3cd'
7    self.download      = ['git://https://github.com/caidao22/ColPack.git']
8    self.includes      = ['ColPack/ColPackHeaders.h']
9    self.liblist       = [['libColPack.a']]
10    self.functionsCxx  = [1,'void current_time();','current_time()']
11    self.buildLanguages= ['Cxx']
12    self.precisions    = ['double']
13    self.complex       = 0
14    self.cmakelistsdir = 'build/cmake'
15    return
16
17  def setupDependencies(self, framework):
18    config.package.CMakePackage.setupDependencies(self, framework)
19    self.openmp = framework.require('config.packages.openmp',self)
20    self.odeps = [self.openmp]
21    return
22
23  def formCMakeConfigureArgs(self):
24    import os
25    if self.versionToTuple(self.cmake.foundversion) < (3,4,0): raise RuntimeError("Requires cmake version 3.4 or higher: use --download-cmake")
26    args = config.package.CMakePackage.formCMakeConfigureArgs(self)
27    # args.append('--enable-examples=no')  #  this option doesn't work to prevent processing examples
28    if self.openmp.found:
29      args.append('-DENABLE_OPENMP=ON')
30    else:
31      args.append('-DENABLE_OPENMP=OFF')
32    return args
33