-
-
Notifications
You must be signed in to change notification settings - Fork 5
Compilation
Gonzalo Larumbe edited this page Dec 19, 2023
·
4 revisions
First make sure that compilation
has been included in vhdl-ext-feature-list
before running vhdl-ext-mode-setup
.
This function uses the contents of vhdl-ext-project-alist
to run a compilation of current project.
In the example below, the variable vhdl-ext-project-alist
is set for the project axi_if_converter
:
(setq vhdl-ext-project-alist
("axi_if_converter"
:root "/home/gonz/Repos/larumbe/axi_if_converter"
:files ("src/top/rtl/global_pkg.vhd"
"src/misc/clk_div.vhd"
"src/misc/clk_sync.vhd"
"src/pattern_counter/rtl/pattern_counter.vhd"
"src/input_buffer/rtl/input_buffer_pkg.vhd"
"src/input_buffer/rtl/input_buffer.vhd"
"src/core_fsm/rtl/core_fsm.vhd"
"src/axi_lite_regs/rtl/axi_lite_regs.vhd"
"src/axi_lite_master/rtl/axi_lite_master.vhd"
"src/core_conv/rtl/core_converter.vhd"
"src/top/rtl/axi_if_converter.vhd")
;; The ones below are used for GHDL-related features
:worklib "xil_defaultlib" ; Defaults to `work' if not set
:workdir "library/xil_defaultlib" ; Output compilation directory for worklib
:lib-search-path ("/opt/ghdl_Xilinx_lib/"))) ; Extra directories to look for compiled libraries
- Filelist: must be ordered since it is how GHDL analysis expects it
- Workdir: directory where work library will be compiled
This function is used under the hood by vhdl-ext-compile-project-ghdl
. It is not interactive
and is intended for more generic programatic uses. For example:
(vhdl-ext-compile-ghdl (concat "ghdl -s " buffer-file-name))
If you want a colorized output with the jump to error feature for other tools, such as Vivado, Quartus, Xcelium, QuestaSim, etc.., check the fpga package, which provides a similar functionality for major vendors.