Make it so that the default Perl is always called perl5.

- Move Perl's man1 files along with its man3 files.
- Move where Perl installs its modules man1 pages.
- Convert the ports installing man1 pages.
- Make different Perl versions installable at the same time.
  Though you should note that only the default version can be used to
  install Perl modules, and the non default Perl versions cannot use the
  modules installed via ports if they contain .so as they are installed
  in a version specific directory.

Reviewed by:	bapt (the Mk bits)
Exp-run by:	antoine
Sponsored by:	Absolight
Differential Revision:	https://reviews.freebsd.org/D3542
This commit is contained in:
mat
2015-09-14 12:19:48 +00:00
parent cf3c7ca47a
commit 0a3881946e
546 changed files with 3026 additions and 2784 deletions
+6
View File
@@ -10,6 +10,12 @@ in the release notes and/or placed into UPDATING.
All ports committers are allowed to commit to this file.
20150914:
AUTHOR: mat@FreeBSD.org
Introducing the %%PERL5_MAN1%% PLIST_SUB entry, as Perl now installs man1
pages in the same prefix as man3 pages.
20150828:
AUTHOR: mat@FreeBSD.org
+19 -8
View File
@@ -42,12 +42,13 @@ IGNORE= Incorrect 'USES+=perl5:${perl5_ARGS}' perl5 takes no arguments
USE_PERL5?= run build
.if exists(${LOCALBASE}/bin/perl5)
# remove when 5.20 goes away.
.sinclude "${LOCALBASE}/etc/perl5_version"
.if !defined(PERL_VERSION)
PERL_VERSION!= perl -e 'printf "%vd\n", $$^V;'
.endif
.if defined(PERL_VERSION)
PERL5_DEPEND= ${PERL5}
THIS_IS_OLD_PERL= yes
.else
# end of remove
.include "${PORTSDIR}/Mk/bsd.default-versions.mk"
.if ${PERL5_DEFAULT} == 5.16
.include "${PORTSDIR}/lang/perl5.16/version.mk"
@@ -105,6 +106,12 @@ SITE_ARCH_REL?= ${SITE_PERL_REL}/${PERL_ARCH}/${PERL_VER}
SITE_ARCH?= ${LOCALBASE}/${SITE_ARCH_REL}
SITE_MAN3_REL?= ${SITE_PERL_REL}/man/man3
SITE_MAN3?= ${PREFIX}/${SITE_MAN3_REL}
.if defined(THIS_IS_OLD_PERL)
SITE_MAN1_REL?= share/man/man1
.else
SITE_MAN1_REL?= ${SITE_PERL_REL}/man/man1
.endif
SITE_MAN1?= ${PREFIX}/${SITE_MAN1_REL}
PERL5= ${LOCALBASE}/bin/perl${PERL_VERSION}
PERL= ${LOCALBASE}/bin/perl
@@ -165,6 +172,7 @@ _INCLUDE_USES_PERL5_POST_MK= yes
PLIST_SUB+= PERL_VERSION=${PERL_VERSION} \
PERL_VER=${PERL_VER} \
PERL5_MAN1=${SITE_MAN1_REL} \
PERL5_MAN3=${SITE_MAN3_REL} \
SITE_PERL=${SITE_PERL_REL} \
SITE_ARCH=${SITE_ARCH_REL}
@@ -218,19 +226,19 @@ CONFIGURE_ENV+= PERL_MM_USE_DEFAULT="YES"
.endif # configure
.if ${_USE_PERL5:Mextract}
EXTRACT_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT}
EXTRACT_DEPENDS+= ${PERL5_DEPEND}:${PORTSDIR}/lang/${PERL_PORT}
.endif
.if ${_USE_PERL5:Mpatch}
PATCH_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT}
PATCH_DEPENDS+= ${PERL5_DEPEND}:${PORTSDIR}/lang/${PERL_PORT}
.endif
.if ${_USE_PERL5:Mbuild}
BUILD_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT}
BUILD_DEPENDS+= ${PERL5_DEPEND}:${PORTSDIR}/lang/${PERL_PORT}
.endif
.if ${_USE_PERL5:Mrun}
RUN_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT}
RUN_DEPENDS+= ${PERL5_DEPEND}:${PORTSDIR}/lang/${PERL_PORT}
.endif
.if ${_USE_PERL5:Mconfigure}
@@ -238,6 +246,9 @@ CONFIGURE_ARGS+= CC="${CC}" CCFLAGS="${CFLAGS}" PREFIX="${PREFIX}" \
INSTALLPRIVLIB="${PREFIX}/lib" INSTALLARCHLIB="${PREFIX}/lib"
CONFIGURE_SCRIPT?= Makefile.PL
MAN3PREFIX?= ${PREFIX}/${SITE_PERL_REL}
.if !defined(THIS_IS_OLD_PERL)
MAN1PREFIX?= ${PREFIX}/${SITE_PERL_REL}
.endif
.undef HAS_CONFIGURE
.if !target(do-configure)
+10
View File
@@ -23,7 +23,17 @@ FPC_DEFAULT?= 2.6.4
GCC_DEFAULT?= 4.8
LUA_DEFAULT?= 5.2
MYSQL_DEFAULT?= 5.6
.if defined(PACKAGE_BUILDING) || !exists(${LOCALBASE}/bin/perl)
PERL5_DEFAULT?= 5.20
.elif !defined(PERL5_DEFAULT)
# There's no need to replace development versions, like "5.23" with "devel"
# because 1) nobody is supposed to use it outside of poudriere, and 2) it must
# be set manually in /etc/make.conf in the first place, and we're never getting
# in here.
_PERL5_FROM_BIN!= perl -e 'printf "%vd\n", $$^V;'
PERL5_DEFAULT:= ${_PERL5_FROM_BIN:R}
.undef _PERL5_FROM_BIN
.endif
PGSQL_DEFAULT?= 9.3
PHP_DEFAULT?= 5.6
PYTHON_DEFAULT?= 2.7
+26
View File
@@ -5,6 +5,32 @@ they are unavoidable.
You should get into the habit of checking this file for changes each time
you update your ports collection, before attempting any port upgrades.
20150914:
AFFECTS: users of lang/perl5*
AUTHOR: mat@FreeBSD.org
Binary package users can ignore this.
The way lang/perl5* ports install themselves has changed. From now on, only
the default Perl version will install /usr/local/bin/perl.
If you are NOT using the default version of Perl (as of right now, it is
5.20) you MUST add a line setting the version you are using to your
/etc/make.conf:
DEFAULT_VERSIONS+= perl5=5.xx
Especially, after this date, to migrate from one Perl version to the other,
you must first put the DEFAULT_VERSIONS line in your make.conf, and then, for
example, if you want to move from 5.20 to 5.22, do:
pkg set -o lang/perl5.20:lang/perl5.22
portmaster `pkg shlib -qR libperl.so.5.20`
If you do not do that, you will replace your default Perl 5.20 installation
(one that has /usr/local/bin/perl) to an installation that does not have
/usr/local/bin/perl, and it will break everything.
20150908:
AFFECTS: users of print/texlive-base
AUTHOR: hrs@FreeBSD.org
+1 -1
View File
@@ -7,4 +7,4 @@ bin/adsquery
%%PERL5_MAN3%%/Astro::ADS::Query.3.gz
%%PERL5_MAN3%%/Astro::ADS::Result.3.gz
%%PERL5_MAN3%%/Astro::ADS::Result::Paper.3.gz
man/man1/adsquery.1.gz
%%PERL5_MAN1%%/adsquery.1.gz
+1 -1
View File
@@ -2,4 +2,4 @@ bin/stime
%%SITE_ARCH%%/Astro/PAL.pm
%%SITE_ARCH%%/auto/Astro/PAL/PAL.so
%%PERL5_MAN3%%/Astro::PAL.3.gz
man/man1/stime.1.gz
%%PERL5_MAN1%%/stime.1.gz
+1 -1
View File
@@ -2,4 +2,4 @@ bin/simbadc
%%SITE_PERL%%/Astro/SIMBAD/Client.pm
%%SITE_PERL%%/Astro/SIMBAD/Client/WSQueryInterfaceService.pm
%%PERL5_MAN3%%/Astro::SIMBAD::Client.3.gz
man/man1/simbadc.1.gz
%%PERL5_MAN1%%/simbadc.1.gz
+1 -1
View File
@@ -3,4 +3,4 @@ bin/SpaceTrack
%%SITE_PERL%%/Astro/SpaceTrack/BulkData.pod
%%PERL5_MAN3%%/Astro::SpaceTrack.3.gz
%%PERL5_MAN3%%/Astro::SpaceTrack::BulkData.3.gz
man/man1/SpaceTrack.1.gz
%%PERL5_MAN1%%/SpaceTrack.1.gz
+1 -1
View File
@@ -19,4 +19,4 @@ bin/satpass
%%PERL5_MAN3%%/Astro::Coord::ECI::TLE::Iridium.3.gz
%%PERL5_MAN3%%/Astro::Coord::ECI::TLE::Set.3.gz
%%PERL5_MAN3%%/Astro::Coord::ECI::Utils.3.gz
man/man1/satpass.1.gz
%%PERL5_MAN1%%/satpass.1.gz
+9 -9
View File
@@ -6,12 +6,12 @@ bin/movemusic
bin/mp3id
bin/pmv
bin/update-music-symlinks
man/man1/cddbtofilename.1.gz
man/man1/filenametoid3.1.gz
man/man1/freedbtofilename.1.gz
man/man1/id3tofilename.1.gz
man/man1/movemusic.1.gz
man/man1/mp3-archive-tools.1.gz
man/man1/mp3id.1.gz
man/man1/pmv.1.gz
man/man1/update-music-symlinks.1.gz
%%PERL5_MAN1%%/cddbtofilename.1.gz
%%PERL5_MAN1%%/filenametoid3.1.gz
%%PERL5_MAN1%%/freedbtofilename.1.gz
%%PERL5_MAN1%%/id3tofilename.1.gz
%%PERL5_MAN1%%/movemusic.1.gz
%%PERL5_MAN1%%/mp3-archive-tools.1.gz
%%PERL5_MAN1%%/mp3id.1.gz
%%PERL5_MAN1%%/pmv.1.gz
%%PERL5_MAN1%%/update-music-symlinks.1.gz
+3 -3
View File
@@ -18,7 +18,7 @@ etc/mp3lintrc
%%SITE_PERL%%/MP3/Archive/Lint/Tools/Ogg.pm
%%SITE_PERL%%/MP3/Archive/Lint/Tools/Wav.pm
%%PERL5_MAN3%%/mp3lint-tools.3.gz
man/man1/mp3lint.1.gz
man/man1/mp3lintskip.1.gz
man/man1/mp3lintsum.1.gz
%%PERL5_MAN1%%/mp3lint.1.gz
%%PERL5_MAN1%%/mp3lintskip.1.gz
%%PERL5_MAN1%%/mp3lintsum.1.gz
man/man5/mp3lintrc.5.gz
+2 -2
View File
@@ -8,5 +8,5 @@ bin/mpd-rate
%%PERL5_MAN3%%/Audio::MPD::Collection.3.gz
%%PERL5_MAN3%%/Audio::MPD::Playlist.3.gz
%%PERL5_MAN3%%/Audio::MPD::Types.3.gz
man/man1/mpd-dynamic.1.gz
man/man1/mpd-rate.1.gz
%%PERL5_MAN1%%/mpd-dynamic.1.gz
%%PERL5_MAN1%%/mpd-rate.1.gz
+1 -1
View File
@@ -1,4 +1,4 @@
bin/scrobbler-helper
%%SITE_PERL%%/Audio/Scrobbler.pm
%%PERL5_MAN3%%/Audio::Scrobbler.3.gz
man/man1/scrobbler-helper.1.gz
%%PERL5_MAN1%%/scrobbler-helper.1.gz
+2 -2
View File
@@ -9,5 +9,5 @@ bin/mp3find
%%PERL5_MAN3%%/MP3::Find::Base.3.gz
%%PERL5_MAN3%%/MP3::Find::DB.3.gz
%%PERL5_MAN3%%/MP3::Find::Filesystem.3.gz
man/man1/mp3db.1.gz
man/man1/mp3find.1.gz
%%PERL5_MAN1%%/mp3db.1.gz
%%PERL5_MAN1%%/mp3find.1.gz
+3 -3
View File
@@ -35,6 +35,6 @@ bin/mp3info2
%%PERL5_MAN3%%/MP3::Tag::LastResort.3.gz
%%PERL5_MAN3%%/MP3::Tag::ParseData.3.gz
%%PERL5_MAN3%%/Normalize::Text::Music_Fields.3.gz
man/man1/audio_rename.1.gz
man/man1/mp3info2.1.gz
man/man1/typeset_audio_dir.1.gz
%%PERL5_MAN1%%/audio_rename.1.gz
%%PERL5_MAN1%%/mp3info2.1.gz
%%PERL5_MAN1%%/typeset_audio_dir.1.gz
+1 -1
View File
@@ -1,4 +1,4 @@
bin/musicmpdscrobble
%%SITE_PERL%%/Music/Audioscrobbler/MPD.pm
%%PERL5_MAN3%%/Music::Audioscrobbler::MPD.3.gz
man/man1/musicmpdscrobble.1.gz
%%PERL5_MAN1%%/musicmpdscrobble.1.gz
+1 -1
View File
@@ -142,4 +142,4 @@ bin/ace.pl
%%PERL5_MAN3%%/Ace::Sequence::Homol.3.gz
%%PERL5_MAN3%%/Ace::Sequence::Multi.3.gz
%%PERL5_MAN3%%/Ace::Sequence::Transcript.3.gz
man/man1/ace.pl.1.gz
%%PERL5_MAN1%%/ace.pl.1.gz
+1 -1
View File
@@ -9,4 +9,4 @@ bin/gff3_from_fasta
%%PERL5_MAN3%%/Bio::GFF3::LowLevel::Parser::1_0_backcompat.3.gz
%%PERL5_MAN3%%/Bio::GFF3::Transform::FromFasta.3.gz
%%PERL5_MAN3%%/Bio::GFF3::Transform::SyncDirectives.3.gz
man/man1/gff3_from_fasta.1.gz
%%PERL5_MAN1%%/gff3_from_fasta.1.gz
+4 -4
View File
@@ -212,7 +212,7 @@ bin/search_overview.pl
%%PERL5_MAN3%%/Bio::Graphics::Util.3.gz
%%PERL5_MAN3%%/Bio::Graphics::Wiggle.3.gz
%%PERL5_MAN3%%/Bio::Graphics::Wiggle::Loader.3.gz
man/man1/contig_draw.pl.1.gz
man/man1/feature_draw.pl.1.gz
man/man1/frend.pl.1.gz
man/man1/search_overview.pl.1.gz
%%PERL5_MAN1%%/contig_draw.pl.1.gz
%%PERL5_MAN1%%/feature_draw.pl.1.gz
%%PERL5_MAN1%%/frend.pl.1.gz
%%PERL5_MAN1%%/search_overview.pl.1.gz
+3 -3
View File
@@ -57,6 +57,6 @@ bin/nextool.pl
%%PERL5_MAN3%%/Bio::NEXUS::Util::Exceptions.3.gz
%%PERL5_MAN3%%/Bio::NEXUS::Util::Logger.3.gz
%%PERL5_MAN3%%/Bio::NEXUS::WeightSet.3.gz
man/man1/nex2text_tree.pl.1.gz
man/man1/nexplot.pl.1.gz
man/man1/nextool.pl.1.gz
%%PERL5_MAN1%%/nex2text_tree.pl.1.gz
%%PERL5_MAN1%%/nexplot.pl.1.gz
%%PERL5_MAN1%%/nextool.pl.1.gz

Some files were not shown because too many files have changed in this diff Show More