From owner-freebsd-ports@FreeBSD.ORG Wed May 21 01:53:48 2014 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F273DDFD for ; Wed, 21 May 2014 01:53:48 +0000 (UTC) Received: from mail-oa0-x22c.google.com (mail-oa0-x22c.google.com [IPv6:2607:f8b0:4003:c02::22c]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BC1A12A65 for ; Wed, 21 May 2014 01:53:48 +0000 (UTC) Received: by mail-oa0-f44.google.com with SMTP id o6so1514732oag.31 for ; Tue, 20 May 2014 18:53:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=3vATDt5afjzMwdygLvLbdqL0iYzbjXcIq4Ew8FrrDQQ=; b=vXWUcU7bAMlxQgc23rZPRiygdSO5WsiUpSTdmOC4JA+AmqCFdYn1AiVH7pNEV5rqTp ml3j2IqqE5CCvcE2ZImQS+A8LU4hgn/EXQnYQOMu7inARYbmEfukcG++wBfTx9ebcfJZ mqNFV5AmdjtWdsRlkpuv86jC+AyagSTytmW+BioSMiLvN1BMYkjlPM04UevTjhZzuuKX Uh6aOTK//La8OXg7Boy0jRHFuYDaoJvb/unumUXuSo6zYAgQMs2XeZrp14LcUCsAwRL8 QieBT8JH1HZM0xLiHqvfNxaYCTL8g79r8OyAMwe5MVmgb2P7+1v4YcAnIYu5MC5iUrCi ID2w== MIME-Version: 1.0 X-Received: by 10.60.62.9 with SMTP id u9mr7294575oer.81.1400637227731; Tue, 20 May 2014 18:53:47 -0700 (PDT) Sender: robbak@gmail.com Received: by 10.76.0.111 with HTTP; Tue, 20 May 2014 18:53:47 -0700 (PDT) In-Reply-To: <86305.1400624755@server1.tristatelogic.com> References: <86305.1400624755@server1.tristatelogic.com> Date: Wed, 21 May 2014 11:53:47 +1000 X-Google-Sender-Auth: NlYHf_S-r4Ja_KcC_1s0ytume4c Message-ID: Subject: Re: PORT META: Installed files conflict between ports From: Robert Backhaus To: "Ronald F. Guilmette" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18 Cc: Freebsd_mailinglist_PORTS X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 May 2014 01:53:49 -0000 The fact that those two ports install conflicting binaries isn't a problem. The problem is that you were allowed to install the second port. With mplayer, there is a correct CONFLICTS line in mplayer2, but does not appear to be one in mplayer. But both samba ports seem to have the correct CONFLICTS line, but that may have been fixed after you installed the port. On 21 May 2014 08:25, Ronald F. Guilmette wrote: > > I just submitted the following PR: > > http://www.freebsd.org/cgi/query-pr.cgi?pr=190027 > > I was a bit flabberghasted to believe that such file conflicts between > ports was even possible. Seeing that it is possible prompted me to > write the attached small Perl script, which can quickly find all such > cases among a set of installed ports on a given system. > > To use this simple script, place it somewhere on your path and name > it "pccheck" (Port Conflict Check). Then do the following: > > cd /var/db/pkg > pccheck * > > That will tell you if any of your installed ports have installed any > files which any other of your installed ports also believe that they > also have installed. > > When I ran it on my system, I got this, which is worrying, to say the > least: > > mplayer2-2.0.20130428_4: Conflict -- file=/usr/local/bin/mplayer > pkg=mplayer-1.1.r20140418 > mplayer2-2.0.20130428_4: Conflict -- file=/usr/local/man/man1/mplayer.1.gz > pkg=mplayer-1.1.r20140418 > samba36-nmblookup-3.6.23: Conflict -- file=/usr/local/bin/nmblookup > pkg=samba36-3.6.23 > samba36-nmblookup-3.6.23: Conflict -- > file=/usr/local/man/man1/nmblookup.1.gz pkg=samba36-3.6.23 > samba36-nmblookup-3.6.23: Conflict -- > file=/usr/local/man/man5/smb.conf.5.gz pkg=samba36-3.6.23 > > How does this sort of problem even creep in (to the ports tree)? Is > there nothing in place which prevents it from arising? > > > ============================================================================ > #!/usr/bin/perl -w > > use strict; > > my $origin; > my %installed_files; > > foreach my $arg (@ARGV) { > next unless (-d "$arg"); > open (IFILE, "<$arg/+CONTENTS") || die "$arg: Open failed\n"; > while (my $line = ) { > chop $line; > if ($line =~ m/^\@/) { > if ($line =~ m/^\@conflicts /) { > # print STDERR ("$arg: $line\n"); > # do nothing > } elsif ($line =~ m/^\@cwd /) { > $origin = $'; > } else { > # do nothing > } > } else { > next if ($line =~ m/^\+[A-Z]/); > die "$arg: Origin not defined\n" unless (defined ($origin)); > my $fullpath = "$origin/$line"; > # print "$fullpath\n"; > if (exists ($installed_files{$fullpath})) { > print STDERR ("$arg: Conflict -- file=$fullpath > pkg=$installed_files{$fullpath}\n"); > } else { > $installed_files{$fullpath} = $arg; > } > } > } > close (IFILE); > } > _______________________________________________ > freebsd-ports@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-ports > To unsubscribe, send any mail to "freebsd-ports-unsubscribe@freebsd.org" >