portmaster and IGNOREME
Doug Barton
dougb at FreeBSD.org
Sat Apr 24 20:38:07 UTC 2010
On 04/23/10 22:43, Aristedes Maniatis wrote:
> I have a package which is not built from a port (it is commercial
> software). I've put an +IGNOREME file in the package folder. But
> portmaster will not ignore it:
>
> #portmaster -a
>
> [snip...]
>
> ===>>> Proceed? y/n [y]
>
> ===>>> Starting build for for ports that need updating <<<===
>
> ===>>> Launching child to update CGatePro-5.3.5
>
> ===>>> No ORIGIN in /var/db/pkg/CGatePro-5.3.5/+CONTENTS
> ===>>> Aborting update
>
> ===>>> Update for CGatePro-5.3.5 failed
> ===>>> Aborting update
>
>
>
> Unless there is some clear documented reason, portmaster should ignore
> ports which are marked to be ignored.
You're right, and I see the bug. There are actually a few places where
the lack of ORIGIN leads to Bad Things happening where the +IGNOREME
file isn't checked, so I'm going to work on a more general solution for
this. Meanwhile you should be able to do 'portmaster -a -x CGatePro' and
have it work as expected.
> I don't know
> enough about package files to know why ORIGIN is required, even for
> packages which aren't generated from the ports system.
In the general case lack of ORIGIN indicates that the pkg directory for
that file is corrupt, which is a serious problem that requires user
attention. Also, most 3rd party packages contain an ORIGIN of some sort,
and portmaster does include code to handle "/usr/ports/foo/bar does not
exist, but the pkg directory has an +IGNOREME file" gracefully for this
exact reason. The case of "no ORIGIN at all but the pkg directory has an
+IGNOREME file" is sufficiently rare that the bug has so far been
unexposed. Congratulations! :)
Doug
--
... and that's just a little bit of history repeating.
-- Propellerheads
Improve the effectiveness of your Internet presence with
a domain name makeover! http://SupersetSolutions.com/
More information about the freebsd-ports
mailing list