From owner-freebsd-ports@FreeBSD.ORG Wed Mar 31 00:14:03 2010 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 D286F106566B for ; Wed, 31 Mar 2010 00:14:02 +0000 (UTC) (envelope-from yanefbsd@gmail.com) Received: from qw-out-2122.google.com (qw-out-2122.google.com [74.125.92.25]) by mx1.freebsd.org (Postfix) with ESMTP id 503488FC14 for ; Wed, 31 Mar 2010 00:14:02 +0000 (UTC) Received: by qw-out-2122.google.com with SMTP id 3so1026178qwe.7 for ; Tue, 30 Mar 2010 17:14:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:cc:content-type; bh=w69xW2eUvAK16iex16P9D/HvYJT/6VyqE6nCsKZZ9ko=; b=UUgcEHr9sQGxa+A6ax6HXAbVHCUMu+nu5P5KtD6SaxV7Yjinez86zc7pmFnyGDpUOV N+/5cnZaRKDd5vhJpFU0EtUKbBNKQ2PJ5Vcfe02pYCvL6eOIcyULyKqW2G77wcVDuv+2 Ca9LqBgRoPzB4UWdLPZFfBVRMUukXuLflcgVs= 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; b=vg9q0kswgyPR6CsAcg2ErM3CHpcBCIosFhfv+Z5wkH9q9lFEtBOtESzJrVvax0eSJ2 cpOZmmKGMUG4VBJiyXqE1Vz587D4/x76g/jiAnQaJylE5hEo3ldraa3oJ8wChrVeIWjR 4RDNLlcTNeN7v/u+ZLZjJWz7j8iN7T3MksDio= MIME-Version: 1.0 Received: by 10.229.33.72 with HTTP; Tue, 30 Mar 2010 17:14:01 -0700 (PDT) In-Reply-To: <57C3B32A-21E5-4D66-8311-800F62B54C6C@gmail.com> References: <20100330191416.GB98488@wep4035.physik.uni-wuerzburg.de> <2F334A43-634E-4AAC-A144-54200FEE7003@gmail.com> <7d6fde3d1003301349t32a98a49uc223a710a1f2ede4@mail.gmail.com> <57C3B32A-21E5-4D66-8311-800F62B54C6C@gmail.com> Date: Tue, 30 Mar 2010 17:14:01 -0700 Received: by 10.229.212.146 with SMTP id gs18mr1238065qcb.90.1269994441598; Tue, 30 Mar 2010 17:14:01 -0700 (PDT) Message-ID: <7d6fde3d1003301714o1da03b52j8ac6b8122c1bc45d@mail.gmail.com> From: Garrett Cooper To: Arseny Nasokin Content-Type: text/plain; charset=ISO-8859-1 Cc: Alexey Shuvaev , "freebsd-ports@freebsd.org" Subject: Re: Old ports bugs analyzis 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: Wed, 31 Mar 2010 00:14:03 -0000 On Tue, Mar 30, 2010 at 1:54 PM, Arseny Nasokin wrote: > On 31 Mar 2010, at 00:49, Garrett Cooper wrote: > >> On Tue, Mar 30, 2010 at 1:25 PM, Arseny Nasokin wrote: >>> >>> On 30 Mar 2010, at 23:14, Alexey Shuvaev >>> >>> wrote: >>> >>>> On Tue, Mar 30, 2010 at 01:05:39AM +0400, Eir Nym wrote: >>>>> >>>>> I work on creating system for system and ports autobuilder with custom >>>>> settings for my FreeBSD machines. I know about many programs, which do >>>>> same, but I don't like strange depends, which are not controlled by >>>>> OPTIONS and some another >>>>> >>>>> I've analyse ports tree and want to say about. >>>>> There're lot problems with ports to create per-port PRs >>>>> manually.Common types of problems are listed here: >>>>> >>>>> 0) Main part of problems in tons of ports, which has hidden options >>>>> (WITH & WITHOUT checking), but not using OPTIONS for them. >>>>> 1) There many libraries added with BUILD&RUN dependencies, not as >>>>> LIB-DEPENDS. >>>>> 2) Some ports has only BUILD depends to libraries, but links them >>>>> dynamicly. >>>>> 3) All(?) samba33 slaves define dependency as "samba33", and make >>>>> warning me about master target redefinition when do something on them. >>>>> 4) many ports define dependencies as >>>>> "${.CURDIR}/../..//" >>>>> 5) And some adds trailing slash. >>>>> >>>>> I want fix these problems, but I have no much time to fix several >>>>> thousands of ports. This work (include PR sending) needs about is 1-2 >>>>> month per 8-10 hours a day. >>>>> >>>> If the problems are so common, maybe there are not so many problems >>>> at all? :) >>> >>> Yes, it's features! Let's all bugs will be features! Do you remember The >>> Bat >>> mail client, which doesn't want support standarts at all? >>> >>> Cases 0, 2, 3 and 4 are bugs. >>> 0: I want to control options via OPTIONS, not by knowledge about Makefile >>> syntax with much time. >>> 2: build port, install, remove lib and get this port unusable. >>> 3: where program should find package orign "samba33"? >>> 4: when reading Makefile, it hard to explain where port is. And when >>> ports >>> tree has changed place in system, it's not good idea to rebuild index. >>> >>> 2, 5 are questions at most. >>> 2: libraries should be LIB_DEPENDS >> >> Caveat: static libraries are build dependencies; dynamic libraries are >> lib dependencies. We had a discussion about this on #bsdports >> yesterday and it was a well understood fact that was being proposed >> for a move forward in terms of installing binary packages. >> > > Port building ability will be avaliable? Now ports tree has bugs, but I can > turn on/of custom build options. I use most of ports with custom settings. Today binary packages are rolled as generic as possible provided the architecture they're built for and are monolithic, meaning that they contain the build, lib, patch, and run dependencies required to build everything, as they're generated after an in-place install in ${PREFIX} . One of many ideas we were kicking around on #bsdports was to produce `fat packages' which would be usable in package installation and ports building scenarios (similar to the headache that exists in many Linux distros with -devel and non-devel packages), but the user could specify whether or not they wanted the -devel pieces or not (if it applied) -- so only one set of packages would need to be distributed. We didn't really kick the idea around too much, but it was still a novelty that should be `nursed' to a proper conclusion as it would allow folks who roll packages and install on embedded systems / install bases, or prefer installing via packages, to have small install bases, and smaller potential binary roll up after the fact. Thanks, -Garrett