diff options
author | Alessandro Comodi <acomodi@antmicro.com> | 2021-03-23 20:35:53 +0100 |
---|---|---|
committer | Alessandro Comodi <acomodi@antmicro.com> | 2021-03-23 21:05:58 +0100 |
commit | 15e945aa1c83d5408f93e6375b38ec81deb4f874 (patch) | |
tree | b4d4801916cb71352284657c0183d3685c4bb7e2 /fpga_interchange/examples/boards.cmake | |
parent | 2956a0ca03d3e7e4573ed3f44de6fec23d33018e (diff) | |
download | nextpnr-15e945aa1c83d5408f93e6375b38ec81deb4f874.tar.gz nextpnr-15e945aa1c83d5408f93e6375b38ec81deb4f874.tar.bz2 nextpnr-15e945aa1c83d5408f93e6375b38ec81deb4f874.zip |
interchange: added boards and group testing across multiple boards
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
Diffstat (limited to 'fpga_interchange/examples/boards.cmake')
-rw-r--r-- | fpga_interchange/examples/boards.cmake | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/fpga_interchange/examples/boards.cmake b/fpga_interchange/examples/boards.cmake new file mode 100644 index 00000000..c44ab930 --- /dev/null +++ b/fpga_interchange/examples/boards.cmake @@ -0,0 +1,45 @@ +function(add_board) + # ~~~ + # add_board( + # name <board name> + # device <common device> + # package <package> + # ) + # ~~~ + # + # Generates a board target containing information on the common device and package + # of the board. + # + # Arguments: + # - name: name of the board. E.g. arty + # - device: common device name of a set of parts. E.g. xc7a35tcsg324-1 and xc7a35tcpg236-1 + # share the same xc7a35t device prefix + # - package: one of the packages available for a given device. E.g. cpg236 + # + # Targets generated: + # - board-<name> + + set(options) + set(oneValueArgs name device package) + set(multiValueArgs) + + cmake_parse_arguments( + add_board + "${options}" + "${oneValueArgs}" + "${multiValueArgs}" + ${ARGN} + ) + + set(name ${add_board_name}) + set(device ${add_board_device}) + set(package ${add_board_package}) + + add_custom_target(board-${name} DEPENDS device-${device}) + set_target_properties( + board-${name} + PROPERTIES + DEVICE ${device} + PACKAGE ${package} + ) +endfunction() |