xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-devtools/perl/libmodule-build-perl_0.4231.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1SUMMARY = "Module::Build - Build and install Perl modules"
2DESCRIPTION = "Many Perl distributions use a Build.PL file instead of a \
3Makefile.PL file to drive distribution configuration, build, test and \
4installation. Traditionally, Build.PL uses Module::Build as the underlying \
5build system. This module provides a simple, lightweight, drop-in replacement. \
6Whereas Module::Build has over 6,700 lines of code; this module has less than \
7120, yet supports the features needed by most distributions."
8
9SECTION = "libs"
10
11HOMEPAGE = "https://metacpan.org/release/Module-Build"
12
13LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
14LIC_FILES_CHKSUM = "file://README;beginline=949;endline=954;md5=624c06db56a2af4d70cf9edc29fcae1b"
15
16SRC_URI = "${CPAN_MIRROR}/authors/id/L/LE/LEONT/Module-Build-${PV}.tar.gz \
17           file://run-ptest \
18           "
19SRC_URI[md5sum] = "066b193e461d7dfe1eca17a139353001"
20SRC_URI[sha256sum] = "7e0f4c692c1740c1ac84ea14d7ea3d8bc798b2fb26c09877229e04f430b2b717"
21
22S = "${WORKDIR}/Module-Build-${PV}"
23
24inherit cpan_build ptest-perl
25
26# From:
27# https://github.com/rehsack/meta-cpan/blob/master/recipes-devel/module-build-perl/module-build-perl_0.4216.bb
28#
29do_patch_module_build () {
30    cd ${S}
31    sed -i -e 's,my $interpreter = $self->{properties}{perl};,my $interpreter = "${bindir}/perl";,g' lib/Module/Build/Base.pm
32}
33
34do_patch[postfuncs] += "do_patch_module_build"
35
36EXTRA_CPAN_BUILD_FLAGS = "--create_packlist=0"
37
38do_install:append () {
39        rm -rf ${D}${docdir}/perl/html
40        sed -i "s:^#!.*:#!/usr/bin/env perl:" ${D}${bindir}/config_data
41}
42
43do_install_ptest() {
44	cp -r ${B}/inc ${D}${PTEST_PATH}
45	cp -r ${B}/blib ${D}${PTEST_PATH}
46	cp -r ${B}/_build ${D}${PTEST_PATH}
47	cp -r ${B}/lib ${D}${PTEST_PATH}
48	chown -R root:root ${D}${PTEST_PATH}
49	sed -i -e "s,'perl' => .*,'perl' => '/usr/bin/perl'\,,g" \
50               -e "s,${STAGING_BINDIR_NATIVE}/perl-native/\.\.,${bindir}/,g" \
51               -e "s,${S},,g" \
52               -e "s,${D},,g" \
53               ${D}${PTEST_PATH}/_build/build_params \
54               ${D}${PTEST_PATH}/_build/runtime_params
55        rm -rf ${D}${PTEST_PATH}/blib/libhtml/site/lib/Module/
56        rm -rf ${D}${PTEST_PATH}/_build/magicnum
57}
58
59RDEPENDS:${PN} += " \
60    perl-module-carp \
61    perl-module-cpan \
62    perl-module-config \
63    perl-module-cwd \
64    perl-module-data-dumper \
65    perl-module-encode \
66    perl-module-extutils-cbuilder \
67    perl-module-extutils-command \
68    perl-module-extutils-install \
69    perl-module-extutils-installed \
70    perl-module-extutils-mkbootstrap \
71    perl-module-extutils-packlist \
72    perl-module-extutils-parsexs \
73    perl-module-file-basename \
74    perl-module-file-compare \
75    perl-module-file-copy \
76    perl-module-file-find \
77    perl-module-file-glob \
78    perl-module-file-path \
79    perl-module-file-spec \
80    perl-module-file-spec-functions \
81    perl-module-getopt-long \
82    perl-module-metadata \
83    perl-module-perl-ostype \
84    perl-module-pod-man \
85    perl-module-tap-harness \
86    perl-module-text-abbrev \
87    perl-module-text-parsewords \
88    perl-module-utf8 \
89"
90
91RDEPENDS:${PN}-ptest += " \
92    packagegroup-core-buildessential \
93    perl-dev \
94    perl-module-blib \
95    perl-module-extutils-command-mm \
96    perl-module-file-temp \
97    perl-module-lib \
98    perl-module-perlio \
99    perl-module-perlio-encoding \
100    perl-module-pod-text \
101    perl-module-tap-harness-env \
102    perl-module-tap-parser \
103    perl-module-tap-parser-scheduler \
104    perl-module-test-harness \
105    perl-module-test-more \
106"
107
108RPROVIDES:${PN} += "\
109    libmodule-build-base-perl \
110    libmodule-build-compat-perl \
111    libmodule-build-config-perl \
112    libmodule-build-cookbook-perl \
113    libmodule-build-dumper-perl \
114    libmodule-build-notes-perl \
115    libmodule-build-ppmaker-perl \
116    libmodule-build-platform-default-perl \
117    libmodule-build-platform-unix-perl \
118    libmodule-build-podparser-perl \
119"
120
121# t/xs.t RDEPENDS on "EXTERN.h" provided by perl-dev
122INSANE_SKIP:${PN}-ptest = "dev-deps"
123
124BBCLASSEXTEND = "native"
125