These are options that are passed to cmake during configuration
Option | Description | Default |
---|---|---|
KICAD_SCRIPTING |
Build the Python scripting support inside KiCad binaries. |
ON |
KICAD_SCRIPTING_MODULES |
Build native portion of the pcbnew Python module: _pcbnew.{pyd,so} for OS command line use of Python. |
ON |
KICAD_SCRIPTING_PYTHON3 |
Build for Python 3 instead of 2. |
OFF |
KICAD_SCRIPTING_WXPYTHON |
Build wxPython implementation for wx interface building in Python and py.shell. |
ON |
KICAD_SCRIPTING_WXPYTHON_PHOENIX |
Use new wxPython binding. |
OFF |
KICAD_SCRIPTING_ACTION_MENU |
Build a tools menu with registered python plugins: actions plugins. |
ON |
KICAD_USE_OCE |
Build tools and plugins related to OpenCascade Community Edition. |
ON |
KICAD_USE_OCC |
Build tools and plugins related to OpenCascade Technology. |
OFF |
KICAD_INSTALL_DEMOS |
Install KiCad demos and examples. |
ON |
KICAD_BUILD_QA_TESTS |
Build software Quality assurance unit tests. |
ON |
KICAD_SPICE |
Build KiCad with internal Spice simulator. |
ON |
KICAD_BUILD_I18N |
Build the translation language libraries |
OFF |
KICAD_I18N_UNIX_STRICT_PATH |
Install the language libraries to the standard UNIX install path |
OFF |
BUILD_SMALL_DEBUG_FILES |
In debug build: create smaller binaries. |
OFF |
MAINTAIN_PNGS |
Allow build/rebuild bitmap icons used in menus from the corresponding .svg file. |
OFF |
Option | Description | Default |
---|---|---|
KICAD_SANITIZE |
Build KiCad with sanitizer options. |
OFF |
KICAD_STDLIB_DEBUG |
Build KiCad with libstdc++ debug flags enabled. |
OFF |
KICAD_STDLIB_LIGHT_DEBUG |
Build KiCad with libstdc++ with -Wp,-D_GLIBCXX_ASSERTIONS flag enabled. |
OFF |
KICAD_BUILD_PARALLEL_CL_MP |
Build in parallel using the /MP compiler option (Default OFF for safety reasons). |
OFF |
KICAD_USE_VALGRIND |
Build KiCad with valgrind stack tracking enabled. |
OFF |
When option KICAD_SCRIPTING
OR KICAD_SCRIPTING_MODULES
is enabled:
PYTHON_EXECUTABLE
can be defined when invoking cmake
( use -DPYTHON_EXECUTABLE=<python path>/python.exe
or python2 )
when not defined by user, the Default is python.exe under Windows and python2 for others
python binary file should be in exec path.
KICAD_SCRIPTING controls the entire python scripting system. If it is off, no other scripting is allowed
Therefore, if KICAD_SCRIPTING
is OFF, these other option are forced to OFF:
KICAD_SCRIPTING_MODULES, KICAD_SCRIPTING_ACTION_MENU,KICAD_SCRIPTING_PYTHON3
KICAD_SCRIPTING_WXPYTHON, KICAD_SCRIPTING_WXPYTHON_PHOENIX
KICAD_SCRIPTING_WXPYTHON_PHOENIX
requires enabling the KICAD_SCRIPTING_WXPYTHON
flag
so that the wxWidgets library is properly versioned
These Symbols are always defined, and are not an option for cmake invocation:
COMPILING_DLL
This is a signal to import_export.h, and when present, toggles the interpretation of the #defines in that file. Its purpose should not be extended beyond this.
USE_KIWAY_DLLS
Comes from CMake as a user configuration variable, settable in the Cmake user interface. It decides if KiCad will be built with the *.kiface program modules.
BUILD_KIWAY_DLL
Comes from CMake, but at the 2nd tier, not the top tier. By 2nd tier,
something like pcbnew/CMakeLists.txt, not /CMakeLists.txt is meant. It is
not a user configuration variable. Instead, the 2nd tier CMakeLists.txt file
looks at the top level USE_KIWAY_DLLS
and decides how the object files under
the 2nd tier’s control will be built. If it decides it wants to march in
lockstep with USE_KIWAY_DLLS
, then this local CMakeLists.txt file may pass a
defined BUILD_KIWAY_DLL
(singular) on the compiler command line to the
pertinent set of compilation steps under its control.
When building with KICAD_BUILD_I18N
on Linux systems, gettext needs the rule files
shared-mime-info.its
and metainfo.its
/appdata.its
to translate the Linux
metadata files.