# Copyright 2019 The Pigweed Authors # # Licensed under the Apache License, Version 2.0 (the "License"); you may not # use this file except in compliance with the License. You may obtain a copy of # the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations under # the License. # This file defines default values for all of the build variables used by # Pigweed. # # Each individual variable can be overriden by a target to configure the system # to build for it. This is done in a .gni file specific to the target by first # importing this file, then changing the variables as desired. # Options which configure the executable targets created in Pigweed builds. pw_executable_config = { # The name of the GN target type used to build Pigweed executables. # # If this is a custom template, the .gni file containing the template must # be imported at the top of the target configuration file to make it globally # available. target_type = "executable" # Path to an instantiation of the "linker_script" GN template defining the # linker script configuration for the target. linker_script_target = "" # Path to the Bloaty configuration file that defines the memory layout and # capacities for the target binaries. bloaty_config_file = "" } # Default toolchain for the build target. # # If this is changed, you must run `ninja -t clean` to remove any files from # the previous toolchain's build before building again. pw_target_toolchain = "" # Implementation of a main function for "pw_test" unit test binaries. pw_unit_test_main = "$dir_pw_unit_test:main" # Whether GN unit test runner targets should be created. # # If set to true, the pw_test() template creates an action that invokes the test # runner script on each test executable. If false, the pw_test() template only # creates a test executable target. # # This should be enabled for targets which support parallelized running # of unit tests, such as desktops with multiple cores. pw_unit_test_create_run_targets = false ################################# BACKENDS ##################################### # This section of the file defines empty variables for each of the pigweed # facades that expect a backend. This allows minimal breakages when adding new # facades. Instead of GN always halting due to encountering an undefined # variable, GN will only emit an error if something in the build depends on the # empty (but defined) variable. # # All of these should default to empty strings. For target-specific defaults, # modify these variables in a target confiruation file. # Declare dir_pw_dumb_io_backend dir_pw_dumb_io_backend = ""