Annotation of /trunk/core/gmp/gmp-6.1.2-r2.smage2
Parent Directory | Revision Log
Revision 28605 -
(hide annotations)
(download)
Mon Jan 9 10:00:44 2017 UTC (7 years, 8 months ago) by niro
File size: 2973 byte(s)
Mon Jan 9 10:00:44 2017 UTC (7 years, 8 months ago) by niro
File size: 2973 byte(s)
-linux-libc-headers-4.8.15, binutils-2.27, glibc-2.24, gcc-6.3.0 toolchain - stage2
1 | niro | 28605 | # $Id$ |
2 | |||
3 | PNAME="gmp" | ||
4 | PVER="6.1.2" | ||
5 | PBUILD="r2" | ||
6 | |||
7 | PCAT="dev-libs" | ||
8 | |||
9 | DESCRIPTION="GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers." | ||
10 | HOMEPAGE="http://gmplib.org/" | ||
11 | |||
12 | DEPEND=">= virtual/glibc | ||
13 | >= sys-libs/libstdc++-6.3" | ||
14 | |||
15 | SRCFILE="${PNAME}-${PVER}.tar.xz" | ||
16 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" | ||
17 | |||
18 | # not multilib.sminc compat, don't use it! | ||
19 | sminclude mbuild mtools | ||
20 | |||
21 | SRC_URI=( | ||
22 | https://gmplib.org/download/${PNAME}/${SRCFILE} | ||
23 | mirror://${PNAME}/${SRCFILE} | ||
24 | ) | ||
25 | |||
26 | UP2DATE="updatecmd_gnu ${PNAME}" | ||
27 | |||
28 | src_compile() | ||
29 | { | ||
30 | install -d ${SRCDIR}/build | ||
31 | cd ${SRCDIR}/build | ||
32 | CPPFLAGS="-fexceptions" \ | ||
33 | CC="gcc" \ | ||
34 | CXX="g++" \ | ||
35 | LDFLAGS="-Wl,-rpath-link,/$(mlibdir)" \ | ||
36 | ../configure \ | ||
37 | --build=${CHOST} \ | ||
38 | --host=${CHOST} \ | ||
39 | --prefix=/usr \ | ||
40 | --mandir=/usr/share/man \ | ||
41 | --infodir=/usr/share/info \ | ||
42 | --libdir=/usr/$(mlibdir) \ | ||
43 | --enable-mpbsd \ | ||
44 | --enable-cxx \ | ||
45 | || die | ||
46 | mmake || die | ||
47 | |||
48 | # build 32bit libraries for multilib systems | ||
49 | if [[ ${ARCH} = x86_64 ]] | ||
50 | then | ||
51 | install -d ${SRCDIR}/build-m32 | ||
52 | cd ${SRCDIR}/build-m32 | ||
53 | CPPFLAGS="-fexceptions" \ | ||
54 | ABI=32 \ | ||
55 | CC="gcc -m${ABI}" \ | ||
56 | CXX="g++ -m${ABI}" \ | ||
57 | LDFLAGS="-Wl,-rpath-link,/lib -m${ABI}" \ | ||
58 | ../configure \ | ||
59 | --build=${CHOST} \ | ||
60 | --host=${CHOST} \ | ||
61 | --prefix=/usr \ | ||
62 | --mandir=/usr/share/man \ | ||
63 | --infodir=/usr/share/info \ | ||
64 | --libdir=/usr/lib \ | ||
65 | --enable-mpbsd \ | ||
66 | --enable-cxx \ | ||
67 | || die | ||
68 | mmake || die | ||
69 | fi | ||
70 | } | ||
71 | |||
72 | src_check() | ||
73 | { | ||
74 | cd ${SRCDIR}/build | ||
75 | make -k check || die | ||
76 | |||
77 | if [[ ${ARCH} = x86_64 ]] | ||
78 | then | ||
79 | cd ${SRCDIR}/build-m32 | ||
80 | make -k check || die | ||
81 | fi | ||
82 | } | ||
83 | |||
84 | src_install() | ||
85 | { | ||
86 | cd ${SRCDIR}/build | ||
87 | make DESTDIR=${BINDIR} install || die | ||
88 | |||
89 | # build 32bit libraries for multilib systems | ||
90 | if [[ ${ARCH} = x86_64 ]] | ||
91 | then | ||
92 | # move the 64bit header | ||
93 | mv ${BINDIR}/usr/include/gmp{,-64}.h || die | ||
94 | minstallfile gmp-mparam.h /usr/include/gmp-mparam-64.h || die | ||
95 | |||
96 | cd ${SRCDIR}/build-m32 | ||
97 | make DESTDIR=${BINDIR} install || die | ||
98 | |||
99 | # move the 32bit header | ||
100 | mv ${BINDIR}/usr/include/gmp{,-32}.h || die | ||
101 | minstallfile gmp-mparam.h /usr/include/gmp-mparam-32.h || die | ||
102 | |||
103 | # create a wrapper header | ||
104 | cat > ${BINDIR}/usr/include/gmp.h << "EOF" | ||
105 | /* gmp.h - Stub Header */ | ||
106 | #ifndef __STUB__GMP_H__ | ||
107 | #define __STUB__GMP_H__ | ||
108 | |||
109 | #if defined(__x86_64__) || \ | ||
110 | defined(__sparc64__) || \ | ||
111 | defined(__arch64__) || \ | ||
112 | defined(__powerpc64__) || \ | ||
113 | defined (__s390x__) | ||
114 | # include "gmp-64.h" | ||
115 | #else | ||
116 | # include "gmp-32.h" | ||
117 | #endif | ||
118 | |||
119 | #endif /* __STUB__GMP_H__ */ | ||
120 | EOF | ||
121 | # create a wrapper header | ||
122 | cat > ${BINDIR}/usr/include/gmp-mparam.h << "EOF" | ||
123 | /* gmp-mparam.h - Stub Header */ | ||
124 | #ifndef __STUB__GMP_MPARAM_H__ | ||
125 | #define __STUB__GMP_MPARAM_H__ | ||
126 | |||
127 | #if defined(__x86_64__) || \ | ||
128 | defined(__sparc64__) || \ | ||
129 | defined(__arch64__) || \ | ||
130 | defined(__powerpc64__) || \ | ||
131 | defined (__s390x__) | ||
132 | # include "gmp-mparam-64.h" | ||
133 | #else | ||
134 | # include "gmp-mparam-32.h" | ||
135 | #endif | ||
136 | |||
137 | #endif /* __STUB__GMP_MPARAM_H__ */ | ||
138 | EOF | ||
139 | fi | ||
140 | |||
141 | cd ${SRCDIR} | ||
142 | minstalldocs AUTHORS COPYING* ChangeLog NEWS README || die | ||
143 | } |