# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 # $Id$ PortSystem 1.0 name perl5.16 version 5.16.1 revision 3 set branch [join [lrange [split ${version} .] 0 1] .] categories lang license {Artistic-1 GPL} platforms darwin freebsd linux maintainers nomaintainer description Perl 5.16.x - Practical Extraction and Report Language long_description \ Perl is a general-purpose programming language originally developed \ for text manipulation and now used for a wide range of tasks including \ system administration, web development, network programming, GUI \ development, and more. distname perl-${version} use_bzip2 yes homepage http://www.perl.org/ master_sites http://www.cpan.org/src/5.0/ checksums rmd160 90effd1105fb0595673b24824c760f2c79c4b317 \ sha256 0704b1421fe50015becd32c8b7ed05843e8b6c188a8c16cb0c11d76986375fd0 depends_lib-append port:gdbm patchfiles patch-Configure.diff patch-handy.h.stdbool.diff platform darwin { patchfiles-append patch-hints_darwin.sh.diff ## patchfiles-append patch-hints_darwin.diff \ ## patch-perl.c.diff # Prevent miniperl build from finding libstdcxx (#36438). patchfiles-append patch-Makefile.SH.diff post-patch { reinplace "s|__PREFIX_LIB__|${prefix}/lib|g" ${worksrcpath}/Makefile.SH } } pre-configure { reinplace "s|/opt/local|${prefix}|g" ${worksrcpath}/Configure } configure.ccache no configure.distcc no configure.env LC_ALL=C configure.cmd sh Configure configure.pre_args configure.universal_args-delete --disable-dependency-tracking configure.post_args \ -des \ -Dprefix='${prefix}' \ -Dscriptdir='${prefix}/bin' \ -Dcppflags="\${CPPFLAGS}" \ -Dccflags="\${CFLAGS}" \ -Dldflags="\${LDFLAGS}" \ -Dvendorprefix='${prefix}' \ -Dusemultiplicity=y \ -Dusethreads \ -Duseshrplib \ -D cc=\${CC} \ -D ld=\${CC} \ -D man1ext='1pm' \ -D man3ext='3pm' \ -D man1dir='${prefix}/share/man/man1p' \ -D man3dir='${prefix}/share/man/man3p' \ -D sitebin='${prefix}/libexec/perl${branch}/sitebin' \ -D siteman1dir='${prefix}/share/perl${branch}/siteman/man1' \ -D siteman3dir='${prefix}/share/perl${branch}/siteman/man3' \ -D vendorbin='${prefix}/libexec/perl${branch}' \ -D vendorman1dir='${prefix}/share/perl${branch}/man/man1' \ -D vendorman3dir='${prefix}/share/perl${branch}/man/man3' \ -D pager="/usr/bin/less -sR" \ -D perlpath="${prefix}/bin/perl${branch}" \ -D startperl="#!${prefix}/bin/perl${branch}" # Allow perl to find p5-* ports installed by previous (minor) versions set platsuffix "" if {${os.platform} eq "darwin"} { set platsuffix "-2level" } configure.args-append "-D inc_version_list=\"5.16.0/${os.platform}-thread-multi${platsuffix} 5.16.0 \"" if {[variant_isset universal]} { post-configure { system "cd ${worksrcpath} && ed - ${worksrcpath}/config.h < ${filespath}/config.h.ed" } } post-build { reinplace -E {s|-arch [a-z0-9_]+||g} \ ${worksrcpath}/lib/Config_heavy.pl } test.run yes variant dtrace description {Build with DTrace probes} { configure.args-append -Dusedtrace } post-destroot { # avoid conflicting with other perl versions # perl5 creates unversioned symlinks delete ${destroot}${prefix}/bin/perl foreach binFile [glob -directory "${destroot}${prefix}/bin" *] { if {$binFile != "${destroot}${prefix}/bin/perl${version}"} { move ${binFile} ${binFile}-${branch} } } move ${destroot}${prefix}/bin/perl${version} ${destroot}${prefix}/bin/${name} ln -s ${name} ${destroot}${prefix}/bin/perl${version} foreach man1File [glob -directory "${destroot}${prefix}/share/man/man1p" *] { regexp (.*)(\.1.*) ${man1File} -> program suffix move ${man1File} ${program}-${branch}${suffix} } foreach man3File [glob -directory "${destroot}${prefix}/share/man/man3p" *] { regexp (.*)(\.3.*) ${man3File} -> program suffix move ${man3File} ${program}-${branch}${suffix} } } ## livecheck.type regex ## livecheck.url http://www.cpan.org/src ## livecheck.regex latest_[join [lrange [split ${version} .] 0 1] .]_is_(\\d+(?:\\.\\d+)*) livecheck.type regex livecheck.url http://www.cpan.org/src livecheck.regex {perl-(5\.16\.\d)\.}