Files
haikuports/dev-perl/module_implementation/module_implementation-0.09.recipe
2025-03-14 20:13:54 +01:00

64 lines
1.5 KiB
Bash

SUMMARY="Loads one of several alternate underlying implementations for a module"
DESCRIPTION="This module abstracts out the process of choosing one of several underlying \
implementations for a module. This can be used to provide XS and pure Perl implementations of a \
module, or it could be used to load an implementation for a given OS or any other case of needing \
to provide multiple implementations.
This module is only useful when you know all the implementations ahead of time. If you want to \
load arbitrary implementations then you probably want something like a plugin system, not this \
module."
HOMEPAGE="https://metacpan.org/pod/Module::Implementation"
COPYRIGHT="2014 by Dave Rolsky"
LICENSE="Artistic"
REVISION="1"
SOURCE_URI="https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Module-Implementation-$portVersion.tar.gz"
CHECKSUM_SHA256="c15f1a12f0c2130c9efff3c2e1afe5887b08ccd033bd132186d1e7d5087fd66d"
SOURCE_DIR="Module-Implementation-$portVersion"
ARCHITECTURES="any"
PROVIDES="
module_implementation = $portVersion
"
REQUIRES="
haiku
module_runtime
try_tiny
vendor_perl
"
BUILD_REQUIRES="
haiku_devel
"
BUILD_PREREQUIRES="
cmd:make
cmd:perl
"
TEST_REQUIRES="
module_runtime
test_fatal
test_requires
try_tiny
"
BUILD()
{
perl Makefile.PL PREFIX=$prefix
make
}
INSTALL()
{
make pure_install
# remove architecture-specific files
cd $prefix
rm -r $(perl -V:vendorarch | cut -d\' -f2 | cut -d/ -f5-)
# cut extracts the quoted string and strips the prefix (which is perl's and not ours)
}
TEST()
{
make test
}