lutin.target.Target Class Reference

Public Member Functions

def get_type (self)
 
def add_type (self, name)
 
def get_name (self)
 
def get_mode (self)
 
def get_simulation (self)
 
def add_flag (self, type, list)
 
def create_number_from_version_string (self, data)
 
def set_cross_base (self, cross="")
 
def get_build_mode (self)
 
def get_full_name_source (self, basePath, file)
 
def get_full_name_cmd (self, module_name, basePath, file)
 
def get_full_name_warning (self, module_name, basePath, file)
 
def get_full_name_destination (self, module_name, basePath, file, suffix, remove_suffix=False)
 
def get_full_dependency (self, module_name, basePath, file)
 
def get_final_path (self)
 
def get_staging_path (self, name)
 
def get_build_path (self, name)
 
def get_build_path_object (self, name)
 
def get_build_path_bin (self, name)
 
def get_build_path_lib (self, name)
 
def get_build_path_data (self, name)
 
def get_build_path_include (self, name)
 
def get_build_path_temporary_generate (self, name)
 
def get_build_file_bin (self, name)
 
def get_build_file_static (self, name)
 
def get_build_file_dynamic (self, name)
 
def get_staging_path_bin (self, name)
 
def get_staging_path_lib (self, name)
 
def get_staging_path_data (self, name)
 
def get_staging_path_include (self, name)
 
def get_doc_path (self, module_name)
 
def is_module_build (self, my_module)
 
def is_module_build_tree (self, my_module)
 
def add_module (self, new_module)
 
def get_module (self, name)
 
def build_tree (self, name, package_name)
 
def clean (self, name)
 
def load_if_needed (self, name, optionnal=False)
 
def load_all (self)
 
def build (self, name, optionnal=False, actions=[])
 
def add_action (self, name_of_state="PACKAGE", level=5, name="no-name", action=None)
 
def make_package (self, pkg_name, pkg_properties, base_pkg_path, heritage_list)
 
def make_package_binary_data (self, path_package, pkg_name, base_pkg_path, heritage_list, static)
 
def make_package_binary_bin (self, path_package, pkg_name, base_pkg_path, heritage_list, static)
 
def make_package_binary_lib (self, path_package, pkg_name, base_pkg_path, heritage_list, static)
 
def make_package_generic_files (self, path_package, pkg_properties, pkg_name, base_pkg_path, heritage_list, static)
 
def generate_list_separate_coma (self, list)
 

Public Attributes

 config
 
 arch
 
 end_generate_package
 
 global_include_cc
 
 global_flags
 
 global_libs_ld
 
 global_libs_ld_shared
 
 suffix_cmd_line
 
 suffix_warning
 
 suffix_dependence
 
 suffix_obj
 
 prefix_lib
 
 suffix_lib_static
 
 suffix_lib_dynamic
 
 suffix_binary
 
 suffix_package
 
 path_generate_code
 
 path_arch
 
 path_bin
 
 path_lib
 
 path_data
 
 path_doc
 
 path_include
 
 path_temporary_generate
 
 path_object
 
 build_done
 
 build_tree_done
 
 module_list
 
 list_final_file
 
 sysroot
 
 action_on_state
 
 pkg_path_version_file
 
 pkg_path_maintainer_file
 
 pkg_path_application_name_file
 
 pkg_path_application_description_file
 
 pkg_path_readme_file
 
 pkg_path_change_log_file
 
 support_dynamic_link
 
 path_out
 
 path_final
 
 path_staging
 
 path_build
 
 cross
 
 java
 
 javah
 
 jar
 
 ar
 
 ranlib
 
 cc
 
 xx
 
 xx_version
 
 ld
 
 nm
 
 strip
 
 dlltool
 
 stdlib_name_libgcc
 
 stdlib_name_libsupc
 

Detailed Description

Target class represent the buyild environement for a specific platform like Linux, or Android ....

Member Function Documentation

