Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

debian-matlab-mexhelper(1) [debian man page]

DEBIAN-MATLAB-MEXHELPER(1)					   User Commands					DEBIAN-MATLAB-MEXHELPER(1)

NAME
debian-matlab-mexhelper - helper to build Matlab extensions on Debian SYNOPSIS
debian-matlab-mexhelper [OPTIONS] <package name> <mode> DESCRIPTION
The is a small helper that eases building and installing MEX extensions for Matlab toolbox packages in Debian binary packages. Because these packages cannot build-depend on Matlab (for obvious reasons) they need to compile their extensions at installation time using a local Matlab installation. The helper is somewhat flexible by supporting custom build, install and clean commands, as well as source and destina- tion directories. It also deals with moving extensions into library directories and automatically symlinks them into the toolbox direc- tory. There are two major modes: 'install' to build, install and symlink extensions (useful in postinst) and 'clean' to remove installed exten- sions and symlinks (useful in prerm). The command to build the extensions is invoked in the source directory. By default, this is /usr/src/matlab/<package name>, but can be overridden with the --src-dir option. Any optional 'install' (--install-cmd) and 'clean' (--clean-cmd) are invoked in the source directory too. Moreover, this helper will also take any installed extensions from a default installation path /usr/share/matlab/site/m/<package name>, move them into /usr/lib/matlab/site/<package name> and symlink back to the original location. These locations can be configured with the --m-dir and --mex-dir options respectively. Again, this step is optional and is only performed if a package actually installs extensions inot this location. OPTIONS
-h Print usage summary and option list. --help Print full help. --version Print version information and exit. --build-cmd Command to build the extensions in the source directory --install-cmd Command to install the extensions after building --clean-cmd Command to clean the source tree after installation. This is not the command that is executed in 'clean' mode. --src-dir Directory with the extension sources. This is also the directory in which build, install and clean commands get invoked. --mex-dir Target directory into which binary extensions get moved. --m-dir Target directory in which symlinks to binary extensions get created. --make Set default commands for 'build-cmd' (make), 'install-cmd' (make install DESTDIR=$m_dir) and 'clean-cmd' (make distclean) if no spe- cific command has been provided via the respective options. EXAMPLES
The following call can be used in a package's postinst script if it comes with a Matlab script 'build_matlab.m' that builds and installs its extension into the desired locations. The --src-dir option is used to point to a non-standard location of the extension sources. debian-matlab-mexhelper somepackagename install --src-dir /usr/src/dynare-matlab/mex/sources --build-cmd 'matlab -nodesktop -nodisplay -nojvm -r build_matlab' If a package installs extension sources into the standard location and builds its extensions using a Makefile that support the DESTDIR for installing the built extensions and a 'distclean' target it is sufficient to run the following. debian-matlab-mexhelper somepackagename install --make Otherwise it is also possible to fully customize all commands. debian-matlab-mexhelper difficultpackage install --build-cmd 'make -C src all toolbox MEXBIN="matlab-mex"' --install-cmd 'make -C src install && find . ! -wholename "./src" -name "*.mex?*" -print0 | xargs -0 -I {} cp -v --parent {} /usr/share/difficultpackage' --clean-cmd 'make -C src distclean tool- box-distclean && find . -name "*.mex?*" -delete' If a package uses debian-matlab-mexhelper to install extensions into the standard location it can also be used to remove all MEX extensions and created symlinks when a package is removed from a system. To achieve this simply put the following call into a package's prerm script. debian-matlab-mexhelper packagename clean AUTHOR
Written by Michael Hanke. COPYRIGHT
Copyright (C) 2010-2011 Michael Hanke <michael.hanke@gmail.com> Licensed under GNU Public License version 3 or later. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU- LAR PURPOSE. debian-matlab-mexhelper 0.0.18 March 2012 DEBIAN-MATLAB-MEXHELPER(1)
Man Page