Loading...
Searching...
No Matches
Nhi1Exec

Nhi1Exec, the tool to start an executable in the 'NHI1' tool-chain.

  • Nhi1Exec is the "swiss-knife" to start everything in the NHI1 tool-chain.
  • Nhi1Exec garantee a clean environment ready to call a executable from --setup environment.

The NHI1 tool-chain is separated into an NHI1_HOME (source), NHI1_BUILD (build-files) and NHI1_EXT (extension) directory.

The NHI1_EXT directory hold all the external software

  • like: tcl tcllib python perl ruby php libbacktrace libconfig sqlite3
  • build with Nhi1BuildExtension

Every executable build for NHI1_target and NHI1_setup is build into the NHI1_abs_top_builddir subdirectory:

  • example: NHI1_target = x86_64-suse-linux-gnu, NHI1_setup = debug
    • NHI1_BUILD/x86_64-suse-linux-gnu/debug

EXAMPLES

To start an executable use:

  • Nhi1Exec executable

If the same executable if available for different Target-Programming-Language (TPL) use

  • reference:
    • (c=c, C++=cc, C#=cs, VB.NET=vb, Java=jv, Python=py, Ruby=rb, Perl=pl, PHP=php, Tcl=tcl or GO=go) second name is the short form
    • for a scripting-language, Nhi1Exec adds the interpreter before the executable file.
  • Nhi1Exec executable.lang
    • tcl: Nhi1Exec MyServer.tcl
    • cc: Nhi1Exec MyServer.cc

To start an executable in an other setup use

  • Nhi1Exec --setup=new-setup executable
    • Nhi1Exec --setup=perf-aggressive perfserver.py
  • configure the release setup from a non release setup.
    • Nhi1Exec --setup=release Nhi1Config

In a tests directory, the automake parallel tests feature is called with

  • Nhi1Exec --check
    • Nhi1Exec --check --dev-testing --lang-tcl

reload the current setup (cleanup environment)

  • se (short for source-environment)

switch to an other setup

  • Nhi1Env setup
    • example: Nhi1Env perf-release

USAGE

usage: Nhi1Exec ?Options? 

  Nhi1Exec, the tool to start an executable in the NHI1 tool-chain.
  Nhi1Exec is also used as frontend to run a test-script.

  Custom short options:

    -l   lookup a tool-path (yes|no)                                                            =  no
    -d   start executable in debug mode (0|1|2|3|4)                                             =  0
    -r   add tcp or uds to the argument(s) (no|tcp|uds)                                         =  no

  Custom long options:

    --setup                                                                                              
         setup for call (aggressive|debug|debug2|no|perf-aggressive|perf-release|release)       =  debug2
    --noexpand                                                                                           
         does not try to expand the arguments (yes|no)                                          =  no
    --extra-args                                                                                         
         extra arguments for just after executable                                              =  
    --cd                                                                                                 
         change directory first                                                                 =  no

  Help options:

    --help-test                                                                                          
         help for libmqmsgque-test-suite (yes|no)                                               =  no
    --help-msgque                                                                                        
         help for libmqmsgque (yes|no)                                                          =  no
    --help-detail                                                                                        
         additional help for NhiExec (yes|no)                                                   =  no

  Tool options:

    --check                                                                                              
         use >Nhi1Make check TEST_LOG_FLAGS="..."                                               =  no
    --load                                                                                               
         create LOAD to stress the test, 0=no, >0=stress (good=20)                              =  0
    --eval                                                                                               
         eval a test-script                                                                     =  

  Debugging options:

    --no-log                                                                                             
         do NOT write logfile (yes|no)                                                          =  no
    --verbose                                                                                            
         be verbose (yes|no)                                                                    =  no
    --edit                                                                                               
         edit Nhi1Exec code (yes|no)                                                            =  no
    --prefix                                                                                             
         prefix test with (no|cg|cgl|echo|gdb|gui|hg|jdb|kdbg|lc|lcs|lcsg|lcsnoc|sr|st|vg|vgs)  =  no
    --prefix-opt                                                                                         
         additional options for prefix                                                          =  no
    --suppressions                                                                                       
         edit Nhi1Exec code                                                                     =  ~/.valgrind.supp

  Global options:

    -c                 : clean screen
    -se-v              : get the version information
    -i(+)              : use (not) the interactive mode
    -se-s(+)           : save (not) the configuration
    -p(+)              : print (not) the configuration
    --help,-h          : get user usage
    --help-environment : get environment database usage
    --help-setup       : get setup usage