def lutin.target.Target.add_action (   self,
  name_of_state = "PACKAGE",
  level = 5,
  name = "no-name",
  action = None 
)

Add action to do for package specific part when build upper element.

Parameters
[in]name_of_state(string) a state to call action
  • BINARY
  • BINARY_SHARED
  • BINARY_STAND_ALONE
  • LIBRARY
  • LIBRARY_DYNAMIC
  • LIBRARY_STATIC
  • PACKAGE
  • PREBUILD
  • DATA
[in]level(int) Value order to apply action
[in]name(string) Name of the action
[in]action(function handle) Function to call to execure action
Returns
None
def lutin.target.Target.add_flag (   self,
  type,
  list 
)

Add global target flags.

Parameters
[in]self(handle) Class handle
[in]type(string) inclusion group name 'c', 'c++', 'java' ...
[in]list([string,...] or string) List of path to include
Returns
None
def lutin.target.Target.add_module (   self,
  new_module 
)

Add new loaded module.

Parameters
[in]self(handle) Class handle
[in]new_module(handle) pointer on the module instance
Returns
None
def lutin.target.Target.add_type (   self,
  name 
)

Add a type that the model is based on.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of that the element is based on ...
def lutin.target.Target.build (   self,
  name,
  optionnal = False,
  actions = [] 
)

Build action on the target (execute specific actions on the modules...)

Note
Recursive call ...
Parameters
[in]self(handle) Class handle
[in]name(string) Module to build
[in]optionnal(bool) If the module is not accessible, this is not a probleme ==> optionnal dependency requested
[in]actions([string,...]) list of action to do. ex: build, gcov, dump, all, clean, install, uninstall, run, log
Returns
(None|Module handle| ...) complicated return ...
def lutin.target.Target.build_tree (   self,
  name,
  package_name 
)

Build data associated at the module name in a specific package.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
[in]package_name(string) Name of the package
Returns
None
def lutin.target.Target.clean (   self,
  name 
)

Clean a specific module for this target (clean all data in the "out" path)

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
None
def lutin.target.Target.create_number_from_version_string (   self,
  data 
)

create a string version number with the associated list values

Parameters
[in]self(handle) Class handle
[in]data([int|string,...]) version basic number
Returns
(string) version number
def lutin.target.Target.generate_list_separate_coma (   self,
  list 
)

convert a s list of string in a string separated by a ","

Parameters
[in]listList of element to transform
Returns
The requested string
def lutin.target.Target.get_build_file_bin (   self,
  name 
)

Get the path filename of the build binary name.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_file_dynamic (   self,
  name 
)

Get the path filename of the build shared library name.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_file_static (   self,
  name 
)

Get the path filename of the build static library name.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_mode (   self)

Get the current build mode.

Parameters
[in]self(handle) Class handle
Returns
Build mode value [debug,release]
def lutin.target.Target.get_build_path (   self,
  name 
)

Get the build path ==> dependency file, object files, cmdlines files, generate files, local install headers ...

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_path_bin (   self,
  name 
)

Get the build binary path where write .bin, .exe ...

files

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_path_data (   self,
  name 
)

Get the data path where pre-write the install "data" files.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_path_include (   self,
  name 
)

Get the include path where pre-install "include" headers files.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_path_lib (   self,
  name 
)

Get the shared/static library object path where write .a / .so files.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_path_object (   self,
  name 
)

Get the build object path where write .o files.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_build_path_temporary_generate (   self,
  name 
)

Get the path where to generate files when needed (before compiling / installing it)

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_final_path (   self)

Get the final path ==> contain all the generated packages.

Parameters
[in]self(handle) Class handle
Returns
(string) The path
def lutin.target.Target.get_mode (   self)

Get build mode of the target: ["debug", "release"].

Parameters
[in]self(handle) Class handle
Returns
(string) The current target build mode.
def lutin.target.Target.get_module (   self,
  name 
)

Get a module handle that is used in this target.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(handle|None) lutin.module.Module pointer on the module requested or None
def lutin.target.Target.get_name (   self)

