blob: 179750a6b322743efeaa74149dfe7de18d8a857e [file] [log] [blame]
# Copyright 2022 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.
import("//build_overrides/pi_pico.gni")
import("//build_overrides/pigweed.gni")
import("$dir_pw_build/target_types.gni")
# TODO(amontanez): This can go away if the GN build can be upstreamed to the
# Pi Pico repo.
_CWD = "${PICO_SRC_DIR}/src/common/pico_base"
import("generate_version_header.gni")
config("public_include_dirs") {
include_dirs = [ "${_CWD}/include" ]
}
config("board_define") {
defines = [
"PICO_BOARD=${PICO_BOARD}",
"PICO_ON_DEVICE=1",
"PICO_NO_HARDWARE=0",
"PICO_BUILD=1",
]
}
generate_version_header("version") {
version_major = PICO_SDK_VERSION_MAJOR
version_minor = PICO_SDK_VERSION_MINOR
version_revision = PICO_SDK_VERSION_REVISION
version_string = PICO_SDK_VERSION_STRING
}
pw_source_set("pico_base") {
public_configs = [
":board_define",
":public_include_dirs",
"${PICO_ROOT}/gn:disable_warnings",
]
public = [
"${_CWD}/include/pico.h",
"${_CWD}/include/pico/assert.h",
"${_CWD}/include/pico/config.h",
"${_CWD}/include/pico/error.h",
"${_CWD}/include/pico/types.h",
]
public_deps = [
":version",
"${PICO_GENERATED_CONFIG}",
"${PICO_ROOT}/src/rp2_common/pico_platform:headers",
]
allow_circular_includes_from =
[ "${PICO_ROOT}/src/rp2_common/pico_platform:headers" ]
}