Skip to content
Snippets Groups Projects
Select Git revision
  • 2de70c79c2193b598046e8debf1e738ff3879961
  • master default protected
  • develop
  • lurch-patch-2
  • int_frac
  • lurch-patch-1
  • more_board_header_checks
  • best_effort_wfe
  • bi-pins-order-assert
  • 1274-blocking-uart-transmission-appears-to-exit-early
  • iar/develop
  • use_nvic
  • new_pico_rand_api
  • tinyusb-1.5.0
  • lwip_deps
  • tusb_bump2
  • pico_rand
  • misc_headers_issues
  • tusb_bump
  • remove_memset_of_stuct
  • recursive_mutex_cxx
  • 2.0.0
  • 1.5.1
  • 1.5.0
  • 1.4.0
  • 1.3.1
  • 1.3.0
  • 1.2.0
  • 1.1.2
  • 1.1.1
  • 1.1.0
  • 1.0.1
  • 1.0.0
33 results

BUILD.bazel

  • armandomontanez's avatar
    abce1d42
    Introduce initial Bazel build (#1705) · abce1d42
    armandomontanez authored
    * Build boot_stage2 with Bazel
    
    Introduces the initial foundations of a Bazel build, including a
    toolchain, critical generated headers, platform patterns, and enough
    BUILD files to build boot_stage2.
    
    * Bazel libraries to support picotool
    
    * Move SDK defines to toolchain
    
    * Switch to `archive_override` in MODULE.bazel
    
    Uses archive_override where applicable to allow transitive bzlmod deps
    to propagate.
    
    * Multiplatform objcopy selection in Bazel build
    
    Makes an objcopy alias that redirects to the objcopy tool for the
    current exec platform, which allows boot_stage2 to build on Linux,
    macOS, and Windows.
    
    * Generate Bazel build files
    
    Adds initial set of generated Bazel build files. Note that these do not
    yet build, as dependency cycles are present.
    
    * Fix dependency cycles in Bazel build
    
    Fixes many dependency cycles, some were unintentionally created by the
    build file generator, others are true dependency cycles that require
    manual workarounds.
    
    * Silence warning in pico_stdio Bazel build
    
    Silences a stray warning in the Bazel build.
    
    * Fix wildcard Bazel build
    
    This makes `bazel build //...` succeed, and also prevents the fetching
    of toolchains that aren't compatible with the current execution
    environment (i.e. Windows computers will no longer try to download macOS
    toolchains).
    
    * Get the SDK working
    
    Finishes out the remainder of the work required to successfully compile
    a working blinky example.
    
    * Fix UART stdio dependencies in Bazel build
    
    Fixes some dependencies around pico_stdlib so that pico_stdlib links
    properly and UART stdio works.
    
    * Add linux support to Bazel build
    
    * Get Bazel deps from registry
    
    Adds external an external registry for resolving Bazel module
    dependencies.
    
    * Fix host configuration for picotool
    
    Provides the appropriate defines for host builds to support the picotool
    build.
    
    * Remove -ffreestanding from Bazel toolchain
    
    The -ffreestanding toolchain flag is quite strict, so remove it from the
    Bazel toolchain.
    
    * Remove unused .bzl file
    
    * Reduce Bazel compiler flags
    
    Cuts out most of the Bazel toolchain flags and only specifies the
    bare-minimum set of flags. Also, adds wrapper linker flags for functions
    the SDK wraps.
    
    * Get USB serial working
    
    Adds initial TinyUSB support and enough integration to get USB serial
    working.
    
    * Remove "Generated build file"
    
    Removes comments that indicates BUILD.bazel files are generated. This
    was used during initial bringup to indicate hand-crafted vs
    automatically generated BUILD.bazel files.
    
    * Do not build USB libraries unless configured
    
    Prevents USB libraries from being built unless the build is properly
    configured to use them.
    
    * Switch to rules_cc toolchains
    
    Moves toolchain configuration to use the new rules in rules_cc.
    
    * Minor cleanup in parse_version.py
    
    Cleans up trailing whitespace and runs the black formatter on
    parse_version.py.
    
    * Simplify constraint dimensions in Bazel build
    
    Consolidates the class/chip constraint settings to be a single
    constraint_setting with a config_setting that represents the rp2 class.
    
    * Update pin of rules_cc in Bazel build
    
    Includes a necessary fix for the target_compatible_with expression in
    the cc_toolchain to work as intended.
    
    * Move toolchains from pico.bzl to BUILD.bazel
    
    Moves toolchain definitions from pico.bzl to BUILD.bazel to make them
    easier to find and read.
    
    * Run buildifier on Bazel build files
    
    Fix trivial formatting issues by running buildifier on all BUILD.bazel
    files.
    
    * Make objcopy rule
    
    Makes a simple objcopy rule to remove direct references to the ARM
    toolchains.
    
    * Fix link flags in Bazel build
    
    Critical flags were not being applied to link steps. This applies -mcpu
    and -mthumb to the link steps to make the produced binaries work again.
    
    * Mention missing host build support
    
    * Fix various Bazel library rules
    
    * pico_bit_ops was incomplete.
    * pico_double and pico_float were trying to link in the "none"
      implementation.
    
    * Extend Bazel build documentation
    
    Improves documentation and comments across the Bazel build.
    
    * Clean up auxilary tools in Bazel build
    
    Switches genrules to use skylib rules to simplify things. Reworks
    version header generation to use the Bazel module version rather than
    parsing CMake.
    
    * Update boot_stage2 Bazel build file
    
    Moves `includes` to be enumerated on the correct library.
    
    * Add WORKSPACE version fallback
    
    WORKSPACE Bazel projects don't support querying module version, so add a
    fallback of '0.0.1-WORKSPACE' so the build can succeed.
    
    * Fix malloc handling in Bazel build
    
    * Fix Bazel dependency cycle in pico_malloc
    
    * Prevent malloc from being linked into boot_stage2
    
    Prevents Bazel from ever trying to link malloc into the boot_stage2
    binary.
    
    * Remove custom bootloader platform
    
    A dedicated boot_stage2 platform introduces a lot of complexity that
    needs to be more thought-through.
    Introduce initial Bazel build (#1705)
    armandomontanez authored
    * Build boot_stage2 with Bazel
    
    Introduces the initial foundations of a Bazel build, including a
    toolchain, critical generated headers, platform patterns, and enough
    BUILD files to build boot_stage2.
    
    * Bazel libraries to support picotool
    
    * Move SDK defines to toolchain
    
    * Switch to `archive_override` in MODULE.bazel
    
    Uses archive_override where applicable to allow transitive bzlmod deps
    to propagate.
    
    * Multiplatform objcopy selection in Bazel build
    
    Makes an objcopy alias that redirects to the objcopy tool for the
    current exec platform, which allows boot_stage2 to build on Linux,
    macOS, and Windows.
    
    * Generate Bazel build files
    
    Adds initial set of generated Bazel build files. Note that these do not
    yet build, as dependency cycles are present.
    
    * Fix dependency cycles in Bazel build
    
    Fixes many dependency cycles, some were unintentionally created by the
    build file generator, others are true dependency cycles that require
    manual workarounds.
    
    * Silence warning in pico_stdio Bazel build
    
    Silences a stray warning in the Bazel build.
    
    * Fix wildcard Bazel build
    
    This makes `bazel build //...` succeed, and also prevents the fetching
    of toolchains that aren't compatible with the current execution
    environment (i.e. Windows computers will no longer try to download macOS
    toolchains).
    
    * Get the SDK working
    
    Finishes out the remainder of the work required to successfully compile
    a working blinky example.
    
    * Fix UART stdio dependencies in Bazel build
    
    Fixes some dependencies around pico_stdlib so that pico_stdlib links
    properly and UART stdio works.
    
    * Add linux support to Bazel build
    
    * Get Bazel deps from registry
    
    Adds external an external registry for resolving Bazel module
    dependencies.
    
    * Fix host configuration for picotool
    
    Provides the appropriate defines for host builds to support the picotool
    build.
    
    * Remove -ffreestanding from Bazel toolchain
    
    The -ffreestanding toolchain flag is quite strict, so remove it from the
    Bazel toolchain.
    
    * Remove unused .bzl file
    
    * Reduce Bazel compiler flags
    
    Cuts out most of the Bazel toolchain flags and only specifies the
    bare-minimum set of flags. Also, adds wrapper linker flags for functions
    the SDK wraps.
    
    * Get USB serial working
    
    Adds initial TinyUSB support and enough integration to get USB serial
    working.
    
    * Remove "Generated build file"
    
    Removes comments that indicates BUILD.bazel files are generated. This
    was used during initial bringup to indicate hand-crafted vs
    automatically generated BUILD.bazel files.
    
    * Do not build USB libraries unless configured
    
    Prevents USB libraries from being built unless the build is properly
    configured to use them.
    
    * Switch to rules_cc toolchains
    
    Moves toolchain configuration to use the new rules in rules_cc.
    
    * Minor cleanup in parse_version.py
    
    Cleans up trailing whitespace and runs the black formatter on
    parse_version.py.
    
    * Simplify constraint dimensions in Bazel build
    
    Consolidates the class/chip constraint settings to be a single
    constraint_setting with a config_setting that represents the rp2 class.
    
    * Update pin of rules_cc in Bazel build
    
    Includes a necessary fix for the target_compatible_with expression in
    the cc_toolchain to work as intended.
    
    * Move toolchains from pico.bzl to BUILD.bazel
    
    Moves toolchain definitions from pico.bzl to BUILD.bazel to make them
    easier to find and read.
    
    * Run buildifier on Bazel build files
    
    Fix trivial formatting issues by running buildifier on all BUILD.bazel
    files.
    
    * Make objcopy rule
    
    Makes a simple objcopy rule to remove direct references to the ARM
    toolchains.
    
    * Fix link flags in Bazel build
    
    Critical flags were not being applied to link steps. This applies -mcpu
    and -mthumb to the link steps to make the produced binaries work again.
    
    * Mention missing host build support
    
    * Fix various Bazel library rules
    
    * pico_bit_ops was incomplete.
    * pico_double and pico_float were trying to link in the "none"
      implementation.
    
    * Extend Bazel build documentation
    
    Improves documentation and comments across the Bazel build.
    
    * Clean up auxilary tools in Bazel build
    
    Switches genrules to use skylib rules to simplify things. Reworks
    version header generation to use the Bazel module version rather than
    parsing CMake.
    
    * Update boot_stage2 Bazel build file
    
    Moves `includes` to be enumerated on the correct library.
    
    * Add WORKSPACE version fallback
    
    WORKSPACE Bazel projects don't support querying module version, so add a
    fallback of '0.0.1-WORKSPACE' so the build can succeed.
    
    * Fix malloc handling in Bazel build
    
    * Fix Bazel dependency cycle in pico_malloc
    
    * Prevent malloc from being linked into boot_stage2
    
    Prevents Bazel from ever trying to link malloc into the boot_stage2
    binary.
    
    * Remove custom bootloader platform
    
    A dedicated boot_stage2 platform introduces a lot of complexity that
    needs to be more thought-through.