From adffc506c0c55ac0655f6addf8917020b7276250 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sat, 9 Jan 2021 00:40:46 +0000 Subject: [PATCH 01/45] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- verilator.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/verilator.spec b/verilator.spec index a999626..5f8e282 100644 --- a/verilator.spec +++ b/verilator.spec @@ -5,6 +5,7 @@ Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: http://www.veripool.com/%{name}.html Source0: http://www.veripool.org/ftp/%{name}-%{version}.tgz +BuildRequires: make BuildRequires: bison BuildRequires: coreutils BuildRequires: findutils From e2872694442f1270660e3328c4bda3a2762e5b3a Mon Sep 17 00:00:00 2001 From: Filipe Rosset Date: Mon, 25 Jan 2021 00:31:18 -0300 Subject: [PATCH 02/45] - Update to 4.108 fixes rhbz#1901487 --- sources | 2 +- verilator.spec | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/sources b/sources index 60da74f..2ba7eed 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-4.032.tgz) = 2b34d0b6d94babb74b443b3f3ae4e6c9f15423a0b078df72930c4f75b4a831843a4d4b901dc586725a67a49c6f5308402fef4c9ca72b88b13b01746b36d2fb20 +SHA512 (verilator-4.108.tgz) = 6dcdabe8731d926500c54cb2cad609820261e7889abc37a852f2de0fbdf5dc6ef25dbb14ae5ebcdb3a27a1a9672c929c7e638a8bda92160d8148f9c6d8b337ee diff --git a/verilator.spec b/verilator.spec index 5f8e282..8e6532e 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,17 +1,17 @@ Name: verilator -Version: 4.032 -Release: 2%{?dist} +Version: 4.108 +Release: 1%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: http://www.veripool.com/%{name}.html Source0: http://www.veripool.org/ftp/%{name}-%{version}.tgz -BuildRequires: make BuildRequires: bison BuildRequires: coreutils BuildRequires: findutils BuildRequires: flex BuildRequires: gcc BuildRequires: gcc-c++ +Buildrequires: make BuildRequires: perl-generators BuildRequires: perl-interpreter BuildRequires: perl(Data::Dumper) @@ -20,6 +20,7 @@ BuildRequires: perl(IO::File) BuildRequires: perl(Pod::Usage) BuildRequires: perl(strict) BuildRequires: perl(vars) +BuildRequires: python3-devel BuildRequires: sed %description @@ -95,6 +96,9 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Mon Jan 25 2021 Filipe Rosset - 4.108-1 +- Update to 4.108 fixes rhbz#1901487 + * Wed Jul 29 2020 Fedora Release Engineering - 4.032-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 0ca0a7cd89a17fd315984c526bb979668878bccb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 23:00:27 +0000 Subject: [PATCH 03/45] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- verilator.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/verilator.spec b/verilator.spec index 8e6532e..6945aa4 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,6 @@ Name: verilator Version: 4.108 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: http://www.veripool.com/%{name}.html @@ -96,6 +96,9 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 4.108-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Mon Jan 25 2021 Filipe Rosset - 4.108-1 - Update to 4.108 fixes rhbz#1901487 From c5f3971e239d464c2dbbf921835612ba31aaba34 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 20:24:14 +0000 Subject: [PATCH 04/45] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- verilator.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/verilator.spec b/verilator.spec index 6945aa4..6599575 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,6 @@ Name: verilator Version: 4.108 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: http://www.veripool.com/%{name}.html @@ -96,6 +96,9 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 4.108-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Wed Jan 27 2021 Fedora Release Engineering - 4.108-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 459fe65e1a6781266cfb644d95ffd4c0ffd2ae5a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jan 2022 03:54:28 +0000 Subject: [PATCH 05/45] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- verilator.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/verilator.spec b/verilator.spec index 6599575..b19bfc1 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,6 @@ Name: verilator Version: 4.108 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: http://www.veripool.com/%{name}.html @@ -96,6 +96,9 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Sat Jan 22 2022 Fedora Release Engineering - 4.108-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Fri Jul 23 2021 Fedora Release Engineering - 4.108-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From cf9c73585ec8b93c04bcc43b4b985387c0e59ca0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 11:48:36 +0000 Subject: [PATCH 06/45] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- verilator.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/verilator.spec b/verilator.spec index b19bfc1..9d11bf6 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,6 @@ Name: verilator Version: 4.108 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: http://www.veripool.com/%{name}.html @@ -96,6 +96,9 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Sat Jul 23 2022 Fedora Release Engineering - 4.108-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Sat Jan 22 2022 Fedora Release Engineering - 4.108-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 866cabe71d56e94e70ad09b76e4e23a1a5aba710 Mon Sep 17 00:00:00 2001 From: Filipe Rosset Date: Sat, 24 Sep 2022 20:35:33 -0300 Subject: [PATCH 07/45] - Update to 4.226, enabled tests, spec cleanup and modernization Fixes rhbz#1933296 rhbz#2047099 and rhbz#2026957 --- .gitignore | 1 + sources | 2 +- verilator.spec | 41 ++++++++++++++++++++++------------------- 3 files changed, 24 insertions(+), 20 deletions(-) diff --git a/.gitignore b/.gitignore index a4f7482..ea2d0cd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ verilator-3.803.tgz /verilator-3.845.tgz /verilator-*.tgz +/verilator-4.226.tar.gz diff --git a/sources b/sources index 2ba7eed..4a53797 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-4.108.tgz) = 6dcdabe8731d926500c54cb2cad609820261e7889abc37a852f2de0fbdf5dc6ef25dbb14ae5ebcdb3a27a1a9672c929c7e638a8bda92160d8148f9c6d8b337ee +SHA512 (verilator-4.226.tar.gz) = bede9024f45491884533929aa04705908aaf9fda5848a8ee7ca865569b2e5c9267ba20d8e140e67d86f322f7c7cf6d4562014f00e826ec69c8c39a3a3644c5c3 diff --git a/verilator.spec b/verilator.spec index 9d11bf6..e93ae01 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,24 +1,30 @@ Name: verilator -Version: 4.108 -Release: 5%{?dist} +Version: 4.226 +Release: 1%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 -URL: http://www.veripool.com/%{name}.html -Source0: http://www.veripool.org/ftp/%{name}-%{version}.tgz +URL: https://veripool.org/verilator/ +Source0: https://github.com/verilator/verilator/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz +BuildRequires: autoconf BuildRequires: bison BuildRequires: coreutils BuildRequires: findutils BuildRequires: flex BuildRequires: gcc BuildRequires: gcc-c++ -Buildrequires: make +BuildRequires: make BuildRequires: perl-generators BuildRequires: perl-interpreter +BuildRequires: perl-lib +BuildRequires: perl-version BuildRequires: perl(Data::Dumper) +BuildRequires: perl(Digest::MD5) +BuildRequires: perl(FindBin) BuildRequires: perl(Getopt::Long) BuildRequires: perl(IO::File) BuildRequires: perl(Pod::Usage) BuildRequires: perl(strict) +BuildRequires: perl(Time::HiRes) BuildRequires: perl(vars) BuildRequires: python3-devel BuildRequires: sed @@ -32,13 +38,15 @@ especially well suited to create executable models of CPUs for embedded software design teams. %prep -%setup -q +%autosetup find . -name .gitignore -delete export VERILATOR_ROOT=%{_datadir} +autoconf %{configure} \ --disable-ccwarn \ --enable-defenv \ --disable-longtests + # We cannot run autoreconf because upstream uses unqualifed stdlib identifiers # that are included by autoconf-generated header files. find -name Makefile_obj -exec sed -i \ @@ -49,10 +57,8 @@ find -name Makefile_obj -exec sed -i \ %build %make_build -# disable tests due lack of SystemC -# Skip: vlt/t_a_first_sc: Test requires SystemC -# %check -# make test +%check +make test %install %make_install @@ -74,18 +80,11 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %files %license Artistic LICENSE %doc Changes README* -%doc verilator.pdf verilator.html +%doc docs/ %doc examples/ - -%{_mandir}/man1/verilator.1.gz -%{_mandir}/man1/verilator_coverage.1.gz -%{_mandir}/man1/verilator_gantt.1.gz -%{_mandir}/man1/verilator_profcfunc.1.gz - +%{_mandir}/man1/*.1.gz %{_datadir}/verilator %{_libdir}/pkgconfig/verilator.pc - -%defattr(755,root,root,-) %{_bindir}/verilator %{_bindir}/verilator_bin %{_bindir}/verilator_bin_dbg @@ -96,6 +95,10 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Sat Sep 24 2022 Filipe Rosset - 4.226-1 +- Update to 4.226, enabled tests, spec cleanup and modernization +- Fixes rhbz#1933296 rhbz#2047099 and rhbz#2026957 + * Sat Jul 23 2022 Fedora Release Engineering - 4.108-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 1b0a8d43b7f0a49e1a800af8f645e21bb6464c53 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 21 Jan 2023 06:13:50 +0000 Subject: [PATCH 08/45] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- verilator.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/verilator.spec b/verilator.spec index e93ae01..2270332 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,6 @@ Name: verilator Version: 4.226 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: https://veripool.org/verilator/ @@ -95,6 +95,9 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Sat Jan 21 2023 Fedora Release Engineering - 4.226-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Sat Sep 24 2022 Filipe Rosset - 4.226-1 - Update to 4.226, enabled tests, spec cleanup and modernization - Fixes rhbz#1933296 rhbz#2047099 and rhbz#2026957 From 744cf2e2423e1e1da6b56138bdb000b6bbded4f9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jul 2023 17:33:25 +0000 Subject: [PATCH 09/45] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- verilator.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/verilator.spec b/verilator.spec index 2270332..8f61e22 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,6 @@ Name: verilator Version: 4.226 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: https://veripool.org/verilator/ @@ -95,6 +95,9 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog +* Sat Jul 22 2023 Fedora Release Engineering - 4.226-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Sat Jan 21 2023 Fedora Release Engineering - 4.226-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 4118454d3323ea16df1759e496fad83c66bd8e1a Mon Sep 17 00:00:00 2001 From: Filipe Rosset Date: Sat, 9 Sep 2023 18:21:06 -0300 Subject: [PATCH 10/45] opt-in to autochangelog --- changelog | 184 ++++++++++++++++++++++++++++++++++++++++++++++++ verilator.spec | 187 +------------------------------------------------ 2 files changed, 186 insertions(+), 185 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..c4c9f88 --- /dev/null +++ b/changelog @@ -0,0 +1,184 @@ +* Sat Jul 22 2023 Fedora Release Engineering - 4.226-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jan 21 2023 Fedora Release Engineering - 4.226-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Sep 24 2022 Filipe Rosset - 4.226-1 +- Update to 4.226, enabled tests, spec cleanup and modernization +- Fixes rhbz#1933296 rhbz#2047099 and rhbz#2026957 + +* Sat Jul 23 2022 Fedora Release Engineering - 4.108-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jan 22 2022 Fedora Release Engineering - 4.108-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 4.108-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 4.108-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jan 25 2021 Filipe Rosset - 4.108-1 +- Update to 4.108 fixes rhbz#1901487 + +* Wed Jul 29 2020 Fedora Release Engineering - 4.032-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Apr 24 2020 Filipe Rosset - 4.032-1 +- Update to 4.032 + +* Sun Feb 16 2020 Filipe Rosset - 4.028-1 +- Update to 4.028 + +* Fri Jan 31 2020 Fedora Release Engineering - 4.026-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Jan 22 2020 Filipe Rosset - 4.026-1 +- Update to 4.026 fixes rhbz#1747211 + +* Thu Aug 22 2019 Filipe Rosset - 4.016-1 +- Updated to 4.016 fixes rhbz#1590822 rhbz#1643479 and rhbz#1700228 + +* Sat Jul 27 2019 Fedora Release Engineering - 3.922-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri May 03 2019 Scott Tsai scottt.tw@gmail.com - 3.922-5 +- Remove duplicate copies of 'examples' in /usr/share/doc +- https://bugzilla.redhat.com/show_bug.cgi?id=1592057#c3 + +* Fri May 03 2019 Marcus Müller - 3.922-4 +- Made %{_bindir}/verilator et al executable, fixes rhbz #1592057 + +* Sun Feb 03 2019 Fedora Release Engineering - 3.922-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jul 14 2018 Fedora Release Engineering - 3.922-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Sun Mar 18 2018 Filipe Rosset - 3.922-1 +- 3.922 bump, fixes rhbz #1557720 + +* Fri Feb 09 2018 Igor Gnatenko - 3.920-2 +- Escape macros in %%changelog + +* Wed Feb 07 2018 Filipe Rosset - 3.920-1 +- 3.920 bump +- Disabled tests until upstream fixes the issue +- Added BR to fix EPEL7 build +- Fixes rhbz #1250122 and rhbz #1494887 + +* Fri Sep 08 2017 Petr Pisar - 3.910-1 +- 3.910 bump +- License corrected to (LGPLv3 or Artistic 2.0) + +* Thu Aug 03 2017 Fedora Release Engineering - 3.890-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 3.890-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon May 15 2017 Fedora Release Engineering - 3.890-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 3.890-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Nov 28 2016 Filipe Rosset - 3.890-2 +- Attempt to rebuilt on rawhide due dependency problems + +* Mon Nov 28 2016 Filipe Rosset - 3.890-1 +- Rebuilt for new upstream version 3.890 +- Spec clean up plus fixes rhbz #1087393 and rhbz #1358609 + +* Fri Feb 05 2016 Fedora Release Engineering - 3.874-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Jun 19 2015 Fedora Release Engineering - 3.874-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sun Jun 07 2015 Scott Tsai - 3.874-1 +- Upstream 3.874 + +* Sat May 02 2015 Kalev Lember - 3.864-2 +- Rebuilt for GCC 5 C++11 ABI change + +* Mon Sep 22 2014 Scott Tsai 3.864-1 +- Upstream 3.864 + +* Mon Aug 18 2014 Fedora Release Engineering - 3.862-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Fri Jun 13 2014 Scott Tsai 3.862-1 +- Upstream 3.862 + +* Sun Jun 08 2014 Fedora Release Engineering - 3.845-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 3.845-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Sat Feb 16 2013 Chitlesh Goorah - 3.845-1 +- updated to 3.845 + +* Fri Feb 15 2013 Fedora Release Engineering - 3.805-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sun Jul 22 2012 Fedora Release Engineering - 3.805-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Feb 28 2012 Fedora Release Engineering - 3.805-4 +- Rebuilt for c++ ABI breakage + +* Sat Jan 14 2012 Fedora Release Engineering - 3.805-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Mon Feb 07 2011 Fedora Release Engineering - 3.805-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sun Nov 07 2010 Chitlesh Goorah - 3.805-1 +- updated to 3.805 + +* Sat Sep 25 2010 Chitlesh Goorah - 3.804-1 +- updated to 3.804 + +* Sun Jul 11 2010 Chitlesh Goorah - 3.803-1 +- updated to 3.803 + +* Fri Jul 24 2009 Lane Brooks - 3.712-1 +- Updated to verilator 3.712 + +* Fri Jun 26 2009 Lane Brooks - 3.711-1 +- Updated to verilator 3.711 +- Added Artistic file +- Fixed permissions on man file + +* Tue Jun 9 2009 Lane Brooks - 3.710-1 +- Updated to verilator 3.710 +- Removed GCC 4.3 patch (no longer necessary) +- Added SYSTEMPERL_INCLUDE to point to perl-SystemPerl rpm install location + +* Fri Jan 9 2009 Lane Brooks - 3.700-1 +- Updated dependancy to newly packaged perl-SystemPerl and removed patch +- Updated to verilator 3.700 +- Added GCC 4.3 patch + +* Fri Jan 2 2009 Lane Brooks - 3.681-2 +- Moved examples from data dir to doc dir + +* Thu Jan 1 2009 Lane Brooks - 3.681-1 +- Updated verilator 3.681 +- Removed gcc 4.3 patch as verilator 3.681 incorporates this fix +- Removed shared object patch as it is possible to do this from Makefile + using environment variables +- Further updates to the spec file per Chitlesh's feedback + +* Sun Oct 26 2008 Lane Brooks - 3.680-3 +- Improved spec file for Fedora integration based on initial feedback + +* Thu Oct 23 2008 Lane Brooks - 3.680-2 +- Added shared object generation patch + +* Thu Oct 16 2008 Lane Brooks - 3.680-1 +- Initial package based on SUSE packages from Guenter Dannoritzer diff --git a/verilator.spec b/verilator.spec index 8f61e22..6b17313 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,6 @@ Name: verilator Version: 4.226 -Release: 3%{?dist} +Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 URL: https://veripool.org/verilator/ @@ -95,187 +95,4 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %changelog -* Sat Jul 22 2023 Fedora Release Engineering - 4.226-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Sat Jan 21 2023 Fedora Release Engineering - 4.226-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Sat Sep 24 2022 Filipe Rosset - 4.226-1 -- Update to 4.226, enabled tests, spec cleanup and modernization -- Fixes rhbz#1933296 rhbz#2047099 and rhbz#2026957 - -* Sat Jul 23 2022 Fedora Release Engineering - 4.108-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Jan 22 2022 Fedora Release Engineering - 4.108-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jul 23 2021 Fedora Release Engineering - 4.108-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jan 27 2021 Fedora Release Engineering - 4.108-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Mon Jan 25 2021 Filipe Rosset - 4.108-1 -- Update to 4.108 fixes rhbz#1901487 - -* Wed Jul 29 2020 Fedora Release Engineering - 4.032-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Apr 24 2020 Filipe Rosset - 4.032-1 -- Update to 4.032 - -* Sun Feb 16 2020 Filipe Rosset - 4.028-1 -- Update to 4.028 - -* Fri Jan 31 2020 Fedora Release Engineering - 4.026-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Jan 22 2020 Filipe Rosset - 4.026-1 -- Update to 4.026 fixes rhbz#1747211 - -* Thu Aug 22 2019 Filipe Rosset - 4.016-1 -- Updated to 4.016 fixes rhbz#1590822 rhbz#1643479 and rhbz#1700228 - -* Sat Jul 27 2019 Fedora Release Engineering - 3.922-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Fri May 03 2019 Scott Tsai scottt.tw@gmail.com - 3.922-5 -- Remove duplicate copies of 'examples' in /usr/share/doc -- https://bugzilla.redhat.com/show_bug.cgi?id=1592057#c3 - -* Fri May 03 2019 Marcus Müller - 3.922-4 -- Made %{_bindir}/verilator et al executable, fixes rhbz #1592057 - -* Sun Feb 03 2019 Fedora Release Engineering - 3.922-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sat Jul 14 2018 Fedora Release Engineering - 3.922-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Sun Mar 18 2018 Filipe Rosset - 3.922-1 -- 3.922 bump, fixes rhbz #1557720 - -* Fri Feb 09 2018 Igor Gnatenko - 3.920-2 -- Escape macros in %%changelog - -* Wed Feb 07 2018 Filipe Rosset - 3.920-1 -- 3.920 bump -- Disabled tests until upstream fixes the issue -- Added BR to fix EPEL7 build -- Fixes rhbz #1250122 and rhbz #1494887 - -* Fri Sep 08 2017 Petr Pisar - 3.910-1 -- 3.910 bump -- License corrected to (LGPLv3 or Artistic 2.0) - -* Thu Aug 03 2017 Fedora Release Engineering - 3.890-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 3.890-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Mon May 15 2017 Fedora Release Engineering - 3.890-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild - -* Sat Feb 11 2017 Fedora Release Engineering - 3.890-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Mon Nov 28 2016 Filipe Rosset - 3.890-2 -- Attempt to rebuilt on rawhide due dependency problems - -* Mon Nov 28 2016 Filipe Rosset - 3.890-1 -- Rebuilt for new upstream version 3.890 -- Spec clean up plus fixes rhbz #1087393 and rhbz #1358609 - -* Fri Feb 05 2016 Fedora Release Engineering - 3.874-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jun 19 2015 Fedora Release Engineering - 3.874-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sun Jun 07 2015 Scott Tsai - 3.874-1 -- Upstream 3.874 - -* Sat May 02 2015 Kalev Lember - 3.864-2 -- Rebuilt for GCC 5 C++11 ABI change - -* Mon Sep 22 2014 Scott Tsai 3.864-1 -- Upstream 3.864 - -* Mon Aug 18 2014 Fedora Release Engineering - 3.862-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Fri Jun 13 2014 Scott Tsai 3.862-1 -- Upstream 3.862 - -* Sun Jun 08 2014 Fedora Release Engineering - 3.845-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sun Aug 04 2013 Fedora Release Engineering - 3.845-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Sat Feb 16 2013 Chitlesh Goorah - 3.845-1 -- updated to 3.845 - -* Fri Feb 15 2013 Fedora Release Engineering - 3.805-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Sun Jul 22 2012 Fedora Release Engineering - 3.805-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Tue Feb 28 2012 Fedora Release Engineering - 3.805-4 -- Rebuilt for c++ ABI breakage - -* Sat Jan 14 2012 Fedora Release Engineering - 3.805-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Mon Feb 07 2011 Fedora Release Engineering - 3.805-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Sun Nov 07 2010 Chitlesh Goorah - 3.805-1 -- updated to 3.805 - -* Sat Sep 25 2010 Chitlesh Goorah - 3.804-1 -- updated to 3.804 - -* Sun Jul 11 2010 Chitlesh Goorah - 3.803-1 -- updated to 3.803 - -* Fri Jul 24 2009 Lane Brooks - 3.712-1 -- Updated to verilator 3.712 - -* Fri Jun 26 2009 Lane Brooks - 3.711-1 -- Updated to verilator 3.711 -- Added Artistic file -- Fixed permissions on man file - -* Tue Jun 9 2009 Lane Brooks - 3.710-1 -- Updated to verilator 3.710 -- Removed GCC 4.3 patch (no longer necessary) -- Added SYSTEMPERL_INCLUDE to point to perl-SystemPerl rpm install location - -* Fri Jan 9 2009 Lane Brooks - 3.700-1 -- Updated dependancy to newly packaged perl-SystemPerl and removed patch -- Updated to verilator 3.700 -- Added GCC 4.3 patch - -* Fri Jan 2 2009 Lane Brooks - 3.681-2 -- Moved examples from data dir to doc dir - -* Thu Jan 1 2009 Lane Brooks - 3.681-1 -- Updated verilator 3.681 -- Removed gcc 4.3 patch as verilator 3.681 incorporates this fix -- Removed shared object patch as it is possible to do this from Makefile - using environment variables -- Further updates to the spec file per Chitlesh's feedback - -* Sun Oct 26 2008 Lane Brooks - 3.680-3 -- Improved spec file for Fedora integration based on initial feedback - -* Thu Oct 23 2008 Lane Brooks - 3.680-2 -- Added shared object generation patch - -* Thu Oct 16 2008 Lane Brooks - 3.680-1 -- Initial package based on SUSE packages from Guenter Dannoritzer +%autochangelog From 0f0a06daa7fe5c8d0a168d6ec754f25a40992c4f Mon Sep 17 00:00:00 2001 From: Filipe Rosset Date: Sat, 9 Sep 2023 19:02:31 -0300 Subject: [PATCH 11/45] update to verilator-5.014 --- .gitignore | 1 + sources | 2 +- verilator.spec | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index ea2d0cd..85721cf 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ verilator-3.803.tgz /verilator-3.845.tgz /verilator-*.tgz /verilator-4.226.tar.gz +/verilator-5.014.tar.gz diff --git a/sources b/sources index 4a53797..14bca3c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-4.226.tar.gz) = bede9024f45491884533929aa04705908aaf9fda5848a8ee7ca865569b2e5c9267ba20d8e140e67d86f322f7c7cf6d4562014f00e826ec69c8c39a3a3644c5c3 +SHA512 (verilator-5.014.tar.gz) = 963c15290089fd59870bf15903e71aa29fcc10eb67b3d3f1ae0128e8a29e5dc086c6f3a8d429c24718f54c3cbc3d3bcaa137bd2fa3165a0190c591ed5fc06f37 diff --git a/verilator.spec b/verilator.spec index 6b17313..4004bcb 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,5 +1,5 @@ Name: verilator -Version: 4.226 +Version: 5.014 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 From 6f92137ff1ace98f4b81835f0e171b2f9730f259 Mon Sep 17 00:00:00 2001 From: Filipe Rosset Date: Sat, 9 Sep 2023 19:57:42 -0300 Subject: [PATCH 12/45] fix build requires --- verilator.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/verilator.spec b/verilator.spec index 4004bcb..f64afaa 100644 --- a/verilator.spec +++ b/verilator.spec @@ -12,6 +12,7 @@ BuildRequires: findutils BuildRequires: flex BuildRequires: gcc BuildRequires: gcc-c++ +BuildRequires: help2man BuildRequires: make BuildRequires: perl-generators BuildRequires: perl-interpreter @@ -29,6 +30,9 @@ BuildRequires: perl(vars) BuildRequires: python3-devel BuildRequires: sed +# required for further tests +BuildRequires: gdb + %description Verilator is the fastest free Verilog HDL simulator. It compiles synthesizable Verilog, plus some PSL, SystemVerilog and Synthesis From 702bf74309e31ebc94921bbcfe7704199a667cbf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jan 2024 07:38:19 +0000 Subject: [PATCH 13/45] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From dd919c71628e1a6047729248bcc077234c607fca Mon Sep 17 00:00:00 2001 From: Filipe Rosset Date: Sun, 18 Feb 2024 01:31:01 -0300 Subject: [PATCH 14/45] update verilator to 5.020 fixes rhbz#2239297 --- .gitignore | 1 + sources | 2 +- verilator.spec | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 85721cf..a1a532d 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ verilator-3.803.tgz /verilator-*.tgz /verilator-4.226.tar.gz /verilator-5.014.tar.gz +/verilator-5.020.tar.gz diff --git a/sources b/sources index 14bca3c..e79f560 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.014.tar.gz) = 963c15290089fd59870bf15903e71aa29fcc10eb67b3d3f1ae0128e8a29e5dc086c6f3a8d429c24718f54c3cbc3d3bcaa137bd2fa3165a0190c591ed5fc06f37 +SHA512 (verilator-5.020.tar.gz) = 63f4ca6f7aad9c03b50c4040480ed0abdbcfed5f2fc9ce0994dc02a5078daa003d592314a778ab847ac100486038f75ab151d55eaa02d60f979af177ca1dd34e diff --git a/verilator.spec b/verilator.spec index f64afaa..70f9531 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,5 +1,5 @@ Name: verilator -Version: 5.014 +Version: 5.020 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPLv3 or Artistic 2.0 From 3f63ed754e201f18a2a625609faec702909125f5 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Thu, 28 Mar 2024 04:51:46 -0700 Subject: [PATCH 15/45] Update to 5.022 - Fix SPDX License identifier - Add CMake for tests - Fix runtime dependency check - Fix runtime version checck - Fix multithreading bug that causes spurious failures - Default to using tcmalloc --- .gitignore | 1 + 0001-fix-try-lock-spuriously-fails.patch | 27 +++++++ ...-verilator-revision-in-version-check.patch | 35 ++++++++ 0003-Enable-optimization-in-tests.patch | 15 ++++ ...gs-on-template-specialization-syntax.patch | 49 ++++++++++++ sources | 2 +- verilator.spec | 80 +++++++++++++++++-- 7 files changed, 201 insertions(+), 8 deletions(-) create mode 100644 0001-fix-try-lock-spuriously-fails.patch create mode 100644 0002-Allow-for-custom-verilator-revision-in-version-check.patch create mode 100644 0003-Enable-optimization-in-tests.patch create mode 100644 0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch diff --git a/.gitignore b/.gitignore index a1a532d..6f5d014 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ verilator-3.803.tgz /verilator-4.226.tar.gz /verilator-5.014.tar.gz /verilator-5.020.tar.gz +/verilator-5.022.tar.gz diff --git a/0001-fix-try-lock-spuriously-fails.patch b/0001-fix-try-lock-spuriously-fails.patch new file mode 100644 index 0000000..018e577 --- /dev/null +++ b/0001-fix-try-lock-spuriously-fails.patch @@ -0,0 +1,27 @@ +commit 01dadb0a8d1c86493d310f400a084fa899915edb +Author: Kamil Rakoczy +Date: Fri Mar 1 21:29:13 2024 +0100 + + Fix try-lock spuriously fails (#4931) (#4938) + +diff --git a/src/V3ThreadPool.h b/src/V3ThreadPool.h +index 2d552c10a..09b2ba17c 100644 +--- a/src/V3ThreadPool.h ++++ b/src/V3ThreadPool.h +@@ -139,7 +139,15 @@ class V3ThreadPool final { + std::abort(); + } + +- if (VL_UNCOVERABLE(!m_mutex.try_lock())) { ++ bool m_mutex_locked = m_mutex.try_lock(); ++ // try_lock can sometimes spontaneously fail even when mutex is not locked, ++ // make sure this isn't the case ++ for (int i = 0; i < VL_LOCK_SPINS; ++i) { ++ if (VL_LIKELY(m_mutex_locked)) break; ++ VL_CPU_RELAX(); ++ m_mutex_locked = m_mutex.try_lock(); ++ } ++ if (VL_UNCOVERABLE(!m_mutex_locked)) { + if (VL_UNCOVERABLE(m_jobsInProgress != 0)) { + // ThreadPool shouldn't be destroyed when jobs are running and mutex is locked, + // something is wrong. Most likely Verilator is exiting as a result of failed diff --git a/0002-Allow-for-custom-verilator-revision-in-version-check.patch b/0002-Allow-for-custom-verilator-revision-in-version-check.patch new file mode 100644 index 0000000..dad2486 --- /dev/null +++ b/0002-Allow-for-custom-verilator-revision-in-version-check.patch @@ -0,0 +1,35 @@ +commit 04512e5d0484f26b75cf7386facceb929fbf2536 +Author: Nolan Poe +Date: Sat Mar 9 13:44:25 2024 -0800 + + Add custom version for verilator --version packaging (#4954) + +diff --git a/docs/CONTRIBUTORS b/docs/CONTRIBUTORS +index fa22f84fd..82e6160b6 100644 +--- a/docs/CONTRIBUTORS ++++ b/docs/CONTRIBUTORS +@@ -136,6 +136,7 @@ Mostafa Gamal + Nandu Raj + Nathan Kohagen + Nathan Myers ++Nolan Poe + Oleh Maksymenko + Patrick Stewart + Paul Swirhun +diff --git a/src/config_rev b/src/config_rev +index 0640d85b1..bbbcf9b3f 100755 +--- a/src/config_rev ++++ b/src/config_rev +@@ -22,7 +22,11 @@ Args = parser.parse_args() + + os.chdir(Args.directory) + +-rev = 'UNKNOWN_REV' ++if 'VERILATOR_SRC_VERSION' in os.environ: ++ rev = os.environ['VERILATOR_SRC_VERSION'] ++else: ++ rev = 'UNKNOWN_REV' ++ + data = os.popen('git describe').read() + + match = re.search(r'^(v[0-9].*)', data) diff --git a/0003-Enable-optimization-in-tests.patch b/0003-Enable-optimization-in-tests.patch new file mode 100644 index 0000000..198eb51 --- /dev/null +++ b/0003-Enable-optimization-in-tests.patch @@ -0,0 +1,15 @@ +diff --git a/test_regress/driver.pl b/test_regress/driver.pl +index 1e643ec83..7430a9c26 100755 +--- a/test_regress/driver.pl ++++ b/test_regress/driver.pl +@@ -1254,8 +1254,8 @@ sub compile { + "TEST_OBJ_DIR=$self->{obj_dir}", + "CPPFLAGS_DRIVER=-D" . uc($self->{name}), + ($self->{verbose} ? "CPPFLAGS_DRIVER2=-DTEST_VERBOSE=1" : ""), +- ($param{benchmark} ? "" : "OPT_FAST=-O0"), +- ($param{benchmark} ? "" : "OPT_GLOBAL=-O0"), ++ ($param{benchmark} ? "" : "OPT_FAST=-O1"), ++ ($param{benchmark} ? "" : "OPT_GLOBAL=-O1"), + "$self->{vm_prefix}", # bypass default rule, as we don't need archive + ($param{make_flags} || ""), + ]); diff --git a/0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch b/0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch new file mode 100644 index 0000000..1551690 --- /dev/null +++ b/0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch @@ -0,0 +1,49 @@ +commit 08c76b1da6e132b1e91f82136a8647f71f774904 +Author: Nolan Poe +Date: Fri Mar 15 19:21:08 2024 -0700 + + Fix GCC14 warnings on template specialization syntax (#4974) (#4975) + +diff --git a/src/V3OptionParser.cpp b/src/V3OptionParser.cpp +index b1855c462..e0d7fbd04 100644 +--- a/src/V3OptionParser.cpp ++++ b/src/V3OptionParser.cpp +@@ -114,16 +114,33 @@ V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbCall, void(void), m_cb(), en::NONE); + V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbFOnOff, void(bool), m_cb(!hasPrefixFNo(optp)), + en::FONOFF); + V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbOnOff, void(bool), m_cb(!hasPrefixNo(optp)), en::ONOFF); +-template <> +-V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbVal, void(int), m_cb(std::atoi(argp)), en::VALUE); +-template <> +-V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbVal, void(const char*), m_cb(argp), +- en::VALUE); + V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbPartialMatch, void(const char*), m_cb(optp), en::NONE, + true); + V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbPartialMatchVal, void(const char*, const char*), + m_cb(optp, argp), en::VALUE, true); + ++template <> ++class V3OptionParser::Impl::ActionCbVal final : public ActionBase { ++ std::function m_cb; ++ ++public: ++ using CbType = std::function; ++ explicit ActionCbVal(CbType cb) ++ : m_cb(std::move(cb)) {} ++ void exec(const char* optp, const char* argp) override { m_cb(std::atoi(argp)); } ++}; ++ ++template <> ++class V3OptionParser::Impl::ActionCbVal final : public ActionBase { ++ std::function m_cb; ++ ++public: ++ using CbType = std::function; ++ explicit ActionCbVal(CbType cb) ++ : m_cb(std::move(cb)) {} ++ void exec(const char* optp, const char* argp) override { m_cb(argp); } ++}; ++ + #undef V3OPTION_PARSER_DEF_ACT_CB_CLASS + + //###################################################################### diff --git a/sources b/sources index e79f560..ce6a1fe 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.020.tar.gz) = 63f4ca6f7aad9c03b50c4040480ed0abdbcfed5f2fc9ce0994dc02a5078daa003d592314a778ab847ac100486038f75ab151d55eaa02d60f979af177ca1dd34e +SHA512 (verilator-5.022.tar.gz) = 5b919ed5d4cf863434f10f39bbb3a5155d63f79765f5f1d5ae543023b0e350e0996507d250fbfb2e5129bbdf9a51cc5fd0b7154962747c89435648897525bc84 diff --git a/verilator.spec b/verilator.spec index 70f9531..b3eb7c9 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,13 +1,44 @@ +# Blocked by perl-parallel-forker not being packaged +# https://bugzilla.redhat.com/show_bug.cgi?id=2268659 +%bcond longtests 0 + +# A warning caused by glibc in F38 fails build +%if 0%{?fedora} == 38 + %ifarch ppc64le + %bcond ccwarn 0 + %endif +%else +%bcond ccwarn 1 +%endif + +%bcond tcmalloc 0 +%bcond ccache 0 +%bcond mold 0 + Name: verilator -Version: 5.020 +Version: 5.022 Release: %autorelease Summary: A fast simulator for synthesizable Verilog -License: LGPLv3 or Artistic 2.0 +License: LGPL-3.0-only OR Artistic-2.0 URL: https://veripool.org/verilator/ Source0: https://github.com/verilator/verilator/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz + +# Backported from upstream to fix building +Patch0: 0001-fix-try-lock-spuriously-fails.patch + +# Accepted upstream through GitHub, awaiting release +Patch1: 0002-Allow-for-custom-verilator-revision-in-version-check.patch + +# Undesirable upstream, fixes warnings with FORTIFY_SOURCE +Patch2: 0003-Enable-optimization-in-tests.patch + +# Accepted upstream through GitHub, awaiting release +Patch3: 0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch + BuildRequires: autoconf BuildRequires: bison BuildRequires: coreutils +BuildRequires: cmake BuildRequires: findutils BuildRequires: flex BuildRequires: gcc @@ -29,10 +60,35 @@ BuildRequires: perl(Time::HiRes) BuildRequires: perl(vars) BuildRequires: python3-devel BuildRequires: sed +%if %{with tcmalloc} +BuildRequires: gperftools-libs +BuildRequires: gperftools-devel +%endif +%if %{with mold} +Requires: mold +%endif +%if %{with ccache} +BuildRequires: ccache +%endif # required for further tests BuildRequires: gdb +# Initial entrypoint needs perl +Requires: perl-interpreter + +# Optional deps +%if %{with tcmalloc} +Requires: gperftools-libs +%endif +%if %{with ccache} +Requires: ccache +%endif +# NOTE: currently fails on ppc64le +%if %{with mold} +Requires: mold +%endif + %description Verilator is the fastest free Verilog HDL simulator. It compiles synthesizable Verilog, plus some PSL, SystemVerilog and Synthesis @@ -42,14 +98,23 @@ especially well suited to create executable models of CPUs for embedded software design teams. %prep -%autosetup +%autosetup -p1 find . -name .gitignore -delete export VERILATOR_ROOT=%{_datadir} autoconf -%{configure} \ - --disable-ccwarn \ +%configure \ + --disable-partial-static \ --enable-defenv \ +%ifarch %{with ccwarn} + --enable-ccwarn \ +%else + --disable-ccwarn \ +%endif +%if %{with longtests} + --enable-longtests +%else --disable-longtests +%endif # We cannot run autoreconf because upstream uses unqualifed stdlib identifiers # that are included by autoconf-generated header files. @@ -59,10 +124,11 @@ find -name Makefile_obj -exec sed -i \ {} \; %build -%make_build +export VERILATOR_SRC_VERSION=fedora-%{version} +%make_build %check -make test +make test %install %make_install From 808d182272f1afd8b3df631db58eb8db33627904 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Sun, 31 Mar 2024 18:57:47 -0700 Subject: [PATCH 16/45] Improve conformance to modern Fedora packaging guidelines - Break out packages - Remove CC0 content --- verilator.spec | 68 ++++++++++++++++++++++++++------------------------ 1 file changed, 36 insertions(+), 32 deletions(-) diff --git a/verilator.spec b/verilator.spec index b3eb7c9..9a5821d 100644 --- a/verilator.spec +++ b/verilator.spec @@ -2,16 +2,16 @@ # https://bugzilla.redhat.com/show_bug.cgi?id=2268659 %bcond longtests 0 -# A warning caused by glibc in F38 fails build +# A warning caused by glibc in F38 fails build %if 0%{?fedora} == 38 %ifarch ppc64le %bcond ccwarn 0 %endif %else -%bcond ccwarn 1 + %bcond ccwarn 1 %endif -%bcond tcmalloc 0 +%bcond tcmalloc 1 %bcond ccache 0 %bcond mold 0 @@ -74,21 +74,6 @@ BuildRequires: ccache # required for further tests BuildRequires: gdb -# Initial entrypoint needs perl -Requires: perl-interpreter - -# Optional deps -%if %{with tcmalloc} -Requires: gperftools-libs -%endif -%if %{with ccache} -Requires: ccache -%endif -# NOTE: currently fails on ppc64le -%if %{with mold} -Requires: mold -%endif - %description Verilator is the fastest free Verilog HDL simulator. It compiles synthesizable Verilog, plus some PSL, SystemVerilog and Synthesis @@ -97,6 +82,22 @@ where fast simulation performance is of primary concern, and is especially well suited to create executable models of CPUs for embedded software design teams. +%package devel +Summary: Libraries and header files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package contains library and header files needed to develop +applications based on %{name}. + +%package doc +Summary: Documentation for %{name} +BuildArch: noarch +Requires: %{name} = %{version}-%{release} + +%description doc +This package contains the documentation for %{name}. + %prep %autosetup -p1 find . -name .gitignore -delete @@ -105,7 +106,7 @@ autoconf %configure \ --disable-partial-static \ --enable-defenv \ -%ifarch %{with ccwarn} +%if %{with ccwarn} --enable-ccwarn \ %else --disable-ccwarn \ @@ -123,6 +124,9 @@ find -name Makefile_obj -exec sed -i \ -e 's|^#LDFLAGS += .*|LDFLAGS += %{__global_ldflags}|' \ {} \; +# Fix /usr/bin/env ("env-script-interpreter") +sed -i 's#/usr/bin/env python3#/usr/bin/python3#g' docs/bin/* + %build export VERILATOR_SRC_VERSION=fedora-%{version} %make_build @@ -133,28 +137,17 @@ make test %install %make_install -# remove the copy of examples in the datadir so we could -# mark the copy in the source directory as "doc" -rm -rf %{buildroot}%{_datadir}/verilator/examples - -# remove not needed build directory and bin directory -rm -rf %{buildroot}%{_datadir}/verilator/src -rm -rf %{buildroot}%{_bindir}/verilator_includer - # verilator installs verilator.pc under ${datadir} # but for consistency we want it under ${libdir} mkdir -p %{buildroot}%{_libdir}/pkgconfig mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconfig +# some tests and examples are CC0 and cannot be packaged into Fedora +rm -rf %{buildroot}%{_datadir}/verilator/examples %files %license Artistic LICENSE -%doc Changes README* -%doc docs/ -%doc examples/ %{_mandir}/man1/*.1.gz -%{_datadir}/verilator -%{_libdir}/pkgconfig/verilator.pc %{_bindir}/verilator %{_bindir}/verilator_bin %{_bindir}/verilator_bin_dbg @@ -162,7 +155,18 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf %{_bindir}/verilator_coverage_bin_dbg %{_bindir}/verilator_gantt %{_bindir}/verilator_profcfunc +%{_datadir}/verilator/bin +%files devel +%license Artistic LICENSE +%{_datadir}/verilator/include +%{_libdir}/pkgconfig/verilator.pc +%{_datadir}/verilator/verilator-config*.cmake + +%files doc +%license Artistic LICENSE docs/guide/copyright.rst +%doc Changes README* +%doc docs %changelog %autochangelog From 52caaf626236284264a1fa23e9391c689fd116a9 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Mon, 1 Apr 2024 16:56:07 -0700 Subject: [PATCH 17/45] Do not package tests --- verilator.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/verilator.spec b/verilator.spec index 9a5821d..66df4b3 100644 --- a/verilator.spec +++ b/verilator.spec @@ -98,6 +98,7 @@ Requires: %{name} = %{version}-%{release} %description doc This package contains the documentation for %{name}. + %prep %autosetup -p1 find . -name .gitignore -delete @@ -131,9 +132,6 @@ sed -i 's#/usr/bin/env python3#/usr/bin/python3#g' docs/bin/* export VERILATOR_SRC_VERSION=fedora-%{version} %make_build -%check -make test - %install %make_install @@ -144,6 +142,11 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf # some tests and examples are CC0 and cannot be packaged into Fedora rm -rf %{buildroot}%{_datadir}/verilator/examples +rm -rf %{buildroot}%{_datadir}/verilator/tests + +%check +make test + %files %license Artistic LICENSE From dafbf30e45ff996c78324322eaedd2f71ec07627 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Mon, 1 Apr 2024 17:38:08 -0700 Subject: [PATCH 18/45] Disable Werror on Date: Fri, 5 Apr 2024 09:21:28 -0700 Subject: [PATCH 19/45] Update to 5.024 --- .gitignore | 1 + 0001-fix-try-lock-spuriously-fails.patch | 27 ---------- ...-verilator-revision-in-version-check.patch | 35 ------------- ...gs-on-template-specialization-syntax.patch | 49 ------------------- sources | 2 +- verilator.spec | 13 +---- 6 files changed, 4 insertions(+), 123 deletions(-) delete mode 100644 0001-fix-try-lock-spuriously-fails.patch delete mode 100644 0002-Allow-for-custom-verilator-revision-in-version-check.patch delete mode 100644 0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch diff --git a/.gitignore b/.gitignore index 6f5d014..8e5f297 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ verilator-3.803.tgz /verilator-5.014.tar.gz /verilator-5.020.tar.gz /verilator-5.022.tar.gz +/verilator-5.024.tar.gz diff --git a/0001-fix-try-lock-spuriously-fails.patch b/0001-fix-try-lock-spuriously-fails.patch deleted file mode 100644 index 018e577..0000000 --- a/0001-fix-try-lock-spuriously-fails.patch +++ /dev/null @@ -1,27 +0,0 @@ -commit 01dadb0a8d1c86493d310f400a084fa899915edb -Author: Kamil Rakoczy -Date: Fri Mar 1 21:29:13 2024 +0100 - - Fix try-lock spuriously fails (#4931) (#4938) - -diff --git a/src/V3ThreadPool.h b/src/V3ThreadPool.h -index 2d552c10a..09b2ba17c 100644 ---- a/src/V3ThreadPool.h -+++ b/src/V3ThreadPool.h -@@ -139,7 +139,15 @@ class V3ThreadPool final { - std::abort(); - } - -- if (VL_UNCOVERABLE(!m_mutex.try_lock())) { -+ bool m_mutex_locked = m_mutex.try_lock(); -+ // try_lock can sometimes spontaneously fail even when mutex is not locked, -+ // make sure this isn't the case -+ for (int i = 0; i < VL_LOCK_SPINS; ++i) { -+ if (VL_LIKELY(m_mutex_locked)) break; -+ VL_CPU_RELAX(); -+ m_mutex_locked = m_mutex.try_lock(); -+ } -+ if (VL_UNCOVERABLE(!m_mutex_locked)) { - if (VL_UNCOVERABLE(m_jobsInProgress != 0)) { - // ThreadPool shouldn't be destroyed when jobs are running and mutex is locked, - // something is wrong. Most likely Verilator is exiting as a result of failed diff --git a/0002-Allow-for-custom-verilator-revision-in-version-check.patch b/0002-Allow-for-custom-verilator-revision-in-version-check.patch deleted file mode 100644 index dad2486..0000000 --- a/0002-Allow-for-custom-verilator-revision-in-version-check.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit 04512e5d0484f26b75cf7386facceb929fbf2536 -Author: Nolan Poe -Date: Sat Mar 9 13:44:25 2024 -0800 - - Add custom version for verilator --version packaging (#4954) - -diff --git a/docs/CONTRIBUTORS b/docs/CONTRIBUTORS -index fa22f84fd..82e6160b6 100644 ---- a/docs/CONTRIBUTORS -+++ b/docs/CONTRIBUTORS -@@ -136,6 +136,7 @@ Mostafa Gamal - Nandu Raj - Nathan Kohagen - Nathan Myers -+Nolan Poe - Oleh Maksymenko - Patrick Stewart - Paul Swirhun -diff --git a/src/config_rev b/src/config_rev -index 0640d85b1..bbbcf9b3f 100755 ---- a/src/config_rev -+++ b/src/config_rev -@@ -22,7 +22,11 @@ Args = parser.parse_args() - - os.chdir(Args.directory) - --rev = 'UNKNOWN_REV' -+if 'VERILATOR_SRC_VERSION' in os.environ: -+ rev = os.environ['VERILATOR_SRC_VERSION'] -+else: -+ rev = 'UNKNOWN_REV' -+ - data = os.popen('git describe').read() - - match = re.search(r'^(v[0-9].*)', data) diff --git a/0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch b/0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch deleted file mode 100644 index 1551690..0000000 --- a/0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch +++ /dev/null @@ -1,49 +0,0 @@ -commit 08c76b1da6e132b1e91f82136a8647f71f774904 -Author: Nolan Poe -Date: Fri Mar 15 19:21:08 2024 -0700 - - Fix GCC14 warnings on template specialization syntax (#4974) (#4975) - -diff --git a/src/V3OptionParser.cpp b/src/V3OptionParser.cpp -index b1855c462..e0d7fbd04 100644 ---- a/src/V3OptionParser.cpp -+++ b/src/V3OptionParser.cpp -@@ -114,16 +114,33 @@ V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbCall, void(void), m_cb(), en::NONE); - V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbFOnOff, void(bool), m_cb(!hasPrefixFNo(optp)), - en::FONOFF); - V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbOnOff, void(bool), m_cb(!hasPrefixNo(optp)), en::ONOFF); --template <> --V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbVal, void(int), m_cb(std::atoi(argp)), en::VALUE); --template <> --V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbVal, void(const char*), m_cb(argp), -- en::VALUE); - V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbPartialMatch, void(const char*), m_cb(optp), en::NONE, - true); - V3OPTION_PARSER_DEF_ACT_CB_CLASS(ActionCbPartialMatchVal, void(const char*, const char*), - m_cb(optp, argp), en::VALUE, true); - -+template <> -+class V3OptionParser::Impl::ActionCbVal final : public ActionBase { -+ std::function m_cb; -+ -+public: -+ using CbType = std::function; -+ explicit ActionCbVal(CbType cb) -+ : m_cb(std::move(cb)) {} -+ void exec(const char* optp, const char* argp) override { m_cb(std::atoi(argp)); } -+}; -+ -+template <> -+class V3OptionParser::Impl::ActionCbVal final : public ActionBase { -+ std::function m_cb; -+ -+public: -+ using CbType = std::function; -+ explicit ActionCbVal(CbType cb) -+ : m_cb(std::move(cb)) {} -+ void exec(const char* optp, const char* argp) override { m_cb(argp); } -+}; -+ - #undef V3OPTION_PARSER_DEF_ACT_CB_CLASS - - //###################################################################### diff --git a/sources b/sources index ce6a1fe..4971401 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.022.tar.gz) = 5b919ed5d4cf863434f10f39bbb3a5155d63f79765f5f1d5ae543023b0e350e0996507d250fbfb2e5129bbdf9a51cc5fd0b7154962747c89435648897525bc84 +SHA512 (verilator-5.024.tar.gz) = 34184f4c08bcbecf563b424c4c0fdcaf0c04d60e19887c4df5161b48db256dd7cbe960c71f854bd3dad073c193bbc0c576f171f84b634da58259b81e1afaf622 diff --git a/verilator.spec b/verilator.spec index 66df4b3..fd77515 100644 --- a/verilator.spec +++ b/verilator.spec @@ -16,24 +16,15 @@ %bcond mold 0 Name: verilator -Version: 5.022 +Version: 5.024 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 URL: https://veripool.org/verilator/ Source0: https://github.com/verilator/verilator/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz -# Backported from upstream to fix building -Patch0: 0001-fix-try-lock-spuriously-fails.patch - -# Accepted upstream through GitHub, awaiting release -Patch1: 0002-Allow-for-custom-verilator-revision-in-version-check.patch - # Undesirable upstream, fixes warnings with FORTIFY_SOURCE -Patch2: 0003-Enable-optimization-in-tests.patch - -# Accepted upstream through GitHub, awaiting release -Patch3: 0004-Fix-GCC14-warnings-on-template-specialization-syntax.patch +Patch: 0003-Enable-optimization-in-tests.patch BuildRequires: autoconf BuildRequires: bison From 604b025a521ebca90882f1f2096c4791a14c0b75 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Mon, 15 Jul 2024 15:29:39 -0700 Subject: [PATCH 20/45] Update to Verilator 5.026 --- .gitignore | 1 + sources | 2 +- verilator.spec | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 8e5f297..3dd072f 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ verilator-3.803.tgz /verilator-5.020.tar.gz /verilator-5.022.tar.gz /verilator-5.024.tar.gz +/verilator-5.026.tar.gz diff --git a/sources b/sources index 4971401..2ada02f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.024.tar.gz) = 34184f4c08bcbecf563b424c4c0fdcaf0c04d60e19887c4df5161b48db256dd7cbe960c71f854bd3dad073c193bbc0c576f171f84b634da58259b81e1afaf622 +SHA512 (verilator-5.026.tar.gz) = 95660da60c6f5fac9ce3c7298edfc5ee71beeb2aafe2908b31c83802a22bc4529389d687c3a51eb9370cc6bd1ae9e74e11cdab0de69fa278b1da0d664a393a68 diff --git a/verilator.spec b/verilator.spec index be03a79..2cd9968 100644 --- a/verilator.spec +++ b/verilator.spec @@ -16,7 +16,7 @@ %bcond mold 0 Name: verilator -Version: 5.024 +Version: 5.026 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 From b41054f222af47f93c451727da5a0b94c7983fe6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 20 Jul 2024 08:42:49 +0000 Subject: [PATCH 21/45] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From addfaf64afd126362d7f5a3d96e12baa9f3a1bde Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 21 Aug 2024 18:22:57 -0700 Subject: [PATCH 22/45] Update to Verilator 5.028 --- .gitignore | 1 + sources | 2 +- verilator.spec | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 3dd072f..630f3b5 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ verilator-3.803.tgz /verilator-5.022.tar.gz /verilator-5.024.tar.gz /verilator-5.026.tar.gz +/verilator-5.028.tar.gz diff --git a/sources b/sources index 2ada02f..f977218 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.026.tar.gz) = 95660da60c6f5fac9ce3c7298edfc5ee71beeb2aafe2908b31c83802a22bc4529389d687c3a51eb9370cc6bd1ae9e74e11cdab0de69fa278b1da0d664a393a68 +SHA512 (verilator-5.028.tar.gz) = d3d8d107029afbbcdd9f7a06e7fb17de7c74b4334f6eb5316719550ceec64264d6c95fad9e03214a4ae39ce2e8f2c4bb650c755acf35f4cd656fb1b71300070b diff --git a/verilator.spec b/verilator.spec index 2cd9968..bc702ed 100644 --- a/verilator.spec +++ b/verilator.spec @@ -16,7 +16,7 @@ %bcond mold 0 Name: verilator -Version: 5.026 +Version: 5.028 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 From e6d0efe52e29ebc112ea90150aa4cd4114f19354 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Sat, 30 Nov 2024 14:42:41 -0800 Subject: [PATCH 23/45] Update to 5.030 --- .gitignore | 1 + 0003-Enable-optimization-in-tests.patch | 15 ----------- sources | 2 +- verilator.spec | 33 +++++++++++-------------- 4 files changed, 16 insertions(+), 35 deletions(-) delete mode 100644 0003-Enable-optimization-in-tests.patch diff --git a/.gitignore b/.gitignore index 630f3b5..a299e61 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ verilator-3.803.tgz /verilator-5.024.tar.gz /verilator-5.026.tar.gz /verilator-5.028.tar.gz +/verilator-5.030.tar.gz diff --git a/0003-Enable-optimization-in-tests.patch b/0003-Enable-optimization-in-tests.patch deleted file mode 100644 index 198eb51..0000000 --- a/0003-Enable-optimization-in-tests.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/test_regress/driver.pl b/test_regress/driver.pl -index 1e643ec83..7430a9c26 100755 ---- a/test_regress/driver.pl -+++ b/test_regress/driver.pl -@@ -1254,8 +1254,8 @@ sub compile { - "TEST_OBJ_DIR=$self->{obj_dir}", - "CPPFLAGS_DRIVER=-D" . uc($self->{name}), - ($self->{verbose} ? "CPPFLAGS_DRIVER2=-DTEST_VERBOSE=1" : ""), -- ($param{benchmark} ? "" : "OPT_FAST=-O0"), -- ($param{benchmark} ? "" : "OPT_GLOBAL=-O0"), -+ ($param{benchmark} ? "" : "OPT_FAST=-O1"), -+ ($param{benchmark} ? "" : "OPT_GLOBAL=-O1"), - "$self->{vm_prefix}", # bypass default rule, as we don't need archive - ($param{make_flags} || ""), - ]); diff --git a/sources b/sources index f977218..9c8c493 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.028.tar.gz) = d3d8d107029afbbcdd9f7a06e7fb17de7c74b4334f6eb5316719550ceec64264d6c95fad9e03214a4ae39ce2e8f2c4bb650c755acf35f4cd656fb1b71300070b +SHA512 (verilator-5.030.tar.gz) = 118ae7964363a1c62872dd65285fc8f96ed3b84e5e3195e5a97920ae966cd0f49f95cf4d282f5649e0867b2367c8f68f4ff4876b6d88fa3849bfdd2fc562c75c diff --git a/verilator.spec b/verilator.spec index bc702ed..91cacfd 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,31 +1,18 @@ -# Blocked by perl-parallel-forker not being packaged -# https://bugzilla.redhat.com/show_bug.cgi?id=2268659 -%bcond longtests 0 - -# Warnings in Date: Wed, 4 Dec 2024 13:50:52 -0800 Subject: [PATCH 24/45] Remove legacy changelog --- changelog | 184 ------------------------------------------------------ 1 file changed, 184 deletions(-) delete mode 100644 changelog diff --git a/changelog b/changelog deleted file mode 100644 index c4c9f88..0000000 --- a/changelog +++ /dev/null @@ -1,184 +0,0 @@ -* Sat Jul 22 2023 Fedora Release Engineering - 4.226-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Sat Jan 21 2023 Fedora Release Engineering - 4.226-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Sat Sep 24 2022 Filipe Rosset - 4.226-1 -- Update to 4.226, enabled tests, spec cleanup and modernization -- Fixes rhbz#1933296 rhbz#2047099 and rhbz#2026957 - -* Sat Jul 23 2022 Fedora Release Engineering - 4.108-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Jan 22 2022 Fedora Release Engineering - 4.108-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jul 23 2021 Fedora Release Engineering - 4.108-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jan 27 2021 Fedora Release Engineering - 4.108-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Mon Jan 25 2021 Filipe Rosset - 4.108-1 -- Update to 4.108 fixes rhbz#1901487 - -* Wed Jul 29 2020 Fedora Release Engineering - 4.032-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Apr 24 2020 Filipe Rosset - 4.032-1 -- Update to 4.032 - -* Sun Feb 16 2020 Filipe Rosset - 4.028-1 -- Update to 4.028 - -* Fri Jan 31 2020 Fedora Release Engineering - 4.026-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Jan 22 2020 Filipe Rosset - 4.026-1 -- Update to 4.026 fixes rhbz#1747211 - -* Thu Aug 22 2019 Filipe Rosset - 4.016-1 -- Updated to 4.016 fixes rhbz#1590822 rhbz#1643479 and rhbz#1700228 - -* Sat Jul 27 2019 Fedora Release Engineering - 3.922-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Fri May 03 2019 Scott Tsai scottt.tw@gmail.com - 3.922-5 -- Remove duplicate copies of 'examples' in /usr/share/doc -- https://bugzilla.redhat.com/show_bug.cgi?id=1592057#c3 - -* Fri May 03 2019 Marcus Müller - 3.922-4 -- Made %{_bindir}/verilator et al executable, fixes rhbz #1592057 - -* Sun Feb 03 2019 Fedora Release Engineering - 3.922-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sat Jul 14 2018 Fedora Release Engineering - 3.922-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Sun Mar 18 2018 Filipe Rosset - 3.922-1 -- 3.922 bump, fixes rhbz #1557720 - -* Fri Feb 09 2018 Igor Gnatenko - 3.920-2 -- Escape macros in %%changelog - -* Wed Feb 07 2018 Filipe Rosset - 3.920-1 -- 3.920 bump -- Disabled tests until upstream fixes the issue -- Added BR to fix EPEL7 build -- Fixes rhbz #1250122 and rhbz #1494887 - -* Fri Sep 08 2017 Petr Pisar - 3.910-1 -- 3.910 bump -- License corrected to (LGPLv3 or Artistic 2.0) - -* Thu Aug 03 2017 Fedora Release Engineering - 3.890-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 3.890-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Mon May 15 2017 Fedora Release Engineering - 3.890-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild - -* Sat Feb 11 2017 Fedora Release Engineering - 3.890-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Mon Nov 28 2016 Filipe Rosset - 3.890-2 -- Attempt to rebuilt on rawhide due dependency problems - -* Mon Nov 28 2016 Filipe Rosset - 3.890-1 -- Rebuilt for new upstream version 3.890 -- Spec clean up plus fixes rhbz #1087393 and rhbz #1358609 - -* Fri Feb 05 2016 Fedora Release Engineering - 3.874-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jun 19 2015 Fedora Release Engineering - 3.874-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sun Jun 07 2015 Scott Tsai - 3.874-1 -- Upstream 3.874 - -* Sat May 02 2015 Kalev Lember - 3.864-2 -- Rebuilt for GCC 5 C++11 ABI change - -* Mon Sep 22 2014 Scott Tsai 3.864-1 -- Upstream 3.864 - -* Mon Aug 18 2014 Fedora Release Engineering - 3.862-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Fri Jun 13 2014 Scott Tsai 3.862-1 -- Upstream 3.862 - -* Sun Jun 08 2014 Fedora Release Engineering - 3.845-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sun Aug 04 2013 Fedora Release Engineering - 3.845-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Sat Feb 16 2013 Chitlesh Goorah - 3.845-1 -- updated to 3.845 - -* Fri Feb 15 2013 Fedora Release Engineering - 3.805-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Sun Jul 22 2012 Fedora Release Engineering - 3.805-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Tue Feb 28 2012 Fedora Release Engineering - 3.805-4 -- Rebuilt for c++ ABI breakage - -* Sat Jan 14 2012 Fedora Release Engineering - 3.805-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Mon Feb 07 2011 Fedora Release Engineering - 3.805-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Sun Nov 07 2010 Chitlesh Goorah - 3.805-1 -- updated to 3.805 - -* Sat Sep 25 2010 Chitlesh Goorah - 3.804-1 -- updated to 3.804 - -* Sun Jul 11 2010 Chitlesh Goorah - 3.803-1 -- updated to 3.803 - -* Fri Jul 24 2009 Lane Brooks - 3.712-1 -- Updated to verilator 3.712 - -* Fri Jun 26 2009 Lane Brooks - 3.711-1 -- Updated to verilator 3.711 -- Added Artistic file -- Fixed permissions on man file - -* Tue Jun 9 2009 Lane Brooks - 3.710-1 -- Updated to verilator 3.710 -- Removed GCC 4.3 patch (no longer necessary) -- Added SYSTEMPERL_INCLUDE to point to perl-SystemPerl rpm install location - -* Fri Jan 9 2009 Lane Brooks - 3.700-1 -- Updated dependancy to newly packaged perl-SystemPerl and removed patch -- Updated to verilator 3.700 -- Added GCC 4.3 patch - -* Fri Jan 2 2009 Lane Brooks - 3.681-2 -- Moved examples from data dir to doc dir - -* Thu Jan 1 2009 Lane Brooks - 3.681-1 -- Updated verilator 3.681 -- Removed gcc 4.3 patch as verilator 3.681 incorporates this fix -- Removed shared object patch as it is possible to do this from Makefile - using environment variables -- Further updates to the spec file per Chitlesh's feedback - -* Sun Oct 26 2008 Lane Brooks - 3.680-3 -- Improved spec file for Fedora integration based on initial feedback - -* Thu Oct 23 2008 Lane Brooks - 3.680-2 -- Added shared object generation patch - -* Thu Oct 16 2008 Lane Brooks - 3.680-1 -- Initial package based on SUSE packages from Guenter Dannoritzer From 70e60ee2f55992db6f2b23638cff7e06cd857ffd Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 4 Dec 2024 13:59:14 -0800 Subject: [PATCH 25/45] Add initial gating tests --- gating.yaml | 7 +++++++ tests/example.sv | 3 +++ tests/smoke.yaml | 16 ++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100644 gating.yaml create mode 100644 tests/example.sv create mode 100644 tests/smoke.yaml diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..03d95b2 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,7 @@ +--- !Policy +product_versions: + - fedora-* +decision_contexts: [bodhi_update_push_testing, bodhi_update_push_stable] +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} \ No newline at end of file diff --git a/tests/example.sv b/tests/example.sv new file mode 100644 index 0000000..3403b9a --- /dev/null +++ b/tests/example.sv @@ -0,0 +1,3 @@ +module example(input bit A, output bit B); + assign B = A; +endmodule diff --git a/tests/smoke.yaml b/tests/smoke.yaml new file mode 100644 index 0000000..ad3c799 --- /dev/null +++ b/tests/smoke.yaml @@ -0,0 +1,16 @@ +--- +- hosts: localhost + roles: + - role: standard-test-basic + tags: + - classic + required_packages: + - verilator + + tests: + - smoke: + dir: . + run: verilator --version + - lint: + dir: . + run: verilator --lint-only -Wall --quiet tests/example.sv \ No newline at end of file From 6cbf78204e1e4530a2c77adda4b05922cfab9c2d Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 4 Dec 2024 14:01:52 -0800 Subject: [PATCH 26/45] Re-enable warnings --- verilator.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/verilator.spec b/verilator.spec index 91cacfd..e5c8c4e 100644 --- a/verilator.spec +++ b/verilator.spec @@ -2,7 +2,7 @@ %bcond ccache 0 %bcond mold 0 %bcond longtests 0 -%bcond ccwarn 0 +%bcond ccwarn 1 %bcond z3 1 Name: verilator @@ -11,7 +11,7 @@ Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 URL: https://veripool.org/verilator/ -Source0: https://github.com/verilator/verilator/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz +Source: https://github.com/verilator/verilator/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz BuildRequires: autoconf BuildRequires: bison From b9b5ba0b759145f8ecb1c42c09cd9a30e4518b20 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 4 Dec 2024 14:13:38 -0800 Subject: [PATCH 27/45] Packit support --- packit.yaml | 24 ++++++++++++++++++++++++ verilator.spec | 1 + 2 files changed, 25 insertions(+) create mode 100644 packit.yaml diff --git a/packit.yaml b/packit.yaml new file mode 100644 index 0000000..b55d9af --- /dev/null +++ b/packit.yaml @@ -0,0 +1,24 @@ +# See the documentation for more information: +# https://packit.dev/docs/configuration/ + +upstream_project_url: https://github.com/verilator/verilator.git + +jobs: +# https://packit.dev/docs/configuration/downstream/pull_from_upstream +# TODO make sure Monitoring status on the left side at https://src.fedoraproject.org/rpms/ is set to Monitoring +- job: pull_from_upstream + trigger: release + dist_git_branches: + - fedora-all + +# https://packit.dev/docs/configuration/downstream/koji_build +- job: koji_build + trigger: commit + dist_git_branches: + - fedora-all + +# https://packit.dev/docs/configuration/downstream/bodhi_update +- job: bodhi_update + trigger: commit + dist_git_branches: + - fedora-branched \ No newline at end of file diff --git a/verilator.spec b/verilator.spec index e5c8c4e..44ca286 100644 --- a/verilator.spec +++ b/verilator.spec @@ -43,6 +43,7 @@ BuildRequires: gperftools-libs BuildRequires: gperftools-devel %endif %if %{with mold} +Requires: mold BuildRequires: mold %endif %if %{with ccache} From af787fca691ba318cc26d4956a9a9ea8974d93d4 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 4 Dec 2024 21:34:04 -0800 Subject: [PATCH 28/45] Do not set build flags during testing --- verilator.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/verilator.spec b/verilator.spec index 44ca286..3dca036 100644 --- a/verilator.spec +++ b/verilator.spec @@ -131,6 +131,13 @@ mv %{buildroot}%{_datadir}/pkgconfig/verilator.pc %{buildroot}%{_libdir}/pkgconf rm -rf %{buildroot}%{_datadir}/verilator/examples rm -rf %{buildroot}%{_datadir}/verilator/tests + + +# The "tests" are all integration tests. +# They also define their own build flags, +# and fail if they are set to anything else. +%undefine _auto_set_build_flags + %check make test From 6369594fa274b8adbf3c679a5c70b4c443ccd468 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 4 Dec 2024 21:59:24 -0800 Subject: [PATCH 29/45] Disable some hardcoded paths in binary --- tests/example.sv | 7 +++++-- verilator.spec | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tests/example.sv b/tests/example.sv index 3403b9a..e578377 100644 --- a/tests/example.sv +++ b/tests/example.sv @@ -1,3 +1,6 @@ -module example(input bit A, output bit B); - assign B = A; +module example ( + input bit a_i, + output bit b_o +); + assign b_o = a_i; endmodule diff --git a/verilator.spec b/verilator.spec index 3dca036..8e6b312 100644 --- a/verilator.spec +++ b/verilator.spec @@ -93,7 +93,7 @@ export VERILATOR_ROOT=%{_datadir} autoconf %configure \ --disable-partial-static \ - --enable-defenv \ + --disable-defenv \ %if %{with ccwarn} --enable-ccwarn \ %else From 45381c4edd30e481ea25dcb0f6e66da58a4b6608 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 4 Dec 2024 22:54:44 -0800 Subject: [PATCH 30/45] Update tests --- .fmf/version | 1 + plans/main.fmf | 10 ++++++++++ tests/{ => basic/lint}/example.sv | 0 tests/basic/lint/main.fmf | 2 ++ tests/basic/lint/test.sh | 8 ++++++++ tests/basic/main.fmf | 1 + tests/basic/smoke/main.fmf | 2 ++ tests/basic/smoke/test.sh | 8 ++++++++ tests/main.fmf | 4 ++++ tests/smoke.yaml | 16 ---------------- 10 files changed, 36 insertions(+), 16 deletions(-) create mode 100644 .fmf/version create mode 100644 plans/main.fmf rename tests/{ => basic/lint}/example.sv (100%) create mode 100644 tests/basic/lint/main.fmf create mode 100755 tests/basic/lint/test.sh create mode 100644 tests/basic/main.fmf create mode 100644 tests/basic/smoke/main.fmf create mode 100755 tests/basic/smoke/test.sh create mode 100644 tests/main.fmf delete mode 100644 tests/smoke.yaml diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plans/main.fmf b/plans/main.fmf new file mode 100644 index 0000000..fbc11c1 --- /dev/null +++ b/plans/main.fmf @@ -0,0 +1,10 @@ +discover: + how: fmf +execute: + how: tmt + +/basic: + summary: + Basic functionality + discover+: + filter: "tier:0" diff --git a/tests/example.sv b/tests/basic/lint/example.sv similarity index 100% rename from tests/example.sv rename to tests/basic/lint/example.sv diff --git a/tests/basic/lint/main.fmf b/tests/basic/lint/main.fmf new file mode 100644 index 0000000..894b51e --- /dev/null +++ b/tests/basic/lint/main.fmf @@ -0,0 +1,2 @@ +summary: Basic lint test +tag: basic \ No newline at end of file diff --git a/tests/basic/lint/test.sh b/tests/basic/lint/test.sh new file mode 100755 index 0000000..45d92cc --- /dev/null +++ b/tests/basic/lint/test.sh @@ -0,0 +1,8 @@ +#!/bin/bash +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +rlJournalStart + rlPhaseStartTest + rlRun "verilator --lint-only -Wall example.sv" + rlPhaseEnd +rlJournalEnd \ No newline at end of file diff --git a/tests/basic/main.fmf b/tests/basic/main.fmf new file mode 100644 index 0000000..3c4d0f8 --- /dev/null +++ b/tests/basic/main.fmf @@ -0,0 +1 @@ +tier: 0 \ No newline at end of file diff --git a/tests/basic/smoke/main.fmf b/tests/basic/smoke/main.fmf new file mode 100644 index 0000000..e03cdd7 --- /dev/null +++ b/tests/basic/smoke/main.fmf @@ -0,0 +1,2 @@ +summary: Basic smoke test +tag: basic \ No newline at end of file diff --git a/tests/basic/smoke/test.sh b/tests/basic/smoke/test.sh new file mode 100755 index 0000000..1bee41d --- /dev/null +++ b/tests/basic/smoke/test.sh @@ -0,0 +1,8 @@ +#!/bin/bash +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +rlJournalStart + rlPhaseStartTest + rlRun "verilator --version" + rlPhaseEnd +rlJournalEnd \ No newline at end of file diff --git a/tests/main.fmf b/tests/main.fmf new file mode 100644 index 0000000..d1ac01b --- /dev/null +++ b/tests/main.fmf @@ -0,0 +1,4 @@ +test: ./test.sh +framework: beakerlib +require: verilator +tier: 1 \ No newline at end of file diff --git a/tests/smoke.yaml b/tests/smoke.yaml deleted file mode 100644 index ad3c799..0000000 --- a/tests/smoke.yaml +++ /dev/null @@ -1,16 +0,0 @@ ---- -- hosts: localhost - roles: - - role: standard-test-basic - tags: - - classic - required_packages: - - verilator - - tests: - - smoke: - dir: . - run: verilator --version - - lint: - dir: . - run: verilator --lint-only -Wall --quiet tests/example.sv \ No newline at end of file From 785e97611bd0bba5e781f1804ef5987502ded5b2 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Fri, 13 Dec 2024 19:21:14 -0800 Subject: [PATCH 31/45] minor typo --- verilator.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/verilator.spec b/verilator.spec index 8e6b312..f6483d4 100644 --- a/verilator.spec +++ b/verilator.spec @@ -105,7 +105,7 @@ autoconf --disable-longtests %endif -# We cannot run autoreconf because upstream uses unqualifed stdlib identifiers +# We cannot run autoreconf because upstream uses unqualified stdlib identifiers # that are included by autoconf-generated header files. find -name Makefile_obj -exec sed -i \ -e 's|^\(COPT = .*\)|\1 %{optflags}|' \ From 6bfdc10900b8abfc353bcbb6ba62938aaf2e3181 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Fri, 13 Dec 2024 19:40:21 -0800 Subject: [PATCH 32/45] Do not build with tcmalloc and z3, which are unavailable in c10s --- verilator.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/verilator.spec b/verilator.spec index f6483d4..e6106ed 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,9 +1,9 @@ -%bcond tcmalloc 1 +%bcond tcmalloc 0 %bcond ccache 0 %bcond mold 0 %bcond longtests 0 %bcond ccwarn 1 -%bcond z3 1 +%bcond z3 0 Name: verilator Version: 5.030 From 200d4c7d313b703e4355ebed8f5f86d412a4adc4 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Fri, 13 Dec 2024 19:58:27 -0800 Subject: [PATCH 33/45] Do not use z3 and gperftools in CentOS/RHEL builds --- verilator.spec | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/verilator.spec b/verilator.spec index f6483d4..06a7620 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,9 +1,20 @@ -%bcond tcmalloc 1 -%bcond ccache 0 -%bcond mold 0 +# Universal build flags %bcond longtests 0 %bcond ccwarn 1 + +# tcmalloc and z3 are not available on EL +%if 0%{?rhel}%{?centos} +%bcond tcmalloc 0 +%bcond z3 0 +%else +%bcond tcmalloc 1 %bcond z3 1 +%endif + +# These are offered by the build, but there's no real demand to include them. +%bcond ccache 0 +%bcond mold 0 + Name: verilator Version: 5.030 From f557b8d1a155342ef6b6d83ecdcc78370a42ee53 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Fri, 13 Dec 2024 19:58:27 -0800 Subject: [PATCH 34/45] Do not use z3 and gperftools in CentOS/RHEL builds --- verilator.spec | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/verilator.spec b/verilator.spec index e6106ed..5bd6a58 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,9 +1,19 @@ -%bcond tcmalloc 0 -%bcond ccache 0 -%bcond mold 0 +# Universal build flags %bcond longtests 0 %bcond ccwarn 1 + +# tcmalloc and z3 are not available on EL +%if 0%{?rhel}%{?centos} +%bcond tcmalloc 0 %bcond z3 0 +%else +%bcond tcmalloc 1 +%bcond z3 1 +%endif + +# These are offered by the build, but there's no real demand to include them. +%bcond ccache 0 +%bcond mold 0 Name: verilator Version: 5.030 From 4833d86a5954cfe692c4606ec07c05dbafdd5d37 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 1 Jan 2025 13:11:04 -0800 Subject: [PATCH 35/45] Update packit.yaml to use upstream tagging scheme --- packit.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packit.yaml b/packit.yaml index b55d9af..8ed5fe5 100644 --- a/packit.yaml +++ b/packit.yaml @@ -2,6 +2,7 @@ # https://packit.dev/docs/configuration/ upstream_project_url: https://github.com/verilator/verilator.git +upstream_tag_template: v{version} jobs: # https://packit.dev/docs/configuration/downstream/pull_from_upstream @@ -21,4 +22,4 @@ jobs: - job: bodhi_update trigger: commit dist_git_branches: - - fedora-branched \ No newline at end of file + - fedora-branched From 9eca3ffd9646710d8189ac2298dfc5d84b109cc9 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 1 Jan 2025 13:17:19 -0800 Subject: [PATCH 36/45] Update to 5.032 upstream release - Resolves: rhbz#2292595 Upstream tag: v5.032 Upstream commit: 8ff77e9d Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + README.packit | 3 +++ sources | 2 +- verilator.spec | 2 +- 4 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 README.packit diff --git a/.gitignore b/.gitignore index a299e61..132890e 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ verilator-3.803.tgz /verilator-5.026.tar.gz /verilator-5.028.tar.gz /verilator-5.030.tar.gz +/verilator-5.032.tar.gz diff --git a/README.packit b/README.packit new file mode 100644 index 0000000..3826605 --- /dev/null +++ b/README.packit @@ -0,0 +1,3 @@ +This repository is maintained by packit. +https://packit.dev/ +The file was generated using packit 0.106.0. diff --git a/sources b/sources index 9c8c493..3399b7e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.030.tar.gz) = 118ae7964363a1c62872dd65285fc8f96ed3b84e5e3195e5a97920ae966cd0f49f95cf4d282f5649e0867b2367c8f68f4ff4876b6d88fa3849bfdd2fc562c75c +SHA512 (verilator-5.032.tar.gz) = a250c1a85bc5e17ec0d3dbf4cbc95e66d6389ac44866c6846b0ded50db77e912b9ab53bb97b5b8da9ed399d08d73d5980ce1807042c810aaa84c554168f32b63 diff --git a/verilator.spec b/verilator.spec index 5bd6a58..ed77515 100644 --- a/verilator.spec +++ b/verilator.spec @@ -16,7 +16,7 @@ %bcond mold 0 Name: verilator -Version: 5.030 +Version: 5.032 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 From c39b8c4702c3086c3c5a027356e1d565075d7826 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Wed, 1 Jan 2025 13:24:43 -0800 Subject: [PATCH 37/45] Differentiate version tags between EPEL and Fedora --- verilator.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/verilator.spec b/verilator.spec index ed77515..054a075 100644 --- a/verilator.spec +++ b/verilator.spec @@ -126,7 +126,12 @@ find -name Makefile_obj -exec sed -i \ sed -i 's#/usr/bin/env python3#/usr/bin/python3#g' docs/bin/* %build +%if 0%{?rhel}%{?centos} +export VERILATOR_SRC_VERSION=epel-%{version} +%else export VERILATOR_SRC_VERSION=fedora-%{version} +%endif + %make_build %install From df65618072066bcae27d28728e78c1962654deed Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 19 Jan 2025 14:16:22 +0000 Subject: [PATCH 38/45] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From e76a9731a0ecbca9397e8a7e01fb896f06ab8001 Mon Sep 17 00:00:00 2001 From: Packit Date: Tue, 25 Feb 2025 01:52:58 +0000 Subject: [PATCH 39/45] Update to 5.034 upstream release - Resolves: rhbz#2347446 Upstream tag: v5.034 Upstream commit: 436d3d76 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + README.packit | 2 +- sources | 2 +- verilator.spec | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 132890e..0b1593f 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ verilator-3.803.tgz /verilator-5.028.tar.gz /verilator-5.030.tar.gz /verilator-5.032.tar.gz +/verilator-5.034.tar.gz diff --git a/README.packit b/README.packit index 3826605..2cdc258 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 0.106.0. +The file was generated using packit 1.1.1.post1.dev1+g7c5e02df. diff --git a/sources b/sources index 3399b7e..ff0c117 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.032.tar.gz) = a250c1a85bc5e17ec0d3dbf4cbc95e66d6389ac44866c6846b0ded50db77e912b9ab53bb97b5b8da9ed399d08d73d5980ce1807042c810aaa84c554168f32b63 +SHA512 (verilator-5.034.tar.gz) = da97b8434edc116afc5ca0835ba5336dce3518dd933db8d3bb9ce39211ffdb2c978f9f1f683efabf9e97a93a521821e561f43dc13bf35abde72d01b45d390054 diff --git a/verilator.spec b/verilator.spec index 054a075..b89de66 100644 --- a/verilator.spec +++ b/verilator.spec @@ -16,7 +16,7 @@ %bcond mold 0 Name: verilator -Version: 5.032 +Version: 5.034 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 From 37db2712414b42fe906f02223ceb31ca4eb7003c Mon Sep 17 00:00:00 2001 From: Packit Date: Sun, 27 Apr 2025 22:27:17 +0000 Subject: [PATCH 40/45] Update to 5.036 upstream release - Resolves: rhbz#2362594 Upstream tag: v5.036 Upstream commit: eca2b4c9 Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + README.packit | 2 +- sources | 2 +- verilator.spec | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 0b1593f..e29baac 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ verilator-3.803.tgz /verilator-5.030.tar.gz /verilator-5.032.tar.gz /verilator-5.034.tar.gz +/verilator-5.036.tar.gz diff --git a/README.packit b/README.packit index 2cdc258..807ffc6 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.1.1.post1.dev1+g7c5e02df. +The file was generated using packit 1.6.0.post1.dev2+gd5a7662a. diff --git a/sources b/sources index ff0c117..93810dc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.034.tar.gz) = da97b8434edc116afc5ca0835ba5336dce3518dd933db8d3bb9ce39211ffdb2c978f9f1f683efabf9e97a93a521821e561f43dc13bf35abde72d01b45d390054 +SHA512 (verilator-5.036.tar.gz) = ce80620f690eb1fc688bbf2d15bb1a559e733ed2183c1c1b890d55a5ec9e803aa065d1f46f92a6552cccb939115814ec3359b4a3f17b514c644d1ad7060a5bc3 diff --git a/verilator.spec b/verilator.spec index b89de66..b588eaa 100644 --- a/verilator.spec +++ b/verilator.spec @@ -16,7 +16,7 @@ %bcond mold 0 Name: verilator -Version: 5.034 +Version: 5.036 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 From b45a9349fa4013e402d009c3a8811c2e6f8caaec Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Sun, 27 Apr 2025 20:31:27 -0700 Subject: [PATCH 41/45] Add python3-distro --- verilator.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/verilator.spec b/verilator.spec index b588eaa..beb9d75 100644 --- a/verilator.spec +++ b/verilator.spec @@ -47,6 +47,7 @@ BuildRequires: perl(strict) BuildRequires: perl(Time::HiRes) BuildRequires: perl(vars) BuildRequires: python3-devel +BuildRequires: python3-distro BuildRequires: sed %if %{with tcmalloc} BuildRequires: gperftools-libs From 8d599b34073e26bdd151b5659d3265d0b673552e Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 16 Jul 2025 16:22:18 -0600 Subject: [PATCH 42/45] Stop building for 32-bit x86 --- verilator.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/verilator.spec b/verilator.spec index beb9d75..01e423f 100644 --- a/verilator.spec +++ b/verilator.spec @@ -23,6 +23,9 @@ License: LGPL-3.0-only OR Artistic-2.0 URL: https://veripool.org/verilator/ Source: https://github.com/verilator/verilator/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz +# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} + BuildRequires: autoconf BuildRequires: bison BuildRequires: coreutils From a6ee74841bbd933cea7bb192ee1aff6025c1b84b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 20:03:08 +0000 Subject: [PATCH 43/45] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From a3e65578018592530e0c31f725d76b8ad017855d Mon Sep 17 00:00:00 2001 From: Packit Date: Sun, 31 Aug 2025 04:29:38 +0000 Subject: [PATCH 44/45] Update to 5.040 upstream release - Resolves: rhbz#2378999 Upstream tag: v5.040 Upstream commit: 51cdf52d Commit authored by Packit automation (https://packit.dev/) --- .gitignore | 1 + README.packit | 2 +- sources | 2 +- verilator.spec | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index e29baac..9d91033 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ verilator-3.803.tgz /verilator-5.032.tar.gz /verilator-5.034.tar.gz /verilator-5.036.tar.gz +/verilator-5.040.tar.gz diff --git a/README.packit b/README.packit index 807ffc6..fb341a1 100644 --- a/README.packit +++ b/README.packit @@ -1,3 +1,3 @@ This repository is maintained by packit. https://packit.dev/ -The file was generated using packit 1.6.0.post1.dev2+gd5a7662a. +The file was generated using packit 1.11.0.post1.dev7+gfdcdf3a32. diff --git a/sources b/sources index 93810dc..df68504 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (verilator-5.036.tar.gz) = ce80620f690eb1fc688bbf2d15bb1a559e733ed2183c1c1b890d55a5ec9e803aa065d1f46f92a6552cccb939115814ec3359b4a3f17b514c644d1ad7060a5bc3 +SHA512 (verilator-5.040.tar.gz) = 3997791963305f4556a8f3b87e050eba5ad9952c0eb041c5ac981276ef385219e5c162a01e1ec966e5e814a334caa4e92f8e939e9cfbc068b30935f5ee6e9804 diff --git a/verilator.spec b/verilator.spec index 01e423f..e87d574 100644 --- a/verilator.spec +++ b/verilator.spec @@ -16,7 +16,7 @@ %bcond mold 0 Name: verilator -Version: 5.036 +Version: 5.040 Release: %autorelease Summary: A fast simulator for synthesizable Verilog License: LGPL-3.0-only OR Artistic-2.0 From aafbc5153deae9be65b78a9356ddb7d691f29de8 Mon Sep 17 00:00:00 2001 From: Nolan Poe Date: Sun, 31 Aug 2025 00:57:10 -0700 Subject: [PATCH 45/45] Only enable CCWARN on arm64 and amd64 --- verilator.spec | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/verilator.spec b/verilator.spec index e87d574..1ea2d2c 100644 --- a/verilator.spec +++ b/verilator.spec @@ -1,6 +1,12 @@ # Universal build flags %bcond longtests 0 + +# Only enable extended warnings on supported platforms +%ifarch x86_64 aarch64 %bcond ccwarn 1 +%else +%bcond ccwarn 0 +%endif # tcmalloc and z3 are not available on EL %if 0%{?rhel}%{?centos}