libatomic_ops-vl.spec 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. %define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
  2. Name: libatomic_ops
  3. Summary: Atomic memory update operations
  4. Version: 7.4.4
  5. Release: 4%{?_dist_release}
  6. # libatomic_ops MIT, libatomic_ops_gpl GPLv2
  7. License: GPLv2 and MIT
  8. URL: http://www.hboehm.info/gc/
  9. Vendor: Project Vine
  10. Distribution: Vine Linux
  11. Source0: http://www.hboehm.info/gc/gc_source/libatomic_ops-%{version}.tar.gz
  12. # updated GPLv2 license text
  13. Source1: http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
  14. ## upstream patches
  15. # 7.4 branch
  16. # master branch
  17. #Patch116: 0016-Use-LLD-and-SCD-instructions-on-mips64.patch
  18. ## rebased for 7.4.4
  19. Patch116: libatomic_ops-7.4.4-Use-LLD-and-SCD-instructions-on-mips64.patch
  20. ## upstreamable patches
  21. # https://bugzilla.redhat.com/show_bug.cgi?id=1096574
  22. Patch500: gc_ppc64le_force_AO_load.patch
  23. # re-autofoo for patch2 (and others)
  24. BuildRequires: automake libtool
  25. %description
  26. Provides implementations for atomic memory update operations on a
  27. number of architectures. This allows direct use of these in reasonably
  28. portable code. Unlike earlier similar packages, this one explicitly
  29. considers memory barrier semantics, and allows the construction of code
  30. that involves minimum overhead across a variety of architectures.
  31. %package devel
  32. Summary: Development files for %{name}
  33. Requires: %{name}%{?_isa} = %{version}-%{release}
  34. %description devel
  35. Files for developing with %{name}.
  36. %package static
  37. Summary: Static library files for %{name}
  38. Requires: %{name}-devel%{?_isa} = %{version}-%{release}
  39. %description static
  40. Files for developing with %{name} and linking statically.
  41. %package -n compat32-%{name}
  42. Summary: Atomic memory update operations
  43. Group: System Environment/Libraries
  44. Requires: %{name} = %{version}-%{release}
  45. %description -n compat32-%{name}
  46. Provides implementations for atomic memory update operations on a
  47. number of architectures. This allows direct use of these in reasonably
  48. portable code. Unlike earlier similar packages, this one explicitly
  49. considers memory barrier semantics, and allows the construction of code
  50. that involves minimum overhead across a variety of architectures.
  51. %package -n compat32-%{name}-devel
  52. Summary: Development files for %{name}
  53. Group: Development/Libraries
  54. Requires: compat32-%{name} = %{version}-%{release}
  55. Requires: %{name}-devel = %{version}-%{release}
  56. %description -n compat32-%{name}-devel
  57. Files for developing with %{name}.
  58. %prep
  59. %autosetup -p1
  60. # patch50 introduces rpath (probably due to older libtool), refresh stuff here
  61. autoreconf -fi
  62. install -m644 -p %{SOURCE1} ./COPYING
  63. %build
  64. %configure \
  65. --enable-shared \
  66. --disable-silent-rules
  67. make %{?_smp_mflags}
  68. %install
  69. make install DESTDIR=%{buildroot}
  70. ## unpackaged files
  71. rm -fv %{buildroot}%{_libdir}/lib*.la
  72. # omit dup'd docs
  73. rm -fv %{buildroot}%{_datadir}/libatomic_ops/{COPYING,README*,*.txt}
  74. %check
  75. ## ignore failures on powerpc, atomic stack feature not working (#883748)
  76. #ifarch ppc ppc64 ppc64le aarch64
  77. #global arch_ignore ||:
  78. #endif
  79. make check %{?arch_ignore}
  80. %post -p /sbin/ldconfig
  81. %postun -p /sbin/ldconfig
  82. %files
  83. %license COPYING
  84. %doc doc/LICENSING.txt
  85. %doc AUTHORS ChangeLog README.md
  86. %{_libdir}/libatomic_ops.so.1*
  87. %{_libdir}/libatomic_ops_gpl.so.1*
  88. %files devel
  89. %doc doc/README*
  90. %{_includedir}/atomic_ops.h
  91. %{_includedir}/atomic_ops_malloc.h
  92. %{_includedir}/atomic_ops_stack.h
  93. %{_includedir}/atomic_ops/
  94. %{_libdir}/libatomic_ops.so
  95. %{_libdir}/libatomic_ops_gpl.so
  96. %{_libdir}/pkgconfig/atomic_ops.pc
  97. %files static
  98. %{_libdir}/libatomic_ops.a
  99. %{_libdir}/libatomic_ops_gpl.a
  100. %if %{build_compat32}
  101. %files -n compat32-%{name}
  102. %defattr(-,root,root)
  103. %{_libdir}/libatomic_ops.so.1*
  104. %{_libdir}/libatomic_ops_gpl.so.1*
  105. %files -n compat32-%{name}-devel
  106. %defattr(-,root,root)
  107. %{_libdir}/libatomic_ops.so
  108. %{_libdir}/libatomic_ops_gpl.so
  109. %{_libdir}/pkgconfig/atomic_ops.pc
  110. %endif
  111. %changelog
  112. * Sat Jul 2 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 7.4.4-4
  113. - added compat32 pachages.
  114. * Sat Jul 2 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 7.4.4-3
  115. - fixed %%changelog.
  116. * Fri Jul 1 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 7.4.4-2
  117. - imported all atuff from rawhide.
  118. * Fri Jun 17 2016 Rex Dieter <rdieter@fedoraproject.org> - 7.4.4-1
  119. - libatomic_ops-7.4.4 (#1346524)
  120. * Mon Mar 28 2016 Rex Dieter <rdieter@fedoraproject.org> 7.4.2-9
  121. - make check fails on test_stack for ppc64le arch (#1096574), drop reference to 0032.patch
  122. * Mon Mar 28 2016 Rex Dieter <rdieter@fedoraproject.org> - 7.4.2-8
  123. - pull in upstream (7.4 branch) fixes
  124. - Add support for 64-bit MIPS (#1317509)
  125. - use %%license
  126. * Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 7.4.2-7
  127. - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
  128. * Tue Jul 7 2015 Peter Robinson <pbrobinson@fedoraproject.org> 7.4.2-6
  129. - Don't fail check on aarch64
  130. * Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.4.2-5
  131. - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
  132. * Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.4.2-4
  133. - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
  134. * Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.4.2-3
  135. - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
  136. * Tue May 13 2014 Rex Dieter <rdieter@fedoraproject.org> 7.4.2-2
  137. - link libatomic_ops_gpl against libatomic_ops for missing symbol(s)
  138. * Tue May 13 2014 Rex Dieter <rdieter@fedoraproject.org> 7.4.2-1
  139. - libatomic_opts-7.4.2
  140. - new upstream/source URLs
  141. - %%check: skip ppc64le too
  142. - License: MIT and GPLv2
  143. - update/longer %%description
  144. - updated GPLv2 license text (with correct address)
  145. * Wed Dec 04 2013 Rex Dieter <rdieter@fedoraproject.org> 7.4.0-1
  146. - separate libatomic_ops lives again!
  147. * Fri Jul 24 2009 Rex Dieter <rdieter@fedoraproject.org> - 1.2-8.gc
  148. - use gc tarball, tag gc release
  149. * Thu Jul 23 2009 Rex Dieter <rdieter@fedoraproject.org> - 1.2-7
  150. - devel: Provides: %%name-static ...
  151. - consolidate %%doc's
  152. - %%files: track libs
  153. * Wed May 20 2009 Dan Horak <dan[t]danny.cz> - 1.2-6
  154. - added fix for s390
  155. * Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2-5
  156. - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
  157. * Thu May 22 2008 Jon Stanley <jonstanley@gmail.com> - 1.2-4
  158. - Fix license tag
  159. * Thu Jul 10 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 1.2-1
  160. - initial build for Vine Linux
  161. * Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.2-3
  162. - Autorebuild for GCC 4.3
  163. * Tue May 29 2007 Pierre Ossman <drzeus@drzeus.cx> 1.2-2
  164. - Added fix for PPC AO_load_acquire.
  165. * Fri Nov 10 2006 Pierre Ossman <drzeus@drzeus.cx> 1.2-1
  166. - Update to 1.2.
  167. * Sat Sep 9 2006 Pierre Ossman <drzeus@drzeus.cx> 1.1-2
  168. - Fix naming of package.
  169. - General cleanup of spec file.
  170. * Wed Aug 30 2006 Pierre Ossman <drzeus@drzeus.cx> 1.1-1
  171. - Initial package for Fedora Extras.