install looking in $WRKDIR/stage/*/site_perl/mach/5/ but */mach/5.20 exists
parv at pair.com
parv at pair.com
Thu Sep 24 14:12:55 UTC 2015
In short, it was operator error.
in message <20150924131433.GA58316 at holstein.holy.cow>,
wrote parv at p thusly...
...
> pkg-static: Unable to access file \
> /misc/work/ports/misc/ports/devel/p5-subversion/work/stage/misc/local/lib/perl5/site_perl/mach/5/SVN/Repos.pm: \
> No such file or directory
...
> So making a symbolic link from ...
>
> $WRKDIR/stage/misc/local/lib/perl5/site_perl/mach/5
>
> ... to the directory actually existing ...
>
> $WRKDIR/stage/misc/local/lib/perl5/site_perl/mach/5.20
>
> ... allows them to be installed but have to do for every one.
I see that */mach/5 path is from SITE_ARCH variable (after reading
pkg-plist) ...
# make -V SITE_ARCH
/misc/local/lib/perl5/site_perl/mach/5
... which in turn is derived SITE_ARCH_REL from from PERL_VER
/misc/ports/Mk/Uses/perl5.mk:# SITE_ARCH - Directory name where arch site specific perl packages go.
/misc/ports/Mk/Uses/perl5.mk:SITE_ARCH_REL?= ${SITE_PERL_REL}/${PERL_ARCH}/${PERL_VER}
/misc/ports/Mk/Uses/perl5.mk:SITE_ARCH?= ${LOCALBASE}/${SITE_ARCH_REL}
/misc/ports/Mk/Uses/perl5.mk:QA_ENV+= SITE_ARCH_REL=${SITE_ARCH_REL} LIBPERL=libperl.so.${PERL_VER}
/misc/ports/Mk/Uses/perl5.mk: SITE_ARCH=${SITE_ARCH_REL}
/misc/ports/Mk/Uses/perl5.mk: --install_path arch="${PREFIX}/${SITE_ARCH_REL}" \
/misc/ports/Mk/Uses/perl5.mk:PACKLIST_DIR?= ${PREFIX}/${SITE_ARCH_REL}/auto
... which produces the "5" ...
# make -V PERL_VER
5
... oh, found the culprit (PERL_VERSION being 5.20 instead of 5.20.3
in /etc/make.conf) after seeing variable substitution ...
Uses/perl5.mk
10 # PERL_VERSION - Full version of perl5 (see below for current value).
12 # PERL_VER - Short version of perl5 (major.minor without patchlevel)
16 # the patch level. E.g., PERL_VERSION=5.14.4 would give
47 .if defined(PERL_VERSION)
63 # Force PERL_PORT here in case two identical PERL_VERSION.
70 PERL_VER?= ${PERL_VERSION:C/\.[0-9]+$//}
... after reading Uses/perl5.mk further followed by
bsd.default-versions.mk, I have removed (commented out) PERL_VERSION &
PERL5_DEFAULT variables from (in) /etc/make.conf. That led to ...
# make -V SITE_ARCH
/misc/local/lib/perl5/site_perl/mach/5.20
WHEEEE!
- parv
--
More information about the freebsd-perl
mailing list