From 9055ff9a2e5f1e86c485279ab2b83f6aa8c3ac2a Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 19 Jun 2015 04:35:27 +0000 Subject: [PATCH 01/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 51866bb..48910f4 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.2.0 -Release: 7%{?dist} +Release: 8%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 Group: Development/Languages @@ -73,6 +73,9 @@ rm -rf %{buildroot} %changelog +* Fri Jun 19 2015 Fedora Release Engineering - 1.2.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Mon Aug 18 2014 Fedora Release Engineering - 1.2.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild From 1a2f4d78c9320661d03d204fda78b773803aa500 Mon Sep 17 00:00:00 2001 From: Christian Dersch Date: Thu, 1 Oct 2015 00:15:00 +0200 Subject: [PATCH 02/41] New upstream release (1.3.0) --- .gitignore | 1 + sources | 2 +- yasm.spec | 23 ++++++++++++++--------- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index 4ac2815..6e43b59 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ yasm-1.0.1.tar.gz yasm-1.1.0.tar.gz /yasm-1.2.0.tar.gz +/yasm-1.3.0.tar.gz diff --git a/sources b/sources index 847a26e..5611a4f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4cfc0686cf5350dd1305c4d905eb55a6 yasm-1.2.0.tar.gz +fc9e586751ff789b34b1f21d572d96af yasm-1.3.0.tar.gz diff --git a/yasm.spec b/yasm.spec index 48910f4..9b510d5 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,14 +1,17 @@ Summary: Modular Assembler Name: yasm -Version: 1.2.0 -Release: 8%{?dist} +Version: 1.3.0 +Release: 1%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 -Group: Development/Languages + URL: http://yasm.tortall.net/ Source: http://www.tortall.net/projects/yasm/releases/yasm-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root -BuildRequires: bison, byacc, xmlto, gettext-devel + +BuildRequires: bison +BuildRequires: byacc +BuildRequires: gettext-devel +BuildRequires: xmlto Provides: bundled(md5-plumb) %description @@ -22,7 +25,6 @@ overall design is an optimizer module. %package devel Summary: Header files and static libraries for the yasm Modular Assembler -Group: Development/Libraries Requires: %{name} = %{version}-%{release} Provides: %{name}-static = %{version}-%{release} Provides: bundled(md5-plumb) @@ -56,15 +58,14 @@ rm -rf %{buildroot} %files -%defattr(-,root,root,-) -%doc Artistic.txt AUTHORS BSD.txt COPYING GNU* +%license Artistic.txt BSD.txt COPYING GNU_GPL-2.0 GNU_LGPL-2.0 +%doc AUTHORS %{_bindir}/vsyasm %{_bindir}/yasm %{_bindir}/ytasm %{_mandir}/man1/yasm.1* %files devel -%defattr(-,root,root,-) %{_includedir}/libyasm/ %{_includedir}/libyasm-stdint.h %{_includedir}/libyasm.h @@ -73,6 +74,10 @@ rm -rf %{buildroot} %changelog +* Wed Sep 30 2015 Christian Dersch - 1.3.0-1 +- new version +- spec cleanup + * Fri Jun 19 2015 Fedora Release Engineering - 1.2.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From fe3febf5a31613c2d997ae30e785a6547ca272b8 Mon Sep 17 00:00:00 2001 From: Christian Dersch Date: Thu, 1 Oct 2015 11:00:22 +0200 Subject: [PATCH 03/41] Fixed bogus date (RHBZ #1190908) --- yasm.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/yasm.spec b/yasm.spec index 9b510d5..d6bad3f 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 1%{?dist} +Release: 2%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -74,6 +74,9 @@ rm -rf %{buildroot} %changelog +* Thu Oct 01 2015 Christian Dersch - 1.3.0-2 +- Fixed bogus date (RHBZ #1190908) + * Wed Sep 30 2015 Christian Dersch - 1.3.0-1 - new version - spec cleanup @@ -183,7 +186,7 @@ rm -rf %{buildroot} * Sun May 22 2005 Jeremy Katz - 0.4.0-4 - rebuild on all arches -* Fri Apr 7 2005 Michael Schwendt +* Thu Apr 7 2005 Michael Schwendt - rebuilt * Mon Feb 14 2005 David Woodhouse 0.4.0-2 From 5e0c083d7d565b5877fe0be4b2626942c3bf70d6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 5 Feb 2016 03:56:37 +0000 Subject: [PATCH 04/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index d6bad3f..64bf894 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 2%{?dist} +Release: 3%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -74,6 +74,9 @@ rm -rf %{buildroot} %changelog +* Fri Feb 05 2016 Fedora Release Engineering - 1.3.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Thu Oct 01 2015 Christian Dersch - 1.3.0-2 - Fixed bogus date (RHBZ #1190908) From e5cb7afef144592e34ce013ab45e49e1a2903fcf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 11 Feb 2017 18:15:22 +0000 Subject: [PATCH 05/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 64bf894..3b5b755 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 3%{?dist} +Release: 4%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -74,6 +74,9 @@ rm -rf %{buildroot} %changelog +* Sat Feb 11 2017 Fedora Release Engineering - 1.3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Fri Feb 05 2016 Fedora Release Engineering - 1.3.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From cd1e8919f8f21dfb7a3f6a9a13a14c3a2026176d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 27 Jul 2017 22:33:31 +0000 Subject: [PATCH 06/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 3b5b755..6fae27f 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 4%{?dist} +Release: 5%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -74,6 +74,9 @@ rm -rf %{buildroot} %changelog +* Thu Jul 27 2017 Fedora Release Engineering - 1.3.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Sat Feb 11 2017 Fedora Release Engineering - 1.3.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild From 76f1bdd1f608feb5c81692284c87f2398e684268 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 3 Aug 2017 11:05:01 +0000 Subject: [PATCH 07/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 6fae27f..04b9022 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 5%{?dist} +Release: 6%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -74,6 +74,9 @@ rm -rf %{buildroot} %changelog +* Thu Aug 03 2017 Fedora Release Engineering - 1.3.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Thu Jul 27 2017 Fedora Release Engineering - 1.3.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From d6084e1e9087aa894608d455ba93dc41166b5ee4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 9 Feb 2018 22:15:35 +0000 Subject: [PATCH 08/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 04b9022..2adb184 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 6%{?dist} +Release: 7%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -74,6 +74,9 @@ rm -rf %{buildroot} %changelog +* Fri Feb 09 2018 Fedora Release Engineering - 1.3.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Thu Aug 03 2017 Fedora Release Engineering - 1.3.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From 2e922494bb53f0a29426d18bc82a810e1f09533c Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Wed, 14 Feb 2018 07:43:49 +0100 Subject: [PATCH 09/41] Remove %clean section None of currently supported distributions need that. Last one was EL5 which is EOL for a while. Signed-off-by: Igor Gnatenko --- yasm.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/yasm.spec b/yasm.spec index 2adb184..86e266a 100644 --- a/yasm.spec +++ b/yasm.spec @@ -53,9 +53,6 @@ rm -rf %{buildroot} make install DESTDIR=%{buildroot} -%clean -rm -rf %{buildroot} - %files %license Artistic.txt BSD.txt COPYING GNU_GPL-2.0 GNU_LGPL-2.0 From ce0bfbd4ca462cca8e7ac44e4691a5e125dee10a Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 9 Jul 2018 19:06:54 +0200 Subject: [PATCH 10/41] add BuildRequires: gcc Reference: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot --- yasm.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/yasm.spec b/yasm.spec index 86e266a..9b26a0b 100644 --- a/yasm.spec +++ b/yasm.spec @@ -8,6 +8,7 @@ License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 URL: http://yasm.tortall.net/ Source: http://www.tortall.net/projects/yasm/releases/yasm-%{version}.tar.gz +BuildRequires: gcc BuildRequires: bison BuildRequires: byacc BuildRequires: gettext-devel From 708f3443145fc13bf3c46d4738bbea20b23bf02e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 14 Jul 2018 09:41:23 +0000 Subject: [PATCH 11/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 9b26a0b..bdac5f1 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 7%{?dist} +Release: 8%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -72,6 +72,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jul 14 2018 Fedora Release Engineering - 1.3.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Fri Feb 09 2018 Fedora Release Engineering - 1.3.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From 6b3f795259e798735e36d9f2fbf22e0a9042d6fa Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 3 Feb 2019 12:57:20 +0000 Subject: [PATCH 12/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index bdac5f1..e3f690a 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 8%{?dist} +Release: 9%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -72,6 +72,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sun Feb 03 2019 Fedora Release Engineering - 1.3.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Sat Jul 14 2018 Fedora Release Engineering - 1.3.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From 2dc7bee85b66135052b7079e476aea8d35f4fa7f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jul 2019 04:47:27 +0000 Subject: [PATCH 13/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index e3f690a..d063a67 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 9%{?dist} +Release: 10%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -72,6 +72,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jul 27 2019 Fedora Release Engineering - 1.3.0-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Sun Feb 03 2019 Fedora Release Engineering - 1.3.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From 5b729f3165dbd25241374da49f7cfaa7facc2188 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 31 Jan 2020 05:05:31 +0000 Subject: [PATCH 14/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index d063a67..e0121a1 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 10%{?dist} +Release: 11%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -72,6 +72,9 @@ make install DESTDIR=%{buildroot} %changelog +* Fri Jan 31 2020 Fedora Release Engineering - 1.3.0-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Sat Jul 27 2019 Fedora Release Engineering - 1.3.0-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 382a4f1764324edc4245e33508f81dd827c05bed Mon Sep 17 00:00:00 2001 From: "Kaleb S. KEITHLEY" Date: Fri, 22 May 2020 09:24:36 -0400 Subject: [PATCH 15/41] support .note.gnu.property note section --- 0001-Update-elf-objfmt.c.patch | 32 ++++++++++++++++++++++++++++++++ yasm.spec | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 0001-Update-elf-objfmt.c.patch diff --git a/0001-Update-elf-objfmt.c.patch b/0001-Update-elf-objfmt.c.patch new file mode 100644 index 0000000..757b318 --- /dev/null +++ b/0001-Update-elf-objfmt.c.patch @@ -0,0 +1,32 @@ +From c7d58a55ace0fe4233aac8dc335bea0745ef7dd9 Mon Sep 17 00:00:00 2001 +From: kalebskeithley +Date: Thu, 21 May 2020 09:12:36 -0400 +Subject: [PATCH] Update elf-objfmt.c + +tl;dnr: add support for note.gnu.property note sections. + +ceph has a few optimized crc32 routines hand written in assembly in yasm format. (Nobody appears to have the stomach for rewriting them in another format.) Fedora requires that libraries be CET enabled. IOW all .o comprising a shared library need a note.gnu.properties NOTE section with some magic bits that tell the linker that the .o was compiled with the appropriate options. + +I can add such a note section, but without this change yasm will not set the correct section flag and I have to resort to some dd magic to set the correct section type before linking all the .o files into the shlib. +--- + modules/objfmts/elf/elf-objfmt.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/modules/objfmts/elf/elf-objfmt.c b/modules/objfmts/elf/elf-objfmt.c +index 0c3a1426..c4360c03 100644 +--- a/modules/objfmts/elf/elf-objfmt.c ++++ b/modules/objfmts/elf/elf-objfmt.c +@@ -1077,6 +1077,10 @@ elf_objfmt_section_switch(yasm_object *object, yasm_valparamhead *valparams, + align = 0; + data.type = SHT_PROGBITS; + data.flags = 0; ++ } else if (strcmp(sectname, ".note.gnu.property") == 0) { ++ align = 8; ++ data.type = SHT_NOTE; ++ data.flags = 0; + } else { + /* Default to code */ + align = 1; +-- +2.26.2 + diff --git a/yasm.spec b/yasm.spec index e0121a1..2560462 100644 --- a/yasm.spec +++ b/yasm.spec @@ -7,6 +7,7 @@ License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 URL: http://yasm.tortall.net/ Source: http://www.tortall.net/projects/yasm/releases/yasm-%{version}.tar.gz +Patch1: 0001-Update-elf-objfmt.c.patch BuildRequires: gcc BuildRequires: bison @@ -42,6 +43,7 @@ Install this package if you need to rebuild applications that use yasm. %prep %setup -q +%patch1 -p1 %build From b26d2cccb231be7b69f18ae9e293c66184843cf5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jul 2020 15:12:52 +0000 Subject: [PATCH 16/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 2560462..fba8e43 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 11%{?dist} +Release: 12%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -74,6 +74,9 @@ make install DESTDIR=%{buildroot} %changelog +* Wed Jul 29 2020 Fedora Release Engineering - 1.3.0-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Fri Jan 31 2020 Fedora Release Engineering - 1.3.0-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 0636cbf440228d2c53b53f6c6ce38e205284e12f Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sat, 9 Jan 2021 01:45:50 +0000 Subject: [PATCH 17/41] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- yasm.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/yasm.spec b/yasm.spec index fba8e43..fae4558 100644 --- a/yasm.spec +++ b/yasm.spec @@ -9,6 +9,7 @@ URL: http://yasm.tortall.net/ Source: http://www.tortall.net/projects/yasm/releases/yasm-%{version}.tar.gz Patch1: 0001-Update-elf-objfmt.c.patch +BuildRequires: make BuildRequires: gcc BuildRequires: bison BuildRequires: byacc From 416ae322c7297a4d5072cc8ee63c2821b8de407f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 28 Jan 2021 00:31:46 +0000 Subject: [PATCH 18/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index fae4558..52787b3 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 12%{?dist} +Release: 13%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -75,6 +75,9 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Jan 28 2021 Fedora Release Engineering - 1.3.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Wed Jul 29 2020 Fedora Release Engineering - 1.3.0-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 47d1d4347c6d42ef0470329ad04ebaf886190e4f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 22:06:49 +0000 Subject: [PATCH 19/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 52787b3..6dafa4c 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 13%{?dist} +Release: 14%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -75,6 +75,9 @@ make install DESTDIR=%{buildroot} %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 1.3.0-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Thu Jan 28 2021 Fedora Release Engineering - 1.3.0-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 369b0e7d89d907e03d316612958ef09543c4b772 Mon Sep 17 00:00:00 2001 From: Martin Cermak Date: Wed, 1 Sep 2021 14:33:53 +0200 Subject: [PATCH 20/41] CI Gating: kick off setup - make check --- .fmf/version | 1 + gating.yaml | 20 +++++++++ plans/ci.fmf | 6 +++ tests/Regression/testsuite/main.fmf | 17 ++++++++ tests/Regression/testsuite/runtest.sh | 59 +++++++++++++++++++++++++++ 5 files changed, 103 insertions(+) create mode 100644 .fmf/version create mode 100644 gating.yaml create mode 100644 plans/ci.fmf create mode 100644 tests/Regression/testsuite/main.fmf create mode 100755 tests/Regression/testsuite/runtest.sh 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/gating.yaml b/gating.yaml new file mode 100644 index 0000000..84b7773 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,20 @@ +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_stable +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} + - !PassingTestCaseRule {test_case_name: baseos-qe.koji-build.scratch-build.validation} +--- !Policy +product_versions: + - rhel-8 +decision_context: osci_compose_gate +rules: + - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} +--- !Policy +product_versions: + - rhel-9 +decision_context: osci_compose_gate +rules: + - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} diff --git a/plans/ci.fmf b/plans/ci.fmf new file mode 100644 index 0000000..1ad2c12 --- /dev/null +++ b/plans/ci.fmf @@ -0,0 +1,6 @@ +summary: CI Gating Plan +discover: + how: fmf + directory: tests +execute: + how: beakerlib diff --git a/tests/Regression/testsuite/main.fmf b/tests/Regression/testsuite/main.fmf new file mode 100644 index 0000000..1f4b56c --- /dev/null +++ b/tests/Regression/testsuite/main.fmf @@ -0,0 +1,17 @@ +summary: testsuite +description: '' +contact: Martin Cermak +component: +- yasm +test: ./runtest.sh +framework: beakerlib +recommend: +- yasm +- bison +- byacc +- gettext-devel +- xmlto +- rpm-build +duration: 48h +extra-summary: /tools/yasm/Regression/testsuite +extra-task: /tools/yasm/Regression/testsuite diff --git a/tests/Regression/testsuite/runtest.sh b/tests/Regression/testsuite/runtest.sh new file mode 100755 index 0000000..4c66f1f --- /dev/null +++ b/tests/Regression/testsuite/runtest.sh @@ -0,0 +1,59 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# runtest.sh of /tools/yasm/Regression/testsuite +# Description: testsuite +# Author: Martin Cermak +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2019 Red Hat, Inc. +# +# This program is free software: you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied +# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see http://www.gnu.org/licenses/. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +# Include Beaker environment +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +PACKAGE="yasm" + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm $PACKAGE + rlRun "TMP=\$(mktemp -d)" + rlRun "pushd $TMP" + + rlFetchSrcForInstalled $PACKAGE + rlRun "dnf builddep -y *src.rpm --nobest" + rlRun "rpm --define='_topdir $TMP' -Uvh *src.rpm" + rlRun "rpmbuild --define='_topdir $TMP' -bc SPECS/yasm.spec" + rlRun "pushd BUILD/yasm-*" + rlPhaseEnd + + rlPhaseStartTest + rlRun "make check |& tee test.log" + rlRun "PASS=$(awk '/# PASS:/ {print $3}' test.log)" + rlRun "FAIL=$(awk '/# FAIL:/ {print $3}' test.log)" + rlRun "test $PASS -ge 44" + rlRun "test $FAIL -eq 0" + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd; popd" + rlRun "rm -r $TMP" + rlPhaseEnd +rlJournalPrintText +rlJournalEnd From 3cc830c6f70a06de72d59fe86a0f2444e49b0c19 Mon Sep 17 00:00:00 2001 From: Martin Cermak Date: Wed, 1 Sep 2021 14:38:00 +0200 Subject: [PATCH 21/41] CI Gating: Drop kernel rebuild test --- gating.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/gating.yaml b/gating.yaml index 84b7773..ce3cdc1 100644 --- a/gating.yaml +++ b/gating.yaml @@ -5,7 +5,6 @@ decision_context: bodhi_update_push_stable subject_type: koji_build rules: - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} - - !PassingTestCaseRule {test_case_name: baseos-qe.koji-build.scratch-build.validation} --- !Policy product_versions: - rhel-8 From 12b8ea5173f24658cf616a53349c81076d74cda5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jan 2022 05:40:16 +0000 Subject: [PATCH 22/41] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 6dafa4c..d9d9f35 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 14%{?dist} +Release: 15%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -75,6 +75,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jan 22 2022 Fedora Release Engineering - 1.3.0-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Fri Jul 23 2021 Fedora Release Engineering - 1.3.0-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 4c6b7165cd7d388536eae5cb92e5e03c63a76c93 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 13:43:11 +0000 Subject: [PATCH 23/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index d9d9f35..0de0449 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 15%{?dist} +Release: 16%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -75,6 +75,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jul 23 2022 Fedora Release Engineering - 1.3.0-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Sat Jan 22 2022 Fedora Release Engineering - 1.3.0-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 5e9294a1451259088f504a531268daf5bb0eeb86 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 21 Jan 2023 08:03:20 +0000 Subject: [PATCH 24/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 0de0449..a71da3f 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 16%{?dist} +Release: 17%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -75,6 +75,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jan 21 2023 Fedora Release Engineering - 1.3.0-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Sat Jul 23 2022 Fedora Release Engineering - 1.3.0-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 195e168fdfbda412fceb9c6e4050df34f5189d9a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jul 2023 19:28:54 +0000 Subject: [PATCH 25/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index a71da3f..03cec1b 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 17%{?dist} +Release: 18%{?dist} # See COPYING for the detail, there is quite a lot! License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 @@ -75,6 +75,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jul 22 2023 Fedora Release Engineering - 1.3.0-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Sat Jan 21 2023 Fedora Release Engineering - 1.3.0-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 3092ff7a192a6e43009286f19c6fdfb590c6db2e Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Wed, 20 Sep 2023 11:53:08 +0100 Subject: [PATCH 26/41] Spec File: Migrated to SPDX license. Resolves: #2222115 --- yasm.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/yasm.spec b/yasm.spec index 03cec1b..4968c46 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,9 +1,9 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 18%{?dist} +Release: 19%{?dist} # See COPYING for the detail, there is quite a lot! -License: BSD and (GPLv2+ or Artistic or LGPLv2+) and LGPLv2 +License: BSD-2-Clause AND BSD-3-Clause AND GPL-1.0-or-later AND GPL-2.0-or-later AND Artistic-1.0-Perl AND LGPL-2.0-or-later URL: http://yasm.tortall.net/ Source: http://www.tortall.net/projects/yasm/releases/yasm-%{version}.tar.gz @@ -75,6 +75,9 @@ make install DESTDIR=%{buildroot} %changelog +* Wed Sep 20 2023 Nick Clifton - 1.3.0-19 +- Spec File: Migrated to SPDX license. (#2222115) + * Sat Jul 22 2023 Fedora Release Engineering - 1.3.0-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 796f31fefa3dfbb21695120ff8848de29a45e4c8 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Wed, 22 Nov 2023 15:04:21 +0000 Subject: [PATCH 27/41] Combine Artistic-1.0-Perl license with GPL-2.0-or-later. --- yasm.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/yasm.spec b/yasm.spec index 4968c46..c2b35e7 100644 --- a/yasm.spec +++ b/yasm.spec @@ -3,7 +3,9 @@ Name: yasm Version: 1.3.0 Release: 19%{?dist} # See COPYING for the detail, there is quite a lot! -License: BSD-2-Clause AND BSD-3-Clause AND GPL-1.0-or-later AND GPL-2.0-or-later AND Artistic-1.0-Perl AND LGPL-2.0-or-later +# Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later +# Everything else is BSD. Either 2 or 3 clause. +License: BSD-2-Clause AND BSD-3-Clause AND (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later) URL: http://yasm.tortall.net/ Source: http://www.tortall.net/projects/yasm/releases/yasm-%{version}.tar.gz @@ -75,7 +77,7 @@ make install DESTDIR=%{buildroot} %changelog -* Wed Sep 20 2023 Nick Clifton - 1.3.0-19 +* Wed Nov 22 2023 Nick Clifton - 1.3.0-19 - Spec File: Migrated to SPDX license. (#2222115) * Sat Jul 22 2023 Fedora Release Engineering - 1.3.0-18 From ddaa3a5d779aa5187f04d5d4da64a7eebaad5022 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jan 2024 10:42:46 +0000 Subject: [PATCH 28/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index c2b35e7..07401a0 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,7 +1,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0 -Release: 19%{?dist} +Release: 20%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -77,6 +77,9 @@ make install DESTDIR=%{buildroot} %changelog +* Sat Jan 27 2024 Fedora Release Engineering - 1.3.0-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Wed Nov 22 2023 Nick Clifton - 1.3.0-19 - Spec File: Migrated to SPDX license. (#2222115) From fa3d8b5061bc24495b6c901a15190551f834db0d Mon Sep 17 00:00:00 2001 From: Dominik Mierzejewski Date: Thu, 21 Mar 2024 19:19:24 +0100 Subject: [PATCH 29/41] update to latest git snapshot - drop obsolete patch - use modern macros - run the test suite in %check --- .gitignore | 1 + 0001-Update-elf-objfmt.c.patch | 32 ------------------------- sources | 2 +- yasm-tests.patch | 8 +++++++ yasm.spec | 43 ++++++++++++++++++++++++++++------ 5 files changed, 46 insertions(+), 40 deletions(-) delete mode 100644 0001-Update-elf-objfmt.c.patch create mode 100644 yasm-tests.patch diff --git a/.gitignore b/.gitignore index 6e43b59..10c61ff 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ yasm-1.0.1.tar.gz yasm-1.1.0.tar.gz /yasm-1.2.0.tar.gz /yasm-1.3.0.tar.gz +/yasm-9defefa.tar.gz diff --git a/0001-Update-elf-objfmt.c.patch b/0001-Update-elf-objfmt.c.patch deleted file mode 100644 index 757b318..0000000 --- a/0001-Update-elf-objfmt.c.patch +++ /dev/null @@ -1,32 +0,0 @@ -From c7d58a55ace0fe4233aac8dc335bea0745ef7dd9 Mon Sep 17 00:00:00 2001 -From: kalebskeithley -Date: Thu, 21 May 2020 09:12:36 -0400 -Subject: [PATCH] Update elf-objfmt.c - -tl;dnr: add support for note.gnu.property note sections. - -ceph has a few optimized crc32 routines hand written in assembly in yasm format. (Nobody appears to have the stomach for rewriting them in another format.) Fedora requires that libraries be CET enabled. IOW all .o comprising a shared library need a note.gnu.properties NOTE section with some magic bits that tell the linker that the .o was compiled with the appropriate options. - -I can add such a note section, but without this change yasm will not set the correct section flag and I have to resort to some dd magic to set the correct section type before linking all the .o files into the shlib. ---- - modules/objfmts/elf/elf-objfmt.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/modules/objfmts/elf/elf-objfmt.c b/modules/objfmts/elf/elf-objfmt.c -index 0c3a1426..c4360c03 100644 ---- a/modules/objfmts/elf/elf-objfmt.c -+++ b/modules/objfmts/elf/elf-objfmt.c -@@ -1077,6 +1077,10 @@ elf_objfmt_section_switch(yasm_object *object, yasm_valparamhead *valparams, - align = 0; - data.type = SHT_PROGBITS; - data.flags = 0; -+ } else if (strcmp(sectname, ".note.gnu.property") == 0) { -+ align = 8; -+ data.type = SHT_NOTE; -+ data.flags = 0; - } else { - /* Default to code */ - align = 1; --- -2.26.2 - diff --git a/sources b/sources index 5611a4f..65b1964 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -fc9e586751ff789b34b1f21d572d96af yasm-1.3.0.tar.gz +SHA512 (yasm-9defefa.tar.gz) = 327de3ecaa4aa91bb418aab146fae5d82b478c33f701b7534df3e5f4d490914dd16774874cb5191192532961ed885cc4b942b232e3014306029155571016eeec diff --git a/yasm-tests.patch b/yasm-tests.patch new file mode 100644 index 0000000..4bc70d3 --- /dev/null +++ b/yasm-tests.patch @@ -0,0 +1,8 @@ +diff -up yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/modules/objfmts/macho/tests/nasm64/Makefile.inc.orig yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/modules/objfmts/macho/tests/nasm64/Makefile.inc +--- yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/modules/objfmts/macho/tests/nasm64/Makefile.inc.orig 2023-09-22 07:21:20.000000000 +0200 ++++ yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/modules/objfmts/macho/tests/nasm64/Makefile.inc 2024-03-22 12:07:58.945545848 +0100 +@@ -1,4 +1,3 @@ +-TESTS += modules/objfmts/macho/tests/nasm64/macho64_test.sh + + EXTRA_DIST += modules/objfmts/macho/tests/nasm64/nasm-macho64-pic.asm + EXTRA_DIST += modules/objfmts/macho/tests/nasm64/nasm-macho64-pic.hex diff --git a/yasm.spec b/yasm.spec index 07401a0..61c5bb6 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,15 +1,28 @@ +%global git 1 +%global commit 9defefae9fbcb6958cddbfa778c1ea8605da8b8b +%global date 20230922 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + Summary: Modular Assembler Name: yasm -Version: 1.3.0 -Release: 20%{?dist} +Version: 1.3.0^%{date}git%{shortcommit} +Release: 1%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. License: BSD-2-Clause AND BSD-3-Clause AND (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later) URL: http://yasm.tortall.net/ +%if 0%{?git} +Source: https://github.com/yasm/yasm/archive/%{commit}/%{name}-%{shortcommit}.tar.gz +# https://github.com/yasm/yasm/issues/270 +Patch0: yasm-tests.patch +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: python3 +%else Source: http://www.tortall.net/projects/yasm/releases/yasm-%{version}.tar.gz -Patch1: 0001-Update-elf-objfmt.c.patch +%endif BuildRequires: make BuildRequires: gcc @@ -45,20 +58,30 @@ Install this package if you need to rebuild applications that use yasm. %prep +%if 0%{?git} +%setup -q -n %{name}-%{commit} +%ifarch i686 +%patch 0 -p1 +%endif +autoreconf -I m4 -fiv +%else %setup -q -%patch1 -p1 +%endif %build %configure -make %{?_smp_mflags} +%make_build %install -rm -rf %{buildroot} -make install DESTDIR=%{buildroot} +%make_install +%check +# tests must be run sequentially +# https://github.com/yasm/yasm/issues/269 +make check %files %license Artistic.txt BSD.txt COPYING GNU_GPL-2.0 GNU_LGPL-2.0 @@ -77,6 +100,12 @@ make install DESTDIR=%{buildroot} %changelog +* Thu Mar 21 2024 Dominik Mierzejewski - 1.3.0^20230922git9defefa-1 +- update to latest git snapshot +- drop obsolete patch +- use modern macros +- run the test suite in %check + * Sat Jan 27 2024 Fedora Release Engineering - 1.3.0-20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 50175318b5130154818183023cf3288a0880a110 Mon Sep 17 00:00:00 2001 From: Dominik Mierzejewski Date: Sat, 23 Mar 2024 09:49:53 +0100 Subject: [PATCH 30/41] add info about fixed CVEs: CVE-2023-37732 CVE-2023-31975 CVE-2021-33454 --- yasm.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/yasm.spec b/yasm.spec index 61c5bb6..89a9dda 100644 --- a/yasm.spec +++ b/yasm.spec @@ -105,6 +105,7 @@ make check - drop obsolete patch - use modern macros - run the test suite in %check +- fixes: CVE-2023-37732 CVE-2023-31975 CVE-2021-33454 * Sat Jan 27 2024 Fedora Release Engineering - 1.3.0-20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From be12e3214dc727f1e0fadb94cfbec93f1c3f28fb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 20 Jul 2024 10:39:57 +0000 Subject: [PATCH 31/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 89a9dda..4c76532 100644 --- a/yasm.spec +++ b/yasm.spec @@ -6,7 +6,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0^%{date}git%{shortcommit} -Release: 1%{?dist} +Release: 2%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -100,6 +100,9 @@ make check %changelog +* Sat Jul 20 2024 Fedora Release Engineering - 1.3.0^20230922git9defefa-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Thu Mar 21 2024 Dominik Mierzejewski - 1.3.0^20230922git9defefa-1 - update to latest git snapshot - drop obsolete patch From 96223e6827f7ef91cca9e727e575e89ed5184a83 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 19 Jan 2025 16:31:37 +0000 Subject: [PATCH 32/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 4c76532..e8dc7c6 100644 --- a/yasm.spec +++ b/yasm.spec @@ -6,7 +6,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0^%{date}git%{shortcommit} -Release: 2%{?dist} +Release: 3%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -100,6 +100,9 @@ make check %changelog +* Sun Jan 19 2025 Fedora Release Engineering - 1.3.0^20230922git9defefa-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sat Jul 20 2024 Fedora Release Engineering - 1.3.0^20230922git9defefa-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From eb9e5654972d869e22ce84e9cbd7171ddfdd97e5 Mon Sep 17 00:00:00 2001 From: Dominik 'Rathann' Mierzejewski Date: Sat, 15 Feb 2025 22:29:11 +0100 Subject: [PATCH 33/41] fix build with GCC 15 --- yasm-gcc15.patch | 15 +++++++++++++++ yasm.spec | 4 ++++ 2 files changed, 19 insertions(+) create mode 100644 yasm-gcc15.patch diff --git a/yasm-gcc15.patch b/yasm-gcc15.patch new file mode 100644 index 0000000..bff0ac0 --- /dev/null +++ b/yasm-gcc15.patch @@ -0,0 +1,15 @@ +diff -up yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/libyasm/bitvect.h.gcc15 yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/libyasm/bitvect.h +--- yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/libyasm/bitvect.h.gcc15 2023-09-22 07:21:20.000000000 +0200 ++++ yasm-9defefae9fbcb6958cddbfa778c1ea8605da8b8b/libyasm/bitvect.h 2025-02-15 22:14:50.029332956 +0100 +@@ -83,7 +83,11 @@ typedef Z_longword *Z_longwordp + #ifdef MACOS_TRADITIONAL + #define boolean Boolean + #else ++ #if __STDC_VERSION__ < 202311L + typedef enum boolean { false = FALSE, true = TRUE } boolean; ++ #else ++ typedef bool boolean; ++ #endif + #endif + #endif + diff --git a/yasm.spec b/yasm.spec index e8dc7c6..2d68eb4 100644 --- a/yasm.spec +++ b/yasm.spec @@ -17,6 +17,8 @@ URL: http://yasm.tortall.net/ Source: https://github.com/yasm/yasm/archive/%{commit}/%{name}-%{shortcommit}.tar.gz # https://github.com/yasm/yasm/issues/270 Patch0: yasm-tests.patch +# https://github.com/yasm/yasm/issues/283 +Patch1: yasm-gcc15.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: python3 @@ -63,6 +65,7 @@ Install this package if you need to rebuild applications that use yasm. %ifarch i686 %patch 0 -p1 %endif +%patch 1 -p1 autoreconf -I m4 -fiv %else %setup -q @@ -102,6 +105,7 @@ make check %changelog * Sun Jan 19 2025 Fedora Release Engineering - 1.3.0^20230922git9defefa-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild +- fix build with GCC 15 * Sat Jul 20 2024 Fedora Release Engineering - 1.3.0^20230922git9defefa-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From d106c56ecf92921e018675f1f15f954c079bd55e Mon Sep 17 00:00:00 2001 From: Dominik 'Rathann' Mierzejewski Date: Sat, 15 Feb 2025 23:56:54 +0100 Subject: [PATCH 34/41] update to git 121ab15 --- .gitignore | 1 + sources | 2 +- yasm.spec | 9 ++++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 10c61ff..4123fef 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ yasm-1.1.0.tar.gz /yasm-1.2.0.tar.gz /yasm-1.3.0.tar.gz /yasm-9defefa.tar.gz +/yasm-121ab15.tar.gz diff --git a/sources b/sources index 65b1964..3f7a801 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (yasm-9defefa.tar.gz) = 327de3ecaa4aa91bb418aab146fae5d82b478c33f701b7534df3e5f4d490914dd16774874cb5191192532961ed885cc4b942b232e3014306029155571016eeec +SHA512 (yasm-121ab15.tar.gz) = e005153fc14b2131c828848a4026ad7f7982ac611bc0848c6cf2cb4fdeeed91efcffde9b4a6dc4e968f32afff4517620b5157b1cefe418366200bcb05e839b81 diff --git a/yasm.spec b/yasm.spec index 2d68eb4..4c12a68 100644 --- a/yasm.spec +++ b/yasm.spec @@ -1,12 +1,12 @@ %global git 1 -%global commit 9defefae9fbcb6958cddbfa778c1ea8605da8b8b -%global date 20230922 +%global commit 121ab150b3577b666c79a79f4a511798d7ad2432 +%global date 20250625 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Summary: Modular Assembler Name: yasm Version: 1.3.0^%{date}git%{shortcommit} -Release: 3%{?dist} +Release: 1%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -103,6 +103,9 @@ make check %changelog +* Sat Feb 15 2025 Dominik Mierzejewski - 1.3.0^20250625git121ab15-1 +- update to git 121ab15 + * Sun Jan 19 2025 Fedora Release Engineering - 1.3.0^20230922git9defefa-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - fix build with GCC 15 From 0715b8b7a2574e448b79556e4615fb671d0fc07d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Sun, 16 Feb 2025 14:01:57 +0100 Subject: [PATCH 35/41] fix tmt metadata --- plans/ci.fmf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/plans/ci.fmf b/plans/ci.fmf index 1ad2c12..3fd3ab7 100644 --- a/plans/ci.fmf +++ b/plans/ci.fmf @@ -1,6 +1,5 @@ summary: CI Gating Plan discover: how: fmf - directory: tests execute: - how: beakerlib + how: tmt From bdb774a7e8fd6bbe13880d61f06b739318aa2577 Mon Sep 17 00:00:00 2001 From: Cristian Le Date: Sun, 16 Feb 2025 14:59:03 +0100 Subject: [PATCH 36/41] Remove tmt tests and gating The `make check` is already running inside the spec file Signed-off-by: Cristian Le --- .fmf/version | 1 - gating.yaml | 19 --------- plans/ci.fmf | 5 --- tests/Regression/testsuite/main.fmf | 17 -------- tests/Regression/testsuite/runtest.sh | 59 --------------------------- 5 files changed, 101 deletions(-) delete mode 100644 .fmf/version delete mode 100644 gating.yaml delete mode 100644 plans/ci.fmf delete mode 100644 tests/Regression/testsuite/main.fmf delete mode 100755 tests/Regression/testsuite/runtest.sh diff --git a/.fmf/version b/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/gating.yaml b/gating.yaml deleted file mode 100644 index ce3cdc1..0000000 --- a/gating.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- !Policy -product_versions: - - fedora-* -decision_context: bodhi_update_push_stable -subject_type: koji_build -rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} ---- !Policy -product_versions: - - rhel-8 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} ---- !Policy -product_versions: - - rhel-9 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} diff --git a/plans/ci.fmf b/plans/ci.fmf deleted file mode 100644 index 3fd3ab7..0000000 --- a/plans/ci.fmf +++ /dev/null @@ -1,5 +0,0 @@ -summary: CI Gating Plan -discover: - how: fmf -execute: - how: tmt diff --git a/tests/Regression/testsuite/main.fmf b/tests/Regression/testsuite/main.fmf deleted file mode 100644 index 1f4b56c..0000000 --- a/tests/Regression/testsuite/main.fmf +++ /dev/null @@ -1,17 +0,0 @@ -summary: testsuite -description: '' -contact: Martin Cermak -component: -- yasm -test: ./runtest.sh -framework: beakerlib -recommend: -- yasm -- bison -- byacc -- gettext-devel -- xmlto -- rpm-build -duration: 48h -extra-summary: /tools/yasm/Regression/testsuite -extra-task: /tools/yasm/Regression/testsuite diff --git a/tests/Regression/testsuite/runtest.sh b/tests/Regression/testsuite/runtest.sh deleted file mode 100755 index 4c66f1f..0000000 --- a/tests/Regression/testsuite/runtest.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/yasm/Regression/testsuite -# Description: testsuite -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program is free software: you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation, either version 2 of -# the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be -# useful, but WITHOUT ANY WARRANTY; without even the implied -# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -# PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see http://www.gnu.org/licenses/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -# Include Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="yasm" - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TMP=\$(mktemp -d)" - rlRun "pushd $TMP" - - rlFetchSrcForInstalled $PACKAGE - rlRun "dnf builddep -y *src.rpm --nobest" - rlRun "rpm --define='_topdir $TMP' -Uvh *src.rpm" - rlRun "rpmbuild --define='_topdir $TMP' -bc SPECS/yasm.spec" - rlRun "pushd BUILD/yasm-*" - rlPhaseEnd - - rlPhaseStartTest - rlRun "make check |& tee test.log" - rlRun "PASS=$(awk '/# PASS:/ {print $3}' test.log)" - rlRun "FAIL=$(awk '/# FAIL:/ {print $3}' test.log)" - rlRun "test $PASS -ge 44" - rlRun "test $FAIL -eq 0" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd; popd" - rlRun "rm -r $TMP" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd From 10393557a4645cd0814577d072874ecf927bef4f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 21:11:11 +0000 Subject: [PATCH 37/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 4c12a68..0cf8e68 100644 --- a/yasm.spec +++ b/yasm.spec @@ -6,7 +6,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0^%{date}git%{shortcommit} -Release: 1%{?dist} +Release: 2%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -103,6 +103,9 @@ make check %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 1.3.0^20250625git121ab15-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sat Feb 15 2025 Dominik Mierzejewski - 1.3.0^20250625git121ab15-1 - update to git 121ab15 From d98338a829e0a345c16de8e96efc792030b4e7a7 Mon Sep 17 00:00:00 2001 From: Dominik 'Rathann' Mierzejewski Date: Thu, 7 Aug 2025 13:04:38 +0200 Subject: [PATCH 38/41] mark as deprecated See https://fedoraproject.org/wiki/Changes/DeprecateYASM . --- yasm.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 0cf8e68..d118757 100644 --- a/yasm.spec +++ b/yasm.spec @@ -6,7 +6,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0^%{date}git%{shortcommit} -Release: 2%{?dist} +Release: 3%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -33,6 +33,7 @@ BuildRequires: byacc BuildRequires: gettext-devel BuildRequires: xmlto Provides: bundled(md5-plumb) +Provides: deprecated() %description Yasm is a complete rewrite of the NASM assembler under the "new" BSD License @@ -103,6 +104,9 @@ make check %changelog +* Thu Aug 07 2025 Dominik Mierzejewski - 1.3.0^20250625git121ab15-3 +- mark as deprecated, see https://fedoraproject.org/wiki/Changes/DeprecateYASM + * Fri Jul 25 2025 Fedora Release Engineering - 1.3.0^20250625git121ab15-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From f82403071fed758cd4c98cabe4874697ff6dbe05 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 17 Jan 2026 21:01:04 +0000 Subject: [PATCH 39/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index d118757..a7b884f 100644 --- a/yasm.spec +++ b/yasm.spec @@ -6,7 +6,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0^%{date}git%{shortcommit} -Release: 3%{?dist} +Release: 4%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -104,6 +104,9 @@ make check %changelog +* Sat Jan 17 2026 Fedora Release Engineering - 1.3.0^20250625git121ab15-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + * Thu Aug 07 2025 Dominik Mierzejewski - 1.3.0^20250625git121ab15-3 - mark as deprecated, see https://fedoraproject.org/wiki/Changes/DeprecateYASM From c40a92166ab620cd539f5f8e95bd7644567979be Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jul 2026 09:33:29 +0000 Subject: [PATCH 40/41] Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild --- yasm.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index a7b884f..4f606c3 100644 --- a/yasm.spec +++ b/yasm.spec @@ -6,7 +6,7 @@ Summary: Modular Assembler Name: yasm Version: 1.3.0^%{date}git%{shortcommit} -Release: 4%{?dist} +Release: 5%{?dist} # See COPYING for the detail, there is quite a lot! # Bitvect is (GPL-1.0-or-later AND GPL-2.0-or-later OR Artistic-1.0-Perl OR LGPL-2.0-or-later # Everything else is BSD. Either 2 or 3 clause. @@ -104,6 +104,9 @@ make check %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 1.3.0^20250625git121ab15-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + * Sat Jan 17 2026 Fedora Release Engineering - 1.3.0^20250625git121ab15-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild From 6436ea0d411936b71257c663949115539078433f Mon Sep 17 00:00:00 2001 From: Michal Schorm Date: Tue, 21 Jul 2026 07:07:01 +0200 Subject: [PATCH 41/41] Remove stale 'xmlto' BuildRequires Man pages are pre-built in the upstream tarball. This is a deprecated package with no active upstream development; the pre-built fallback has always been used. Related: rhbz#2503124 Co-Authored-By: Claude AI --- yasm.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/yasm.spec b/yasm.spec index 4f606c3..d5c9461 100644 --- a/yasm.spec +++ b/yasm.spec @@ -31,7 +31,6 @@ BuildRequires: gcc BuildRequires: bison BuildRequires: byacc BuildRequires: gettext-devel -BuildRequires: xmlto Provides: bundled(md5-plumb) Provides: deprecated()