aboutsummaryrefslogtreecommitdiffstats
path: root/meta-perl/recipes-core
diff options
context:
space:
mode:
Diffstat (limited to 'meta-perl/recipes-core')
-rw-r--r--meta-perl/recipes-core/images/meta-perl-image-all.bb5
-rw-r--r--meta-perl/recipes-core/images/meta-perl-image-ptest-all.bb25
-rw-r--r--meta-perl/recipes-core/images/meta-perl-image-ptest-fast.bb6
-rw-r--r--meta-perl/recipes-core/images/meta-perl-image-ptest.bb40
-rw-r--r--meta-perl/recipes-core/packagegroups/packagegroup-meta-perl.bb102
5 files changed, 178 insertions, 0 deletions
diff --git a/meta-perl/recipes-core/images/meta-perl-image-all.bb b/meta-perl/recipes-core/images/meta-perl-image-all.bb
new file mode 100644
index 0000000000..c46cba21cd
--- /dev/null
+++ b/meta-perl/recipes-core/images/meta-perl-image-all.bb
@@ -0,0 +1,5 @@
+require recipes-core/images/core-image-base.bb
+
+SUMMARY = "meta-perl build test image"
+
+IMAGE_INSTALL += "packagegroup-meta-perl packagegroup-meta-perl-extended"
diff --git a/meta-perl/recipes-core/images/meta-perl-image-ptest-all.bb b/meta-perl/recipes-core/images/meta-perl-image-ptest-all.bb
new file mode 100644
index 0000000000..9efe5087f0
--- /dev/null
+++ b/meta-perl/recipes-core/images/meta-perl-image-ptest-all.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "Recipe to trigger execution of all meta-perl ptest images."
+HOMEPAGE = "https://www.openembedded.org/"
+
+LICENSE = "MIT"
+
+inherit features_check nopackages
+REQUIRED_DISTRO_FEATURES = "ptest"
+
+require conf/include/ptest-packagelists-meta-perl.inc
+
+# Include the full set of ptests
+PTESTS_META_PERL = "${PTESTS_FAST_META_PERL} ${PTESTS_SLOW_META_PERL} ${PTESTS_PROBLEMS_META_PERL}"
+
+do_testimage[noexec] = "1"
+do_testimage[depends] = "${@' '.join(['meta-perl-image-ptest-'+x+':do_testimage' for x in d.getVar('PTESTS_META_PERL').split()])}"
+
+do_build[depends] = "${@' '.join(['meta-perl-image-ptest-'+x+':do_build' for x in d.getVar('PTESTS_META_PERL').split()])}"
+
+# normally image.bbclass would do this
+EXCLUDE_FROM_WORLD = "1"
+
+python () {
+ if bb.utils.contains('IMAGE_CLASSES', 'testimage', True, False, d):
+ bb.build.addtask("do_testimage", "", "", d)
+}
diff --git a/meta-perl/recipes-core/images/meta-perl-image-ptest-fast.bb b/meta-perl/recipes-core/images/meta-perl-image-ptest-fast.bb
new file mode 100644
index 0000000000..1ac78f30b7
--- /dev/null
+++ b/meta-perl/recipes-core/images/meta-perl-image-ptest-fast.bb
@@ -0,0 +1,6 @@
+require meta-perl-image-ptest-all.bb
+
+DESCRIPTION = "Recipe to trigger execution of all fast meta-perl ptest images."
+
+PTESTS_META_PERL = "${PTESTS_FAST_META_PERL}"
+
diff --git a/meta-perl/recipes-core/images/meta-perl-image-ptest.bb b/meta-perl/recipes-core/images/meta-perl-image-ptest.bb
new file mode 100644
index 0000000000..94d77b97f0
--- /dev/null
+++ b/meta-perl/recipes-core/images/meta-perl-image-ptest.bb
@@ -0,0 +1,40 @@
+inherit features_check
+REQUIRED_DISTRO_FEATURES += "ptest"
+
+SUMMARY = "meta-perl build ptest image"
+
+require recipes-core/images/core-image-minimal.bb
+require conf/include/ptest-packagelists-meta-perl.inc
+
+DESCRIPTION += "Also including the ${MCNAME} ptest package."
+HOMEPAGE = "https://www.openembedded.org/"
+
+PTESTS_META_PERL = "${PTESTS_SLOW_META_PERL} ${PTESTS_FAST_META_PERL} ${PTESTS_PROBLEMS_META_PERL}"
+
+IMAGE_INSTALL:append = " ${MCNAME}-ptest openssh"
+
+BBCLASSEXTEND = "${@' '.join(['mcextend:'+x for x in d.getVar('PTESTS_META_PERL').split()])}"
+
+# The image can be sufficiently large (~1.8GB) that we need to be careful that it fits in a live
+# image (which has a 4GB limit), so nullify the overhead factor (1.3x out of the
+# box) and explicitly add up to 1500MB.
+IMAGE_OVERHEAD_FACTOR = "1.0"
+IMAGE_ROOTFS_EXTRA_SPACE = "324288"
+# If a particular ptest needs more space, it can be customized:
+#IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-<pn> = "1024288"
+
+# ptests need more memory than standard to avoid the OOM killer
+QB_MEM = "-m 1024"
+# If a particular ptest needs more memory, it can be customized:
+#QB_MEM:virtclass-mcextend-<pn> = "-m 4096"
+
+TEST_SUITES = "ping ssh parselogs ptest"
+
+# Sadly at the moment the full set of ptests is not robust enough and sporadically fails in random places
+PTEST_EXPECT_FAILURE = "1"
+
+python () {
+ if not d.getVar("MCNAME"):
+ raise bb.parse.SkipRecipe("No class extension set")
+}
+
diff --git a/meta-perl/recipes-core/packagegroups/packagegroup-meta-perl.bb b/meta-perl/recipes-core/packagegroups/packagegroup-meta-perl.bb
new file mode 100644
index 0000000000..c49b3b5a27
--- /dev/null
+++ b/meta-perl/recipes-core/packagegroups/packagegroup-meta-perl.bb
@@ -0,0 +1,102 @@
+SUMMARY = "Meta-perl packagegroup"
+
+inherit packagegroup
+
+PROVIDES = "${PACKAGES}"
+PACKAGES = "\
+ packagegroup-meta-perl \
+ packagegroup-meta-perl-extended \
+ ${@bb.utils.contains("DISTRO_FEATURES", "ptest", "packagegroup-meta-perl-ptest-packages", "", d)} \
+"
+
+RDEPENDS:packagegroup-meta-perl = "\
+ adduser \
+ libalgorithm-diff-perl \
+ libauthen-sasl-perl \
+ libauthen-radius-perl \
+ libcapture-tiny-perl \
+ libcgi-perl \
+ libcompress-raw-bzip2-perl \
+ libcompress-raw-lzma-perl \
+ libcompress-raw-zlib-perl \
+ libdbd-sqlite-perl \
+ libclass-method-modifiers-perl \
+ libdigest-hmac-perl \
+ libdigest-sha1-perl \
+ libconfig-autoconf-perl \
+ libcrypt-openssl-guess-perl \
+ libcrypt-openssl-random-perl \
+ libcrypt-openssl-rsa-perl \
+ libhtml-parser-perl \
+ libhtml-tree-perl \
+ libhtml-tagset-perl \
+ libimport-into-perl \
+ libio-compress-perl \
+ libio-compress-lzma-perl \
+ libio-socket-ssl-perl \
+ libio-stringy-perl \
+ libipc-signal-perl \
+ libcurses-perl \
+ libmime-charset-perl \
+ libmime-types-perl \
+ libmodule-pluggable-perl \
+ libmodule-runtime-perl \
+ libmodule-build-tiny-perl \
+ libdata-hexdump-perl \
+ libnet-dns-perl \
+ libnet-libidn-perl \
+ libnet-dns-sec-perl \
+ libnet-ldap-perl \
+ libnet-ssleay-perl \
+ libnet-telnet-perl \
+ libproc-waitstat-perl \
+ libdevel-globaldestruction-perl \
+ libenv-perl \
+ libfile-slurp-perl \
+ libfile-slurper-perl \
+ libtext-iconv-perl \
+ libtext-diff-perl \
+ libtext-charwidth-perl \
+ libtext-wrapi18n-perl \
+ libxml-libxml-perl \
+ libxml-filter-buffertext-perl \
+ libxml-sax-writer-perl \
+ libextutils-config-perl \
+ libextutils-cppguess-perl \
+ libextutils-helpers-perl \
+ libextutils-installpaths-perl \
+ libextutils-parsexs-perl \
+ liblocale-gettext-perl \
+ libmoo-perl \
+ librole-tiny-perl \
+ libunix-statgrab \
+ libstrictures-perl \
+ libsub-exporter-progressive-perl \
+ libsub-uplevel-perl \
+ libterm-readkey-perl \
+ libtest-deep-perl \
+ libtest-harness-perl \
+ libtest-nowarnings-perl \
+ libtest-warn-perl \
+ libunicode-linebreak-perl \
+"
+
+RDEPENDS:packagegroup-meta-perl-extended = "\
+ logcheck \
+ mime-construct \
+"
+
+RDEPENDS:packagegroup-meta-perl-ptest-packages = "\
+ libmime-types-perl-ptest \
+ libio-socket-ssl-perl-ptest \
+ libdata-hexdump-perl-ptest \
+ libauthen-sasl-perl-ptest \
+ libnet-dns-perl-ptest \
+ libnet-dns-sec-perl-ptest \
+ libnet-ssleay-perl-ptest \
+ libtest-harness-perl-ptest \
+ libdigest-sha1-perl-ptest \
+ libdigest-hmac-perl-ptest \
+"
+
+EXCLUDE_FROM_WORLD = "1"