From owner-freebsd-ports@FreeBSD.ORG Fri Apr 1 07:16:47 2011 Return-Path: Delivered-To: ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8D3BE106566B; Fri, 1 Apr 2011 07:16:47 +0000 (UTC) (envelope-from tingox@gmail.com) Received: from mail-vx0-f182.google.com (mail-vx0-f182.google.com [209.85.220.182]) by mx1.freebsd.org (Postfix) with ESMTP id DE30A8FC13; Fri, 1 Apr 2011 07:16:46 +0000 (UTC) Received: by vxc34 with SMTP id 34so3087478vxc.13 for ; Fri, 01 Apr 2011 00:16:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=au1cgFk/8MvUaY00Sgt/7usht1oS8FaO/wJq75VAuLo=; b=e1xCwGF/g6LX3E0/WPlLURJXPXDwhH5uX14ZmvUr2flpMTgI0CnpCbTw8xuChCTCTM qf7hvfrxdVWBR7vTC56Dy1hYZAbWhZTDrby6/ffThafvN8jEUv84DzOMtFb7n7rHAdAD cvD5nGHgBMACIldsMAQ6vt7kIv7g65N3MtnyE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=kJ9PxMIALPg2jho43SNcpg/03Yap3/3qcVCDovQUJd20q+mVTsOeDCDi+ZHRuXosLL JRHuSKNs4ozb1mgypmEqkvhkW6sMqV7nw0zjYisVUaZ4cSzZ8Ex4PZJwOOpAeaM39gsz x5qbIriX6gTn+NeYBZRLXizaGTaDEbC1IQKLM= MIME-Version: 1.0 Received: by 10.52.65.69 with SMTP id v5mr2924785vds.200.1301642206066; Fri, 01 Apr 2011 00:16:46 -0700 (PDT) Received: by 10.220.203.202 with HTTP; Fri, 1 Apr 2011 00:16:46 -0700 (PDT) In-Reply-To: References: Date: Fri, 1 Apr 2011 09:16:46 +0200 Message-ID: From: Torfinn Ingolfsen To: Eitan Adler Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Cc: FreeBSD Ports Subject: Re: Removing Cruft from the ports tree 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, 01 Apr 2011 07:16:47 -0000 Hello, On Fri, Apr 1, 2011 at 5:55 AM, Eitan Adler wrote: > Hi, > > =A0 =A0I=92m been working recently on a series of PRs that called =93Reap= er > of the Dead=94 PRs. I have been going through the various build files we > have (for source, docs, and especially ports) and attempting to remove > dead code, old cruft, and unneeded checks. Some examples include > ports/155543, ports/155511, ports/154395, conf/155737, and > conf/155738. My goal has been twofold: making it easier to understand > what is going on, and speeding up the process without requiring > significant change. > > =A0 =A0One of the features that has given us the most trouble has been > the options framework for ports. We automatically test ports using the > default options, but we are unable to perform automated using every > combination of options. A port with just four options has sixteen > possible configurations, and some ports have more than that. Even > supporting one option might double the number of things to test. > > =A0 =A0However some ports rely on specific configurations of options of > other ports. In order to deal with this mess we have come up with a > hack: slave ports. We have entire ports that are designed just to > change the default options for other ports. This requires a > non-trivial amount of code on the bsd.*.mk files to support. > > =A0 =A0Automated configuration is not the only thing that has caused us > trouble in the past. We routinely have to do deal with questions from > inexperienced users on questions@ and ports@ details problems with > non-standard configurations. Many times the solution to a ports > related problem is flipping a bit in the options file. > > =A0 =A0I propose removing the options systems entirely. While it does > serve a small purpose of allowing customization for some end users, I > believe the flaws outweigh the benefits. Removing the options > framework would enable us to remove over 500 lines of expensive code > from the ports system. Not only that but because maintainers would be > able to choose the best possible configuration for the their port > users would no longer have to mess around. > > =A0 =A0While I understand there might some minor part of the community > that has a sentimental attachment to the blue-on-gray-on-blue > configuration, and still others want to prematurely optimize, a simple > workaround could be implemented. We can allow users to add their own > ./configure arguments to the makefile. This serves the needs of the > community while allowing us to deal with a simpler and more reliable > ports system. > > =A0 =A0Feel free to express your thoughts here. I would like to get this > hashed out now so the process could occur on a later date(1). Nice. :-) Would it be to early to propose that this is just another April Fools joke? HAND --=20 Regards, Torfinn Ingolfsen