diff options
author | Jussi Kukkonen <jussi.kukkonen@intel.com> | 2015-08-27 16:05:59 +0300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-09-01 11:43:59 +0100 |
commit | 6fac60da96eee89d5b7c2156bbb92fe72dc28aef (patch) | |
tree | af55f9157508f35ece55c012d3e8cb25ac532e71 /meta/recipes-support/gmp | |
parent | b9ade91413f56ffeeeec753a45e3d1d64efe4802 (diff) | |
download | poky-6fac60da96eee89d5b7c2156bbb92fe72dc28aef.tar.gz |
gmp: Bring back version 4.2.1 (LGPL 2.1+)
gmp 4.2.1 was removed in f181c6ce8b apparently accidentally: It
was not noticed that 4.2.1 is LGPL 2.1 (and not GPL) so provides
a useful alternative to the newer "GPLv2 | LGPLv3" version.
* Reintroduce 4.2.1. The source includes files that are GPL but the
library package is LGPL 2.1+
* Also reintroduce the two patches removed in f181c6ce8b.
* Refactor gmp.inc: gmp 6.0.0 build should not be affected in any way.
* Update 6.0.0 license from "GPLv2 | LGPLv3" to "GPLv2+ | LGPLv3+".
[YOCTO #8197]
(From OE-Core rev: 1adec83621f36a3dd748990c307ca4ebebcdd554)
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-support/gmp')
-rw-r--r-- | meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch | 39 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch | 56 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-6.0.0/amd64.patch (renamed from meta/recipes-support/gmp/gmp/amd64.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-6.0.0/append_user_provided_flags.patch (renamed from meta/recipes-support/gmp/gmp/append_user_provided_flags.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-6.0.0/configure.patch (renamed from meta/recipes-support/gmp/gmp/configure.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-6.0.0/gmp-6.0.0-ppc64.patch (renamed from meta/recipes-support/gmp/gmp/gmp-6.0.0-ppc64.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-6.0.0/use-includedir.patch (renamed from meta/recipes-support/gmp/gmp/use-includedir.patch) | 0 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp.inc | 19 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp_4.2.1.bb | 15 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp_6.0.0.bb | 33 |
10 files changed, 137 insertions, 25 deletions
diff --git a/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch b/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch new file mode 100644 index 0000000000..5decb1cec5 --- /dev/null +++ b/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | This patch was removed in f181c6ce8b3 when gmp 4.2.1 was mistakenly | ||
2 | dropped. | ||
3 | |||
4 | Upstream is not interested in patches for ancient versions. | ||
5 | |||
6 | Upstream-Status: Inappropriate | ||
7 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
8 | |||
9 | # "extern inline" in traditional gcc means that the function should be | ||
10 | # inlined wherever it's seen, while in C99, "extern inline" means that i | ||
11 | # the function should only be inlined where the inline definition is | ||
12 | # seen while in other places it's not inlined: | ||
13 | # http://gcc.gnu.org/ml/gcc/2006-11/msg00006.html | ||
14 | # | ||
15 | # gmp checks "--std=gnu99" to use C99 convention however it internally | ||
16 | # defines some "extern inline" functions in gmp.h, which is included | ||
17 | # by mainly .c files and finally lead a flood of redefinition function | ||
18 | # errors when linking objects together. | ||
19 | # | ||
20 | # So disable C99/ANSI detection to stick to tranditional gcc behavior | ||
21 | # | ||
22 | # by Kevin Tian <kevin.tian@intel.com>, 2010-08-13 | ||
23 | # | ||
24 | # (this patch is licensed under GPLv2+) | ||
25 | |||
26 | diff --git a/configure.in b/configure.in | ||
27 | index 450cc92..aab0b59 100644 | ||
28 | --- a/configure.in | ||
29 | +++ b/configure.in | ||
30 | @@ -1869,9 +1869,7 @@ AC_SUBST(DEFN_LONG_LONG_LIMB) | ||
31 | |||
32 | # The C compiler and preprocessor, put into ANSI mode if possible. | ||
33 | AC_PROG_CC | ||
34 | -AC_PROG_CC_STDC | ||
35 | AC_PROG_CPP | ||
36 | -GMP_H_ANSI | ||
37 | |||
38 | |||
39 | # The C compiler on the build system, and associated tests. | ||
diff --git a/meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch b/meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch new file mode 100644 index 0000000000..63aed05ece --- /dev/null +++ b/meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch | |||
@@ -0,0 +1,56 @@ | |||
1 | automake 1.12 has depricated automatic de-ANSI-fication support | ||
2 | |||
3 | this patch avoids these kinds of errors: | ||
4 | |||
5 | | configure.in:2240: error: automatic de-ANSI-fication support has been removed | ||
6 | | Makefile.am:28: error: automatic de-ANSI-fication support has been removed | ||
7 | |||
8 | Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> | ||
9 | 2012/05/02 | ||
10 | |||
11 | |||
12 | This patch was removed in f181c6ce8b3 when gmp 4.2.1 was mistakenly | ||
13 | dropped. | ||
14 | |||
15 | Upstream is not interested in patches for ancient versions. | ||
16 | |||
17 | Upstream-Status: Inappropriate | ||
18 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
19 | |||
20 | |||
21 | Index: gmp-4.2.1/configure.in | ||
22 | =================================================================== | ||
23 | --- gmp-4.2.1.orig/configure.in | ||
24 | +++ gmp-4.2.1/configure.in | ||
25 | @@ -67,7 +67,7 @@ dnl | ||
26 | dnl Note that there's a copy of these options in the top-level Makefile.am, | ||
27 | dnl so update there too if changing anything. | ||
28 | dnl | ||
29 | -AM_INIT_AUTOMAKE([1.8 gnu no-dependencies $(top_builddir)/ansi2knr]) | ||
30 | +AM_INIT_AUTOMAKE([1.8 gnu no-dependencies]) | ||
31 | AM_CONFIG_HEADER(config.h:config.in) | ||
32 | AM_MAINTAINER_MODE | ||
33 | |||
34 | @@ -2022,9 +2022,6 @@ fi | ||
35 | echo " MPN_PATH=\"$path\"" | ||
36 | |||
37 | |||
38 | -# Automake ansi2knr support. | ||
39 | -AM_C_PROTOTYPES | ||
40 | - | ||
41 | GMP_PROG_AR | ||
42 | GMP_PROG_NM | ||
43 | |||
44 | Index: gmp-4.2.1/Makefile.am | ||
45 | =================================================================== | ||
46 | --- gmp-4.2.1.orig/Makefile.am | ||
47 | +++ gmp-4.2.1/Makefile.am | ||
48 | @@ -27,7 +27,7 @@ | ||
49 | # Makefiles in subdirectories, but here we must omit it so automake gives | ||
50 | # the actual ansi2knr build rule, not "cd $(top_builddir) && make ansi2knr". | ||
51 | # | ||
52 | -AUTOMAKE_OPTIONS = 1.8 gnu no-dependencies ansi2knr | ||
53 | +AUTOMAKE_OPTIONS = 1.8 gnu no-dependencies | ||
54 | |||
55 | |||
56 | # Libtool -version-info for libgmp.la and libmp.la. See "Versioning" in the | ||
diff --git a/meta/recipes-support/gmp/gmp/amd64.patch b/meta/recipes-support/gmp/gmp-6.0.0/amd64.patch index 564d12d42b..564d12d42b 100644 --- a/meta/recipes-support/gmp/gmp/amd64.patch +++ b/meta/recipes-support/gmp/gmp-6.0.0/amd64.patch | |||
diff --git a/meta/recipes-support/gmp/gmp/append_user_provided_flags.patch b/meta/recipes-support/gmp/gmp-6.0.0/append_user_provided_flags.patch index ae1386c4c1..ae1386c4c1 100644 --- a/meta/recipes-support/gmp/gmp/append_user_provided_flags.patch +++ b/meta/recipes-support/gmp/gmp-6.0.0/append_user_provided_flags.patch | |||
diff --git a/meta/recipes-support/gmp/gmp/configure.patch b/meta/recipes-support/gmp/gmp-6.0.0/configure.patch index 349da3c6b0..349da3c6b0 100644 --- a/meta/recipes-support/gmp/gmp/configure.patch +++ b/meta/recipes-support/gmp/gmp-6.0.0/configure.patch | |||
diff --git a/meta/recipes-support/gmp/gmp/gmp-6.0.0-ppc64.patch b/meta/recipes-support/gmp/gmp-6.0.0/gmp-6.0.0-ppc64.patch index 1113b41ecd..1113b41ecd 100644 --- a/meta/recipes-support/gmp/gmp/gmp-6.0.0-ppc64.patch +++ b/meta/recipes-support/gmp/gmp-6.0.0/gmp-6.0.0-ppc64.patch | |||
diff --git a/meta/recipes-support/gmp/gmp/use-includedir.patch b/meta/recipes-support/gmp/gmp-6.0.0/use-includedir.patch index 74904a2530..74904a2530 100644 --- a/meta/recipes-support/gmp/gmp/use-includedir.patch +++ b/meta/recipes-support/gmp/gmp-6.0.0/use-includedir.patch | |||
diff --git a/meta/recipes-support/gmp/gmp.inc b/meta/recipes-support/gmp/gmp.inc index 65cde21a7d..6752a39d13 100644 --- a/meta/recipes-support/gmp/gmp.inc +++ b/meta/recipes-support/gmp/gmp.inc | |||
@@ -2,32 +2,15 @@ SECTION = "devel" | |||
2 | SUMMARY = "GNU multiprecision arithmetic library" | 2 | SUMMARY = "GNU multiprecision arithmetic library" |
3 | DESCRIPTION = "GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers" | 3 | DESCRIPTION = "GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers" |
4 | HOMEPAGE = "http://gmplib.org/" | 4 | HOMEPAGE = "http://gmplib.org/" |
5 | LICENSE = "GPLv3 LGPLv3" | ||
6 | 5 | ||
7 | REVISION ?= "" | 6 | REVISION ?= "" |
8 | 7 | SRC_URI = "https://gmplib.org/download/${BPN}/${BP}${REVISION}.tar.bz2" | |
9 | SRC_URI = "https://gmplib.org/download/${BPN}/${BP}${REVISION}.tar.bz2 \ | ||
10 | file://configure.patch \ | ||
11 | file://amd64.patch " | ||
12 | 8 | ||
13 | inherit autotools texinfo | 9 | inherit autotools texinfo |
14 | 10 | ||
15 | ARM_INSTRUCTION_SET = "arm" | 11 | ARM_INSTRUCTION_SET = "arm" |
16 | 12 | ||
17 | acpaths = "" | ||
18 | |||
19 | BBCLASSEXTEND = "native nativesdk" | 13 | BBCLASSEXTEND = "native nativesdk" |
20 | 14 | ||
21 | PACKAGECONFIG ??= "" | 15 | PACKAGECONFIG ??= "" |
22 | PACKAGECONFIG[readline] = "--with-readline=yes,--with-readline=no,readline" | 16 | PACKAGECONFIG[readline] = "--with-readline=yes,--with-readline=no,readline" |
23 | |||
24 | EXTRA_OECONF += " --enable-cxx=detect" | ||
25 | |||
26 | PACKAGES =+ "libgmpxx" | ||
27 | FILES_libgmpxx = "${libdir}/libgmpxx${SOLIBS}" | ||
28 | |||
29 | do_install_append_class-target() { | ||
30 | sed -i "s|--sysroot=${STAGING_DIR_HOST}||g" ${D}${includedir}/gmp.h | ||
31 | } | ||
32 | |||
33 | SSTATE_SCAN_FILES += "gmp.h" | ||
diff --git a/meta/recipes-support/gmp/gmp_4.2.1.bb b/meta/recipes-support/gmp/gmp_4.2.1.bb new file mode 100644 index 0000000000..928c01a5bb --- /dev/null +++ b/meta/recipes-support/gmp/gmp_4.2.1.bb | |||
@@ -0,0 +1,15 @@ | |||
1 | require gmp.inc | ||
2 | |||
3 | LICENSE = "LGPLv2.1+ & GPLv2+" | ||
4 | LICENSE_${PN} = "LGPLv2.1+" | ||
5 | |||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a \ | ||
7 | file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24 \ | ||
8 | file://gmp-h.in;beginline=6;endline=21;md5=e056f74a12c3277d730dbcfb85d2ca34" | ||
9 | |||
10 | SRC_URI += "file://disable-stdc.patch \ | ||
11 | file://gmp_fix_for_automake-1.12.patch \ | ||
12 | " | ||
13 | |||
14 | SRC_URI[md5sum] = "091c56e0e1cca6b09b17b69d47ef18e3" | ||
15 | SRC_URI[sha256sum] = "d07ffcb37eecec35c5ec72516d10b35fdf6e6fef1fcf1dcd37e30b8cbf8bf941" | ||
diff --git a/meta/recipes-support/gmp/gmp_6.0.0.bb b/meta/recipes-support/gmp/gmp_6.0.0.bb index 6218491142..19b63e5683 100644 --- a/meta/recipes-support/gmp/gmp_6.0.0.bb +++ b/meta/recipes-support/gmp/gmp_6.0.0.bb | |||
@@ -1,14 +1,33 @@ | |||
1 | require gmp.inc | 1 | require gmp.inc |
2 | LICENSE="GPLv2 | LGPLv3" | 2 | |
3 | LICENSE="GPLv2+ | LGPLv3+" | ||
4 | |||
3 | REVISION="a" | 5 | REVISION="a" |
6 | |||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ | 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ |
5 | file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \ | 8 | file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \ |
6 | file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | 9 | file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ |
7 | " | ||
8 | SRC_URI_append = " file://use-includedir.patch \ | ||
9 | file://append_user_provided_flags.patch \ | ||
10 | file://gmp-6.0.0-ppc64.patch \ | ||
11 | " | 10 | " |
12 | 11 | ||
12 | SRC_URI += "file://configure.patch \ | ||
13 | file://amd64.patch \ | ||
14 | file://use-includedir.patch \ | ||
15 | file://append_user_provided_flags.patch \ | ||
16 | file://gmp-6.0.0-ppc64.patch \ | ||
17 | " | ||
13 | SRC_URI[md5sum] = "b7ff2d88cae7f8085bd5006096eed470" | 18 | SRC_URI[md5sum] = "b7ff2d88cae7f8085bd5006096eed470" |
14 | SRC_URI[sha256sum] = "7f8e9a804b9c6d07164cf754207be838ece1219425d64e28cfa3e70d5c759aaf" | 19 | SRC_URI[sha256sum] = "7f8e9a804b9c6d07164cf754207be838ece1219425d64e28cfa3e70d5c759aaf" |
20 | |||
21 | acpaths = "" | ||
22 | |||
23 | EXTRA_OECONF += " --enable-cxx=detect" | ||
24 | |||
25 | PACKAGES =+ "libgmpxx" | ||
26 | FILES_libgmpxx = "${libdir}/libgmpxx${SOLIBS}" | ||
27 | |||
28 | do_install_append_class-target() { | ||
29 | sed -i "s|--sysroot=${STAGING_DIR_HOST}||g" ${D}${includedir}/gmp.h | ||
30 | } | ||
31 | |||
32 | SSTATE_SCAN_FILES += "gmp.h" | ||
33 | |||