Date: Mon, 01 Mar 2010 18:19:36 +0000 From: Matthew Seaman <m.seaman@infracaninophile.co.uk> To: "Randal L. Schwartz" <merlyn@stonehenge.com> Cc: freebsd-questions@freebsd.org Subject: Re: how do I tell ports that perl5.8 should never be installed? Message-ID: <4B8C0538.3090309@infracaninophile.co.uk> In-Reply-To: <86pr3ohs9f.fsf@blue.stonehenge.com> References: <86zl2tkrrv.fsf@blue.stonehenge.com> <6201873e1002281349n2bcfd16dte6fdce53cd14c1db@mail.gmail.com> <86iq9hkoxf.fsf@blue.stonehenge.com> <6201873e1002281738o35444a7ahcc184951f712f0a7@mail.gmail.com> <86ocj8kee0.fsf@blue.stonehenge.com> <6201873e1002281742i687c2d41y44e3e0f97f35166f@mail.gmail.com> <86k4twke6h.fsf@blue.stonehenge.com> <4B8B8EF4.9040806@infracaninophile.co.uk> <86pr3ohs9f.fsf@blue.stonehenge.com>
next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 01/03/2010 17:21:48, Randal L. Schwartz wrote: >>>>>> "Matthew" == Matthew Seaman <m.seaman@infracaninophile.co.uk> writes: > > Matthew> For best results, install from ports rather than packages. If it's > Matthew> pure-perl code, then this should be hardly more onerous than installing > Matthew> a compiled package. XS code however will chew up some CPU cycles. > > I don't mind installing from ports once I've been notified that the package > won't work because it wants perl5.8. > > What I want is a way to tell the port/package system that perl5.8 > doesn't exist so that it *will* fail. > > How do I do that? As far as I know, there isn't an official way to do this. What you want sounds like a useful addition to the base system to me. You could do it in a fairly gross hacky way, like the following. This is entirly untested, might not work at all and will certainly be at the cost of some alarming error messages: # mkdir -p /var/db/pkg/perl-5.8.9_3 # touch /var/db/pkg/perl-5.8.9_3/+IGNOREME # chflags -R noschg /var/db/pkg/perl-5.8.9_3 Hopefully it chucks a spanner in the works before the package system actually installs anything. Of course, you'll have to update that if the perl5.8 port has any sort of version bump[*]. On second thoughts, writing a small wrapper around pkg_add(1) that greps through the @pkgdep lines in the +CONTENTS file from the package tarball and bails if it finds the wrong version of perl would be a much cleaner approach. The -M (--master) and -S (--slave) flags to pkg_add look interesting in this context. Cheers, Matthew [*] You can register at freshports.org to get notifications of any updates to ports that particularly interest you. - -- Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate Kent, CT11 9PW -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.14 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkuMBTgACgkQ8Mjk52CukIwYtgCgh8SCPP+Xn+CrY2cCfgitwva+ xKAAmwXuyCDCQzCUVAmvNgqg3po57n5l =3S3V -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B8C0538.3090309>