NAME¶
cbp2make - code::blocks Makefile generation tool
SYNOPSIS¶
cbp2make -in <project_file> [-cfg <configuration>] [-out
<makefile>] [-unix] [-windows] [-mac] [--all-os] [-targets
"<target1>[,<target2>[, ...]]"] [--flat-objects]
[--flat-objpath] [--wrap-objects] [--wrap-options] [--with-deps]
[--keep-objdir] [--keep-outdir] [--target-case keep|lower|upper]
[--macros-case keep|lower|upper] [--quote-path auto|never|always]
cbp2make -list -in <project_file_list> [-cfg <configuration>]
[-unix] [-windows] [-mac] [--all-os] [-targets
"<target1>[,<target2>[, ...]]"] [--flat-objects]
[--flat-objpath] [--wrap-objects] [--wrap-options] [--with-deps]
[--keep-objdir] [--keep-outdir] [--target-case keep|lower|upper]
[--macros-case keep|lower|upper] [--quote-path auto|never|always]
DESCRIPTION¶
cbp2make is a stand-alone build tool that allows you to generate makefile(s) for
GNU Make out of Code::Blocks IDE project or workspace file.
OPTIONS¶
- -in <project_file>
- specifies an input file or a list of files;
- -cfg <configuration>
- specifies a configuration file, see also --local and
--global options;
- -out <makefile>
- specifies the name of a makefile or a list of makefiles;
- -unix
- enables Unix / Linux compatible makefile generation;
- -windows
- enables Windows compatible makefile generation;
- -mac
- enables Macintosh compatible makefile generation;
- --all-os
- enables all target platforms at once;
- -targets "<target1>[,<target2>[, ...]]"
- specifies the only build targets that a makefile will be made for;
- --flat-objects
- forces "flat" names for object files with limited character
set;
- --flat-objpath
- forces "flat" paths for object files with no
subdirectories;
- --wrap-objects
- allows to use multiline lists of objects which makes a makefile easier to
read;
- --wrap-options
- allows to use multiline macros;
- --with-deps
- allows a built-in dependency scanner for C/C++ projects;
- --keep-objdir
- disables command that erase directories for object files in 'clean'
target;
- --keep-outdir
- disables command that erase directory for an output binary file in 'clean'
target;
- --target-case [keep|lower|upper]
- specifies style for makefile targets;
Common options:¶
- --local
- use configuration from current directory
- --global
- use configuration from home directory
- --verbose
- show project information
- --quiet
- hide all messages
- --help
- display this message
- --version
- display version information
CONFIGURATION¶
Some installation- or project-specific options, primarily toolchain settings,
can be saved to a configuration file. By default (since rev.110), cbp2make
does not save any settings to a configuration file unless the user explicitly
specifies the
--config option. A configuration file can be either
global (stored in user profile / home directory) or local (stored in current
directory).
Please, keep in mind that since cbp2make is in early stage of development, an
old configuration file may become incompatible with new tool version and it
may be necessary to update it manually or initialize a new one.
When cbp2make is invoked, first it tries to load a local configuration file. If
a local configuration is missing, next attempt will be to load a global one.
If this attempt is not successful either, the default built-in configuration
is used. Configuration lookup order can be overridden with
--local or
--global command line options. If one of options is supplied to
cbp2make, non-specified configuration is not picked up even if the specified
one is missing and non-specified do exists.
cbp2make --config toolchain --add [-unix|-windows|-mac] -chain
<toolchain>
cbp2make --config toolchain --remove [-unix|-windows|-mac] -chain
<toolchain>
cbp2make --config tool --add [-unix|-windows|-mac] -chain
<toolchain>
-tool <tool> -type <type> <tool
options>
cbp2make --config tool --remove [-unix|-windows|-mac] -chain
<toolchain>
-tool <tool>
cbp2make --config platform [-unix|-windows|-mac] [-pwd
<print_dir_command>] [-cd <change_dir_command>] [-rm
<remove_file_command>] [-rmf <remove_file_forced>] [-rmd
<remove_dir_command>] [-cp <copy_file_command>] [-mv
<move_file_command>] [-md <make_dir_command>] [-mdf
<make_dir_forced>] [-make <default_make_tool>]
Manage global compiler variables¶
cbp2make --config variable --add [-set <set_name>] -name
<var_name> [-desc <description>] [-field <field_name>]
-value <var_value>
cbp2make --config variable --remove [-set <set_name>] [-name
<var_name>] [-field <field_name>]
Manage options¶
cbp2make --config options --default-options "<options>"
cbp2make --config show
- pp
- preprocessor
- as
- assembler
- cc
- compiler
- rc
- resource compiler
- sl
- static linker
- dl
- dynamic linker
- el
- executable linker
- nl
- native linker
- -desc <description>
- -program <executable>
- -command <command_template>
- -mkv <make_variable>
- -srcext <source_extensions>
- -outext <output_extension>
- -quotepath <yes|no>
- -fullpath <yes|no>
- -unixpath <yes|no>
- -incsw <include_switch>
- -defsw <define_switch>
- -deps <yes|no>
- -ldsw <library_dir_switch>
- -llsw <link_library_switch>
- -lpfx <library_prefix>
- -lext <library_extension>
- -objext <object_extension>
- -lflat <yes|no>
SEE ALSO¶
codeblocks (1)