From owner-freebsd-ports@FreeBSD.ORG Thu Aug 4 08:01:59 2005 Return-Path: X-Original-To: ports@freebsd.org Delivered-To: freebsd-ports@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 39C8416A421; Thu, 4 Aug 2005 08:01:59 +0000 (GMT) (envelope-from mezz7@cox.net) Received: from eastrmmtai09.cox.net (eastrmmtai09.cox.net [68.230.240.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 441B643D5D; Thu, 4 Aug 2005 08:01:57 +0000 (GMT) (envelope-from mezz7@cox.net) Received: from mezz.mezzweb.com ([68.103.32.140]) by centrmmtao03.cox.net (InterMail vM.6.01.04.00 201-2131-118-20041027) with ESMTP id <20050804015306.ULWM9652.centrmmtao03.cox.net@mezz.mezzweb.com>; Wed, 3 Aug 2005 21:53:06 -0400 Date: Wed, 03 Aug 2005 20:54:39 -0500 To: "Mikhail Teterin" References: <200508030501.j7351CWK009605@corbulon.video-collage.com> <200508031627.03336.mi+mx@aldan.algebra.com> From: "Jeremy Messenger" Content-Type: text/plain; format=flowed; delsp=yes; charset=us-ascii MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID: In-Reply-To: User-Agent: Opera M2/8.02 (Linux, build 1272) Cc: gnome@freebsd.org, ports@freebsd.org Subject: Re: leaner and meaner www/firefox 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: Thu, 04 Aug 2005 08:01:59 -0000 On Wed, 03 Aug 2005 15:37:55 -0500, Jeremy Messenger wrote: > On Wed, 03 Aug 2005 15:27:03 -0500, Mikhail Teterin > wrote: > >>> It's what I was trying to explain. If library doesn't need to be bump >>> [...] >> >> I'll wait for a real life example of failure stemming from my >> insistence on >> not using major library number, when not need. >> >> The easiest for you is, probably, to try removing nspr's major version >> from >> nss' Makefile and compare the two packages. > > Well, it's not just remove nspr's major version. Need a real library > version difference. Example, have new library installed and removing > nspr's major version then build package. Downgrade one of library that > has difference library shared version like foobar.so.5 -> foobar.so.4 > and install that nspr package with no major version. I think I will try > to test MarcusCom CVS stuff in my jail. I tested it and surprised me that package doesn't check library version at all. With or without major version in Makefile gave the same result. I know, my bad for not learn on package very well. Without major version: ============================================ # grep glib20_LIB_DEPENDS /usr/ports/Mk/bsd.gnome.mk glib20_LIB_DEPENDS= glib-2.0:${PORTSDIR}/devel/glib20 # cd /usr/ports/editors/leafpad # make depends | grep glib ===> leafpad-0.8.2 depends on shared library: glib-2.0 - found # make package => leafpad-0.8.2.tar.gz doesn't seem to exist in /usr/ports/distfiles/. [...] ===> leafpad-0.8.2 depends on shared library: glib-2.0 - found [...] ===> Building package for leafpad-0.8.2 ============================================ With major version: ============================================ # grep glib20_LIB_DEPENDS /usr/ports/Mk/bsd.gnome.mk glib20_LIB_DEPENDS= glib-2.0.701:${PORTSDIR}/devel/glib20 # cd /usr/ports/editors/leafpad # make depends | grep glib ===> leafpad-0.8.2 depends on shared library: glib-2.0.701 - found # make package => leafpad-0.8.2.tar.gz doesn't seem to exist in /usr/ports/distfiles/. [...] ===> leafpad-0.8.2 depends on shared library: glib-2.0.701 - found [...] ===> Building package for leafpad-0.8.2 ============================================ Both has same result: ============================================ # pkg_add ./leafpad-0.8.2.tbz pkg_add: warning: package 'leafpad-0.8.2' requires 'glib-2.7.4', but 'glib-2.7.5' is installed # leafpad /libexec/ld-elf.so.1: Shared object "libgobject-2.0.so.701" not found, required by "leafpad" # ldconfig -r | grep glib-2 198:-lglib-2.0.0 => /usr/local/lib/libglib-2.0.so.0 ============================================ Okay, it gave the warning about what leafpad needs package for the best result, but why did it still installed this package? It shouldn't be install package at all if the library shared version has changed. I think it's mistake for not check library shared version. Since, package doesn't work as I thought, then I guess my two reasons left of prefer to have major version in Makefile is that force users (keep in mind, read my later paragraph below for bump when it need) to update their dependencies (if they use ports tree) and easier to search in Makefile for bump. Before you say that you can just search for foo/bar, but it doesn't give a good result as search for foobar.0 to bump those. You said that in another email (AbiWord thread): "I am sorry, I can not parse the above statement. My point -- as you seem to have missed it -- is that a user, who already has libpng.so.4 installed, should NOT be forced by the abiword build to upgrade his png port." I believe that if the library that shouldn't bump, but it did then we have to hack it to make it to not bump and keep the major library in Makefile is a better solution. Same as how we did with gettext, pango and etc. The major library is there for reason. It's what my team (FreeBSD GNOME) is working on this change with bump when it need. Cheers, Mezz > Cheers, > Mezz > >> -mi -- mezz7@cox.net - mezz@FreeBSD.org FreeBSD GNOME Team http://www.FreeBSD.org/gnome/ - gnome@FreeBSD.org