source: projects/specs/trunk/g/gmp/gmp-vl.spec @ 12522

Revision 12522, 13.8 KB checked in by tomop, 3 years ago (diff)

updated 16 packages

SDL2-2.0.14-1

gmp-6.2.1-1

gnupg2-2.2.27-1

gnutls-3.7.0-1

golang-1.15.7-1

iputils-20210202-1

libassuan-2.5.4-1

libgcrypt-1.9.1-1

libgpg-error-1.41-1

libksba-1.5.0-1

libusb1-1.0.24-1

nettle-3.7-1

npth-1.6-2

pcsc-lite-1.9.0-1

python3-3.8.7-1

tcpdump-4.9.3-2

Line 
1#
2# Important for %{ix86}:
3# This rpm has to be build on a CPU with sse2 support like Pentium 4 !
4#
5%ifarch %{ix86}
6%define              SSE2       1
7%else
8%define              SSE2       0
9%endif
10
11# Don't you want to build a libraries using SSE2?
12%{?_without_sse2%define SSE2    0}
13
14%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
15
16%global __provides_exclude_from ^%{_libdir}/pkgconfig/.*$
17
18Summary: A GNU arbitrary precision library.
19Summary(ja): GNU 多倍長演算ライブラリ
20Name: gmp
21Version: 6.2.1
22Release: 1%{?_dist_release}
23Group: system
24Vendor: Project Vine
25Distribution: Vine Linux
26Packager: inagaki, kenta
27
28License: LGPLv3+ or GPL2+
29URL: https://gmplib.org/
30Source: https://gmplib.org/download/gmp/gmp-%{version}.tar.xz
31Source2: gmp.h
32Source3: gmp-mparam.h
33Patch2: gmp-6.0.0-debuginfo.patch
34BuildRoot: %{_tmppath}/%{name}-%{version}-root
35BuildRequires: autoconf libtool
36Obsoletes: gmp4
37
38%description
39The gmp package contains GNU MP, a library for arbitrary precision
40arithmetic, signed integers operations, rational numbers and floating
41point numbers. GNU MP is designed for speed, for both small and very
42large operands. GNU MP is fast because it uses fullwords as the basic
43arithmetic type, it uses fast algorithms, it carefully optimizes
44assembly code for many CPUs' most common inner loops, and it generally
45emphasizes speed over simplicity/elegance in its operations.
46
47Install the gmp package if you need a fast arbitrary precision
48library.
49
50
51%package devel
52Summary: Development tools for the GNU MP arbitrary precision library.
53Group: programming
54Requires: %{name} = %{version}-%{release}
55Requires(post): /sbin/install-info
56Requires(preun): /sbin/install-info
57Provides: pkgconfig(gmp) = %{version}
58Provides: pkgconfig(gmpxx) = %{version}
59#Obsoletes: gmp4-devel
60
61%description devel
62The libraries, header files and documentation for using the GNU MP
63arbitrary precision library in applications.
64
65If you want to develop applications which will use the GNU MP library,
66you'll need to install the gmp-devel package.  You'll also need to
67install the gmp package.
68
69
70%package static
71Summary: Development tools for the GNU MP arbitrary precision library
72Group: programming
73Requires: %{name}-devel = %{version}-%{release}
74
75%description static
76The static libraries for using the GNU MP arbitrary precision library
77in applications.
78
79
80%package -n compat32-%{name}
81Summary: A GNU arbitrary precision library.
82Group: system
83Requires: %{name} = %{version}-%{release}
84
85%description -n compat32-%{name}
86The gmp package contains GNU MP, a library for arbitrary precision
87arithmetic, signed integers operations, rational numbers and floating
88point numbers. GNU MP is designed for speed, for both small and very
89large operands. GNU MP is fast because it uses fullwords as the basic
90arithmetic type, it uses fast algorithms, it carefully optimizes
91assembly code for many CPUs' most common inner loops, and it generally
92emphasizes speed over simplicity/elegance in its operations.
93
94Install the gmp package if you need a fast arbitrary precision
95library.
96
97
98%package -n compat32-%{name}-devel
99Summary: Development tools for the GNU MP arbitrary precision library.
100Group: programming
101Requires: compat32-%{name} = %{version}-%{release}
102Requires: %{name}-devel = %{version}-%{release}
103Provides: pkgconfig(gmp) = %{version}
104Provides: pkgconfig(gmpxx) = %{version}
105
106%description -n compat32-%{name}-devel
107The libraries, header files and documentation for using the GNU MP
108arbitrary precision library in applications.
109
110If you want to develop applications which will use the GNU MP library,
111you'll need to install the gmp-devel package.  You'll also need to
112install the gmp package.
113
114
115%package -n compat32-%{name}-static
116Summary: Development tools for the GNU MP arbitrary precision library
117Group: programming
118Requires: compat32-%{name}-devel = %{version}-%{release}
119
120%description -n compat32-%{name}-static
121The static libraries for using the GNU MP arbitrary precision library
122in applications.
123
124
125%debug_package
126
127
128%prep
129%setup -q
130%patch2 -p1 -b .debuginfo
131
132
133%build
134autoreconf -if
135if as --help | grep -q execstack; then
136  # the object files do not require an executable stack
137  export CCAS="gcc -c -Wa,--noexecstack"
138fi
139mkdir base
140cd base
141ln -s ../configure .
142#%configure --enable-mpbsd --enable-cxx
143%configure --enable-cxx
144perl -pi -e 's|hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=\"-L\\\$libdir\"|g;' libtool
145export LD_LIBRARY_PATH=`pwd`/.libs
146make CFLAGS="$RPM_OPT_FLAGS" %{?_smp_mflags}
147cd ..
148
149%if %{SSE2}
150%define _host pentium4-vine-linux
151mkdir build-sse2
152cd build-sse2
153ln -s ../configure .
154CFLAGS="%{optflags} -march=pentium4"
155#%configure --enable-mpbsd --enable-cxx
156%configure --enable-cxx
157
158perl -pi -e 's|hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=\"-L\\\$libdir\"|g;' libtool
159export LD_LIBRARY_PATH=`pwd`/.libs
160make %{?_smp_mflags}
161unset CFLAGS
162cd ..
163%endif
164
165
166%install
167[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
168cd base
169export LD_LIBRARY_PATH=`pwd`/.libs
170make install DESTDIR=$RPM_BUILD_ROOT
171install -m 644 gmp-mparam.h ${RPM_BUILD_ROOT}%{_includedir}
172
173rm -f $RPM_BUILD_ROOT%{_libdir}/lib{gmp,mp,gmpxx}.la
174rm -f $RPM_BUILD_ROOT%{_infodir}/dir
175/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}
176ln -sf libgmpxx.so.4 $RPM_BUILD_ROOT%{_libdir}/libgmpxx.so
177cd ..
178
179%if %{SSE2}
180cd build-sse2
181export LD_LIBRARY_PATH=`pwd`/.libs
182mkdir $RPM_BUILD_ROOT%{_libdir}/sse2
183install -m 755 .libs/libgmp.so.*.* $RPM_BUILD_ROOT%{_libdir}/sse2
184cp -a .libs/libgmp.so.[^.]* $RPM_BUILD_ROOT%{_libdir}/sse2
185chmod 755 $RPM_BUILD_ROOT%{_libdir}/sse2/libgmp.so.[^.]*
186install -m 755 .libs/libgmpxx.so.*.* $RPM_BUILD_ROOT%{_libdir}/sse2
187cp -a .libs/libgmpxx.so.? $RPM_BUILD_ROOT%{_libdir}/sse2
188chmod 755 $RPM_BUILD_ROOT%{_libdir}/sse2/libgmpxx.so.?
189cd ..
190%endif
191
192# Rename gmp.h to gmp-<arch>.h and gmp-mparam.h to gmp-mparam-<arch>.h to
193# avoid file conflicts on multilib systems and install wrapper include files
194# gmp.h and gmp-mparam-<arch>.h
195basearch=%{_arch}
196# always use i386 for iX86
197%ifarch %{ix86}
198basearch=i386
199%endif
200# always use arm for arm*
201%ifarch %{arm}
202basearch=arm
203%endif
204# Rename files and install wrappers
205
206mv %{buildroot}/%{_includedir}/gmp.h %{buildroot}/%{_includedir}/gmp-${basearch}.h
207install -m644 %{SOURCE2} %{buildroot}/%{_includedir}/gmp.h
208mv %{buildroot}/%{_includedir}/gmp-mparam.h %{buildroot}/%{_includedir}/gmp-mparam-${basearch}.h
209install -m644 %{SOURCE3} %{buildroot}/%{_includedir}/gmp-mparam.h
210
211
212%check
213%ifnarch ppc
214cd base
215export LD_LIBRARY_PATH=`pwd`/.libs
216make %{?_smp_mflags} check
217cd ..
218%endif
219
220%if %{SSE2}
221cd build-sse2
222export LD_LIBRARY_PATH=`pwd`/.libs
223make %{?_smp_mflags} check
224cd ..
225%endif
226
227
228%clean
229[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
230
231
232%post -p /sbin/ldconfig
233%postun -p /sbin/ldconfig
234
235%post devel
236/sbin/install-info %{_infodir}/gmp.info.gz %{_infodir}/dir
237
238%preun devel
239if [ "$1" = 0 ]; then
240        /sbin/install-info --delete %{_infodir}/gmp.info.gz %{_infodir}/dir
241fi
242
243%post -n compat32-%{name} -p /sbin/ldconfig
244%postun -n compat32-%{name} -p /sbin/ldconfig
245
246
247%files
248%defattr(-,root,root,-)
249%license COPYING COPYING.LIB
250%doc NEWS README
251%{_libdir}/libgmp.so.*
252%{_libdir}/libgmpxx.so.*
253%if %{SSE2}
254%{_libdir}/sse2/*
255%endif
256
257%files devel
258%defattr(-,root,root,-)
259%{_libdir}/libgmp.so
260%{_libdir}/libgmpxx.so
261#{_libdir}/libmpfr.a
262%{_includedir}/*.h
263%{_infodir}/gmp.info*
264#{_infodir}/mpfr.info*
265%{_libdir}/pkgconfig/*.pc
266
267%files static
268%defattr(-,root,root,-)
269%doc README
270%{_libdir}/libgmp.a
271%{_libdir}/libgmpxx.a
272
273# compat32
274%if %{build_compat32}
275%files -n compat32-%{name}
276%defattr(-,root,root,-)
277%{_libdir}/libgmp.so.*
278%{_libdir}/libgmpxx.so.*
279%if %{SSE2}
280%{_libdir}/sse2/*
281%endif
282
283%files -n compat32-%{name}-devel
284%defattr(-,root,root,-)
285%{_libdir}/libgmp.so
286%{_libdir}/libgmpxx.so
287#{_libdir}/libmpfr.a
288%{_libdir}/pkgconfig/*.pc
289
290%files -n compat32-%{name}-static
291%defattr(-,root,root,-)
292%doc README
293%{_libdir}/libgmp.a
294%{_libdir}/libgmpxx.a
295%endif
296
297
298%changelog
299* Tue Feb 02 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 6.2.1-1
300- new upstream release.
301
302* Sun Mar 15 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 6.2.0-1
303- new upstream release.
304
305* Sun May 05 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 6.1.2-1
306- new upstream release.
307- updated Source2 and Source3.
308
309* Sat Jul 2 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 6.1.1-1
310- new upstream release.
311- dropped Patch0.
312- imported Patch2 from rawhide.
313- updated Source2 and Source3.
314
315* Sat May 07 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 6.1.0-1
316- new upstream release
317
318* Tue Jan 14 2014 NAKAMURA Kenta <kenta@vinelinux.org> 5.1.3-2
319- rebuilt with the current environment
320
321* Sun Nov 03 2013 Toshiharu Kudoh <toshi.kd2@gmail.com> 5.1.3-1
322- new upstream release
323- changed file archive type to xz
324- replaced Patch0 to Fedora rawhide's Patch
325- deleted unrecognized option: --enable-mpbsd
326
327* Tue Apr 19 2011 NAKAMURA Kenta <kenta@vinelinux.org> 4.3.2-1
328- new upstream release
329
330* Sun Apr 17 2011 Shu KONNO <owa@bg.wakwak.com> 4.3.1-2
331- rebuilt with rpm-4.8.1-3
332
333* Sat Nov 28 2009 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.3.1-1
334- new upstream release
335- split static libraries to subpackage
336
337* Sun Jun 28 2009 NAKAMURA Kenta <kenta@vinelinux.org> 4.2.2-5
338- added compat32 package for x86_64 arch support
339- run autoreconf to get autotools right
340
341* Mon May 19 2008 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.2.2-4
342- applied new versioning policy
343- added Patch3 from upstream
344
345* Wed Oct 24 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.2.2-3vl2
346- remove --enable-mpfr
347  (mpfr has been splitted since gmp 4.2)
348
349* Wed Oct 24 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.2.2-3vl1
350- new upstream release
351  * Mon Sep 24 2007 Ivana Varekova <varekova@redhat.com> 4.2.2-3
352  - fix libgmpxx.so link
353  * Thu Sep 20 2007 Ivana Varekova <varekova@redhat.com> 4.2.2-2
354  - fix check tag
355  * Thu Nov  2 2006 Thomas Woerner <twoerner@redhat.com> 4.1.4-10
356  - fixed arch order in gmp.h and gmp-mparam.h wrapper for all architectures
357- re-include libraries using SSE2 on x86 arch
358- updated URL
359
360* Wed May 09 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.4-6vl2
361- rebuilt with new toolchain
362
363* Sat Feb 11 2006 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.1.4-6vl1
364- new upstream release
365  * Mon Apr 18 2005 Thomas Woerner <twoerner@redhat.com> 4.1.4-6
366  - fixed __setfpucw call in mpfr-test.h
367  * Sun Sep 26 2004 Florian La Roche <Florian.LaRoche@redhat.de>
368  - disable ppc64 patch, now fixed upstream
369  * Wed Mar 31 2004 Thomas Woerner <twoerner@redhat.com> 4.1.2-14
370  - dropped RPATH (#118506)
371- exclude libraries using SSE2 in default settings.
372
373* Fri Mar 12 2004 KOBAYASHI R. Taizo <tkoba@vinelinux.org> 4.1.2-13vl1
374- modified for Vine
375
376* Mon Jan 20 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1-1vl3
377- added Obsoletes: gmp4(-devel)
378
379* Wed Jan 15 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1-1vl2
380- rebuilt against new toolchain
381
382* Fri May 31 2002 KOBAYASHI R. Taizo <tkoba@vinelinux.org>
383- modified for Vine
384
385* Sat May 25 2002 Florian La Roche <Florian.LaRoche@redhat.de>
386- update to version 4.1
387- patch s390 gmp-mparam.h to match other archs.
388
389* Thu May 23 2002 Tim Powers <timp@redhat.com>
390- automated rebuild
391
392* Mon Mar 11 2002 Trond Eivind Glomsrød <teg@redhat.com> 4.0.1-3
393- Use standard %%configure macro and edit %%{_tmppath}
394
395* Tue Feb 26 2002 Trond Eivind Glomsrød <teg@redhat.com> 4.0.1-2
396- Rebuild
397
398* Tue Jan 22 2002 Florian La Roche <Florian.LaRoche@redhat.de>
399- update to 4.0.1
400- bzip2 src
401
402* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
403- automated rebuild
404
405* Sun Jun 24 2001 Elliot Lee <sopwith@redhat.com>
406- Bump release + rebuild.
407
408* Mon Feb 05 2001 Philipp Knirsch <pknirsch@redhat.de>
409- Fixed bugzilla bug #25515 where GMP wouldn't work on IA64 as IA64 is not
410correctly identified as a 64 bit platform.
411
412* Mon Dec 18 2000 Preston Brown <pbrown@redhat.com>
413- include bsd mp library
414
415* Tue Oct 17 2000 Florian La Roche <Florian.LaRoche@redhat.de>
416- update to 3.1.1
417
418* Sun Sep  3 2000 Florian La Roche <Florian.LaRoche@redhat.com>
419- update to 3.1
420
421* Sat Aug 19 2000 Preston Brown <pbrown@redhat.com>
422- devel subpackage depends on main package so that .so symlink is OK.
423
424* Thu Jul 13 2000 Prospector <bugzilla@redhat.com>
425- automatic rebuild
426
427* Sat Jun  3 2000 Nalin Dahyabhai <nalin@redhat.com>
428- switch to the configure and makeinstall macros
429- FHS-compliance fixing
430- move docs to non-devel package
431
432* Fri Apr 28 2000 Bill Nottingham <notting@redhat.com>
433- libtoolize for ia64
434
435* Fri Apr 28 2000 Florian La Roche <Florian.LaRoche@redhat.com>
436- update to 3.0.1
437
438* Thu Apr 27 2000 Jakub Jelinek <jakub@redhat.com>
439- sparc64 fixes for 3.0
440
441* Wed Apr 26 2000 Florian La Roche <Florian.LaRoche@redhat.com>
442- update to 3.0
443
444* Mon Feb 14 2000 Matt Wilson <msw@redhat.com>
445- #include <string.h> in files that use string functions
446
447* Wed Feb 02 2000 Cristian Gafton <gafton@redhat.com>
448- fix description and summary
449
450* Mon Dec 06 1999 Michael K. Johnson <johnsonm@redhat.com>
451- s/GPL/LGPL/
452- build as non-root (#7604)
453
454* Mon Sep 06 1999 Jakub Jelinek <jj@ultra.linux.cz>
455- merge in some debian gmp fixes
456- Ulrich Drepper's __gmp_scale2 fix
457- my mpf_set_q fix
458- sparc64 fixes
459
460* Wed Apr 28 1999 Cristian Gafton <gafton@redhat.com>
461- add sparc patch for PIC handling
462
463* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
464- auto rebuild in the new build environment (release 8)
465
466* Thu Feb 11 1999 Michael Johnson <johnsonm@redhat.com>
467- include the private header file gmp-mparam.h because several
468  apps seem to assume that they are building against the gmp
469  source tree and require it.  Sigh.
470
471* Tue Jan 12 1999 Michael K. Johnson <johnsonm@redhat.com>
472- libtoolize to work on arm
473
474* Thu Sep 10 1998 Cristian Gafton <gafton@redhat.com>
475- yet another touch of the spec file
476
477* Wed Sep  2 1998 Michael Fulbright <msf@redhat.com>
478- looked over before inclusion in RH 5.2
479
480* Sun May 24 1998 Dick Porter <dick@cymru.net>
481- Patch Makefile.in, not Makefile
482- Don't specify i586, let configure decide the arch
483
484* Sat Jan 24 1998 Marc Ewing <marc@redhat.com>
485- started with package from Toshio Kuratomi <toshiok@cats.ucsc.edu>
486- cleaned up file list
487- fixed up install-info support
488
Note: See TracBrowser for help on using the repository browser.