Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Aug 2012 23:20:33 -0400
From:      "A.J. Kehoe IV (Nanoman)" <nanoman@nanoman.ca>
To:        Jeremy Messenger <mezz.freebsd@gmail.com>
Cc:        gnome@freebsd.org
Subject:   Re: WANT_GNOME Causes Automatic Dependencies
Message-ID:  <20120831032033.GE31703@nanocomputer.nanoman.ca>
In-Reply-To: <CADLFttdT8-qZeu32RmKs0gMWH_ukbEyyk2zojnyC7G4fRDc6=w@mail.gmail.com>
References:  <20120830182257.GC31703@nanocomputer.nanoman.ca> <CADLFttdJn4LcY1xzxt6VmT4364aZoBcqakuttf4hd37RW3i4tg@mail.gmail.com> <20120830214321.GD31703@nanocomputer.nanoman.ca> <CADLFttdT8-qZeu32RmKs0gMWH_ukbEyyk2zojnyC7G4fRDc6=w@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--HnQK338I3UIa/qiP
Content-Type: text/plain; charset=iso-8859-1; format=flowed
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Jeremy Messenger wrote:
>On Thu, Aug 30, 2012 at 4:43 PM, A.J. Kehoe IV (Nanoman)
><nanoman@nanoman.ca> wrote:
>> Jeremy Messenger wrote:
>>>
>>> On Thu, Aug 30, 2012 at 1:22 PM, A.J. Kehoe IV (Nanoman)
>>> <nanoman@nanoman.ca> wrote:
>>>>
>>>> WANT_GNOME causes automatic dependencies.  This causes problems for po=
rt
>>>> and
>>>> package management, as described in the FreeBSD Porter's Handbook on t=
he
>>>> "Dependencies" page under "Problems Caused by Automatic Dependencies":
>>>>
>>>>
>>>> http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/make=
file-depend.html
>>>
>>>
>>> I agree, I have got rid of it in bsd.mate.mk.
>>
>>
>> Awesome!  Automatic dependencies have been causing me grief for about a
>> decade, so this makes me happy.
>
>I wanted to clean up all of issues for long time and finally did it in
>the bsd.mate.mk (copied from bsd.gnome.mk). Here's what I did. I have
>removed the features:
>
> -HAVE:Mfoo, A lot of users don't know, hide and lacking OPTIONS stuff.
> It's not difficult to add autocheck in the Makefile without that
> HAVE:Mfoo anyway if configure doesn't provide option to disable.
>
> -foo_USE_GNOME_IMPL, we do not maintain it very well. Also it was not
> easy to track it down for the other maintainers to figure where the
> dependencies come from. I think it's best to put a complete
> dependencies in the ports rather than having IMPL doing it for you.
>
> -Remove the gnomeprefix and replace it to something like
> GCONFPREFIX=3D--gconf=3D...., so you can put ${GCONFPREFIX} in the
> Makefile's CONFIGURE_ARGS. Because not all ports have the
> same flags.
>
> -Remove the referencehack, yes it works great but it's ugly in the
> every Makefile.
>
>I think that's all. Only a feature that has been added is :build and
>:run. If anyone have something in mind to improvement or else, let me
>know and I will see what I can do. I plan to copy all of improvement
>from bsd.mate.mk to bsd.gnome.mk, which I already did with :build and
>:run and will doing more later when I have time permit. Unless someone
>can help me with it.

Does anyone maintain a dependencies map for GNOME?  I'm thinking of somethi=
ng like this, but parsable, legible, and current:

http://people.freebsd.org/~adamw/gnome_kde_deps/gnome2-lite.png

It would also need to indicate how optional components fit together.

[...]

>> I'm not fond of my misc/gnome-components method either, so any alternati=
ve
>> ideas are very welcome.  All I've done thus far is created a Makefile wi=
th
>> an OPTIONS list for the 97 components from bsd.gnome.mk.
>>
>> What do you suggest for a real fix/clean?  Based on your response, the i=
deal
>> fix has at least two attributes:
>>
>> 1. No automatic dependencies.
>>
>> 2. An option to disable specific components.
>
>I meant by remove the HAVE_GNOME from port Makefile then switch to either:
>
>1) automatic dependency by using exists() or
>2) OPTIONS if the port's configure provides flag to disable.
>
>It is unnecessary to make it complicates with gnome-components when
>the standard solution available in our ports tree. As for the #1, yes,
>it has to be there because a few configure files do that without
>option to disable (blame it on upstream).

