mirror of
https://github.com/chipsalliance/f4pga-examples.git
synced 2025-01-03 03:43:38 -05:00
ci/scripts: cleanup
Signed-off-by: Unai Martinez-Corral <umartinezcorral@antmicro.com>
This commit is contained in:
parent
524dfb6e74
commit
861cca8397
4 changed files with 22 additions and 82 deletions
46
.github/scripts/build-examples.sh
vendored
46
.github/scripts/build-examples.sh
vendored
|
@ -18,30 +18,12 @@
|
|||
|
||||
set -e
|
||||
|
||||
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
source ${CURRENT_DIR}/common.sh
|
||||
|
||||
# -- validate input ----------------------------------------------------------
|
||||
|
||||
function help() {
|
||||
echo
|
||||
echo "Build examples from the repository"
|
||||
echo
|
||||
echo "Syntax: $0 fpga_family [examples]..."
|
||||
echo "Arguments:"
|
||||
echo " fpga_family - A supported FPGA family"
|
||||
echo " examples - A name of an available example"
|
||||
echo
|
||||
}
|
||||
|
||||
if [[ ! $# -ge 1 ]]; then
|
||||
echo "Invalid number of arguments!"
|
||||
help
|
||||
echo "ERROR: Invalid number of arguments!" >&2
|
||||
echo "Please, provide: path/to/build-examples.sh <fpga_family> <example>..." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# -- tuttest -----------------------------------------------------------------
|
||||
|
||||
fpga_family=$1
|
||||
shift
|
||||
|
||||
|
@ -54,29 +36,29 @@ esac
|
|||
fi
|
||||
|
||||
# activate conda and enter example dir
|
||||
activate_env="docs/building-examples.rst:export-install-dir,fpga-fam-$fpga_family,conda-prep-env,f4pga-env-bin,f4pga-env-share-$fpga_family,conda-act-env"
|
||||
activate_env="docs/building-examples.rst:export-install-dir,fpga-fam-$fpga_family,conda-env"
|
||||
snippets="${activate_env},enter-dir-$fpga_family"
|
||||
|
||||
case "$fpga_family" in
|
||||
xc7) for example in $examples; do
|
||||
case $example in
|
||||
"counter") tuttest_exec ${snippets} xc7/counter_test/README.rst:example-counter-*-group ;;
|
||||
"picosoc") tuttest_exec ${snippets} xc7/picosoc_demo/README.rst:example-picosoc-*-group ;;
|
||||
"litex") tuttest_exec ${snippets} xc7/litex_demo/README.rst:example-litex-dir,example-litex-req,example-litex_picorv32-*-group,example-litex_vexriscv-*-group ;;
|
||||
"litex_linux") tuttest_exec ${snippets} xc7/linux_litex_demo/README.rst:example-litex-*-group ;;
|
||||
"litex_sata") tuttest_exec ${snippets} xc7/litex_sata_demo/README.rst:example-litex-sata-*-group ;;
|
||||
"counter") tuttest ${snippets} xc7/counter_test/README.rst:example-counter-*-group ;;
|
||||
"picosoc") tuttest ${snippets} xc7/picosoc_demo/README.rst:example-picosoc-*-group ;;
|
||||
"litex") tuttest ${snippets} xc7/litex_demo/README.rst:example-litex-dir,example-litex-req,example-litex_picorv32-*-group,example-litex_vexriscv-*-group ;;
|
||||
"litex_linux") tuttest ${snippets} xc7/linux_litex_demo/README.rst:example-litex-*-group ;;
|
||||
"litex_sata") tuttest ${snippets} xc7/litex_sata_demo/README.rst:example-litex-sata-*-group ;;
|
||||
|
||||
#Additional examples:
|
||||
"button_controller") tuttest_exec ${activate_env},enter-dir-$fpga_family xc7/additional_examples/button_controller/README.rst:additional-examples,example-debouncer-basys3 ;;
|
||||
"pulse_width_led") tuttest_exec ${snippets} xc7/pulse_width_led/README.rst:example-pulse-arty-35t ;;
|
||||
"timer") tuttest_exec ${snippets} xc7/timer/README.rst:example-watch-basys3 ;;
|
||||
"button_controller") tuttest ${snippets} xc7/additional_examples/button_controller/README.rst:additional-examples,example-debouncer-basys3 ;;
|
||||
"pulse_width_led") tuttest ${snippets} xc7/pulse_width_led/README.rst:example-pulse-arty-35t ;;
|
||||
"timer") tuttest ${snippets} xc7/timer/README.rst:example-watch-basys3 ;;
|
||||
|
||||
# Project F examples
|
||||
"hello") for helloexample in A B C D E F G H I J; do
|
||||
tuttest_exec ${activate_env} projf-makefiles/hello/hello-arty/${helloexample}/README.rst:hello-arty-${helloexample,,}
|
||||
tuttest ${activate_env} projf-makefiles/hello/hello-arty/${helloexample}/README.rst:hello-arty-${helloexample,,}
|
||||
done ;;
|
||||
"hello-k") for helloexample in K L; do
|
||||
tuttest_exec ${activate_env} projf-makefiles/hello/hello-arty/${helloexample}/README.rst:hello-arty-${helloexample,,}
|
||||
tuttest ${activate_env} projf-makefiles/hello/hello-arty/${helloexample}/README.rst:hello-arty-${helloexample,,}
|
||||
done ;;
|
||||
*) echo "ERROR: Unknown example name: $example" >&2
|
||||
exit 1 ;;
|
||||
|
@ -85,7 +67,7 @@ case "$fpga_family" in
|
|||
;;
|
||||
eos-s3) for example in $examples; do
|
||||
case $example in
|
||||
"counter") tuttest_exec ${snippets} eos-s3/btn_counter/README.rst:eos-s3-counter ;;
|
||||
"counter") tuttest ${snippets} eos-s3/btn_counter/README.rst:eos-s3-counter ;;
|
||||
*) echo "ERROR: Unknown example name: $example" >&2
|
||||
exit 1 ;;
|
||||
esac
|
||||
|
|
22
.github/scripts/common.sh
vendored
22
.github/scripts/common.sh
vendored
|
@ -1,22 +0,0 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# Copyright 2020-2022 F4PGA 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.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
function tuttest_exec() {
|
||||
echo -e "\e[93mExecuting tuttest $@\e[39m"
|
||||
(echo "trap 'printf \"+ %s\\n\" \"\$BASH_COMMAND\" >&2' DEBUG"; tuttest "$@") | bash -e -
|
||||
}
|
27
.github/scripts/install-toolchain.sh
vendored
27
.github/scripts/install-toolchain.sh
vendored
|
@ -18,31 +18,16 @@
|
|||
|
||||
set -e
|
||||
|
||||
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
source ${CURRENT_DIR}/common.sh
|
||||
|
||||
# -- validate input -----------------------------------------------------------
|
||||
|
||||
function help() {
|
||||
echo
|
||||
echo "Install the F4PGA toolchain as described in the sphinx documentation"
|
||||
echo
|
||||
echo "Syntax: $0 fpga_family os"
|
||||
echo "Arguments:"
|
||||
echo " fpga_family - A supported FPGA family"
|
||||
echo " os - A supported operating system"
|
||||
echo
|
||||
}
|
||||
|
||||
if [[ ! $# -eq 2 ]]; then
|
||||
echo "ERROR: Invalid number of arguments" >&2
|
||||
help >&2
|
||||
echo "ERROR: Two arguments are required!" >&2
|
||||
echo "Please, provide: path/to/install-toolchain.sh <fpga_family> <os>" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# -- tuttest ------------------------------------------------------------------
|
||||
|
||||
# A supported FPGA family
|
||||
fpga_family=$1
|
||||
|
||||
# A supported operating system
|
||||
os=$2
|
||||
|
||||
tuttest_exec docs/getting.rst:install-reqs-$os,wget-conda,conda-install-dir,fpga-fam-$fpga_family,env-setup
|
||||
tuttest "docs/getting.rst:install-reqs-$os,wget-conda,conda-install-dir,fpga-fam-$fpga_family,env-setup"
|
||||
|
|
|
@ -29,19 +29,14 @@ Select your FPGA family:
|
|||
|
||||
FPGA_FAM="eos-s3"
|
||||
|
||||
Next, prepare the environment:
|
||||
Next, prepare and activate the environment:
|
||||
|
||||
.. code-block:: bash
|
||||
:name: conda-prep-env
|
||||
:name: conda-env
|
||||
|
||||
export PATH="$F4PGA_INSTALL_DIR/$FPGA_FAM/install/bin:$PATH";
|
||||
source "$F4PGA_INSTALL_DIR/$FPGA_FAM/conda/etc/profile.d/conda.sh"
|
||||
|
||||
Finally, enter your working Conda environment:
|
||||
|
||||
.. code-block:: bash
|
||||
:name: conda-act-env
|
||||
|
||||
conda activate $FPGA_FAM
|
||||
|
||||
.. tip::
|
||||
|
|
Loading…
Reference in a new issue