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>