Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.0.0 - English


tbx_builder_gateway

Builds the user gateway code in sci_gateway/ subdirectory.

Syntax

tbx_builder_gateway(toolbox_path)

Arguments

toolbox_path

Root directory of toolbox gateway code; buider script will be searched in the sci_gateway/ subdirectory of this directory.

Description

tbx_builder_gateway is used for compiling the gateway code of a toolbox.

The compilation of sources in sci_gateway directory follows this convention and priority order:

  • looks for a toolbox_path/sci_gateway/builder*.sce script, if found, executes it;
  • otherwise, looks for a builder script in each subdirectory of sci_gateway/ and executes them;
  • for c subdirectory, if no builder script is found, a default compilation process is done:

    c
    • compilation is done for all sci_*.c files;
    • headers for user (non-gateway code) must be present in the toolbox_path/src/c/ directory;
    • scilab function names will be th name of the file (without the sci_ prefix and .c extension);
    • only the Scilab 6 API is supported with this automated process.

The function exits silently if the sci_gateway directory is absent.

Little automation is done for tbx_builder_gateway and is only specified for c because source compiling is a very specific process. Toolbox developers willing to have a more specific compilation process still need to define what the build scripts must perform for compilation.

Examples

// Recommended usage
tbx_builder_gateway(get_absolute_file_path('builder.sce'))

History

VersionDescription
6.0.0

No longer restricts the build scripts to builder_gateway.sce. Now any scripts called builder*.sce is valid for source compilation.

Automatically scans for builder scripts in subdirectories if no builder script is found in sci_gateway

Automated process is introduced for the compilation of Scilab 6 C API gateways.

Report an issue
<< tbx_build_src Sections builders tbx_builder_help >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Oct 24 14:30:10 CEST 2023