From: Doug Barton on
No hurry for testing, I found some good test cases locally and was able
to confirm that the new code works to detect this problem so I committed
it to the ports version (2.29).

Thanks again for bringing this to my attention.


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/

_______________________________________________
freebsd-ports(a)freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"

From: Alberto Villa on
On Sunday 13 June 2010 01:40:19 Doug Barton wrote:
> No hurry for testing, I found some good test cases locally and was
able
> to confirm that the new code works to detect this problem so I
committed
> it to the ports version (2.29).

i just saw the e-mail, so i wasn't able to test it before :)
i have only one question: what if the port is listed only in build
dependencies but is installed because i want it installed (of course,
portmaster cannot know why a port was installed)? will it get
removed?

> Thanks again for bringing this to my attention.

thank you for fixing it!
--
Alberto Villa, FreeBSD committer <avilla(a)FreeBSD.org>
http://people.FreeBSD.org/~avilla

Work is the curse of the drinking classes.
-- Mike Romanoff
From: Doug Barton on
On 06/12/10 17:10, Alberto Villa wrote:
> On Sunday 13 June 2010 01:40:19 Doug Barton wrote:
>> No hurry for testing, I found some good test cases locally and was
> able
>> to confirm that the new code works to detect this problem so I
> committed
>> it to the ports version (2.29).
>
> i just saw the e-mail, so i wasn't able to test it before :)

No problem. I initially thought it would be more difficult to fix than
it actually turned out to be, so I was able to devote some time to
writing the fix and then regression testing it (the latter part is
usually the complicated bit).

> i have only one question: what if the port is listed only in build
> dependencies but is installed because i want it installed (of course,
> portmaster cannot know why a port was installed)? will it get
> removed?

The list of ports for --delete-build-only and/or --packages-build (which
use the same code to build the list, FWIW) is still calculated on each
portmaster run. So let's say you have gmake installed already, and it is
a build-only dependency on the current portmaster run. If gmake is up to
date (i.e., portmaster doesn't need to do anything to it) then it will
simply be used, and not deleted when you're done. The way the code
stands now, if you already had it installed (or for that matter, if you
did not have it installed, but it was a build-only dep for something
else in the current run) then it would be installed/updated, then with
--delete-build-only it would be deleted at the end of that portmaster
run.[1]

To answer your question more directly, there is currently no provision
for the idea of "this port is a build-only dependency but I do not want
--delete-build-only to mess with it." The update today doesn't change
this, it only addresses the issue of not treating something as a
build-only dep on _this_ run if it is listed as a run dependency for
something else that is already installed.

I'm not sure that the complexity of the extra code required to exempt
ports from --delete-build-only is justified. If I were a typical FreeBSD
user I would probably use the combination of --packages-build and
--delete-build-only, perhaps along with a local package repo so that I
could build my own custom versions of those tools that I cared about. As
long as the packages are up to date, they don't have have to be
refetched each time you build a port so there is only a small delay when
the build dep is installed. The reason I don't do this personally is
that when I'm working on updating the ports that I maintain it's more
convenient for me to already have the typical tools installed.


hth

Doug

[1] There is another case of multiple ports on the command line, such as
'portmaster thing-that-has-gmake-as-a-build-dep gmake'. In that case,
portmaster already has code to prevent gmake from being treated as a
build dep.

--

... 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/

_______________________________________________
freebsd-ports(a)freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"

From: Matthew Seaman on
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 13/06/2010 03:19:11, Doug Barton wrote:
> To answer your question more directly, there is currently no provision
> for the idea of "this port is a build-only dependency but I do not want
> --delete-build-only to mess with it." The update today doesn't change
> this, it only addresses the issue of not treating something as a
> build-only dep on _this_ run if it is listed as a run dependency for
> something else that is already installed.

PR ports/147808

Cheers,

Matthew

- --
Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard
Flat 3
PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate
JID: matthew(a)infracaninophile.co.uk Kent, CT11 9PW
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.14 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkwUhEYACgkQ8Mjk52CukIzCDgCdGiUjw0WEZAXp1Y8X1LnVSb+S
kgkAnjILrtKJtrLNA1MWXLu8lzwNSDWP
=KK/z
-----END PGP SIGNATURE-----
_______________________________________________
freebsd-ports(a)freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"