PyXMake Developer Guide 1.0
PyXMake
Loading...
Searching...
No Matches
PyXMake.Build.Make.Custom Class Reference

Base class for all custom build events inherited from Make. More...

Inheritance diagram for PyXMake.Build.Make.Custom:
PyXMake.Build.Make.Make PyXMake.Tools.Utility.AbstractBase PyXMake.Build.Make.PyReq

Public Member Functions

 __init__ (self, *args, **kwargs)
 
 Build (self, cmdstring, **kwargs)
 
 parse (cls, **kwargs)
 
- Public Member Functions inherited from PyXMake.Build.Make.Make
 __posix__ (self, **kwargs)
 
 AddIncludePath (self, includes)
 
 AddDependencyPath (self, dependencies)
 
 UseLibraries (self, libs)
 
 SourcePath (self, path)
 
 OutputPath (self, path, files="")
 
 Environment (self, path, script="ifortvars.bat")
 
 Preprocessing (self, cmdstring='', inend='', outend='', copyfiles=[], replace={'!DEC$ IF':'#IF','!DEC$ ELSE':'#ELSE','!DEC$ ENDIF':'#ENDIF'})
 
 Postprocessing (self, cmdstring='')
 
 run (cls, **kwargs)
 
 create (self, **kwargs)
 
- Public Member Functions inherited from PyXMake.Tools.Utility.AbstractBase
 __new__ (cls, *args, **kwargs)
 
 recover (cls, *args)
 
 classify (cls, *args, **kwargs)
 
 jsonify (self)
 
 update (self, **kwargs)
 
 __repr__ (self)
 
 __str__ (self)
 
 __getstate__ (self)
 
 __setstate__ (self, _dict)
 

Public Attributes

str MakeObjectKind = "Custom"
 String identifier of current instance.
 
str exe = "cmd.exe /c &&"
 The executable command used in all build events.
 
# pragma no cover hasFoss
 
 buildname = self.buildid + self.architecture
 Immutable settings for Custom object.
 
list mkl_dependency = ["mkl_vsl.f90"]
 
str compargs = ""
 Command line arguments passed in by the user.
 
 temps = self.temps + (os.getenv("ABQ_ENV_FILE"), )
 Command line arguments passed in by the user.
 
command+ hasFoss = " -DCMAKE_VERBOSE_MAKEFILE=On"
 
 precmd = delimn.join([batch,'%s' % command])
 
str makecmd = delimn.join([batch,'%s' % "%s --build build" % self.exe])
 Command line arguments passed in by the user.
 
 postcmd = delimn.join([batch,'%s' % "%s --install build" % self.exe])
 
- Public Attributes inherited from PyXMake.Build.Make.Make
 buildid = BuildID
 Base string of build object.
 
list srcs = []
 Source file or folders.
 
list bare = not BuildID and not self.srcs
 
 stype = kwargs.get("stype",'Fortran')
 Source file type.
 
 verbose = verbose
 Level of verbosity of the current build object.
 
 hasFoss = kwargs.get("foss", Utility.GetExecutable("choco") or Utility.GetPlatform() in ["linux"] or kwargs.get("bash",False))
 Toggle between free open source software and commercial 3rd party libraries.
 
 scrtdir = os.getcwd()
 Current scratch directory

 
 srcdir = os.getcwd()
 Default search directory for source files.
 
 outdir = os.getcwd()
 Default search directory for output.
 
_, self.intelpath, self.iniCompiler intelpath = content
 Path to Intel Fortran Compiler (read from Paths.log or empty).
 
tuple temps = ()
 Tuple of data to be removed after job completion.
 
list incdirs = []
 List of include directories.
 
list libdirs = []
 List of library directories.
 
list libs = []
 List of actual libraries (by name) used during linking.
 
list copyfiles = []
 List of files to be copied to the output directory after finish.
 
str iniCompiler = ""
 Default initialization of compiler script.
 
bool setarch = True if kwargs.get('arch', None) in ['x86', 'x64'] else False
 Define the architecture for the build directly by using the keyword argument "arch".
 
 msvsc = kwargs.get("msvsc",'vs2015')
 Default version of Microsoft visual studio used by the Intel Fortran Compiler.
 
str architecture = 'x86'
 Processor architecture.
 
