From 250852503cfadb2fda0710ff5745a704bf7e888c Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 26 May 2022 12:31:10 -0400 Subject: [PATCH] Auto sync2gitlab import of orc-0.4.28-3.el8.src.rpm --- .gitignore | 1 + ...add-endbr32-and-endbr64-instructions.patch | 66 ++++ EMPTY | 1 - orc.spec | 291 ++++++++++++++++++ sources | 1 + 5 files changed, 359 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 0001-x86-add-endbr32-and-endbr64-instructions.patch delete mode 100644 EMPTY create mode 100644 orc.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..edbdd4b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/orc-0.4.28.tar.xz diff --git a/0001-x86-add-endbr32-and-endbr64-instructions.patch b/0001-x86-add-endbr32-and-endbr64-instructions.patch new file mode 100644 index 0000000..400afa9 --- /dev/null +++ b/0001-x86-add-endbr32-and-endbr64-instructions.patch @@ -0,0 +1,66 @@ +From eac51dc1b6eb89e00ed2294e39949ad056287d1e Mon Sep 17 00:00:00 2001 +From: Wim Taymans +Date: Fri, 19 Jul 2019 16:18:04 +0200 +Subject: [PATCH] x86: add endbr32 and endbr64 instructions + +Issue endbr instructions at the start of generated functions to +make IBT (indirect branch tracking) work. + +Resolves #17 +--- + orc/orcx86.c | 4 ++++ + orc/orcx86insn.c | 2 ++ + orc/orcx86insn.h | 2 ++ + 3 files changed, 8 insertions(+) + +diff --git a/orc/orcx86.c b/orc/orcx86.c +index 02e6b34..d4cc086 100644 +--- a/orc/orcx86.c ++++ b/orc/orcx86.c +@@ -452,6 +452,9 @@ orc_x86_emit_prologue (OrcCompiler *compiler) + orc_compiler_append_code(compiler,"%s:\n", compiler->program->name); + if (compiler->is_64bit) { + int i; ++ ++ orc_x86_emit_cpuinsn_none (compiler, ORC_X86_endbr64); ++ + for(i=0;i<16;i++){ + if (compiler->used_regs[ORC_GP_REG_BASE+i] && + compiler->save_regs[ORC_GP_REG_BASE+i]) { +@@ -459,6 +462,7 @@ orc_x86_emit_prologue (OrcCompiler *compiler) + } + } + } else { ++ orc_x86_emit_cpuinsn_none (compiler, ORC_X86_endbr32); + orc_x86_emit_push (compiler, 4, X86_EBP); + if (compiler->use_frame_pointer) { + orc_x86_emit_mov_reg_reg (compiler, 4, X86_ESP, X86_EBP); +diff --git a/orc/orcx86insn.c b/orc/orcx86insn.c +index 9d93197..a9bdd9f 100644 +--- a/orc/orcx86insn.c ++++ b/orc/orcx86insn.c +@@ -254,6 +254,8 @@ static const OrcSysOpcode orc_x86_opcodes[] = { + { "pshufw", ORC_X86_INSN_TYPE_IMM8_MMXM_MMX, 0, 0x00, 0x0f70 }, + { "movq", ORC_X86_INSN_TYPE_MMXM_MMX, 0, 0x00, 0x0f6f }, + { "movq", ORC_X86_INSN_TYPE_MMXM_MMX_REV, 0, 0x00, 0x0f7f }, ++ { "endbr32", ORC_X86_INSN_TYPE_NONE, 0, 0xf3, 0x0f1efb }, ++ { "endbr64", ORC_X86_INSN_TYPE_NONE, 0, 0xf3, 0x0f1efa }, + }; + + static void +diff --git a/orc/orcx86insn.h b/orc/orcx86insn.h +index d109c95..864e5d6 100644 +--- a/orc/orcx86insn.h ++++ b/orc/orcx86insn.h +@@ -277,6 +277,8 @@ typedef enum { + ORC_X86_pshufw, + ORC_X86_movq_mmx_load, + ORC_X86_movq_mmx_store, ++ ORC_X86_endbr32, ++ ORC_X86_endbr64, + } OrcX86Opcode; + + enum { +-- +2.21.0 + diff --git a/EMPTY b/EMPTY deleted file mode 100644 index 0519ecb..0000000 --- a/EMPTY +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/orc.spec b/orc.spec new file mode 100644 index 0000000..bc7c6a6 --- /dev/null +++ b/orc.spec @@ -0,0 +1,291 @@ +Name: orc +Version: 0.4.28 +Release: 3%{?dist} +Summary: The Oil Run-time Compiler + +Group: System Environment/Libraries +License: BSD +URL: http://cgit.freedesktop.org/gstreamer/orc/ +Source0: http://gstreamer.freedesktop.org/src/orc/%{name}-%{version}.tar.xz + +# upstream patches +Patch0: 0001-x86-add-endbr32-and-endbr64-instructions.patch + +BuildRequires: gtk-doc, libtool + +%description +Orc is a library and set of tools for compiling and executing +very simple programs that operate on arrays of data. The "language" +is a generic assembly language that represents many of the features +available in SIMD architectures, including saturated addition and +subtraction, and many arithmetic operations. + +%package doc +Summary: Documentation for Orc +Group: Development/Languages +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + +%description doc +Documentation for Orc. + +%package devel +Summary: Development files and libraries for Orc +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: %{name}-compiler +Requires: pkgconfig + +%description devel +This package contains the files needed to build packages that depend +on orc. + +%package compiler +Summary: Orc compiler +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: pkgconfig + +%description compiler +The Orc compiler, to produce optimized code. + + +%prep +%setup -q +%patch0 -p1 +gtkdocize --copy +NOCONFIGURE=1 autoreconf -vif + + +%build +%configure --disable-static --enable-gtk-doc --enable-user-codemem --disable-gtk-doc-html + +make %{?_smp_mflags} V=1 + + +%install +make install DESTDIR=%{buildroot} INSTALL="install -p" + +# Remove unneeded files. +find %{buildroot}/%{_libdir} -name \*.a -or -name \*.la -delete +rm -rf %{buildroot}/%{_libdir}/orc + +touch -r stamp-h1 %{buildroot}%{_includedir}/%{name}-0.4/orc/orc-stdint.h + + +%check +%ifnarch s390 s390x ppc %{power64} %{arm} i686 aarch64 +make check +%endif + + +%post -p /sbin/ldconfig + + +%postun -p /sbin/ldconfig + + +%files +%doc COPYING README +%{_libdir}/liborc-*.so.* +%{_bindir}/orc-bugreport + +%files doc +%doc %{_datadir}/gtk-doc/html/orc/ + +%files devel +%doc examples/*.c +%{_includedir}/%{name}-0.4/ +%{_libdir}/liborc-*.so +%{_libdir}/pkgconfig/orc-0.4.pc +%{_datadir}/aclocal/orc.m4 + +%files compiler +%{_bindir}/orcc + + +%changelog +* Thu Sep 12 2019 Wim Taymans 0.4.28-3 +- x86: add endbr32 and endbr64 instructions +- Resolves: rhbz#1693292 + +* Thu Feb 08 2018 Fedora Release Engineering - 0.4.28-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Dec 11 2017 Wim Taymans 0.4.28-1 +- Update to 0.4.28 +- Disable regeneration of docs + +* Thu Aug 03 2017 Fedora Release Engineering - 0.4.27-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 0.4.27-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue Jul 18 2017 Wim Taymans 0.4.27-1 +- Update to 0.4.27 + +* Sat Feb 11 2017 Fedora Release Engineering - 0.4.26-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Aug 31 2016 Wim Taymans 0.4.26-1 +- Update to 0.4.26 + +* Mon Mar 07 2016 Wim Taymans 0.4.25-1 +- Update to 0.4.25 + +* Thu Feb 04 2016 Fedora Release Engineering - 0.4.24-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Thu Jun 25 2015 Wim Taymans 0.4.24-1 +- Update to 0.4.24 + +* Thu Jun 18 2015 Fedora Release Engineering - 0.4.23-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Tue May 5 2015 Wim Taymans 0.4.23-1 +- Update to 0.4.23 + +* Sat Feb 21 2015 Till Maas - 0.4.22-4 +- Rebuilt for Fedora 23 Change + https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code + +* Thu Sep 11 2014 Yaakov Selkowitz - 0.4.22-3 +- Do not run tests on aarch64 + +* Thu Sep 4 2014 Peter Robinson 0.4.22-2 +- Add upstream patch for selinux issue with tmp files + +* Fri Aug 29 2014 Peter Robinson 0.4.22-1 +- Update to 0.4.22 + +* Sun Aug 17 2014 Fedora Release Engineering - 0.4.18-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 0.4.18-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Sep 19 2013 Brian Pepple - 0.4.18-1 +- Update to 0.4.18. + +* Sat Aug 03 2013 Fedora Release Engineering - 0.4.17-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Feb 20 2013 Fabian Deutsch - 0.4.17-2 +- Fix typo rhbz#817944 + +* Wed Feb 20 2013 Fabian Deutsch - 0.4.17-1 +- Update to latest upstream release +- Removed obsolete patches + +* Thu Feb 14 2013 Fedora Release Engineering - 0.4.16-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sat Jan 19 2013 Daniel Drake - 0.4.16-7 +- Fix fallback path when register allocation fails +- Fixes gstreamer-1.0 crash on OLPC XO-1.75 + +* Fri Jul 27 2012 Fedora Release Engineering - 0.4.16-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sat Jan 07 2012 Fabian Deutsch - 0.4.16-5 +- Updated subdir patch. + +* Wed Oct 26 2011 Fedora Release Engineering - 0.4.16-4 +- Rebuilt for glibc bug#747377 + +* Sun Oct 16 2011 Fabian Deutsch - 0.4.16-3 +- Add Fedora specific patch for tempfiles in subdirs + +* Sun Oct 16 2011 Daniel Drake - 0.4.16-2 +- Add upstream patches to fix gstreamer crash on Geode (#746185) + +* Mon Oct 03 2011 Fabian Deutsch - 0.4.16-1 +- Update to 0.4.16 +- Fixing regression introdcued by 0.4.15 (#742534 and #734911) + +* Mon Sep 26 2011 Fabian Deutsch - 0.4.15-1 +- Update to 0.4.15 + +* Mon Jun 20 2011 Peter Robinson - 0.4.14-3 +- Add ARM platforms to the make check exclusion + +* Sat May 07 2011 Fabian Deutsch - 0.4.14-2 +- Add orc-bugreport to the main package (#702727) + +* Sat Apr 30 2011 Fabian Deutsch - 0.4.14-1 +- Update to 0.4.14 + +* Tue Apr 19 2011 Fabian Deutsch - 0.4.13-1 +- Update to 0.4.13, another bug fixing release + +* Fri Apr 15 2011 Fabian Deutsch - 0.4.12-1 +- Update to 0.4.12, a bug fixing release + +* Wed Feb 23 2011 Karsten Hopp 0.4.11-3 +- don't run tests on ppc, ppc64 + +* Tue Feb 08 2011 Fedora Release Engineering - 0.4.11-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sun Oct 24 2010 Fabian Deutsch - 0.4.11-1 +- Update to 0.4.11. +- More bug fixes for CPUs that do not have backends, mmx and sse. + +* Fri Oct 08 2010 Fabian Deutsch - 0.4.10-1 +- Update to 0.4.10. +- Fixes some bugs related to SELinux. + +* Mon Sep 06 2010 Fabian Deutsch - 0.4.9-1 +- Update to 0.4.9, a pimarily bug fixing release. + +* Thu Aug 19 2010 Fabian Deutsch - 0.4.7-1 +- Updated to 0.4.7. + +* Tue Jul 22 2010 Fabian Deutsch - 0.4.6-1 +- Updated to 0.4.6. +- New orc-bugreport added. + +* Tue Jul 13 2010 Dan HorĂ¡k - 0.4.5-3 +- don't run test on s390(x) + +* Sun Jun 13 2010 Fabian Deutsch - 0.4.5-2 +- Added removed testing libraries to package. + +* Sun Jun 13 2010 Fabian Deutsch - 0.4.5-1 +- Updated to 0.4.5. +- Removed testing libraries from package. + +* Mon Apr 05 2010 Fabian Deutsch - 0.4.4-2 +- Docs as noarch. +- Sanitize timestamps of header files. +- orcc in -compiler subpackage. + +* Tue Mar 30 2010 Fabian Deutsch - 0.4.4-1 +- Updated to 0.4.4: Includes bugfixes for x86_64. + +* Wed Mar 17 2010 Fabian Deutsch - 0.4.3-2 +- Running autoreconf to prevent building problems. +- Added missing files to docs. +- Added examples to devel docs. + +* Thu Mar 04 2010 Fabian Deutsch - 0.4.3-1 +- Updated to 0.4.3 + +* Sun Oct 18 2009 Fabian Deutsch - 0.4.2-4 +- Removed unused libdir + +* Sun Oct 18 2009 Fabian Deutsch - 0.4.2-3 +- Specfile cleanup +- Removed tools subpackage +- Added docs subpackage + +* Sat Oct 03 2009 Fabian Deutsch - 0.4.2-2 +- Use orc as pakage name +- spec-file cleanup +- Added devel requirements +- Removed an rpath issue + +* Fri Oct 02 2009 Fabian Deutsch - 0.4.2-1 +- Initial release + diff --git a/sources b/sources new file mode 100644 index 0000000..5e232e5 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (orc-0.4.28.tar.xz) = 2ae3100e7d0c03eba9a8a10a8924da4d729e1967b63e5dfdf88c4aee907d7ece82c782d74f4cb7e28a366dd74ce5e1ddc6e2b971e5a2f879b0501cc313b93410