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.requirescxx11 = 1 12 self.cxx = 1 13 self.precisions = ['double'] 14 self.complex = 0 15 self.cmakelistsdir = 'build/cmake' 16 return 17 18 def setupDependencies(self, framework): 19 config.package.CMakePackage.setupDependencies(self, framework) 20 self.openmp = framework.require('config.packages.openmp',self) 21 self.odeps = [self.openmp] 22 return 23 24 def formCMakeConfigureArgs(self): 25 import os 26 if self.versionToTuple(self.cmake.foundversion) < (3,4,0): raise RuntimeError("Requires cmake version 3.4 or higher: use --download-cmake") 27 args = config.package.CMakePackage.formCMakeConfigureArgs(self) 28 # args.append('--enable-examples=no') # this option doesn't work to prevent processing examples 29 if self.openmp.found: 30 args.append('-DENABLE_OPENMP=ON') 31 else: 32 args.append('-DENABLE_OPENMP=OFF') 33 args.append('-DCMAKE_INSTALL_LIBDIR:STRING="lib"') 34 return args 35