Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Dec 2007 15:42:38 -0800
From:      Garrett Cooper <youshi10@u.washington.edu>
To:        Paul Schmehl <pauls@utdallas.edu>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: (Very) bogus package dependencies
Message-ID:  <48377132-3BFB-4514-9DB6-BD7F414390AD@u.washington.edu>
In-Reply-To: <1AC13EBE9864074E09913258@utd59514.utdallas.edu>
References:  <E1J0Q3W-0000NQ-D9@[24.61.20.41]> <20071207001315.GA58050@owl.midgard.homeip.net> <E1J0TxL-000J4O-8V@[24.61.20.41]> <8B6AA93E1BD6BB1C2A23236A@paul-schmehls-powerbook59.local> <E1J0VbL-0006bi-6S@[24.61.20.41]> <1AC13EBE9864074E09913258@utd59514.utdallas.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Dec 7, 2007, at 7:41 AM, Paul Schmehl wrote:

> --On Friday, December 07, 2007 00:18:15 -0500 Alex Goncharov <alex- 
> goncharov@comcast.net>, Alex Goncharov <alex-goncharov@comcast.net>  
> wrote:
>>
>> I won't dispute the word "beauty" here -- I like the system very  
>> much.
>> But coming from some eight years of using Debian, I am still  
>> mystified
>> about the underling mechanics of ports.
>>
>> Your answers definitely help -- thank you!

I'm not sure about you, but I rather like not having 5~10 variants of  
the same package for every single option available at build-time :).

> Any time you see USE_FOO= bar in a Makefile, the answer to what  
> does that mean will be in /usr/ports/Mk/ somewhere.  So grep  
> USE_FOO in /usr/ports/Mk/* and you'll find where it appears.  Then  
> you can read the file and usually figure out what that means.  You  
> may then have to go read Makefiles for the ports to which it refers  
> (in the case of cdrtools, cdrecord) and try to figure out why  
> *that* port is required for "your" port to build.
>
> As maintainers, the first thing we have to do is read the  
> requirements for the software and make sure those dependencies are  
> built as well.  So, for example, if a new port I'm working on  
> requires that libdir is installed, I have to figure out whether it  
> is or not, and if not, how I get it installed.  Whenever possible,  
> we try to use the port macros (USE_FOO), but if not, we have to use  
> BUILD_DEPENDS to require that some other port is installed before  
> ours begins the build.

Correct. The option was required at build-time and is a requirement  
for running the package (RUN_DEPENDS), which means that unfortunately  
it's required for installation too.

> There are some wonderfully talented and highly knowledgeable people  
> working behind the scenes to make sure all this stuff works in  
> harmony, so I don't ask why, I just make sure my ports work as  
> expected.

Indeed. There's a lot of work put in by a lot of pkg/ports  
maintainers to ensure that stuff works out of the box with as little  
work / maintenance knowledge on the end-user portion as possible, and  
in the long run not having to keep track of a billion different  
options and/or other 'useless' information is the correct way to go  
IMHO.

> -- 
> Paul Schmehl (pauls@utdallas.edu)
> Senior Information Security Analyst
> The University of Texas at Dallas
> http://www.utdallas.edu/ir/security/

Cheers,
-Garrett



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48377132-3BFB-4514-9DB6-BD7F414390AD>