summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/perl
AgeCommit message (Collapse)Author
2022-06-17liberror-perl: Update sstate/equiv versions to clean cacheRichard Purdie
There are cached reproducibility issues on the autobuilder due to the PRServ sstate checksum issues, flush the bad data out the system by bumping the versions. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit b12e6cfe3bb34e426c8bb74183d041948cb2ed89) Signed-off-by: Steve Sakoman <steve@sakoman.com>
2022-06-09perl: Add dependency on make-native to avoid race issuesRichard Purdie
Make 4.1 has race issues with double colon usage in makefiles which are common in MakeMaker generated code in perl. Add a dependency on make-native to avoid this as it is relaitvely low overhead. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 692b7c518637c77804caf7b3cfc60a83afa2e4f4) Signed-off-by: Steve Sakoman <steve@sakoman.com>
2022-06-06perl: Fix build with gcc-12Mingli Yu
Fix the build failure when debug build is enabled. Add DEBUG_BUILD = "1" in conf/local.conf. $ bitbake perl | In function 'dynprep', inlined from 'S_sortsv_flags_impl' at pp_sort.c:358:20, inlined from 'sortsv_amagic_i_ncmp' at pp_sort.c:572:5: | pp_sort.c:1232:1: error: inlining failed in call to 'always_inline' 'S_amagic_i_ncmp': function not considered for inlining | 1232 | S_amagic_i_ncmp(pTHX_ SV *const a, SV *const b) Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 880296e68cfd92cfd4c9474972c8d8e6f21a2a40) Signed-off-by: Steve Sakoman <steve@sakoman.com>
2022-03-26perl: Add missing RDEPENDSRichard Purdie
This allows quilt-ptest to work in an otherwise bare image. Without this there are broken modules. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2022-03-20perl: update 5.34.0 -> 5.34.1Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-20perl-cross: update 1.3.6 -> 1.3.7Alexander Kanavin
Drop upstreamed patches. 0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch is replaced with a tweak to configure parameters. Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-20perl: generate alternative link for streamzipSakib Sajal
streamzip is also provided by io-compress-perl, so add an alternative link for streamzip. Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2022-03-02perl: Makefile.PL: Fix _PATH_LOG for deterministicRobert Yang
It checks host's path such as /dev/log and uses it, this doesn't make sense for cross build, and it causes undeterministic, for example, the contianer os usually doesn't have /dev/log which leads to a different build result since other host usually has /dev/log, so make it always use the default value to fix the issue. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21libxml-parser-perl: Add missing RDEPENDSRichard Purdie
Running the ptest package in an image alone highlighted missing module dependencies. Add them to fix those errors. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-21perl: Improve and update module RPDEPENDSRichard Purdie
The perl module RDEPENDS needed refreshing so I updated it with the script. I also found a ton of issues with missing test2 module dependencies so I've tweaked the generator script to improve those. For some reason they were previously excluded but I can't see anything wrong with the generated dependencies so I've added them. A number of manual dependencies were still needed in addition. I did notice an issue with trailing ")" characters so the sed is updated to handle that (it did already handle "("). This fixes issues seen in the dependecies for libxml-parser-perl's ptest package. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-20meta/meta-selftest/meta-skeleton: Update LICENSE variable to use SPDX ↵Richard Purdie
license identifiers An automated conversion using scripts/contrib/convert-spdx-licenses.py to convert to use the standard SPDX license identifiers. Two recipes in meta-selftest were not converted as they're that way specifically for testing. A change in linux-firmware was also skipped and may need a more manual tweak. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-07perl: Enable threadingSaul Wold
When the tranisiton to perl-cross occured, the threading define seems to have been missed. The perl tests for threading where simply skipped, so there was no direct failures. This was verified by running perl ptest before and after the change to see PASS vs SKIP results of threaded related tests. NOTE: Perl officially discourges the use of threads, so this functionality maybe depercated in the future [0][1] v2: adds the usethreads to native and nativesdk. This was tested by builing postresql and rrdtool which use perl and automake. [0] https://perldoc.perl.org/5.34.0-RC2/threads#WARNING [1] https://perldoc.perl.org/perlpolicy#discouraged Signed-off-by: Saul Wold <saul.wold@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-06perl: replace a patch with a config optionAlexander Kanavin
Instead of patching in LDFLAGS into makefiles, simply append them to 'lddlflags' (perl's keyword for 'linker flags'). See here for upstream discussions: https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/pull/406 https://github.com/arsv/perl-cross/pull/124 Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-29perl: submitted patch upstreamAlexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-21patches: correct whitespace/spelling for Upstream-Status tagsAlexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-05perl: backport gdbm 1.2x compatibility fixesAlexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-11perl: do not build berkeley db module by defaultAlexander Kanavin
Bdb is unmaintained and altogether obsolete, the less dependencies we have on it, the better. This leaves only apt (specifically, apt-ftparchive) in core as a bdb consumer, sadly it has a hard dependency that isn't easy to patch out. Maybe apt upstream will get to it at some point. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-04sstatesig: Add processing for full build paths in sysroot filesRichard Purdie
Some files in the populate_sysroot tasks have hardcoded paths in them, particularly if they are postinst-useradd- files or crossscripts. Add some filtering logic to remove these paths. This means that the hashequiv "outhash" matches correcting in more cases allowing for better build artefact reuse. To make this work a new variable is added SSTATE_HASHEQUIV_FILEMAP which maps file globbing to replacement patterns (paths or regex) on a per sstate task basis. It is hoped this shouldn't be needed in many cases. We are in the process to developing QA tests which will better detect issues in this area to allow optimal sstate reuse. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-09-11perl: fix CVE-2021-36770Kai Kang
Backport patch to fix CVE-2021-36770. And drop the section of code which updates version. CVE: CVE-2021-36770 Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-13perl: do_create_rdepends_inc override syntaxTim Orling
The do_create_rdepends_inc function is used to recreate the perl-rdepends.txt file. Update RDEPENDS_ to RDEPENDS: for the new override syntax. Signed-off-by: Tim Orling <timothy.t.orling@intel.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-30Convert to new override syntaxRichard Purdie
This is the result of automated script conversion: scripts/contrib/convert-overrides.py <oe-core directory> converting the metadata to use ":" as the override character instead of "_". Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-07perl: correct libpth and glibpthMingli Yu
Previouly there is a logic as below used to set libpth in config.sh. libpth='@LIBDIR@ @BASELIBDIR@' But after the below commits introduced, the above logic is dropped. 52f2828314 perl: add a version that builds the recipe using perl-cross, and update to 5.28.1 68552c3532 perl: remove the previous version of the recipe So correct the value of libpth and glibpth to add the dropped logic back to avoid confusing. Before the patch(on 64bits system): # perl -V:libpth libpth='/usr/lib /lib'; After the patch(on 64bits system): # perl -V:libpth libpth='/usr/lib64 /lib64'; Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-06-06perl: update 5.32.1 -> 5.34.0Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-06-06perl: split perl-cross into its own recipeAlexander Kanavin
As perl and perl-cross need to be updated (and patches rebased) in lockstep, devtool upgrade (and therefore AUH) can't cope with it. Manually updating is still possible, but painful. Split determinism.patch into perl and perl-cross parts, move the rest of the perl-cross patches. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-28libtest-needs-perl: upgrade 0.002006 -> 0.002009zhengruoqin
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-05-06Revert "perl: fix startperl configuration option for perl-native"Richard Purdie
This reverts commit f2d1523b19cb066a4a06609f036822fe4a8b43f0. We've reports of a number of failures from this, it causes pod2man to reference full paths to perl rather than nativeperl from the environment. I've also seen this issue locally now. Revert until we can find a solution which works for everyone. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-04-23perl: fix startperl configuration option for perl-nativePaulo Cesar Zaneti
Unlike vanilla Perl "Configure" script, perl-cross "configure" does not derive "startperl" from "bin". It instead derives from "perlpath". This patch aims to fix "startperl" configuration option for perl-native by correctly setting "perlpath" on perl-cross "configure" script. It also changes do_install_append_class-native task to comply with cpan_do_install task. Signed-off-by: Paulo Cesar Zaneti <paulo.zaneti@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-04-05perl: fix creation and generate new perl-rdepends.txtAwais Belal
The creation of perl-rdepends.txt simply copied over the generated list (perl-rdepends.generated) to perl-rdepends.txt while missing out the manual dependencies placed in perl-rdepends.inc. This caused missing runtime dependencies. Additionally, the mechanism always appended which then produced duplicated lines in perl-rdepends.txt if the creation function is run multiple times. We now concatenate both the .inc and .generated to the final .txt so manual and generated both types of dependencies make it to the final configuration. A new perl-rdepends.txt is then generated with these fixes. Signed-off-by: Awais Belal <awais_belal@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-04-05perl: allow empty lines and comments in perl-rdepends.txtAwais Belal
With this change the rdepends file can now have empty lines and comment lines. The perl-rdepends.txt generation will be fixed with further commits to leverage this change. Signed-off-by: Awais Belal <awais_belal@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-20liburi-perl: upgrade 1.74 -> 5.08zhengruoqin
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-02perl: update 5.32.0 -> 5.32.1Alexander Kanavin
Drop perl-cross-makefile.patch as it is merged upstream. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-26meta/recipes-devtools: Add HOMEPAGE / DESCRIPTIONDorinda
Added HOMEPAGE and DESCRIPTION for recipes with missing decriptions or homepage [YOCTO #13471] Signed-off-by: Dorinda Bassey <dorindabassey@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-12-15perl: fix installation failure because of shell issueDmitry Baryshkov
On one of my buildservers I noticed perl do_install failing with the following message: | rm: cannot remove '<OEROOT>/tmp-rpb-glibc/work/armv8-2a-linaro-linux/perl/5.32.0-r0/image//usr/lib/perl5/5.32.0/*/CORE/libperl.so': No such file or directory I tracked this down to shell being dash rather than bash not being able to expand this glob in the middle of the filename. So replace the glob expansion with the simpler one which works in all cases. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-08-13perl: Add check for non-arch Storable.pm fileJoshua Watt
Under unknown conditions, Storable.pm will be placed in the base library directory instead of under the arch specific one. This causes build issues, see https://bugzilla.yoctoproject.org/show_bug.cgi?id=13946. To try and catch this happening, add an explicit check for the bad file existing and fail the build if it is found. [YOCTO #13946] Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-07-27perl: Avoid race continually rebuilding miniperlRichard Purdie
When we run "make install" we notice miniperl rebuilding multiple times. Usually this is harmless however sometimes race issues occur such as miniperl not being executable. The issue is that crosspatch is a phony target so it always rebuilds. Adding this as a dependency of miniperl means miniperl always rebuilds too. Avoid this by injecting a direct dependency avoiding the phony target. miniperl is then only rebuilt when its input changes as desired. Patch submitted to upstream perl-cross. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-28perl: update 5.30.2 -> 5.32.0Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-24recipes: Fix Upstream-Status Accepted -> BackportRichard Purdie
It helps our stats tracking to use Backport consitently, it mreans the same thing as Accepted in pretty much all cases. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-17perl: use relative paths in the perl wrapperSamuli Piippo
Use SDKPATHNATIVE so that the perl wrapper for the nativesdk can be created using relative paths and without dependency to the environment variables. Signed-off-by: Samuli Piippo <samuli.piippo@qt.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-17perl: Fix host specific modules problemsRichard Purdie
We were seeing a ton of empty perl modules being created such as "perl-module-x86-64-linux-encoding" where the name would include ${TARGET_ARCH}-linux. These files were already being filtered in an earlier do_split_packages() expression so exclude them from the latter one to remove the pointless empty modules in PACKAGES. This doesn't explain why some were not deterministic but will recude the do_package execution time and clean up the build directories at the very least. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-05-27multilib/recipes: Use new RecipePostKeyExpansion eventRichard Purdie
There are issues with multilib due to the ordering of events where some functions see the remapped multilib dependencies and some do not. A significant problem is that the multilib class needs to make some changes before key expansion and some afterwards but by using existing event handlers, some code sees things in a partially translated state, leading to bugs. This patch changes things to use a new event handler from bitbake which makes the ordering of the changes explcit. The challenge in doing this is that it breaks some existing anonymous python and dyanmic assignments. In some cases these used to be translated and no longer are, meaning MLPREFIX has to be added. In some cases these are now translated and the MLPREFIX can be removed. This change does now make it very clear when MLPREFIX is required and when it is not, its just the migration path which is harder. The patch changes the small number of cases where fixes are needed. In particular, where a variable like RDEPENDS is conditionally extended (e.g. with an override), MLPREFIX is now required. This patch also reverts: base: Revert 'base.bbclass: considering multilib when setting LICENSE_EXCLUSION' This reverts 6597130256a1609c3e05ec5891aceaf549c37985 as the changes to multilib datastore handling mean its no longer necessary. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-04-29perl: update to 5.30.2Alexander Kanavin
racefix.patch was merged to perl-cross determinism.patch was partially merged to perl-cross 0001-tests-adjust-to-correctly-exclude-unbuilt-extensions.patch is no longer needed as issue is addressed upstream. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-04-25perl: Add missing dependency for tie-hash on carp.Drew Moseley
Signed-off-by: Drew Moseley <drew.moseley@northern.tech> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-03-06libmodule-build-perl: make it reproducibleAlexander Kanavin
Particularly, delete html docs as they have sysroot paths in them, and adjust build configuration to not refer to host paths either. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-29libmodule-build-perl: upgrade 0.4229 -> 0.4231Tim Orling
Upstream release notes: " 0.4231 - Wed Jan 29 08:47:56 CET 2020 - Released 0.42_30 without code changes 0.42_30 - Wed Jul 31 13:15:39 CEST 2019 - Add dependency on ExtUtils::PL2Bat " Add ptest RDEPENDS: - ExtUtils::Command::MM for t/compat.t - gcc, make didn't seem like enough for ptest, replace with packagegroup-core-buildessential which definitely works - perl-dev for EXTERN.h in t/xs.t Add INSANE_SKIP dev-deps for the -ptest package because of perl-dev Five tests from t/help.t are skipped because they are TODO t/par.t is skipped because PAR::Dist (0.17+) is not present t/ppm.t is skipped because "HTML support not installed" All other tests pass. Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-28perl: fix lib/warnings test on core-image-satoMingde (Matthew) Zeng
Fixes [YOCTO #13296] The lib/warnings test fails on certain images such as core-image-sato. The upstream has already fixed this issue, thus submitting the relevent backport patch. Signed-off-by: Matthew Zeng <matthew.zeng@windriver.com> -- Mingde (Matthew) Zeng Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-21liberror-perl: upgrade 0.17028 -> 0.17029Tim Orling
Upstream release notes: " 0.17029 2020-01-28 - Rebuild for order of 'NAME' and 'VERSION' sections in the generated POD documentation (see 0.001004 in https://metacpan.org/changes/distribution/Pod-Weaver-PluginBundle-SHLOMIF ). - VERSION used to appear before NAME. " Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-19perl: Fix makefile race causing configuration differencesRichard Purdie
Add a missing makefile dependency which can cause differences in configuration (submitted upstream). [YOCTO #13800] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-18perl: Fix encode module reproducibility issuesRichard Purdie
The code is encoding host compiler parameters into target builds. Avoid this for our target builds. This should resolve builds which aren't reproducible between hosts with different compilers. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08perl: Fix various reproducibile build issuesRichard Purdie
Add a patch which handles the following issues: a) Remove the \n from configure_attr.sh since it gets quoted differently depending on whether the shell is bash or dash which can cause the test result to be incorrect. Reported upstream: https://github.com/arsv/perl-cross/issues/87 b) Sort the order of the module lists from configure_mods.sh since otherwise the result isn't the same leading to makefile differences. Reported upstream: https://github.com/arsv/perl-cross/issues/88 c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst there for good measure) This needs to go to upstream perl (not done) d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash and "" with dash Reported upstream: https://github.com/arsv/perl-cross/issues/87 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-08perl: do not install files that contain build host specific dataAlexander Kanavin
This was breaking reproducibility, and the files aren't needed on target. [YOCTO #13772] Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>