I'm not opposed to writing patches that will make the WANT_GNOME ports decl=
are their dependencies predictably.  There are approximately 183 ports usin=
g WANT_GNOME, so writing these patches is going to take me several days, fo=
llowed by weeks of waiting for maintainer updates.  I might be able to get =
through this faster by asking the maintainers to assist me, but I expect to=
 have to do most on my own.

I'm absolutely willing to abort my misc/gnome-components plan in favour of =
a better idea.  If writing patches for roughly 183 ports is considered a be=
tter idea, then this is what I will do instead.

It is indeed a problem when a port doesn't respect configure arguments to e=
nable or disable optional features, but exists() causes automatic dependenc=
ies.  Fortunately, there are two solutions:

A. Convince the upstream source that they need to fix this at their end.  S=
ending them a patch is the best way.

B. Write a patch that fixes this within the FreeBSD Ports Collection.  Such=
 a patch may require upkeep by the port maintainer.

>> I'm trying to get this issue resolved as quickly as possible, but I want=
 the
>> fix to be done well.  Again, any suggestions or alternative solutions are
>> welcome.
>
>I don't see why you are in such of hurry when we have that issue for
>years (longer than I became committer). When doing it in hurry always
>make messy, complicate or whatever. Hences for gnome-components.
>
>Cheers,
>Mezz

I'm responsible for hundreds of FreeBSD systems, each with its own unique s=
et of packages installed.  Automatic dependencies make my job much more lab=
our intensive than it needs to be, and the added work increases my chances =
of making a mistake.  pkgng 1.0 was released today, and FreeBSD 9.1 will be=
 released soon, so I'll soon have a lot of upgrading to do.

I've grown exceedingly weary of dealing with the problems caused by automat=
ic dependencies, and I just don't want to tolerate it any longer.  It's onl=
y a tiny minority of ports that declare their dependencies using this unpre=
dictable method, so I've decided to weed them out to make my life easier.

--=20
A.J. Kehoe IV (Nanoman)     |  /"\  ASCII Ribbon Campaign
Nanoman's Company           |  \ /   - No HTML/RTF in E-mail
E-mail: nanoman@nanoman.ca  |   X    - No proprietary attachments
WWW: http://www.nanoman.ca/ |  / \   - Respect for open standards

