From owner-freebsd-ports@FreeBSD.ORG Fri Dec 7 23:42:56 2007 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2995B16A419 for ; Fri, 7 Dec 2007 23:42:56 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from mxout5.cac.washington.edu (mxout5.cac.washington.edu [140.142.32.135]) by mx1.freebsd.org (Postfix) with ESMTP id 02B7213C442 for ; Fri, 7 Dec 2007 23:42:55 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from smtp.washington.edu (smtp.washington.edu [140.142.32.139]) by mxout5.cac.washington.edu (8.13.7+UW06.06/8.13.7+UW07.09) with ESMTP id lB7Ngtip031734 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 7 Dec 2007 15:42:55 -0800 X-Auth-Received: from [69.91.148.153] (D-69-91-148-153.dhcp4.washington.edu [69.91.148.153]) (authenticated authid=youshi10) by smtp.washington.edu (8.13.7+UW06.06/8.13.7+UW07.09) with ESMTP id lB7Ngrrv032302 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NOT); Fri, 7 Dec 2007 15:42:53 -0800 In-Reply-To: <1AC13EBE9864074E09913258@utd59514.utdallas.edu> References: <20071207001315.GA58050@owl.midgard.homeip.net> <8B6AA93E1BD6BB1C2A23236A@paul-schmehls-powerbook59.local> <1AC13EBE9864074E09913258@utd59514.utdallas.edu> Mime-Version: 1.0 (Apple Message framework v752.2) X-Gpgmail-State: !signed Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <48377132-3BFB-4514-9DB6-BD7F414390AD@u.washington.edu> Content-Transfer-Encoding: 7bit From: Garrett Cooper Date: Fri, 7 Dec 2007 15:42:38 -0800 To: Paul Schmehl X-Mailer: Apple Mail (2.752.2) X-PMX-Version: 5.3.3.310218, Antispam-Engine: 2.5.2.313940, Antispam-Data: 2007.12.7.151741 X-Uwash-Spam: Gauge=IIIIIII, Probability=7%, Report='__CP_URI_IN_BODY 0, __CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __HAS_MSGID 0, __HAS_X_MAILER 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0' Cc: freebsd-ports@freebsd.org Subject: Re: (Very) bogus package dependencies X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Dec 2007 23:42:56 -0000 On Dec 7, 2007, at 7:41 AM, Paul Schmehl wrote: > --On Friday, December 07, 2007 00:18:15 -0500 Alex Goncharov goncharov@comcast.net>, Alex Goncharov > 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