From 354163db5588d87941f53a2763be62b2430cc1fc Mon Sep 17 00:00:00 2001 From: Mingli Yu Date: Wed, 28 Jul 2021 13:39:59 +0800 Subject: perlcross: not break build if already patched Currently the build will break if the patch already applied as the return value of "test ! -f $@" is not 0, so make sure to return 0 if the patch already applied. Fixes: $ bitbake perl-native Make a change as below $ git diff diff --git a/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb b/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb index b77bbd1fd4..4c5e35ab80 100644 --- a/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb +++ b/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb @@ -33,6 +33,7 @@ do_compile () { do_install_class-native() { mkdir -p ${D}/${datadir}/perl-cross/ cp -rf ${S}/* ${D}/${datadir}/perl-cross/ + echo "test" > ${D}/${datadir}/perl-cross/testfile } $ bitbake perl-native NOTE: make -j 40 make crosspatch make[1]: Entering directory '/build/tmp-glibc/work/x86_64-linux/perl-native/5.34.0-r0/perl-5.34.0' test ! -f cnf/diffs/perl5-5.34.0/posix-makefile.applied && (patch -p1 -i cnf/diffs/perl5-5.34.0/posix-makefile.patch && touch cnf/diffs/perl5-5.34.0/posix-makefile.applied) test ! -f cnf/diffs/perl5-5.34.0/dynaloader.applied && (patch -p1 -i cnf/diffs/perl5-5.34.0/dynaloader.patch && touch cnf/diffs/perl5-5.34.0/dynaloader.applied) make[1]: *** [Makefile:64: cnf/diffs/perl5-5.34.0/posix-makefile.applied] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: *** [Makefile:64: cnf/diffs/perl5-5.34.0/dynaloader.applied] Error 1 make[1]: Leaving directory '/build/tmp-glibc/work/x86_64-linux/perl-native/5.34.0-r0/perl-5.34.0' make: *** [Makefile:78: all] Error 2 Signed-off-by: Mingli Yu Signed-off-by: Richard Purdie --- .../files/0001-Makefile-check-the-file-if-patched-or-not.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'meta') diff --git a/meta/recipes-devtools/perl-cross/files/0001-Makefile-check-the-file-if-patched-or-not.patch b/meta/recipes-devtools/perl-cross/files/0001-Makefile-check-the-file-if-patched-or-not.patch index fb7b287599..8c8f3b717c 100644 --- a/meta/recipes-devtools/perl-cross/files/0001-Makefile-check-the-file-if-patched-or-not.patch +++ b/meta/recipes-devtools/perl-cross/files/0001-Makefile-check-the-file-if-patched-or-not.patch @@ -22,7 +22,7 @@ index f4a26f5..7bc748e 100644 # and if that fails, reaching for the source tarball is the safest option. $(CROSSPATCHED): %.applied: %.patch - patch -p1 -i $< && touch $@ -+ test ! -f $@ && (patch -p1 -i $< && touch $@) ++ test ! -f $@ && (patch -p1 -i $< && touch $@) || echo "$@ exist" # ---[ common ]----------------------------------------------------------------- -- cgit 1.2.3-korg