Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Jan 2004 23:19:14 +0100
From:      Heiner <h.eichmann@gmx.de>
To:        pav@FreeBSD.org
Cc:        freebsd-ports-bugs@FreeBSD.org
Subject:    Re: ports/61840: Port sysutils/cdrdao might corrupt package database
Message-ID:  <200401252319.14278.h.eichmann@gmx.de>
In-Reply-To: <1075066030.21573.6.camel@hood.oook.cz>
References:  <200401252048.i0PKmXVS071023@freefall.freebsd.org> <200401252158.35897.h.eichmann@gmx.de> <1075066030.21573.6.camel@hood.oook.cz>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 25 January 2004 22:27, Pav Lucistnik wrote:
> So you're hitting general issue with installing A, optional autodetected
> dependency of B, later, and having C, which depends on B, recorded A as
> it's dependency.

Yes, thats the problem.

> This is general ports system design definiency and I don't know how to
> fix it.
> Or you're hitting the cdrdao port weirdness that it depends on gnome--
> but checks presence of gnomelibs?

Yes and no.=20


Yes: If the port should follow the instructions in=20
http://www.freebsd.org/gnome/docs/porting.html. Especially: use USE_GNOME f=
or=20
variable dependencies; NEVER use LIB_DEPENDS. I guess that C (in your=20
example) scans the MAKEFILE of A for LIB_DEPENDS. If there are no, C will n=
ot=20
depend on B. In other words: replace the=20

LIB_DEPENDS+=3D=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0gtkmm.2:${PORTSDIR}/x11-too=
lkits/gtk--
LIB_DEPENDS+=3D=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0gnomemm-1.2.10:${PORTSDIR}/=
x11-toolkits/gnome--

by

USE_GNOME=3D=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0gnomelibs gtk-- gnome=
=2D-

This requires bsd.gnome.mk to be touched as well (gtk-- and gnome-- have to=
 be=20
added). I made this on my machine (for testing purposes) and afterwards the=
=20
port installation worked fine in both cases (discussed in the PR).


No: cdrdao is a commandline tool. Why does it depend on gnome? I guess (I d=
o=20
not have gnome) gnome has a gui interface to cdrdao. For people just using=
=20
the command line this gui stuff is a big overhead. My prefered solution is =
to=20
split the port as written in the PR. None gnome user install cdrdao; others=
=20
cdrdao-gnome (which depends on cdrdao).

This also solves another problem: Afaik the packages are built automaticall=
y.=20
I guess (not checked) the build system in cleaned, the dependent ports are=
=20
installed, the port is built and the package is created and stored on the=20
=46reeBSD ftp server. Therefore the cdrdao package either contains the gnom=
e=20
stuff or not (I guess not). In any case there will be group of people, whic=
h=20
can not use the package! If there were 2 ports (cdrdao and cdrdao-gnome),=20
there will be 2 packages; one for each group of people.

Good night=20

Heiner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401252319.14278.h.eichmann>