@@ -1720,6 +1720,43 @@ std::string CompilerOpenFPGA::YosysDesignParsingCommmands() {
17201720 }
17211721
17221722 std::string designFiles = macros;
1723+ for (const auto & lang_file : ProjManager ()->DesignFiles ()) {
1724+ std::string filesScript =
1725+ " read_verilog ${READ_VERILOG_OPTIONS} ${INCLUDE_PATHS} "
1726+ " ${VERILOG_FILES}" ;
1727+ std::string lang;
1728+
1729+ auto files = lang_file.second + " " ;
1730+ switch (lang_file.first .language ) {
1731+ case Design::Language::VHDL_1987:
1732+ case Design::Language::VHDL_1993:
1733+ case Design::Language::VHDL_2000:
1734+ case Design::Language::VHDL_2008:
1735+ case Design::Language::VHDL_2019:
1736+ ErrorMessage (" Unsupported language (Yosys default parser)" );
1737+ break ;
1738+ case Design::Language::VERILOG_1995:
1739+ case Design::Language::VERILOG_2001:
1740+ case Design::Language::SYSTEMVERILOG_2005:
1741+ break ;
1742+ case Design::Language::SYSTEMVERILOG_2009:
1743+ case Design::Language::SYSTEMVERILOG_2012:
1744+ case Design::Language::SYSTEMVERILOG_2017:
1745+ lang = " -sv" ;
1746+ break ;
1747+ case Design::Language::VERILOG_NETLIST:
1748+ break ;
1749+ case Design::Language::BLIF:
1750+ case Design::Language::EBLIF:
1751+ ErrorMessage (" Unsupported language (Yosys default parser)" );
1752+ break ;
1753+ }
1754+ filesScript = ReplaceAll (filesScript, " ${READ_VERILOG_OPTIONS}" , lang);
1755+ filesScript = ReplaceAll (filesScript, " ${INCLUDE_PATHS}" , includes);
1756+ filesScript = ReplaceAll (filesScript, " ${VERILOG_FILES}" , files);
1757+ designFiles += filesScript + " \n " ;
1758+ }
1759+
17231760 for (auto path : ProjManager ()->libraryPathList ()) {
17241761 std::filesystem::path libPath =
17251762 FileUtils::AdjustPath (path, ProjManager ()->projectPath ());
@@ -1765,43 +1802,6 @@ std::string CompilerOpenFPGA::YosysDesignParsingCommmands() {
17651802 }
17661803 }
17671804
1768- for (const auto & lang_file : ProjManager ()->DesignFiles ()) {
1769- std::string filesScript =
1770- " read_verilog ${READ_VERILOG_OPTIONS} ${INCLUDE_PATHS} "
1771- " ${VERILOG_FILES}" ;
1772- std::string lang;
1773-
1774- auto files = lang_file.second + " " ;
1775- switch (lang_file.first .language ) {
1776- case Design::Language::VHDL_1987:
1777- case Design::Language::VHDL_1993:
1778- case Design::Language::VHDL_2000:
1779- case Design::Language::VHDL_2008:
1780- case Design::Language::VHDL_2019:
1781- ErrorMessage (" Unsupported language (Yosys default parser)" );
1782- break ;
1783- case Design::Language::VERILOG_1995:
1784- case Design::Language::VERILOG_2001:
1785- case Design::Language::SYSTEMVERILOG_2005:
1786- break ;
1787- case Design::Language::SYSTEMVERILOG_2009:
1788- case Design::Language::SYSTEMVERILOG_2012:
1789- case Design::Language::SYSTEMVERILOG_2017:
1790- lang = " -sv" ;
1791- break ;
1792- case Design::Language::VERILOG_NETLIST:
1793- break ;
1794- case Design::Language::BLIF:
1795- case Design::Language::EBLIF:
1796- ErrorMessage (" Unsupported language (Yosys default parser)" );
1797- break ;
1798- }
1799- filesScript = ReplaceAll (filesScript, " ${READ_VERILOG_OPTIONS}" , lang);
1800- filesScript = ReplaceAll (filesScript, " ${INCLUDE_PATHS}" , includes);
1801- filesScript = ReplaceAll (filesScript, " ${VERILOG_FILES}" , files);
1802-
1803- designFiles += filesScript + " \n " ;
1804- }
18051805 return designFiles;
18061806}
18071807
0 commit comments