--HnQK338I3UIa/qiP
Content-Type: application/x-pkcs7-signature
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIIPCwYJKoZIhvcNAQcCoIIO/DCCDvgCAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHAaCC
DHcwggUyMIIDGqADAgECAgMLj20wDQYJKoZIhvcNAQEFBQAweTEQMA4GA1UEChMHUm9vdCBD
QTEeMBwGA1UECxMVaHR0cDovL3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0IFNp
Z25pbmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2VydC5vcmcwHhcN
MTIwNDAzMTkwNjMwWhcNMTIwOTMwMTkwNjMwWjA9MRgwFgYDVQQDEw9DQWNlcnQgV29UIFVz
ZXIxITAfBgkqhkiG9w0BCQEWEm5hbm9tYW5AbmFub21hbi5jYTCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBAK9WRGqRDUDjWwNIfZTBp4FL5bI0kY3ZqvM6tEO+Sqp5YxATre8F
a+BYbeNp/8MKfuPrRgE2jRzlePAx7kpvZUhRTGAZpncmHC7Z3FDl8Ugid4193ReCfPypb9Gs
3ZgPfzJyNuDeCM3amz/cDXC/makJLpmLzu95D91hD+V30iActE5j1tNewMq9qJRoEdr5Tqus
bUjjDm8kiK5sz9JzQjFoufuaWIR57w2Sm1gDVZ0MH46fxZ/SwLDDzt4VC2u+1oS4KSmVUm6X
Wv1/Fmdf2sOOu9Ro2xVjJHW+j16lsFPPj+lkDv5tb0G7I2vBoKEQg/s+h8J4F+l/xPL3O5xB
c68CAwEAAaOB/jCB+zAMBgNVHRMBAf8EAjAAMFYGCWCGSAGG+EIBDQRJFkdUbyBnZXQgeW91
ciBvd24gY2VydGlmaWNhdGUgZm9yIEZSRUUgaGVhZCBvdmVyIHRvIGh0dHA6Ly93d3cuQ0Fj
ZXJ0Lm9yZzBABgNVHSUEOTA3BggrBgEFBQcDBAYIKwYBBQUHAwIGCisGAQQBgjcKAwQGCisG
AQQBgjcKAwMGCWCGSAGG+EIEATAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6
Ly9vY3NwLmNhY2VydC5vcmcwHQYDVR0RBBYwFIESbmFub21hbkBuYW5vbWFuLmNhMA0GCSqG
SIb3DQEBBQUAA4ICAQAQUEMT2uupQXvmCVOcJWoZOZR6WielH7H4ewoCjQxCqEkqtrn4P4GV
DyV9v9suQ1uLu6uZFZAlmkDa0hKdpaz01rgLARMwR9XGBBnRuq17HoNkt9kBFWWCjwegfw5M
kXdCkXu/cQ0TVA1guhJz6tJ/LHg8deUGu5FGbw/+Om6haUX1udId3XtaqdONEOpqv2SPsVvg
qeu5SyxJVJJvAXp9iA1W6yk3JAatO4X9LjntzNsFcFkVGGssbsqQdnp6rPCXD3MqYI7TSSn9
nUvHe9lxcxAbeP/6jU033NSFqSIjrcliB1VLeElbCE1vhZF1bAUMzxR4Fpa670O3Q9bycnDI
SUjzJVKYEg2AtD2GVrN9NjE9+N+xvJ4ixweumoFy3Ojp85OcAP5gb7oLYDJaHERwrz6psyQa
LWrCEqY+lwZVq/Mw+gOQkFhq/zu+hK4xYw5NpexYB+Qf/OKi2/CGNKj8xi+8XMTdNBzW1JOy
8b8XYoTCb0BBuyBWpgibnm6E2EMuDWFtTX9V1hx7NG1nC5qsc1aLGdaXm1W48TL1cOqOMwuf
6RO/AZKdCikqoswCz7Fl1kRIeAjN1jv5EIR60hxfWrcOFzA44Er7oQ23S+t2Xl77QenuTa5B
RJOEBfs34ll8vanK3ltorR5rwAYyjYIkrknaxf1+JFeR9/cAcbWy1jCCBz0wggUloAMCAQIC
AQAwDQYJKoZIhvcNAQEEBQAweTEQMA4GA1UEChMHUm9vdCBDQTEeMBwGA1UECxMVaHR0cDov
L3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0IFNpZ25pbmcgQXV0aG9yaXR5MSEw
HwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2VydC5vcmcwHhcNMDMwMzMwMTIyOTQ5WhcNMzMw
MzI5MTIyOTQ5WjB5MRAwDgYDVQQKEwdSb290IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNh
Y2VydC5vcmcxIjAgBgNVBAMTGUNBIENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG
9w0BCQEWEnN1cHBvcnRAY2FjZXJ0Lm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
ggIBAM4iwOJGfew2KAdQlvKgM0CMS/E7Zj8x5WsCNtvWfPbxiI9OdzYFQZX5CfASz0aGc2C3
bn7owFhkrs2wrUUXDGP6Zwro1tK/PueYxPBM+uADuzVdbCHeniDZus1mMjdy+vcI9cfNWMmO
5w5e6j7+HKEUChVshoRbZGYqeqlLU3n1iKJ77i8KYSuNsn5NVqUT7Orakp6sREEeWGBlBWb4
wES9y5T3Qn4L92VomFEF8PMFkQQdGxeC7MhXu8NreojxsHLMJVsgkewWAhKPMukXGEjQxwUu
AjBCuCWcBWs/qjqn61NI9+jStgeY3BvGNH9/yRyCegVYKwhb8ziiqxddZsmY154Qi6LS3XSa
93EMcmDfzW+YM52WNHY+JHqSsA6VHm/moEU4R6rXQe1KtxL21xuDig8u2Am2WdeqBP/Sk31o
Lt2LS6tYui+N6pWnoMNUiaX724tRIp2yw74RviyRhouWeK0g04ovGj/G0FFlhyGxGQFlf0Uc
h/V80EFMTymYIf0zH3UMBFH6GXfb1BQc7oHDHfWYt2kGkSLdAFDMgTGsEgd7ONpoW+Yr1H7J
X63o63JM8wHlSyC/mqZXypEAAYuhdSE3tWMNZz5GT3AgZ87F1lnbAuDw0svNumK3kEHo3SDk
KbxkKULIItx4mv9D7JgbCVFLWlrCcfHEy3Op5aELAgMBAAGjggHOMIIByjAdBgNVHQ4EFgQU
FrUyG9TH8+DmjvO90rA67rI5GNEwgaMGA1UdIwSBmzCBmIAUFrUyG9TH8+DmjvO90rA67rI5
GNGhfaR7MHkxEDAOBgNVBAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0
Lm9yZzEiMCAGA1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJ
ARYSc3VwcG9ydEBjYWNlcnQub3JnggEAMA8GA1UdEwEB/wQFMAMBAf8wMgYDVR0fBCswKTAn
oCWgI4YhaHR0cHM6Ly93d3cuY2FjZXJ0Lm9yZy9yZXZva2UuY3JsMDAGCWCGSAGG+EIBBAQj
FiFodHRwczovL3d3dy5jYWNlcnQub3JnL3Jldm9rZS5jcmwwNAYJYIZIAYb4QgEIBCcWJWh0
dHA6Ly93d3cuY2FjZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAwVgYJYIZIAYb4QgENBEkWR1Rv
IGdldCB5b3VyIG93biBjZXJ0aWZpY2F0ZSBmb3IgRlJFRSBoZWFkIG92ZXIgdG8gaHR0cDov
L3d3dy5jYWNlcnQub3JnMA0GCSqGSIb3DQEBBAUAA4ICAQAox+6cggK6XIASyjUKHYFviWqZ
zPJoD3+n4Y1YlT698gbDkFqstWD2mUMBo4hwnJ1inaSHr2dYDTA2O+atSNPLdAKGcT7iKwNo
8TRiQEY7U+oo9Kz7ZpVTik1d/TvZYNfKeWk7sWWSpsaBglyczetNAYql3xFVqhXKHzfAgphw
YdtqfJajji5UPk8hqZDv3IK/3OhFrU2Qcwg8lGWwBJl2f+K8wmoVqpcENyTYHpRObQ5RvtbE
j8qWbfdD3+gwZSc7e7tDQ2PEQ/ey7GjM4RmOIvuY4XtaPgE3O4sIsKLzlU4ay5vNmrHbsnDw
LUrb2LDjb0VIMxL//jwyKlT3xPeK8Igjwkf+ZHpxwNEepmOwB36kL9MBj9yfK7bGCKkPk0gl
/BL9n0Lc88Q+9lew191p0QZ3NApL0sqg/xzGjMkWvsTMMjdoc18I+1H3SVM2BQqVAkzyeRoQ
9tg6dZzzHfGiDXBnhhuzFvUv5aTreYb5PQvCcwulmaxv/Ge45S8LphgkjXvRSDUpGECsk2Dh
loZQtHpZ2I8hC5/PgpHGO79r3AeRuZdWI6q2bJTGSAY85M5OquT2LwncU28u/HTrOmOZwqas
ibynskSgDYoQ42zyJMv6m59wRy7eFIvUsiAJlqJk8SQc3KE1nBWy1LxVLn0G9ZwOVfRa1pPa
dq0lc0zFQzGCAlwwggJYAgEBMIGAMHkxEDAOBgNVBAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0
dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0
eTEhMB8GCSqGSIb3DQEJARYSc3VwcG9ydEBjYWNlcnQub3JnAgMLj20wCQYFKw4DAhoFAKCB
sTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xMjA4MzEwMzIw
MzNaMCMGCSqGSIb3DQEJBDEWBBRZRAEPWNj96/VOV7jGXJiVhJLNvzBSBgkqhkiG9w0BCQ8x
RTBDMAoGCCqGSIb3DQMHMA4GCCqGSIb3DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMC
BzANBggqhkiG9w0DAgIBKDANBgkqhkiG9w0BAQEFAASCAQCIpeS0M4ktVuQH0aYqhXfSAmmq
Ple0KaN1f1EPonMUjcBcjxfEJ0uPvwsHdjSkpueHHYGpeRM4QQyI2pR7x1l1kmZLDgiSJS7s
/qzeUoktf9HzEN1dCPt8AMMo4s8w1GuoBD2zPZo//fyvv6Hf+7vDJYpLb50OWYwIhC/sXZtA
uBSy1pCKBHhmiyTVYoIpzgRg9//HUA1DS+w2yb3X9qvW1YI6kqzdEyyQ/ezxVBebuCbzkGbk
80q6e11H3sJ/y85Rbrk7Zkh3vQFDe7Vl3z7PYVta4KNx8vurl9dinqHKAuf6Ow8EMJcvGiNE
oeQzbuCXhasc0nzykwZvc6pxtF64

--HnQK338I3UIa/qiP--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120831032033.GE31703>