Get the name of the target: Linux, Windows, ...

Parameters
[in]self(handle) Class handle
Returns
(string) Name of the target
def lutin.target.Target.get_simulation (   self)

Get build for a simulator (Ios and Android for example)

Parameters
[in]self(handle) Class handle
Returns
(bool) sumulation requested
def lutin.target.Target.get_staging_path (   self,
  name 
)

Get the staging path ==> all install stangalone package (no dependency file, no object files, no cmdlines files.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module
Returns
(string) The path
def lutin.target.Target.get_staging_path_bin (   self,
  name 
)

Get the bin path for staging step.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the package
Returns
(string) The path
def lutin.target.Target.get_staging_path_data (   self,
  name 
)

Get the data path for staging step.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the package
Returns
(string) The path
def lutin.target.Target.get_staging_path_include (   self,
  name 
)

Get the include path for staging step.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the package
Returns
(string) The path
def lutin.target.Target.get_staging_path_lib (   self,
  name 
)

Get the lib path for staging step.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the package
Returns
(string) The path
def lutin.target.Target.get_type (   self)

Get the type of the target: ["Linux, ...].

Parameters
[in]self(handle) Class handle
Returns
([string,...]) The current target name and other sub name type (ubuntu ...)
def lutin.target.Target.load_all (   self)

Load all module that are accessible in the worktree.

Parameters
[in]self(handle) Class handle
Returns
None
def lutin.target.Target.load_if_needed (   self,
  name,
  optionnal = False 
)

Load a specific module if it accessible.

Parameters
[in]self(handle) Class handle
[in]name(string) Name of the module to load
[in]optionnal(bool) not create an error if the module does not exist.
Returns
(bool) module loading status
def lutin.target.Target.make_package (   self,
  pkg_name,
  pkg_properties,
  base_pkg_path,
  heritage_list 
)

Create a package/bundle for the platform.

Parameters
[in]pkg_namePackage Name (generic name)
[in]pkg_propertiesProperty of the package
[in]base_pkg_pathBase path of the package
[in]heritage_listList of dependency of the package
[in]staticThe package is build in static mode
def lutin.target.Target.make_package_binary_bin (   self,
  path_package,
  pkg_name,
  base_pkg_path,
  heritage_list,
  static 
)

Create a generic tree of the binary folder.

Parameters
[in]path_packagePath of the basic install folder of the application
[in]pkg_namePackage Name (generic name)
[in]heritage_listList of dependency of the package
[in]staticThe package is build in static mode
Returns
True Something has been copied
False Nothing has been copied
def lutin.target.Target.make_package_binary_data (   self,
  path_package,
  pkg_name,
  base_pkg_path,
  heritage_list,
  static 
)

Create a generic tree of the shared data for each platform.

Parameters
[in]path_packagePath of the basic install folder of the application
[in]pkg_namePackage Name (generic name)
[in]heritage_listList of dependency of the package
[in]staticThe package is build in static mode
Returns
True Something has been copied
False Nothing has been copied
def lutin.target.Target.make_package_binary_lib (   self,
  path_package,
  pkg_name,
  base_pkg_path,
  heritage_list,
  static 
)

Create a generic tree of the library folder.

Parameters
[in]path_packagePath of the basic install folder of the application
[in]pkg_namePackage Name (generic name)
[in]heritage_listList of dependency of the package
[in]staticThe package is build in static mode
Returns
True Something has been copied
False Nothing has been copied
def lutin.target.Target.set_cross_base (   self,
  cross = "" 
)

Configure the cross toolchain.

Parameters
[in]self(handle) Class handle
[in]cross(string) Path of the cross toolchain
Returns
None

Member Data Documentation

lutin.target.Target.config

configuration of the build

lutin.target.Target.global_include_cc

Target global variables.

lutin.target.Target.path_bin

To add code coverate on build result system.


The documentation for this class was generated from the following file:
  • lutin/lutin/target.py