str postcmd = ""
 Post build command.
 
 buildname = self.temps + (inputfile, )
 
str precmd = self.iniCompiler+" "+cmdstring
 Command executed during pre-build event.
 
 compargs = cmdstring
 Command line arguments passed in by the user.
 
str makecmd = self.iniCompiler+" "+os.path.join(self.path2exe,self.exe)+" "+ cmd + cmdstring
 Command executed during build event.
 
 mkl_dependency
 

Additional Inherited Members

- Static Public Member Functions inherited from PyXMake.Build.Make.Make
 __parser__ ()
 
 Detach ()
 
 F2CPreprocessing (PreprocessingFile)
 
 sanitize (string, **kwargs)
 
 setup (*args, **kwargs)
 
- Static Public Member Functions inherited from PyXMake.Tools.Utility.AbstractBase
 __getbase__ (base, cls)
 
- Protected Attributes inherited from PyXMake.Build.Make.Make
list _mkl_includes = [x for x in self.incdirs if "mkl" in x]
 

Detailed Description

Base class for all custom build events inherited from Make.

Inherited class to build projects without any presets.


Constructor & Destructor Documentation

◆ __init__()

PyXMake.Build.Make.Custom.__init__ ( self,
* args,
** kwargs )
Initialization of Custom class object.

Reimplemented from PyXMake.Build.Make.Make.

Reimplemented in PyXMake.Build.Make.PyReq.

Definition at line 1109 of file Make.py.

Member Function Documentation

◆ Build()

PyXMake.Build.Make.Custom.Build ( self,
cmdstring,
** kwargs )
Assemble command string for the main build event.

Reimplemented from PyXMake.Build.Make.Make.

Definition at line 1148 of file Make.py.

◆ parse()

PyXMake.Build.Make.Custom.parse ( cls,
** kwargs )
Execute the current class as a CLI command.

Reimplemented in PyXMake.Build.Make.PyReq.

Definition at line 1267 of file Make.py.

Member Data Documentation

◆ buildname

PyXMake.Build.Make.Custom.buildname = self.buildid + self.architecture

Immutable settings for Custom object.


Temporary build name, assembled using BuildID.

Definition at line 1132 of file Make.py.

◆ compargs

PyXMake.Build.Make.Custom.compargs = ""

Command line arguments passed in by the user.

Definition at line 1142 of file Make.py.

◆ exe

str PyXMake.Build.Make.Custom.exe = "cmd.exe /c &&"

The executable command used in all build events.

Definition at line 1118 of file Make.py.

◆ hasFoss [1/2]

# pragma no cover PyXMake.Build.Make.Custom.hasFoss
Initial value:
= ["cmake" if not Utility.GetExecutable("cmake", **settings) else
Utility.InQuotes(Utility.GetExecutable("cmake",get_path=True, **settings)[-1]) ][0]

Definition at line 1127 of file Make.py.

◆ hasFoss [2/2]

command + PyXMake.Build.Make.Custom.hasFoss = " -DCMAKE_VERBOSE_MAKEFILE=On"

Definition at line 1188 of file Make.py.

◆ makecmd

str PyXMake.Build.Make.Custom.makecmd = delimn.join([batch,'%s' % "%s --build build" % self.exe])

Command line arguments passed in by the user.

Command executed during build event.

Definition at line 1224 of file Make.py.

◆ MakeObjectKind

str PyXMake.Build.Make.Custom.MakeObjectKind = "Custom"

String identifier of current instance.


Definition at line 1115 of file Make.py.

◆ mkl_dependency

list PyXMake.Build.Make.Custom.mkl_dependency = ["mkl_vsl.f90"]

Definition at line 1139 of file Make.py.

◆ postcmd

PyXMake.Build.Make.Custom.postcmd = delimn.join([batch,'%s' % "%s --install build" % self.exe])

Definition at line 1225 of file Make.py.

◆ precmd

PyXMake.Build.Make.Custom.precmd = delimn.join([batch,'%s' % command])

Definition at line 1223 of file Make.py.

◆ temps

PyXMake.Build.Make.Custom.temps = self.temps + (os.getenv("ABQ_ENV_FILE"), )

Command line arguments passed in by the user.

Command executed during build event.

Definition at line 1145 of file Make.py.


The documentation for this class was generated from the following file: