Skip to content

Configuration

Demez edited this page Jun 18, 2020 · 8 revisions

Project Configurations set all the settings for a project

The configuration block has 4 different groups and 3 build event command lines

Every group name is all lowercase


Example Format

configuration
{
	general
	{
		option_name option_value
		list_option_name
		{
			foo bar [$CONDITION]
			baz
		}
	}

}

You can have as many items in a single line if you want, usually for items that all use the same condition


General

General Options

  • out_name - output name - name of the binaries made in the out_dir (output, debug file, etc)
  • out_dir - output directory - sets the output directory of the binary
  • build_dir - build directory - directory where all the object files and other files made during compiling go

Specific Value Options

  • configuration_type - sets the output directory of the binary

    1. dynamic_library
    2. static_library
    3. application
  • language - sets the coding language you are using

    1. cpp
    2. c
  • compiler - set the compiler to use, any string can be used here, some generators use custom inputs for these options though.

    • Compilers for Visual Studio:
      • msvc_142 to msvc_100
      • msvc_140_xp
      • msvc_120_xp
      • clang_cl

Lists

  • include_directories - self-explanatory
  • library_directories - self-explanatory
  • options - command line options

Compiler

General Options

  • precompiled_header_file - path to the precompiled header file
  • precompiled_header_out_file - where the precompiled header file will build to

Specific Value Options

  • precompiled_header - set the usage of precompiled headers
    1. none - do not use a precompiled header
    2. create - create a precompiled header
    3. use - use a precompiled header

Lists

  • preprocessor_definitions - defines
  • options - command line options for compiler

Linker

General Options

  • output_file - if set, this will override out_name and out_dir in general
  • debug_file - if set, this will override out_name and out_dir in general
  • import_library -

Specific Value Options

  • ignore_import_library
    1. true
    2. false

Lists

  • libraries - extensions and directories are not needed if the directory is in library_directories, but can be used
  • ignore_libraries - same as rules above, except these libraries are ignored
  • options - command line options for linking

Other Pages (will move all of the above to their own pages):

Build Events

Clone this wiki locally