5.6. Build procedure input files

SALOME uses autoconf and automake GNU auto-tools to build the modules. The configure script is used for the build procedure to test the system configuration and to pre-configure the module construction Makefile files.

The SalomeSMITERConfig.cmake.in script provides a procedure that uses CMake and set of CMakeLists.txt files as input and uses autoconf to generate the configure script and automake to generate Makefile.in files.

The files with an .in extension are the skeletons that are the input of the configure script (to be more precise, these files should be listed in the end of the CMake file in the AC_OUTPUT() autoconf macro) and are transformed by the configure process.

Almost all files used for this process are located in the platform base module KERNEL that is referenced by the KERNEL_ROOT_DIR environment variable, namely in its salome_adm sub-folder. Similarly, the GUI_ROOT_DIR environment variable is used for the graphical user interface (GUI), that also provides a set of configuration utilities (m4 files) in its adm_local folder. However, some files must be modified as a function of the target module. This is the case for SalomeSMITERConfig.cmake.in and CMake files which usually need to be adapted to the module needs.

The file make_common_starter.am file in the adm_local directory of the example module provides basic build rules to be used in other CMakeLists.txt files. To refer to this file in the CMakeLists.txt it is necessary to use “include” clause:

include $(top_srcdir)/adm_local/unix/make_common_starter.am

The adm_local/unix/config_files is a directory in which the m4 files that are used to test the configuration of the system in the configure process can be placed. If the salome_adm files are not sufficient, additional configuration files can be put to the adm_local directory.