Question about updating guile to 1.8

Joe Marcus Clarke marcus at marcuscom.com
Wed Feb 27 00:16:53 UTC 2008


On Tue, 2008-02-26 at 15:54 -0800, Amatus wrote:
> --- Joe Marcus Clarke <marcus at marcuscom.com> wrote:
> 
> > 
> > On Mon, 2008-02-25 at 14:28 -0800, Amatus wrote:
> > > --- Joe Marcus Clarke <marcus at marcuscom.com> wrote:
> > > 
> > > > 
> > > > On Mon, 2008-02-25 at 08:38 -0800, Amatus wrote:
> > > > > --- Joe Marcus Clarke <marcus at marcuscom.com> wrote:
> > > > > 
> > > > > > The way you're doing it is probably best.  The way you
> > submitted
> > > > in
> > > > > > the
> > > > > > PR, while it may look correct, will most likely break INDEX
> > when
> > > > > > guile
> > > > > > is not installed.   Try it.  Uninstall guile, then cd to
> > > > lang/slib,
> > > > > > and
> > > > > > run "make describe".  Use of != is discouraged for commands
> > which
> > > > are
> > > > > > not in the base system.
> > > > > > 
> > > > > > Joe
> > > > > 
> > > > > I uninstalled guile and make describe worked fine with some
> > noise
> > > > on
> > > > > stderr.
> > > > 
> > > > What output?  Any output on stderr is bad.
> > > 
> > > The "make describe" outputs "/usr/local/bin/guile-config: not
> > found" on
> > > stderr as you might expect and the exit code is 0. Since "make
> > index"
> > > pipes stdout to the INDEX file everything should work fine, just
> > some
> > > uglyness on the user's screen. If it's really important I can try
> > 2>
> > > /dev/null in the command or maybe a test -f to see if the file
> > exists
> > > first.
> > 
> > The bigger problem is what happens to the make describe output?  If
> > you
> > are not trying to use GUILE_VERSION in other make variables, I would
> > skip the != notation, and use the previous `...` notation as it is
> > safer.  If you use !=, and the make variables that reference
> > GUILE_VERSION are used to in things like *_DEPENDS, then that will
> > effectively break INDEX and package builds.
> > 
> > Joe
> > 
> 
> I don't understand what the problem is. The "make describe" output on
> stdout is perfectly fine, the return code is 0, and stderr goes to the
> user's screen. The != is necessary as far as I can tell for use in
> PLIST_SUB. Though to get rid of the message on stderr I can do:

Take this for instance:

BUILD_DEPENDS=	${LOCALBASE}/share/${GUILE_VERSION}/...:
${PORTSDIR}/lang/guile

GUILE_VERSION!= ...

If guile is not installed (e.g. when pointyhat builds INDEX or prepares
a portbuild) then BUILD_DEPENDS is set to:

${LOCALBASE}/share//...:${PORTSDIR}/lang/guile

And that will cause things to fail.  All commands must succeed and
produce the correct output regardless of whether or not guile is
installed.

> 
> GUILE_VER!=${TEST} -e ${LOCALBASE}/bin/guile-config &&
> ${LOCALBASE}/bin/guile-config info guileversion | ${CUT} -f 1-2 -d . ||
> :

While this solves the problem of keeping stderr clean, it will not
satisfy the requirements above.

Joe

> 
> 
> 
> 
>       ____________________________________________________________________________________
> Looking for last minute shopping deals?  
> Find them fast with Yahoo! Search.  http://tools.search.yahoo.com/newsearch/category.php?category=shopping
> 
-- 
PGP Key : http://www.marcuscom.com/pgp.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/freebsd-gnome/attachments/20080227/777cff73/attachment.pgp


More information about the freebsd-gnome mailing list