ports/51589: SITE_PERL defined too late in bsd.port.mk
Oliver Eikemeier
eikemeier at fillmore-labs.com
Tue Apr 29 15:00:29 UTC 2003
>Number: 51589
>Category: ports
>Synopsis: SITE_PERL defined too late in bsd.port.mk
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Tue Apr 29 08:00:27 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator: Oliver Eikemeier
>Release: FreeBSD 4.8-STABLE i386
>Organization:
Fillmore Labs - http://www.fillmore-labs.com
>Environment:
System: FreeBSD nuuk.fillmore-labs.com 4.8-STABLE FreeBSD 4.8-STABLE #0: Sun Apr 6 14:21:01 CEST 2003 root at nuuk.fillmore
-labs.com:/usr/obj/usr/src/sys/FILLMORE-LABS i386
>Description:
SITE_PERL is defined in the bsd.port.post.mk section of bsd.port.mk. It should
be available after including bsd.port.pre.mk.
>How-To-Repeat:
install port devel/p5-File-Temp and try the following snippet in a Makefile:
#include <bsd.port.pre.mk>
pre-everything::
.if !exists(${SITE_PERL}/File/Temp.pm)
@${ECHO_CMD} "File::Temp.pm is not installed"
.endif
.if exists(${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/File/Temp.pm)
@${ECHO_CMD} "File::Temp.pm is installed"
.endif
#include <bsd.port.post.mk>
>Fix:
move the definition of SITE_PERL to an earlier part of bsd.port.mk
--- bsd.port.mk.patch begins here ---
--- bsd.port.mk.orig Sun Apr 20 02:05:05 2003
+++ bsd.port.mk Tue Apr 29 16:15:19 2003
@@ -929,6 +929,36 @@
PERL_LEVEL=0
.endif # !defined(PERL_LEVEL) && defined(PERL_VERSION)
+.if ${OSVERSION} >= 500032
+PERL_VERSION?= 5.6.1
+PERL_VER?= 5.6.1
+PERL_ARCH?= mach
+.else
+.if ${OSVERSION} >= 500007
+PERL_VERSION?= 5.6.0
+PERL_VER?= 5.6.0
+PERL_ARCH?= mach
+.else
+.if ${OSVERSION} >= 300000
+PERL_VERSION?= 5.00503
+.else
+PERL_VERSION?= 5.00502
+.endif
+PERL_VER?= 5.005
+PERL_ARCH?= ${ARCH}-freebsd
+.endif
+.endif
+
+SITE_PERL?= ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}
+
+.if exists(/usr/bin/perl5) && ${OSVERSION} >= 300000 && ${OSVERSION} < 500036
+PERL5= /usr/bin/perl${PERL_VERSION}
+PERL= /usr/bin/perl
+.else
+PERL5= ${LOCALBASE}/bin/perl${PERL_VERSION}
+PERL= ${LOCALBASE}/bin/perl
+.endif
+
.if defined(USE_OPENSSL)
.if ${OSVERSION} >= 400014
.if !exists(/usr/lib/libcrypto.so)
@@ -1318,28 +1348,6 @@
.endif
.endif
-.if ${OSVERSION} >= 500032
-PERL_VERSION?= 5.6.1
-PERL_VER?= 5.6.1
-PERL_ARCH?= mach
-.else
-.if ${OSVERSION} >= 500007
-PERL_VERSION?= 5.6.0
-PERL_VER?= 5.6.0
-PERL_ARCH?= mach
-.else
-.if ${OSVERSION} >= 300000
-PERL_VERSION?= 5.00503
-.else
-PERL_VERSION?= 5.00502
-.endif
-PERL_VER?= 5.005
-PERL_ARCH?= ${ARCH}-freebsd
-.endif
-.endif
-
-SITE_PERL?= ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}
-
PLIST_SUB+= PERL_VERSION=${PERL_VERSION} \
PERL_VER=${PERL_VER} \
PERL_ARCH=${PERL_ARCH} \
@@ -1357,11 +1365,7 @@
@${ECHO_CMD} "Error: you don't have the right version of perl in /usr/bin."
@${FALSE}
.endif
-PERL5= /usr/bin/perl${PERL_VERSION}
-PERL= /usr/bin/perl
.else
-PERL5= ${LOCALBASE}/bin/perl${PERL_VERSION}
-PERL= ${LOCALBASE}/bin/perl
.if defined(USE_PERL5) || defined(USE_PERL5_BUILD)
BUILD_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/perl5
.endif
--- bsd.port.mk.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list