Calling make
will build, clean or install your C/C++ library.
# S4 method for BSysProject
make(.Object, Operation = "", Debug = NULL)
S4 BSysProject
object instance defining the library to be made. See BuildSys-package
for more information.
the make
operation to be carried out. Can be one of,
""
build the library by compiling and linking all source files
"clean"
clean the library by deleting all object files (.o
files) and the library itself (.dll
or .so
files)
"install"
copy the built library file and/or header files to the install locations (see initProjectFromFolder
and BuildSys-package
)
A Boolean
indicating whether to make a debug build. If NULL
the IsDebug
attribute in the BSysProject
determines
if a debug build is being made. If non-null the IsDebug
attribute is updated using the Debug
argument.
This method returns an updated S4 BSysProject
object instance. If the any change to Debug
state is to be preserved then the
returned result should be assigned to the calling BSysProject
object instance passed in the Object
argument.
Calling make
results in the project described by the Object
instance being transformed into a GNU makefile and then
GNU make being called with the appropriate operation as determined by the Operation
argument. The makefile will be
written to the sub-folder specified by the ObjName
attribute of the Object
instance. If the makefile already exists it
will only be re-created if the existing one in not in sync with the project definition. This is determined by an md5 digest of
the project definition which is stored as the header comment line in the makefile. If the makefile is re-written then a make clean
operation will be automatically carried out to ensure the built library remains in sync with the makefile.