1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
10 compat_version = 4.3.2
12 groups = System/Libraries
13 url = http://gmplib.org/
15 summary = A GNU arbitrary precision library.
18 The gmp package contains GNU MP, a library for arbitrary precision
19 arithmetic, signed integers operations, rational numbers and floating
20 point numbers. GNU MP is designed for speed, for both small and very
21 large operands. GNU MP is fast because it uses fullwords as the basic
22 arithmetic type, it uses fast algorithms, it carefully optimizes
23 assembly code for many CPUs' most common inner loops, and it generally
24 emphasizes speed over simplicity/elegance in its operations.
27 source_dl += ftp://ftp.gmplib.org/pub/%{thisapp}/ ftp://ftp.gmplib.org/pub/%{name}-%{compat_version}/
28 sources = %{thisapp}.tar.bz2 %{name}-%{compat_version}.tar.bz2
36 # Build different versions of gmp to enhance the speed
42 if "%{DISTRO_ARCH}" == "x86_64"
46 if "%{DISTRO_ARCH}" == "i686"
47 # Build sse2 enabled version of gmp.
48 build_versions += sse2
53 configure_options += \
60 for version in %{build_versions}; do
61 mkdir build-${version}
64 ln -svf ../configure .
71 CXXFLAGS="${CXXFLAGS}" \
76 sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
77 -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
78 -e 's|-lstdc++ -lm|-lstdc++|' \
81 export LD_LIBRARY_PATH=$(pwd)/.libs
82 make %{PARALLELISMFLAGS} \
84 CXXFLAGS="${CXXFLAGS}"
88 for version in %{build_versions}; do
92 CXXFLAGS="%{CXXFLAGS}"
93 if [ "${version}" = "sse2" ]; then
95 CFLAGS="${CFLAGS} -march=pentium4"
96 CXXFLAGS="${CXXFLAGS} -march=pentium4"
104 # Build compat version of library.
105 cd %{DIR_SRC}/%{name}-%{compat_version}
110 for version in %{build_versions}; do
113 export LD_LIBRARY_PATH=$(pwd)/.libs
119 # Check compat version of library.
120 cd %{DIR_SRC}/%{name}-%{compat_version}
122 export LD_LIBRARY_PATH=$(pwd)/.libs
127 for version in %{build_versions}; do
130 if [ "${version}" = "sse2" ]; then
131 # Manually install sse2 libs.
132 mkdir -pv %{BUILDROOT}/usr/lib/sse2
134 install -m 755 .libs/libgmp.so.*.* %{BUILDROOT}/usr/lib/sse2
135 cp -a .libs/libgmp.so.[^.]* %{BUILDROOT}/usr/lib/sse2
136 chmod 755 %{BUILDROOT}/usr/lib/sse2/libgmp.so.[^.]*
138 install -m 755 .libs/libgmpxx.so.*.* %{BUILDROOT}/usr/lib/sse2
139 cp -a .libs/libgmpxx.so.? %{BUILDROOT}/usr/lib/sse2
140 chmod 755 %{BUILDROOT}/usr/lib/sse2/libgmpxx.so.?
142 install -m 755 .libs/libmp.so.*.* %{BUILDROOT}/usr/lib/sse2
143 cp -a .libs/libmp.so.? %{BUILDROOT}/usr/lib/sse2
144 chmod 755 %{BUILDROOT}/usr/lib/sse2/libmp.so.?
146 make install DESTDIR="%{BUILDROOT}"
152 # Install compat version of library.
153 cd %{DIR_SRC}/%{name}-%{compat_version}
154 install -m 644 .libs/libgmp.so.3.5.2 %{BUILDROOT}/usr/lib/
155 ln -svf libgmp.so.3.5.2 %{BUILDROOT}/usr/lib/libgmp.so.3
162 package %{name}-devel
166 package %{name}-compat
167 summary = Compatibility version of %{thisapp} (%{compat_version}).
170 /usr/lib/libgmp.so.3*
174 package %{name}-debuginfo