diff options
author | mat <mat@FreeBSD.org> | 2018-06-29 22:08:40 +0800 |
---|---|---|
committer | mat <mat@FreeBSD.org> | 2018-06-29 22:08:40 +0800 |
commit | d3f6fd521b9b0b05b0adb4e5b5a582fc71009a18 (patch) | |
tree | c1467269253d81a9168ba118ea8a36107753f0e5 /lang | |
parent | 318ecffd57a0a2878a3118328546ac25c5905663 (diff) | |
download | freebsd-ports-gnome-d3f6fd521b9b0b05b0adb4e5b5a582fc71009a18.tar.gz freebsd-ports-gnome-d3f6fd521b9b0b05b0adb4e5b5a582fc71009a18.tar.zst freebsd-ports-gnome-d3f6fd521b9b0b05b0adb4e5b5a582fc71009a18.zip |
Make a note about why this hack is required.
Here is the story:
- Default Perl is 5.24.
- You install stuff, and have Perl 5.24.
- The default Perl is changed to 5.26 because it was time.
- You do not really follow those things and are not using pkg (and
possibly poudriere) to maintain your /usr/local and you run
portmaster to update what needs to be updated.
- As you did not set anything, your Perl default is still 5.24 because
it is the installed /usr/local/bin/perl.
- Turns out that there has been a new version of lang/perl5.24 in the
mean time, and portmaster updates it. Keep in mind that the only
thing that makes 5.24 the default is that it is the installed version
you have. If you did not have it installed, the default would be
5.26.
- portmaster builds the new perl 5.24, and before it installs it, it
needs to remove the old version.
- now, you do not have any Perl installed, so the default falls back to
5.26.
- portmaster installs perl 5.24 it just built, but as it is not the
default any pore, it will not install /usr/local/bin/perl, and
everything using Perl on your system is toast, you spend countless
hours not understanding wtf happened. You end up rebuilding
everything with 5.26.
PR: 227356
Sponsored by: Absolight
Diffstat (limited to 'lang')
-rw-r--r-- | lang/perl5-devel/Makefile | 2 | ||||
-rw-r--r-- | lang/perl5.24/Makefile | 2 | ||||
-rw-r--r-- | lang/perl5.26/Makefile | 2 | ||||
-rw-r--r-- | lang/perl5.28/Makefile | 2 |
4 files changed, 8 insertions, 0 deletions
diff --git a/lang/perl5-devel/Makefile b/lang/perl5-devel/Makefile index e6d5fd14c6b1..36c901c96cf9 100644 --- a/lang/perl5-devel/Makefile +++ b/lang/perl5-devel/Makefile @@ -184,6 +184,8 @@ PLIST_SUB+= PERL_VERSION=${PERL_VERSION} \ # XXX Remove and change to PERL_VERSION in the plist. PLIST_SUB+= LIBPERL_VER=${LIBPERL_VER} +# Why this is required is explained in: +# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227356#c5 _PERL5_DEFAULT_FILE= /tmp/PERL5_DEFAULT # Get the default version, and possibly, overwrite it. diff --git a/lang/perl5.24/Makefile b/lang/perl5.24/Makefile index fbcf55ae7e5b..b3bad6f8d81d 100644 --- a/lang/perl5.24/Makefile +++ b/lang/perl5.24/Makefile @@ -158,6 +158,8 @@ PLIST_SUB+= PERL_VERSION=${PERL_VERSION} \ PKGNAMESUFFIX=${PKGNAMESUFFIX} \ ARCH_LIB=${_ARCH_LIB} +# Why this is required is explained in: +# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227356#c5 _PERL5_DEFAULT_FILE= /tmp/PERL5_DEFAULT # Get the default version, and possibly, overwrite it. diff --git a/lang/perl5.26/Makefile b/lang/perl5.26/Makefile index 75a3d2832daa..aa6455a84902 100644 --- a/lang/perl5.26/Makefile +++ b/lang/perl5.26/Makefile @@ -159,6 +159,8 @@ PLIST_SUB+= PERL_VERSION=${PERL_VERSION} \ PKGNAMESUFFIX=${PKGNAMESUFFIX} \ ARCH_LIB=${_ARCH_LIB} +# Why this is required is explained in: +# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227356#c5 _PERL5_DEFAULT_FILE= /tmp/PERL5_DEFAULT # Get the default version, and possibly, overwrite it. diff --git a/lang/perl5.28/Makefile b/lang/perl5.28/Makefile index dc7b42745676..c9e1f0d83d41 100644 --- a/lang/perl5.28/Makefile +++ b/lang/perl5.28/Makefile @@ -160,6 +160,8 @@ PLIST_SUB+= PERL_VERSION=${PERL_VERSION} \ PKGNAMESUFFIX=${PKGNAMESUFFIX} \ ARCH_LIB=${_ARCH_LIB} +# Why this is required is explained in: +# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227356#c5 _PERL5_DEFAULT_FILE= /tmp/PERL5_DEFAULT # Get the default version, and possibly, overwrite it. |