summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/conf/distro/include/maintainers.inc1
-rw-r--r--meta/recipes-devtools/perl-cross/files/0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch (renamed from meta/recipes-devtools/perl/files/0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch)0
-rw-r--r--meta/recipes-devtools/perl-cross/files/0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch (renamed from meta/recipes-devtools/perl/files/0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch)0
-rw-r--r--meta/recipes-devtools/perl-cross/files/0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch (renamed from meta/recipes-devtools/perl/files/0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch)0
-rw-r--r--meta/recipes-devtools/perl-cross/files/README.md29
-rw-r--r--meta/recipes-devtools/perl-cross/files/determinism.patch46
-rw-r--r--meta/recipes-devtools/perl-cross/perlcross_1.3.5.bb38
-rw-r--r--meta/recipes-devtools/perl/files/determinism.patch23
-rw-r--r--meta/recipes-devtools/perl/perl_5.32.1.bb17
9 files changed, 118 insertions, 36 deletions
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index ee118209db..89dec1f86a 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -558,6 +558,7 @@ RECIPE_MAINTAINER_pn-pciutils = "Chen Qi <Qi.Chen@windriver.com>"
558RECIPE_MAINTAINER_pn-pcmanfm = "Alexander Kanavin <alex.kanavin@gmail.com>" 558RECIPE_MAINTAINER_pn-pcmanfm = "Alexander Kanavin <alex.kanavin@gmail.com>"
559RECIPE_MAINTAINER_pn-perf = "Bruce Ashfield <bruce.ashfield@gmail.com>" 559RECIPE_MAINTAINER_pn-perf = "Bruce Ashfield <bruce.ashfield@gmail.com>"
560RECIPE_MAINTAINER_pn-perl = "Alexander Kanavin <alex.kanavin@gmail.com>" 560RECIPE_MAINTAINER_pn-perl = "Alexander Kanavin <alex.kanavin@gmail.com>"
561RECIPE_MAINTAINER_pn-perlcross = "Alexander Kanavin <alex.kanavin@gmail.com>"
561RECIPE_MAINTAINER_pn-piglit = "Ross Burton <ross.burton@arm.com>" 562RECIPE_MAINTAINER_pn-piglit = "Ross Burton <ross.burton@arm.com>"
562RECIPE_MAINTAINER_pn-pigz = "Hongxu Jia <hongxu.jia@windriver.com>" 563RECIPE_MAINTAINER_pn-pigz = "Hongxu Jia <hongxu.jia@windriver.com>"
563RECIPE_MAINTAINER_pn-pinentry = "Armin Kuster <akuster808@gmail.com>" 564RECIPE_MAINTAINER_pn-pinentry = "Armin Kuster <akuster808@gmail.com>"
diff --git a/meta/recipes-devtools/perl/files/0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch b/meta/recipes-devtools/perl-cross/files/0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch
index 3b0fc453e5..3b0fc453e5 100644
--- a/meta/recipes-devtools/perl/files/0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch
+++ b/meta/recipes-devtools/perl-cross/files/0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch
diff --git a/meta/recipes-devtools/perl/files/0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch b/meta/recipes-devtools/perl-cross/files/0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch
index 0aaeaa29eb..0aaeaa29eb 100644
--- a/meta/recipes-devtools/perl/files/0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch
+++ b/meta/recipes-devtools/perl-cross/files/0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch
diff --git a/meta/recipes-devtools/perl/files/0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch b/meta/recipes-devtools/perl-cross/files/0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch
index e7985036a0..e7985036a0 100644
--- a/meta/recipes-devtools/perl/files/0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch
+++ b/meta/recipes-devtools/perl-cross/files/0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch
diff --git a/meta/recipes-devtools/perl-cross/files/README.md b/meta/recipes-devtools/perl-cross/files/README.md
new file mode 100644
index 0000000000..93217245c8
--- /dev/null
+++ b/meta/recipes-devtools/perl-cross/files/README.md
@@ -0,0 +1,29 @@
1**perl-cross** provides configure script, top-level Makefile
2and some auxiliary files for [perl](http://www.perl.org),
3with the primary emphasis on cross-compiling the source.
4
5 # Get perl and perl-cross sources
6 curl -L -O http://www.cpan.org/src/5.0/perl-5.24.1.tar.gz
7 curl -L -O https://github.com/arsv/perl-cross/releases/download/1.1.3/perl-cross-1.1.3.tar.gz
8
9 # Unpack perl-cross over perl, overwriting Makefile
10 tar -zxf perl-5.24.1.tar.gz
11 cd perl-5.24.1
12 tar --strip-components=1 -zxf ../perl-cross-1.1.3.tar.gz
13
14 # Proceed as usual with most autoconfed packages
15 ./configure --target=arm-linux-gnueabi --prefix=/usr -Duseshrplib
16 make -j4
17 make DESTDIR=/path/to/staging/dir install
18
19Unlike mainline Perl, this configure never runs any target executables,
20relying solely on compile/link tests and pre-defined hints.
21On the flip side, it is only meant to run on resonably sane modern unix systems.
22
23Check [project pages](http://arsv.github.io/perl-cross/) for more info.
24In particular, [configure usage](http://arsv.github.io/perl-cross/usage.html)
25lists available configure options.
26
27Perl-cross is a free software licensed under the same terms
28as the original perl source.
29See LICENSE, Copying and Artistic files.
diff --git a/meta/recipes-devtools/perl-cross/files/determinism.patch b/meta/recipes-devtools/perl-cross/files/determinism.patch
new file mode 100644
index 0000000000..e9bf752bcb
--- /dev/null
+++ b/meta/recipes-devtools/perl-cross/files/determinism.patch
@@ -0,0 +1,46 @@
1Fixes to make the perl build reproducible:
2
3a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
4 whether the shell is bash or dash which can cause the test result to be incorrect.
5 Reported upstream: https://github.com/arsv/perl-cross/issues/87
6
7b) Sort the order of the module lists from configure_mods.sh since otherwise
8 the result isn't the same leading to makefile differences.
9 Reported upstream: https://github.com/arsv/perl-cross/issues/88
10
11c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
12 there for good measure)
13 This needs to go to upstream perl (not done)
14
15d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
16 and "" with dash
17 Reported upstream: https://github.com/arsv/perl-cross/issues/87
18
19RP 2020/2/7
20
21Upstream-Status: Pending [75% submitted]
22Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org
23
24Index: perl-5.30.1/cnf/configure_mods.sh
25===================================================================
26--- perl-5.30.1.orig/cnf/configure_mods.sh
27+++ perl-5.30.1/cnf/configure_mods.sh
28@@ -82,7 +82,7 @@ extonlyif() {
29 }
30
31 definetrimspaces() {
32- v=`echo "$2" | sed -r -e 's/\s+/ /g' -e 's/^\s+//' -e 's/\s+$//'`
33+ v=`echo "$2" | sed -r -e 's/\s+/ /g' -e 's/^\s+//' -e 's/\s+$//' | xargs -n1 | LANG=C sort | xargs`
34 define $1 "$v"
35 }
36
37Index: perl-5.30.1/cnf/configure
38===================================================================
39--- perl-5.30.1.orig/cnf/configure
40+++ perl-5.30.1/cnf/configure
41@@ -1,4 +1,4 @@
42-#!/bin/sh
43+#!/bin/bash
44
45 base=${0%/*}; test -z "$base" && base=.
46
diff --git a/meta/recipes-devtools/perl-cross/perlcross_1.3.5.bb b/meta/recipes-devtools/perl-cross/perlcross_1.3.5.bb
new file mode 100644
index 0000000000..0d81d4d0f1
--- /dev/null
+++ b/meta/recipes-devtools/perl-cross/perlcross_1.3.5.bb
@@ -0,0 +1,38 @@
1SUMMARY = "Perl-cross build system"
2HOMEPAGE = "https://github.com/arsv/perl-cross"
3DESCRIPTION = "perl-cross provides configure script, top-level Makefile and some auxiliary files for perl, \
4with the primary emphasis on cross-compiling the source."
5SECTION = "devel"
6LICENSE = "Artistic-1.0 | GPL-1.0+"
7# README.md is taken from https://github.com/arsv/perl-cross/blob/master/README.md
8# but is not provided inside the release tarballs
9LIC_FILES_CHKSUM = "file://${WORKDIR}/README.md;md5=252fcce2026b765fee1ad74d2fb07a3b"
10
11inherit allarch
12
13SRC_URI = "https://github.com/arsv/perl-cross/releases/download/${PV}/perl-cross-${PV}.tar.gz;name=perl-cross \
14 file://README.md \
15 file://0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch \
16 file://0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch \
17 file://0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch \
18 file://determinism.patch \
19"
20UPSTREAM_CHECK_URI = "https://github.com/arsv/perl-cross/releases/"
21
22SRC_URI[perl-cross.sha256sum] = "91c66f6b2b99fccfd4fee14660b677380b0c98f9456359e91449798c2ad2ef25"
23
24S = "${WORKDIR}/perl-cross-${PV}"
25
26do_configure () {
27}
28
29do_compile () {
30}
31
32do_install_class-native() {
33 mkdir -p ${D}/${datadir}/perl-cross/
34 cp -rf ${S}/* ${D}/${datadir}/perl-cross/
35}
36
37BBCLASSEXTEND = "native"
38
diff --git a/meta/recipes-devtools/perl/files/determinism.patch b/meta/recipes-devtools/perl/files/determinism.patch
index ccdd52a0d0..aa85ccef10 100644
--- a/meta/recipes-devtools/perl/files/determinism.patch
+++ b/meta/recipes-devtools/perl/files/determinism.patch
@@ -21,19 +21,6 @@ RP 2020/2/7
21Upstream-Status: Pending [75% submitted] 21Upstream-Status: Pending [75% submitted]
22Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org 22Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org
23 23
24Index: perl-5.30.1/cnf/configure_mods.sh
25===================================================================
26--- perl-5.30.1.orig/cnf/configure_mods.sh
27+++ perl-5.30.1/cnf/configure_mods.sh
28@@ -82,7 +82,7 @@ extonlyif() {
29 }
30
31 definetrimspaces() {
32- v=`echo "$2" | sed -r -e 's/\s+/ /g' -e 's/^\s+//' -e 's/\s+$//'`
33+ v=`echo "$2" | sed -r -e 's/\s+/ /g' -e 's/^\s+//' -e 's/\s+$//' | xargs -n1 | LANG=C sort | xargs`
34 define $1 "$v"
35 }
36
37Index: perl-5.30.1/cpan/Encode/Byte/Makefile.PL 24Index: perl-5.30.1/cpan/Encode/Byte/Makefile.PL
38=================================================================== 25===================================================================
39--- perl-5.30.1.orig/cpan/Encode/Byte/Makefile.PL 26--- perl-5.30.1.orig/cpan/Encode/Byte/Makefile.PL
@@ -56,13 +43,3 @@ Index: perl-5.30.1/cpan/Encode/Byte/Makefile.PL
56 { 43 {
57 print FILELIST $self->catfile($dir,$file) . "\n"; 44 print FILELIST $self->catfile($dir,$file) . "\n";
58 } 45 }
59Index: perl-5.30.1/cnf/configure
60===================================================================
61--- perl-5.30.1.orig/cnf/configure
62+++ perl-5.30.1/cnf/configure
63@@ -1,4 +1,4 @@
64-#!/bin/sh
65+#!/bin/bash
66
67 base=${0%/*}; test -z "$base" && base=.
68
diff --git a/meta/recipes-devtools/perl/perl_5.32.1.bb b/meta/recipes-devtools/perl/perl_5.32.1.bb
index b28040c7fb..01db924a73 100644
--- a/meta/recipes-devtools/perl/perl_5.32.1.bb
+++ b/meta/recipes-devtools/perl/perl_5.32.1.bb
@@ -9,18 +9,14 @@ LIC_FILES_CHKSUM = "file://Copying;md5=5b122a36d0f6dc55279a0ebc69f3c60b \
9 9
10 10
11SRC_URI = "https://www.cpan.org/src/5.0/perl-${PV}.tar.gz;name=perl \ 11SRC_URI = "https://www.cpan.org/src/5.0/perl-${PV}.tar.gz;name=perl \
12 https://github.com/arsv/perl-cross/releases/download/1.3.5/perl-cross-1.3.5.tar.gz;name=perl-cross \
13 file://perl-rdepends.txt \ 12 file://perl-rdepends.txt \
14 file://0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch \
15 file://0001-ExtUtils-MakeMaker-add-LDFLAGS-when-linking-binary-m.patch \ 13 file://0001-ExtUtils-MakeMaker-add-LDFLAGS-when-linking-binary-m.patch \
16 file://0001-Somehow-this-module-breaks-through-the-perl-wrapper-.patch \ 14 file://0001-Somehow-this-module-breaks-through-the-perl-wrapper-.patch \
17 file://errno_ver.diff \ 15 file://errno_ver.diff \
18 file://native-perlinc.patch \ 16 file://native-perlinc.patch \
19 file://0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch \
20 file://perl-dynloader.patch \ 17 file://perl-dynloader.patch \
21 file://0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch \
22 file://0002-Constant-Fix-up-shebang.patch \ 18 file://0002-Constant-Fix-up-shebang.patch \
23 file://determinism.patch \ 19 file://determinism.patch \
24 " 20 "
25SRC_URI_append_class-native = " \ 21SRC_URI_append_class-native = " \
26 file://perl-configpm-switch.patch \ 22 file://perl-configpm-switch.patch \
@@ -30,13 +26,12 @@ SRC_URI_append_class-target = " \
30" 26"
31 27
32SRC_URI[perl.sha256sum] = "03b693901cd8ae807231b1787798cf1f2e0b8a56218d07b7da44f784a7caeb2c" 28SRC_URI[perl.sha256sum] = "03b693901cd8ae807231b1787798cf1f2e0b8a56218d07b7da44f784a7caeb2c"
33SRC_URI[perl-cross.sha256sum] = "91c66f6b2b99fccfd4fee14660b677380b0c98f9456359e91449798c2ad2ef25"
34 29
35S = "${WORKDIR}/perl-${PV}" 30S = "${WORKDIR}/perl-${PV}"
36 31
37inherit upstream-version-is-even update-alternatives 32inherit upstream-version-is-even update-alternatives
38 33
39DEPENDS += "zlib virtual/crypt" 34DEPENDS += "perlcross-native zlib virtual/crypt"
40 35
41PERL_LIB_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}.0" 36PERL_LIB_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}.0"
42 37
@@ -47,12 +42,8 @@ PACKAGECONFIG[gdbm] = ",-Ui_gdbm,gdbm"
47# Don't generate comments in enc2xs output files. They are not reproducible 42# Don't generate comments in enc2xs output files. They are not reproducible
48export ENC2XS_NO_COMMENTS = "1" 43export ENC2XS_NO_COMMENTS = "1"
49 44
50do_unpack_append() { 45do_configure_prepend() {
51 bb.build.exec_func('do_copy_perlcross', d) 46 cp -rfp ${STAGING_DATADIR_NATIVE}/perl-cross/* ${S}
52}
53
54do_copy_perlcross() {
55 cp -rfp ${WORKDIR}/perl-cross*/* ${S}
56} 47}
57 48
58do_configure_class-target() { 49do_configure_class-target() {